[Tux3] Userland cleanups

OGAWA Hirofumi hirofumi at mail.parknet.co.jp
Fri Jan 9 10:04:23 PST 2009


OGAWA Hirofumi <hirofumi at mail.parknet.co.jp> writes:

> Just demonstration though for now. With this hack, volmap/tux_vol_apos
> seem to work.

diff -puN user/kernel/inode.c~vol_bread user/kernel/inode.c
--- tux3/user/kernel/inode.c~vol_bread	2009-01-10 00:24:46.000000000 +0900
+++ tux3-hirofumi/user/kernel/inode.c	2009-01-10 00:24:58.000000000 +0900
@@ -337,6 +337,8 @@ void tux3_clear_inode(struct inode *inod
 
 int tux3_write_inode(struct inode *inode, int do_sync)
 {
+	if (tux_inode(inode)->inum == TUX_VOLMAP_INO)
+		return 0;
 	BUG_ON(tux_inode(inode)->inum == TUX_BITMAP_INO ||
 	       tux_inode(inode)->inum == TUX_VOLMAP_INO ||
 	       tux_inode(inode)->inum == TUX_VTABLE_INO ||
_

Ah, this part is unneeded. If we or vfs mark inode as I_DIRTY_SYNC/DATASSYNC,
it is bug. We just need to mark inode as I_DIRTY_PAGES only.

So, if tux3_write_inode() was called with TUX_VOLMAP_INO, unexpected
thing was happened.
-- 
OGAWA Hirofumi <hirofumi at mail.parknet.co.jp>

_______________________________________________
Tux3 mailing list
Tux3 at tux3.org
http://mailman.tux3.org/cgi-bin/mailman/listinfo/tux3



More information about the Tux3 mailing list