ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/COMP/CMSDIST/libunwind-optimise.patch
Revision: 1.5
Committed: Tue May 19 15:13:16 2009 UTC (15 years, 11 months ago) by lat
Branch: MAIN
CVS Tags: ebFor363slhc3p1, CMSSW_3_6_3_SLHC3, ebFor363slhc3, ebFor363slhc2, CMSSW_3_6_3_SLHC1_patch3, ebFor363slhc1pat3, CMSSW_3_6_3_SLHC1_patch2, ebFor363slhc1pat2, CMSSW_3_8_7_patch2, sjgFor387p2b, sjgFor387p2, CMSSW_3_8_7_patch1, DQMGUI_5_3_2, dsr20101201fwlite387, CMSSW_3_8_7, sjg101126b, sjg101126a, CMSSW_3_8_6_patch2, sjgFor386p2, CMSSW_3_8_6_patch1, sjgFor386p1, CMSSW_3_8_6, smFor386a, ebFor363slhc1pat1v0, smFor386, CMSSW_3_8_5_patch3, apFor385p3v0, CMSSW_3_8_5_onlpatch4_ONLINE, CMSSW_3_8_5_onlpatch3_ONLINE, CMSSW_3_8_5_patch2, sjgFor385p2, CMSSW_3_8_5_patch1, sjgFor385p1, eskFor3XYpreZ, CMSSW_3_8_5_onlpatch1_ONLINE, CMSSW_3_8_5_ONLINE, fw385online, CMSSW_3_8_1_onlpatch7_ONLINE, CMSSW_3_8_4_patch4, sjfFor384p4, CMSSW_3_8_5, sjgFor385, DQMGUI_5_3_1, CMSSW_3_8_1_onlpatch6_ONLINE, CMSSW_3_8_4_patch3, sjgFor384patch3v3, sjgFor384patch3v2, sjgFor384patch3, smFor385toolconf, CMSSW_3_8_4_patch2, bhFor384p2, CMSSW_3_8_4_patch1, bhFor384p1, CMSSW_3_8_4, bhFor384, CMSSW_3_8_1_onlpatch5_ONLINE, CMSSW_3_8_3, bhFor383, apFor383v1, apFor383v0, CMSSW_3_8_1_onlpatch4_ONLINE, CMSSW_3_8_2_patch1, bhFor382p1, CMSSW_3_6_3_SLHC1, CMSSW_3_8_1_onlpatch3_ONLINE, fc20100901b, CMSSW_3_8_1_onlpatch2_ONLINE, CMSSW_3_8_1_onlpatch1_ONLINE, CMSSW_3_8_1_patch4, bhFor381patch4, pe20100830a-for39Xrb, pe20100829a-for39Xrb, pe20100827a-for39Xrb, sm100826a, pe20100826a-for39Xrb, pe20100825b-for39Xrb, pe20100825a-for39Xrb, pe20100824c-for39Xrb, pe20100824b-for39Xrb, sm100824a, pe20100824a-for39Xrb, CMSSW_3_8_2, bhFor382, sm39XPoolLess, sm100823a, CMSSW_3_8_1_patch3, smFor381patch3, pe20100819a-for390p2r52704, CMSSW_3_6_1_patch7, pe20100817a-for390p2r52704, smFor361patch7, dsr20100816fwlite381, dsr20100816fwlite371, CMSSW_3_9_0_pre2, CMSSW_3_8_1_ONLINE, for390pre2, dsr20100812fwlite371, CMSSW_3_6_3_hltpatch4, CMSSW_3_8_1_patch2, bhFor381p2, for390p2tools1, for390pre2tools, sm100811b, sm100811a, sm20100810a, CMSSW_3_8_1_patch1, bhFor381patch1, fw381online, CMSSW_3_7_1, CMSSW_3_8_1, bhFor381, fw371, dsr20100805fwlite363, CMSSW_3_6_3_onlpatch4_ONLINE, CMSSW_3_8_0_patch2, bhFor380patch2, smFor363patch2, fw380online, fw380online_3, fw380online_2, CMSSW_3_9_0_pre1, fw380online_0, apFor390pre1v0, pe20100727a-for39X, FRONTEND_CONF_3_30_20100724, FRONTEND_CONF_3_29_20100723, CMSSW_3_6_3_onlpatch3_ONLINE, CMSSW_3_8_0_patch1, bhFor380patch1, ge20100722-rpm-osx-64-bit, CMSSW_3_8_0, bhFor380, CMSSW_3_6_1_patch6, apFor361p6v0, CMSSW_3_8_0_pre8, bhFor380pre8, CMSSW_3_6_3_patch1, apFor363p1v0, CMSSW_3_6_3_onlpatch2_ONLINE, CMSSW_3_8_0_pre7, bhFor380pre7, CMSSW_3_7_0_patch4, CMSSW_3_8_0_pre6, smFor370patch4, CMSSW_3_7_0_patch3, bhFor380pre6, CMSSW_3_8_0_pre5ssl, pe20100624b-for38Xssl, pe20100624a-for38Xssl, CMSSW_3_8_0_pre5, CMSSW_3_6_1_patch5, smFor370patch3, pe20100623a-for38Xssl, smFor361patch5, apFor380pre5v0, ge20100621-bootstrap-rpm-4-8-macosx, CMSSW_3_8_0_pre4catfix, bhFor380pre4catfix, bhFor380pre4_cat_fix, CMSSW_3_8_0_pre4, bhFor380pre4, CMSSW_3_8_0_pre3, CMSSW_3_6_3_onlpatch1_ONLINE, bhFor380pre3, CMSSW_3_6_3_ONLINE, CMSSW_3_6_3, apFor363v0, pe20100612a-gcc45-from380p2, ge20100611-apt-rpm-4-8-gcc-4-5-0, MotT0_1_0_15, CMSSW_3_8_0_pre2, MotT0_1_0_14, CMSSW_3_7_0_patch2, smFor370p2, bhFor380_pre2, MotT0_1_0_13, pe20100606a-for38X, CMSSW_3_6_2_ONLINE, fw361online_test5, CMSSW_3_6_2, MotT0_1_0_12, MotT0_1_0_11, MotT0_1_0_10, CMSSW_3_7_0_patch1, MotT0_1_0_9, MotT0_1_0_8, smFor370patch1, MotT0_1_0_6, MotT0_1_0_5, apFor362v1, apFor362v0, CMSSW_3_8_0_pre1, MotT0_1_0_4, MotT0_1_0_3, apFor380pre1v0, MotT0_1_0_2, MotT0_1_0_1, MotT0_1_0_0, MotT0_100531_1, fw361online_test4, CMSSW_3_6_1_patch4, MotT0_100528_1, apFor361p4v0, fw361online_test3, CMSSW_3_7_0, smFor370, dsr20100526fwlite361, fw361online_test2, CMSSW_3_6_1_patch3, fw361online_test1, apFor361p3v0, CMSSW_3_5_7_hltpatch4, apFor357hltp4v0, CMSSW_3_7_0_pre5g493ref04, CMSSW_3_6_1_patch2, apFor361p2v0, ge20100521b-new-rpm, ge20100521-new-rpm, pe20100521-for37X-newG4, DQMGUI_5_2_1c, DQMGUI_5_2_1, pe20100519a-for37X, ge20100519-new-apt, CMSSW_3_7_0_pre5, smFor370pre5, CMSSW_3_6_1_patch1, apFor361p1v2, apFor361p1v1, apFor361p1v0, T0Mon_100518_1, CMSSW_3_5_8_patch4, apFor358p4v3, apFor358p4v2, apFor358p4v1, apFor358p4v0, DQMGUI_5_2_0, CMSSW_3_7_0_pre4, sm370pre4, sm100511a, pe20100511b-for37X, pe20100511a-for37X, sm100511, CMSSW_3_6_1, pe20100510b-for37X, pe20100510a-for37X, apFor361v1, apFor361v0, fw360online_test5, fw360online_test4, fw360online_test3, sm100507pftrack, fw360online_test2, fw360online_test1, sm100506, sm100505a, sm100505, CMSSW_3_7_0_pre3, for370pre3, CMSSW_3_6_0_patch2, apFor360p2v0, CMSSW_3_6_0_patch1, apFor360p1v2, apFor360p1v1, apFor360p1v0, CMSSW_3_5_8_patch3, apFor358p3v0, T0Mon_100503_1, CMSSW_3_5_8_patch2, apFor358p2v0, CMSSW_3_5_8_patch1, apFor358p1v1, apFor358p1v0, CMSSW_3_5_7_onlpatch2_ONLINE, CMSSW_3_7_0_pre2, for370pre2, ge20100427-rpm-on-linux, CMSSW_3_5_8, CMSSW_3_5_7_onlpatch1_ONLINE, CMSSW_3_5_7_ONLINE, apFor358v0, ge20100422-rpm-4-8-0, CMSSW_3_5_4_onlpatch4_ONLINE, CMSSW_3_7_0_pre1, smFor370pre1, pe20100420a-for37X, pe20100419b-for37X, pe20100419a-for37X, pe20100419a-for36X-37X, pe20100419a-gcc45-from360, CMSSW_3_6_0, fwFor357online, pe20100416a-for36X, CMSSW_3_5_7, apFor357v2, apFor357v1, pe20100414b-gcc45-from360p6, pe20100414-gcc45-from360p6, apFor357v0, pe20100410-gcc45-from360p6, CMSSW_3_6_0_pre6, pe20100409b-for36X, pe20100409a-for36X, CMSSW_3_6_0_pre5io, pe20100408a-for36Xio, CMSSW_3_5_6_patch1, for356p1, CMSSW_3_6_0_pre5, pe20100401a-for36X, pe20100330a-for36X, CMSSW_3_5_4_patch2, CMSSW_3_5_6, for356, pe20100329a-for36X, for354p2, dsr20100326fwlite355osx, dsr20100326fwlite355, CMSSW_3_5_5, CMSSW_3_6_0_pre4, pe20100324a-for36X, CMSSW_3_5_4_onlpatch3_ONLINE, apFor355v0, pe20100321a-for36X, CMSSW_3_5_4_patch1, for354patch1, CMSSW_3_5_4_onlpatch2_ONLINE, CMSSW_3_5_4_onlpatch1_ONLINE, CMSSW_3_5_4_ONLINE, T0Mon_100316_1, CMSSW_3_6_0_pre3, DQMGUI_5_1_8, pe20100313a-for36X, pe20100312a-for36X, pe20100311a-for36X, fwFor354onl, CMSSW_3_5_4, apFor354v0, T0Mon_100308_2, T0Mon_100308_1, pe20100307a-for36X, pe20100305e-for36X, pe20100305d-for36X, pe20100305c-for36X, pe20100305b-for36X, CMSSW_3_5_3_ONLINE, pe20100305-for36X, fwFor353onl, CMSSW_3_5_3, CMSSW_3_6_0_pre2, apFor353v0, DAS_20100302_slc5_amd64_gcc434, sm100302a-for35X, sm100302b-for36X, sm100302a-for36X, wmtFor360pre2, fc20100228, pe20100228a-for36X, CMSSW_3_5_2_patch2, apFor352p2v0, CMSSW_3_5_2_patch1, apFor352p1v0, DBS_20100226_slc5_amd64_gcc434, fwFor352onl, CMSSW_3_5_1_onlpatch1_ONLINE, CMSSW_3_6_0_pre1, pe20100223c-for36X, pe20100223b-for36X, pe20100223a-for36X, CMSSW_3_5_2, apFor352v0, apFor351p2v0, CMSSW_3_5_1_patch1, for351patch1, CMSSW_3_5_1_ONLINE, DBS_20100217_slc5_amd64_gcc434, FILEMOVER_20100217_slc5_amd64_gcc434, FRONTEND_CONF_3_24_20100217, DAS_20100217_slc5_amd64_gcc434, dsr20100216fwlite350, DAS_20100216b_slc5_amd64_gcc434, CMSSW_3_5_1, T0Mon_100216_1, DAS_20100216_slc5_amd64_gcc434, pe20100216b-for36Xmin, pe20100216a-for36X, apFor351v0, ge20100215-rootqt-r522, ge20100215-rootqt-pre5r526, CMSSW_3_5_0_pre5r526, ge20100212-boost, ge20100112-boost, T0Mon_100210_1, dsr20100209fwlite342, T0Mon_100204_4, DQMGUI_5_1_7b, CMSSW_3_5_0_patch1, CMSSW_3_4_2_patch1, T0Mon_100204_3, for350patch1, for342patch1, T0Mon_100204_2, CMSSW_3_5_0_ONLINE, CMSSW_3_4_2, fwFor350online, CMSSW_3_5_0, apFor350v0, pe20100205a-for35X, T0Mon_100204_1, eskFor342, pe20100204a-for35X, DQMGUI_5_1_7, for341op1-onl-slc5, dg20100201-dbs3, FILEMOVER_20100201_slc5_amd64_gcc434, CMSSW_3_5_0_pre5_ONLINE, FILEMOVER_20100128b_slc5_amd64_gcc434, dg20100129-dbs3, for350p5-onl-slc5, pe20100131c-for35Xr526, pe20100131b-for35Xr526, pe20100131a-for35Xr526, CMSSW_3_5_0_pre5g493, pe20100130b-for35Xg493, pe20100130-for35Xg493, CMSSW_3_5_0_pre5, for350p4-onl-slc5, pe20100129a-for35X, CMSSW_3_5_0_pre4, apFor350pre5v0, dg20100128-dbs3, FILEMOVER_20100128_slc5_amd64_gcc434, sm100128a, sm100128, apFor350pre4v0, DAS_20100127_slc5_amd64_gcc434, pe20100127e-for35X, pe20100127d-for35X, T0Mon_100127_1, pe20100127c-for35X, sm100127-onl35x, CMSSW_3_4_1_ONLINE, pe20100127b-for35X, pe20100127a-for35X, DAS_20100126_slc5_amd64_gcc434, sm100126, pe20100124a-for35X, ap20100123a-for35X, FILEMOVER_20100122_slc5_amd64_gcc434, DAS_20100119_slc5_amd64_gcc434, CMSSW_3_5_0_pre3, DAS_20100115_slc5_amd64_gcc434, dg20100115-security, DBS_20100115_slc5_amd64_gcc434, apFor350pre3v0, pe20100113a-for35X, sm20100113a-for35X, sm20100113-for35X, pe20100112b-for35X, dg20100112-security, DBS_20100112_slc5_amd64_gcc434, sm20100112a-for35X, sm20100112-for35X, pe20100112-for35X, DBS_20100111_slc5_amd64_gcc434, dg20100111-security, dg20100107b-wmcore, dg20100107-wmcore, dsr20100107fwlite341, sm100107a, sm100106a, DAS_20100105_slc5_amd64_gcc434, sm100105c, sm100105b, pe20100105a-for34X-for35X, ge20100105-pyqt-relocatable-build, sm100105a, pe20091227a-ports, DAS_20091221_slc5_amd64_gcc434, CMSSW_3_5_0_pre2, CMSSW_3_4_1, apFor350pre2v2, apFor350pre2v1, apFor350pre2v0, eskFor341, pe20091216b-for34X-for35X, pe20091216a-for34X-for35X, CMSSW_3_4_0, ge20091214b-new-bootstrap, ge20091214a-new-bootstrap, ge20091214-new-bootstrap, DAS_20091214_slc5_amd64_gcc434, ge20091214-fix-rh5x, CMSSW_3_5_0_pre1, apFor350pre1v0, eskFor340, dg20091211-couchdb, dg20091210-phedex, pe20091209b-for34X-for35X, dg20091203c-comp-base, pe20091209a-for34X-for35X, DD_20091208_slc5_amd64_gcc434, DAS_20091208_slc5_amd64_gcc434, FILEMOVER_20091208_slc5_amd64_gcc434, DBS_20091208_slc5_amd64_gcc434, CMSSW_3_3_6_slc5-gcc434, apFor336v0-slc5-gcc434, CMSSW_3_3_5_patch4_slc5-gcc434, apFor335p4v0-slc5-gcc434, apFor335p4-slc5-gcc434, CMSSW_3_3_5_patch3_slc5-gcc434, apFor335p3v0-slc5-gcc434, CMSSW_3_4_0_pre7, eskFor340p7-slc5-gcc434, CMSSW_3_3_5_patch2_slc5-gcc434, dg20091203b-comp-base, dg20091203-comp-base, apFor335p2v0-slc5-gcc434, CMSSW_3_3_5_patch1_slc5-gcc434, pe20091201a-for34X-slc5-gcc434, apFor335pat1v2-slc5-gcc434, apFor335pat1v1-slc5-gcc434, apFor335pat1v0-slc5-gcc434, DQMCATTEST_0_0_1, pe20091130b-for34X-slc5-gcc434, pe20091130a-for34X-slc5-gcc434, CMSSW_3_3_5_slc5-gcc434, apFor335v0-sl5igcc4, pe20091126a-for33X-slc5-gcc434, pe20091120c-for34X-slc5-gcc434, CMSSW_3_4_0_pre6, pe20091120b-for34X-slc5-gcc434, pe20091120a-for34X-slc5-gcc434, pe20091119b-for34X-slc5-gcc434, pe20091119a-for34X-slc5-gcc434, CMSSW_3_3_4_slc5-gcc434, eskFor340p6-slc5-gcc434, apFor334v0-sl5igcc4, DAS_20091117, pe20091116a-for34X-slc5-gcc434, CMSSW_3_3_3_slc5-gcc434, pe20091114a-for34X-slc5-gcc434, pe20091113c-for34X-slc5-gcc434, pe20091113c-for33X-slc5-gcc434, pe20091113b-for33X-slc5-gcc434, pe20091113a-for33X-slc5-gcc434, apFor333v1-sl5igcc4, apFor333v1-sl4igcc4, apFor333v0_sl5igcc4, apFor333v0_sl4igcc4, CMSSW_3_3_2_ONLINE-slc5, sm091112c-slc5onl, sm091112b-slc5onl, sm091112a-slc5onl, sm091112-slc5onl, T0Mon_091111_1, pe20091110c-34X-slc5-gcc434, pe20091110c-34X-slc4-gcc432, pe20091110c-for33X-slc5-gcc434, pe20091110c-for33X-slc4-gcc432, pe20091110b-for33X-slc5-gcc434, pe20091110b-for33X-slc4-gcc432, pe20091110a-for33X-slc5-gcc434, pe20091110a-for33X-slc4-gcc432, pe20091108c-34X-slc5-gcc434, pe20091108c-34X-slc4-gcc432, pe20091108b-34X-slc5-gcc434, pe20091108b-34X-slc4-gcc432, pe20091108a-34X-slc4-gcc432, ap20091107-slc5onl, CMSSW_3_4_0_pre5-slc5-gcc434, pe20091106a-34X-slc5-gcc434, pe20091106a-34X-slc4-gcc432, CMSSW_3_4_0_pre5-slc4-gcc432, CMSSW_3_4_0_pre4-slc4-gcc432, CMSSW_3_4_0_pre5-slc4_gcc432, dl091106, BUILDBOT_01, CERNOIDv02, pe20091103d-34X-slc5-gcc434, pe20091103d-34X-slc4-gcc432, pe20091103c-34X-slc5-gcc434, pe20091103c-34X-slc4-gcc432, pe20091103b-slc4-gcc432, ap-20091103a-slc5onl-bootstrap, pe20091103a-slc5-gcc434, pe20091103a-slc4-gcc432, pe20091103a--slc4-gcc432, ap-20091103-slc5onl-bootstrap, CMSSW_3_3_2_FWLITE-slc5-gcc434, apFor332fwlv1-slc5-gcc434, apFor332fwlv0, eskFor340p4, CMSSW_3_3_2-slc5-gcc434, CMSSW_3_3_2-slc4-gcc432, apFor332v0_sl4igcc4, apFor332v0_sl5igcc4, CMSSW_3_4_0_pre3, CouchDB_0_10_0, eskFor340p3, apFor331fwlv1-slc5gcc434, sm091023b-slc5onl, sm091023a-slc5onl, CMSSW_3_3_1-slc5-gcc434, CMSSW_3_3_1-slc4-gcc432, pe20091022a-ports, pe20091022a-ports5, pe20091021a-ports5, pe20091021a-ports, CMSSW_3_4_0_pre2-432, CMSSW_3_4_0_pre1-432, pe20091018a-ports5, ge20091019, CERNOIDv01, ge20091015-comp-bootstrap, CMSSW_3_3_0-slc5, CMSSW_3_3_0-432, WMCORE-before-refactor, pe20091008d-ports5, pe20091008d-ports, pe20091008c-ports5, ge20091008-fix-rpm-relocation, pe20091008b-ports5, pe20091008a-ports5, ge20091010-bootstrap, pe20091006e-ports5, ge20091006-bootstrap-3, pe20091006d-ports5, ge20091006-bootstrap-2, CMSSW_3_3_0_pre6-432, pe20091006c-ports5, ge20091006, pe20091006b-ports5, pe20091006a-ports5, pe20091006a-ports, PerfSuiteDB_20090930, pe20090929a-ports, ge20090929-amd64, ge20090929-ia32, ap20090929a-ports, CMSSW_3_3_0_pre5-432, pe20090925a-ports, pe20090924a-ports, pe20090923b-ports, pe20090923a-ports, pe20090922e-ports, pe20090922d-ports, pe20090922c-ports, pe20090922b-ports, pe20090922a-ports, ge20090922-ports, pe20090921d-ports, ge20090921-ports, pe20090921c-ports, PerfSuiteDB_20090916, pe20090912a-ports-xdaq, pe20090911a-ports-xdaq, pe20090907a-ports, apFor330pre2v0, PerfSuiteDB_20090904_almost_stable, pe20090904a-ports, PerfSuiteDB_20090904, pe20090903b-ports, pe20090903a-ports, PerfSuiteDB_20090901, forHEARTBEATr04, pe20090827a-ports, pe20090826a-ports, RPMVERIFY_0_2, forHEARTBEATr01, CMSSW_3_2_1-432, pe20090722b-31Xports-432, pe20090722a-31Xports-432, pe20090707c-31Xports-432, pe20090707b-31Xports-432, pe20090707a-31Xports-432
Changes since 1.4: +11 -0 lines
Log Message:
Add yet another missed optimisation patch.

