[ruby-dev:48506] [ruby-trunk - Bug #9959] [Assigned] TracePoint can invoke inconsistent call event with bmethod

From: usa@...
Date: 2014-08-31 07:49:21 UTC
List: ruby-dev #48506
SXNzdWUgIzk5NTkgaGFzIGJlZW4gdXBkYXRlZCBieSBVc2FrdSBOQUtBTVVS
QS4KClN0YXR1cyBjaGFuZ2VkIGZyb20gQ2xvc2VkIHRvIEFzc2lnbmVkCgoy
LjAuMOOBq+OBr+OBneOCguOBneOCgiB0aC0+cGFzc2VkX2JtZXRob2RfbWUg
44GM44Gq44GP44Gm44CB54++5Zyo44GudHJ1bmvjga5lbHNl56+A44Gr55u4
5b2T44GZ44KL6YOo5YiG44GM44Gq44GE44KT44Gn44GZ44GR44Gp44CB44Gp
44GG44GX44Gf44KC44KT44Gn44GX44KH44GG44GL77yfCgotLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCkJ1ZyAjOTk1OTogVHJh
Y2VQb2ludCBjYW4gaW52b2tlIGluY29uc2lzdGVudCBjYWxsIGV2ZW50IHdp
dGggYm1ldGhvZApodHRwczovL2J1Z3MucnVieS1sYW5nLm9yZy9pc3N1ZXMv
OTk1OSNjaGFuZ2UtNDg1OTAKCiogQXV0aG9yOiBLb2ljaGkgU2FzYWRhCiog
U3RhdHVzOiBBc3NpZ25lZAoqIFByaW9yaXR5OiBOb3JtYWwKKiBBc3NpZ25l
ZTogS29pY2hpIFNhc2FkYQoqIENhdGVnb3J5OiBjb3JlCiogVGFyZ2V0IHZl
cnNpb246IGN1cnJlbnQ6IDIuMi4wCiogcnVieSAtdjogMi4yCiogQmFja3Bv
cnQ6IDIuMC4wOiBSRVFVSVJFRCwgMi4xOiBET05FCi0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KZGVmaW5lX21ldGhvZCDjgafl
rprnvqnjgZfjgZ/jg6Hjgr3jg4Pjg4nvvIjku6XpmY3jgIFibWV0aG9k77yJ
44KS5a6f6KGM44GZ44KL44Go44GN44CB5byV5pWw44Gu44Ko44Op44O844GM
44GC44Gj44Gf44Go44GN44CBY2FsbCDjgqTjg5njg7Pjg4jjga7jgb/nmbrn
lJ/jgZfjgIFyZXR1cm4g44Kk44OZ44Oz44OI44GM55m655Sf44GX44Gq44GE
44CB44Go44GE44GG5ZWP6aGM44GM44GC44KK44G+44GX44Gf44CCCgpgYGBy
dWJ5CiAgZGVmaW5lX21ldGhvZCg6bWV0aG9kX3Rlc3RfYXJndW1lbnRfZXJy
b3Jfb25fYm1ldGhvZCl7fGNvcnJlY3Rfa2V5OiAxfH0KCiAgZGVmIHRlc3Rf
YXJndW1lbnRfZXJyb3Jfb25fYm1ldGhvZAogICAgZXZlbnRzID0gW10KICAg
IGN1cnJfdGhyZWFkID0gVGhyZWFkLmN1cnJlbnQKICAgIFRyYWNlUG9pbnQu
bmV3KDpjYWxsLCA6cmV0dXJuKXt8dHB8CiAgICAgIG5leHQgaWYgY3Vycl90
aHJlYWQgIT0gVGhyZWFkLmN1cnJlbnQKICAgICAgZXZlbnRzIDw8IFt0cC5l
dmVudCwgdHAubWV0aG9kX2lkXQogICAgfS5lbmFibGUgZG8KICAgICAgYmVn
aW4KICAgICAgICBtZXRob2RfdGVzdF9hcmd1bWVudF9lcnJvcl9vbl9ibWV0
aG9kKHdyb25nX2tleTogMikKICAgICAgcmVzY3VlID0+IGUKICAgICAgICAj
IGlnbm9yZQogICAgICBlbmQKICAgIGVuZAoKICAgIGFzc2VydF9lcXVhbCBb
XSwgZXZlbnRzICMgc2hvdWxkIGJlIGVtcHR5LgogIGVuZApgYGAKCuS7iuOB
oOOBqOOAgeasoeOBruOCiOOBhuOBq+OBquOCiuOBvuOBmeOAggoKYGBgClRl
c3RTZXRUcmFjZUZ1bmMjdGVzdF9hcmd1bWVudF9lcnJvcl9vbl9ibWV0aG9k
IFt0ZXN0X3NldHRyYWNlZnVuYy5yYjoxMjU4XToKPFtdPiBleHBlY3RlZCBi
dXQgd2FzCjxbWzpjYWxsLCA6bWV0aG9kX3Rlc3RfYXJndW1lbnRfZXJyb3Jf
b25fYm1ldGhvZF1dPi4KYGBgCgrjgZPjgozjga/jgIFQcm9jIOOCkuWun+ih
jOOBmeOCi+WJjeOBqyBUcmFjZVBvaW50KGNhbGwpIOOCkueZuueUn+OBmeOC
i+OBjOOAgQrkvovlpJbjgafmiLvjgo3jgYbjgajjgZfjgZ/jgajjgY3jgavj
gIHjgb7jgaAgUHJvYyDjgYzotbfli5XjgZfjgabjgYrjgonjgZrjgIHjg5Xj
g6zjg7zjg6Djgavmg4XloLHjgYzjgarjgYTjgZ/jgoHjgIEKcmV0dXJuIOOC
pOODmeODs+ODiOOBjOeZuueUn+OBl+OBquOBhOOBn+OCgeOAgei1t+OBk+OC
iuOBvuOBmeOAggoK44GT44KM44KS6Kej5rG644GZ44KL44Gf44KB44Gr44CB
Ym1ldGhvZCDnlKjjga4gY2FsbC9yZXR1cm4g44Kk44OZ44Oz44OI44KS55m6
55Sf44GZ44KL5aC05omA44KS6Kq/5pW044GX44G+44GX44Gf44CCCgpgYGBk
aWZmCkluZGV4OiB2bS5jCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIHZt
LmMJKHJldmlzaW9uIDQ2NDYzKQorKysgdm0uYwkod29ya2luZyBjb3B5KQpA
QCAtNzE1LDE1ICs3MTUsMTcgQEAKIAkJICAgIGNvbnN0IHJiX2Jsb2NrX3Qg
KmJsb2NrcHRyLCBjb25zdCBOT0RFICpjcmVmLAogCQkgICAgVkFMVUUgZGVm
aW5lZF9jbGFzcywgaW50IHNwbGF0dGFibGUpCiB7Ci0gICAgaWYgKFNQRUNJ
QUxfQ09OU1RfUChibG9jay0+aXNlcSkpCisgICAgaWYgKFNQRUNJQUxfQ09O
U1RfUChibG9jay0+aXNlcSkpIHsKIAlyZXR1cm4gUW5pbDsKKyAgICB9CiAg
ICAgZWxzZSBpZiAoQlVJTFRJTl9UWVBFKGJsb2NrLT5pc2VxKSAhPSBUX05P
REUpIHsKKwlWQUxVRSByZXQ7CiAJY29uc3QgcmJfaXNlcV90ICppc2VxID0g
YmxvY2stPmlzZXE7CiAJY29uc3QgcmJfY29udHJvbF9mcmFtZV90ICpjZnA7
CiAJaW50IGksIG9wdF9wYywgYXJnX3NpemUgPSBpc2VxLT5hcmdfc2l6ZTsK
LQlpbnQgdHlwZSA9IGJsb2NrX3Byb2NfaXNfbGFtYmRhKGJsb2NrLT5wcm9j
KSA/Ci0JICBWTV9GUkFNRV9NQUdJQ19MQU1CREEgOiBWTV9GUkFNRV9NQUdJ
Q19CTE9DSzsKLQorCWludCB0eXBlID0gYmxvY2tfcHJvY19pc19sYW1iZGEo
YmxvY2stPnByb2MpID8gVk1fRlJBTUVfTUFHSUNfTEFNQkRBIDogVk1fRlJB
TUVfTUFHSUNfQkxPQ0s7CisJY29uc3QgcmJfbWV0aG9kX2VudHJ5X3QgKm1l
ID0gdGgtPnBhc3NlZF9ibWV0aG9kX21lOworCXRoLT5wYXNzZWRfYm1ldGhv
ZF9tZSA9IDA7CiAJY2ZwID0gdGgtPmNmcDsKIAogCWZvciAoaT0wOyBpPGFy
Z2M7IGkrKykgewpAQCAtNzMzLDcgKzczNSw3IEBACiAJb3B0X3BjID0gdm1f
eWllbGRfc2V0dXBfYXJncyh0aCwgaXNlcSwgYXJnYywgY2ZwLT5zcCwgYmxv
Y2twdHIsCiAJCQkJICAgICAodHlwZSA9PSBWTV9GUkFNRV9NQUdJQ19MQU1C
REEpID8gc3BsYXR0YWJsZSsxIDogMCk7CiAKLQlpZiAodGgtPnBhc3NlZF9i
bWV0aG9kX21lICE9IDApIHsKKwlpZiAobWUgIT0gMCkgewogCSAgICAvKiBi
bWV0aG9kICovCiAJICAgIHZtX3B1c2hfZnJhbWUodGgsIGlzZXEsIHR5cGUg
fCBWTV9GUkFNRV9GTEFHX0ZJTklTSCB8IFZNX0ZSQU1FX0ZMQUdfQk1FVEhP
RCwKIAkJCSAgc2VsZiwgZGVmaW5lZF9jbGFzcywKQEAgLTc0MCw4ICs3NDIs
MTAgQEAKIAkJCSAgVk1fRU5WVkFMX1BSRVZfRVBfUFRSKGJsb2NrLT5lcCks
CiAJCQkgIGlzZXEtPmlzZXFfZW5jb2RlZCArIG9wdF9wYywKIAkJCSAgY2Zw
LT5zcCArIGFyZ19zaXplLCBpc2VxLT5sb2NhbF9zaXplIC0gYXJnX3NpemUs
Ci0JCQkgIHRoLT5wYXNzZWRfYm1ldGhvZF9tZSwgaXNlcS0+c3RhY2tfbWF4
KTsKLQkgICAgdGgtPnBhc3NlZF9ibWV0aG9kX21lID0gMDsKKwkJCSAgbWUs
IGlzZXEtPnN0YWNrX21heCk7CisKKwkgICAgUlVCWV9EVFJBQ0VfTUVUSE9E
X0VOVFJZX0hPT0sodGgsIG1lLT5rbGFzcywgbWUtPmNhbGxlZF9pZCk7CisJ
ICAgIEVYRUNfRVZFTlRfSE9PSyh0aCwgUlVCWV9FVkVOVF9DQUxMLCBzZWxm
LCBtZS0+Y2FsbGVkX2lkLCBtZS0+a2xhc3MsIFFuaWwpOwogCX0KIAllbHNl
IHsKIAkgICAgdm1fcHVzaF9mcmFtZSh0aCwgaXNlcSwgdHlwZSB8IFZNX0ZS
QU1FX0ZMQUdfRklOSVNILApAQCAtNzU2LDcgKzc2MCwxNSBAQAogCSAgICB0
aC0+Y2ZwLT5lcFstMV0gPSAoVkFMVUUpY3JlZjsKIAl9CiAKLQlyZXR1cm4g
dm1fZXhlYyh0aCk7CisJcmV0ID0gdm1fZXhlYyh0aCk7CisKKwlpZiAobWUp
IHsKKwkgICAgLyogYm1ldGhvZCAqLworCSAgICBFWEVDX0VWRU5UX0hPT0so
dGgsIFJVQllfRVZFTlRfUkVUVVJOLCBzZWxmLCBtZS0+Y2FsbGVkX2lkLCBt
ZS0+a2xhc3MsIHJldCk7CisJICAgIFJVQllfRFRSQUNFX01FVEhPRF9SRVRV
Uk5fSE9PSyh0aCwgbWUtPmtsYXNzLCBtZS0+Y2FsbGVkX2lkKTsKKwl9CisK
KwlyZXR1cm4gcmV0OwogICAgIH0KICAgICBlbHNlIHsKIAlyZXR1cm4gdm1f
eWllbGRfd2l0aF9jZnVuYyh0aCwgYmxvY2ssIHNlbGYsIGFyZ2MsIGFyZ3Ys
IGJsb2NrcHRyKTsKSW5kZXg6IHZtX2luc25oZWxwZXIuYwo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSB2bV9pbnNuaGVscGVyLmMJKHJldmlzaW9uIDQ2
NDYyKQorKysgdm1faW5zbmhlbHBlci5jCSh3b3JraW5nIGNvcHkpCkBAIC0x
NjE1LDE3ICsxNjE1LDExIEBACiAgICAgcmJfcHJvY190ICpwcm9jOwogICAg
IFZBTFVFIHZhbDsKIAotICAgIFJVQllfRFRSQUNFX01FVEhPRF9FTlRSWV9I
T09LKHRoLCBjaS0+bWUtPmtsYXNzLCBjaS0+bWUtPmNhbGxlZF9pZCk7Ci0g
ICAgRVhFQ19FVkVOVF9IT09LKHRoLCBSVUJZX0VWRU5UX0NBTEwsIGNpLT5y
ZWN2LCBjaS0+bWUtPmNhbGxlZF9pZCwgY2ktPm1lLT5rbGFzcywgUW5pbCk7
Ci0KICAgICAvKiBjb250cm9sIGJsb2NrIGZyYW1lICovCiAgICAgdGgtPnBh
c3NlZF9ibWV0aG9kX21lID0gY2ktPm1lOwogICAgIEdldFByb2NQdHIoY2kt
Pm1lLT5kZWYtPmJvZHkucHJvYywgcHJvYyk7CiAgICAgdmFsID0gdm1faW52
b2tlX3Byb2ModGgsIHByb2MsIGNpLT5yZWN2LCBjaS0+ZGVmaW5lZF9jbGFz
cywgY2ktPmFyZ2MsIGFyZ3YsIGNpLT5ibG9ja3B0cik7CiAKLSAgICBFWEVD
X0VWRU5UX0hPT0sodGgsIFJVQllfRVZFTlRfUkVUVVJOLCBjaS0+cmVjdiwg
Y2ktPm1lLT5jYWxsZWRfaWQsIGNpLT5tZS0+a2xhc3MsIHZhbCk7Ci0gICAg
UlVCWV9EVFJBQ0VfTUVUSE9EX1JFVFVSTl9IT09LKHRoLCBjaS0+bWUtPmts
YXNzLCBjaS0+bWUtPmNhbGxlZF9pZCk7Ci0KICAgICByZXR1cm4gdmFsOwog
fQogCmBgYAoK44GT44KM44KC44CBMi4xLCAyLjAg44Gn5YaN54++44GX44G+
44GZ44CCCgoKCgotLSAKaHR0cHM6Ly9idWdzLnJ1YnktbGFuZy5vcmcvCg==

In This Thread

Prev Next