From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752934AbdJGC4n (ORCPT ); Fri, 6 Oct 2017 22:56:43 -0400 Received: from aserp1040.oracle.com ([141.146.126.69]:42115 "EHLO aserp1040.oracle.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751485AbdJGC4l (ORCPT ); Fri, 6 Oct 2017 22:56:41 -0400 Subject: Re: [PATCH] Userfaultfd: Add description for UFFD_FEATURE_SIGBUS To: mtk.manpages@gmail.com References: <1507344740-21993-1-git-send-email-prakash.sangappa@oracle.com> Cc: linux-man@vger.kernel.org, linux-kernel@vger.kernel.org, linux-api@vger.kernel.org, linux-mm@kvack.org, Andrea Arcangeli , rppt@linux.vnet.ibm.com, mhocko@suse.com From: Prakash Sangappa Message-ID: Date: Fri, 6 Oct 2017 19:56:55 -0700 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.11; rv:45.0) Gecko/20100101 Thunderbird/45.8.0 MIME-Version: 1.0 In-Reply-To: <1507344740-21993-1-git-send-email-prakash.sangappa@oracle.com> Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit X-Source-IP: aserv0022.oracle.com [141.146.126.234] Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org cc: Andrea Arcangeli On 10/6/17 7:52 PM, Prakash Sangappa wrote: > Userfaultfd feature UFFD_FEATURE_SIGBUS was merged recently and should > be available in Linux 4.14 release. This patch is for the manpage > changes documenting this API. > > Documents the following commit: > > commit 2d6d6f5a09a96cc1fec7ed992b825e05f64cb50e > Author: Prakash Sangappa > Date: Wed Sep 6 16:23:39 2017 -0700 > > mm: userfaultfd: add feature to request for a signal delivery > > Signed-off-by: Prakash Sangappa > --- > man2/ioctl_userfaultfd.2 | 9 +++++++++ > man2/userfaultfd.2 | 17 +++++++++++++++++ > 2 files changed, 26 insertions(+) > > diff --git a/man2/ioctl_userfaultfd.2 b/man2/ioctl_userfaultfd.2 > index 60fd29b..cfc65ae 100644 > --- a/man2/ioctl_userfaultfd.2 > +++ b/man2/ioctl_userfaultfd.2 > @@ -196,6 +196,15 @@ with the > flag set, > .BR memfd_create (2), > and so on. > +.TP > +.B UFFD_FEATURE_SIGBUS > +Since Linux 4.14, If this feature bit is set, no page-fault events( > +.B UFFD_EVENT_PAGEFAULT > +) will be delivered, instead a > +.B SIGBUS > +signal will be sent to the faulting process. Applications using this > +feature will not require the use of a userfaultfd monitor for handling > +page-fault events. > .IP > The returned > .I ioctls > diff --git a/man2/userfaultfd.2 b/man2/userfaultfd.2 > index 1741ee3..a033742 100644 > --- a/man2/userfaultfd.2 > +++ b/man2/userfaultfd.2 > @@ -172,6 +172,23 @@ or > .BR ioctl (2) > operations to resolve the page fault. > .PP > +Starting from Linux 4.14, if application sets > +.B UFFD_FEATURE_SIGBUS > +feature bit using > +.B UFFDIO_API > +.BR ioctl (2) > +, no page fault notification will be forwarded to > +the user-space, instead a > +.B SIGBUS > +signal is delivered to the faulting process. With this feature, > +userfaultfd can be used for robustness purpose to simply catch > +any access to areas within the registered address range that do not > +have pages allocated, without having to deal with page-fault events. > +No userfaultd monitor will be required for handling page faults. For > +example, this feature can be useful for applications that want to > +prevent the kernel from automatically allocating pages and filling > +holes in sparse files when the hole is accessed thru mapped address. > +.PP > Details of the various > .BR ioctl (2) > operations can be found in