diff options
author | dyson <dyson@FreeBSD.org> | 1996-03-01 19:01:04 +0000 |
---|---|---|
committer | dyson <dyson@FreeBSD.org> | 1996-03-01 19:01:04 +0000 |
commit | 0d3859fc4832bd1d80625f81b97b1e37cc44bb93 (patch) | |
tree | 2d024ea1c506b42db3f4ed7e2046021f1f8d2caa | |
parent | 2dac23e9f496bd5dc0a82b65d5a5767f36b77fb3 (diff) | |
download | FreeBSD-src-0d3859fc4832bd1d80625f81b97b1e37cc44bb93.zip FreeBSD-src-0d3859fc4832bd1d80625f81b97b1e37cc44bb93.tar.gz |
Fix a bug that b_flags was getting unnecessarily modified by
the slice code. The effect up to now has been insignficant, but
improved buffer allocation code will break with this problem.
-rw-r--r-- | sys/i386/isa/diskslice_machdep.c | 8 | ||||
-rw-r--r-- | sys/kern/subr_disklabel.c | 6 | ||||
-rw-r--r-- | sys/kern/subr_diskmbr.c | 8 | ||||
-rw-r--r-- | sys/kern/subr_dkbad.c | 2 | ||||
-rw-r--r-- | sys/ufs/ufs/ufs_disksubr.c | 6 |
5 files changed, 15 insertions, 15 deletions
diff --git a/sys/i386/isa/diskslice_machdep.c b/sys/i386/isa/diskslice_machdep.c index 4cfd7ec..a19930c 100644 --- a/sys/i386/isa/diskslice_machdep.c +++ b/sys/i386/isa/diskslice_machdep.c @@ -35,7 +35,7 @@ * * from: @(#)ufs_disksubr.c 7.16 (Berkeley) 5/4/91 * from: ufs_disksubr.c,v 1.8 1994/06/07 01:21:39 phk Exp $ - * $Id: diskslice_machdep.c,v 1.16 1995/08/23 11:43:45 jkh Exp $ + * $Id: diskslice_machdep.c,v 1.17 1995/10/28 15:38:55 phk Exp $ */ #include <stddef.h> @@ -221,7 +221,7 @@ reread_mbr: if (bootverbose) printf( "%s: Found \"Ontrack Disk Manager\" on this disk.\n", sname); - bp->b_flags = B_INVAL | B_AGE; + bp->b_flags |= B_INVAL | B_AGE; brelse(bp); mbr_offset = 63; goto reread_mbr; @@ -342,7 +342,7 @@ reread_mbr: max_nsectors, max_ntracks, mbr_offset); done: - bp->b_flags = B_INVAL | B_AGE; + bp->b_flags |= B_INVAL | B_AGE; brelse(bp); if (error == EINVAL) error = 0; @@ -447,6 +447,6 @@ extended(dname, dev, strat, lp, ssp, ext_offset, ext_size, base_ext_offset, mbr_offset); done: - bp->b_flags = B_INVAL | B_AGE; + bp->b_flags |= B_INVAL | B_AGE; brelse(bp); } diff --git a/sys/kern/subr_disklabel.c b/sys/kern/subr_disklabel.c index 3598a69..5bdf975 100644 --- a/sys/kern/subr_disklabel.c +++ b/sys/kern/subr_disklabel.c @@ -36,7 +36,7 @@ * SUCH DAMAGE. * * @(#)ufs_disksubr.c 8.5 (Berkeley) 1/21/94 - * $Id: ufs_disksubr.c,v 1.19 1995/09/16 17:04:06 bde Exp $ + * $Id: ufs_disksubr.c,v 1.20 1995/11/23 07:24:32 dyson Exp $ */ #include <sys/param.h> @@ -275,7 +275,7 @@ readdisklabel(dev, strat, lp) break; } } - bp->b_flags = B_INVAL | B_AGE; + bp->b_flags |= B_INVAL | B_AGE; brelse(bp); return (msg); } @@ -391,7 +391,7 @@ done: (*strat)(bp); error = biowait(bp); #endif - bp->b_flags = B_INVAL | B_AGE; + bp->b_flags |= B_INVAL | B_AGE; brelse(bp); return (error); } diff --git a/sys/kern/subr_diskmbr.c b/sys/kern/subr_diskmbr.c index 4cfd7ec..a19930c 100644 --- a/sys/kern/subr_diskmbr.c +++ b/sys/kern/subr_diskmbr.c @@ -35,7 +35,7 @@ * * from: @(#)ufs_disksubr.c 7.16 (Berkeley) 5/4/91 * from: ufs_disksubr.c,v 1.8 1994/06/07 01:21:39 phk Exp $ - * $Id: diskslice_machdep.c,v 1.16 1995/08/23 11:43:45 jkh Exp $ + * $Id: diskslice_machdep.c,v 1.17 1995/10/28 15:38:55 phk Exp $ */ #include <stddef.h> @@ -221,7 +221,7 @@ reread_mbr: if (bootverbose) printf( "%s: Found \"Ontrack Disk Manager\" on this disk.\n", sname); - bp->b_flags = B_INVAL | B_AGE; + bp->b_flags |= B_INVAL | B_AGE; brelse(bp); mbr_offset = 63; goto reread_mbr; @@ -342,7 +342,7 @@ reread_mbr: max_nsectors, max_ntracks, mbr_offset); done: - bp->b_flags = B_INVAL | B_AGE; + bp->b_flags |= B_INVAL | B_AGE; brelse(bp); if (error == EINVAL) error = 0; @@ -447,6 +447,6 @@ extended(dname, dev, strat, lp, ssp, ext_offset, ext_size, base_ext_offset, mbr_offset); done: - bp->b_flags = B_INVAL | B_AGE; + bp->b_flags |= B_INVAL | B_AGE; brelse(bp); } diff --git a/sys/kern/subr_dkbad.c b/sys/kern/subr_dkbad.c index e685abf..1fa3e3e 100644 --- a/sys/kern/subr_dkbad.c +++ b/sys/kern/subr_dkbad.c @@ -132,7 +132,7 @@ readbad144(dev, strat, lp, bdp) msg = "bad sector table I/O error"; } while ((bp->b_flags & B_ERROR) && (i += 2) < 10 && i < lp->d_nsectors); - bp->b_flags = B_INVAL | B_AGE; + bp->b_flags |= B_INVAL | B_AGE; brelse(bp); return (msg); } diff --git a/sys/ufs/ufs/ufs_disksubr.c b/sys/ufs/ufs/ufs_disksubr.c index 3598a69..5bdf975 100644 --- a/sys/ufs/ufs/ufs_disksubr.c +++ b/sys/ufs/ufs/ufs_disksubr.c @@ -36,7 +36,7 @@ * SUCH DAMAGE. * * @(#)ufs_disksubr.c 8.5 (Berkeley) 1/21/94 - * $Id: ufs_disksubr.c,v 1.19 1995/09/16 17:04:06 bde Exp $ + * $Id: ufs_disksubr.c,v 1.20 1995/11/23 07:24:32 dyson Exp $ */ #include <sys/param.h> @@ -275,7 +275,7 @@ readdisklabel(dev, strat, lp) break; } } - bp->b_flags = B_INVAL | B_AGE; + bp->b_flags |= B_INVAL | B_AGE; brelse(bp); return (msg); } @@ -391,7 +391,7 @@ done: (*strat)(bp); error = biowait(bp); #endif - bp->b_flags = B_INVAL | B_AGE; + bp->b_flags |= B_INVAL | B_AGE; brelse(bp); return (error); } |