On Wed, Sep 30, 2015 at 11:47:05AM -0700, Andy Lutomirski wrote: > On Wed, Sep 30, 2015 at 11:41 AM, Tycho Andersen > <tycho.andersen@xxxxxxxxxxxxx> wrote: > > On Wed, Sep 30, 2015 at 11:25:41AM -0700, Andy Lutomirski wrote: > >> On Wed, Sep 30, 2015 at 11:13 AM, Tycho Andersen > >> <tycho.andersen@xxxxxxxxxxxxx> wrote: > >> > This command allows comparing the underling private data of two fds. This > >> > is useful e.g. to find out if a seccomp filter is inherited, since struct > >> > seccomp_filter are unique across tasks and are the private_data seccomp > >> > fds. > >> > >> This is very implementation-specific and may have nasty ABI > >> consequences far outside seccomp. Let's do something specific to > >> seccomp and/or eBPF. > > > > We could change the name to a less generic KCMP_SECCOMP_FD or > > something, but without some sort of GUID on each struct > > seccomp_filter, the implementation would be effectively the same as it > > is today. Is that enough, or do we need a GUID? > > > > I don't care about the GUID. I think we should name it > KCMP_SECCOMP_FD and make it only work on seccomp fds. Ok, I can do that. > Alternatively, we could figure out why KCMP_FILE doesn't do the trick > and consider fixing it. IMO it's really too bad that struct file is > so heavyweight that we can't really just embed one in all kinds of > structures. The problem is that KCMP_FILE compares the file objects themselves, instead of the underlying data. If I ask for a seccomp fd for filter 0 twice, I'll have two different file objects and they won't be equal. I suppose we could add some special logic inside KCMP_FILE to compare the underlying data in special cases (seccomp, ebpf, others?), but it seems cleaner to have a separate command as you described above. Tycho -- To unsubscribe from this list: send the line "unsubscribe linux-api" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html