Re: [PATCH 1/10] PM: Rework handling of interrupts during suspend-resume (rev. 5)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wednesday 11 March 2009, Thomas Gleixner wrote:
> On Wed, 11 Mar 2009, Rafael J. Wysocki wrote:
> 
> > On Wednesday 11 March 2009, Thomas Gleixner wrote:
> > > On Wed, 11 Mar 2009, Rafael J. Wysocki wrote:
> > > > On Wednesday 11 March 2009, Thomas Gleixner wrote:
> > > > > > +			desc->status |= IRQ_SUSPENDED;
> > > > > 
> > > > >   This flag needs to be checked in __enable_irq().
> > > > 
> > > > [I overlooked this comment, sorry.]
> > > > 
> > > > Why does it?
> > > 
> > > To catch abuse and callers of enable_irq() when this flag is set.
> > 
> > Hmm.  This means you'd like to make enable_irq() fail if called with
> > IRQ_SUSPENDED set, correct?
> > 
> > What if someone calls irq_disable() and then irq_enable() between
> > suspend_device_irqs() and resume_device_irqs()?  That would be pointless, but
> > surely not a bug?  Should irq_disable() also fail if IRQ_SUSPENDED is set?
> 
> I'm not worried about nested ones.
> 
> > Or should __enable_irq() only fail with IRQ_SUSPENDED set for desc->depth == 1?
> 
> At least it needs a WARN_ON() in that case. A very prominent one.

I'm going to make it fail and print a warning for desc->depth == 1if IRQ_SUSPENDED is set.
Hope that's fine with everyone.

Thanks,
Rafael
_______________________________________________
linux-pm mailing list
linux-pm@xxxxxxxxxxxxxxxxxxxxxxxxxx
https://lists.linux-foundation.org/mailman/listinfo/linux-pm

[Index of Archives]     [Linux ACPI]     [Netdev]     [Ethernet Bridging]     [Linux Wireless]     [CPU Freq]     [Kernel Newbies]     [Fedora Kernel]     [Security]     [Linux for Hams]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux Admin]     [Samba]

  Powered by Linux