Intel® ISA Extensions
Use hardware-based isolation and memory encryption to provide more code protection in your solutions.

Determining if a TSX abort was caused by a segfault

Mike_S_5
Beginner
687 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
687 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

0 Kudos
Reply