Date: Fri, 17 Mar 2017 08:02:47 +0000 (UTC) From: Hans Petter Selasky <hselasky@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r315442 - head/sys/compat/linuxkpi/common/include/linux Message-ID: <201703170802.v2H82lK3014283@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: hselasky Date: Fri Mar 17 08:02:46 2017 New Revision: 315442 URL: https://svnweb.freebsd.org/changeset/base/315442 Log: Add comment describing the use of pagefault_disable() and pagefault_enable() in the LinuxKPI. Suggested by: rpokala@ MFC after: 1 week Sponsored by: Mellanox Technologies Modified: head/sys/compat/linuxkpi/common/include/linux/uaccess.h Modified: head/sys/compat/linuxkpi/common/include/linux/uaccess.h ============================================================================== --- head/sys/compat/linuxkpi/common/include/linux/uaccess.h Fri Mar 17 07:56:20 2017 (r315441) +++ head/sys/compat/linuxkpi/common/include/linux/uaccess.h Fri Mar 17 08:02:46 2017 (r315442) @@ -67,6 +67,13 @@ extern int linux_copyout(const void *kad extern size_t linux_clear_user(void *uaddr, size_t len); extern int linux_access_ok(int rw, const void *uaddr, size_t len); +/* + * NOTE: Each pagefault_disable() call must have a corresponding + * pagefault_enable() call in the same scope. The former creates a new + * block and defines a temporary variable, and the latter uses the + * temporary variable and closes the block. Failure to balance the + * calls will result in a compile-time error. + */ #define pagefault_disable(void) do { \ int __saved_pflags = \ vm_fault_disable_pagefaults()
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201703170802.v2H82lK3014283>