On Wed, Oct 10, 2018 at 03:01:29PM +0200, Andreas Schwab wrote: > On Okt 09 2018, Atish Patra <atish.patra@xxxxxxx> wrote: > > > +static void sifive_set_ie(struct sifive_gpio *chip, unsigned int offset) > > +{ > > + unsigned long flags; > > + unsigned int trigger; > > + > > + raw_spin_lock_irqsave(&chip->lock, flags); > > + trigger = (chip->enabled & BIT(offset)) ? chip->trigger[offset] : 0; > > This should use test_bit instead. Given that this apparently needs the spinlock for atomciy with more than just the bitmap test_bit would be rather pointless.