linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
From: Dmitry Vyukov <dvyukov@google.com>
To: fw@deneb.enyo.de
Cc: James.Bottomley@HansenPartnership.com, Liam.Howlett@oracle.com,
	 akpm@linux-foundation.org, arnd@arndb.de, brauner@kernel.org,
	 chris@zankel.net, david@redhat.com, deller@gmx.de,
	hch@infradead.org,  ink@jurassic.park.msu.ru, jannh@google.com,
	jcmvbkbc@gmail.com,  jeffxu@chromium.org, jhubbard@nvidia.com,
	linux-alpha@vger.kernel.org,  linux-api@vger.kernel.org,
	linux-arch@vger.kernel.org,  linux-kernel@vger.kernel.org,
	linux-kselftest@vger.kernel.org,  linux-mips@vger.kernel.org,
	linux-mm@kvack.org, linux-parisc@vger.kernel.org,
	 lorenzo.stoakes@oracle.com, mattst88@gmail.com,
	muchun.song@linux.dev,  paulmck@kernel.org,
	richard.henderson@linaro.org, shuah@kernel.org,
	 sidhartha.kumar@oracle.com, surenb@google.com,
	tsbogend@alpha.franken.de,  vbabka@suse.cz, willy@infradead.org,
	elver@google.com
Subject: Re: [PATCH v2 0/5] implement lightweight guard pages
Date: Wed, 23 Oct 2024 08:24:17 +0200	[thread overview]
Message-ID: <20241023062417.3862170-1-dvyukov@google.com> (raw)
In-Reply-To: <87a5eysmj1.fsf@mid.deneb.enyo.de>

Hi Florian, Lorenzo,

This looks great!

What I am VERY interested in is if poisoned pages cause SIGSEGV even when
the access happens in the kernel. Namely, the syscall still returns EFAULT,
but also SIGSEGV is queued on return to user-space.

Catching bad accesses in system calls is currently the weak spot for
all user-space bug detection tools (GWP-ASan, libefence, libefency, etc).
It's almost possible with userfaultfd, but catching faults in the kernel
requires admin capability, so not really an option for generic bug
detection tools (+inconvinience of userfaultfd setup/handler).
Intercepting all EFAULT from syscalls is not generally possible
(w/o ptrace, usually not an option as well), and EFAULT does not always
mean a bug.

Triggering SIGSEGV even in syscalls would be not just a performance
optimization, but a new useful capability that would allow it to catch
more bugs.

Thanks



  parent reply	other threads:[~2024-10-23  6:24 UTC|newest]

