Messages in this thread | | | From | Andreas Franck <> | Date | Sun, 24 Dec 2000 23:49:00 +0100 | Subject | Re: Fatal Oops on boot with 2.4.0testX and recent GCC snapshots |
| |
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/
| |