taglinefilesource code
sb700drivers/char/tpqic02.cstatic int send_qic02_data(char sb[], unsigned size, int ignore_ex)
sb710drivers/char/tpqic02.cstat = notify_cmd(sb[i], ignore_ex);
sb47fs/ext/freelists.cvoid ext_free_block(struct super_block * sb, int block)
sb52fs/ext/freelists.cif (!sb) {
sb56fs/ext/freelists.clock_super (sb);
sb57fs/ext/freelists.cif (block < sb->u.ext_sb.s_firstdatazone ||
sb58fs/ext/freelists.cblock >= sb->u.ext_sb.s_nzones) {
sb62fs/ext/freelists.cbh = get_hash_table(sb->s_dev, block, sb->s_blocksize);
sb66fs/ext/freelists.cif (sb->u.ext_sb.s_firstfreeblock)
sb67fs/ext/freelists.cefb = (struct ext_free_block *) sb->u.ext_sb.s_firstfreeblock->b_data;
sb68fs/ext/freelists.cif (!sb->u.ext_sb.s_firstfreeblock || efb->count == 254) {
sb72fs/ext/freelists.cif (sb->u.ext_sb.s_firstfreeblock)
sb73fs/ext/freelists.cbrelse (sb->u.ext_sb.s_firstfreeblock);
sb74fs/ext/freelists.cif (!(sb->u.ext_sb.s_firstfreeblock = bread (sb->s_dev,
sb75fs/ext/freelists.cblock, sb->s_blocksize)))
sb77fs/ext/freelists.cefb = (struct ext_free_block *) sb->u.ext_sb.s_firstfreeblock->b_data;
sb78fs/ext/freelists.cefb->next = sb->u.ext_sb.s_firstfreeblocknumber;
sb80fs/ext/freelists.csb->u.ext_sb.s_firstfreeblocknumber = block;
sb84fs/ext/freelists.csb->u.ext_sb.s_freeblockscount ++;
sb85fs/ext/freelists.csb->s_dirt = 1;
sb86fs/ext/freelists.csb->u.ext_sb.s_firstfreeblock->b_dirt = 1;
sb87fs/ext/freelists.cunlock_super (sb);
sb91fs/ext/freelists.cint ext_new_block(struct super_block * sb)
sb97fs/ext/freelists.cif (!sb) {
sb101fs/ext/freelists.cif (!sb->u.ext_sb.s_firstfreeblock)
sb103fs/ext/freelists.clock_super (sb);
sb104fs/ext/freelists.cefb = (struct ext_free_block *) sb->u.ext_sb.s_firstfreeblock->b_data;
sb107fs/ext/freelists.csb->u.ext_sb.s_firstfreeblock->b_dirt = 1;
sb112fs/ext/freelists.cj = sb->u.ext_sb.s_firstfreeblocknumber;
sb113fs/ext/freelists.csb->u.ext_sb.s_firstfreeblocknumber = efb->next;
sb114fs/ext/freelists.cbrelse (sb->u.ext_sb.s_firstfreeblock);
sb115fs/ext/freelists.cif (!sb->u.ext_sb.s_firstfreeblocknumber) {
sb116fs/ext/freelists.csb->u.ext_sb.s_firstfreeblock = NULL;
sb118fs/ext/freelists.cif (!(sb->u.ext_sb.s_firstfreeblock = bread (sb->s_dev,
sb119fs/ext/freelists.csb->u.ext_sb.s_firstfreeblocknumber,
sb120fs/ext/freelists.csb->s_blocksize)))
sb124fs/ext/freelists.cif (j < sb->u.ext_sb.s_firstdatazone || j > sb->u.ext_sb.s_nzones) {
sb129fs/ext/freelists.csb->u.ext_sb.s_freeblockscount --;
sb130fs/ext/freelists.csb->s_dirt = 1;
sb132fs/ext/freelists.cif (!(bh=getblk(sb->s_dev, j, sb->s_blocksize))) {
sb143fs/ext/freelists.cunlock_super (sb);
sb147fs/ext/freelists.cunsigned long ext_count_free_blocks(struct super_block *sb)
sb154fs/ext/freelists.clock_super (sb);
sb155fs/ext/freelists.cif (!sb->u.ext_sb.s_firstfreeblock)
sb158fs/ext/freelists.cefb = (struct ext_free_block *) sb->u.ext_sb.s_firstfreeblock->b_data;
sb162fs/ext/freelists.cif (!(bh = bread (sb->s_dev, block, sb->s_blocksize))) {
sb174fs/ext/freelists.csb->u.ext_sb.s_freeblockscount, count);
sb175fs/ext/freelists.cunlock_super (sb);
sb178fs/ext/freelists.creturn sb->u.ext_sb.s_freeblockscount;
sb186fs/ext/freelists.cstruct super_block * sb;
sb209fs/ext/freelists.csb = inode->i_sb;
sb213fs/ext/freelists.clock_super (sb);
sb214fs/ext/freelists.cif (ino < 1 || ino > sb->u.ext_sb.s_ninodes) {
sb216fs/ext/freelists.cunlock_super (sb);
sb219fs/ext/freelists.cif (sb->u.ext_sb.s_firstfreeinodeblock)
sb220fs/ext/freelists.cefi = ((struct ext_free_inode *) sb->u.ext_sb.s_firstfreeinodeblock->b_data) +
sb221fs/ext/freelists.c(sb->u.ext_sb.s_firstfreeinodenumber-1)%EXT_INODES_PER_BLOCK;
sb222fs/ext/freelists.cif (!sb->u.ext_sb.s_firstfreeinodeblock || efi->count == 14) {
sb226fs/ext/freelists.cif (sb->u.ext_sb.s_firstfreeinodeblock)
sb227fs/ext/freelists.cbrelse (sb->u.ext_sb.s_firstfreeinodeblock);
sb229fs/ext/freelists.cif (!(bh = bread(dev, block, sb->s_blocksize)))
sb233fs/ext/freelists.cefi->next = sb->u.ext_sb.s_firstfreeinodenumber;
sb235fs/ext/freelists.csb->u.ext_sb.s_firstfreeinodenumber = ino;
sb236fs/ext/freelists.csb->u.ext_sb.s_firstfreeinodeblock = bh;
sb240fs/ext/freelists.csb->u.ext_sb.s_freeinodescount ++;
sb241fs/ext/freelists.csb->s_dirt = 1;
sb242fs/ext/freelists.csb->u.ext_sb.s_firstfreeinodeblock->b_dirt = 1;
sb243fs/ext/freelists.cunlock_super (sb);
sb248fs/ext/freelists.cstruct super_block * sb;
sb256fs/ext/freelists.csb = dir->i_sb;
sb257fs/ext/freelists.cinode->i_sb = sb;
sb258fs/ext/freelists.cinode->i_flags = sb->s_flags;
sb259fs/ext/freelists.cif (!sb->u.ext_sb.s_firstfreeinodeblock)
sb261fs/ext/freelists.clock_super (sb);
sb262fs/ext/freelists.cefi = ((struct ext_free_inode *) sb->u.ext_sb.s_firstfreeinodeblock->b_data) +
sb263fs/ext/freelists.c(sb->u.ext_sb.s_firstfreeinodenumber-1)%EXT_INODES_PER_BLOCK;
sb266fs/ext/freelists.csb->u.ext_sb.s_firstfreeinodeblock->b_dirt = 1;
sb271fs/ext/freelists.cj = sb->u.ext_sb.s_firstfreeinodenumber;
sb272fs/ext/freelists.cif (efi->next > sb->u.ext_sb.s_ninodes) {
sb276fs/ext/freelists.csb->u.ext_sb.s_firstfreeinodenumber = efi->next;
sb278fs/ext/freelists.cbrelse (sb->u.ext_sb.s_firstfreeinodeblock);
sb279fs/ext/freelists.cif (!sb->u.ext_sb.s_firstfreeinodenumber) {
sb280fs/ext/freelists.csb->u.ext_sb.s_firstfreeinodeblock = NULL;
sb282fs/ext/freelists.cif (!(sb->u.ext_sb.s_firstfreeinodeblock =
sb283fs/ext/freelists.cbread(sb->s_dev, block, sb->s_blocksize)))
sb287fs/ext/freelists.csb->u.ext_sb.s_freeinodescount --;
sb288fs/ext/freelists.csb->s_dirt = 1;
sb291fs/ext/freelists.cinode->i_dev = sb->s_dev;
sb303fs/ext/freelists.cunlock_super (sb);
sb307fs/ext/freelists.cunsigned long ext_count_free_inodes(struct super_block *sb)
sb314fs/ext/freelists.clock_super (sb);
sb315fs/ext/freelists.cif (!sb->u.ext_sb.s_firstfreeinodeblock)
sb318fs/ext/freelists.cefi = ((struct ext_free_inode *) sb->u.ext_sb.s_firstfreeinodeblock->b_data) +
sb319fs/ext/freelists.c((sb->u.ext_sb.s_firstfreeinodenumber-1)%EXT_INODES_PER_BLOCK);
sb323fs/ext/freelists.cif (ino < 1 || ino > sb->u.ext_sb.s_ninodes) {
sb325fs/ext/freelists.c(int) sb->u.ext_sb.s_firstfreeinodenumber,ino);
sb329fs/ext/freelists.cif (!(bh = bread (sb->s_dev, block, sb->s_blocksize))) {
sb342fs/ext/freelists.csb->u.ext_sb.s_freeinodescount, count);
sb343fs/ext/freelists.cunlock_super (sb);
sb346fs/ext/freelists.creturn sb->u.ext_sb.s_freeinodescount;
sb33fs/ext/inode.cvoid ext_put_super(struct super_block *sb)
sb36fs/ext/inode.clock_super(sb);
sb37fs/ext/inode.csb->s_dev = 0;
sb38fs/ext/inode.cif (sb->u.ext_sb.s_firstfreeinodeblock)
sb39fs/ext/inode.cbrelse (sb->u.ext_sb.s_firstfreeinodeblock);
sb40fs/ext/inode.cif (sb->u.ext_sb.s_firstfreeblock)
sb41fs/ext/inode.cbrelse (sb->u.ext_sb.s_firstfreeblock);
sb42fs/ext/inode.cunlock_super(sb);
sb128fs/ext/inode.cvoid ext_write_super (struct super_block *sb)
sb133fs/ext/inode.cif (!(bh = bread(sb->s_dev, 1, BLOCK_SIZE))) {
sb138fs/ext/inode.ces->s_firstfreeblock = sb->u.ext_sb.s_firstfreeblocknumber;
sb139fs/ext/inode.ces->s_freeblockscount = sb->u.ext_sb.s_freeblockscount;
sb140fs/ext/inode.ces->s_firstfreeinode = sb->u.ext_sb.s_firstfreeinodenumber;
sb141fs/ext/inode.ces->s_freeinodescount = sb->u.ext_sb.s_freeinodescount;
sb144fs/ext/inode.csb->s_dirt = 0;
sb147fs/ext/inode.cvoid ext_statfs (struct super_block *sb, struct statfs *buf)
sb153fs/ext/inode.cput_fs_long(sb->u.ext_sb.s_nzones << sb->u.ext_sb.s_log_zone_size,
sb155fs/ext/inode.ctmp = ext_count_free_blocks(sb);
sb158fs/ext/inode.cput_fs_long(sb->u.ext_sb.s_ninodes, &buf->f_files);
sb159fs/ext/inode.cput_fs_long(ext_count_free_inodes(sb), &buf->f_ffree);
sb119fs/ext2/balloc.cstatic struct ext2_group_desc * get_group_desc (struct super_block * sb,
sb127fs/ext2/balloc.cif (block_group >= sb->u.ext2_sb.s_groups_count)
sb128fs/ext2/balloc.cext2_panic (sb, "get_group_desc",
sb131fs/ext2/balloc.cblock_group, sb->u.ext2_sb.s_groups_count);
sb133fs/ext2/balloc.cgroup_desc = block_group / EXT2_DESC_PER_BLOCK(sb);
sb134fs/ext2/balloc.cdesc = block_group % EXT2_DESC_PER_BLOCK(sb);
sb135fs/ext2/balloc.cif (!sb->u.ext2_sb.s_group_desc[group_desc])
sb136fs/ext2/balloc.cext2_panic (sb, "get_group_desc",
sb141fs/ext2/balloc.csb->u.ext2_sb.s_group_desc[group_desc]->b_data;
sb143fs/ext2/balloc.c*bh = sb->u.ext2_sb.s_group_desc[group_desc];
sb147fs/ext2/balloc.cstatic void read_block_bitmap (struct super_block * sb,
sb154fs/ext2/balloc.cgdp = get_group_desc (sb, block_group, NULL);
sb155fs/ext2/balloc.cbh = bread (sb->s_dev, gdp->bg_block_bitmap, sb->s_blocksize);
sb157fs/ext2/balloc.cext2_panic (sb, "read_block_bitmap",
sb161fs/ext2/balloc.csb->u.ext2_sb.s_block_bitmap_number[bitmap_nr] = block_group;
sb162fs/ext2/balloc.csb->u.ext2_sb.s_block_bitmap[bitmap_nr] = bh;
sb176fs/ext2/balloc.cstatic int load__block_bitmap (struct super_block * sb,
sb183fs/ext2/balloc.cif (block_group >= sb->u.ext2_sb.s_groups_count)
sb184fs/ext2/balloc.cext2_panic (sb, "load_block_bitmap",
sb187fs/ext2/balloc.cblock_group, sb->u.ext2_sb.s_groups_count);
sb189fs/ext2/balloc.cif (sb->u.ext2_sb.s_groups_count <= EXT2_MAX_GROUP_LOADED) {
sb190fs/ext2/balloc.cif (sb->u.ext2_sb.s_block_bitmap[block_group]) {
sb191fs/ext2/balloc.cif (sb->u.ext2_sb.s_block_bitmap_number[block_group] !=
sb193fs/ext2/balloc.cext2_panic (sb, "load_block_bitmap",
sb198fs/ext2/balloc.cread_block_bitmap (sb, block_group, block_group);
sb203fs/ext2/balloc.cfor (i = 0; i < sb->u.ext2_sb.s_loaded_block_bitmaps &&
sb204fs/ext2/balloc.csb->u.ext2_sb.s_block_bitmap_number[i] != block_group; i++)
sb206fs/ext2/balloc.cif (i < sb->u.ext2_sb.s_loaded_block_bitmaps &&
sb207fs/ext2/balloc.csb->u.ext2_sb.s_block_bitmap_number[i] == block_group) {
sb208fs/ext2/balloc.cblock_bitmap_number = sb->u.ext2_sb.s_block_bitmap_number[i];
sb209fs/ext2/balloc.cblock_bitmap = sb->u.ext2_sb.s_block_bitmap[i];
sb211fs/ext2/balloc.csb->u.ext2_sb.s_block_bitmap_number[j] =
sb212fs/ext2/balloc.csb->u.ext2_sb.s_block_bitmap_number[j - 1];
sb213fs/ext2/balloc.csb->u.ext2_sb.s_block_bitmap[j] =
sb214fs/ext2/balloc.csb->u.ext2_sb.s_block_bitmap[j - 1];
sb216fs/ext2/balloc.csb->u.ext2_sb.s_block_bitmap_number[0] = block_bitmap_number;
sb217fs/ext2/balloc.csb->u.ext2_sb.s_block_bitmap[0] = block_bitmap;
sb219fs/ext2/balloc.cif (sb->u.ext2_sb.s_loaded_block_bitmaps < EXT2_MAX_GROUP_LOADED)
sb220fs/ext2/balloc.csb->u.ext2_sb.s_loaded_block_bitmaps++;
sb222fs/ext2/balloc.cbrelse (sb->u.ext2_sb.s_block_bitmap[EXT2_MAX_GROUP_LOADED - 1]);
sb223fs/ext2/balloc.cfor (j = sb->u.ext2_sb.s_loaded_block_bitmaps - 1; j > 0;  j--) {
sb224fs/ext2/balloc.csb->u.ext2_sb.s_block_bitmap_number[j] =
sb225fs/ext2/balloc.csb->u.ext2_sb.s_block_bitmap_number[j - 1];
sb226fs/ext2/balloc.csb->u.ext2_sb.s_block_bitmap[j] =
sb227fs/ext2/balloc.csb->u.ext2_sb.s_block_bitmap[j - 1];
sb229fs/ext2/balloc.cread_block_bitmap (sb, block_group, 0);
sb234fs/ext2/balloc.cstatic inline int load_block_bitmap (struct super_block * sb,
sb237fs/ext2/balloc.cif (sb->u.ext2_sb.s_loaded_block_bitmaps > 0 &&
sb238fs/ext2/balloc.csb->u.ext2_sb.s_block_bitmap_number[0] == block_group)
sb241fs/ext2/balloc.cif (sb->u.ext2_sb.s_groups_count <= EXT2_MAX_GROUP_LOADED && 
sb242fs/ext2/balloc.csb->u.ext2_sb.s_block_bitmap_number[block_group] == block_group &&
sb243fs/ext2/balloc.csb->u.ext2_sb.s_block_bitmap[block_group]) 
sb246fs/ext2/balloc.creturn load__block_bitmap (sb, block_group);
sb249fs/ext2/balloc.cvoid ext2_free_blocks (struct super_block * sb, unsigned long block,
sb261fs/ext2/balloc.cif (!sb) {
sb265fs/ext2/balloc.clock_super (sb);
sb266fs/ext2/balloc.ces = sb->u.ext2_sb.s_es;
sb269fs/ext2/balloc.cext2_error (sb, "ext2_free_blocks",
sb271fs/ext2/balloc.cunlock_super (sb);
sb278fs/ext2/balloc.cEXT2_BLOCKS_PER_GROUP(sb);
sb279fs/ext2/balloc.cbit = (block - es->s_first_data_block) % EXT2_BLOCKS_PER_GROUP(sb);
sb280fs/ext2/balloc.cif (bit + count > EXT2_BLOCKS_PER_GROUP(sb))
sb281fs/ext2/balloc.cext2_panic (sb, "ext2_free_blocks",
sb285fs/ext2/balloc.cbitmap_nr = load_block_bitmap (sb, block_group);
sb286fs/ext2/balloc.cbh = sb->u.ext2_sb.s_block_bitmap[bitmap_nr];
sb287fs/ext2/balloc.cgdp = get_group_desc (sb, block_group, &bh2);
sb289fs/ext2/balloc.cif (test_opt (sb, CHECK_STRICT) &&
sb293fs/ext2/balloc.csb->u.ext2_sb.s_itb_per_group) ||
sb295fs/ext2/balloc.csb->u.ext2_sb.s_itb_per_group)))
sb296fs/ext2/balloc.cext2_panic (sb, "ext2_free_blocks",
sb303fs/ext2/balloc.cext2_warning (sb, "ext2_free_blocks",
sb311fs/ext2/balloc.csb->u.ext2_sb.s_sbh->b_dirt = 1;
sb314fs/ext2/balloc.cif (sb->s_flags & MS_SYNC) {
sb318fs/ext2/balloc.csb->s_dirt = 1;
sb319fs/ext2/balloc.cunlock_super (sb);
sb330fs/ext2/balloc.cint ext2_new_block (struct super_block * sb, unsigned long goal,
sb346fs/ext2/balloc.cif (!sb) {
sb350fs/ext2/balloc.clock_super (sb);
sb351fs/ext2/balloc.ces = sb->u.ext2_sb.s_es;
sb353fs/ext2/balloc.cunlock_super (sb);
sb363fs/ext2/balloc.ci = ((goal - es->s_first_data_block) / EXT2_BLOCKS_PER_GROUP(sb));
sb364fs/ext2/balloc.cgdp = get_group_desc (sb, i, &bh2);
sb366fs/ext2/balloc.cj = ((goal - es->s_first_data_block) % EXT2_BLOCKS_PER_GROUP(sb));
sb371fs/ext2/balloc.cbitmap_nr = load_block_bitmap (sb, i);
sb372fs/ext2/balloc.cbh = sb->u.ext2_sb.s_block_bitmap[bitmap_nr];
sb390fs/ext2/balloc.cif (j < EXT2_BLOCKS_PER_GROUP(sb) - 32)
sb400fs/ext2/balloc.cif ((j + k) < EXT2_BLOCKS_PER_GROUP(sb)) {
sb420fs/ext2/balloc.c(EXT2_BLOCKS_PER_GROUP(sb) - j + 7) >> 3);
sb422fs/ext2/balloc.cif (k < EXT2_BLOCKS_PER_GROUP(sb)) {
sb427fs/ext2/balloc.cEXT2_BLOCKS_PER_GROUP(sb),
sb429fs/ext2/balloc.cif (k < EXT2_BLOCKS_PER_GROUP(sb)) {
sb441fs/ext2/balloc.cfor (k = 0; k < sb->u.ext2_sb.s_groups_count; k++) {
sb443fs/ext2/balloc.cif (i >= sb->u.ext2_sb.s_groups_count)
sb445fs/ext2/balloc.cgdp = get_group_desc (sb, i, &bh2);
sb449fs/ext2/balloc.cif (k >= sb->u.ext2_sb.s_groups_count) {
sb450fs/ext2/balloc.cunlock_super (sb);
sb453fs/ext2/balloc.cbitmap_nr = load_block_bitmap (sb, i);
sb454fs/ext2/balloc.cbh = sb->u.ext2_sb.s_block_bitmap[bitmap_nr];
sb456fs/ext2/balloc.cEXT2_BLOCKS_PER_GROUP(sb) >> 3);
sb458fs/ext2/balloc.cif (j < EXT2_BLOCKS_PER_GROUP(sb))
sb462fs/ext2/balloc.cEXT2_BLOCKS_PER_GROUP(sb));
sb463fs/ext2/balloc.cif (j >= EXT2_BLOCKS_PER_GROUP(sb)) {
sb464fs/ext2/balloc.cext2_error (sb, "ext2_new_block",
sb466fs/ext2/balloc.cunlock_super (sb);
sb482fs/ext2/balloc.ctmp = j + i * EXT2_BLOCKS_PER_GROUP(sb) + es->s_first_data_block;
sb484fs/ext2/balloc.cif (test_opt (sb, CHECK_STRICT) &&
sb487fs/ext2/balloc.cin_range (tmp, gdp->bg_inode_table, sb->u.ext2_sb.s_itb_per_group)))
sb488fs/ext2/balloc.cext2_panic (sb, "ext2_new_block",
sb493fs/ext2/balloc.cext2_warning (sb, "ext2_new_block",
sb508fs/ext2/balloc.ck < 8 && (j + k) < EXT2_BLOCKS_PER_GROUP(sb); k++) {
sb523fs/ext2/balloc.cif (sb->s_flags & MS_SYNC) {
sb529fs/ext2/balloc.cext2_error (sb, "ext2_new_block",
sb532fs/ext2/balloc.cunlock_super (sb);
sb535fs/ext2/balloc.cif (!(bh = getblk (sb->s_dev, j, sb->s_blocksize))) {
sb536fs/ext2/balloc.cext2_error (sb, "ext2_new_block", "cannot get block %d", j);
sb537fs/ext2/balloc.cunlock_super (sb);
sb540fs/ext2/balloc.cclear_block (bh->b_data, sb->s_blocksize);
sb551fs/ext2/balloc.csb->u.ext2_sb.s_sbh->b_dirt = 1;
sb552fs/ext2/balloc.csb->s_dirt = 1;
sb553fs/ext2/balloc.cunlock_super (sb);
sb557fs/ext2/balloc.cunsigned long ext2_count_free_blocks (struct super_block * sb)
sb566fs/ext2/balloc.clock_super (sb);
sb567fs/ext2/balloc.ces = sb->u.ext2_sb.s_es;
sb571fs/ext2/balloc.cfor (i = 0; i < sb->u.ext2_sb.s_groups_count; i++) {
sb572fs/ext2/balloc.cgdp = get_group_desc (sb, i, NULL);
sb574fs/ext2/balloc.cbitmap_nr = load_block_bitmap (sb, i);
sb575fs/ext2/balloc.cx = ext2_count_free (sb->u.ext2_sb.s_block_bitmap[bitmap_nr],
sb576fs/ext2/balloc.csb->s_blocksize);
sb583fs/ext2/balloc.cunlock_super (sb);
sb586fs/ext2/balloc.creturn sb->u.ext2_sb.s_es->s_free_blocks_count;
sb591fs/ext2/balloc.cstruct super_block * sb,
sb594fs/ext2/balloc.creturn test_bit ((block - sb->u.ext2_sb.s_es->s_first_data_block) %
sb595fs/ext2/balloc.cEXT2_BLOCKS_PER_GROUP(sb), map);
sb598fs/ext2/balloc.cvoid ext2_check_blocks_bitmap (struct super_block * sb)
sb607fs/ext2/balloc.clock_super (sb);
sb608fs/ext2/balloc.ces = sb->u.ext2_sb.s_es;
sb612fs/ext2/balloc.cfor (i = 0; i < sb->u.ext2_sb.s_groups_count; i++) {
sb613fs/ext2/balloc.cgdp = get_group_desc (sb, i, NULL);
sb615fs/ext2/balloc.cbitmap_nr = load_block_bitmap (sb, i);
sb616fs/ext2/balloc.cbh = sb->u.ext2_sb.s_block_bitmap[bitmap_nr];
sb618fs/ext2/balloc.cif (!block_in_use (gdp->bg_block_bitmap, sb, bh->b_data))
sb619fs/ext2/balloc.cext2_error (sb, "ext2_check_blocks_bitmap",
sb623fs/ext2/balloc.cif (!block_in_use (gdp->bg_inode_bitmap, sb, bh->b_data))
sb624fs/ext2/balloc.cext2_error (sb, "ext2_check_blocks_bitmap",
sb628fs/ext2/balloc.cfor (j = 0; j < sb->u.ext2_sb.s_itb_per_group; j++)
sb629fs/ext2/balloc.cif (!block_in_use (gdp->bg_inode_table + j, sb, bh->b_data))
sb630fs/ext2/balloc.cext2_error (sb, "ext2_check_blocks_bitmap",
sb634fs/ext2/balloc.cx = ext2_count_free (bh, sb->s_blocksize);
sb636fs/ext2/balloc.cext2_error (sb, "ext2_check_blocks_bitmap",
sb643fs/ext2/balloc.cext2_error (sb, "ext2_check_blocks_bitmap",
sb647fs/ext2/balloc.cunlock_super (sb);
sb98fs/ext2/dir.cstruct super_block * sb;
sb103fs/ext2/dir.csb = inode->i_sb;
sb105fs/ext2/dir.coffset = filp->f_pos & (sb->s_blocksize - 1);
sb106fs/ext2/dir.cblk = (filp->f_pos) >> EXT2_BLOCK_SIZE_BITS(sb);
sb109fs/ext2/dir.cfilp->f_pos += sb->s_blocksize - offset;
sb117fs/ext2/dir.cfor (i = 16 >> (EXT2_BLOCK_SIZE_BITS(sb) - 9), num = 0;
sb133fs/ext2/dir.cwhile (offset < sb->s_blocksize && filp->f_pos < inode->i_size) {
sb84fs/ext2/file.cstruct super_block * sb;
sb92fs/ext2/file.csb = inode->i_sb;
sb94fs/ext2/file.cext2_warning (sb, "ext2_file_read", "mode = %07o",
sb109fs/ext2/file.cblock = offset >> EXT2_BLOCK_SIZE_BITS(sb);
sb110fs/ext2/file.coffset &= (sb->s_blocksize - 1);
sb111fs/ext2/file.csize = (size + sb->s_blocksize - 1) >> EXT2_BLOCK_SIZE_BITS(sb);
sb112fs/ext2/file.cblocks = (left + offset + sb->s_blocksize - 1) >> EXT2_BLOCK_SIZE_BITS(sb);
sb116fs/ext2/file.c(EXT2_BLOCK_SIZE_BITS(sb) - 9);
sb178fs/ext2/file.cif (left < sb->s_blocksize - offset)
sb181fs/ext2/file.cchars = sb->s_blocksize - offset;
sb225fs/ext2/file.cstruct super_block * sb;
sb232fs/ext2/file.csb = inode->i_sb;
sb233fs/ext2/file.cif (sb->s_flags & MS_RDONLY)
sb240fs/ext2/file.cext2_warning (sb, "ext2_file_write", "mode = %07o\n",
sb254fs/ext2/file.cbh = ext2_getblk (inode, pos / sb->s_blocksize, 1, &err);
sb260fs/ext2/file.cc = sb->s_blocksize - (pos % sb->s_blocksize);
sb263fs/ext2/file.cif (c != sb->s_blocksize && !bh->b_uptodate) {
sb273fs/ext2/file.cp = (pos % sb->s_blocksize) + bh->b_data;
sb62fs/ext2/ialloc.cstatic struct ext2_group_desc * get_group_desc (struct super_block * sb,
sb70fs/ext2/ialloc.cif (block_group >= sb->u.ext2_sb.s_groups_count)
sb71fs/ext2/ialloc.cext2_panic (sb, "get_group_desc",
sb74fs/ext2/ialloc.cblock_group, sb->u.ext2_sb.s_groups_count);
sb76fs/ext2/ialloc.cgroup_desc = block_group / EXT2_DESC_PER_BLOCK(sb);
sb77fs/ext2/ialloc.cdesc = block_group % EXT2_DESC_PER_BLOCK(sb);
sb78fs/ext2/ialloc.cif (!sb->u.ext2_sb.s_group_desc[group_desc])
sb79fs/ext2/ialloc.cext2_panic (sb, "get_group_desc",
sb84fs/ext2/ialloc.csb->u.ext2_sb.s_group_desc[group_desc]->b_data;
sb86fs/ext2/ialloc.c*bh = sb->u.ext2_sb.s_group_desc[group_desc];
sb90fs/ext2/ialloc.cstatic void read_inode_bitmap (struct super_block * sb,
sb97fs/ext2/ialloc.cgdp = get_group_desc (sb, block_group, NULL);
sb98fs/ext2/ialloc.cbh = bread (sb->s_dev, gdp->bg_inode_bitmap, sb->s_blocksize);
sb100fs/ext2/ialloc.cext2_panic (sb, "read_inode_bitmap", "Cannot read inode bitmap\n"
sb103fs/ext2/ialloc.csb->u.ext2_sb.s_inode_bitmap_number[bitmap_nr] = block_group;
sb104fs/ext2/ialloc.csb->u.ext2_sb.s_inode_bitmap[bitmap_nr] = bh;
sb118fs/ext2/ialloc.cstatic int load_inode_bitmap (struct super_block * sb,
sb125fs/ext2/ialloc.cif (block_group >= sb->u.ext2_sb.s_groups_count)
sb126fs/ext2/ialloc.cext2_panic (sb, "load_inode_bitmap",
sb129fs/ext2/ialloc.cblock_group, sb->u.ext2_sb.s_groups_count);
sb130fs/ext2/ialloc.cif (sb->u.ext2_sb.s_loaded_inode_bitmaps > 0 &&
sb131fs/ext2/ialloc.csb->u.ext2_sb.s_inode_bitmap_number[0] == block_group)
sb133fs/ext2/ialloc.cif (sb->u.ext2_sb.s_groups_count <= EXT2_MAX_GROUP_LOADED) {
sb134fs/ext2/ialloc.cif (sb->u.ext2_sb.s_inode_bitmap[block_group]) {
sb135fs/ext2/ialloc.cif (sb->u.ext2_sb.s_inode_bitmap_number[block_group] != block_group)
sb136fs/ext2/ialloc.cext2_panic (sb, "load_inode_bitmap",
sb141fs/ext2/ialloc.cread_inode_bitmap (sb, block_group, block_group);
sb146fs/ext2/ialloc.cfor (i = 0; i < sb->u.ext2_sb.s_loaded_inode_bitmaps &&
sb147fs/ext2/ialloc.csb->u.ext2_sb.s_inode_bitmap_number[i] != block_group;
sb150fs/ext2/ialloc.cif (i < sb->u.ext2_sb.s_loaded_inode_bitmaps &&
sb151fs/ext2/ialloc.csb->u.ext2_sb.s_inode_bitmap_number[i] == block_group) {
sb152fs/ext2/ialloc.cinode_bitmap_number = sb->u.ext2_sb.s_inode_bitmap_number[i];
sb153fs/ext2/ialloc.cinode_bitmap = sb->u.ext2_sb.s_inode_bitmap[i];
sb155fs/ext2/ialloc.csb->u.ext2_sb.s_inode_bitmap_number[j] =
sb156fs/ext2/ialloc.csb->u.ext2_sb.s_inode_bitmap_number[j - 1];
sb157fs/ext2/ialloc.csb->u.ext2_sb.s_inode_bitmap[j] =
sb158fs/ext2/ialloc.csb->u.ext2_sb.s_inode_bitmap[j - 1];
sb160fs/ext2/ialloc.csb->u.ext2_sb.s_inode_bitmap_number[0] = inode_bitmap_number;
sb161fs/ext2/ialloc.csb->u.ext2_sb.s_inode_bitmap[0] = inode_bitmap;
sb163fs/ext2/ialloc.cif (sb->u.ext2_sb.s_loaded_inode_bitmaps < EXT2_MAX_GROUP_LOADED)
sb164fs/ext2/ialloc.csb->u.ext2_sb.s_loaded_inode_bitmaps++;
sb166fs/ext2/ialloc.cbrelse (sb->u.ext2_sb.s_inode_bitmap[EXT2_MAX_GROUP_LOADED - 1]);
sb167fs/ext2/ialloc.cfor (j = sb->u.ext2_sb.s_loaded_inode_bitmaps - 1; j > 0; j--) {
sb168fs/ext2/ialloc.csb->u.ext2_sb.s_inode_bitmap_number[j] =
sb169fs/ext2/ialloc.csb->u.ext2_sb.s_inode_bitmap_number[j - 1];
sb170fs/ext2/ialloc.csb->u.ext2_sb.s_inode_bitmap[j] =
sb171fs/ext2/ialloc.csb->u.ext2_sb.s_inode_bitmap[j - 1];
sb173fs/ext2/ialloc.cread_inode_bitmap (sb, block_group, 0);
sb215fs/ext2/ialloc.cstruct super_block * sb;
sb247fs/ext2/ialloc.csb = inode->i_sb;
sb248fs/ext2/ialloc.clock_super (sb);
sb250fs/ext2/ialloc.cinode->i_ino > sb->u.ext2_sb.s_es->s_inodes_count) {
sb251fs/ext2/ialloc.cext2_error (sb, "free_inode",
sb253fs/ext2/ialloc.cunlock_super (sb);
sb256fs/ext2/ialloc.ces = sb->u.ext2_sb.s_es;
sb257fs/ext2/ialloc.cblock_group = (inode->i_ino - 1) / EXT2_INODES_PER_GROUP(sb);
sb258fs/ext2/ialloc.cbit = (inode->i_ino - 1) % EXT2_INODES_PER_GROUP(sb);
sb259fs/ext2/ialloc.cbitmap_nr = load_inode_bitmap (sb, block_group);
sb260fs/ext2/ialloc.cbh = sb->u.ext2_sb.s_inode_bitmap[bitmap_nr];
sb262fs/ext2/ialloc.cext2_warning (sb, "ext2_free_inode",
sb265fs/ext2/ialloc.cgdp = get_group_desc (sb, block_group, &bh2);
sb271fs/ext2/ialloc.csb->u.ext2_sb.s_sbh->b_dirt = 1;
sb275fs/ext2/ialloc.cif (sb->s_flags & MS_SYNC) {
sb280fs/ext2/ialloc.csb->s_dirt = 1;
sb282fs/ext2/ialloc.cunlock_super (sb);
sb332fs/ext2/ialloc.cstruct super_block * sb;
sb344fs/ext2/ialloc.csb = dir->i_sb;
sb345fs/ext2/ialloc.cinode->i_sb = sb;
sb346fs/ext2/ialloc.cinode->i_flags = sb->s_flags;
sb347fs/ext2/ialloc.clock_super (sb);
sb348fs/ext2/ialloc.ces = sb->u.ext2_sb.s_es;
sb354fs/ext2/ialloc.csb->u.ext2_sb.s_groups_count;
sb369fs/ext2/ialloc.cfor (j = 0; j < sb->u.ext2_sb.s_groups_count; j++) {
sb370fs/ext2/ialloc.ctmp = get_group_desc (sb, j, &bh2);
sb389fs/ext2/ialloc.ctmp = get_group_desc (sb, i, &bh2);
sb398fs/ext2/ialloc.cfor (j = 1; j < sb->u.ext2_sb.s_groups_count; j <<= 1) {
sb400fs/ext2/ialloc.cif (i >= sb->u.ext2_sb.s_groups_count)
sb401fs/ext2/ialloc.ci -= sb->u.ext2_sb.s_groups_count;
sb402fs/ext2/ialloc.ctmp = get_group_desc (sb, i, &bh2);
sb414fs/ext2/ialloc.cfor (j = 2; j < sb->u.ext2_sb.s_groups_count; j++) {
sb415fs/ext2/ialloc.cif (++i >= sb->u.ext2_sb.s_groups_count)
sb417fs/ext2/ialloc.ctmp = get_group_desc (sb, i, &bh2);
sb427fs/ext2/ialloc.cunlock_super (sb);
sb431fs/ext2/ialloc.cbitmap_nr = load_inode_bitmap (sb, i);
sb432fs/ext2/ialloc.cbh = sb->u.ext2_sb.s_inode_bitmap[bitmap_nr];
sb434fs/ext2/ialloc.cEXT2_INODES_PER_GROUP(sb))) <
sb435fs/ext2/ialloc.cEXT2_INODES_PER_GROUP(sb)) {
sb437fs/ext2/ialloc.cext2_warning (sb, "ext2_new_inode",
sb442fs/ext2/ialloc.cif (sb->s_flags & MS_SYNC) {
sb448fs/ext2/ialloc.cext2_error (sb, "ext2_new_inode",
sb451fs/ext2/ialloc.cunlock_super (sb);
sb457fs/ext2/ialloc.cj += i * EXT2_INODES_PER_GROUP(sb) + 1;
sb459fs/ext2/ialloc.cext2_error (sb, "ext2_new_inode",
sb462fs/ext2/ialloc.cunlock_super (sb);
sb471fs/ext2/ialloc.csb->u.ext2_sb.s_sbh->b_dirt = 1;
sb472fs/ext2/ialloc.csb->s_dirt = 1;
sb474fs/ext2/ialloc.cinode->i_sb = sb;
sb477fs/ext2/ialloc.cinode->i_dev = sb->s_dev;
sb479fs/ext2/ialloc.cif (test_opt (sb, GRPID))
sb489fs/ext2/ialloc.cinode->i_blksize = sb->s_blocksize;
sb508fs/ext2/ialloc.cunlock_super (sb);
sb512fs/ext2/ialloc.cunsigned long ext2_count_free_inodes (struct super_block * sb)
sb521fs/ext2/ialloc.clock_super (sb);
sb522fs/ext2/ialloc.ces = sb->u.ext2_sb.s_es;
sb526fs/ext2/ialloc.cfor (i = 0; i < sb->u.ext2_sb.s_groups_count; i++) {
sb527fs/ext2/ialloc.cgdp = get_group_desc (sb, i, NULL);
sb529fs/ext2/ialloc.cbitmap_nr = load_inode_bitmap (sb, i);
sb530fs/ext2/ialloc.cx = ext2_count_free (sb->u.ext2_sb.s_inode_bitmap[bitmap_nr],
sb531fs/ext2/ialloc.cEXT2_INODES_PER_GROUP(sb) / 8);
sb538fs/ext2/ialloc.cunlock_super (sb);
sb541fs/ext2/ialloc.creturn sb->u.ext2_sb.s_es->s_free_inodes_count;
sb545fs/ext2/ialloc.cvoid ext2_check_inodes_bitmap (struct super_block * sb)
sb553fs/ext2/ialloc.clock_super (sb);
sb554fs/ext2/ialloc.ces = sb->u.ext2_sb.s_es;
sb558fs/ext2/ialloc.cfor (i = 0; i < sb->u.ext2_sb.s_groups_count; i++) {
sb559fs/ext2/ialloc.cgdp = get_group_desc (sb, i, NULL);
sb561fs/ext2/ialloc.cbitmap_nr = load_inode_bitmap (sb, i);
sb562fs/ext2/ialloc.cx = ext2_count_free (sb->u.ext2_sb.s_inode_bitmap[bitmap_nr],
sb563fs/ext2/ialloc.cEXT2_INODES_PER_GROUP(sb) / 8);
sb565fs/ext2/ialloc.cext2_error (sb, "ext2_check_inodes_bitmap",
sb572fs/ext2/ialloc.cext2_error (sb, "ext2_check_inodes_bitmap",
sb576fs/ext2/ialloc.cunlock_super (sb);
sb79fs/ext2/namei.cstruct super_block * sb;
sb88fs/ext2/namei.csb = dir->i_sb;
sb103fs/ext2/namei.cif ((block << EXT2_BLOCK_SIZE_BITS (sb)) >= dir->i_size)
sb124fs/ext2/namei.cext2_panic (sb, "ext2_find_entry",
sb135fs/ext2/namei.cdlimit = bh->b_data + sb->s_blocksize;
sb154fs/ext2/namei.cif (((block + NAMEI_RA_SIZE) << EXT2_BLOCK_SIZE_BITS (sb)) >=
sb227fs/ext2/namei.cstruct super_block * sb;
sb233fs/ext2/namei.csb = dir->i_sb;
sb259fs/ext2/namei.cif ((char *)de >= sb->s_blocksize + bh->b_data) {
sb262fs/ext2/namei.cbh = ext2_bread (dir, offset >> EXT2_BLOCK_SIZE_BITS(sb), 1, err);
sb275fs/ext2/namei.cde->rec_len = sb->s_blocksize;
sb276fs/ext2/namei.cdir->i_size = offset + sb->s_blocksize;
sb574fs/ext2/namei.cstruct super_block * sb;
sb577fs/ext2/namei.csb = inode->i_sb;
sb595fs/ext2/namei.cif ((void *) de >= (void *) (bh->b_data + sb->s_blocksize)) {
sb597fs/ext2/namei.cbh = ext2_bread (inode, offset >> EXT2_BLOCK_SIZE_BITS(sb), 1, &err);
sb599fs/ext2/namei.coffset += sb->s_blocksize;
sb30fs/ext2/super.cvoid ext2_error (struct super_block * sb, const char * function,
sb36fs/ext2/super.cif (!(sb->s_flags & MS_RDONLY)) {
sb37fs/ext2/super.csb->u.ext2_sb.s_mount_state |= EXT2_ERROR_FS;
sb38fs/ext2/super.csb->u.ext2_sb.s_es->s_state |= EXT2_ERROR_FS;
sb39fs/ext2/super.csb->u.ext2_sb.s_sbh->b_dirt = 1;
sb40fs/ext2/super.csb->s_dirt = 1;
sb45fs/ext2/super.cif (test_opt (sb, ERRORS_PANIC) ||
sb46fs/ext2/super.c(sb->u.ext2_sb.s_es->s_errors == EXT2_ERRORS_PANIC &&
sb47fs/ext2/super.c!test_opt (sb, ERRORS_CONT) && !test_opt (sb, ERRORS_RO)))
sb49fs/ext2/super.cMAJOR(sb->s_dev), MINOR(sb->s_dev), function, buf);
sb51fs/ext2/super.cMAJOR(sb->s_dev), MINOR(sb->s_dev), function, buf);
sb52fs/ext2/super.cif (test_opt (sb, ERRORS_RO) ||
sb53fs/ext2/super.c(sb->u.ext2_sb.s_es->s_errors == EXT2_ERRORS_RO &&
sb54fs/ext2/super.c!test_opt (sb, ERRORS_CONT) && !test_opt (sb, ERRORS_PANIC))) {
sb56fs/ext2/super.csb->s_flags |= MS_RDONLY;
sb60fs/ext2/super.cNORET_TYPE void ext2_panic (struct super_block * sb, const char * function,
sb66fs/ext2/super.cif (!(sb->s_flags & MS_RDONLY)) {
sb67fs/ext2/super.csb->u.ext2_sb.s_mount_state |= EXT2_ERROR_FS;
sb68fs/ext2/super.csb->u.ext2_sb.s_es->s_state |= EXT2_ERROR_FS;
sb69fs/ext2/super.csb->u.ext2_sb.s_sbh->b_dirt = 1;
sb70fs/ext2/super.csb->s_dirt = 1;
sb76fs/ext2/super.cMAJOR(sb->s_dev), MINOR(sb->s_dev), function, buf);
sb79fs/ext2/super.cvoid ext2_warning (struct super_block * sb, const char * function,
sb89fs/ext2/super.cMAJOR(sb->s_dev), MINOR(sb->s_dev), function, buf);
sb92fs/ext2/super.cvoid ext2_put_super (struct super_block * sb)
sb96fs/ext2/super.clock_super (sb);
sb97fs/ext2/super.cif (!(sb->s_flags & MS_RDONLY)) {
sb98fs/ext2/super.csb->u.ext2_sb.s_es->s_state = sb->u.ext2_sb.s_mount_state;
sb99fs/ext2/super.csb->u.ext2_sb.s_sbh->b_dirt = 1;
sb102fs/ext2/super.cext2_dcache_invalidate (sb->s_dev);
sb104fs/ext2/super.csb->s_dev = 0;
sb106fs/ext2/super.cif (sb->u.ext2_sb.s_group_desc[i])
sb107fs/ext2/super.cbrelse (sb->u.ext2_sb.s_group_desc[i]);
sb109fs/ext2/super.cif (sb->u.ext2_sb.s_inode_bitmap[i])
sb110fs/ext2/super.cbrelse (sb->u.ext2_sb.s_inode_bitmap[i]);
sb112fs/ext2/super.cif (sb->u.ext2_sb.s_block_bitmap[i])
sb113fs/ext2/super.cbrelse (sb->u.ext2_sb.s_block_bitmap[i]);
sb114fs/ext2/super.cbrelse (sb->u.ext2_sb.s_sbh);
sb115fs/ext2/super.cunlock_super (sb);
sb132fs/ext2/super.cstatic int convert_pre_02b_fs (struct super_block * sb,
sb143fs/ext2/super.cbh2 = bread (sb->s_dev, 2, BLOCK_SIZE);
sb149fs/ext2/super.cgroups_count = (sb->u.ext2_sb.s_blocks_count - 
sb150fs/ext2/super.csb->u.ext2_sb.s_first_data_block +
sb151fs/ext2/super.c(EXT2_BLOCK_SIZE(sb) * 8) - 1) /
sb152fs/ext2/super.c(EXT2_BLOCK_SIZE(sb) * 8);
sb166fs/ext2/super.csb->s_magic = EXT2_SUPER_MAGIC;
sb267fs/ext2/super.cstatic void ext2_setup_super (struct super_block * sb,
sb270fs/ext2/super.cif (!(sb->u.ext2_sb.s_mount_state & EXT2_VALID_FS))
sb273fs/ext2/super.celse if ((sb->u.ext2_sb.s_mount_state & EXT2_ERROR_FS))
sb280fs/ext2/super.cif (!(sb->s_flags & MS_RDONLY)) {
sb286fs/ext2/super.csb->u.ext2_sb.s_sbh->b_dirt = 1;
sb287fs/ext2/super.csb->s_dirt = 1;
sb288fs/ext2/super.cif (test_opt (sb, DEBUG))
sb291fs/ext2/super.cEXT2FS_VERSION, EXT2FS_DATE, sb->s_blocksize,
sb292fs/ext2/super.csb->u.ext2_sb.s_frag_size,
sb293fs/ext2/super.csb->u.ext2_sb.s_groups_count,
sb294fs/ext2/super.cEXT2_BLOCKS_PER_GROUP(sb),
sb295fs/ext2/super.cEXT2_INODES_PER_GROUP(sb),
sb296fs/ext2/super.csb->u.ext2_sb.s_mount_opt);
sb297fs/ext2/super.cif (test_opt (sb, CHECK)) {
sb298fs/ext2/super.cext2_check_blocks_bitmap (sb);
sb299fs/ext2/super.cext2_check_inodes_bitmap (sb);
sb304fs/ext2/super.cstatic int ext2_check_descriptors (struct super_block * sb)
sb308fs/ext2/super.cunsigned long block = sb->u.ext2_sb.s_es->s_first_data_block;
sb313fs/ext2/super.cfor (i = 0; i < sb->u.ext2_sb.s_groups_count; i++)
sb315fs/ext2/super.cif ((i % EXT2_DESC_PER_BLOCK(sb)) == 0)
sb316fs/ext2/super.cgdp = (struct ext2_group_desc *) sb->u.ext2_sb.s_group_desc[desc_block++]->b_data;
sb318fs/ext2/super.cgdp->bg_block_bitmap >= block + EXT2_BLOCKS_PER_GROUP(sb))
sb320fs/ext2/super.cext2_error (sb, "ext2_check_desciptors",
sb327fs/ext2/super.cgdp->bg_inode_bitmap >= block + EXT2_BLOCKS_PER_GROUP(sb))
sb329fs/ext2/super.cext2_error (sb, "ext2_check_desciptors",
sb336fs/ext2/super.cgdp->bg_inode_table + sb->u.ext2_sb.s_itb_per_group >=
sb337fs/ext2/super.cblock + EXT2_BLOCKS_PER_GROUP(sb))
sb339fs/ext2/super.cext2_error (sb, "ext2_check_desciptors",
sb345fs/ext2/super.cblock += EXT2_BLOCKS_PER_GROUP(sb);
sb351fs/ext2/super.cstruct super_block * ext2_read_super (struct super_block * sb, void * data,
sb358fs/ext2/super.cint dev = sb->s_dev;
sb365fs/ext2/super.cset_opt (sb->u.ext2_sb.s_mount_opt, CHECK_NORMAL);
sb367fs/ext2/super.c&sb->u.ext2_sb.s_mount_opt)) {
sb368fs/ext2/super.csb->s_dev = 0;
sb372fs/ext2/super.clock_super (sb);
sb375fs/ext2/super.csb->s_dev = 0;
sb376fs/ext2/super.cunlock_super (sb);
sb385fs/ext2/super.csb->u.ext2_sb.s_es = es;
sb386fs/ext2/super.csb->s_magic = es->s_magic;
sb387fs/ext2/super.cif (sb->s_magic != EXT2_SUPER_MAGIC
sb389fs/ext2/super.c&& sb->s_magic != EXT2_PRE_02B_MAGIC
sb392fs/ext2/super.csb->s_dev = 0;
sb393fs/ext2/super.cunlock_super (sb);
sb400fs/ext2/super.csb->s_blocksize = EXT2_MIN_BLOCK_SIZE << es->s_log_block_size;
sb401fs/ext2/super.csb->s_blocksize_bits = EXT2_BLOCK_SIZE_BITS(sb);
sb402fs/ext2/super.cif (sb->s_blocksize != BLOCK_SIZE && 
sb403fs/ext2/super.c(sb->s_blocksize == 1024 || sb->s_blocksize == 2048 ||  
sb404fs/ext2/super.csb->s_blocksize == 4096)) {
sb408fs/ext2/super.cset_blocksize (dev, sb->s_blocksize);
sb409fs/ext2/super.clogic_sb_block = sb_block / sb->s_blocksize;
sb410fs/ext2/super.coffset = sb_block % sb->s_blocksize;
sb411fs/ext2/super.cbh = bread (dev, logic_sb_block, sb->s_blocksize);
sb415fs/ext2/super.csb->u.ext2_sb.s_es = es;
sb417fs/ext2/super.csb->s_dev = 0;
sb418fs/ext2/super.cunlock_super (sb);
sb424fs/ext2/super.csb->u.ext2_sb.s_frag_size = EXT2_MIN_FRAG_SIZE <<
sb426fs/ext2/super.cif (sb->u.ext2_sb.s_frag_size)
sb427fs/ext2/super.csb->u.ext2_sb.s_frags_per_block = sb->s_blocksize /
sb428fs/ext2/super.csb->u.ext2_sb.s_frag_size;
sb430fs/ext2/super.csb->s_magic = 0;
sb431fs/ext2/super.csb->u.ext2_sb.s_blocks_per_group = es->s_blocks_per_group;
sb432fs/ext2/super.csb->u.ext2_sb.s_frags_per_group = es->s_frags_per_group;
sb433fs/ext2/super.csb->u.ext2_sb.s_inodes_per_group = es->s_inodes_per_group;
sb434fs/ext2/super.csb->u.ext2_sb.s_inodes_per_block = sb->s_blocksize /
sb436fs/ext2/super.csb->u.ext2_sb.s_itb_per_group = sb->u.ext2_sb.s_inodes_per_group /
sb437fs/ext2/super.csb->u.ext2_sb.s_inodes_per_block;
sb438fs/ext2/super.csb->u.ext2_sb.s_desc_per_block = sb->s_blocksize /
sb440fs/ext2/super.csb->u.ext2_sb.s_sbh = bh;
sb441fs/ext2/super.csb->u.ext2_sb.s_es = es;
sb442fs/ext2/super.csb->u.ext2_sb.s_mount_state = es->s_state;
sb443fs/ext2/super.csb->u.ext2_sb.s_rename_lock = 0;
sb444fs/ext2/super.csb->u.ext2_sb.s_rename_wait = NULL;
sb446fs/ext2/super.cif (sb->s_magic == EXT2_PRE_02B_MAGIC) {
sb451fs/ext2/super.csb->s_dev = 0;
sb452fs/ext2/super.cunlock_super (sb);
sb460fs/ext2/super.cif (!(sb->s_flags & MS_RDONLY)) {
sb461fs/ext2/super.csb->s_dev = 0;
sb462fs/ext2/super.cunlock_super (sb);
sb467fs/ext2/super.cif (!convert_pre_02b_fs (sb, bh)) {
sb468fs/ext2/super.csb->s_dev = 0;
sb469fs/ext2/super.cunlock_super (sb);
sb478fs/ext2/super.cif (sb->s_magic != EXT2_SUPER_MAGIC) {
sb479fs/ext2/super.csb->s_dev = 0;
sb480fs/ext2/super.cunlock_super (sb);
sb487fs/ext2/super.cif (sb->s_blocksize != bh->b_size) {
sb488fs/ext2/super.csb->s_dev = 0;
sb489fs/ext2/super.cunlock_super (sb);
sb497fs/ext2/super.cif (sb->s_blocksize != sb->u.ext2_sb.s_frag_size) {
sb498fs/ext2/super.csb->s_dev = 0;
sb499fs/ext2/super.cunlock_super (sb);
sb502fs/ext2/super.csb->u.ext2_sb.s_frag_size, sb->s_blocksize);
sb506fs/ext2/super.csb->u.ext2_sb.s_groups_count = (es->s_blocks_count -
sb508fs/ext2/super.cEXT2_BLOCKS_PER_GROUP(sb) - 1) /
sb509fs/ext2/super.cEXT2_BLOCKS_PER_GROUP(sb);
sb511fs/ext2/super.csb->u.ext2_sb.s_group_desc[i] = NULL;
sb512fs/ext2/super.cbh_count = (sb->u.ext2_sb.s_groups_count + EXT2_DESC_PER_BLOCK(sb) - 1) /
sb513fs/ext2/super.cEXT2_DESC_PER_BLOCK(sb);
sb515fs/ext2/super.csb->s_dev = 0;
sb516fs/ext2/super.cunlock_super (sb);
sb522fs/ext2/super.csb->u.ext2_sb.s_group_desc[i] = bread (dev, logic_sb_block + i + 1,
sb523fs/ext2/super.csb->s_blocksize);
sb524fs/ext2/super.cif (!sb->u.ext2_sb.s_group_desc[i]) {
sb525fs/ext2/super.csb->s_dev = 0;
sb526fs/ext2/super.cunlock_super (sb);
sb528fs/ext2/super.cbrelse (sb->u.ext2_sb.s_group_desc[j]);
sb534fs/ext2/super.cif (!ext2_check_descriptors (sb)) {
sb535fs/ext2/super.csb->s_dev = 0;
sb536fs/ext2/super.cunlock_super (sb);
sb538fs/ext2/super.cbrelse (sb->u.ext2_sb.s_group_desc[j]);
sb544fs/ext2/super.csb->u.ext2_sb.s_inode_bitmap_number[i] = 0;
sb545fs/ext2/super.csb->u.ext2_sb.s_inode_bitmap[i] = NULL;
sb546fs/ext2/super.csb->u.ext2_sb.s_block_bitmap_number[i] = 0;
sb547fs/ext2/super.csb->u.ext2_sb.s_block_bitmap[i] = NULL;
sb549fs/ext2/super.csb->u.ext2_sb.s_loaded_inode_bitmaps = 0;
sb550fs/ext2/super.csb->u.ext2_sb.s_loaded_block_bitmaps = 0;
sb551fs/ext2/super.cunlock_super (sb);
sb555fs/ext2/super.csb->s_dev = dev;
sb556fs/ext2/super.csb->s_op = &ext2_sops;
sb557fs/ext2/super.cif (!(sb->s_mounted = iget (sb, EXT2_ROOT_INO))) {
sb558fs/ext2/super.csb->s_dev = 0;
sb560fs/ext2/super.cif (sb->u.ext2_sb.s_group_desc[i])
sb561fs/ext2/super.cbrelse (sb->u.ext2_sb.s_group_desc[i]);
sb569fs/ext2/super.csb->u.ext2_sb.s_group_desc[i]->b_dirt = 1;
sb570fs/ext2/super.csb->s_dirt = 1;
sb573fs/ext2/super.cext2_setup_super (sb, es);
sb574fs/ext2/super.creturn sb;
sb577fs/ext2/super.cstatic void ext2_commit_super (struct super_block * sb,
sb581fs/ext2/super.csb->u.ext2_sb.s_sbh->b_dirt = 1;
sb582fs/ext2/super.csb->s_dirt = 0;
sb596fs/ext2/super.cvoid ext2_write_super (struct super_block * sb)
sb600fs/ext2/super.cif (!(sb->s_flags & MS_RDONLY)) {
sb601fs/ext2/super.ces = sb->u.ext2_sb.s_es;
sb609fs/ext2/super.cext2_commit_super (sb, es);
sb611fs/ext2/super.csb->s_dirt = 0;
sb614fs/ext2/super.cint ext2_remount (struct super_block * sb, int * flags, char * data)
sb622fs/ext2/super.cset_opt (sb->u.ext2_sb.s_mount_opt, CHECK_NORMAL);
sb623fs/ext2/super.cparse_options (data, &tmp, &sb->u.ext2_sb.s_mount_opt);
sb625fs/ext2/super.ces = sb->u.ext2_sb.s_es;
sb626fs/ext2/super.cif ((*flags & MS_RDONLY) == (sb->s_flags & MS_RDONLY))
sb630fs/ext2/super.c!(sb->u.ext2_sb.s_mount_state & EXT2_VALID_FS))
sb636fs/ext2/super.ces->s_state = sb->u.ext2_sb.s_mount_state;
sb638fs/ext2/super.csb->u.ext2_sb.s_sbh->b_dirt = 1;
sb639fs/ext2/super.csb->s_dirt = 1;
sb640fs/ext2/super.cext2_commit_super (sb, es);
sb648fs/ext2/super.csb->u.ext2_sb.s_mount_state = es->s_state;
sb649fs/ext2/super.csb->s_flags &= ~MS_RDONLY;
sb650fs/ext2/super.cext2_setup_super (sb, es);
sb655fs/ext2/super.cvoid ext2_statfs (struct super_block * sb, struct statfs * buf)
sb660fs/ext2/super.cput_fs_long (sb->s_blocksize, &buf->f_bsize);
sb661fs/ext2/super.cput_fs_long (sb->u.ext2_sb.s_es->s_blocks_count, &buf->f_blocks);
sb662fs/ext2/super.ctmp = ext2_count_free_blocks (sb);
sb664fs/ext2/super.cif (tmp >= sb->u.ext2_sb.s_es->s_r_blocks_count)
sb665fs/ext2/super.cput_fs_long (tmp - sb->u.ext2_sb.s_es->s_r_blocks_count,
sb669fs/ext2/super.cput_fs_long (sb->u.ext2_sb.s_es->s_inodes_count, &buf->f_files);
sb670fs/ext2/super.cput_fs_long (ext2_count_free_inodes (sb), &buf->f_ffree);
sb421fs/inode.cstruct inode * iget(struct super_block * sb,int nr)
sb423fs/inode.creturn __iget(sb,nr,1);
sb426fs/inode.cstruct inode * __iget(struct super_block * sb, int nr, int crossmntp)
sb433fs/inode.cif (!sb)
sb435fs/inode.ch = hash(sb->s_dev, nr);
sb438fs/inode.cif (inode->i_dev == sb->s_dev && inode->i_ino == nr)
sb450fs/inode.cinode->i_sb = sb;
sb451fs/inode.cinode->i_dev = sb->s_dev;
sb453fs/inode.cinode->i_flags = sb->s_flags;
sb464fs/inode.cif (inode->i_dev != sb->s_dev || inode->i_ino != nr) {
sb42fs/isofs/inode.cvoid isofs_put_super(struct super_block *sb)
sb44fs/isofs/inode.clock_super(sb);
sb50fs/isofs/inode.csb->s_dev = 0;
sb51fs/isofs/inode.cunlock_super(sb);
sb309fs/isofs/inode.cvoid isofs_statfs (struct super_block *sb, struct statfs *buf)
sb313fs/isofs/inode.cput_fs_long(sb->u.isofs_sb.s_nzones, &buf->f_blocks);
sb316fs/isofs/inode.cput_fs_long(sb->u.isofs_sb.s_ninodes, &buf->f_files);
sb68fs/minix/bitmap.cvoid minix_free_block(struct super_block * sb, int block)
sb73fs/minix/bitmap.cif (!sb) {
sb77fs/minix/bitmap.cif (block < sb->u.minix_sb.s_firstdatazone ||
sb78fs/minix/bitmap.cblock >= sb->u.minix_sb.s_nzones) {
sb82fs/minix/bitmap.cbh = get_hash_table(sb->s_dev,block,BLOCK_SIZE);
sb86fs/minix/bitmap.czone = block - sb->u.minix_sb.s_firstdatazone + 1;
sb89fs/minix/bitmap.cbh = sb->u.minix_sb.s_zmap[zone];
sb95fs/minix/bitmap.cprintk("free_block (%04x:%d): bit already cleared\n",sb->s_dev,block);
sb100fs/minix/bitmap.cint minix_new_block(struct super_block * sb)
sb105fs/minix/bitmap.cif (!sb) {
sb112fs/minix/bitmap.cif ((bh=sb->u.minix_sb.s_zmap[i]) != NULL)
sb122fs/minix/bitmap.cj += i*8192 + sb->u.minix_sb.s_firstdatazone-1;
sb123fs/minix/bitmap.cif (j < sb->u.minix_sb.s_firstdatazone ||
sb124fs/minix/bitmap.cj >= sb->u.minix_sb.s_nzones)
sb126fs/minix/bitmap.cif (!(bh = getblk(sb->s_dev,j,BLOCK_SIZE))) {
sb137fs/minix/bitmap.cunsigned long minix_count_free_blocks(struct super_block *sb)
sb139fs/minix/bitmap.creturn (sb->u.minix_sb.s_nzones - count_used(sb->u.minix_sb.s_zmap,sb->u.minix_sb.s_zmap_blocks,sb->u.minix_sb.s_nzones))
sb140fs/minix/bitmap.c<< sb->u.minix_sb.s_log_zone_size;
sb183fs/minix/bitmap.cstruct super_block * sb;
sb190fs/minix/bitmap.csb = dir->i_sb;
sb191fs/minix/bitmap.cinode->i_sb = sb;
sb215fs/minix/bitmap.cinode->i_dev = sb->s_dev;
sb227fs/minix/bitmap.cunsigned long minix_count_free_inodes(struct super_block *sb)
sb229fs/minix/bitmap.creturn sb->u.minix_sb.s_ninodes - count_used(sb->u.minix_sb.s_imap,sb->u.minix_sb.s_imap_blocks,sb->u.minix_sb.s_ninodes);
sb28fs/minix/inode.cstatic void minix_commit_super (struct super_block * sb,
sb31fs/minix/inode.csb->u.minix_sb.s_sbh->b_dirt = 1;
sb32fs/minix/inode.csb->s_dirt = 0;
sb35fs/minix/inode.cvoid minix_write_super (struct super_block * sb)
sb39fs/minix/inode.cif (!(sb->s_flags & MS_RDONLY)) {
sb40fs/minix/inode.cms = sb->u.minix_sb.s_ms;
sb44fs/minix/inode.cminix_commit_super (sb, ms);
sb46fs/minix/inode.csb->s_dirt = 0;
sb50fs/minix/inode.cvoid minix_put_super(struct super_block *sb)
sb54fs/minix/inode.clock_super(sb);
sb55fs/minix/inode.cif (!(sb->s_flags & MS_RDONLY)) {
sb56fs/minix/inode.csb->u.minix_sb.s_ms->s_state = sb->u.minix_sb.s_mount_state;
sb57fs/minix/inode.csb->u.minix_sb.s_sbh->b_dirt = 1;
sb59fs/minix/inode.csb->s_dev = 0;
sb61fs/minix/inode.cbrelse(sb->u.minix_sb.s_imap[i]);
sb63fs/minix/inode.cbrelse(sb->u.minix_sb.s_zmap[i]);
sb64fs/minix/inode.cbrelse (sb->u.minix_sb.s_sbh);
sb65fs/minix/inode.cunlock_super(sb);
sb80fs/minix/inode.cint minix_remount (struct super_block * sb, int * flags, char * data)
sb84fs/minix/inode.cms = sb->u.minix_sb.s_ms;
sb85fs/minix/inode.cif ((*flags & MS_RDONLY) == (sb->s_flags & MS_RDONLY))
sb89fs/minix/inode.c!(sb->u.minix_sb.s_mount_state & MINIX_VALID_FS))
sb92fs/minix/inode.cms->s_state = sb->u.minix_sb.s_mount_state;
sb93fs/minix/inode.csb->u.minix_sb.s_sbh->b_dirt = 1;
sb94fs/minix/inode.csb->s_dirt = 1;
sb95fs/minix/inode.cminix_commit_super (sb, ms);
sb99fs/minix/inode.csb->u.minix_sb.s_mount_state = ms->s_state;
sb101fs/minix/inode.csb->u.minix_sb.s_sbh->b_dirt = 1;
sb102fs/minix/inode.csb->s_dirt = 1;
sb104fs/minix/inode.cif (!(sb->u.minix_sb.s_mount_state & MINIX_VALID_FS))
sb107fs/minix/inode.celse if ((sb->u.minix_sb.s_mount_state & MINIX_ERROR_FS))
sb212fs/minix/inode.cvoid minix_statfs(struct super_block *sb, struct statfs *buf)
sb218fs/minix/inode.ctmp = sb->u.minix_sb.s_nzones - sb->u.minix_sb.s_firstdatazone;
sb219fs/minix/inode.ctmp <<= sb->u.minix_sb.s_log_zone_size;
sb221fs/minix/inode.ctmp = minix_count_free_blocks(sb);
sb224fs/minix/inode.cput_fs_long(sb->u.minix_sb.s_ninodes, &buf->f_files);
sb225fs/minix/inode.cput_fs_long(minix_count_free_inodes(sb), &buf->f_ffree);
sb226fs/minix/inode.cput_fs_long(sb->u.minix_sb.s_namelen, &buf->f_namelen);
sb18fs/msdos/fat.cint fat_access(struct super_block *sb,int nr,int new_value)
sb25fs/msdos/fat.cif ((unsigned) (nr-2) >= MSDOS_SB(sb)->clusters) return 0;
sb26fs/msdos/fat.cif (MSDOS_SB(sb)->fat_bits == 16) first = last = nr*2;
sb31fs/msdos/fat.cif (!(bh = msdos_sread(sb->s_dev,MSDOS_SB(sb)->fat_start+(first >>
sb41fs/msdos/fat.cif (!(bh2 = msdos_sread(sb->s_dev,MSDOS_SB(sb)->fat_start+(last
sb48fs/msdos/fat.cif (MSDOS_SB(sb)->fat_bits == 16) {
sb63fs/msdos/fat.cif (MSDOS_SB(sb)->fat_bits == 16)
sb78fs/msdos/fat.cfor (copy = 1; copy < MSDOS_SB(sb)->fats; copy++) {
sb79fs/msdos/fat.cif (!(c_bh = msdos_sread(sb->s_dev,MSDOS_SB(sb)->
sb80fs/msdos/fat.cfat_start+(first >> SECTOR_BITS)+MSDOS_SB(sb)->
sb85fs/msdos/fat.cif (!(c_bh2 = msdos_sread(sb->s_dev,
sb86fs/msdos/fat.cMSDOS_SB(sb)->fat_start+(first >>
sb87fs/msdos/fat.cSECTOR_BITS)+MSDOS_SB(sb)->fat_length*copy
sb240fs/msdos/fat.cstruct msdos_sb_info *sb;
sb243fs/msdos/fat.csb = MSDOS_SB(inode->i_sb);
sb246fs/msdos/fat.cif (sector >= sb->dir_entries >> MSDOS_DPS_BITS) return 0;
sb247fs/msdos/fat.creturn sector+sb->dir_start;
sb249fs/msdos/fat.ccluster = sector/sb->cluster_size;
sb250fs/msdos/fat.coffset = sector % sb->cluster_size;
sb252fs/msdos/fat.creturn (cluster-2)*sb->cluster_size+sb->data_start+offset;
sb22fs/msdos/inode.cstruct super_block *sb;
sb31fs/msdos/inode.csb = inode->i_sb;
sb38fs/msdos/inode.cfs_panic(sb,"...");
sb47fs/msdos/inode.cvoid msdos_put_super(struct super_block *sb)
sb49fs/msdos/inode.ccache_inval_dev(sb->s_dev);
sb50fs/msdos/inode.clock_super(sb);
sb51fs/msdos/inode.csb->s_dev = 0;
sb52fs/msdos/inode.cunlock_super(sb);
sb262fs/msdos/inode.cvoid msdos_statfs(struct super_block *sb,struct statfs *buf)
sb266fs/msdos/inode.cput_fs_long(sb->s_magic,&buf->f_type);
sb267fs/msdos/inode.cput_fs_long(MSDOS_SB(sb)->cluster_size*SECTOR_SIZE,&buf->f_bsize);
sb268fs/msdos/inode.cput_fs_long(MSDOS_SB(sb)->clusters,&buf->f_blocks);
sb269fs/msdos/inode.clock_fat(sb);
sb270fs/msdos/inode.cif (MSDOS_SB(sb)->free_clusters != -1)
sb271fs/msdos/inode.cfree = MSDOS_SB(sb)->free_clusters;
sb274fs/msdos/inode.cfor (nr = 2; nr < MSDOS_SB(sb)->clusters+2; nr++)
sb275fs/msdos/inode.cif (!fat_access(sb,nr,-1)) free++;
sb276fs/msdos/inode.cMSDOS_SB(sb)->free_clusters = free;
sb278fs/msdos/inode.cunlock_fat(sb);
sb289fs/msdos/inode.cstruct msdos_sb_info *sb;
sb292fs/msdos/inode.csb = MSDOS_SB(inode->i_sb);
sb293fs/msdos/inode.cif ((sb->cluster_size & 1) || (sb->data_start & 1)) return 0;
sb295fs/msdos/inode.cif (sb->dir_start & 1) return 0;
sb296fs/msdos/inode.creturn (sb->dir_start >> 1)+block;
sb298fs/msdos/inode.ccluster = (block*2)/sb->cluster_size;
sb299fs/msdos/inode.coffset = (block*2) % sb->cluster_size;
sb301fs/msdos/inode.creturn ((cluster-2)*sb->cluster_size+sb->data_start+offset) >> 1;
sb90fs/msdos/misc.cvoid lock_fat(struct super_block *sb)
sb92fs/msdos/misc.cwhile (MSDOS_SB(sb)->fat_lock) sleep_on(&MSDOS_SB(sb)->fat_wait);
sb93fs/msdos/misc.cMSDOS_SB(sb)->fat_lock = 1;
sb97fs/msdos/misc.cvoid unlock_fat(struct super_block *sb)
sb99fs/msdos/misc.cMSDOS_SB(sb)->fat_lock = 0;
sb100fs/msdos/misc.cwake_up(&MSDOS_SB(sb)->fat_wait);
sb330fs/msdos/misc.cinode = iget(sb,sector*MSDOS_DPS+entry); \
sb346fs/msdos/misc.cstatic int raw_scan_sector(struct super_block *sb,int sector,char *name,
sb355fs/msdos/misc.cif (!(bh = msdos_sread(sb->s_dev,sector,(void **) &data))) return -EIO;
sb386fs/msdos/misc.cstatic int raw_scan_root(struct super_block *sb,char *name,int *number,int *ino,
sb391fs/msdos/misc.cfor (count = 0; count < MSDOS_SB(sb)->dir_entries/MSDOS_DPS; count++) {
sb392fs/msdos/misc.cif ((cluster = raw_scan_sector(sb,MSDOS_SB(sb)->dir_start+count,
sb404fs/msdos/misc.cstatic int raw_scan_nonroot(struct super_block *sb,int start,char *name,
sb414fs/msdos/misc.cfor (count = 0; count < MSDOS_SB(sb)->cluster_size; count++) {
sb415fs/msdos/misc.cif ((cluster = raw_scan_sector(sb,(start-2)*
sb416fs/msdos/misc.cMSDOS_SB(sb)->cluster_size+MSDOS_SB(sb)->data_start+
sb420fs/msdos/misc.cif (!(start = fat_access(sb,start,-1))) {
sb421fs/msdos/misc.cfs_panic(sb,"FAT error");
sb440fs/msdos/misc.cstatic int raw_scan(struct super_block *sb,int start,char *name,int *number,
sb444fs/msdos/misc.creturn raw_scan_nonroot(sb,start,name,number,ino,res_bh,res_de);
sb445fs/msdos/misc.celse return raw_scan_root(sb,name,number,ino,res_bh,res_de);
sb226fs/msdos/namei.cstatic void dump_fat(struct super_block *sb,int start)
sb231fs/msdos/namei.cstart = fat_access(sb,start,-1);
sb97fs/namei.cstruct super_block * sb;
sb109fs/namei.c} else if ((sb = dir->i_sb) && (dir == sb->s_mounted)) {
sb110fs/namei.csb = dir->i_sb;
sb112fs/namei.cdir = sb->s_covered;
sb44fs/nfs/inode.cvoid nfs_put_super(struct super_block *sb)
sb47fs/nfs/inode.cclose_fp(sb->u.nfs_sb.s_server.file, 0);
sb48fs/nfs/inode.clock_super(sb);
sb49fs/nfs/inode.csb->s_dev = 0;
sb50fs/nfs/inode.cunlock_super(sb);
sb61fs/nfs/inode.cstruct super_block *nfs_read_super(struct super_block *sb, void *raw_data,
sb68fs/nfs/inode.cdev_t dev = sb->s_dev;
sb72fs/nfs/inode.csb->s_dev = 0;
sb82fs/nfs/inode.csb->s_dev = 0;
sb87fs/nfs/inode.csb->s_dev = 0;
sb91fs/nfs/inode.clock_super(sb);
sb92fs/nfs/inode.csb->s_blocksize = 1024; /* XXX */
sb93fs/nfs/inode.csb->s_blocksize_bits = 10;
sb94fs/nfs/inode.csb->s_magic = NFS_SUPER_MAGIC;
sb95fs/nfs/inode.csb->s_dev = dev;
sb96fs/nfs/inode.csb->s_op = &nfs_sops;
sb97fs/nfs/inode.cserver = &sb->u.nfs_sb.s_server;
sb119fs/nfs/inode.csb->u.nfs_sb.s_root = data->root;
sb120fs/nfs/inode.cunlock_super(sb);
sb121fs/nfs/inode.cif (!(sb->s_mounted = nfs_fhget(sb, &data->root, NULL))) {
sb122fs/nfs/inode.csb->s_dev = 0;
sb126fs/nfs/inode.creturn sb;
sb129fs/nfs/inode.cvoid nfs_statfs(struct super_block *sb, struct statfs *buf)
sb135fs/nfs/inode.cerror = nfs_proc_statfs(&sb->u.nfs_sb.s_server, &sb->u.nfs_sb.s_root,
sb161fs/nfs/inode.cstruct inode *nfs_fhget(struct super_block *sb, struct nfs_fh *fhandle,
sb168fs/nfs/inode.cif (!sb) {
sb173fs/nfs/inode.cerror = nfs_proc_getattr(&sb->u.nfs_sb.s_server, fhandle,
sb181fs/nfs/inode.cif (!(inode = iget(sb, fattr->fileid))) {
sb185fs/nfs/inode.cif (inode->i_dev == sb->s_dev) {
sb58fs/proc/fd.cstruct super_block * sb;
sb68fs/proc/fd.csb = dir->i_sb;
sb79fs/proc/fd.cif (!(*result = iget(sb,(pid << 16)+2))) {
sb121fs/proc/fd.cif (!(*result = iget(sb,ino)))
sb26fs/proc/inode.cvoid proc_put_super(struct super_block *sb)
sb28fs/proc/inode.clock_super(sb);
sb29fs/proc/inode.csb->s_dev = 0;
sb30fs/proc/inode.cunlock_super(sb);
sb61fs/proc/inode.cvoid proc_statfs(struct super_block *sb, struct statfs *buf)
sb39fs/super.cstatic int do_remount_sb(struct super_block *sb, int flags, char * data);
sb56fs/super.cvoid __wait_on_super(struct super_block * sb)
sb60fs/super.cadd_wait_queue(&sb->s_wait, &wait);
sb63fs/super.cif (sb->s_lock) {
sb67fs/super.cremove_wait_queue(&sb->s_wait, &wait);
sb73fs/super.cstruct super_block * sb;
sb75fs/super.cfor (sb = super_blocks + 0 ; sb < super_blocks + NR_SUPER ; sb++) {
sb76fs/super.cif (!sb->s_dev)
sb78fs/super.cif (dev && sb->s_dev != dev)
sb80fs/super.cwait_on_super(sb);
sb81fs/super.cif (!sb->s_dev || !sb->s_dirt)
sb83fs/super.cif (dev && (dev != sb->s_dev))
sb85fs/super.cif (sb->s_op && sb->s_op->write_super)
sb86fs/super.csb->s_op->write_super(sb);
sb110fs/super.cstruct super_block * sb;
sb117fs/super.cif (!(sb = get_super(dev)))
sb119fs/super.cif (sb->s_covered) {
sb124fs/super.cif (sb->s_op && sb->s_op->put_super)
sb125fs/super.csb->s_op->put_super(sb);
sb204fs/super.cstruct super_block * sb;
sb210fs/super.cif (!(sb=get_super(dev)))
sb212fs/super.cif (!(sb->s_flags & MS_RDONLY)) {
sb214fs/super.cretval = do_remount_sb(sb, MS_RDONLY, 0);
sb220fs/super.cif (!(sb=get_super(dev)) || !(sb->s_covered))
sb222fs/super.cif (!sb->s_covered->i_mount)
sb225fs/super.cif (!fs_may_umount(dev, sb->s_mounted))
sb227fs/super.csb->s_covered->i_mount = NULL;
sb228fs/super.ciput(sb->s_covered);
sb229fs/super.csb->s_covered = NULL;
sb230fs/super.ciput(sb->s_mounted);
sb231fs/super.csb->s_mounted = NULL;
sb232fs/super.cif (sb->s_op && sb->s_op->write_super && sb->s_dirt)
sb233fs/super.csb->s_op->write_super(sb);
sb313fs/super.cstruct super_block * sb;
sb331fs/super.csb = read_super(dev,type,flags,data,0);
sb332fs/super.cif (!sb || sb->s_covered) {
sb336fs/super.csb->s_covered = dir_i;
sb337fs/super.cdir_i->i_mount = sb->s_mounted;
sb348fs/super.cstatic int do_remount_sb(struct super_block *sb, int flags, char *data)
sb353fs/super.cif ((flags & MS_RDONLY) && !(sb->s_flags & MS_RDONLY))
sb354fs/super.cif (!fs_may_remount_ro(sb->s_dev))
sb356fs/super.cif (sb->s_op && sb->s_op->remount_fs) {
sb357fs/super.cretval = sb->s_op->remount_fs(sb, &flags, data);
sb361fs/super.csb->s_flags = (sb->s_flags & ~MS_RMT_MASK) |
sb510fs/super.cstruct super_block * sb;
sb522fs/super.csb = read_super(ROOT_DEV,fs_type->name,root_mountflags,NULL,1);
sb523fs/super.cif (sb) {
sb524fs/super.cinode = sb->s_mounted;
sb526fs/super.csb->s_covered = inode;
sb527fs/super.csb->s_flags = root_mountflags;
sb532fs/super.c(sb->s_flags & MS_RDONLY) ? " readonly" : "");
sb42fs/sysv/balloc.cvoid sysv_free_block(struct super_block * sb, unsigned int block)
sb47fs/sysv/balloc.cif (!sb) {
sb51fs/sysv/balloc.cif (block < sb->sv_firstdatazone || block >= sb->sv_nzones) {
sb55fs/sysv/balloc.clock_super(sb);
sb56fs/sysv/balloc.cif (*sb->sv_sb_flc_count > sb->sv_flc_size) {
sb58fs/sysv/balloc.cunlock_super(sb);
sb64fs/sysv/balloc.cif (*sb->sv_sb_flc_count == sb->sv_flc_size) {
sb68fs/sysv/balloc.cif (sb->sv_block_size_ratio_bits > 0) /* block_size < BLOCK_SIZE ? */
sb69fs/sysv/balloc.cbh = bread(sb->s_dev, (block >> sb->sv_block_size_ratio_bits) + sb->sv_block_base, BLOCK_SIZE);
sb71fs/sysv/balloc.cbh = getblk(sb->s_dev, (block >> sb->sv_block_size_ratio_bits) + sb->sv_block_base, BLOCK_SIZE);
sb74fs/sysv/balloc.cunlock_super(sb);
sb77fs/sysv/balloc.cbh_data = bh->b_data + ((block & sb->sv_block_size_ratio_1) << sb->sv_block_size_bits);
sb78fs/sysv/balloc.cswitch (sb->sv_type) {
sb97fs/sysv/balloc.c*flc_count = *sb->sv_sb_flc_count; /* = sb->sv_flc_size */
sb98fs/sysv/balloc.cmemcpy(flc_blocks, sb->sv_sb_flc_blocks, *flc_count * sizeof(sysv_zone_t));
sb102fs/sysv/balloc.c*sb->sv_sb_flc_count = 0;
sb107fs/sysv/balloc.cif (*sb->sv_sb_flc_count == 0) { /* Applies only to Coherent FS */
sb108fs/sysv/balloc.cif (sb->sv_block_size_ratio_bits > 0) /* block_size < BLOCK_SIZE ? */
sb109fs/sysv/balloc.cbh = bread(sb->s_dev, (block >> sb->sv_block_size_ratio_bits) + sb->sv_block_base, BLOCK_SIZE);
sb111fs/sysv/balloc.cbh = getblk(sb->s_dev, (block >> sb->sv_block_size_ratio_bits) + sb->sv_block_base, BLOCK_SIZE);
sb114fs/sysv/balloc.cunlock_super(sb);
sb117fs/sysv/balloc.cbh_data = bh->b_data + ((block & sb->sv_block_size_ratio_1) << sb->sv_block_size_bits);
sb118fs/sysv/balloc.cmemzero(bh_data, sb->sv_block_size);
sb125fs/sysv/balloc.cif (sb->sv_block_size_ratio_bits == 0) { /* block_size == BLOCK_SIZE ? */
sb127fs/sysv/balloc.cbh = get_hash_table(sb->s_dev, (block >> sb->sv_block_size_ratio_bits) + sb->sv_block_base, BLOCK_SIZE);
sb133fs/sysv/balloc.cif (sb->sv_convert)
sb135fs/sysv/balloc.csb->sv_sb_flc_blocks[(*sb->sv_sb_flc_count)++] = block;
sb136fs/sysv/balloc.cif (sb->sv_convert)
sb137fs/sysv/balloc.c*sb->sv_sb_total_free_blocks =
sb138fs/sysv/balloc.cto_coh_ulong(from_coh_ulong(*sb->sv_sb_total_free_blocks) + 1);
sb140fs/sysv/balloc.c*sb->sv_sb_total_free_blocks = *sb->sv_sb_total_free_blocks + 1;
sb141fs/sysv/balloc.csb->sv_bh->b_dirt = 1; /* super-block has been modified */
sb142fs/sysv/balloc.csb->s_dirt = 1; /* and needs time stamp */
sb143fs/sysv/balloc.cunlock_super(sb);
sb146fs/sysv/balloc.cint sysv_new_block(struct super_block * sb)
sb152fs/sysv/balloc.cif (!sb) {
sb156fs/sysv/balloc.clock_super(sb);
sb157fs/sysv/balloc.cif (*sb->sv_sb_flc_count == 0) { /* Applies only to Coherent FS */
sb158fs/sysv/balloc.cunlock_super(sb);
sb161fs/sysv/balloc.cblock = sb->sv_sb_flc_blocks[(*sb->sv_sb_flc_count)-1];
sb162fs/sysv/balloc.cif (sb->sv_convert)
sb165fs/sysv/balloc.cunlock_super(sb);
sb168fs/sysv/balloc.c(*sb->sv_sb_flc_count)--;
sb169fs/sysv/balloc.cif (block < sb->sv_firstdatazone || block >= sb->sv_nzones) {
sb171fs/sysv/balloc.cunlock_super(sb);
sb174fs/sysv/balloc.cif (*sb->sv_sb_flc_count == 0) { /* the last block continues the free list */
sb178fs/sysv/balloc.cif (!(bh = sysv_bread(sb, sb->s_dev, block, &bh_data))) {
sb181fs/sysv/balloc.c(*sb->sv_sb_flc_count)++;
sb182fs/sysv/balloc.cunlock_super(sb);
sb185fs/sysv/balloc.cswitch (sb->sv_type) {
sb204fs/sysv/balloc.cif (*flc_count > sb->sv_flc_size) {
sb207fs/sysv/balloc.cunlock_super(sb);
sb210fs/sysv/balloc.c*sb->sv_sb_flc_count = *flc_count;
sb211fs/sysv/balloc.cmemcpy(sb->sv_sb_flc_blocks, flc_blocks, *flc_count * sizeof(sysv_zone_t));
sb215fs/sysv/balloc.cif (sb->sv_block_size_ratio_bits > 0) /* block_size < BLOCK_SIZE ? */
sb216fs/sysv/balloc.cbh = bread(sb->s_dev, (block >> sb->sv_block_size_ratio_bits) + sb->sv_block_base, BLOCK_SIZE);
sb218fs/sysv/balloc.cbh = getblk(sb->s_dev, (block >> sb->sv_block_size_ratio_bits) + sb->sv_block_base, BLOCK_SIZE);
sb221fs/sysv/balloc.cunlock_super(sb);
sb224fs/sysv/balloc.cbh_data = bh->b_data + ((block & sb->sv_block_size_ratio_1) << sb->sv_block_size_bits);
sb225fs/sysv/balloc.cif (sb->sv_block_size_ratio_bits == 0) /* block_size == BLOCK_SIZE ? */
sb228fs/sysv/balloc.cunlock_super(sb);
sb231fs/sysv/balloc.cmemzero(bh_data,sb->sv_block_size);
sb235fs/sysv/balloc.cif (sb->sv_convert)
sb236fs/sysv/balloc.c*sb->sv_sb_total_free_blocks =
sb237fs/sysv/balloc.cto_coh_ulong(from_coh_ulong(*sb->sv_sb_total_free_blocks) - 1);
sb239fs/sysv/balloc.c*sb->sv_sb_total_free_blocks = *sb->sv_sb_total_free_blocks - 1;
sb240fs/sysv/balloc.csb->sv_bh->b_dirt = 1; /* super-block has been modified */
sb241fs/sysv/balloc.csb->s_dirt = 1; /* and needs time stamp */
sb242fs/sysv/balloc.cunlock_super(sb);
sb246fs/sysv/balloc.cunsigned long sysv_count_free_blocks(struct super_block * sb)
sb257fs/sysv/balloc.clock_super(sb);
sb258fs/sysv/balloc.cif (*sb->sv_sb_flc_count > 0) {
sb259fs/sysv/balloc.cfor (i = *sb->sv_sb_flc_count ; /* i > 0 */ ; ) {
sb260fs/sysv/balloc.cblock = sb->sv_sb_flc_blocks[--i];
sb261fs/sysv/balloc.cif (sb->sv_convert)
sb274fs/sysv/balloc.cif (block < sb->sv_firstdatazone || block >= sb->sv_nzones) {
sb278fs/sysv/balloc.cif (!(bh = sysv_bread(sb, sb->s_dev, block, &bh_data))) {
sb282fs/sysv/balloc.cswitch (sb->sv_type) {
sb301fs/sysv/balloc.cif (*flc_count > sb->sv_flc_size) {
sb312fs/sysv/balloc.cif (sb->sv_convert)
sb327fs/sysv/balloc.cold_count = *sb->sv_sb_total_free_blocks;
sb328fs/sysv/balloc.cif (sb->sv_convert)
sb332fs/sysv/balloc.cif (!(sb->s_flags & MS_RDONLY)) {
sb333fs/sysv/balloc.c*sb->sv_sb_total_free_blocks = (sb->sv_convert ? to_coh_ulong(count) : count);
sb334fs/sysv/balloc.csb->sv_bh->b_dirt = 1; /* super-block has been modified */
sb335fs/sysv/balloc.csb->s_dirt = 1; /* and needs time stamp */
sb338fs/sysv/balloc.cunlock_super(sb);
sb343fs/sysv/balloc.ccount = *sb->sv_sb_total_free_blocks;
sb344fs/sysv/balloc.cif (sb->sv_convert)
sb67fs/sysv/dir.cstruct super_block * sb;
sb74fs/sysv/dir.cif (!inode || !(sb = inode->i_sb) || !S_ISDIR(inode->i_mode))
sb79fs/sysv/dir.coffset = filp->f_pos & sb->sv_block_size_1;
sb80fs/sysv/dir.cbh = sysv_file_bread(inode, filp->f_pos >> sb->sv_block_size_bits, 0, &bh_data);
sb82fs/sysv/dir.cfilp->f_pos += sb->sv_block_size - offset;
sb85fs/sysv/dir.cwhile (offset < sb->sv_block_size && filp->f_pos < inode->i_size) {
sb111fs/sysv/file.cstruct super_block * sb = inode->i_sb;
sb140fs/sysv/file.cblock = offset >> sb->sv_block_size_bits;
sb141fs/sysv/file.coffset &= sb->sv_block_size_1;
sb142fs/sysv/file.csize = (size + sb->sv_block_size_1) >> sb->sv_block_size_bits;
sb143fs/sysv/file.cblocks = (left + offset + sb->sv_block_size_1) >> sb->sv_block_size_bits;
sb146fs/sysv/file.cblocks += read_ahead[MAJOR(inode->i_dev)] >> (sb->sv_block_size_bits - 9);
sb173fs/sysv/file.cif (sb->sv_block_size_ratio_bits > 0) /* block_size < BLOCK_SIZE ? */
sb207fs/sysv/file.cif (left < sb->sv_block_size - offset)
sb210fs/sysv/file.cchars = sb->sv_block_size - offset;
sb244fs/sysv/file.cstruct super_block * sb = inode->i_sb;
sb266fs/sysv/file.cif (sb->sv_block_size_ratio_bits > 0) /* block_size < BLOCK_SIZE ? */
sb274fs/sysv/file.cbh = sysv_getblk (inode, pos >> sb->sv_block_size_bits, 1, &bh_data);
sb280fs/sysv/file.cc = sb->sv_block_size - (pos & sb->sv_block_size_1);
sb294fs/sysv/file.cp = (pos & sb->sv_block_size_1) + bh_data;
sb310fs/sysv/file.cif (sb->sv_block_size_ratio_bits > 0) /* block_size < BLOCK_SIZE ? */
sb33fs/sysv/fsync.cstruct super_block * sb;
sb40fs/sysv/fsync.csb = inode->i_sb;
sb41fs/sysv/fsync.cbh = get_hash_table(inode->i_dev, (block >> sb->sv_block_size_ratio_bits) + sb->sv_block_base, BLOCK_SIZE);
sb110fs/sysv/fsync.cstruct super_block * sb;
sb116fs/sysv/fsync.csb = inode->i_sb;
sb117fs/sysv/fsync.cfor (i = 0; i < sb->sv_ind_per_block; i++) {
sb119fs/sysv/fsync.c((unsigned long *) ind_bh_data) + i, sb->sv_convert,
sb137fs/sysv/fsync.cstruct super_block * sb;
sb143fs/sysv/fsync.csb = inode->i_sb;
sb144fs/sysv/fsync.cfor (i = 0; i < sb->sv_ind_per_block; i++) {
sb146fs/sysv/fsync.c((unsigned long *) dind_bh_data) + i, sb->sv_convert,
sb164fs/sysv/fsync.cstruct super_block * sb;
sb170fs/sysv/fsync.csb = inode->i_sb;
sb171fs/sysv/fsync.cfor (i = 0; i < sb->sv_ind_per_block; i++) {
sb173fs/sysv/fsync.c((unsigned long *) tind_bh_data) + i, sb->sv_convert,
sb38fs/sysv/ialloc.cstruct super_block * sb;
sb58fs/sysv/ialloc.cif (!(sb = inode->i_sb)) {
sb63fs/sysv/ialloc.cif (ino <= SYSV_ROOT_INO || ino > sb->sv_ninodes) {
sb67fs/sysv/ialloc.cif (!(bh = sysv_bread(sb, inode->i_dev, sb->sv_firstinodezone + ((ino-1) >> sb->sv_inodes_per_block_bits), &bh_data))) {
sb72fs/sysv/ialloc.craw_inode = (struct sysv_inode *) bh_data + ((ino-1) & sb->sv_inodes_per_block_1);
sb73fs/sysv/ialloc.clock_super(sb);
sb74fs/sysv/ialloc.cif (*sb->sv_sb_fic_count < sb->sv_fic_size)
sb75fs/sysv/ialloc.csb->sv_sb_fic_inodes[(*sb->sv_sb_fic_count)++] = ino;
sb76fs/sysv/ialloc.c(*sb->sv_sb_total_free_inodes)++;
sb77fs/sysv/ialloc.csb->sv_bh->b_dirt = 1; /* super-block has been modified */
sb78fs/sysv/ialloc.csb->s_dirt = 1; /* and needs time stamp */
sb81fs/sysv/ialloc.cunlock_super(sb);
sb89fs/sysv/ialloc.cstruct super_block * sb;
sb97fs/sysv/ialloc.csb = dir->i_sb;
sb98fs/sysv/ialloc.cinode->i_sb = sb;
sb100fs/sysv/ialloc.clock_super(sb);    /* protect against task switches */
sb101fs/sysv/ialloc.cif ((*sb->sv_sb_fic_count == 0)
sb102fs/sysv/ialloc.c|| (sb->sv_sb_fic_inodes[(*sb->sv_sb_fic_count)-1] == 0) /* Applies only to SystemV2 FS */
sb111fs/sysv/ialloc.cfor (i = 0, ino = SYSV_ROOT_INO+1, block = sb->sv_firstinodezone, j = SYSV_ROOT_INO ; i < sb->sv_fic_size && block < sb->sv_firstdatazone ; block++, j = 0) {
sb112fs/sysv/ialloc.cif (!(bh = sysv_bread(sb, sb->s_dev, block, &bh_data))) {
sb118fs/sysv/ialloc.cfor (; j < sb->sv_inodes_per_block && i < sb->sv_fic_size; ino++, j++, raw_inode++) {
sb120fs/sysv/ialloc.csb->sv_sb_fic_inodes[i++] = ino;
sb126fs/sysv/ialloc.cunlock_super(sb);
sb129fs/sysv/ialloc.c*sb->sv_sb_fic_count = i;
sb132fs/sysv/ialloc.cino = sb->sv_sb_fic_inodes[--(*sb->sv_sb_fic_count)];
sb133fs/sysv/ialloc.csb->sv_bh->b_dirt = 1; /* super-block has been modified */
sb134fs/sysv/ialloc.csb->s_dirt = 1; /* and needs time stamp */
sb137fs/sysv/ialloc.cinode->i_dev = sb->s_dev;
sb154fs/sysv/ialloc.c(*sb->sv_sb_total_free_inodes)--;
sb155fs/sysv/ialloc.csb->sv_bh->b_dirt = 1; /* super-block has been modified again */
sb156fs/sysv/ialloc.csb->s_dirt = 1; /* and needs time stamp again */
sb157fs/sysv/ialloc.cunlock_super(sb);
sb161fs/sysv/ialloc.cunsigned long sysv_count_free_inodes(struct super_block * sb)
sb171fs/sysv/ialloc.clock_super(sb);
sb178fs/sysv/ialloc.cfor (block = sb->sv_firstinodezone, j = SYSV_ROOT_INO ; block < sb->sv_firstdatazone ; block++, j = 0) {
sb179fs/sysv/ialloc.cif (!(bh = sysv_bread(sb, sb->s_dev, block, &bh_data))) {
sb185fs/sysv/ialloc.cfor (; j < sb->sv_inodes_per_block ; j++, raw_inode++)
sb190fs/sysv/ialloc.cif (count != *sb->sv_sb_total_free_inodes) {
sb191fs/sysv/ialloc.cprintk("sysv_count_free_inodes: free inode count was %d, correcting to %d\n",(short)(*sb->sv_sb_total_free_inodes),count);
sb192fs/sysv/ialloc.cif (!(sb->s_flags & MS_RDONLY)) {
sb193fs/sysv/ialloc.c*sb->sv_sb_total_free_inodes = count;
sb194fs/sysv/ialloc.csb->sv_bh->b_dirt = 1; /* super-block has been modified */
sb195fs/sysv/ialloc.csb->s_dirt = 1; /* and needs time stamp */
sb198fs/sysv/ialloc.cunlock_super(sb);
sb201fs/sysv/ialloc.creturn *sb->sv_sb_total_free_inodes;
sb78fs/sysv/inode.cstatic void detected_bs512 (struct super_block *sb)
sb80fs/sysv/inode.csb->sv_block_size = 512;
sb81fs/sysv/inode.csb->sv_block_size_1 = 512-1;
sb82fs/sysv/inode.csb->sv_block_size_bits = 9;
sb83fs/sysv/inode.csb->sv_block_size_ratio = 2;
sb84fs/sysv/inode.csb->sv_block_size_ratio_1 = 2-1;
sb85fs/sysv/inode.csb->sv_block_size_ratio_bits = 1;
sb86fs/sysv/inode.csb->sv_inodes_per_block = 512/64;
sb87fs/sysv/inode.csb->sv_inodes_per_block_1 = 512/64-1;
sb88fs/sysv/inode.csb->sv_inodes_per_block_bits = 9-6;
sb89fs/sysv/inode.csb->sv_toobig_block = 10 + 
sb90fs/sysv/inode.c(sb->sv_ind_per_block = 512/4) +
sb91fs/sysv/inode.c(sb->sv_ind_per_block_2 = (512/4)*(512/4)) +
sb92fs/sysv/inode.c(sb->sv_ind_per_block_3 = (512/4)*(512/4)*(512/4));
sb93fs/sysv/inode.csb->sv_ind_per_block_1 = 512/4-1;
sb94fs/sysv/inode.csb->sv_ind_per_block_2_1 = (512/4)*(512/4)-1;
sb95fs/sysv/inode.csb->sv_ind_per_block_2_bits = 2 *
sb96fs/sysv/inode.c(sb->sv_ind_per_block_bits = 9-2);
sb99fs/sysv/inode.cstatic void detected_bs1024 (struct super_block *sb)
sb101fs/sysv/inode.csb->sv_block_size = 1024;
sb102fs/sysv/inode.csb->sv_block_size_1 = 1024-1;
sb103fs/sysv/inode.csb->sv_block_size_bits = 10;
sb104fs/sysv/inode.csb->sv_block_size_ratio = 1;
sb105fs/sysv/inode.csb->sv_block_size_ratio_1 = 1-1;
sb106fs/sysv/inode.csb->sv_block_size_ratio_bits = 0;
sb107fs/sysv/inode.csb->sv_inodes_per_block = 1024/64;
sb108fs/sysv/inode.csb->sv_inodes_per_block_1 = 1024/64-1;
sb109fs/sysv/inode.csb->sv_inodes_per_block_bits = 10-6;
sb110fs/sysv/inode.csb->sv_toobig_block = 10 + 
sb111fs/sysv/inode.c(sb->sv_ind_per_block = 1024/4) +
sb112fs/sysv/inode.c(sb->sv_ind_per_block_2 = (1024/4)*(1024/4)) +
sb113fs/sysv/inode.c(sb->sv_ind_per_block_3 = (1024/4)*(1024/4)*(1024/4));
sb114fs/sysv/inode.csb->sv_ind_per_block_1 = 1024/4-1;
sb115fs/sysv/inode.csb->sv_ind_per_block_2_1 = (1024/4)*(1024/4)-1;
sb116fs/sysv/inode.csb->sv_ind_per_block_2_bits = 2 *
sb117fs/sysv/inode.c(sb->sv_ind_per_block_bits = 10-2);
sb120fs/sysv/inode.cstatic const char* detect_xenix (struct super_block *sb, struct buffer_head *bh)
sb127fs/sysv/inode.csb->sv_type = FSTYPE_XENIX;
sb128fs/sysv/inode.csb->sv_convert = 0;
sb129fs/sysv/inode.csb->sv_kludge_symlinks = 1;
sb130fs/sysv/inode.csb->sv_truncate = 1;
sb131fs/sysv/inode.csb->sv_link_max = XENIX_LINK_MAX;
sb132fs/sysv/inode.csb->sv_fic_size = XENIX_NICINOD;
sb133fs/sysv/inode.csb->sv_flc_size = XENIX_NICFREE;
sb134fs/sysv/inode.csb->sv_bh = bh;
sb135fs/sysv/inode.csb->sv_sbd = (char *) sbd;
sb136fs/sysv/inode.csb->sv_sb_fic_count = &sbd->s_ninode;
sb137fs/sysv/inode.csb->sv_sb_fic_inodes = &sbd->s_inode[0];
sb138fs/sysv/inode.csb->sv_sb_total_free_inodes = &sbd->s_tinode;
sb139fs/sysv/inode.csb->sv_sb_flc_count = &sbd->s_nfree;
sb140fs/sysv/inode.csb->sv_sb_flc_blocks = &sbd->s_free[0];
sb141fs/sysv/inode.csb->sv_sb_total_free_blocks = &sbd->s_tfree;
sb142fs/sysv/inode.csb->sv_sb_time = &sbd->s_time;
sb143fs/sysv/inode.csb->sv_block_base = 0;
sb144fs/sysv/inode.csb->sv_firstinodezone = 2;
sb145fs/sysv/inode.csb->sv_firstdatazone = sbd->s_isize;
sb146fs/sysv/inode.csb->sv_nzones = sbd->s_fsize;
sb147fs/sysv/inode.csb->sv_ndatazones = sb->sv_nzones - sb->sv_firstdatazone;
sb149fs/sysv/inode.ccase 1: detected_bs512(sb); break;
sb150fs/sysv/inode.ccase 2: detected_bs1024(sb); break;
sb156fs/sysv/inode.cstatic const char* detect_sysv4 (struct super_block *sb, struct buffer_head *bh)
sb165fs/sysv/inode.csb->sv_type = FSTYPE_SYSV4;
sb166fs/sysv/inode.csb->sv_convert = 0;
sb167fs/sysv/inode.csb->sv_kludge_symlinks = 0; /* ?? */
sb168fs/sysv/inode.csb->sv_truncate = 1;
sb169fs/sysv/inode.csb->sv_link_max = SYSV_LINK_MAX;
sb170fs/sysv/inode.csb->sv_fic_size = SYSV_NICINOD;
sb171fs/sysv/inode.csb->sv_flc_size = SYSV_NICFREE;
sb172fs/sysv/inode.csb->sv_bh = bh;
sb173fs/sysv/inode.csb->sv_sbd = (char *) sbd;
sb174fs/sysv/inode.csb->sv_sb_fic_count = &sbd->s_ninode;
sb175fs/sysv/inode.csb->sv_sb_fic_inodes = &sbd->s_inode[0];
sb176fs/sysv/inode.csb->sv_sb_total_free_inodes = &sbd->s_tinode;
sb177fs/sysv/inode.csb->sv_sb_flc_count = &sbd->s_nfree;
sb178fs/sysv/inode.csb->sv_sb_flc_blocks = &sbd->s_free[0];
sb179fs/sysv/inode.csb->sv_sb_total_free_blocks = &sbd->s_tfree;
sb180fs/sysv/inode.csb->sv_sb_time = &sbd->s_time;
sb181fs/sysv/inode.csb->sv_block_base = 0;
sb182fs/sysv/inode.csb->sv_firstinodezone = 2;
sb183fs/sysv/inode.csb->sv_firstdatazone = sbd->s_isize;
sb184fs/sysv/inode.csb->sv_nzones = sbd->s_fsize;
sb185fs/sysv/inode.csb->sv_ndatazones = sb->sv_nzones - sb->sv_firstdatazone;
sb187fs/sysv/inode.ccase 1: detected_bs512(sb); break;
sb188fs/sysv/inode.ccase 2: detected_bs1024(sb); break;
sb194fs/sysv/inode.cstatic const char* detect_sysv2 (struct super_block *sb, struct buffer_head *bh)
sb203fs/sysv/inode.csb->sv_type = FSTYPE_SYSV2;
sb204fs/sysv/inode.csb->sv_convert = 0;
sb205fs/sysv/inode.csb->sv_kludge_symlinks = 0; /* ?? */
sb206fs/sysv/inode.csb->sv_truncate = 1;
sb207fs/sysv/inode.csb->sv_link_max = SYSV_LINK_MAX;
sb208fs/sysv/inode.csb->sv_fic_size = SYSV_NICINOD;
sb209fs/sysv/inode.csb->sv_flc_size = SYSV_NICFREE;
sb210fs/sysv/inode.csb->sv_bh = bh;
sb211fs/sysv/inode.csb->sv_sbd = (char *) sbd;
sb212fs/sysv/inode.csb->sv_sb_fic_count = &sbd->s_ninode;
sb213fs/sysv/inode.csb->sv_sb_fic_inodes = &sbd->s_inode[0];
sb214fs/sysv/inode.csb->sv_sb_total_free_inodes = &sbd->s_tinode;
sb215fs/sysv/inode.csb->sv_sb_flc_count = &sbd->s_nfree;
sb216fs/sysv/inode.csb->sv_sb_flc_blocks = &sbd->s_free[0];
sb217fs/sysv/inode.csb->sv_sb_total_free_blocks = &sbd->s_tfree;
sb218fs/sysv/inode.csb->sv_sb_time = &sbd->s_time;
sb219fs/sysv/inode.csb->sv_block_base = 0;
sb220fs/sysv/inode.csb->sv_firstinodezone = 2;
sb221fs/sysv/inode.csb->sv_firstdatazone = sbd->s_isize;
sb222fs/sysv/inode.csb->sv_nzones = sbd->s_fsize;
sb223fs/sysv/inode.csb->sv_ndatazones = sb->sv_nzones - sb->sv_firstdatazone;
sb225fs/sysv/inode.ccase 1: detected_bs512(sb); break;
sb226fs/sysv/inode.ccase 2: detected_bs1024(sb); break;
sb232fs/sysv/inode.cstatic const char* detect_coherent (struct super_block *sb, struct buffer_head *bh)
sb240fs/sysv/inode.csb->sv_type = FSTYPE_COH;
sb241fs/sysv/inode.csb->sv_convert = 1;
sb242fs/sysv/inode.csb->sv_kludge_symlinks = 1;
sb243fs/sysv/inode.csb->sv_truncate = 1;
sb244fs/sysv/inode.csb->sv_link_max = COH_LINK_MAX;
sb245fs/sysv/inode.csb->sv_fic_size = COH_NICINOD;
sb246fs/sysv/inode.csb->sv_flc_size = COH_NICFREE;
sb247fs/sysv/inode.csb->sv_bh = bh;
sb248fs/sysv/inode.csb->sv_sbd = (char *) sbd;
sb249fs/sysv/inode.csb->sv_sb_fic_count = &sbd->s_ninode;
sb250fs/sysv/inode.csb->sv_sb_fic_inodes = &sbd->s_inode[0];
sb251fs/sysv/inode.csb->sv_sb_total_free_inodes = &sbd->s_tinode;
sb252fs/sysv/inode.csb->sv_sb_flc_count = &sbd->s_nfree;
sb253fs/sysv/inode.csb->sv_sb_flc_blocks = &sbd->s_free[0];
sb254fs/sysv/inode.csb->sv_sb_total_free_blocks = &sbd->s_tfree;
sb255fs/sysv/inode.csb->sv_sb_time = &sbd->s_time;
sb256fs/sysv/inode.csb->sv_block_base = 0;
sb257fs/sysv/inode.csb->sv_firstinodezone = 2;
sb258fs/sysv/inode.csb->sv_firstdatazone = sbd->s_isize;
sb259fs/sysv/inode.csb->sv_nzones = from_coh_ulong(sbd->s_fsize);
sb260fs/sysv/inode.csb->sv_ndatazones = sb->sv_nzones - sb->sv_firstdatazone;
sb261fs/sysv/inode.cdetected_bs512(sb);
sb265fs/sysv/inode.cstruct super_block *sysv_read_super(struct super_block *sb,void *data, 
sb270fs/sysv/inode.cint dev = sb->s_dev;
sb281fs/sysv/inode.clock_super(sb);
sb282fs/sysv/inode.csb->s_blocksize = BLOCK_SIZE; /* anything else not supported by the block device drivers */
sb283fs/sysv/inode.csb->s_blocksize_bits = BLOCK_SIZE_BITS;
sb287fs/sysv/inode.cif ((found = detect_xenix(sb,bh)) != NULL)
sb293fs/sysv/inode.cif ((found = detect_sysv4(sb,bh)) != NULL)
sb295fs/sysv/inode.cif ((found = detect_sysv2(sb,bh)) != NULL)
sb298fs/sysv/inode.cif ((found = detect_coherent(sb,bh)) != NULL)
sb309fs/sysv/inode.cif ((found = detect_sysv2(sb,bh)) != NULL) {
sb310fs/sysv/inode.csb->sv_block_base = offsets[i];
sb316fs/sysv/inode.csb->s_dev=0;
sb317fs/sysv/inode.cunlock_super(sb);
sb323fs/sysv/inode.csb->sv_ninodes = (sb->sv_firstdatazone - sb->sv_firstinodezone) << sb->sv_inodes_per_block_bits;
sb325fs/sysv/inode.cprintk("VFS: Found a %s FS (block size = %d) on device %d/%d\n",found,sb->sv_block_size,MAJOR(dev),MINOR(dev));
sb326fs/sysv/inode.csb->s_magic = SYSV_MAGIC_BASE + sb->sv_type;
sb328fs/sysv/inode.csb->s_dev = dev;
sb329fs/sysv/inode.csb->s_op = &sysv_sops;
sb330fs/sysv/inode.csb->s_mounted = iget(sb,SYSV_ROOT_INO);
sb331fs/sysv/inode.cunlock_super(sb);
sb332fs/sysv/inode.cif (!sb->s_mounted) {
sb334fs/sysv/inode.csb->s_dev = 0;
sb338fs/sysv/inode.csb->s_dirt = 1; /* brelse(bh); occurs when the disk is unmounted. */
sb339fs/sysv/inode.creturn sb;
sb343fs/sysv/inode.cvoid sysv_write_super (struct super_block *sb)
sb345fs/sysv/inode.clock_super(sb);
sb346fs/sysv/inode.cif (sb->sv_bh->b_dirt) {
sb350fs/sysv/inode.cif (sb->sv_convert)
sb352fs/sysv/inode.c*sb->sv_sb_time = time;
sb354fs/sysv/inode.csb->s_dirt = 0;
sb355fs/sysv/inode.cunlock_super(sb);
sb358fs/sysv/inode.cvoid sysv_put_super(struct super_block *sb)
sb361fs/sysv/inode.clock_super(sb);
sb362fs/sysv/inode.cbrelse(sb->sv_bh);
sb363fs/sysv/inode.csb->s_dev = 0;
sb364fs/sysv/inode.cunlock_super(sb);
sb367fs/sysv/inode.cvoid sysv_statfs(struct super_block *sb, struct statfs *buf)
sb371fs/sysv/inode.cput_fs_long(sb->s_magic, &buf->f_type);    /* type of filesystem */
sb372fs/sysv/inode.cput_fs_long(sb->sv_block_size, &buf->f_bsize);  /* block size */
sb373fs/sysv/inode.cput_fs_long(sb->sv_ndatazones, &buf->f_blocks);  /* total data blocks in file system */
sb374fs/sysv/inode.ctmp = sysv_count_free_blocks(sb);
sb377fs/sysv/inode.cput_fs_long(sb->sv_ninodes, &buf->f_files);  /* total file nodes in file system */
sb378fs/sysv/inode.cput_fs_long(sysv_count_free_inodes(sb), &buf->f_ffree);  /* free file nodes in fs */
sb389fs/sysv/inode.cstatic inline int inode_bmap(struct super_block * sb, struct inode * inode, int nr)
sb394fs/sysv/inode.creturn tmp + sb->sv_block_base;
sb397fs/sysv/inode.cstatic int block_bmap(struct super_block * sb, struct buffer_head * bh, int nr, int convert)
sb409fs/sysv/inode.creturn tmp + sb->sv_block_base;
sb415fs/sysv/inode.cstruct super_block * sb = inode->i_sb;
sb421fs/sysv/inode.creturn inode_bmap(sb,inode,block);
sb423fs/sysv/inode.cconvert = sb->sv_convert;
sb425fs/sysv/inode.ci = inode_bmap(sb,inode,10);
sb429fs/sysv/inode.creturn block_bmap(sb,bh,block,convert);
sb433fs/sysv/inode.ci = inode_bmap(sb,inode,11);
sb437fs/sysv/inode.ci = block_bmap(sb,bh,block/IND_PER_BLOCK,convert);
sb441fs/sysv/inode.creturn block_bmap(sb,bh,block%IND_PER_BLOCK,convert);
sb445fs/sysv/inode.ci = inode_bmap(sb,inode,12);
sb449fs/sysv/inode.ci = block_bmap(sb,bh,block/(IND_PER_BLOCK*IND_PER_BLOCK),convert);
sb453fs/sysv/inode.ci = block_bmap(sb,bh,(block/IND_PER_BLOCK)%IND_PER_BLOCK,convert);
sb457fs/sysv/inode.creturn block_bmap(sb,bh,block%IND_PER_BLOCK,convert);
sb474fs/sysv/inode.cstruct super_block *sb;
sb479fs/sysv/inode.csb = inode->i_sb;
sb484fs/sysv/inode.cresult = getblk(inode->i_dev, (tmp >> sb->sv_block_size_ratio_bits) + sb->sv_block_base, BLOCK_SIZE);
sb486fs/sysv/inode.c*start = result->b_data + ((tmp & sb->sv_block_size_ratio_1) << sb->sv_block_size_bits);
sb494fs/sysv/inode.ctmp = sysv_new_block(sb);
sb497fs/sysv/inode.cresult = getblk(inode->i_dev, (tmp >> sb->sv_block_size_ratio_bits) + sb->sv_block_base, BLOCK_SIZE);
sb499fs/sysv/inode.csysv_free_block(sb,tmp);
sb506fs/sysv/inode.c*start = result->b_data + ((tmp & sb->sv_block_size_ratio_1) << sb->sv_block_size_bits);
sb513fs/sysv/inode.cstruct super_block *sb;
sb528fs/sysv/inode.csb = inode->i_sb;
sb532fs/sysv/inode.cif (sb->sv_convert)
sb535fs/sysv/inode.cresult = getblk(bh->b_dev, (block >> sb->sv_block_size_ratio_bits) + sb->sv_block_base, BLOCK_SIZE);
sb538fs/sysv/inode.c*start = result->b_data + ((block & sb->sv_block_size_ratio_1) << sb->sv_block_size_bits);
sb548fs/sysv/inode.cblock = sysv_new_block(sb);
sb553fs/sysv/inode.cresult = getblk(bh->b_dev, (block >> sb->sv_block_size_ratio_bits) + sb->sv_block_base, BLOCK_SIZE);
sb555fs/sysv/inode.csysv_free_block(sb,block);
sb559fs/sysv/inode.c*p = (sb->sv_convert ? to_coh_ulong(block) : block);
sb562fs/sysv/inode.c*start = result->b_data + ((block & sb->sv_block_size_ratio_1) << sb->sv_block_size_bits);
sb569fs/sysv/inode.cstruct super_block * sb = inode->i_sb;
sb575fs/sysv/inode.cif (block < sb->sv_ind_per_block) {
sb579fs/sysv/inode.cblock -= sb->sv_ind_per_block;
sb580fs/sysv/inode.cif (block < sb->sv_ind_per_block_2) {
sb582fs/sysv/inode.cbh = block_getblk(inode, bh, block >> sb->sv_ind_per_block_bits, create, start);
sb583fs/sysv/inode.creturn block_getblk(inode, bh, block & sb->sv_ind_per_block_1, create, start);
sb585fs/sysv/inode.cblock -= sb->sv_ind_per_block_2;
sb586fs/sysv/inode.cif (block < sb->sv_ind_per_block_3) {
sb588fs/sysv/inode.cbh = block_getblk(inode, bh, block >> sb->sv_ind_per_block_2_bits, create, start);
sb589fs/sysv/inode.cbh = block_getblk(inode, bh, (block >> sb->sv_ind_per_block_bits) & sb->sv_ind_per_block_1, create, start);
sb590fs/sysv/inode.creturn block_getblk(inode, bh, block & sb->sv_ind_per_block_1, create, start);
sb642fs/sysv/inode.cstruct super_block * sb = inode->i_sb;
sb652fs/sysv/inode.cif (!ino || ino > sb->sv_ninodes) {
sb657fs/sysv/inode.cblock = sb->sv_firstinodezone + ((ino-1) >> sb->sv_inodes_per_block_bits);
sb658fs/sysv/inode.cif (!(bh=sysv_bread(sb,inode->i_dev,block,&bh_data))) {
sb663fs/sysv/inode.craw_inode = (struct sysv_inode *) bh_data + ((ino-1) & sb->sv_inodes_per_block_1);
sb665fs/sysv/inode.cif (sb->sv_kludge_symlinks)
sb672fs/sysv/inode.cif (sb->sv_convert) {
sb687fs/sysv/inode.cif (sb->sv_convert)
sb697fs/sysv/inode.cif (sb->sv_block_size_ratio_bits == 0) /* block_size == BLOCK_SIZE ? */
sb727fs/sysv/inode.cstruct super_block * sb = inode->i_sb;
sb735fs/sysv/inode.cif (!ino || ino > sb->sv_ninodes) {
sb741fs/sysv/inode.cblock = sb->sv_firstinodezone + ((ino-1) >> sb->sv_inodes_per_block_bits);
sb742fs/sysv/inode.cif (!(bh = sysv_bread(sb,inode->i_dev,block,&bh_data))) {
sb747fs/sysv/inode.craw_inode = (struct sysv_inode *) bh_data + ((ino-1) & sb->sv_inodes_per_block_1);
sb749fs/sysv/inode.cif (sb->sv_kludge_symlinks)
sb755fs/sysv/inode.cif (sb->sv_convert) {
sb769fs/sysv/inode.cif (sb->sv_convert)
sb68fs/sysv/namei.cstruct super_block * sb;
sb76fs/sysv/namei.csb = dir->i_sb;
sb78fs/sysv/namei.cif (sb->sv_truncate)
sb89fs/sysv/namei.cpos += sb->sv_block_size;
sb98fs/sysv/namei.cif (offset < sb->sv_block_size)
sb152fs/sysv/namei.cstruct super_block * sb;
sb163fs/sysv/namei.csb = dir->i_sb;
sb165fs/sysv/namei.cif (sb->sv_truncate)
sb200fs/sysv/namei.cif (offset < sb->sv_block_size)
sb380fs/sysv/namei.cstruct super_block * sb;
sb404fs/sysv/namei.csb = inode->i_sb;
sb410fs/sysv/namei.cpos += sb->sv_block_size;
sb421fs/sysv/namei.cif (offset < sb->sv_block_size)
sb549fs/sysv/namei.cstruct super_block * sb;
sb568fs/sysv/namei.csb = inode->i_sb;
sb570fs/sysv/namei.cwhile (i < sb->sv_block_size_1 && (c = *(symname++)))
sb55fs/sysv/truncate.cstruct super_block * sb = inode->i_sb;
sb62fs/sysv/truncate.cif (blocks >= sb->sv_ind_per_block)
sb69fs/sysv/truncate.cbh = sysv_bread(sb,inode->i_dev,block,&bh_data);
sb79fs/sysv/truncate.cfor (i = blocks; i < sb->sv_ind_per_block; i++) {
sb82fs/sysv/truncate.cif (sb->sv_convert)
sb88fs/sysv/truncate.csysv_free_block(sb,indblock);
sb90fs/sysv/truncate.cfor (i = 0; i < sb->sv_ind_per_block; i++)
sb99fs/sysv/truncate.csysv_free_block(sb,block);
sb110fs/sysv/truncate.cstruct super_block * sb = inode->i_sb;
sb118fs/sysv/truncate.cif (blocks >= sb->sv_ind_per_block_2)
sb125fs/sysv/truncate.cbh = sysv_bread(sb,inode->i_dev,block,&bh_data);
sb135fs/sysv/truncate.cfor (i = blocks >> sb->sv_ind_per_block_bits, j = blocks & sb->sv_ind_per_block_1;
sb136fs/sysv/truncate.ci < sb->sv_ind_per_block;
sb141fs/sysv/truncate.cif (sb->sv_convert)
sb145fs/sysv/truncate.cretry |= coh_trunc_indirect(inode,j,dind,sb->sv_convert,&bh->b_dirt);
sb147fs/sysv/truncate.cfor (i = 0; i < sb->sv_ind_per_block; i++)
sb156fs/sysv/truncate.csysv_free_block(sb,block);
sb167fs/sysv/truncate.cstruct super_block * sb = inode->i_sb;
sb175fs/sysv/truncate.cif (blocks >= sb->sv_ind_per_block_3)
sb180fs/sysv/truncate.cbh = sysv_bread(sb,inode->i_dev,block,&bh_data);
sb190fs/sysv/truncate.cfor (i = blocks >> sb->sv_ind_per_block_2_bits, j = blocks & sb->sv_ind_per_block_2_1;
sb191fs/sysv/truncate.ci < sb->sv_ind_per_block;
sb196fs/sysv/truncate.cif (sb->sv_convert)
sb200fs/sysv/truncate.cretry |= coh_trunc_dindirect(inode,j,tind,sb->sv_convert,&bh->b_dirt);
sb202fs/sysv/truncate.cfor (i = 0; i < sb->sv_ind_per_block; i++)
sb211fs/sysv/truncate.csysv_free_block(sb,block);
sb219fs/sysv/truncate.cstruct super_block * sb = inode->i_sb;
sb223fs/sysv/truncate.cblocks = (inode->i_size + sb->sv_block_size_1) >> sb->sv_block_size_bits;
sb228fs/sysv/truncate.cblocks -= sb->sv_ind_per_block;
sb231fs/sysv/truncate.cblocks -= sb->sv_ind_per_block_2;
sb257fs/sysv/truncate.cstruct super_block * sb;
sb264fs/sysv/truncate.csb = inode->i_sb;
sb271fs/sysv/truncate.cbh = get_hash_table(inode->i_dev,block+sb->sv_block_base,BLOCK_SIZE);
sb284fs/sysv/truncate.csysv_free_block(sb,block);
sb294fs/sysv/truncate.cstruct super_block * sb;
sb307fs/sysv/truncate.csb = inode->i_sb;
sb308fs/sysv/truncate.cindbh = bread(inode->i_dev,indblock+sb->sv_block_base,BLOCK_SIZE);
sb326fs/sysv/truncate.cif (sb->sv_convert)
sb330fs/sysv/truncate.cbh = get_hash_table(inode->i_dev,block+sb->sv_block_base,BLOCK_SIZE);
sb343fs/sysv/truncate.csysv_free_block(sb,block);
sb354fs/sysv/truncate.csysv_free_block(sb,indblock);
sb363fs/sysv/truncate.cstruct super_block * sb;
sb375fs/sysv/truncate.csb = inode->i_sb;
sb376fs/sysv/truncate.cindbh = bread(inode->i_dev,indblock+sb->sv_block_base,BLOCK_SIZE);
sb393fs/sysv/truncate.cif (sb->sv_convert)
sb397fs/sysv/truncate.cretry |= trunc_indirect(inode,offset+i*IND_PER_BLOCK,ind,sb->sv_convert,&indbh->b_dirt);
sb408fs/sysv/truncate.csysv_free_block(sb,indblock);
sb417fs/sysv/truncate.cstruct super_block * sb;
sb429fs/sysv/truncate.csb = inode->i_sb;
sb430fs/sysv/truncate.cindbh = bread(inode->i_dev,indblock+sb->sv_block_base,BLOCK_SIZE);
sb447fs/sysv/truncate.cif (sb->sv_convert)
sb451fs/sysv/truncate.cretry |= trunc_dindirect(inode,offset+i*IND_PER_BLOCK*IND_PER_BLOCK,ind,sb->sv_convert,&indbh->b_dirt);
sb462fs/sysv/truncate.csysv_free_block(sb,indblock);
sb98fs/xiafs/bitmap.c#define get_imap_zone(sb, bit_nr, not_que) \
sb99fs/xiafs/bitmap.cget__map_zone((sb), (sb)->u.xiafs_sb.s_imap_buf, \
sb100fs/xiafs/bitmap.c(sb)->u.xiafs_sb.s_imap_iznr, \
sb101fs/xiafs/bitmap.c(sb)->u.xiafs_sb.s_imap_cached, 1, \
sb102fs/xiafs/bitmap.c(sb)->u.xiafs_sb.s_imap_zones, _XIAFS_IMAP_SLOTS, \
sb105fs/xiafs/bitmap.c#define get_zmap_zone(sb, bit_nr, not_que) \
sb106fs/xiafs/bitmap.cget__map_zone((sb), (sb)->u.xiafs_sb.s_zmap_buf, \
sb107fs/xiafs/bitmap.c(sb)->u.xiafs_sb.s_zmap_zznr, \
sb108fs/xiafs/bitmap.c(sb)->u.xiafs_sb.s_zmap_cached, \
sb109fs/xiafs/bitmap.c1+(sb)->u.xiafs_sb.s_imap_zones, \
sb110fs/xiafs/bitmap.c(sb)->u.xiafs_sb.s_zmap_zones, _XIAFS_ZMAP_SLOTS, \
sb114fs/xiafs/bitmap.cget__map_zone(struct super_block *sb, struct buffer_head * bmap_buf[],
sb121fs/xiafs/bitmap.cz_nr = bit_nr >> XIAFS_BITS_PER_Z_BITS(sb);
sb128fs/xiafs/bitmap.clock_super(sb);
sb141fs/xiafs/bitmap.ctmp_bh=bread(sb->s_dev, z_nr+first_zone, XIAFS_ZSIZE(sb)); /* cache not hit */
sb144fs/xiafs/bitmap.cunlock_super(sb);
sb157fs/xiafs/bitmap.c#define xiafs_unlock_super(sb, cache)  if (cache) unlock_super(sb);
sb159fs/xiafs/bitmap.c#define get_free_ibit(sb, prev_bit) \
sb160fs/xiafs/bitmap.cget_free__bit(sb, sb->u.xiafs_sb.s_imap_buf, \
sb161fs/xiafs/bitmap.csb->u.xiafs_sb.s_imap_iznr, \
sb162fs/xiafs/bitmap.csb->u.xiafs_sb.s_imap_cached, \
sb163fs/xiafs/bitmap.c1, sb->u.xiafs_sb.s_imap_zones, \
sb166fs/xiafs/bitmap.c#define get_free_zbit(sb, prev_bit) \
sb167fs/xiafs/bitmap.cget_free__bit(sb, sb->u.xiafs_sb.s_zmap_buf, \
sb168fs/xiafs/bitmap.csb->u.xiafs_sb.s_zmap_zznr, \
sb169fs/xiafs/bitmap.csb->u.xiafs_sb.s_zmap_cached, \
sb170fs/xiafs/bitmap.c1 + sb->u.xiafs_sb.s_imap_zones, \
sb171fs/xiafs/bitmap.csb->u.xiafs_sb.s_zmap_zones, \
sb175fs/xiafs/bitmap.cget_free__bit(struct super_block *sb, struct buffer_head * bmap_buf[],
sb184fs/xiafs/bitmap.ctotal_bits=bmap_zones << XIAFS_BITS_PER_Z_BITS(sb); 
sb188fs/xiafs/bitmap.cend_bit=XIAFS_BITS_PER_Z(sb);
sb202fs/xiafs/bitmap.cbh = get__map_zone(sb, bmap_buf, bznr, cache, first_zone, 
sb209fs/xiafs/bitmap.cxiafs_unlock_super(sb, sb->u.xiafs_sb.s_zmap_cached);
sb217fs/xiafs/bitmap.cxiafs_unlock_super(sb, cache);
sb218fs/xiafs/bitmap.creturn (pos & ~(XIAFS_BITS_PER_Z(sb)-1))+tmp;
sb221fs/xiafs/bitmap.cvoid xiafs_free_zone(struct super_block * sb, int d_addr)
sb226fs/xiafs/bitmap.cif (!sb) {
sb230fs/xiafs/bitmap.cif (d_addr < sb->u.xiafs_sb.s_firstdatazone ||
sb231fs/xiafs/bitmap.cd_addr >= sb->u.xiafs_sb.s_nzones) {
sb235fs/xiafs/bitmap.cbh = get_hash_table(sb->s_dev, d_addr, XIAFS_ZSIZE(sb));
sb239fs/xiafs/bitmap.cbit=d_addr - sb->u.xiafs_sb.s_firstdatazone + 1;
sb240fs/xiafs/bitmap.cbh = get_zmap_zone(sb, bit, NULL);
sb243fs/xiafs/bitmap.coffset = bit & (XIAFS_BITS_PER_Z(sb) -1);
sb247fs/xiafs/bitmap.csb->s_dev, bit, bit, WHERE_ERR);
sb249fs/xiafs/bitmap.cxiafs_unlock_super(sb, sb->u.xiafs_sb.s_zmap_cached);
sb252fs/xiafs/bitmap.cint xiafs_new_zone(struct super_block * sb, u_long prev_addr)
sb257fs/xiafs/bitmap.cif (!sb) {
sb261fs/xiafs/bitmap.cif (prev_addr < sb->u.xiafs_sb.s_firstdatazone || 
sb262fs/xiafs/bitmap.cprev_addr >= sb->u.xiafs_sb.s_nzones) {
sb263fs/xiafs/bitmap.cprev_addr=sb->u.xiafs_sb.s_firstdatazone;
sb265fs/xiafs/bitmap.cprev_znr=prev_addr-sb->u.xiafs_sb.s_firstdatazone+1;
sb266fs/xiafs/bitmap.ctmp=get_free_zbit(sb, prev_znr);
sb269fs/xiafs/bitmap.ctmp += sb->u.xiafs_sb.s_firstdatazone -1;
sb270fs/xiafs/bitmap.cif (!(bh = getblk(sb->s_dev, tmp, XIAFS_ZSIZE(sb)))) {
sb288fs/xiafs/bitmap.cstruct super_block * sb;
sb298fs/xiafs/bitmap.csb = inode->i_sb;
sb300fs/xiafs/bitmap.cbh = get_imap_zone(sb, ino, NULL);
sb304fs/xiafs/bitmap.cif (clear_bit(ino & (XIAFS_BITS_PER_Z(sb)-1), bh->b_data))
sb309fs/xiafs/bitmap.cxiafs_unlock_super(sb, sb->u.xiafs_sb.s_imap_cached);
sb314fs/xiafs/bitmap.cstruct super_block * sb;
sb318fs/xiafs/bitmap.csb = dir->i_sb;
sb321fs/xiafs/bitmap.cinode->i_sb = sb;
sb324fs/xiafs/bitmap.ctmp=get_free_ibit(sb, dir->i_ino); 
sb331fs/xiafs/bitmap.cinode->i_dev = sb->s_dev;
sb359fs/xiafs/bitmap.cunsigned long xiafs_count_free_inodes(struct super_block *sb)
sb366fs/xiafs/bitmap.cizones=sb->u.xiafs_sb.s_imap_zones;
sb368fs/xiafs/bitmap.cbh=get_imap_zone(sb, i << XIAFS_BITS_PER_Z_BITS(sb), &not_que);
sb371fs/xiafs/bitmap.cxiafs_unlock_super(sb, sb->u.xiafs_sb.s_imap_cached);
sb374fs/xiafs/bitmap.ci=izones << XIAFS_BITS_PER_Z_BITS(sb);
sb378fs/xiafs/bitmap.cunsigned long xiafs_count_free_zones(struct super_block *sb)
sb385fs/xiafs/bitmap.czzones=sb->u.xiafs_sb.s_zmap_zones;
sb387fs/xiafs/bitmap.cbh=get_zmap_zone(sb, i << XIAFS_BITS_PER_Z_BITS(sb), &not_que);
sb390fs/xiafs/bitmap.cxiafs_unlock_super(sb, sb->u.xiafs_sb.s_zmap_cached);
sb393fs/xiafs/bitmap.ci=zzones << XIAFS_BITS_PER_Z_BITS(sb);
sb35fs/xiafs/inode.cvoid xiafs_put_super(struct super_block *sb)
sb39fs/xiafs/inode.clock_super(sb);
sb40fs/xiafs/inode.csb->s_dev = 0;
sb42fs/xiafs/inode.cbrelse(sb->u.xiafs_sb.s_imap_buf[i]);
sb44fs/xiafs/inode.cbrelse(sb->u.xiafs_sb.s_zmap_buf[i]);
sb45fs/xiafs/inode.cunlock_super(sb);
sb158fs/xiafs/inode.cvoid xiafs_statfs(struct super_block *sb, struct statfs *buf)
sb163fs/xiafs/inode.cput_fs_long(XIAFS_ZSIZE(sb), &buf->f_bsize);
sb164fs/xiafs/inode.cput_fs_long(sb->u.xiafs_sb.s_ndatazones, &buf->f_blocks);
sb165fs/xiafs/inode.ctmp = xiafs_count_free_zones(sb);
sb168fs/xiafs/inode.cput_fs_long(sb->u.xiafs_sb.s_ninodes, &buf->f_files);
sb169fs/xiafs/inode.cput_fs_long(xiafs_count_free_inodes(sb), &buf->f_ffree);
sb259include/linux/ext2_fs.h#define test_opt(sb, opt)    ((sb)->u.ext2_sb.s_mount_opt & \
sb79include/linux/ext_fs.hextern unsigned long ext_count_free_inodes(struct super_block *sb);
sb80include/linux/ext_fs.hextern int ext_new_block(struct super_block * sb);
sb81include/linux/ext_fs.hextern void ext_free_block(struct super_block * sb, int block);
sb82include/linux/ext_fs.hextern unsigned long ext_count_free_blocks(struct super_block *sb);
sb375include/linux/fs.hextern struct inode * __iget(struct super_block * sb,int nr,int crsmnt);
sb376include/linux/fs.hextern struct inode * iget(struct super_block * sb,int nr);
sb171include/linux/iso_fs.hextern unsigned long isofs_count_free_inodes(struct super_block *sb);
sb36include/linux/locks.hextern inline void wait_on_super(struct super_block * sb)
sb38include/linux/locks.hif (sb->s_lock)
sb39include/linux/locks.h__wait_on_super(sb);
sb42include/linux/locks.hextern inline void lock_super(struct super_block * sb)
sb44include/linux/locks.hif (sb->s_lock)
sb45include/linux/locks.h__wait_on_super(sb);
sb46include/linux/locks.hsb->s_lock = 1;
sb49include/linux/locks.hextern inline void unlock_super(struct super_block * sb)
sb51include/linux/locks.hsb->s_lock = 0;
sb52include/linux/locks.hwake_up(&sb->s_wait);
sb93include/linux/minix_fs.hextern unsigned long minix_count_free_inodes(struct super_block *sb);
sb94include/linux/minix_fs.hextern int minix_new_block(struct super_block * sb);
sb95include/linux/minix_fs.hextern void minix_free_block(struct super_block * sb, int block);
sb96include/linux/minix_fs.hextern unsigned long minix_count_free_blocks(struct super_block *sb);
sb107include/linux/minix_fs.hextern int minix_remount (struct super_block * sb, int * flags, char * data);
sb130include/linux/msdos_fs.hextern void lock_fat(struct super_block *sb);
sb131include/linux/msdos_fs.hextern void unlock_fat(struct super_block *sb);
sb145include/linux/msdos_fs.hextern int fat_access(struct super_block *sb,int nr,int new_value);
sb170include/linux/msdos_fs.hextern void msdos_put_super(struct super_block *sb);
sb173include/linux/msdos_fs.hextern void msdos_statfs(struct super_block *sb,struct statfs *buf);
sb101include/linux/nfs_fs.hextern struct super_block *nfs_read_super(struct super_block *sb, 
sb103include/linux/nfs_fs.hextern struct inode *nfs_fhget(struct super_block *sb, struct nfs_fh *fhandle,
sb352include/linux/sysv_fs.hsysv_bread (struct super_block *sb, int dev, unsigned int block, char* * data)
sb356include/linux/sysv_fs.hif (!(bh = bread (dev, (block >> sb->sv_block_size_ratio_bits) + sb->sv_block_base, BLOCK_SIZE)))
sb358include/linux/sysv_fs.h*data = bh->b_data + ((block & sb->sv_block_size_ratio_1) << sb->sv_block_size_bits);
sb406include/linux/sysv_fs.hextern unsigned long sysv_count_free_inodes(struct super_block *sb);
sb407include/linux/sysv_fs.hextern int sysv_new_block(struct super_block * sb);
sb408include/linux/sysv_fs.hextern void sysv_free_block(struct super_block * sb, unsigned int block);
sb409include/linux/sysv_fs.hextern unsigned long sysv_count_free_blocks(struct super_block *sb);
sb83include/linux/xia_fs.hextern unsigned long xiafs_count_free_inodes(struct super_block *sb);
sb84include/linux/xia_fs.hextern int xiafs_new_zone(struct super_block * sb, u_long prev_addr);
sb85include/linux/xia_fs.hextern void xiafs_free_zone(struct super_block * sb, int block);
sb86include/linux/xia_fs.hextern unsigned long xiafs_count_free_zones(struct super_block *sb);
sb92tools/build.cstruct stat sb;
sb98tools/build.cif (stat("/", &sb)) {
sb102tools/build.cmajor_root = major(sb.st_dev);
sb103tools/build.cminor_root = minor(sb.st_dev);
sb105tools/build.cif (stat(argv[4], &sb)) {
sb109tools/build.cmajor_root = major(sb.st_rdev);
sb110tools/build.cminor_root = minor(sb.st_rdev);
sb41zBoot/xtract.cstruct stat sb;