Closed Bug 1920780 Opened 7 months ago Closed 6 months ago

jitsrc breaks on frames with no name

Categories

(Core :: JavaScript Engine: JIT, defect, P3)

defect

Tracking

()

RESOLVED FIXED
134 Branch
Tracking Status
firefox134 --- fixed

People

(Reporter: bthrall, Assigned: bthrall)

Details

Attachments

(1 file)

When the jitsrc (rr helper) command encounters frames without a name, it breaks:

Traceback (most recent call last):
File "/home/bryan/src/mozilla-unified/js/src/gdb/mozilla/jitsrc.py", line 156, in invoke
address = self.next_address(address)
File "/home/bryan/src/mozilla-unified/js/src/gdb/mozilla/jitsrc.py", line 137, in next_address
found = self.search_stack(*pattern, old)
File "/home/bryan/src/mozilla-unified/js/src/gdb/mozilla/jitsrc.py", line 128, in search_stack
if not re.match(name, f.name()):
File "/usr/lib/python3.10/re.py", line 190, in match
return _compile(pattern, flags).match(string)
TypeError: expected string or bytes-like object
Error occurred in Python: expected string or bytes-like object

If this happens enough times, rr runs out of internal watchpoints and stops working.

There appears to be no way to clean up internal watchpoints if "rc" fails,
other than quitting and restarting rr. This means after a few failures, rr
stops working because there are no more available hard watchpoints.

Assignee: nobody → bthrall
Status: NEW → ASSIGNED
Pushed by bthrall@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/3750bed7393b Fix jitsrc failure on frames without name, clean up internal watchpoints when "rc" fails r=iain
Status: ASSIGNED → RESOLVED
Closed: 6 months ago
Resolution: --- → FIXED
Target Milestone: --- → 134 Branch
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: