Commit 13f12b5a authored by Ian Abbott's avatar Ian Abbott Committed by Greg Kroah-Hartman

staging: comedi: make 'in_request_module' a bool bit-field

Change the `in_request_module` member of `struct comedi_device` to a
1-bit bit-field of type `bool` and move it into a suitable hole in the
data type to save a few bytes.  Change the assigned values to `true` and
`false`.
Signed-off-by: default avatarIan Abbott <abbotti@mev.co.uk>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent a7401cdd
...@@ -2067,12 +2067,12 @@ static int comedi_open(struct inode *inode, struct file *file) ...@@ -2067,12 +2067,12 @@ static int comedi_open(struct inode *inode, struct file *file)
/* This is slightly hacky, but we want module autoloading /* This is slightly hacky, but we want module autoloading
* to work for root. * to work for root.
* case: user opens device, attached -> ok * case: user opens device, attached -> ok
* case: user opens device, unattached, in_request_module=0 -> autoload * case: user opens device, unattached, !in_request_module -> autoload
* case: user opens device, unattached, in_request_module=1 -> fail * case: user opens device, unattached, in_request_module -> fail
* case: root opens device, attached -> ok * case: root opens device, attached -> ok
* case: root opens device, unattached, in_request_module=1 -> ok * case: root opens device, unattached, in_request_module -> ok
* (typically called from modprobe) * (typically called from modprobe)
* case: root opens device, unattached, in_request_module=0 -> autoload * case: root opens device, unattached, !in_request_module -> autoload
* *
* The last could be changed to "-> ok", which would deny root * The last could be changed to "-> ok", which would deny root
* autoloading. * autoloading.
...@@ -2088,7 +2088,7 @@ static int comedi_open(struct inode *inode, struct file *file) ...@@ -2088,7 +2088,7 @@ static int comedi_open(struct inode *inode, struct file *file)
if (capable(CAP_NET_ADMIN) && dev->in_request_module) if (capable(CAP_NET_ADMIN) && dev->in_request_module)
goto ok; goto ok;
dev->in_request_module = 1; dev->in_request_module = true;
#ifdef CONFIG_KMOD #ifdef CONFIG_KMOD
mutex_unlock(&dev->mutex); mutex_unlock(&dev->mutex);
...@@ -2096,7 +2096,7 @@ static int comedi_open(struct inode *inode, struct file *file) ...@@ -2096,7 +2096,7 @@ static int comedi_open(struct inode *inode, struct file *file)
mutex_lock(&dev->mutex); mutex_lock(&dev->mutex);
#endif #endif
dev->in_request_module = 0; dev->in_request_module = false;
if (!dev->attached && !capable(CAP_NET_ADMIN)) { if (!dev->attached && !capable(CAP_NET_ADMIN)) {
DPRINTK("not attached and not CAP_NET_ADMIN\n"); DPRINTK("not attached and not CAP_NET_ADMIN\n");
......
...@@ -208,9 +208,9 @@ struct comedi_device { ...@@ -208,9 +208,9 @@ struct comedi_device {
const char *board_name; const char *board_name;
const void *board_ptr; const void *board_ptr;
bool attached:1; bool attached:1;
bool in_request_module:1;
spinlock_t spinlock; spinlock_t spinlock;
struct mutex mutex; struct mutex mutex;
int in_request_module;
int n_subdevices; int n_subdevices;
struct comedi_subdevice *subdevices; struct comedi_subdevice *subdevices;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment