Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/netbsd-1-4]: src/sys/ufs/lfs Pull up revision 1.36 (requested by perseant):
details: https://anonhg.NetBSD.org/src/rev/55895236ce7e
branches: netbsd-1-4
changeset: 469871:55895236ce7e
user: he <he%NetBSD.org@localhost>
date: Thu Dec 16 23:31:46 1999 +0000
description:
Pull up revision 1.36 (requested by perseant):
Fix spllevel problem with superblock exclusion and with write
throttle. Addressess PR#8383.
diffstat:
sys/ufs/lfs/lfs_segment.c | 8 ++++----
1 files changed, 4 insertions(+), 4 deletions(-)
diffs (37 lines):
diff -r f1c5213c8277 -r 55895236ce7e sys/ufs/lfs/lfs_segment.c
--- a/sys/ufs/lfs/lfs_segment.c Thu Dec 16 23:27:46 1999 +0000
+++ b/sys/ufs/lfs/lfs_segment.c Thu Dec 16 23:31:46 1999 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: lfs_segment.c,v 1.23.2.4 1999/10/10 20:51:48 cgd Exp $ */
+/* $NetBSD: lfs_segment.c,v 1.23.2.5 1999/12/16 23:31:46 he Exp $ */
/*-
* Copyright (c) 1999 The NetBSD Foundation, Inc.
@@ -1225,10 +1225,10 @@
}
#endif
+ s = splbio();
if(fs->lfs_iocount >= LFS_THROTTLE) {
tsleep(&fs->lfs_iocount, PRIBIO+1, "lfs throttle", 0);
}
- s = splbio();
++fs->lfs_iocount;
#ifdef LFS_TRACK_IOS
for(j=0;j<LFS_THROTTLE;j++) {
@@ -1362,13 +1362,13 @@
* If we can write one superblock while another is in
* progress, we risk not having a complete checkpoint if we crash.
* So, block here if a superblock write is in progress.
- *
- * XXX - should be a proper lock, not this hack
*/
+ s = splbio();
while(fs->lfs_sbactive) {
tsleep(&fs->lfs_sbactive, PRIBIO+1, "lfs sb", 0);
}
fs->lfs_sbactive = daddr;
+ splx(s);
#endif
i_dev = VTOI(fs->lfs_ivnode)->i_dev;
strategy = VTOI(fs->lfs_ivnode)->i_devvp->v_op[VOFFSET(vop_strategy)];
Home |
Main Index |
Thread Index |
Old Index