Messages in this thread |  | | | From | Andrew Lutomirski <> | | Date | Tue, 17 Jan 2012 09:45:25 -0800 | | Subject | Re: [RFC,PATCH 1/2] seccomp_filters: system call filtering using BPF |
| |
On Tue, Jan 17, 2012 at 9:05 AM, Oleg Nesterov <oleg@redhat.com> wrote: > On 01/17, Andrew Lutomirski wrote: >> >> (is_compat_task says whether the executable was marked as 32-bit. The >> actual execution mode is determined by the cs register, which the user >> can control. > > Confused... Afaics, TIF_IA32 says that the binary is 32-bit (this comes > along with TS_COMPAT). > > TS_COMPAT says that, say, the task did "int 80" to enters the kernel. > 64-bit or not, we should treat is as 32-bit in this case.
I think you're right, and checking which entry was used is better than checking the cs register (since 64-bit code can use int80). That's what I get for insufficiently careful reading of the assembly. (And for going from memory from when I wrote the vsyscall emulation code -- that code is entered from a page fault, so the entry point used is irrelevant.)
--Andy -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
|  |