Thread overview: 66+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-10-20 16:20 Lorenzo Stoakes
2024-10-20 16:20 ` [PATCH v2 1/5] mm: pagewalk: add the ability to install PTEs Lorenzo Stoakes
2024-10-21 13:27   ` Vlastimil Babka
2024-10-21 13:50     ` Lorenzo Stoakes
2024-10-20 16:20 ` [PATCH v2 2/5] mm: add PTE_MARKER_GUARD PTE marker Lorenzo Stoakes
2024-10-21 13:45   ` Vlastimil Babka
2024-10-21 19:57     ` Lorenzo Stoakes
2024-10-21 20:42     ` Lorenzo Stoakes
2024-10-21 21:13       ` Lorenzo Stoakes
2024-10-21 21:20         ` Dave Hansen
2024-10-21 14:13   ` Vlastimil Babka
2024-10-21 14:33     ` Lorenzo Stoakes
2024-10-21 14:54       ` Vlastimil Babka
2024-10-21 15:33         ` Lorenzo Stoakes
2024-10-21 15:41           ` Lorenzo Stoakes
2024-10-21 16:00           ` David Hildenbrand
2024-10-21 16:23             ` Lorenzo Stoakes
2024-10-21 16:44               ` David Hildenbrand
2024-10-21 16:51                 ` Lorenzo Stoakes
2024-10-21 17:00                   ` David Hildenbrand
2024-10-21 17:14                     ` Lorenzo Stoakes
2024-10-21 17:21                       ` David Hildenbrand
2024-10-21 17:26                       ` Vlastimil Babka
2024-10-22 19:13                         ` David Hildenbrand
2024-10-20 16:20 ` [PATCH v2 3/5] mm: madvise: implement lightweight guard page mechanism Lorenzo Stoakes
2024-10-21 17:05   ` David Hildenbrand
2024-10-21 17:15     ` Lorenzo Stoakes
2024-10-21 17:23       ` David Hildenbrand
2024-10-21 19:25         ` John Hubbard
2024-10-21 19:39           ` Lorenzo Stoakes
2024-10-21 20:18             ` David Hildenbrand
2024-10-21 20:11   ` Vlastimil Babka
2024-10-21 20:17     ` David Hildenbrand
2024-10-21 20:25       ` Vlastimil Babka
2024-10-21 20:30         ` Lorenzo Stoakes
2024-10-21 20:37         ` David Hildenbrand
2024-10-21 20:49           ` Lorenzo Stoakes
2024-10-21 21:20             ` David Hildenbrand
2024-10-21 21:33               ` Lorenzo Stoakes
2024-10-21 21:35               ` Vlastimil Babka
2024-10-21 21:46                 ` Lorenzo Stoakes
2024-10-22 19:18                 ` David Hildenbrand
2024-10-21 20:27     ` Lorenzo Stoakes
2024-10-21 20:45       ` Vlastimil Babka
2024-10-22 19:08         ` Jann Horn
2024-10-22 19:35           ` Lorenzo Stoakes
2024-10-22 19:57             ` Jann Horn
2024-10-22 20:45               ` Lorenzo Stoakes
2024-10-20 16:20 ` [PATCH v2 4/5] tools: testing: update tools UAPI header for mman-common.h Lorenzo Stoakes
2024-10-20 16:20 ` [PATCH v2 5/5] selftests/mm: add self tests for guard page feature Lorenzo Stoakes
2024-10-21 21:31   ` Shuah Khan
2024-10-22 10:25     ` Lorenzo Stoakes
2024-10-20 17:37 ` [PATCH v2 0/5] implement lightweight guard pages Florian Weimer
2024-10-20 19:45   ` Lorenzo Stoakes
2024-10-23  6:24   ` Dmitry Vyukov [this message]
2024-10-23  7:19     ` David Hildenbrand
2024-10-23  8:11       ` Lorenzo Stoakes
2024-10-23  8:56         ` Dmitry Vyukov
2024-10-23  9:06           ` Vlastimil Babka
2024-10-23  9:13             ` David Hildenbrand
2024-10-23  9:18               ` Lorenzo Stoakes
2024-10-23  9:29                 ` David Hildenbrand
2024-10-23 11:31                   ` Marco Elver
2024-10-23 11:36                     ` David Hildenbrand
2024-10-23 11:40                       ` Lorenzo Stoakes
2024-10-23  9:17             ` Dmitry Vyukov

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20241023062417.3862170-1-dvyukov@google.com \
    --to=dvyukov@google.com \
    --cc=James.Bottomley@HansenPartnership.com \
    --cc=Liam.Howlett@oracle.com \
    --cc=akpm@linux-foundation.org \
    --cc=arnd@arndb.de \
    --cc=brauner@kernel.org \
    --cc=chris@zankel.net \
    --cc=david@redhat.com \
    --cc=deller@gmx.de \
    --cc=elver@google.com \
    --cc=fw@deneb.enyo.de \
    --cc=hch@infradead.org \
    --cc=ink@jurassic.park.msu.ru \
    --cc=jannh@google.com \
    --cc=jcmvbkbc@gmail.com \
    --cc=jeffxu@chromium.org \
    --cc=jhubbard@nvidia.com \
    --cc=linux-alpha@vger.kernel.org \
    --cc=linux-api@vger.kernel.org \
    --cc=linux-arch@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-kselftest@vger.kernel.org \
    --cc=linux-mips@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=linux-parisc@vger.kernel.org \
    --cc=lorenzo.stoakes@oracle.com \
    --cc=mattst88@gmail.com \
    --cc=muchun.song@linux.dev \
    --cc=paulmck@kernel.org \
    --cc=richard.henderson@linaro.org \
    --cc=shuah@kernel.org \
    --cc=sidhartha.kumar@oracle.com \
    --cc=surenb@google.com \
    --cc=tsbogend@alpha.franken.de \
    --cc=vbabka@suse.cz \
    --cc=willy@infradead.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox