[Unionfs] Kernel panic
Erez Zadok
ezk at cs.sunysb.edu
Thu Nov 1 00:40:56 EDT 2007
In message <200710301608.36903.fapg-unionfs at eurotux.com>, "Fernando A. P. Gomes" writes:
> Hi,
>
> Have you reproduced the bug with the image that I send you?
>
> Regards,
> Fernando Gomes
Fernando, I believe this patch will fix your bug. It worked for me w/ your
livecd. Please try this on top of 2.1.7 and let me know.
Cheers,
Erez.
diff --git a/fs/unionfs/debug.c b/fs/unionfs/debug.c
index 894bf7c..0066ccd 100644
--- a/fs/unionfs/debug.c
+++ b/fs/unionfs/debug.c
@@ -49,6 +49,9 @@ void __unionfs_check_inode(const struct inode *inode,
sb = inode->i_sb;
istart = ibstart(inode);
iend = ibend(inode);
+ /* don't check inode if no lower branches */
+ if (istart < 0 && iend < 0)
+ return;
if (unlikely(istart > iend)) {
PRINT_CALLER(fname, fxn, line);
pr_debug(" Ci0: inode=%p istart/end=%d:%d\n",
@@ -221,6 +224,9 @@ check_inode:
return;
istart = ibstart(inode);
iend = ibend(inode);
+ /* don't check inode if no lower branches */
+ if (istart < 0 && iend < 0)
+ return;
BUG_ON(istart > iend);
if (unlikely((istart == -1 && iend != -1) ||
(istart != -1 && iend == -1))) {
More information about the unionfs
mailing list