When I run a perl script, I got an kernel ext3 bug.
Created attachment 25676 [details]
The kernel oops
Obvious questions: is it repeatable and if so, is the script public ?
It is not repeatable. The script is very similar to lndir from X11R6. When
it happened, it was linking a HUGE source directory to another, like
# lndir.pl src tgt
where `src' was a HUGE tree and `tgt' was a newly created dir.
Which kernel? You mention 2.4-0.9.3.1, but the beta3 kernel (which has the same
ext3 version) uses modular ext3 and your oops seems to have ext3 built-in.
I rebuilt the kernel with the builtin ext3.
Hopefully fixed in ext3 cvs head. We'll pull that into the kernel srpm and push
a build through shortly.
I was told it was fixed a couple of days ago in 0.9.5. Here is
the relevant change:
RCS file: /cvsroot/gkernel/ext3/fs/jbd/transaction.c,v
retrieving revision 1.62
retrieving revision 126.96.36.199
diff -u -r1.62 -r188.8.131.52
--- transaction.c 2001/07/28 06:01:33 1.62
+++ transaction.c 2001/07/30 02:29:25 184.108.40.206
@@ -552,6 +561,9 @@
JBUFFER_TRACE(jh, "stealing from checkpoint mode");
J_ASSERT_JH(jh, jh->b_next_transaction == NULL);
J_ASSERT_JH(jh, jh->b_frozen_data == NULL);
+ J_ASSERT(handle->h_buffer_credits > 0);
/* This will clear BH_Dirty and set BH_JBDDirty. */
JBUFFER_TRACE(jh, "file as BJ_Reserved");
This defect is considered SHOULD-FIX for Fairfax.
Fixed in recent kernel builds: roswell has the patch.