On 19/07/17 17:01, Mark Rutland wrote:
* Should the kernel remove PACs when unwinding user stacks? This is simple to do, but it's arguably placing a policy in the kernel as to what we expect user stacks to look like. Regardless, userspace will have to perform this when unwinding with DWARF.
I am not sure what do you mean. Do you mean stripping a PAC from a pointer during unwinding, so that user space can unwind the program without being aware of PAC? Can kernel remove PAC from all instruction pointers? Note that user space debugger may try to unwind in coredump, so if the contents dumped into coredump including PAC bits, debuggers still have to be aware of PAC (unless kernel can remove all PAC bits during coredump too). IMO, kernel needs to tell the truth to reflect the process/task state to the user space, and leave the user space to consume. IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.