patch-2.4.27 linux-2.4.27/fs/hpfs/anode.c

Next file: linux-2.4.27/fs/hpfs/buffer.c
Previous file: linux-2.4.27/fs/hpfs/alloc.c
Back to the patch index
Back to the overall index

diff -urN linux-2.4.26/fs/hpfs/anode.c linux-2.4.27/fs/hpfs/anode.c
@@ -112,7 +112,7 @@
 			brelse(bh);
 			return -1;
 		}
-		se = node;
+		se = !fnod ? node : (node + 16384) & ~16383;
 	}	
 	if (!(se = hpfs_alloc_sector(s, se, 1, fsecno*ALLOC_M>ALLOC_FWD_MAX ? ALLOC_FWD_MAX : fsecno*ALLOC_M<ALLOC_FWD_MIN ? ALLOC_FWD_MIN : fsecno*ALLOC_M, 1))) {
 		brelse(bh);
@@ -191,7 +191,6 @@
 		}
 		up = up != node ? anode->up : -1;
 		btree->u.internal[btree->n_used_nodes - 1].file_secno = /*fs*/-1;
-		if (up == -1) anode->up = ra;
 		mark_buffer_dirty(bh);
 		brelse(bh);
 		a = na;

FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)