summaryrefslogtreecommitdiffstats
path: root/drivers/staging/lustre/include
diff options
context:
space:
mode:
authorNeilBrown <neilb@suse.com>2018-02-20 13:23:37 +1100
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2018-02-22 15:03:23 +0100
commit6b7936ceefa7ed1d7c0576ed9660cc6cb90d61df (patch)
treebc6ce6d995cb38516e348e09a4d26588bd07a629 /drivers/staging/lustre/include
parent84e07b9d0ac8728b1865b23498d746861a8ab4c2 (diff)
downloadop-kernel-dev-6b7936ceefa7ed1d7c0576ed9660cc6cb90d61df.zip
op-kernel-dev-6b7936ceefa7ed1d7c0576ed9660cc6cb90d61df.tar.gz
staging: lustre: make signal-blocking functions inline
cfs_block_sigsinv() and cfs_restore_sigs() are now simple enough to inline them. This means we can discard linux-prim.c Signed-off-by: NeilBrown <neilb@suse.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/staging/lustre/include')
-rw-r--r--drivers/staging/lustre/include/linux/libcfs/libcfs.h20
1 files changed, 15 insertions, 5 deletions
diff --git a/drivers/staging/lustre/include/linux/libcfs/libcfs.h b/drivers/staging/lustre/include/linux/libcfs/libcfs.h
index 9dff050..4f8c65e 100644
--- a/drivers/staging/lustre/include/linux/libcfs/libcfs.h
+++ b/drivers/staging/lustre/include/linux/libcfs/libcfs.h
@@ -64,11 +64,21 @@
#define LNET_ACCEPTOR_MIN_RESERVED_PORT 512
#define LNET_ACCEPTOR_MAX_RESERVED_PORT 1023
-/*
- * Defined by platform
- */
-void cfs_block_sigsinv(unsigned long sigs, sigset_t *sigset);
-void cfs_restore_sigs(sigset_t *sigset);
+/* Block all signals except for the @sigs */
+static inline void cfs_block_sigsinv(unsigned long sigs, sigset_t *old)
+{
+ sigset_t new;
+
+ siginitsetinv(&new, sigs);
+ sigorsets(&new, &current->blocked, &new);
+ sigprocmask(SIG_BLOCK, &new, old);
+}
+
+static inline void
+cfs_restore_sigs(sigset_t *old)
+{
+ sigprocmask(SIG_SETMASK, old, NULL);
+}
struct libcfs_ioctl_handler {
struct list_head item;
OpenPOWER on IntegriCloud