From: Sean Bradly Date: 2011-01-29T09:09:48+09:00 Subject: [ruby-core:34955] [Archive91-Backport#4339][Open] Segmentation fault during Marshal.load --mimepart_4d435aafbe906_59895b372a2166e Content-Type: text/plain Content-Transfer-Encoding: Quoted-printable Content-Disposition: inline Backport #4339: Segmentation fault during Marshal.load http://redmine.ruby-lang.org/issues/show/4339 Author: Sean Bradly Status: Open, Priority: Normal Category: core Conditions that seem to have to be satisfied: 1) A call to Marshal.load must be interrupted by a context switch. 2) Another thread calls GC.start manually. 3) The object being marshaled needs to have a lot of child objects to be = reliable. This appears to be a thread-safety issue affecting Ruby 1.8.x only. It tr= iggers reliably for me on: Ubuntu -> ruby 1.8.7 (2010-06-23 patchlevel 299) [i686-linux] Ubuntu-rvm -> ruby 1.8.7 (2010-12-23 patchlevel 330) [i686-linux] MacRuby -> ruby 1.8.7 (2009-06-12 patchlevel 174) [universal-darwin10.= 0] Mac-rvm -> ruby 1.8.7 (2010-08-16 patchlevel 302) [i686-darwin10.4.0] ---------------------------------------- http://redmine.ruby-lang.org --mimepart_4d435aafbe906_59895b372a2166e Content-Type: application/x-ruby; name=REPRO4.rb Content-Transfer-Encoding: Base64 Content-Disposition: attachment; filename=REPRO4.rb IyEvdXNyL2Jpbi9lbnYgcnVieQoKcmVxdWlyZSAndGhyZWFkJwpyZXF1aXJl ICdzb2NrZXQnCgojIENvbmRpdGlvbnMgdGhhdCBzZWVtIHRvIGhhdmUgdG8g YmUgc2F0aXNmaWVkOgojCiMgMSkgQSBjYWxsIHRvIE1hcnNoYWwubG9hZCBt dXN0IGJlIGludGVycnVwdGVkIGJ5IGEgY29udGV4dCBzd2l0Y2ggKGhlcmUg YSBibG9ja2luZyByZWFkIGlzIHVzZWQgdG8gZm9yY2UgaXQpCiMgMikgVGhh dCBjYWxsIG5lZWRzIHRvIGJlIGd1YXJkZWQgYnkgYSBNdXRleCwgYnV0IGl0 IGRvZXMgKm5vdCogcmVxdWlyZSBhbm90aGVyIHRocmVhZCB0byBhbHNvIGJl IHVzaW5nIG9yIGJsb2NraW5nIG9uIHRoZSBzYW1lIG11dGV4LgojIDMpIEFu b3RoZXIgdGhyZWFkIGNhbGxzIEdDLnN0YXJ0IG1hbnVhbGx5CiMgNCkgVGhl IG9iamVjdCBiZWluZyBtYXJzaGFsZWQgbmVlZHMgdG8gaGF2ZSBhdCBsZWFz dCBzb21lIGNoaWxkIG9iamVjdHMKClRocmVhZC5hYm9ydF9vbl9leGNlcHRp b24gPSB0cnVlCgp0aHJlYWRzID0gW10KcmN2LHNuZCA9IElPLnBpcGUKCnRo cmVhZHMgPDwgVGhyZWFkLm5ldyBkbwoJb2JqID0gKCdhJy4uJ3onKS5pbmpl Y3Qoe30pe3xoLHN8aFtzLmludGVybl09cyoxMDI0O2h9CglkYXRhID0gTWFy c2hhbC5kdW1wKG9iaikKCXNuZC53cml0ZShkYXRhWzAsZGF0YS5zaXplLzJd KQoJc2xlZXAoMSkKCXNuZC53cml0ZShkYXRhWyhkYXRhLnNpemUvMikuLi0x XSkKZW5kCgp0aHJlYWRzIDw8IFRocmVhZC5uZXcgZG8KCWxvY2sgPSBNdXRl eC5uZXcKCWxvY2suc3luY2hyb25pemUgZG8KCQlNYXJzaGFsLmxvYWQocmN2 KQoJZW5kCmVuZAoKdGhyZWFkcyA8PCBUaHJlYWQubmV3IGRvCgkxMDAudGlt ZXMgZG8KCQlHQy5zdGFydAoJZW5kCmVuZAoKdGhyZWFkcy5tYXB7fHR8IHQu am9pbn0K --mimepart_4d435aafbe906_59895b372a2166e--