Messages in this thread |  | | | Date | Fri, 12 Mar 2010 10:22:09 -0800 | | From | Dmitry Torokhov <> | | Subject | Re: [PATCH 2/2] enhance sysfs rfkill interface |
| |
On Fri, Mar 12, 2010 at 07:03:08PM +0100, florian@mickler.org wrote: > > +static ssize_t rfkill_hard_show(struct device *dev, > + struct device_attribute *attr, > + char *buf) > +{ > + struct rfkill *rfkill = to_rfkill(dev); > + unsigned long flags; > + u32 state; > + > + spin_lock_irqsave(&rfkill->lock, flags); > + state = rfkill->state; > + spin_unlock_irqrestore(&rfkill->lock, flags);
Why exactly is this lock needed?
> + > + return sprintf(buf, "%d\n", (state & RFKILL_BLOCK_HW) ? 1 : 0 ); > +} > + > +static ssize_t rfkill_soft_show(struct device *dev, > + struct device_attribute *attr, > + char *buf) > +{ > + struct rfkill *rfkill = to_rfkill(dev); > + unsigned long flags; > + u32 state; > + > + spin_lock_irqsave(&rfkill->lock, flags); > + state = rfkill->state; > + spin_unlock_irqrestore(&rfkill->lock, flags);
And here as well...
-- Dmitry
|  |