Fix dead lock issue when use smart with pygtk
cover Fix dead lock issue when use smart with pygtk
Hi Ross,
I sent this patch before, but no comment and has not been merged yet. So I re-send it for review.
Thanks.
The following changes since commit 2a1573841e2b5dbfce93aaaf27ad7177c71f45ab:
sshcontrol: Use os.environ.copy() instead of copy.copy() (2015-07-29 22:54:12 +0100)
are available in the git repository at:
git://git.yoctoproject.org/poky-contrib kangkai/smartpm
http://git.yoctoproject.org/cgit.cgi/poky-contrib/log/?h=kangkai/smartpm
Kai Kang (1):
smartpm: set noprogress for pycurl
.../smart-set-noprogress-for-pycurl.patch | 20 ++++++++++++++++++++ meta/recipes-devtools/python/python-smartpm_git.bb | 1 + 2 files changed, 21 insertions(+) create mode 100644 meta/recipes-devtools/python/python-smartpm/smart-set-noprogress-for-pycurl.patch
Signature · 1 line
1.9.1
PATCH 1/1 smartpm: set noprogress for pycurl
Set NOPROGRESS for pycurl just as same as default operation in pycurl module itself. If set NOPROGRESS with 0 for pycurl, it causes dead lock issue of Python GIL when call smart library by python gui just like pygtk.
--- .../smart-set-noprogress-for-pycurl.patch | 20 ++++++++++++++++++++ meta/recipes-devtools/python/python-smartpm_git.bb | 1 + 2 files changed, 21 insertions(+) create mode 100644 meta/recipes-devtools/python/python-smartpm/smart-set-noprogress-for-pycurl.patch
meta/recipes-devtools/python/python-smartpm/smart-set-noprogress-for-pycurl.patch new file +20 -0
@@ -0,0 +1,20 @@ +Set NOPROGRESS for pycurl just as same as default operation in pycurl module itself. +If set NOPROGRESS with 0 for pycurl, it causes dead lock issue of Python GIL when +call smart library by python gui just like pygtk. + +Upstream-Status: Pending + +Signed-off-by: Kai Kang <[email protected]> +--- +diff -u smart-1.4.1/smart.orig/fetcher.py smart-1.4.1/smart/fetcher.py +--- smart-1.4.1/smart.orig/fetcher.py 2014-07-15 16:42:19.240437080 +0800 ++++ smart-1.4.1/smart/fetcher.py 2014-07-15 17:02:37.812470289 +0800 +@@ -1720,7 +1720,7 @@ + handle.setopt(pycurl.OPT_FILETIME, 1) + handle.setopt(pycurl.LOW_SPEED_LIMIT, 1) + handle.setopt(pycurl.LOW_SPEED_TIME, SOCKETTIMEOUT) +- handle.setopt(pycurl.NOPROGRESS, 0) ++ handle.setopt(pycurl.NOPROGRESS, 1) + handle.setopt(pycurl.PROGRESSFUNCTION, progress) + handle.setopt(pycurl.WRITEDATA, local) + handle.setopt(pycurl.FOLLOWLOCATION, 1)
meta/recipes-devtools/python/python-smartpm_git.bb +1 -0
@@ -22,6 +22,7 @@ SRC_URI = "\ file://smart-rpm4-fixes.patch \ file://smart-add-for-rpm-ignoresize-check.patch \ file://smart-already-installed-message.patch \ + file://smart-set-noprogress-for-pycurl.patch \ " SRCREV = "407a7eca766431257dcd1da15175cc36a1bb22d0"
Signature · 1 line
1.9.1