Project

General

Profile

Actions

Bug #20111

closed

Python RBD: diff_iterate_cb() does not acquire GIL before calling user-provided callback.

Added by Марк Коренберг almost 7 years ago. Updated almost 7 years ago.

Status:
Rejected
Priority:
Normal
Assignee:
-
Target version:
-
% Done:

0%

Source:
Tags:
Backport:
Regression:
No
Severity:
3 - minor
Reviewed:
Affected Versions:
ceph-qa-suite:
Pull request ID:
Crash signature (v1):
Crash signature (v2):

Description

rbd_diff_iterate2() is called with GIL released. Callback it calls must acquire GIL.

Bug was not detected since Cython is not smart enough when pointer casting is used. Also,
rbd_diff_iterate_cb() is not declared as

cdef ...rbd_diff_iterate_cb(...) nogil:
Actions

Also available in: Atom PDF