Page MenuHomeFreeBSD

DTrace: fix reading a 64-bits register on amd64
ClosedPublic

Authored by oshogbo on May 22 2019, 7:48 PM.
Tags
None
Referenced Files
F154460859: D20363.id57718.diff
Tue, Apr 28, 4:24 PM
F154457650: D20363.id57718.diff
Tue, Apr 28, 4:17 PM
Unknown Object (File)
Mon, Apr 27, 5:47 AM
Unknown Object (File)
Wed, Apr 22, 11:54 PM
Unknown Object (File)
Tue, Apr 21, 5:29 AM
Unknown Object (File)
Thu, Apr 16, 12:56 PM
Unknown Object (File)
Tue, Apr 14, 1:28 PM
Unknown Object (File)
Sat, Apr 11, 2:50 PM
Subscribers

Details

Summary

The registers in ilumos and FreeBSD have a different number.
In the illumos, last 32-bits register defined is SS an in FreeBSD is GS.
This off-by-one caused the uregs array to returns the wrong 64-bits register
on amd64.

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

markj added inline comments.
sys/cddl/dev/dtrace/amd64/dtrace_isa.c
519 ↗(On Diff #57718)

I wouldn't bother with the comment in such a small block.

This revision is now accepted and ready to land.May 22 2019, 9:10 PM
This revision was automatically updated to reflect the committed changes.