From: Peter Weldon Date: 2010-09-25T10:06:46+09:00 Subject: [ruby-core:32551] [Ruby 1.9-Feature#3875][Open] [Patch] backtrace for i386-mswin32_100 --mimepart_4c9d4b2141346_ef3d1f07861323e Content-Type: text/plain Content-Transfer-Encoding: Quoted-printable Content-Disposition: inline Feature #3875: [Patch] backtrace for i386-mswin32_100 http://redmine.ruby-lang.org/issues/show/3875 Author: Peter Weldon Status: Open, Priority: Normal Naive implementation of backtrace for mswin. >ruby -e "Process.kill :SEGV, $$" -e:1: [BUG] Segmentation fault ruby 1.9.3dev (2010-09-19) [i386-mswin32_100] -- control frame ---------- c:0004 p:---- s:0011 b:0011 l:000010 d:000010 CFUNC :kill c:0003 p:0019 s:0006 b:0006 l:000d9c d:001bbc EVAL -e:1 c:0002 p:---- s:0004 b:0004 l:000003 d:000003 FINISH c:0001 p:0000 s:0002 b:0002 l:000d9c d:000d9c TOP --------------------------- -- Ruby level backtrace information -------------------------------------= --- -e:1:in `
' -e:1:in `kill' -- C level backtrace information ----------------------------------------= --- (KiFastSystemCallRet) [0x77af64f4] (WaitForSingleObjectEx) [0x762ff003] (WaitForSingleObject) [0x762fefb2] (rb_w32_backtrace)(c:\jello\ruby\github\ruby\win32\win32.c:5796) [0x6f55f= 066] (rb_vm_bugreport)(c:\jello\ruby\vm_dump.c:622) [0x6f591d2a] (report_bug)(c:\jello\ruby\error.c:236) [0x6f52a0cb] (rb_bug)(c:\jello\ruby\error.c:250) [0x6f52a101] (sigsegv)(c:\jello\ruby\signal.c:613) [0x6f54f6d6] (raise) [0x6f4cb416] (kill)(c:\jello\ruby\win32\win32.c:3773) [0x6f55cce2] (rb_f_kill)(c:\jello\ruby\signal.c:406) [0x6f54f60f] (call_cfunc)(c:\jello\ruby\vm_insnhelper.c:315) [0x6f52c097] (vm_call_cfunc)(c:\jello\ruby\vm_insnhelper.c:404) [0x6f52c352] (vm_call_method)(c:\jello\ruby\vm_insnhelper.c:524) [0x6f53034a] (vm_exec_core)(c:\jello\ruby\insns.def:1006) [0x6f5311d4] (vm_exec)(c:\jello\ruby\vm.c:1146) [0x6f532a21] (rb_iseq_eval_main)(c:\jello\ruby\vm.c:1387) [0x6f532b66] (ruby_exec_internal)(c:\jello\ruby\eval.c:217) [0x6f50124e] (ruby_exec_node)(c:\jello\ruby\eval.c:261) [0x6f5012b6] (ruby_run_node)(c:\jello\ruby\eval.c:254) [0x6f502c83] (main)(c:\jello\ruby\main.c:35) [0x001f1030] (__tmainCRTStartup)(f:\dd\vctools\crt_bld\self_x86\crt\src\crtexe.c:555) = [0x001f11c1] (BaseThreadInitThunk) [0x76301194] (RtlInitializeExceptionChain) [0x77b0b495] (RtlInitializeExceptionChain) [0x77b0b468] [NOTE] You may have encountered a bug in the Ruby interpreter or extension libra= ries. Bug reports are welcome. For details: http://www.ruby-lang.org/bugreport.html ---------------------------------------- http://redmine.ruby-lang.org --mimepart_4c9d4b2141346_ef3d1f07861323e Content-Type: application/octet-stream; name=0001-Add-C-level-backtrace-for-MSWIN-x86.patch Content-Transfer-Encoding: Base64 Content-Disposition: attachment; filename=0001-Add-C-level-backtrace-for-MSWIN-x86.patch LS0tCiBpbmNsdWRlL3J1Ynkvd2luMzIuaCB8ICAgIDMgKwogdm1fZHVtcC5j ICAgICAgICAgICAgfCAgICAyICsKIHdpbjMyL3dpbjMyLmMgICAgICAgIHwg IDEwOCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKwogMyBmaWxlcyBjaGFuZ2VkLCAxMTMgaW5zZXJ0aW9ucygr KSwgMCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9pbmNsdWRlL3J1Ynkv d2luMzIuaCBiL2luY2x1ZGUvcnVieS93aW4zMi5oCmluZGV4IDdiNmJkZWQu LmRiNjQ2YjIgMTAwNjQ0Ci0tLSBhL2luY2x1ZGUvcnVieS93aW4zMi5oCisr KyBiL2luY2x1ZGUvcnVieS93aW4zMi5oCkBAIC02NzIsNiArNjcyLDkgQEAg aW4gYXN5bmNocm9ub3VzX2Z1bmNfdC4KIHR5cGVkZWYgdWludHB0cl90ICgq YXN5bmNocm9ub3VzX2Z1bmNfdCkodWludHB0cl90IHNlbGYsIGludCBhcmdj LCB1aW50cHRyX3QqIGFyZ3YpOwogdWludHB0cl90IHJiX3czMl9hc3luY2hy b25pemUoYXN5bmNocm9ub3VzX2Z1bmNfdCBmdW5jLCB1aW50cHRyX3Qgc2Vs ZiwgaW50IGFyZ2MsIHVpbnRwdHJfdCogYXJndiwgdWludHB0cl90IGludHJ2 YWwpOwogCisvKiBiYWNrdHJhY2UgKi8KK3ZvaWQgcmJfdzMyX2JhY2t0cmFj ZSgpOworCiAjaWYgZGVmaW5lZCBfX0dOVUNfXyAmJiBfX0dOVUNfXyA+PSA0 CiAjcHJhZ21hIEdDQyB2aXNpYmlsaXR5IHBvcAogI2VuZGlmCmRpZmYgLS1n aXQgYS92bV9kdW1wLmMgYi92bV9kdW1wLmMKaW5kZXggZjI0NWNjYy4uYzAx OTliMSAxMDA2NDQKLS0tIGEvdm1fZHVtcC5jCisrKyBiL3ZtX2R1bXAuYwpA QCAtNjE2LDUgKzYxNiw3IEBAIHJiX3ZtX2J1Z3JlcG9ydCh2b2lkKQogCX0K IAlmcHJpbnRmKHN0ZGVyciwgIlxuIik7CiAgICAgfQorI2VsaWYgX1dJTjMy CisgICAgcmJfdzMyX2JhY2t0cmFjZSgpOwogI2VuZGlmCiB9CmRpZmYgLS1n aXQgYS93aW4zMi93aW4zMi5jIGIvd2luMzIvd2luMzIuYwppbmRleCA0NmNk YWZhLi5iOWQ5NzEzIDEwMDY0NAotLS0gYS93aW4zMi93aW4zMi5jCisrKyBi L3dpbjMyL3dpbjMyLmMKQEAgLTM2LDYgKzM2LDkgQEAKICNpZmRlZiBfX01J TkdXMzJfXwogI2luY2x1ZGUgPG1zd3NvY2suaD4KICNlbmRpZgorI2lmIF9N U0NfVkVSICYmIF9NX0lYODYKKyNpbmNsdWRlIDxEYmdIZWxwLmg+CisjZW5k aWYKICNpbmNsdWRlICJydWJ5L3dpbjMyLmgiCiAjaW5jbHVkZSAid2luMzIv ZGlyLmgiCiAjZGVmaW5lIGlzZGlyc2VwKHgpICgoeCkgPT0gJy8nIHx8ICh4 KSA9PSAnXFwnKQpAQCAtNTY5NCwzICs1Njk3LDEwOCBAQCBzaWduYml0KGRv dWJsZSB4KQogICAgIHJldHVybiAqaXAgPCAwOwogfQogI2VuZGlmCisKKyNp ZiBfTVNDX1ZFUiAmJiBfTV9JWDg2CitzdGF0aWMgc3RydWN0IER1bXBBcmdz IHsKKyAgICBEV09SRCB0aHJlYWRfaWQ7CisgICAgSEFORExFIGV2ZW50Owor fTsKKworc3RhdGljIHZvaWQKK2R1bXBfdGhyZWFkKHZvaWQgKmFyZykKK3sK KyAgICBzdHJ1Y3QgRHVtcEFyZ3MqIGR1bXBfYXJncyA9IChzdHJ1Y3QgRHVt cEFyZ3MqKWFyZzsKKyAgICBIQU5ETEUgcHJvY2VzcyA9IEdldEN1cnJlbnRQ cm9jZXNzKCk7CisgICAgSEFORExFIHRocmVhZCA9IE9wZW5UaHJlYWQoVEhS RUFEX0FMTF9BQ0NFU1MsIDAsIGR1bXBfYXJncy0+dGhyZWFkX2lkKTsKKyAg ICBTVEFDS0ZSQU1FNjQgc3RhY2tGcmFtZTsKKyAgICBDT05URVhUIGNvbnRl eHQ7CisgICAgQk9PTCBib29sX3JjOworICAgIERXT1JENjQgZHdEaXNwbGFj ZW1lbnQ7CisgICAgRFdPUkQ2NCBkd0FkZHJlc3M7CisgICAgY2hhciBidWZm ZXJbc2l6ZW9mKFNZTUJPTF9JTkZPKSArIE1BWF9TWU1fTkFNRSAqIHNpemVv ZihUQ0hBUildOworICAgIFBTWU1CT0xfSU5GTyBwU3ltYm9sID0gKFBTWU1C T0xfSU5GTylidWZmZXI7CisgICAgSU1BR0VITFBfTElORTY0IGxpbmU7Cisg ICAgRFdPUkQgZHdMaW5lRGlzcGxhY2VtZW50OworCisgICAgU3ltU2V0T3B0 aW9ucyhTWU1PUFRfVU5ETkFNRSB8IFNZTU9QVF9ERUZFUlJFRF9MT0FEUyB8 IFNZTU9QVF9ERUJVRyB8IFNZTU9QVF9MT0FEX0xJTkVTKTsKKworICAgIGlm ICghU3ltSW5pdGlhbGl6ZShwcm9jZXNzLCBOVUxMLCBUUlVFKSkgYWJvcnQo KTsKKworICAgIG1lbXNldCgmY29udGV4dCwgMCwgc2l6ZW9mKENPTlRFWFQp KTsKKyAgICBjb250ZXh0LkNvbnRleHRGbGFncyA9IENPTlRFWFRfRlVMTDsK KyAgICBib29sX3JjID0gR2V0VGhyZWFkQ29udGV4dCh0aHJlYWQsICZjb250 ZXh0KTsKKyAgICBpZighYm9vbF9yYykgYWJvcnQoKTsKKworICAgIG1lbXNl dCgmc3RhY2tGcmFtZSwwLHNpemVvZihTVEFDS0ZSQU1FNjQpKTsKKyAgICBz dGFja0ZyYW1lLkFkZHJQQy5Nb2RlID0gQWRkck1vZGVGbGF0OworICAgIHN0 YWNrRnJhbWUuQWRkclBDLk9mZnNldCA9IGNvbnRleHQuRWlwOworCisgICAg c3RhY2tGcmFtZS5BZGRyRnJhbWUuTW9kZSA9IEFkZHJNb2RlRmxhdDsKKyAg ICBzdGFja0ZyYW1lLkFkZHJGcmFtZS5PZmZzZXQgPSBjb250ZXh0LkVicDsK KworICAgIHN0YWNrRnJhbWUuQWRkclN0YWNrLk1vZGUgPSBBZGRyTW9kZUZs YXQ7CisgICAgc3RhY2tGcmFtZS5BZGRyU3RhY2suT2Zmc2V0ID0gY29udGV4 dC5Fc3A7CisKKyAgICBmcHJpbnRmKHN0ZGVyciwgIi0tIEMgbGV2ZWwgYmFj a3RyYWNlIGluZm9ybWF0aW9uICIKKyAgICAgICAgICAgICItLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4iKTsKKworICAg IHdoaWxlKDEpCisgICAgeworCWJvb2xfcmMgPSBTdGFja1dhbGs2NCgKKwkg ICAgSU1BR0VfRklMRV9NQUNISU5FX0kzODYsCisJICAgIHByb2Nlc3MsCisJ ICAgIHRocmVhZCwKKwkgICAgJnN0YWNrRnJhbWUsCisJICAgIChQVk9JRCkm Y29udGV4dCwKKwkgICAgTlVMTCwKKwkgICAgU3ltRnVuY3Rpb25UYWJsZUFj Y2VzczY0LAorCSAgICBTeW1HZXRNb2R1bGVCYXNlNjQsCisJICAgIE5VTEwp OworCWlmKCFib29sX3JjKSBicmVhazsKKworICAgICAgICBkd0Rpc3BsYWNl bWVudCA9IDA7CisgICAgICAgIGR3QWRkcmVzcyA9IHN0YWNrRnJhbWUuQWRk clBDLk9mZnNldDsKKworCW1lbXNldChidWZmZXIsIDAsIHNpemVvZihidWZm ZXIpKTsKKwlwU3ltYm9sLT5TaXplT2ZTdHJ1Y3QgPSBzaXplb2YoU1lNQk9M X0lORk8pOworCXBTeW1ib2wtPk1heE5hbWVMZW4gPSBNQVhfU1lNX05BTUU7 CisKKwlpZiAoU3ltRnJvbUFkZHIocHJvY2VzcywgZHdBZGRyZXNzLCAmZHdE aXNwbGFjZW1lbnQsIHBTeW1ib2wpKQorCXsKKyAgICAgICAgICAgIGZwcmlu dGYoc3RkZXJyLCAiKCVzKSIsIHBTeW1ib2wtPk5hbWUpOworCX0KKworCW1l bXNldCgmbGluZSwgMCwgc2l6ZW9mKElNQUdFSExQX0xJTkU2NCkpOworCWxp bmUuU2l6ZU9mU3RydWN0ID0gc2l6ZW9mKElNQUdFSExQX0xJTkU2NCk7CisK KwlpZiAoU3ltR2V0TGluZUZyb21BZGRyNjQocHJvY2VzcywgZHdBZGRyZXNz LCAmZHdMaW5lRGlzcGxhY2VtZW50LCAmbGluZSkpCisJeworICAgICAgICAg ICAgZnByaW50ZihzdGRlcnIsICIoJXM6JWx1KSIsIGxpbmUuRmlsZU5hbWUs IGxpbmUuTGluZU51bWJlcik7CisJfQorCisgICAgICAgIGZwcmludGYoc3Rk ZXJyLCAiIFsweCUwOEk2NHhdXG4iLCBkd0FkZHJlc3MpOworICAgIH0KKyAg ICBmcHJpbnRmKHN0ZGVyciwgIlxuIik7CisKKyAgICBpZiAoIUNsb3NlSGFu ZGxlKHRocmVhZCkpIGFib3J0KCk7CisgICAgaWYgKCFTeW1DbGVhbnVwKHBy b2Nlc3MpKSBhYm9ydCgpOworICAgIGlmICghU2V0RXZlbnQoZHVtcF9hcmdz LT5ldmVudCkpIGFib3J0KCk7Cit9CisKK3ZvaWQgCityYl93MzJfYmFja3Ry YWNlKCkgeworICAgIHN0cnVjdCBEdW1wQXJncyBkdW1wX2FyZ3M7CisgICAg ZHVtcF9hcmdzLnRocmVhZF9pZCA9IEdldEN1cnJlbnRUaHJlYWRJZCgpOwor ICAgIGR1bXBfYXJncy5ldmVudCA9IENyZWF0ZUV2ZW50KE5VTEwsIFRSVUUs IEZBTFNFLCBOVUxMKTsKKyAgICBpZighZHVtcF9hcmdzLmV2ZW50KSBhYm9y dCgpOworICAgIF9iZWdpbnRocmVhZChkdW1wX3RocmVhZCwwLCZkdW1wX2Fy Z3MpOworCisgICAgaWYgKFdhaXRGb3JTaW5nbGVPYmplY3QoZHVtcF9hcmdz LmV2ZW50LCBJTkZJTklURSkgIT0gV0FJVF9PQkpFQ1RfMCkgYWJvcnQoKTsK K30KKyNlbGlmCit2b2lkIAorcmJfdzMyX2JhY2t0cmFjZSgpIHsKK30KKyNl bmRpZgorCisKLS0gCg== --mimepart_4c9d4b2141346_ef3d1f07861323e--