* Re: 2.5.44 (now 2.5.46-c929): Strange oopses triggered by .
@ 2002-11-06 21:49 Petr Vandrovec
2002-11-07 0:41 ` Preempt count check when leaving IRQ? (Was: Re: 2.5.44 (now 2.5.46-c929): Strange oopses triggered by .) Roger Larsson
0 siblings, 1 reply; 3+ messages in thread
From: Petr Vandrovec @ 2002-11-06 21:49 UTC (permalink / raw)
To: linux-kernel
On 6 Nov 02 at 23:09, Petr Vandrovec wrote:
>
> I'm getting really nervous :-( Is kdb able to track who caused unbalanced
> in_atomic() incrementation?
>
> After more than week of stable system I run simple
> "arp vanicka.vc.cvut.cz" few minutes ago, and after arp output I got
> sleeping function called from illegal context, quickly followed by two
> scheduling while atomic, and finally it died because of userspace faults
> when in_atomic() is != 0 are treated as kernel ones...
>
> As I saw nobody else reporting this or simillar problem, I'll start
> looking at e100 driver I use. Maybe it did not occured because of I
> was running -acX kernels since 25th Oct until yesterday. Anybody knows?
-acX use special stack for hardware IRQs, and preempt_count() is
copied only from task -> hwirq, not other way around (because of it
assumes that preempt_count() is same on exit as it was on enter...).
That's probably reason why -acX was working for me almost two weeks,
but as soon as I returned back to non-ac, it died.
Petr Vandrovec
vandrove@vc.cvut.cz
^ permalink raw reply [flat|nested] 3+ messages in thread* Preempt count check when leaving IRQ? (Was: Re: 2.5.44 (now 2.5.46-c929): Strange oopses triggered by .)
2002-11-06 21:49 2.5.44 (now 2.5.46-c929): Strange oopses triggered by Petr Vandrovec
@ 2002-11-07 0:41 ` Roger Larsson
0 siblings, 0 replies; 3+ messages in thread
From: Roger Larsson @ 2002-11-07 0:41 UTC (permalink / raw)
To: Petr Vandrovec, linux-kernel; +Cc: Robert Love
On Wednesday 06 November 2002 22.49, Petr Vandrovec wrote:
> On 6 Nov 02 at 23:09, Petr Vandrovec wrote:
> >
> > I'm getting really nervous :-( Is kdb able to track who caused unbalanced
> > in_atomic() incrementation?
> >
> > After more than week of stable system I run simple
> > "arp vanicka.vc.cvut.cz" few minutes ago, and after arp output I got
> > sleeping function called from illegal context, quickly followed by two
> > scheduling while atomic, and finally it died because of userspace faults
> > when in_atomic() is != 0 are treated as kernel ones...
> >
> > As I saw nobody else reporting this or simillar problem, I'll start
> > looking at e100 driver I use. Maybe it did not occured because of I
> > was running -acX kernels since 25th Oct until yesterday. Anybody knows?
>
> -acX use special stack for hardware IRQs, and preempt_count() is
> copied only from task -> hwirq, not other way around (because of it
> assumes that preempt_count() is same on exit as it was on enter...).
> That's probably reason why -acX was working for me almost two weeks,
> but as soon as I returned back to non-ac, it died.
> Petr Vandrovec
> vandrove@vc.cvut.cz
>
This is another CHECK to do then.
Make a copy of preempt count when entering an IRQ.
Check that we have the same value when leaving.
(using -acX we only have to add the check when leaving)
/RogerL
--
Roger Larsson
Skellefteå
Sweden
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: 2.5.44 (now 2.5.46-c929): Strange oopses triggered by ...
@ 2002-11-06 21:09 Petr Vandrovec
0 siblings, 0 replies; 3+ messages in thread
From: Petr Vandrovec @ 2002-11-06 21:09 UTC (permalink / raw)
To: linux-kernel
On 25 Oct 02 at 11:19, Petr Vandrovec wrote:
> On 23 Oct 02 at 17:57, Petr Vandrovec wrote:
>
> > Hi,
> > I just left my 2.5.44 box unattended for hour and half, and when
> > I came back, I saw very strange things on screen:
>
> Machine did it again yesterday 7:55 morning, after having ~10 hours
> uptime. All three dumps are same, with minor difference in last one:
> *pde is 024c4067, and Process line is 'cat (pid: 11497, threadinfo=c3960000,
> task=d1c3a780)'... All other values are same.
I'm getting really nervous :-( Is kdb able to track who caused unbalanced
in_atomic() incrementation?
After more than week of stable system I run simple
"arp vanicka.vc.cvut.cz" few minutes ago, and after arp output I got
sleeping function called from illegal context, quickly followed by two
scheduling while atomic, and finally it died because of userspace faults
when in_atomic() is != 0 are treated as kernel ones...
As I saw nobody else reporting this or simillar problem, I'll start
looking at e100 driver I use. Maybe it did not occured because of I
was running -acX kernels since 25th Oct until yesterday. Anybody knows?
Thanks,
Petr Vandrovec
vandrove@vc.cvut.cz
Debug: sleeping function called from illegal context at include/asm/semaphore.h:119
Call Trace:
[..........] __might_sleep+0x43/0x47
[..........] seq_read
........... vfs_read
........... sys_read
[..........] syscall_call+0x7/0xb
bad: scheduling while atomic!
[..........] schedule
............ sys_read
[..........] work_resched
bad: scheduling while atomic!
[..........] schedule
............ sys_munmap
[..........] work_resched
Unable to handle kernel paging request...
...
EIP: 0x4004DB65
...
Process: arp
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2002-11-07 0:37 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2002-11-06 21:49 2.5.44 (now 2.5.46-c929): Strange oopses triggered by Petr Vandrovec
2002-11-07 0:41 ` Preempt count check when leaving IRQ? (Was: Re: 2.5.44 (now 2.5.46-c929): Strange oopses triggered by .) Roger Larsson
-- strict thread matches above, loose matches on Subject: below --
2002-11-06 21:09 2.5.44 (now 2.5.46-c929): Strange oopses triggered by Petr Vandrovec
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®