Re: [PATCHv5 bpf-next 6/8] x86/shstk: Add return uprobe support

Oleg Nesterov
2024-05-15T11:37:02Z

Let me repeat I know nothing about shadow stacks, only tried to
read Documentation/arch/x86/shstk.rst few minutes ago ;)

On 05/13, Jiri Olsa wrote:
>
> 1) current uretprobe which are not working at the moment and we change
> the top value of shadow stack with shstk_push_frame
> 2) optimized uretprobe which needs to push new frame on shadow stack
> with shstk_update_last_frame
>
> I think we should do 1) and have current uretprobe working with shadow
> stack, which is broken at the moment

Agreed,

> I'm ok with not using optimized uretprobe when shadow stack is detected
> as enabled and we go with current uretprobe in that case

But how can we detect it? Again, suppose userspace does

enable_shstk()
{
prctl(ARCH_SHSTK_SHSTK);
}

what if enable_shstk() is ret-probed ?

Oleg.