Re: Fatal Oops on boot with 2.4.0testX and recent GCC snapshots

From: Andreas Franck (afranck@gmx.de)
Date: Sun Dec 24 2000 - 17:49:00 EST


Hello Mike, hello linux-kernel hackers,

Mike Galbraith wrote:

> Yes, hmm indeed. Try these two things.
>
> 1. make DECLARE_MUTEX_LOCKED(sem) in bdflush_init() static.
> 2. compile with frame pointers. (normal case for IKD)
>
> My IKD tree works with either option, but not with neither. I haven't
> figured out why yet.

1 worked for me, too - with the same effect as compiling buffer.c with
2.95.2, thus meaning successful boot and heavy crashing later on.
I haven't tried to boot 2 yet, but this looks seriously fishy to me. It would
be nice if we could make a simpler testcase to reproduce it, as it's much
work to boot the kernel over and over again.

I have now printed out the buffer.c:bdflush_init assembly for all four cases,
2.95.2, 2.97 without patch, 2.97 with static DECLARE... and 2.97 with frame
pointer, and will try to figure out what's going wrong - it would still be
nice to know if its a gcc problem or if some kernel assumption about GCC
behaviour triggered this bug, which seems equally likely, as kernel_thread
and the mutex/semaphore stuff involve some nontrivial (at least for beginners
like me...) hand-made assembly code.

A nice evening and still merry christmas to the people westward of Europe :-)

Andreas

-- 
->>>----------------------- Andreas Franck --------<<<-
---<<<---- Andreas.Franck@post.rwth-aachen.de --->>>---
->>>---- Keep smiling! ----------------------------<<<-
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Sun Dec 31 2000 - 21:00:07 EST