lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite for Android: free password hash cracker in your pocket
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date:	Thu, 15 Jul 2010 00:12:02 +0200 (CEST)
From:	Thomas Gleixner <tglx@...utronix.de>
To:	Fernando Lopez-Lezcano <nando@...ma.Stanford.EDU>
cc:	john stultz <johnstul@...ibm.com>,
	LKML <linux-kernel@...r.kernel.org>,
	rt-users <linux-rt-users@...r.kernel.org>,
	Steven Rostedt <rostedt@...dmis.org>,
	Nick Piggin <npiggin@...e.de>
Subject: Re: 2.6.33.5 rt23: sleeping function called from invalid context

On Wed, 14 Jul 2010, Fernando Lopez-Lezcano wrote:
> On Thu, 2010-07-08 at 18:44 -0700, john stultz wrote:
> > On Thu, 2010-07-08 at 10:37 -0700, john stultz wrote:
> > > On Wed, 2010-07-07 at 20:54 -0700, Fernando Lopez-Lezcano wrote:
> > > > After a suspend/wake up cycle, just after upgrading to fc12 (I did not
> > > > see this with the same basic kernel - that is, compiled from the same
> > > > source + patches - under fc11). 
> > > > 
> > > > BUG: sleeping function called from invalid context at
> > > > kernel/rtmutex.c:684
> > > > pcnt: 0 0 in_atomic(): 0, irqs_disabled(): 1, pid: 10582, name:
> > > > pm-suspend
> > > > Pid: 10582, comm: pm-suspend Not tainted
> > > > 2.6.33.5-120.rt23.1.fc11.ccrma.i686.rtPAE #1
> > > > Call Trace:
> > > > [<c042eced>] __might_sleep+0xcc/0xd4
> > > > [<c0464f57>] rt_spin_lock_fastlock.clone.1+0x26/0x5f
> > > > [<c0792862>] rt_spin_lock+0x8/0xa
> > > > [<c040dddc>] read_persistent_clock+0x11/0x30
> > > > [<c045d1de>] timekeeping_suspend+0xe/0x4e
> > > > [<c0640c9e>] sysdev_suspend+0x15c/0x356
> > > > [<c0792906>] ? _mutex_unlock+0x8/0xa
> > > > [<c046afc1>] suspend_devices_and_enter+0xea/0x17f
> > > 
> > > Huh. Looks like the lock protecting the RTC/CMOS might need to be
> > > converted to a raw spinlock, since suspend/resume is probably done with
> > > irqs off.
> > 
> > Oof. The rtc_lock is used all over the place. Not sure if we really want
> > to convert it to a raw_spinlock. 
> > 
> > However, sysdev_suspend() wants interrupts off on all the .suspend
> > calls. I'm surprised we haven't hit this issue with more drivers. Maybe
> > no one is testing suspend w/ -rt? Or am I just missing an obvious
> > solution?
> >
> > Thomas, any thoughts on this? 

Yep, it's basically the same scenario which we have during bootup
where we know that we cannot run into lock contention, so we can apply
the same rules. Still working on a sane solution for this.
 
> (BTW, this is still happening in rt26...)

See announce mail :)

> There are some pending issues:
> - rtc_lock suspend/resume (working on a patch)
> ...

Thanks,

	tglx
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