Re: [PATCH v8 3/8] seccomp: add system call filtering using BPF
From: "H. Peter Anvin" <hpa@zytor.com>
Date: 2012-02-16 22:07:04
Also in:
linux-arch, lkml
From: "H. Peter Anvin" <hpa@zytor.com>
Date: 2012-02-16 22:07:04
Also in:
linux-arch, lkml
On 02/16/2012 01:51 PM, Will Drewry wrote:
quoted
Put the bloody bit in there and let the pattern program make that decision.Easy enough to add a bit for the mode: 32-bit or 64-bit. It seemed like a waste of cycles for every 32-bit program or every 64-bit program to check to see that its calling convention hadn't changed, but it does take away a valid decision the pattern program should be making. I'll add a flag for 32bit/64bit while cleaning up seccomp_data. I think that will properly encapsulate the is_compat_task() behavior in a way that is stable for compat and non-compat tasks to use. If there's a more obvious way, I'm all ears.
is_compat_task() is not going to be the right thing for x86 going forward, as we're introducing the x32 ABI (which uses the normal x86-64 entry point, but with different eax numbers, and bit 30 set.) The actual state is the TS_COMPAT flag in the thread_info structure, which currently matches is_compat_task(), but perhaps we should add a new helper function syscall_namespace() or something like that... Either that or we can just use another bit in the syscall number field... -hpa -- H. Peter Anvin, Intel Open Source Technology Center I work for Intel. I don't speak on their behalf.