File Contents

# User Rev Content
1 lat 1.2 --- include/libunwind_i.h.orig 2009-05-08 18:34:10.000000000 +0200
2     +++ include/libunwind_i.h 2009-05-19 15:41:30.000000000 +0200
3     @@ -183,13 +183,13 @@ extern intrmask_t unwi_full_mask;
4     #define lock_init(l) mutex_init (l)
5     #define lock_acquire(l,m) \
6     do { \
7     - sigprocmask (SIG_SETMASK, &unwi_full_mask, &(m)); \
8     + /* sigprocmask (SIG_SETMASK, &unwi_full_mask, &(m));*/\
9     mutex_lock (l); \
10     } while (0)
11     #define lock_release(l,m) \
12     do { \
13     mutex_unlock (l); \
14     - sigprocmask (SIG_SETMASK, &(m), NULL); \
15     + /* sigprocmask (SIG_SETMASK, &(m), NULL); */ \
16     } while (0)
17    
18     #define SOS_MEMORY_SIZE 16384 /* see src/mi/mempool.c */
19     --- src/arm/Gglobal.c.orig 2009-05-08 18:34:10.000000000 +0200
20     +++ src/arm/Gglobal.c 2009-05-19 15:41:30.000000000 +0200
21     @@ -44,7 +44,7 @@ tdep_init (void)
22    
23     sigfillset (&unwi_full_mask);
24    
25     - sigprocmask (SIG_SETMASK, &unwi_full_mask, &saved_mask);
26     + /* sigprocmask (SIG_SETMASK, &unwi_full_mask, &saved_mask); */
27     mutex_lock (&arm_lock);
28     {
29     if (!tdep_needs_initialization)
30     @@ -62,5 +62,5 @@ tdep_init (void)
31     }
32     out:
33     mutex_unlock (&arm_lock);
34     - sigprocmask (SIG_SETMASK, &saved_mask, NULL);
35     + /* sigprocmask (SIG_SETMASK, &saved_mask, NULL); */
36     }
37 lat 1.3 --- src/dwarf/Gparser.c.orig 2009-05-19 15:55:12.000000000 +0200
38     +++ src/dwarf/Gparser.c 2009-05-19 16:18:26.000000000 +0200
39     @@ -490,7 +490,7 @@ get_rs_cache (unw_addr_space_t as, intrm
40     if (AO_test_and_set (&cache->busy) == AO_TS_SET)
41     return NULL;
42     # else
43     - sigprocmask (SIG_SETMASK, &unwi_full_mask, saved_maskp);
44     + /* sigprocmask (SIG_SETMASK, &unwi_full_mask, saved_maskp); */
45     if (likely (caching == UNW_CACHE_GLOBAL))
46     {
47     Debug (16, "%s: acquiring lock\n", __FUNCTION__);
48     @@ -523,7 +523,7 @@ put_rs_cache (unw_addr_space_t as, struc
49     # else
50     if (likely (as->caching_policy == UNW_CACHE_GLOBAL))
51     mutex_unlock (&cache->lock);
52     - sigprocmask (SIG_SETMASK, saved_maskp, NULL);
53     + /* sigprocmask (SIG_SETMASK, saved_maskp, NULL); */
54     # endif
55     #endif
56     }
57 lat 1.4 --- src/dwarf/Gfind_proc_info-lsb.c.orig 2009-05-19 16:29:03.000000000 +0200
58     +++ src/dwarf/Gfind_proc_info-lsb.c 2009-05-19 16:46:36.000000000 +0200
59     @@ -745,9 +745,9 @@ dwarf_find_proc_info (unw_addr_space_t a
60     cb_data.di.format = -1;
61     cb_data.di_debug.format = -1;
62    
63     - sigprocmask (SIG_SETMASK, &unwi_full_mask, &saved_mask);
64     + /* sigprocmask (SIG_SETMASK, &unwi_full_mask, &saved_mask); */
65     ret = dl_iterate_phdr (callback, &cb_data);
66     - sigprocmask (SIG_SETMASK, &saved_mask, NULL);
67     + /* sigprocmask (SIG_SETMASK, &saved_mask, NULL); */
68    
69     if (ret <= 0)
70     {
71 lat 1.1 --- src/hppa/Gglobal.c.orig 2009-05-08 18:34:10.000000000 +0200
72 lat 1.2 +++ src/hppa/Gglobal.c 2009-05-19 15:41:30.000000000 +0200
73 lat 1.1 @@ -35,7 +35,7 @@ tdep_init (void)
74    
75     sigfillset (&unwi_full_mask);
76    
77     - sigprocmask (SIG_SETMASK, &unwi_full_mask, &saved_mask);
78     + /* sigprocmask (SIG_SETMASK, &unwi_full_mask, &saved_mask); */
79     mutex_lock (&hppa_lock);
80     {
81     if (!tdep_needs_initialization)
82     @@ -53,5 +53,5 @@ tdep_init (void)
83     }
84     out:
85     mutex_unlock (&hppa_lock);
86     - sigprocmask (SIG_SETMASK, &saved_mask, NULL);
87     + /* sigprocmask (SIG_SETMASK, &saved_mask, NULL); */
88     }
89     --- src/ia64/Gglobal.c.orig 2009-05-08 18:34:10.000000000 +0200
90 lat 1.2 +++ src/ia64/Gglobal.c 2009-05-19 15:41:30.000000000 +0200
91 lat 1.1 @@ -71,7 +71,7 @@ tdep_init (void)
92    
93     sigfillset (&unwi_full_mask);
94    
95     - sigprocmask (SIG_SETMASK, &unwi_full_mask, &saved_mask);
96     + /* sigprocmask (SIG_SETMASK, &unwi_full_mask, &saved_mask); */
97     mutex_lock (&unw.lock);
98     {
99     if (!tdep_needs_initialization)
100     @@ -121,5 +121,5 @@ tdep_init (void)
101     }
102     out:
103     mutex_unlock (&unw.lock);
104     - sigprocmask (SIG_SETMASK, &saved_mask, NULL);
105     + /* sigprocmask (SIG_SETMASK, &saved_mask, NULL); */
106     }
107     --- src/ia64/Gscript.c.orig 2009-05-08 18:34:10.000000000 +0200
108 lat 1.2 +++ src/ia64/Gscript.c 2009-05-19 15:41:30.000000000 +0200
109 lat 1.1 @@ -113,7 +113,7 @@ get_script_cache (unw_addr_space_t as, i
110     if (AO_test_and_set (&cache->busy) == AO_TS_SET)
111     return NULL;
112     # else
113     - sigprocmask (SIG_SETMASK, &unwi_full_mask, saved_maskp);
114     + /* sigprocmask (SIG_SETMASK, &unwi_full_mask, saved_maskp); */
115     if (likely (caching == UNW_CACHE_GLOBAL))
116     {
117     Debug (16, "%s: acquiring lock\n", __FUNCTION__);
118     @@ -145,7 +145,7 @@ put_script_cache (unw_addr_space_t as, s
119     # else
120     if (likely (as->caching_policy == UNW_CACHE_GLOBAL))
121     mutex_unlock (&cache->lock);
122     - sigprocmask (SIG_SETMASK, saved_maskp, NULL);
123     + /* sigprocmask (SIG_SETMASK, saved_maskp, NULL); */
124     # endif
125     #endif
126     }
127 lat 1.2 --- src/ia64/Gtables.c.orig 2009-05-08 18:34:10.000000000 +0200
128     +++ src/ia64/Gtables.c 2009-05-19 15:41:30.000000000 +0200
129     @@ -622,9 +622,9 @@ validate_cache (unw_addr_space_t as)
130     intrmask_t saved_mask;
131     int ret;
132 lat 1.1
133     - sigprocmask (SIG_SETMASK, &unwi_full_mask, &saved_mask);
134     + /* sigprocmask (SIG_SETMASK, &unwi_full_mask, &saved_mask); */
135 lat 1.2 ret = dl_iterate_phdr (check_callback, as);
136 lat 1.1 - sigprocmask (SIG_SETMASK, &saved_mask, NULL);
137     + /* sigprocmask (SIG_SETMASK, &saved_mask, NULL); */
138 lat 1.2 return ret;
139 lat 1.1 }
140 lat 1.2
141 lat 1.1 --- src/mips/Gglobal.c.orig 2009-05-08 18:34:10.000000000 +0200
142 lat 1.2 +++ src/mips/Gglobal.c 2009-05-19 15:41:30.000000000 +0200
143 lat 1.1 @@ -44,7 +44,7 @@ tdep_init (void)
144    
145     sigfillset (&unwi_full_mask);
146    
147     - sigprocmask (SIG_SETMASK, &unwi_full_mask, &saved_mask);
148     + /* sigprocmask (SIG_SETMASK, &unwi_full_mask, &saved_mask); */
149     mutex_lock (&mips_lock);
150     {
151     if (!tdep_needs_initialization)
152     @@ -62,5 +62,5 @@ tdep_init (void)
153     }
154     out:
155     mutex_unlock (&mips_lock);
156     - sigprocmask (SIG_SETMASK, &saved_mask, NULL);
157     + /* sigprocmask (SIG_SETMASK, &saved_mask, NULL); */
158     }
159 lat 1.2 --- src/ppc32/Gglobal.c.orig 2009-05-08 18:34:10.000000000 +0200
160     +++ src/ppc32/Gglobal.c 2009-05-19 15:41:30.000000000 +0200
161     @@ -115,7 +115,7 @@ tdep_init (void)
162 lat 1.1
163     sigfillset (&unwi_full_mask);
164    
165     - sigprocmask (SIG_SETMASK, &unwi_full_mask, &saved_mask);
166     + /* sigprocmask (SIG_SETMASK, &unwi_full_mask, &saved_mask); */
167 lat 1.2 mutex_lock (&ppc32_lock);
168 lat 1.1 {
169     if (!tdep_needs_initialization)
170 lat 1.2 @@ -133,5 +133,5 @@ tdep_init (void)
171 lat 1.1 }
172     out:
173 lat 1.2 mutex_unlock (&ppc32_lock);
174 lat 1.1 - sigprocmask (SIG_SETMASK, &saved_mask, NULL);
175     + /* sigprocmask (SIG_SETMASK, &saved_mask, NULL); */
176     }
177 lat 1.2 --- src/ppc64/Gglobal.c.orig 2009-05-08 18:34:10.000000000 +0200
178     +++ src/ppc64/Gglobal.c 2009-05-19 15:41:30.000000000 +0200
179     @@ -162,7 +162,7 @@ tdep_init (void)
180 lat 1.1
181     sigfillset (&unwi_full_mask);
182    
183     - sigprocmask (SIG_SETMASK, &unwi_full_mask, &saved_mask);
184     + /* sigprocmask (SIG_SETMASK, &unwi_full_mask, &saved_mask); */
185 lat 1.2 mutex_lock (&ppc64_lock);
186 lat 1.1 {
187     if (!tdep_needs_initialization)
188 lat 1.2 @@ -180,5 +180,5 @@ tdep_init (void)
189 lat 1.1 }
190     out:
191 lat 1.2 mutex_unlock (&ppc64_lock);
192 lat 1.1 - sigprocmask (SIG_SETMASK, &saved_mask, NULL);
193     + /* sigprocmask (SIG_SETMASK, &saved_mask, NULL); */
194     }
195 lat 1.2 --- src/setjmp/setjmp_i.h.orig 2009-05-08 18:34:10.000000000 +0200
196     +++ src/setjmp/setjmp_i.h 2009-05-19 15:41:30.000000000 +0200
197     @@ -92,7 +92,7 @@ resume_restores_sigmask (unw_cursor_t *c
198     mp = &wp[JB_MASK];
199     else
200     {
201     - if (sigprocmask (SIG_BLOCK, NULL, &current_mask) < 0)
202     + if (0 && sigprocmask (SIG_BLOCK, NULL, &current_mask) < 0)
203     abort ();
204     mp = &current_mask;
205     }
206     --- src/setjmp/sigsetjmp.c.orig 2009-05-08 18:34:10.000000000 +0200
207     +++ src/setjmp/sigsetjmp.c 2009-05-19 15:41:30.000000000 +0200
208     @@ -44,7 +44,7 @@ sigsetjmp (sigjmp_buf env, int savemask)
209     /* Note: we assume here that "wp" has same or better alignment as
210     sigset_t. */
211     if (savemask
212     - && sigprocmask (SIG_BLOCK, NULL, (sigset_t *) (wp + JB_MASK)) < 0)
213     + && 0 && sigprocmask (SIG_BLOCK, NULL, (sigset_t *) (wp + JB_MASK)) < 0)
214     abort ();
215     return 0;
216     }
217     --- src/x86_64/Gglobal.c.orig 2009-05-08 18:34:10.000000000 +0200
218     +++ src/x86_64/Gglobal.c 2009-05-19 15:41:30.000000000 +0200
219     @@ -61,7 +61,7 @@ tdep_init (void)
220 lat 1.1
221     sigfillset (&unwi_full_mask);
222    
223     - sigprocmask (SIG_SETMASK, &unwi_full_mask, &saved_mask);
224     + /* sigprocmask (SIG_SETMASK, &unwi_full_mask, &saved_mask); */
225 lat 1.2 mutex_lock (&x86_64_lock);
226 lat 1.1 {
227     if (!tdep_needs_initialization)
228 lat 1.2 @@ -79,5 +79,5 @@ tdep_init (void)
229 lat 1.1 }
230     out:
231 lat 1.2 mutex_unlock (&x86_64_lock);
232 lat 1.1 - sigprocmask (SIG_SETMASK, &saved_mask, NULL);
233     + /* sigprocmask (SIG_SETMASK, &saved_mask, NULL); */
234     }
235 lat 1.2 --- src/x86/Gglobal.c.orig 2009-05-08 18:34:10.000000000 +0200
236     +++ src/x86/Gglobal.c 2009-05-19 15:41:30.000000000 +0200
237     @@ -47,7 +47,7 @@ tdep_init (void)
238 lat 1.1
239     sigfillset (&unwi_full_mask);
240    
241     - sigprocmask (SIG_SETMASK, &unwi_full_mask, &saved_mask);
242     + /* sigprocmask (SIG_SETMASK, &unwi_full_mask, &saved_mask); */
243 lat 1.2 mutex_lock (&x86_lock);
244 lat 1.1 {
245     if (!tdep_needs_initialization)
246 lat 1.2 @@ -65,5 +65,5 @@ tdep_init (void)
247 lat 1.1 }
248     out:
249 lat 1.2 mutex_unlock (&x86_lock);
250 lat 1.1 - sigprocmask (SIG_SETMASK, &saved_mask, NULL);
251     + /* sigprocmask (SIG_SETMASK, &saved_mask, NULL); */
252     }
253 lat 1.2 --- src/dwarf/Gfind_proc_info-lsb.c.orig 2009-05-19 15:41:30.000000000 +0200
254     +++ src/dwarf/Gfind_proc_info-lsb.c 2009-05-19 15:41:30.000000000 +0200
255 lat 1.1 @@ -229,6 +229,9 @@ load_debug_frame (const char *file, char
256     }
257     #endif /* CONFIG_DEBUG_FRAME */
258    
259     +#ifdef __linux
260     +static char exename[PATH_MAX];
261     +#endif
262    
263     /* Locate the binary which originated the contents of address ADDR. Return
264     the name of the binary in *name (space is allocated by the caller)
265     @@ -238,6 +241,20 @@ static int
266     find_binary_for_address (unw_word_t ip, char *name, size_t name_size)
267     {
268     #ifdef __linux
269     + if (! exename[0])
270     + {
271     + struct stat sbuf;
272     + extern const char *program_invocation_name;
273     + memset (exename, 0, sizeof (exename));
274     + if (stat ("/proc/self/exe", &sbuf) == 0)
275     + readlink ("/proc/self/exe", exename, sizeof (exename)-1);
276     + else
277     + strncpy (exename, program_invocation_name, sizeof (exename)-1);
278     + }
279     + memset(name, 0, name_size);
280     + strncpy(name, exename, name_size-1);
281     +
282     +#elif 0 && __linux
283     struct map_iterator mi;
284     int found = 0;
285     int pid = getpid ();
286 lat 1.2 --- include/dwarf.h.orig 2009-05-08 18:34:10.000000000 +0200
287     +++ include/dwarf.h 2009-05-19 15:43:54.000000000 +0200
288     @@ -247,6 +247,7 @@ typedef struct dwarf_reg_state
289 lat 1.1 unsigned short lru_chain; /* used for least-recently-used chain */
290     unsigned short coll_chain; /* used for hash collisions */
291     unsigned short hint; /* hint for next rs to try (or -1) */
292 lat 1.2 + int bogus; /* negative error code for bogus negative (failed) cache match, zero otherwise */
293 lat 1.1 }
294     dwarf_reg_state_t;
295    
296 lat 1.2 --- src/dwarf/Gparser.c.orig 2009-05-19 15:41:30.000000000 +0200
297     +++ src/dwarf/Gparser.c 2009-05-19 15:44:05.000000000 +0200
298 lat 1.1 @@ -467,6 +467,7 @@ flush_rs_cache (struct dwarf_rs_cache *c
299     cache->buckets[i].lru_chain = (i - 1);
300     cache->buckets[i].coll_chain = -1;
301     cache->buckets[i].ip = 0;
302     + cache->buckets[i].bogus = 0;
303     }
304     for (i = 0; i<DWARF_UNW_HASH_SIZE; ++i)
305     cache->hash[i] = -1;
306     @@ -577,7 +578,7 @@ rs_lookup (struct dwarf_rs_cache *cache,
307     }
308    
309     static inline dwarf_reg_state_t *
310     -rs_new (struct dwarf_rs_cache *cache, struct dwarf_cursor * c)
311 lat 1.2 +rs_new (struct dwarf_rs_cache *cache, struct dwarf_cursor * c, int bogus)
312 lat 1.1 {
313     dwarf_reg_state_t *rs, *prev, *tmp;
314     unw_hash_index_t index;
315     @@ -624,6 +625,7 @@ rs_new (struct dwarf_rs_cache *cache, st
316     rs->hint = 0;
317     rs->ip = c->ip;
318     rs->ret_addr_column = c->ret_addr_column;
319     + rs->bogus = bogus;
320    
321     return rs;
322     }
323 lat 1.2 @@ -818,20 +820,31 @@ dwarf_find_save_locs (struct dwarf_curso
324 lat 1.1
325     if (rs)
326     {
327     + if (rs->bogus)
328 lat 1.2 + {
329     + ret = rs->bogus;
330     + goto out;
331     + }
332 lat 1.1 c->ret_addr_column = rs->ret_addr_column;
333     goto apply;
334     }
335    
336     if ((ret = fetch_proc_info (c, c->ip, 1)) < 0)
337     - goto out;
338     + {
339 lat 1.2 + rs_new(cache, c, ret);
340 lat 1.1 + goto out;
341     + }
342    
343     if ((ret = create_state_record_for (c, &sr, c->ip)) < 0)
344 lat 1.2 - goto out;
345     + {
346     + rs_new(cache, c, ret);
347     + goto out;
348     + }
349    
350 lat 1.1 rs1 = &sr.rs_current;
351     if (rs1)
352     {
353     - rs = rs_new (cache, c);
354     + rs = rs_new (cache, c, 0);
355     memcpy(rs, rs1, offsetof(struct dwarf_reg_state, ip));
356     if (!rs)
357     {
358 lat 1.5 --- include/dwarf.h.orig 2009-05-19 17:12:21.000000000 +0200
359     +++ include/dwarf.h 2009-05-19 17:12:27.000000000 +0200
360     @@ -303,7 +303,7 @@
361     }
362     dwarf_cursor_t;
363    
364     -#define DWARF_LOG_UNW_CACHE_SIZE 7
365     +#define DWARF_LOG_UNW_CACHE_SIZE 10
366     #define DWARF_UNW_CACHE_SIZE (1 << DWARF_LOG_UNW_CACHE_SIZE)
367    
368     #define DWARF_LOG_UNW_HASH_SIZE (DWARF_LOG_UNW_CACHE_SIZE + 1)