Intel® ISA Extensions
Use hardware-based isolation and memory encryption to provide more code protection in your solutions.
Announcements
Welcome to the Intel Community. If you get an answer you like, please mark it as an Accepted Solution to help others. Thank you!
1048 Discussions

Determining if a TSX abort was caused by a segfault

Mike_S_5
Beginner
120 Views

Hello,

In the Intel® 64 and IA-32 Architectures Software Developer Manuals, chapter 15.3.5: "RTM Abort Status Definition", a table with RTM abort status values can be found. It also says: "The value of EAX can be 0 following an RTM abort. For example, a CPUID instruction when used inside an RTM region causes a transactional abort and may not satisfy the requirements for setting any of the EAX bits. This may result in an EAX value of 0."

I need to be able to determine if the abort was caused by a segmentation fault. I found that in this case the return value will be 0. But the return value can be 0 also in other cases, for instance, in case of a context switch. Any suggestions about how I can determine if the abort was caused by a segmentation fault?

Thanks!

0 Kudos
1 Reply
Roman_D_Intel
Employee
120 Views

Hi Mike,

it is not possible to determine if a TSX abort caused by a seg fault. In fact all kinds of faults will result in abort status 0 (page fault, etc.)

Best regards,

Roman

Reply