linux-api.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v7 0/9] seccomp: add thread sync ability
@ 2014-06-23 21:58 Kees Cook
  2014-06-23 21:58 ` [PATCH v7 1/9] seccomp: create internal mode-setting function Kees Cook
                   ` (9 more replies)
  0 siblings, 10 replies; 36+ messages in thread
From: Kees Cook @ 2014-06-23 21:58 UTC (permalink / raw)
  To: linux-kernel
  Cc: Kees Cook, Andy Lutomirski, Alexei Starovoitov,
	Michael Kerrisk (man-pages), Andrew Morton, Daniel Borkmann,
	Oleg Nesterov, Will Drewry, Julien Tinnes, David Drysdale,
	linux-api, x86, linux-arm-kernel, linux-mips, linux-arch,
	linux-security-module

This adds the ability for threads to request seccomp filter
synchronization across their thread group (at filter attach time).
For example, for Chrome to make sure graphic driver threads are fully
confined after seccomp filters have been attached.

To support this, locking on seccomp changes is introduced, along with
refactoring of no_new_privs. Races with thread creation/death are handled
via tasklist_lock.

This includes a new syscall (instead of adding a new prctl option),
as suggested by Andy Lutomirski and Michael Kerrisk.

Thanks!

-Kees

v7:
 - rebase on Linus's tree (merged with network bpf changes)
 - wrote manpage text documenting API (follows this series)
v6:
 - switch from seccomp-specific lock to thread-group lock to gain atomicity
 - implement seccomp syscall across all architectures with seccomp filter
 - clean up sparse warnings around locking
v5:
 - move includes around (drysdale)
 - drop set_nnp return value (luto)
 - use smp_load_acquire/store_release (luto)
 - merge nnp changes to seccomp always, fewer ifdef (luto)
v4:
 - cleaned up locking further, as noticed by David Drysdale
v3:
 - added SECCOMP_EXT_ACT_FILTER for new filter install options
v2:
 - reworked to avoid clone races

^ permalink raw reply	[flat|nested] 36+ messages in thread

end of thread, other threads:[~2014-06-27 18:45 UTC | newest]

Thread overview: 36+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-06-23 21:58 [PATCH v7 0/9] seccomp: add thread sync ability Kees Cook
2014-06-23 21:58 ` [PATCH v7 1/9] seccomp: create internal mode-setting function Kees Cook
2014-06-23 21:58 ` [PATCH v7 2/9] seccomp: split filter prep from check and apply Kees Cook
2014-06-26 12:37   ` David Drysdale
2014-06-27 18:45     ` Kees Cook
2014-06-23 21:58 ` [PATCH v7 3/9] seccomp: introduce writer locking Kees Cook
2014-06-24 16:52   ` Oleg Nesterov
2014-06-24 18:02     ` Kees Cook
     [not found]       ` <CAGXu5j+G8qAkGD7H=3R2iw2ZTqZSrMPa2f=czoEjwSW5wKqUWQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2014-06-24 18:35         ` Oleg Nesterov
2014-06-24 20:26           ` Kees Cook
2014-06-24 18:30   ` Oleg Nesterov
     [not found]     ` <20140624183024.GA1258-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2014-06-24 19:46       ` Kees Cook
2014-06-23 21:58 ` [PATCH v7 4/9] seccomp: move no_new_privs into seccomp Kees Cook
2014-06-24 19:18   ` Oleg Nesterov
2014-06-24 19:20     ` Andy Lutomirski
2014-06-24 19:30       ` Oleg Nesterov
2014-06-24 19:34         ` Andy Lutomirski
     [not found]           ` <CALCETrU9x05ADgz9JToiw_BuCPz1h0xmOh=1R3eojL9far1aEA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2014-06-24 19:50             ` Kees Cook
     [not found]               ` <CAGXu5jJjuNmf=FRzUPMChvL4D_xkg034pUbRAbaK38f37GYC0A-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2014-06-24 19:51                 ` Andy Lutomirski
2014-06-23 21:58 ` [PATCH v7 5/9] seccomp: split mode set routines Kees Cook
2014-06-23 21:58 ` [PATCH v7 6/9] seccomp: add "seccomp" syscall Kees Cook
2014-06-23 21:58 ` [PATCH v7 7/9] seccomp: implement SECCOMP_FILTER_FLAG_TSYNC Kees Cook
2014-06-24 17:08   ` Oleg Nesterov
     [not found]     ` <20140624170800.GA30480-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2014-06-24 18:19       ` Kees Cook
2014-06-24 17:27   ` Oleg Nesterov
2014-06-24 18:05     ` Kees Cook
2014-06-24 18:37       ` Oleg Nesterov
2014-06-24 19:08         ` Kees Cook
     [not found] ` <1403560693-21809-1-git-send-email-keescook-F7+t8E8rja9g9hUCZPvPmw@public.gmane.org>
2014-06-23 21:58   ` [PATCH v7 8/9] ARM: add seccomp syscall Kees Cook
2014-06-23 21:58 ` [PATCH v7 9/9] MIPS: " Kees Cook
2014-06-23 22:01 ` [PATCH v7 1/1] man-pages: seccomp.2: document syscall Kees Cook
     [not found]   ` <20140623220150.GM5412-oSa+0FWJbaXR7s880joybQ@public.gmane.org>
2014-06-24 10:23     ` Michael Kerrisk (man-pages)
2014-06-24 16:43       ` Kees Cook
2014-06-24 17:48   ` [PATCH v7.1 " Kees Cook
2014-06-24 18:06   ` [PATCH v7 " Andy Lutomirski
     [not found]     ` <CALCETrV=nAuWi8_Xj6KnJ6P1Yiaw36+n50-gHKaTgea4yH85Eg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2014-06-24 19:18       ` Kees Cook

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).