Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <4F3DAE5D.3080000@zytor.com>
Date: Thu, 16 Feb 2012 17:33:17 -0800
From: "H. Peter Anvin" <hpa@...or.com>
To: Indan Zupancic <indan@....nu>
CC: Will Drewry <wad@...omium.org>, linux-kernel@...r.kernel.org,
        linux-arch@...r.kernel.org, linux-doc@...r.kernel.org,
        kernel-hardening@...ts.openwall.com, netdev@...r.kernel.org,
        x86@...nel.org, arnd@...db.de, davem@...emloft.net, mingo@...hat.com,
        oleg@...hat.com, peterz@...radead.org, rdunlap@...otime.net,
        mcgrathr@...omium.org, tglx@...utronix.de, luto@....edu,
        eparis@...hat.com, serge.hallyn@...onical.com, djm@...drot.org,
        scarybeasts@...il.com, pmoore@...hat.com, akpm@...ux-foundation.org,
        corbet@....net, eric.dumazet@...il.com, markus@...omium.org,
        keescook@...omium.org
Subject: Re: [PATCH v8 3/8] seccomp: add system call filtering using BPF

On 02/16/2012 04:48 PM, Indan Zupancic wrote:
> On Thu, February 16, 2012 22:17, H. Peter Anvin wrote:
> 
> I would go for something like:
> 
> struct seccomp_data {
> 	int nr;
> 	__u32 arg_low[6];
> 	__u32 arg_high[6];
> 	__u32 instruction_pointer_low;
> 	__u32 instruction_pointer_high;
> 	__u32 __reserved[3];
> };
> 

Uh, that is the absolutely WORST way to do it - not only are you
creating two fields, they're not even adjacent.

> (Not sure what use the IP is because that doesn't tell anything about how
> the system call instruction was reached.)
> 
> The only way to avoid splitting args is to add 64-bit support to BPF.
> That is probably the best way forwards, but would require breaking the
> BPF ABI by either adding a 64-bit version directly or adding extra
> instructions.

Or the compiler or whatever generates the BPF code just is going to have
to generate two instructions -- just like we always have to handle
[u]int64_t on 32-bit platforms.  There is no difference here.

	-hpa

-- 
H. Peter Anvin, Intel Open Source Technology Center
I work for Intel.  I don't speak on their behalf.

Powered by blists - more mailing lists

Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.