ffs_vfsops.c (74548) | ffs_vfsops.c (75377) |
---|---|
1/* 2 * Copyright (c) 1989, 1991, 1993, 1994 3 * The Regents of the University of California. All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions 7 * are met: 8 * 1. Redistributions of source code must retain the above copyright --- 17 unchanged lines hidden (view full) --- 26 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 27 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 28 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 29 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 30 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 31 * SUCH DAMAGE. 32 * 33 * @(#)ffs_vfsops.c 8.31 (Berkeley) 5/20/95 | 1/* 2 * Copyright (c) 1989, 1991, 1993, 1994 3 * The Regents of the University of California. All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions 7 * are met: 8 * 1. Redistributions of source code must retain the above copyright --- 17 unchanged lines hidden (view full) --- 26 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 27 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 28 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 29 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 30 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 31 * SUCH DAMAGE. 32 * 33 * @(#)ffs_vfsops.c 8.31 (Berkeley) 5/20/95 |
34 * $FreeBSD: head/sys/ufs/ffs/ffs_vfsops.c 74548 2001-03-21 04:09:01Z mckusick $ | 34 * $FreeBSD: head/sys/ufs/ffs/ffs_vfsops.c 75377 2001-04-10 08:38:59Z mckusick $ |
35 */ 36 37#include "opt_quota.h" 38#include "opt_ufs.h" 39 40#include <sys/param.h> 41#include <sys/systm.h> 42#include <sys/namei.h> --- 576 unchanged lines hidden (view full) --- 619 brelse(bp); 620 bp = NULL; 621 fs = ump->um_fs; 622 fs->fs_ronly = ronly; 623 size = fs->fs_cssize; 624 blks = howmany(size, fs->fs_fsize); 625 if (fs->fs_contigsumsize > 0) 626 size += fs->fs_ncg * sizeof(int32_t); | 35 */ 36 37#include "opt_quota.h" 38#include "opt_ufs.h" 39 40#include <sys/param.h> 41#include <sys/systm.h> 42#include <sys/namei.h> --- 576 unchanged lines hidden (view full) --- 619 brelse(bp); 620 bp = NULL; 621 fs = ump->um_fs; 622 fs->fs_ronly = ronly; 623 size = fs->fs_cssize; 624 blks = howmany(size, fs->fs_fsize); 625 if (fs->fs_contigsumsize > 0) 626 size += fs->fs_ncg * sizeof(int32_t); |
627 size += fs->fs_ncg * sizeof(u_int8_t); |
|
627 space = malloc((u_long)size, M_UFSMNT, M_WAITOK); 628 fs->fs_csp = space; 629 for (i = 0; i < blks; i += fs->fs_frag) { 630 size = fs->fs_bsize; 631 if (i + fs->fs_frag > blks) 632 size = (blks - i) * fs->fs_fsize; 633 if ((error = bread(devvp, fsbtodb(fs, fs->fs_csaddr + i), size, 634 cred, &bp)) != 0) { --- 5 unchanged lines hidden (view full) --- 640 brelse(bp); 641 bp = NULL; 642 } 643 if (fs->fs_contigsumsize > 0) { 644 fs->fs_maxcluster = lp = space; 645 for (i = 0; i < fs->fs_ncg; i++) 646 *lp++ = fs->fs_contigsumsize; 647 } | 628 space = malloc((u_long)size, M_UFSMNT, M_WAITOK); 629 fs->fs_csp = space; 630 for (i = 0; i < blks; i += fs->fs_frag) { 631 size = fs->fs_bsize; 632 if (i + fs->fs_frag > blks) 633 size = (blks - i) * fs->fs_fsize; 634 if ((error = bread(devvp, fsbtodb(fs, fs->fs_csaddr + i), size, 635 cred, &bp)) != 0) { --- 5 unchanged lines hidden (view full) --- 641 brelse(bp); 642 bp = NULL; 643 } 644 if (fs->fs_contigsumsize > 0) { 645 fs->fs_maxcluster = lp = space; 646 for (i = 0; i < fs->fs_ncg; i++) 647 *lp++ = fs->fs_contigsumsize; 648 } |
649 size = fs->fs_ncg * sizeof(u_int8_t); 650 fs->fs_contigdirs = (u_int8_t *)space; 651 space = (u_int8_t *)space + size; 652 bzero(fs->fs_contigdirs, size); 653 /* Compatibility for old filesystems XXX */ 654 if (fs->fs_avgfilesize <= 0) /* XXX */ 655 fs->fs_avgfilesize = AVFILESIZ; /* XXX */ 656 if (fs->fs_avgfpdir <= 0) /* XXX */ 657 fs->fs_avgfpdir = AFPDIR; /* XXX */ |
|
648 mp->mnt_data = (qaddr_t)ump; 649 mp->mnt_stat.f_fsid.val[0] = fs->fs_id[0]; 650 mp->mnt_stat.f_fsid.val[1] = fs->fs_id[1]; 651 if (fs->fs_id[0] == 0 || fs->fs_id[1] == 0 || 652 vfs_getvfs(&mp->mnt_stat.f_fsid)) 653 vfs_getnewfsid(mp); 654 mp->mnt_maxsymlinklen = fs->fs_maxsymlinklen; 655 mp->mnt_flag |= MNT_LOCAL; --- 664 unchanged lines hidden --- | 658 mp->mnt_data = (qaddr_t)ump; 659 mp->mnt_stat.f_fsid.val[0] = fs->fs_id[0]; 660 mp->mnt_stat.f_fsid.val[1] = fs->fs_id[1]; 661 if (fs->fs_id[0] == 0 || fs->fs_id[1] == 0 || 662 vfs_getvfs(&mp->mnt_stat.f_fsid)) 663 vfs_getnewfsid(mp); 664 mp->mnt_maxsymlinklen = fs->fs_maxsymlinklen; 665 mp->mnt_flag |= MNT_LOCAL; --- 664 unchanged lines hidden --- |