diff -urN linux/arch/i386/boot/bootsect.S linux-2.3.5-work/arch/i386/boot/bootsect.S --- linux/arch/i386/boot/bootsect.S Wed Jun 24 22:30:08 1998 +++ linux-2.3.5-work/arch/i386/boot/bootsect.S Mon Jun 7 15:50:56 1999 @@ -58,12 +58,12 @@ mov ds,ax mov ax,#INITSEG mov es,ax - mov cx,#256 + mov cx,#128 sub si,si sub di,di cld rep - movsw + movsd jmpi go,INITSEG ! ax and es already contain INITSEG diff -urN linux/fs/adfs/super.c linux-2.3.5-work/fs/adfs/super.c --- linux/fs/adfs/super.c Fri Mar 26 21:57:41 1999 +++ linux-2.3.5-work/fs/adfs/super.c Mon Jun 7 15:11:12 1999 @@ -300,7 +300,7 @@ */ sb->s_op = &adfs_sops; sb->u.adfs_sb.s_root = adfs_inode_generate(dr->root, 0); - sb->s_root = d_alloc_root(iget(sb, sb->u.adfs_sb.s_root), NULL); + sb->s_root = d_alloc_root(iget(sb, sb->u.adfs_sb.s_root)); if (!sb->s_root) { for (i = 0; i < sb->u.adfs_sb.s_map_size; i++) @@ -312,8 +312,7 @@ return sb; error_free_bh: - if (bh) - brelse(bh); + brelse(bh); error_unlock: unlock_super(sb); error_dec_use: diff -urN linux/fs/affs/super.c linux-2.3.5-work/fs/affs/super.c --- linux/fs/affs/super.c Sun Mar 7 23:25:23 1999 +++ linux-2.3.5-work/fs/affs/super.c Mon Jun 7 15:15:02 1999 @@ -543,7 +543,7 @@ root_inode = iget(s,root_block); if (!root_inode) goto out_no_root; - s->s_root = d_alloc_root(root_inode, NULL); + s->s_root = d_alloc_root(root_inode); if (!s->s_root) goto out_no_root; s->s_root->d_op = &affs_dentry_operations; diff -urN linux/fs/autofs/inode.c linux-2.3.5-work/fs/autofs/inode.c --- linux/fs/autofs/inode.c Mon Jan 11 23:03:30 1999 +++ linux-2.3.5-work/fs/autofs/inode.c Mon Jun 7 15:15:28 1999 @@ -176,7 +176,7 @@ * Get the root inode and dentry, but defer checking for errors. */ root_inode = iget(s, AUTOFS_ROOT_INO); - root = d_alloc_root(root_inode, NULL); + root = d_alloc_root(root_inode); pipe = NULL; /* diff -urN linux/fs/buffer.c linux-2.3.5-work/fs/buffer.c --- linux/fs/buffer.c Fri May 14 07:18:20 1999 +++ linux-2.3.5-work/fs/buffer.c Mon Jun 7 15:22:04 1999 @@ -90,7 +90,7 @@ /* The dummy values in this structure are left in there for compatibility * with old programs that play with the /proc entries. */ -union bdflush_param{ +union bdflush_param { struct { int nfract; /* Percentage of buffer cache dirty to activate bdflush */ @@ -847,7 +847,7 @@ wait_on_buffer(bh); if (buffer_uptodate(bh)) return bh; - brelse(bh); + __brelse(bh); return NULL; } @@ -913,7 +913,7 @@ wait_on_buffer(bh); if (buffer_uptodate(bh)) return bh; - brelse(bh); + __brelse(bh); return NULL; } diff -urN linux/fs/coda/inode.c linux-2.3.5-work/fs/coda/inode.c --- linux/fs/coda/inode.c Thu Mar 11 01:03:52 1999 +++ linux-2.3.5-work/fs/coda/inode.c Mon Jun 7 15:15:40 1999 @@ -115,7 +115,7 @@ printk("coda_read_super: rootinode is %ld dev %d\n", root->i_ino, root->i_dev); sbi->sbi_root = root; - sb->s_root = d_alloc_root(root, NULL); + sb->s_root = d_alloc_root(root); unlock_super(sb); EXIT; return sb; diff -urN linux/fs/dcache.c linux-2.3.5-work/fs/dcache.c --- linux/fs/dcache.c Mon Apr 26 07:17:56 1999 +++ linux-2.3.5-work/fs/dcache.c Mon Jun 7 15:15:59 1999 @@ -546,7 +546,7 @@ entry->d_inode = inode; } -struct dentry * d_alloc_root(struct inode * root_inode, struct dentry *old_root) +struct dentry * d_alloc_root(struct inode * root_inode) { struct dentry *res = NULL; diff -urN linux/fs/devpts/inode.c linux-2.3.5-work/fs/devpts/inode.c --- linux/fs/devpts/inode.c Wed Jun 2 07:25:47 1999 +++ linux-2.3.5-work/fs/devpts/inode.c Mon Jun 7 15:16:13 1999 @@ -163,7 +163,7 @@ * Get the root inode and dentry, but defer checking for errors. */ root_inode = iget(s, 1); /* inode 1 == root directory */ - root = d_alloc_root(root_inode, NULL); + root = d_alloc_root(root_inode); /* * Check whether somebody else completed the super block. diff -urN linux/fs/efs/super.c linux-2.3.5-work/fs/efs/super.c --- linux/fs/efs/super.c Wed May 26 17:35:00 1999 +++ linux-2.3.5-work/fs/efs/super.c Mon Jun 7 15:16:28 1999 @@ -204,7 +204,7 @@ } s->s_op = &efs_superblock_operations; s->s_dev = dev; - s->s_root = d_alloc_root(iget(s, EFS_ROOTINODE), NULL); + s->s_root = d_alloc_root(iget(s, EFS_ROOTINODE)); unlock_super(s); if (!(s->s_root)) { diff -urN linux/fs/ext2/super.c linux-2.3.5-work/fs/ext2/super.c --- linux/fs/ext2/super.c Mon Apr 12 18:03:45 1999 +++ linux-2.3.5-work/fs/ext2/super.c Mon Jun 7 15:16:40 1999 @@ -629,7 +629,7 @@ */ sb->s_dev = dev; sb->s_op = &ext2_sops; - sb->s_root = d_alloc_root(iget(sb, EXT2_ROOT_INO), NULL); + sb->s_root = d_alloc_root(iget(sb, EXT2_ROOT_INO)); if (!sb->s_root) { sb->s_dev = 0; for (i = 0; i < db_count; i++) diff -urN linux/fs/fat/inode.c linux-2.3.5-work/fs/fat/inode.c --- linux/fs/fat/inode.c Fri May 14 07:18:20 1999 +++ linux-2.3.5-work/fs/fat/inode.c Mon Jun 7 15:16:53 1999 @@ -650,7 +650,7 @@ root_inode->i_ino = MSDOS_ROOT_INO; fat_read_root(root_inode); insert_inode_hash(root_inode); - sb->s_root = d_alloc_root(root_inode, NULL); + sb->s_root = d_alloc_root(root_inode); if (!sb->s_root) goto out_no_root; if(i>=0) { diff -urN linux/fs/hfs/super.c linux-2.3.5-work/fs/hfs/super.c --- linux/fs/hfs/super.c Wed May 12 21:26:20 1999 +++ linux-2.3.5-work/fs/hfs/super.c Mon Jun 7 15:17:08 1999 @@ -466,7 +466,7 @@ if (!root_inode) goto bail_no_root; - s->s_root = d_alloc_root(root_inode, NULL); + s->s_root = d_alloc_root(root_inode); if (!s->s_root) goto bail_no_root; diff -urN linux/fs/hpfs/super.c linux-2.3.5-work/fs/hpfs/super.c --- linux/fs/hpfs/super.c Wed Jun 2 07:25:47 1999 +++ linux-2.3.5-work/fs/hpfs/super.c Mon Jun 7 15:17:22 1999 @@ -528,7 +528,7 @@ brelse(bh0); hpfs_lock_iget(s, 1); - s->s_root = d_alloc_root(iget(s, s->s_hpfs_root), NULL); + s->s_root = d_alloc_root(iget(s, s->s_hpfs_root)); hpfs_unlock_iget(s); unlock_super(s); if (!s->s_root || !s->s_root->d_inode) { diff -urN linux/fs/isofs/inode.c linux-2.3.5-work/fs/isofs/inode.c --- linux/fs/isofs/inode.c Wed May 26 18:01:43 1999 +++ linux-2.3.5-work/fs/isofs/inode.c Mon Jun 7 15:17:37 1999 @@ -835,7 +835,7 @@ if (!inode->i_op) goto out_bad_root; /* get the root dentry */ - s->s_root = d_alloc_root(inode, NULL); + s->s_root = d_alloc_root(inode); if (!(s->s_root)) goto out_no_root; diff -urN linux/fs/minix/bitmap.c linux-2.3.5-work/fs/minix/bitmap.c --- linux/fs/minix/bitmap.c Tue Oct 20 22:08:14 1998 +++ linux-2.3.5-work/fs/minix/bitmap.c Mon Jun 7 15:22:42 1999 @@ -140,7 +140,7 @@ if (!ino || ino > inode->i_sb->u.minix_sb.s_ninodes) { printk("Bad inode number on dev %s: %d is out of range\n", kdevname(inode->i_dev), ino); - return 0; + return NULL; } block = (2 + inode->i_sb->u.minix_sb.s_imap_blocks + inode->i_sb->u.minix_sb.s_zmap_blocks + @@ -148,7 +148,7 @@ bh = bread(inode->i_dev, block, BLOCK_SIZE); if (!bh) { printk("unable to read i-node block\n"); - return 0; + return NULL; } raw_inode = ((struct minix_inode *)bh->b_data + (ino - 1) % MINIX_INODES_PER_BLOCK); @@ -168,7 +168,7 @@ if (!ino || ino > inode->i_sb->u.minix_sb.s_ninodes) { printk("Bad inode number on dev %s: %d is out of range\n", kdevname(inode->i_dev), ino); - return 0; + return NULL; } block = (2 + inode->i_sb->u.minix_sb.s_imap_blocks + inode->i_sb->u.minix_sb.s_zmap_blocks + @@ -176,7 +176,7 @@ bh = bread(inode->i_dev, block, BLOCK_SIZE); if (!bh) { printk("unable to read i-node block\n"); - return 0; + return NULL; } raw_inode = ((struct minix2_inode *) bh->b_data + (ino - 1) % MINIX2_INODES_PER_BLOCK); diff -urN linux/fs/minix/inode.c linux-2.3.5-work/fs/minix/inode.c --- linux/fs/minix/inode.c Wed May 12 07:01:41 1999 +++ linux-2.3.5-work/fs/minix/inode.c Tue Jun 8 07:46:03 1999 @@ -266,7 +266,7 @@ if (errmsg) goto out_bad_root; - s->s_root = d_alloc_root(root_inode, NULL); + s->s_root = d_alloc_root(root_inode); if (!s->s_root) goto out_iput; diff -urN linux/fs/minix/namei.c linux-2.3.5-work/fs/minix/namei.c --- linux/fs/minix/namei.c Sun May 16 07:43:05 1999 +++ linux-2.3.5-work/fs/minix/namei.c Mon Jun 7 15:23:15 1999 @@ -184,12 +184,7 @@ dir->i_size = block*bh->b_size + offset; mark_inode_dirty(dir); } - if (de->inode) { - if (namecompare(namelen, info->s_namelen, name, de->name)) { - brelse(bh); - return -EEXIST; - } - } else { + if (!de->inode) { dir->i_mtime = dir->i_ctime = CURRENT_TIME; mark_inode_dirty(dir); for (i = 0; i < info->s_namelen ; i++) diff -urN linux/fs/ncpfs/inode.c linux-2.3.5-work/fs/ncpfs/inode.c --- linux/fs/ncpfs/inode.c Fri May 14 20:43:00 1999 +++ linux-2.3.5-work/fs/ncpfs/inode.c Mon Jun 7 15:18:02 1999 @@ -431,7 +431,7 @@ if (!root_inode) goto out_no_root; DPRINTK(KERN_DEBUG "ncp_read_super: root vol=%d\n", NCP_FINFO(root_inode)->volNumber); - server->root_dentry = sb->s_root = d_alloc_root(root_inode, NULL); + server->root_dentry = sb->s_root = d_alloc_root(root_inode); if (!sb->s_root) goto out_no_root; server->root_dentry->d_op = &ncp_dentry_operations; diff -urN linux/fs/nfs/inode.c linux-2.3.5-work/fs/nfs/inode.c --- linux/fs/nfs/inode.c Wed May 12 07:01:41 1999 +++ linux-2.3.5-work/fs/nfs/inode.c Mon Jun 7 15:18:25 1999 @@ -302,7 +302,7 @@ root_inode = __nfs_fhget(sb, &fattr); if (!root_inode) goto out_no_root; - sb->s_root = d_alloc_root(root_inode, NULL); + sb->s_root = d_alloc_root(root_inode); if (!sb->s_root) goto out_no_root; sb->s_root->d_op = &nfs_dentry_operations; diff -urN linux/fs/nfsd/export.c linux-2.3.5-work/fs/nfsd/export.c --- linux/fs/nfsd/export.c Wed May 12 07:07:46 1999 +++ linux-2.3.5-work/fs/nfsd/export.c Mon Jun 7 15:24:35 1999 @@ -168,9 +168,8 @@ } } while (NULL != (exp = exp->ex_next)); } while (nfsd_parentdev(&xdev)); - if (xdentry == xdentry->d_parent) { + if (IS_ROOT(xdentry)) break; - } } while ((xdentry = xdentry->d_parent)); exp = NULL; out: @@ -204,7 +203,7 @@ #endif goto out; } - if (ndentry == ndentry->d_parent) + if (IS_ROOT(ndentry)) break; } } while (NULL != (exp = exp->ex_next)); diff -urN linux/fs/nfsd/nfsfh.c linux-2.3.5-work/fs/nfsd/nfsfh.c --- linux/fs/nfsd/nfsfh.c Fri May 14 07:18:21 1999 +++ linux-2.3.5-work/fs/nfsd/nfsfh.c Mon Jun 7 15:25:22 1999 @@ -436,7 +436,7 @@ dir = iget(sb, dirino); if (!dir) goto out_root; - dentry = d_alloc_root(dir, NULL); + dentry = d_alloc_root(dir); if (!dentry) goto out_iput; @@ -531,7 +531,7 @@ * Add the parent to the dir cache before releasing the dentry, * and check whether to save a copy of the dentry's path. */ - if (dentry != dentry->d_parent) { + if (!IS_ROOT(dentry)) { struct dentry *parent = dget(dentry->d_parent); if (add_to_fhcache(parent, NFSD_DIR_CACHE)) nfsd_nr_verified++; @@ -1140,7 +1140,7 @@ error = nfserr_stale; dprintk("fh_verify: no root_squashed access.\n"); } - } while ((tdentry != tdentry->d_parent)); + } while (!IS_ROOT(tdentry)); if (exp->ex_dentry != tdentry) { error = nfserr_stale; printk("nfsd Security: %s/%s bad export.\n", diff -urN linux/fs/ntfs/fs.c linux-2.3.5-work/fs/ntfs/fs.c --- linux/fs/ntfs/fs.c Sat Apr 24 05:20:38 1999 +++ linux-2.3.5-work/fs/ntfs/fs.c Mon Jun 7 15:18:54 1999 @@ -978,7 +978,7 @@ ntfs_debug(DEBUG_OTHER, "Getting RootDir\n"); /* Get the root directory */ - if(!(sb->s_root=d_alloc_root(iget(sb,FILE_ROOT),NULL))){ + if(!(sb->s_root=d_alloc_root(iget(sb,FILE_ROOT)))){ ntfs_error("Could not get root dir inode\n"); goto ntfs_read_super_mft; } diff -urN linux/fs/pipe.c linux-2.3.5-work/fs/pipe.c --- linux/fs/pipe.c Tue May 11 22:37:40 1999 +++ linux-2.3.5-work/fs/pipe.c Mon Jun 7 15:19:39 1999 @@ -486,7 +486,7 @@ j = error; error = -ENOMEM; - f1->f_dentry = f2->f_dentry = dget(d_alloc_root(inode, NULL)); + f1->f_dentry = f2->f_dentry = dget(d_alloc_root(inode)); if (!f1->f_dentry) goto close_f12_inode_i_j; diff -urN linux/fs/proc/inode.c linux-2.3.5-work/fs/proc/inode.c --- linux/fs/proc/inode.c Sat May 9 02:10:30 1998 +++ linux-2.3.5-work/fs/proc/inode.c Mon Jun 7 15:19:55 1999 @@ -319,7 +319,7 @@ root_inode = proc_get_inode(s, PROC_ROOT_INO, &proc_root); if (!root_inode) goto out_no_root; - s->s_root = d_alloc_root(root_inode, NULL); + s->s_root = d_alloc_root(root_inode); if (!s->s_root) goto out_no_root; parse_options(data, &root_inode->i_uid, &root_inode->i_gid); diff -urN linux/fs/proc/link.c linux-2.3.5-work/fs/proc/link.c --- linux/fs/proc/link.c Tue Apr 13 00:18:26 1999 +++ linux-2.3.5-work/fs/proc/link.c Mon Jun 7 15:25:51 1999 @@ -146,7 +146,7 @@ /* Check for special dentries.. */ pattern = NULL; inode = dentry->d_inode; - if (inode && dentry->d_parent == dentry) { + if (inode && IS_ROOT(dentry)) { if (S_ISSOCK(inode->i_mode)) pattern = "socket:[%lu]"; if (S_ISFIFO(inode->i_mode)) diff -urN linux/fs/qnx4/inode.c linux-2.3.5-work/fs/qnx4/inode.c --- linux/fs/qnx4/inode.c Wed Jun 2 07:25:47 1999 +++ linux-2.3.5-work/fs/qnx4/inode.c Mon Jun 7 15:20:08 1999 @@ -338,7 +338,7 @@ s->u.qnx4_sb.sb_buf = bh; s->u.qnx4_sb.sb = (struct qnx4_super_block *) bh->b_data; s->s_root = - d_alloc_root(iget(s, QNX4_ROOT_INO * QNX4_INODES_PER_BLOCK), NULL); + d_alloc_root(iget(s, QNX4_ROOT_INO * QNX4_INODES_PER_BLOCK)); if (s->s_root == NULL) { printk("qnx4: get inode failed\n"); goto out; diff -urN linux/fs/romfs/inode.c linux-2.3.5-work/fs/romfs/inode.c --- linux/fs/romfs/inode.c Sat Apr 24 05:20:38 1999 +++ linux-2.3.5-work/fs/romfs/inode.c Mon Jun 7 15:20:24 1999 @@ -132,7 +132,7 @@ brelse(bh); s->s_op = &romfs_ops; - s->s_root = d_alloc_root(iget(s, sz), NULL); + s->s_root = d_alloc_root(iget(s, sz)); if (!s->s_root) goto outnobh; diff -urN linux/fs/smbfs/dir.c linux-2.3.5-work/fs/smbfs/dir.c --- linux/fs/smbfs/dir.c Sun May 9 01:56:37 1999 +++ linux-2.3.5-work/fs/smbfs/dir.c Mon Jun 7 15:26:07 1999 @@ -318,7 +318,7 @@ for (;;) { dentry->d_time = jiffies; - if (dentry == dentry->d_parent) + if (IS_ROOT(dentry)) break; dentry = dentry->d_parent; } diff -urN linux/fs/smbfs/inode.c linux-2.3.5-work/fs/smbfs/inode.c --- linux/fs/smbfs/inode.c Fri May 14 01:16:22 1999 +++ linux-2.3.5-work/fs/smbfs/inode.c Mon Jun 7 15:20:36 1999 @@ -402,7 +402,7 @@ if (!root_inode) goto out_no_root; - sb->s_root = d_alloc_root(root_inode, NULL); + sb->s_root = d_alloc_root(root_inode); if (!sb->s_root) goto out_no_root; diff -urN linux/fs/super.c linux-2.3.5-work/fs/super.c --- linux/fs/super.c Sun May 16 07:43:04 1999 +++ linux-2.3.5-work/fs/super.c Mon Jun 7 15:27:18 1999 @@ -169,20 +169,20 @@ int register_filesystem(struct file_system_type * fs) { - struct file_system_type ** tmp; + struct file_system_type ** tmp; - if (!fs) - return -EINVAL; - if (fs->next) - return -EBUSY; - tmp = &file_systems; - while (*tmp) { - if (strcmp((*tmp)->name, fs->name) == 0) - return -EBUSY; - tmp = &(*tmp)->next; - } - *tmp = fs; - return 0; + if (!fs) + return -EINVAL; + if (fs->next) + return -EBUSY; + tmp = &file_systems; + while (*tmp) { + if (strcmp((*tmp)->name, fs->name) == 0) + return -EBUSY; + tmp = &(*tmp)->next; + } + *tmp = fs; + return 0; } #ifdef CONFIG_MODULES diff -urN linux/fs/sysv/inode.c linux-2.3.5-work/fs/sysv/inode.c --- linux/fs/sysv/inode.c Thu May 13 18:53:59 1999 +++ linux-2.3.5-work/fs/sysv/inode.c Mon Jun 7 15:20:49 1999 @@ -503,7 +503,7 @@ sb->s_dev = dev; sb->s_op = &sysv_sops; root_inode = iget(sb,SYSV_ROOT_INO); - sb->s_root = d_alloc_root(root_inode, NULL); + sb->s_root = d_alloc_root(root_inode); if (!sb->s_root) { printk("SysV FS: get root inode failed\n"); sysv_put_super(sb); diff -urN linux/fs/ufs/super.c linux-2.3.5-work/fs/ufs/super.c --- linux/fs/ufs/super.c Mon Apr 12 18:03:45 1999 +++ linux-2.3.5-work/fs/ufs/super.c Mon Jun 7 15:21:01 1999 @@ -746,7 +746,7 @@ sb->u.ufs_sb.s_flags = flags; sb->u.ufs_sb.s_swab = swab; - sb->s_root = d_alloc_root(iget(sb, UFS_ROOTINO), NULL); + sb->s_root = d_alloc_root(iget(sb, UFS_ROOTINO)); /* diff -urN linux/fs/umsdos/check.c linux-2.3.5-work/fs/umsdos/check.c --- linux/fs/umsdos/check.c Fri Dec 18 15:09:36 1998 +++ linux-2.3.5-work/fs/umsdos/check.c Mon Jun 7 15:27:39 1999 @@ -212,7 +212,7 @@ while (dentry && count < 10) { check_dent_int (dentry, count++); - if (dentry == dentry->d_parent) { + if (IS_ROOT(dentry)) { printk (KERN_DEBUG "*** end checking dentry (root reached ok)\n"); break; } diff -urN linux/include/linux/dcache.h linux-2.3.5-work/include/linux/dcache.h --- linux/include/linux/dcache.h Sun May 9 01:56:37 1999 +++ linux-2.3.5-work/include/linux/dcache.h Mon Jun 7 15:30:27 1999 @@ -12,8 +12,6 @@ * with heavy changes by Linus Torvalds */ -#define D_MAXLEN 1024 - #define IS_ROOT(x) ((x) == (x)->d_parent) /* @@ -132,7 +130,7 @@ extern void d_delete(struct dentry *); /* allocate/de-allocate */ -extern struct dentry * d_alloc(struct dentry * parent, const struct qstr *name); +extern struct dentry * d_alloc(struct dentry *, const struct qstr *); extern void prune_dcache(int); extern void shrink_dcache_sb(struct super_block *); extern void shrink_dcache_parent(struct dentry *); @@ -147,7 +145,7 @@ extern void free_inode_memory(int); /* defined in fs/inode.c */ /* only used at mount-time */ -extern struct dentry * d_alloc_root(struct inode * root_inode, struct dentry * old_root); +extern struct dentry * d_alloc_root(struct inode *); /* test whether root is busy without destroying dcache */ extern int is_root_busy(struct dentry *); @@ -155,7 +153,7 @@ /* * This adds the entry to the hash queues. */ -extern void d_rehash(struct dentry * entry); +extern void d_rehash(struct dentry *); /* * This adds the entry to the hash queues and initializes "d_inode". * The entry was actually filled in earlier during "d_alloc()" @@ -167,17 +165,16 @@ } /* used for rename() and baskets */ -extern void d_move(struct dentry * entry, struct dentry * newdentry); +extern void d_move(struct dentry *, struct dentry *); /* appendix may either be NULL or be used for transname suffixes */ -extern struct dentry * d_lookup(struct dentry * dir, struct qstr * name); +extern struct dentry * d_lookup(struct dentry *, struct qstr *); /* validate "insecure" dentry pointer */ -extern int d_validate(struct dentry *dentry, struct dentry *dparent, - unsigned int hash, unsigned int len); +extern int d_validate(struct dentry *, struct dentry *, unsigned int, unsigned int); /* write full pathname into buffer and return start of pathname */ -extern char * d_path(struct dentry * entry, char * buf, int buflen); +extern char * d_path(struct dentry *, char *, int); /* Allocation counts.. */ static __inline__ struct dentry * dget(struct dentry *dentry) diff -urN linux/include/linux/file.h linux-2.3.5-work/include/linux/file.h --- linux/include/linux/file.h Sun Jan 10 03:16:44 1999 +++ linux-2.3.5-work/include/linux/file.h Mon Jun 7 16:54:04 1999 @@ -44,7 +44,7 @@ /* * Install a file pointer in the fd array. */ -extern inline void fd_install(unsigned int fd, struct file *file) +extern inline void fd_install(unsigned int fd, struct file * file) { current->files->fd[fd] = file; } @@ -65,7 +65,7 @@ * I suspect there are many other similar "optimizations" across the * kernel... */ -extern void fput(struct file *file); -extern void put_filp(struct file *file); +extern void fput(struct file *); +extern void put_filp(struct file *); -#endif +#endif /* __LINUX_FILE_H */ diff -urN linux/include/linux/fs.h linux-2.3.5-work/include/linux/fs.h --- linux/include/linux/fs.h Wed Jun 2 21:54:54 1999 +++ linux-2.3.5-work/include/linux/fs.h Mon Jun 7 17:12:35 1999 @@ -103,7 +103,8 @@ /* * Flags that can be altered by MS_REMOUNT */ -#define MS_RMT_MASK (MS_RDONLY|MS_NOSUID|MS_NODEV|MS_NOEXEC|MS_SYNCHRONOUS|MS_MANDLOCK|MS_NOATIME|MS_NODIRATIME) +#define MS_RMT_MASK (MS_RDONLY|MS_NOSUID|MS_NODEV|MS_NOEXEC|\ + MS_SYNCHRONOUS|MS_MANDLOCK|MS_NOATIME|MS_NODIRATIME) /* * Magic mount flag number. Has to be or-ed to the flag values. @@ -112,7 +113,7 @@ #define MS_MGC_MSK 0xffff0000 /* magic flag number mask */ /* - * Note that read-only etc flags are inode-specific: setting some file-system + * Note that nosuid etc flags are inode-specific: setting some file-system * flags just means all the inodes inherit those flags by default. It might be * possible to override it selectively if you really wanted to with some * ioctl() that is not currently implemented. @@ -171,9 +172,8 @@ #include #include -#include -extern void update_atime (struct inode *inode); +extern void update_atime (struct inode *); #define UPDATE_ATIME(inode) update_atime (inode) extern void buffer_init(unsigned long); @@ -233,8 +233,7 @@ }; typedef void (bh_end_io_t)(struct buffer_head *bh, int uptodate); -void init_buffer(struct buffer_head *bh, kdev_t dev, int block, - bh_end_io_t *handler, void *dev_id); +void init_buffer(struct buffer_head *, kdev_t, int, bh_end_io_t *, void *); static inline int buffer_uptodate(struct buffer_head * bh) { @@ -480,19 +479,17 @@ #include -extern int fcntl_getlk(unsigned int fd, struct flock *l); -extern int fcntl_setlk(unsigned int fd, unsigned int cmd, struct flock *l); +extern int fcntl_getlk(unsigned int, struct flock *); +extern int fcntl_setlk(unsigned int, unsigned int, struct flock *); /* fs/locks.c */ -extern void locks_remove_posix(struct file *, fl_owner_t id); +extern void locks_remove_posix(struct file *, fl_owner_t); extern void locks_remove_flock(struct file *); extern struct file_lock *posix_test_lock(struct file *, struct file_lock *); extern int posix_lock_file(struct file *, struct file_lock *, unsigned int); extern void posix_block_lock(struct file_lock *, struct file_lock *); extern void posix_unblock_lock(struct file_lock *); -#include - struct fasync_struct { int magic; int fa_fd; @@ -667,10 +664,8 @@ #define FLOCK_VERIFY_READ 1 #define FLOCK_VERIFY_WRITE 2 -extern int locks_mandatory_locked(struct inode *inode); -extern int locks_mandatory_area(int read_write, struct inode *inode, - struct file *filp, loff_t offset, - size_t count); +extern int locks_mandatory_locked(struct inode *); +extern int locks_mandatory_area(int, struct inode *, struct file *, loff_t, size_t); extern inline int locks_verify_locked(struct inode *inode) { @@ -709,35 +704,35 @@ extern struct file *filp_open(const char *, int, int); extern int filp_close(struct file *, fl_owner_t id); -extern char * getname(const char * filename); +extern char * getname(const char *); #define __getname() ((char *) __get_free_page(GFP_KERNEL)) #define putname(name) free_page((unsigned long)(name)) -extern void kill_fasync(struct fasync_struct *fa, int sig); +extern void kill_fasync(struct fasync_struct *, int); extern int register_blkdev(unsigned int, const char *, struct file_operations *); -extern int unregister_blkdev(unsigned int major, const char * name); -extern int blkdev_open(struct inode * inode, struct file * filp); -extern int blkdev_release (struct inode * inode); +extern int unregister_blkdev(unsigned int, const char *); +extern int blkdev_open(struct inode *, struct file *); +extern int blkdev_release (struct inode *); extern struct file_operations def_blk_fops; extern struct inode_operations blkdev_inode_operations; /* fs/devices.c */ extern int register_chrdev(unsigned int, const char *, struct file_operations *); -extern int unregister_chrdev(unsigned int major, const char * name); -extern int chrdev_open(struct inode * inode, struct file * filp); +extern int unregister_chrdev(unsigned int, const char *); +extern int chrdev_open(struct inode *, struct file *); extern struct file_operations def_chr_fops; extern struct inode_operations chrdev_inode_operations; -extern char * bdevname(kdev_t dev); -extern char * cdevname(kdev_t dev); -extern char * kdevname(kdev_t dev); +extern char * bdevname(kdev_t); +extern char * cdevname(kdev_t); +extern char * kdevname(kdev_t); extern void init_special_inode(struct inode *, umode_t, int); -extern void init_fifo(struct inode * inode); +extern void init_fifo(struct inode *); extern struct inode_operations fifo_inode_operations; /* Invalid inode operations -- fs/bad_inode.c */ -extern void make_bad_inode(struct inode * inode); -extern int is_bad_inode(struct inode * inode); +extern void make_bad_inode(struct inode *); +extern int is_bad_inode(struct inode *); extern struct file_operations connecting_fifo_fops; extern struct file_operations read_fifo_fops; @@ -747,15 +742,15 @@ extern struct file_operations write_pipe_fops; extern struct file_operations rdwr_pipe_fops; -extern struct file_system_type *get_fs_type(const char *name); +extern struct file_system_type *get_fs_type(const char *); extern int fs_may_remount_ro(struct super_block *); -extern int fs_may_mount(kdev_t dev); +extern int fs_may_mount(kdev_t); extern struct file *inuse_filps; -extern void refile_buffer(struct buffer_head * buf); -extern void set_writetime(struct buffer_head * buf, int flag); +extern void refile_buffer(struct buffer_head *); +extern void set_writetime(struct buffer_head *, int); extern int try_to_free_buffers(struct page *); extern int nr_buffers; @@ -767,7 +762,7 @@ #define BUF_DIRTY 2 /* Dirty buffers, not yet scheduled for write */ #define NR_LIST 3 -void mark_buffer_uptodate(struct buffer_head * bh, int on); +void mark_buffer_uptodate(struct buffer_head *, int); extern inline void mark_buffer_clean(struct buffer_head * bh) { @@ -786,23 +781,23 @@ } } -extern int check_disk_change(kdev_t dev); -extern int invalidate_inodes(struct super_block * sb); +extern int check_disk_change(kdev_t); +extern int invalidate_inodes(struct super_block *); extern void invalidate_inode_pages(struct inode *); -extern void invalidate_buffers(kdev_t dev); -extern int floppy_is_wp(int minor); -extern void sync_inodes(kdev_t dev); -extern void write_inode_now(struct inode *inode); -extern void sync_dev(kdev_t dev); -extern int fsync_dev(kdev_t dev); -extern void sync_supers(kdev_t dev); -extern int bmap(struct inode * inode,int block); +extern void invalidate_buffers(kdev_t); +extern int floppy_is_wp(int); +extern void sync_inodes(kdev_t); +extern void write_inode_now(struct inode *); +extern void sync_dev(kdev_t); +extern int fsync_dev(kdev_t); +extern void sync_supers(kdev_t); +extern int bmap(struct inode *, int); extern int notify_change(struct dentry *, struct iattr *); -extern int permission(struct inode * inode,int mask); -extern int get_write_access(struct inode *inode); -extern void put_write_access(struct inode *inode); -extern struct dentry * open_namei(const char * pathname, int flag, int mode); -extern struct dentry * do_mknod(const char * filename, int mode, dev_t dev); +extern int permission(struct inode *, int); +extern int get_write_access(struct inode *); +extern void put_write_access(struct inode *); +extern struct dentry * open_namei(const char *, int, int); +extern struct dentry * do_mknod(const char *, int, dev_t); extern int do_pipe(int *); /* fs/dcache.c -- generic fs support functions */ @@ -840,7 +835,7 @@ #define lnamei(pathname) __namei(pathname, 0) extern void iput(struct inode *); -extern struct inode * igrab(struct inode *inode); +extern struct inode * igrab(struct inode *); extern ino_t iunique(struct super_block *, ino_t); extern struct inode * iget(struct super_block *, unsigned long); extern void clear_inode(struct inode *); @@ -851,7 +846,7 @@ extern struct file * get_empty_filp(void); extern struct buffer_head * get_hash_table(kdev_t, int, int); extern struct buffer_head * getblk(kdev_t, int, int); -extern struct buffer_head * find_buffer(kdev_t dev, int block, int size); +extern struct buffer_head * find_buffer(kdev_t, int, int); extern void ll_rw_block(int, int, struct buffer_head * bh[]); extern int is_read_only(kdev_t); extern void __brelse(struct buffer_head *); @@ -860,17 +855,16 @@ if (buf) __brelse(buf); } -extern void __bforget(struct buffer_head *buf); +extern void __bforget(struct buffer_head *); extern inline void bforget(struct buffer_head *buf) { if (buf) __bforget(buf); } -extern void set_blocksize(kdev_t dev, int size); -extern unsigned int get_hardblocksize(kdev_t dev); -extern struct buffer_head * bread(kdev_t dev, int block, int size); -extern struct buffer_head * breada(kdev_t dev,int block, int size, - unsigned int pos, unsigned int filesize); +extern void set_blocksize(kdev_t, int); +extern unsigned int get_hardblocksize(kdev_t); +extern struct buffer_head * bread(kdev_t, int, int); +extern struct buffer_head * breada(kdev_t, int, int, unsigned int, unsigned int); extern int brw_page(int, struct page *, kdev_t, int [], int, int); @@ -879,12 +873,12 @@ extern int generic_readpage(struct file *, struct page *); extern int generic_file_mmap(struct file *, struct vm_area_struct *); extern ssize_t generic_file_read(struct file *, char *, size_t, loff_t *); -extern ssize_t generic_file_write(struct file *, const char*, size_t, loff_t *, writepage_t); +extern ssize_t generic_file_write(struct file *, const char *, size_t, loff_t *, writepage_t); -extern struct super_block *get_super(kdev_t dev); -extern void put_super(kdev_t dev); -unsigned long generate_cluster(kdev_t dev, int b[], int size); -unsigned long generate_cluster_swab32(kdev_t dev, int b[], int size); +extern struct super_block *get_super(kdev_t); +extern void put_super(kdev_t); +unsigned long generate_cluster(kdev_t, int b[], int); +unsigned long generate_cluster_swab32(kdev_t, int b[], int); extern kdev_t ROOT_DEV; extern void show_buffers(void); @@ -892,7 +886,7 @@ #ifdef CONFIG_BLK_DEV_INITRD extern kdev_t real_root_dev; -extern int change_root(kdev_t new_root_dev,const char *put_old); +extern int change_root(kdev_t, const char *); #endif extern ssize_t char_read(struct file *, char *, size_t, loff_t *); @@ -902,8 +896,8 @@ extern ssize_t char_write(struct file *, const char *, size_t, loff_t *); extern ssize_t block_write(struct file *, const char *, size_t, loff_t *); -extern int block_fsync(struct file *, struct dentry *dir); -extern int file_fsync(struct file *, struct dentry *dir); +extern int block_fsync(struct file *, struct dentry *); +extern int file_fsync(struct file *, struct dentry *); extern int inode_change_ok(struct inode *, struct iattr *); extern void inode_setattr(struct inode *, struct iattr *); @@ -914,4 +908,4 @@ #endif /* __KERNEL__ */ -#endif +#endif /* _LINUX_FS_H */ diff -urN linux/include/linux/sched.h linux-2.3.5-work/include/linux/sched.h --- linux/include/linux/sched.h Wed Jun 2 21:54:59 1999 +++ linux-2.3.5-work/include/linux/sched.h Mon Jun 7 17:12:35 1999 @@ -163,9 +163,9 @@ #define AVL_MIN_MAP_COUNT 32 struct mm_struct { - struct vm_area_struct *mmap; /* list of VMAs */ - struct vm_area_struct *mmap_avl; /* tree of VMAs */ - struct vm_area_struct *mmap_cache; /* last find_vma result */ + struct vm_area_struct * mmap; /* list of VMAs */ + struct vm_area_struct * mmap_avl; /* tree of VMAs */ + struct vm_area_struct * mmap_cache; /* last find_vma result */ pgd_t * pgd; atomic_t count; int map_count; /* number of VMAs */ @@ -453,8 +453,8 @@ } /* per-UID process charging. */ -extern int alloc_uid(struct task_struct *p); -void free_uid(struct task_struct *p); +extern int alloc_uid(struct task_struct *); +void free_uid(struct task_struct *); #include @@ -482,26 +482,25 @@ #define wake_up(x) __wake_up((x),TASK_UNINTERRUPTIBLE | TASK_INTERRUPTIBLE) #define wake_up_interruptible(x) __wake_up((x),TASK_INTERRUPTIBLE) -extern int in_group_p(gid_t grp); +extern int in_group_p(gid_t); extern void flush_signals(struct task_struct *); extern void flush_signal_handlers(struct task_struct *); -extern int dequeue_signal(sigset_t *block, siginfo_t *); -extern int send_sig_info(int, struct siginfo *info, struct task_struct *); -extern int force_sig_info(int, struct siginfo *info, struct task_struct *); -extern int kill_pg_info(int, struct siginfo *info, pid_t); -extern int kill_sl_info(int, struct siginfo *info, pid_t); -extern int kill_proc_info(int, struct siginfo *info, pid_t); -extern int kill_something_info(int, struct siginfo *info, int); -extern void notify_parent(struct task_struct * tsk, int); -extern void force_sig(int sig, struct task_struct * p); -extern int send_sig(int sig, struct task_struct * p, int priv); +extern int dequeue_signal(sigset_t *, siginfo_t *); +extern int send_sig_info(int, struct siginfo *, struct task_struct *); +extern int force_sig_info(int, struct siginfo *, struct task_struct *); +extern int kill_pg_info(int, struct siginfo *, pid_t); +extern int kill_sl_info(int, struct siginfo *, pid_t); +extern int kill_proc_info(int, struct siginfo *, pid_t); +extern int kill_something_info(int, struct siginfo *, int); +extern void notify_parent(struct task_struct *, int); +extern void force_sig(int, struct task_struct *); +extern int send_sig(int, struct task_struct *, int); extern int kill_pg(pid_t, int, int); extern int kill_sl(pid_t, int, int); extern int kill_proc(pid_t, int, int); -extern int do_sigaction(int sig, const struct k_sigaction *act, - struct k_sigaction *oact); -extern int do_sigaltstack(const stack_t *ss, stack_t *oss, unsigned long sp); +extern int do_sigaction(int, const struct k_sigaction *, struct k_sigaction *); +extern int do_sigaltstack(const stack_t *, stack_t *, unsigned long); extern inline int signal_pending(struct task_struct *p) { @@ -552,12 +551,10 @@ : on_sig_stack(sp) ? SS_ONSTACK : 0); } -extern int request_irq(unsigned int irq, +extern int request_irq(unsigned int, void (*handler)(int, void *, struct pt_regs *), - unsigned long flags, - const char *device, - void *dev_id); -extern void free_irq(unsigned int irq, void *dev_id); + unsigned long, const char *, void *); +extern void free_irq(unsigned int, void *); /* * This has now become a routine instead of a macro, it sets a flag if diff -urN linux/kernel/ksyms.c linux-2.3.5-work/kernel/ksyms.c --- linux/kernel/ksyms.c Wed May 26 17:30:42 1999 +++ linux-2.3.5-work/kernel/ksyms.c Mon Jun 7 17:07:09 1999 @@ -345,7 +345,7 @@ /* Program loader interfaces */ EXPORT_SYMBOL(setup_arg_pages); -EXPORT_SYMBOL(copy_strings); +EXPORT_SYMBOL(copy_strings_kernel); EXPORT_SYMBOL(do_execve); EXPORT_SYMBOL(flush_old_exec); EXPORT_SYMBOL(open_dentry); diff -urN linux/net/socket.c linux-2.3.5-work/net/socket.c --- linux/net/socket.c Tue May 25 21:06:35 1999 +++ linux-2.3.5-work/net/socket.c Mon Jun 7 15:21:38 1999 @@ -204,7 +204,7 @@ return -ENFILE; } - file->f_dentry = d_alloc_root(inode, NULL); + file->f_dentry = d_alloc_root(inode); if (!file->f_dentry) { put_filp(file); put_unused_fd(fd); .