Serious Bug In 2.4.15/2.5.0
John Ineson writes: "There is a bug in the latest kernel releases, that causes fs corruption on umount. A lot of people have already been hit by this, so for now I suggest you hold fire on booting those new kernels. More dead-duck than greased-turkey. Two possible fixes are being discussed on linux-kernel."
Colin Bayer adds links to a story at the Register and Al Viro's fix. Update: 11/25 00:39 GMT by T : Tarkie writes "Linux 2.4.16-pre1 is out, as detailed at NewsForge. If you've been having the filesystem corruptions, might be worth a try so that 2.4.16 can be out ASAP!"
No problems with this kernel pre release :)
Everyone wants a Tux in their life.
You're correct, it is regardless of filesystem. If you happen to be running 2.4.15 or 2.5.0, just remember to force a fsck for the next reboot (shutdown -F) that's the only way to clear the fs because it will be marked clean even if it's not). Right now, the developpers don't know how reseirfs would deal with this bug...
You can find Andrea Arcangeli's fix at:n drea/kernels/v2.4/2.4.15aa1/00_iput-unmount-corrup tion-fix-1
ftp://ftp.us.kernel.org/pub/linux/kernel/people/a
This bug was introduced when the kernel coders were trying to fix a bug that existed earlier (but, AFAIK, didn't cause fs corruption). It was introduced in pre9, but the final kernel was released within a few hours, so I guess nobody caught it in time.
Want Linux games? HERE.
I hope /. dosent mangle this up too bad, but if it does:
0 658174003122&w=2
http://marc.theaimsgroup.com/?l=linux-kernel&m=10
List: linux-kernel
Subject: Re: 2.4.15-pre9 breakage (inode.c)
From: Linus Torvalds
Date: 2001-11-24 5:55:42
[Download message RAW]
On Sat, 24 Nov 2001, Andrea Arcangeli wrote:
>
> --- 2.4.15pre9aa1/fs/inode.c.~1~ Thu Nov 22 20:48:23 2001
> +++ 2.4.15pre9aa1/fs/inode.c Sat Nov 24 06:30:20 2001
> @@ -1071,7 +1071,7 @@
> if (inode->i_state != I_CLEAR)
> BUG();
> } else {
> - if (!list_empty(&inode->i_hash) && sb && sb->s_root) {
> + if (!list_empty(&inode->i_hash)) {
> if (!(inode->i_state & (I_DIRTY|I_LOCK))) {
> list_del(&inode->i_list);
> list_add(&inode->i_list, &inode_unused);
I have to say that I like this patch better myself - the added tests are
not sensible, and just removing them seems to be the right thing.
Linus
This is a common misconception! 2.4 is *not* "stable"! It is "testing"! Well, now that it's split in two I suppose it can officially be called "stable" (what a bad start!), but I don't consider it stable (though I'm just a lowly AC). AFAIC, 2.2 = "stable" and 2.4 = "testing". In a month or so, things we'll change and we'll have 2.4 = "stable" and 2.5 = "experimental". Until 2.5 turns into 2.6/3.0, at which point it will be "testing", and the cycle continues :)
Does this error occur on every architecture?
;)
Yep... since the affected files are in fs/, not arch/*, it's an architecture-independent problem. Good thing I have the Magic SysRq enabled.
Want Linux games? HERE.
You cannot compare Linux and FreeBSD that way. FreeBSD is a complete OS, not just the kernel.
I've NEVER seen filesystem corruption caused by my distribution (Red Hat) kernel.
Compare FreeBSD with the whole Red Hat Linux (probably the same for Debian, don't know about the others), and you'll see neither have this sort of problems.
The last post in that thread is this one by Andrea Arcangeli sometime this morning and from the looks of things (if you read the entire thread) there is conflict between Alexander Viro and Andrea on which is the better solution.
Linus saying he prefers a patch on an initial viewing isn't the end of the situation for now. I'd suggesting waiting a week and revisiting the thread to find out what the final word was.
For those who have tried ext3 in 2.4.15:
/dev/whatever".
Make sure you have reset the journaling flag on your filesystems, because your older kernel will not mount an unclean ext3 volume.
Do a "tune2fs -O ^has_journal
The mailing list converted tabs into spaces, causing patch to choke. Get the patch here.
Prevent email address forgery. Publish SPF records for y
I wouldn't do what this guy says.
You're pretty much guaranteed to corrupt your
filesystem this way. Probably nothing fsck
couldn't fix, but still.
Other posters have suggested that you use
"shutdown -F" after running "sync",
and rebooting into a NON-2.4.15 kernel.
"sync" will write all the unsaved data to
the disk, and "shutdown -F" will cause
an fsck to start after rebooting.
PM
It seems the second set of commands got mangled, sorry:
telinit S
kill everything but your shell
sync
unmount everything but root
sync
reboot
As an owner of a lovely IBM 75GXP hdd, I can say Win2k fixes corrupted files on NTFS pretty well. NT4 is perhaps a different ballgame, there you have the chance to indeed get stuck with files which are not recoverable at all.
Never underestimate the relief of true separation of Religion and State.
> for the brasilian guy, hum ?
...
Nope. 2.4.15 was released by Linus
al
First: This linux bug does not the loss of the ENTIRE FILE SYSTEM. It leaves .lock files with invalid INODES which can be repaired by manully running fsck. As to you're challenge, these are just a few corruption problems with windows 2000 that I found doing a simple search on www.microsoft.com.
s /Q 268/8/97.ASP
s /Q 258/0/75.ASP
s /Q 273/2/45.ASP
s /Q 298/9/36.ASP?LN=EN-US&SD=gn&FR=0&qry=file%20system %20corruption&rnk=16&src=DHCS_MSPSS_gn_SRCH&SPR=WI N2000
s /Q 261/1/22.ASP?LN=EN-US&SD=gn&FR=0&qry=file%20system %20corruption&rnk=19&src=DHCS_MSPSS_gn_SRCH&SPR=WI N2000
s /Q 255/5/69.ASP?LN=EN-US&SD=gn&FR=0&qry=file%20system %20corruption&rnk=23&src=DHCS_MSPSS_gn_SRCH&SPR=WI N2000
http://support.microsoft.com/support/kb/article
http://support.microsoft.com/support/kb/article
http://support.microsoft.com/support/kb/article
http://support.microsoft.com/support/kb/article
http://support.microsoft.com/support/kb/article
http://support.microsoft.com/support/kb/article
-- You can be a geeklord too
> The real problem is that new functionality is being added to the stable branch
In this case, the real problem was that a bugfix (which is supposed to occur in stable kernels) was faulty and caused another bug.
University - a box of academia nuts.
I found a patch that solves the problem TOTALLY! The URL is www.freebsd.org
Linux Sucks by the way