Re: VFS bug? Trying to free free buffer

Tachino Nobuhiro (tachino@open.nm.fujitsu.co.jp)
Sun, 10 Jun 2001 16:09:14 +0900


Hello,

At Fri, 8 Jun 2001 16:42:54 +0300,
Alexey Vyskubov wrote:
>
> Hello.
>
> Kernel 2.4.5.
>
> $ sudo mount -o iocharset=garbage /dev/cdrom /cdrom
>
> VFS: brelse: Trying to free free buffer

I think this is the ISOFS's bug. If invalid iocharset is specified
as a mount option, isofs_read_super() tries to free the buffer_head twice.

This patch may help.

diff -r -u -N linux.org/fs/isofs/inode.c linux/fs/isofs/inode.c
--- linux.org/fs/isofs/inode.c Sun Jun 10 14:23:02 2001
+++ linux/fs/isofs/inode.c Sun Jun 10 15:10:38 2001
@@ -744,7 +744,7 @@
if (! s->u.isofs_sb.s_nls_iocharset) {
/* Fail only if explicit charset specified */
if (opt.iocharset)
- goto out_freebh;
+ goto out_unlock;
s->u.isofs_sb.s_nls_iocharset = load_nls_default();
}
}

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/