Subject: kern/4812: lfs_markv typographical error
To: None <gnats-bugs@gnats.netbsd.org, perseant@hhhh.org>
From: None <perseant@hhhh.org>
List: netbsd-bugs
Date: 01/12/1998 18:48:07
>Number: 4812
>Category: kern
>Synopsis: Erroneously inserted `;' causes lfs_markv to silently abort
>Confidential: no
>Severity: serious
>Priority: medium
>Responsible: kern-bug-people (Kernel Bug People)
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Mon Jan 12 19:05:01 1998
>Last-Modified:
>Originator: Konrad Schroder
>Organization:
Konrad Schroder
perseant@hhhh.org
>Release: 1.3
>Environment:
System: NetBSD inle 1.3 NetBSD 1.3 (INLE) #31: Sun Jan 11 19:16:21 PST 1998 perseant@inle:/usr/src/sys/arch/i386/compile/INLE i386
>Description:
Somehow, a `;' got appended to an error-testing "if"
(lfs_syscalls.c, line 214), causing lfs_markv to *always* abort
after the first indirect block was written out. This rapidly
munges the filesystem when the cleaner is running.
>How-To-Repeat:
Any serious attempted use of LFS will exhibit this problem
(indeed, merely a glance at the code will reveal the error of
it). Let me know if you want a serious exhibiting case, I'm
sure I can provide one.
>Fix:
Just delete the semicolon....
*** lfs_syscalls.c Wed Jun 11 04:27:22 1997
--- lfs_syscalls.c.fixed Mon Jan 12 18:25:35 1998
***************
*** 212,216 ****
bsize)))
goto err2;
! if ((error = VOP_BWRITE(bp)) != 0);
goto err2;
}
--- 212,216 ----
bsize)))
goto err2;
! if ((error = VOP_BWRITE(bp)) != 0)
goto err2;
}
>Audit-Trail:
>Unformatted: