diff options
| author | Linus Torvalds <torvalds@athlon.transmeta.com> | 2002-02-04 17:57:11 -0800 |
|---|---|---|
| committer | Linus Torvalds <torvalds@athlon.transmeta.com> | 2002-02-04 17:57:11 -0800 |
| commit | c8ebfc888f9ee93f2dc7cd62b3be66263755d99a (patch) | |
| tree | f449a3433c022ed8fd9aaa8f291a1b4e354fd5b9 /fs | |
| parent | 5d12a58c4049a4839abbbdf87dd189505513b1b6 (diff) | |
v2.4.1.2 -> v2.4.1.3
- Jens: better ordering of requests when unable to merge
- Neil Brown: make md work as a module again (we cannot autodetect
in modules, not enough background information)
- Neil Brown: raid5 SMP locking cleanups
- Neil Brown: nfsd: handle Irix NFS clients named pipe behavior and
dentry leak fix
- maestro3 shutdown fix
- fix dcache hash calculation that could cause bad hashes under certain
circumstances (Dean Gaudet)
- David Miller: networking and sparc updates
- Jeff Garzik: include file cleanups
- Andy Grover: ACPI update
- Coda-fs error return fixes
- rth: alpha Jensen update
Diffstat (limited to 'fs')
96 files changed, 132 insertions, 105 deletions
diff --git a/fs/adfs/super.c b/fs/adfs/super.c index a53c2b8e1775..83ba97166647 100644 --- a/fs/adfs/super.c +++ b/fs/adfs/super.c @@ -12,7 +12,7 @@ #include <linux/errno.h> #include <linux/fs.h> #include <linux/adfs_fs.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/sched.h> #include <linux/stat.h> #include <linux/string.h> diff --git a/fs/affs/file.c b/fs/affs/file.c index fac21f70ba55..848f167014f3 100644 --- a/fs/affs/file.c +++ b/fs/affs/file.c @@ -21,7 +21,7 @@ #include <linux/fcntl.h> #include <linux/kernel.h> #include <linux/errno.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/stat.h> #include <linux/locks.h> #include <linux/smp_lock.h> diff --git a/fs/affs/inode.c b/fs/affs/inode.c index fcb7e103a56f..99a81fee8e4a 100644 --- a/fs/affs/inode.c +++ b/fs/affs/inode.c @@ -14,7 +14,7 @@ #include <asm/div64.h> #include <linux/errno.h> #include <linux/fs.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/stat.h> #include <linux/sched.h> #include <linux/affs_fs.h> diff --git a/fs/affs/super.c b/fs/affs/super.c index 32ad74eb95ce..c77c3410ca38 100644 --- a/fs/affs/super.c +++ b/fs/affs/super.c @@ -14,7 +14,7 @@ #include <linux/module.h> #include <linux/errno.h> #include <linux/fs.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/stat.h> #include <linux/sched.h> #include <linux/affs_fs.h> diff --git a/fs/autofs/autofs_i.h b/fs/autofs/autofs_i.h index 9dc40922a441..6bad5db45472 100644 --- a/fs/autofs/autofs_i.h +++ b/fs/autofs/autofs_i.h @@ -19,7 +19,7 @@ #define AUTOFS_IOC_COUNT 32 #include <linux/kernel.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/sched.h> #include <linux/string.h> #include <linux/wait.h> diff --git a/fs/autofs/inode.c b/fs/autofs/inode.c index 0eb91f3c20b0..1b3ce3edf398 100644 --- a/fs/autofs/inode.c +++ b/fs/autofs/inode.c @@ -11,7 +11,7 @@ * ------------------------------------------------------------------------- */ #include <linux/kernel.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/file.h> #include <linux/locks.h> #include <asm/bitops.h> diff --git a/fs/autofs/waitq.c b/fs/autofs/waitq.c index 7c7c8baf2502..c7da7f518f05 100644 --- a/fs/autofs/waitq.c +++ b/fs/autofs/waitq.c @@ -10,7 +10,7 @@ * * ------------------------------------------------------------------------- */ -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/sched.h> #include <linux/signal.h> #include <linux/file.h> diff --git a/fs/autofs4/autofs_i.h b/fs/autofs4/autofs_i.h index 20724eb1c0a3..4dcdcaafcca9 100644 --- a/fs/autofs4/autofs_i.h +++ b/fs/autofs4/autofs_i.h @@ -20,7 +20,7 @@ #define AUTOFS_IOC_COUNT 32 #include <linux/kernel.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/sched.h> #include <linux/string.h> #include <linux/wait.h> diff --git a/fs/autofs4/inode.c b/fs/autofs4/inode.c index dd7dd07acc5e..f23705aeb1a8 100644 --- a/fs/autofs4/inode.c +++ b/fs/autofs4/inode.c @@ -11,7 +11,7 @@ * ------------------------------------------------------------------------- */ #include <linux/kernel.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/file.h> #include <linux/locks.h> #include <asm/bitops.h> diff --git a/fs/autofs4/waitq.c b/fs/autofs4/waitq.c index a76cde227584..9e5fe900fa4c 100644 --- a/fs/autofs4/waitq.c +++ b/fs/autofs4/waitq.c @@ -10,7 +10,7 @@ * * ------------------------------------------------------------------------- */ -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/sched.h> #include <linux/signal.h> #include <linux/file.h> diff --git a/fs/binfmt_aout.c b/fs/binfmt_aout.c index b16b0db6a258..42f746fb7b85 100644 --- a/fs/binfmt_aout.c +++ b/fs/binfmt_aout.c @@ -20,7 +20,7 @@ #include <linux/fcntl.h> #include <linux/ptrace.h> #include <linux/user.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/binfmts.h> #include <linux/personality.h> #include <linux/init.h> diff --git a/fs/binfmt_elf.c b/fs/binfmt_elf.c index c84164fc4570..6841b4acb1f3 100644 --- a/fs/binfmt_elf.c +++ b/fs/binfmt_elf.c @@ -24,7 +24,7 @@ #include <linux/file.h> #include <linux/fcntl.h> #include <linux/ptrace.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/shm.h> #include <linux/personality.h> #include <linux/elfcore.h> diff --git a/fs/binfmt_em86.c b/fs/binfmt_em86.c index 95c24a70a3d9..dfe8df28172b 100644 --- a/fs/binfmt_em86.c +++ b/fs/binfmt_em86.c @@ -11,7 +11,7 @@ #include <linux/module.h> #include <linux/string.h> #include <linux/stat.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/locks.h> #include <linux/smp_lock.h> #include <linux/binfmts.h> diff --git a/fs/binfmt_misc.c b/fs/binfmt_misc.c index c1653647946a..5ad853910b69 100644 --- a/fs/binfmt_misc.c +++ b/fs/binfmt_misc.c @@ -21,7 +21,7 @@ #include <linux/kernel.h> #include <linux/errno.h> #include <linux/fs.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/binfmts.h> #include <linux/init.h> #include <linux/proc_fs.h> diff --git a/fs/binfmt_script.c b/fs/binfmt_script.c index ae7de4c24663..2348332e4880 100644 --- a/fs/binfmt_script.c +++ b/fs/binfmt_script.c @@ -8,7 +8,7 @@ #include <linux/module.h> #include <linux/string.h> #include <linux/stat.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/binfmts.h> #include <linux/init.h> #include <linux/file.h> diff --git a/fs/block_dev.c b/fs/block_dev.c index 103332fc437b..8761603667a0 100644 --- a/fs/block_dev.c +++ b/fs/block_dev.c @@ -9,8 +9,9 @@ #include <linux/mm.h> #include <linux/locks.h> #include <linux/fcntl.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/kmod.h> +#include <linux/major.h> #include <linux/devfs_fs_kernel.h> #include <linux/smp_lock.h> diff --git a/fs/buffer.c b/fs/buffer.c index bea5f09e50ad..6ca6f166bbf6 100644 --- a/fs/buffer.c +++ b/fs/buffer.c @@ -31,7 +31,7 @@ #include <linux/config.h> #include <linux/sched.h> #include <linux/fs.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/locks.h> #include <linux/errno.h> #include <linux/swap.h> diff --git a/fs/coda/cnode.c b/fs/coda/cnode.c index 12de14e7b0c5..53208881d9c4 100644 --- a/fs/coda/cnode.c +++ b/fs/coda/cnode.c @@ -194,9 +194,14 @@ struct inode *coda_fid_to_inode(ViceFid *fid, struct super_block *sb) return NULL; } - /* check if this inode is linked to a cnode */ cii = ITOC(inode); + /* The inode might already be purged due to memory pressure */ + if ( coda_fideq(&cii->c_fid, &NullFID) ) { + iput(inode); + return NULL; + } + /* we shouldn't have inode collisions anymore */ if ( !coda_fideq(fid, &cii->c_fid) ) BUG(); diff --git a/fs/coda/psdev.c b/fs/coda/psdev.c index ef05ac2fbb35..ed88f70cd492 100644 --- a/fs/coda/psdev.c +++ b/fs/coda/psdev.c @@ -23,7 +23,7 @@ #include <linux/major.h> #include <linux/sched.h> #include <linux/lp.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/ioport.h> #include <linux/fcntl.h> #include <linux/delay.h> diff --git a/fs/coda/sysctl.c b/fs/coda/sysctl.c index 4215c3b41506..4bde88515373 100644 --- a/fs/coda/sysctl.c +++ b/fs/coda/sysctl.c @@ -17,7 +17,7 @@ #include <linux/sysctl.h> #include <linux/swapctl.h> #include <linux/proc_fs.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/stat.h> #include <linux/ctype.h> #include <asm/bitops.h> diff --git a/fs/coda/upcall.c b/fs/coda/upcall.c index 6eb6f2e71c20..2fee47e4cc3d 100644 --- a/fs/coda/upcall.c +++ b/fs/coda/upcall.c @@ -519,7 +519,7 @@ int venus_pioctl(struct super_block *sb, struct ViceFid *fid, /* build packet for Venus */ if (data->vi.in_size > VC_MAXDATASIZE) { - error = EINVAL; + error = -EINVAL; goto exit; } @@ -539,7 +539,7 @@ int venus_pioctl(struct super_block *sb, struct ViceFid *fid, /* get the data out of user space */ if ( copy_from_user((char*)inp + (long)inp->coda_ioctl.data, data->vi.in, data->vi.in_size) ) { - error = EINVAL; + error = -EINVAL; goto exit; } @@ -557,7 +557,7 @@ int venus_pioctl(struct super_block *sb, struct ViceFid *fid, CDEBUG(D_FILE, "return len %d <= request len %d\n", outp->coda_ioctl.len, data->vi.out_size); - error = EINVAL; + error = -EINVAL; } else { error = verify_area(VERIFY_WRITE, data->vi.out, data->vi.out_size); @@ -566,7 +566,7 @@ int venus_pioctl(struct super_block *sb, struct ViceFid *fid, if (copy_to_user(data->vi.out, (char *)outp + (long)outp->coda_ioctl.data, data->vi.out_size)) { - error = EINVAL; + error = -EINVAL; goto exit; } } diff --git a/fs/dcache.c b/fs/dcache.c index dae4ea7c0060..3b7851216d6d 100644 --- a/fs/dcache.c +++ b/fs/dcache.c @@ -18,7 +18,7 @@ #include <linux/string.h> #include <linux/mm.h> #include <linux/fs.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/slab.h> #include <linux/init.h> #include <linux/smp_lock.h> @@ -341,8 +341,7 @@ void prune_dcache(int count) if (dentry->d_flags & DCACHE_REFERENCED) { dentry->d_flags &= ~DCACHE_REFERENCED; list_add(&dentry->d_lru, &dentry_unused); - count--; - continue; + goto next; } dentry_stat.nr_unused--; @@ -351,6 +350,7 @@ void prune_dcache(int count) BUG(); prune_one_dentry(dentry); + next: if (!--count) break; } @@ -691,7 +691,7 @@ struct dentry * d_alloc_root(struct inode * root_inode) static inline struct list_head * d_hash(struct dentry * parent, unsigned long hash) { hash += (unsigned long) parent / L1_CACHE_BYTES; - hash = hash ^ (hash >> D_HASHBITS) ^ (hash >> D_HASHBITS*2); + hash = hash ^ (hash >> D_HASHBITS); return dentry_hashtable + (hash & D_HASHMASK); } diff --git a/fs/devfs/base.c b/fs/devfs/base.c index 5c412e301f99..b26854355a70 100644 --- a/fs/devfs/base.c +++ b/fs/devfs/base.c @@ -491,7 +491,7 @@ #include <linux/kernel.h> #include <linux/wait.h> #include <linux/string.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/ioport.h> #include <linux/delay.h> #include <linux/ctype.h> diff --git a/fs/devpts/inode.c b/fs/devpts/inode.c index 0bb8826d8eff..175a40792fb3 100644 --- a/fs/devpts/inode.c +++ b/fs/devpts/inode.c @@ -19,7 +19,7 @@ #include <linux/kernel.h> #include <linux/locks.h> #include <linux/major.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/stat.h> #include <linux/tty.h> #include <asm/bitops.h> diff --git a/fs/dquot.c b/fs/dquot.c index a63685d34fdd..fd1c6b67bdb3 100644 --- a/fs/dquot.c +++ b/fs/dquot.c @@ -47,7 +47,7 @@ #include <linux/stat.h> #include <linux/tty.h> #include <linux/file.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/mount.h> #include <linux/smp.h> #include <linux/smp_lock.h> diff --git a/fs/fat/buffer.c b/fs/fat/buffer.c index 6e8716b1e190..373dcee839a9 100644 --- a/fs/fat/buffer.c +++ b/fs/fat/buffer.c @@ -5,7 +5,7 @@ */ #include <linux/mm.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/string.h> #include <linux/fs.h> #include <linux/msdos_fs.h> diff --git a/fs/fat/inode.c b/fs/fat/inode.c index f13260966e26..b559bbe47083 100644 --- a/fs/fat/inode.c +++ b/fs/fat/inode.c @@ -27,7 +27,7 @@ #include <linux/stat.h> #include <linux/locks.h> #include <linux/fat_cvf.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/smp_lock.h> #include "msbuffer.h" diff --git a/fs/fifo.c b/fs/fifo.c index ee048ac02c02..f5738c126bce 100644 --- a/fs/fifo.c +++ b/fs/fifo.c @@ -10,7 +10,7 @@ */ #include <linux/mm.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/smp_lock.h> static void wait_for_partner(struct inode* inode, unsigned int* cnt) diff --git a/fs/file.c b/fs/file.c index 84d0275cdeb3..51d9f7a2588a 100644 --- a/fs/file.c +++ b/fs/file.c @@ -9,7 +9,7 @@ #include <linux/fs.h> #include <linux/mm.h> #include <linux/sched.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/vmalloc.h> #include <asm/bitops.h> diff --git a/fs/hpfs/hpfs_fn.h b/fs/hpfs/hpfs_fn.h index 78341ca16e54..e30e6137e143 100644 --- a/fs/hpfs/hpfs_fn.h +++ b/fs/hpfs/hpfs_fn.h @@ -12,7 +12,7 @@ #include <linux/fs.h> #include <linux/hpfs_fs.h> #include <linux/errno.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/kernel.h> #include <linux/sched.h> #include <linux/locks.h> diff --git a/fs/inode.c b/fs/inode.c index ed8b98018247..822e5187a52c 100644 --- a/fs/inode.c +++ b/fs/inode.c @@ -725,7 +725,7 @@ static struct inode * get_new_inode(struct super_block *sb, unsigned long ino, s static inline unsigned long hash(struct super_block *sb, unsigned long i_ino) { unsigned long tmp = i_ino + ((unsigned long) sb / L1_CACHE_BYTES); - tmp = tmp + (tmp >> I_HASHBITS) + (tmp >> I_HASHBITS*2); + tmp = tmp + (tmp >> I_HASHBITS); return tmp & I_HASHMASK; } diff --git a/fs/iobuf.c b/fs/iobuf.c index 4be2258702d3..88507441d407 100644 --- a/fs/iobuf.c +++ b/fs/iobuf.c @@ -7,7 +7,7 @@ */ #include <linux/iobuf.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/slab.h> static kmem_cache_t *kiobuf_cachep; diff --git a/fs/ioctl.c b/fs/ioctl.c index 21af77a3a168..f46bdb1edb0f 100644 --- a/fs/ioctl.c +++ b/fs/ioctl.c @@ -9,6 +9,7 @@ #include <linux/file.h> #include <asm/uaccess.h> +#include <asm/ioctls.h> static int file_ioctl(struct file *filp,unsigned int cmd,unsigned long arg) { diff --git a/fs/isofs/dir.c b/fs/isofs/dir.c index 6f0957dce489..48a358de8417 100644 --- a/fs/isofs/dir.c +++ b/fs/isofs/dir.c @@ -17,7 +17,7 @@ #include <linux/stat.h> #include <linux/string.h> #include <linux/mm.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/sched.h> #include <linux/locks.h> #include <linux/config.h> diff --git a/fs/isofs/inode.c b/fs/isofs/inode.c index 757a870701ff..90f511bdadb6 100644 --- a/fs/isofs/inode.c +++ b/fs/isofs/inode.c @@ -20,7 +20,7 @@ #include <linux/mm.h> #include <linux/string.h> #include <linux/locks.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/errno.h> #include <linux/cdrom.h> #include <linux/init.h> diff --git a/fs/isofs/joliet.c b/fs/isofs/joliet.c index 5b93f458154b..2aac3a8bc3ea 100644 --- a/fs/isofs/joliet.c +++ b/fs/isofs/joliet.c @@ -8,7 +8,7 @@ #include <linux/string.h> #include <linux/nls.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/iso_fs.h> /* diff --git a/fs/isofs/namei.c b/fs/isofs/namei.c index 3f44d90335fa..87fe121f8bbc 100644 --- a/fs/isofs/namei.c +++ b/fs/isofs/namei.c @@ -12,7 +12,7 @@ #include <linux/string.h> #include <linux/stat.h> #include <linux/fcntl.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/errno.h> #include <linux/config.h> /* Joliet? */ diff --git a/fs/isofs/rock.c b/fs/isofs/rock.c index e20f3ad61c75..c351f7af081c 100644 --- a/fs/isofs/rock.c +++ b/fs/isofs/rock.c @@ -11,7 +11,7 @@ #include <linux/iso_fs.h> #include <linux/string.h> #include <linux/mm.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/pagemap.h> #include <linux/smp_lock.h> diff --git a/fs/jffs/inode-v23.c b/fs/jffs/inode-v23.c index 94fd0797d148..d044ef3a377a 100644 --- a/fs/jffs/inode-v23.c +++ b/fs/jffs/inode-v23.c @@ -39,7 +39,7 @@ #include <linux/init.h> #include <linux/types.h> #include <linux/errno.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/jffs.h> #include <linux/fs.h> #include <linux/locks.h> diff --git a/fs/jffs/intrep.c b/fs/jffs/intrep.c index 09e88d7bad77..3af256303517 100644 --- a/fs/jffs/intrep.c +++ b/fs/jffs/intrep.c @@ -58,7 +58,7 @@ #define __NO_VERSION__ #include <linux/types.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/jffs.h> #include <linux/fs.h> #include <linux/stat.h> diff --git a/fs/jffs/jffs_fm.c b/fs/jffs/jffs_fm.c index b9bbeb4a9386..7ae964ab828e 100644 --- a/fs/jffs/jffs_fm.c +++ b/fs/jffs/jffs_fm.c @@ -17,7 +17,7 @@ * */ #define __NO_VERSION__ -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/blkdev.h> #include <linux/jffs.h> #include "jffs_fm.h" diff --git a/fs/lockd/host.c b/fs/lockd/host.c index f14c9fcdfd05..02be5d927532 100644 --- a/fs/lockd/host.c +++ b/fs/lockd/host.c @@ -10,7 +10,7 @@ #include <linux/types.h> #include <linux/sched.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/in.h> #include <linux/sunrpc/clnt.h> #include <linux/sunrpc/svc.h> diff --git a/fs/lockd/svc.c b/fs/lockd/svc.c index 924741f9e96b..02e7115fe19b 100644 --- a/fs/lockd/svc.c +++ b/fs/lockd/svc.c @@ -22,7 +22,7 @@ #include <linux/uio.h> #include <linux/version.h> #include <linux/unistd.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/smp.h> #include <linux/smp_lock.h> diff --git a/fs/lockd/svc4proc.c b/fs/lockd/svc4proc.c index a1e30454eed2..bb72c629ed5b 100644 --- a/fs/lockd/svc4proc.c +++ b/fs/lockd/svc4proc.c @@ -9,7 +9,7 @@ #include <linux/types.h> #include <linux/sched.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/in.h> #include <linux/sunrpc/svc.h> #include <linux/sunrpc/clnt.h> diff --git a/fs/lockd/svcproc.c b/fs/lockd/svcproc.c index b0cbd4a5097d..5002972ec0f6 100644 --- a/fs/lockd/svcproc.c +++ b/fs/lockd/svcproc.c @@ -10,7 +10,7 @@ #include <linux/config.h> #include <linux/types.h> #include <linux/sched.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/in.h> #include <linux/sunrpc/svc.h> #include <linux/sunrpc/clnt.h> diff --git a/fs/lockd/svcshare.c b/fs/lockd/svcshare.c index ab06a5d31c52..73fbb1ba414b 100644 --- a/fs/lockd/svcshare.c +++ b/fs/lockd/svcshare.c @@ -9,7 +9,7 @@ #include <linux/sched.h> #include <linux/unistd.h> #include <linux/string.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/sunrpc/clnt.h> #include <linux/sunrpc/svc.h> diff --git a/fs/locks.c b/fs/locks.c index e65b593946c6..7eed30fec934 100644 --- a/fs/locks.c +++ b/fs/locks.c @@ -115,7 +115,7 @@ * Stephen Rothwell <sfr@linuxcare.com>, June, 2000. */ -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/file.h> #include <linux/smp_lock.h> #include <linux/init.h> diff --git a/fs/minix/inode.c b/fs/minix/inode.c index 7ff0b7bd9ee7..d30699826368 100644 --- a/fs/minix/inode.c +++ b/fs/minix/inode.c @@ -14,7 +14,7 @@ #include <linux/sched.h> #include <linux/kernel.h> #include <linux/mm.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/string.h> #include <linux/stat.h> #include <linux/locks.h> diff --git a/fs/ncpfs/dir.c b/fs/ncpfs/dir.c index c16d93614d55..92d0aaba15e2 100644 --- a/fs/ncpfs/dir.c +++ b/fs/ncpfs/dir.c @@ -15,7 +15,7 @@ #include <linux/errno.h> #include <linux/stat.h> #include <linux/kernel.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/vmalloc.h> #include <linux/mm.h> #include <asm/uaccess.h> diff --git a/fs/ncpfs/file.c b/fs/ncpfs/file.c index ac4de2b832b3..3bb051f28510 100644 --- a/fs/ncpfs/file.c +++ b/fs/ncpfs/file.c @@ -16,7 +16,7 @@ #include <linux/stat.h> #include <linux/mm.h> #include <linux/locks.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/vmalloc.h> #include <linux/ncp_fs.h> diff --git a/fs/ncpfs/inode.c b/fs/ncpfs/inode.c index badfc7817430..6cb6e863f2e1 100644 --- a/fs/ncpfs/inode.c +++ b/fs/ncpfs/inode.c @@ -24,7 +24,7 @@ #include <linux/locks.h> #include <linux/file.h> #include <linux/fcntl.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/vmalloc.h> #include <linux/init.h> diff --git a/fs/ncpfs/mmap.c b/fs/ncpfs/mmap.c index 9261eb453ca8..50f52119de7c 100644 --- a/fs/ncpfs/mmap.c +++ b/fs/ncpfs/mmap.c @@ -14,7 +14,7 @@ #include <linux/errno.h> #include <linux/mman.h> #include <linux/string.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/fcntl.h> #include <linux/ncp_fs.h> diff --git a/fs/ncpfs/ncplib_kernel.h b/fs/ncpfs/ncplib_kernel.h index 162c89b4b4f4..43c1306ac903 100644 --- a/fs/ncpfs/ncplib_kernel.h +++ b/fs/ncpfs/ncplib_kernel.h @@ -17,7 +17,7 @@ #include <linux/fs.h> #include <linux/types.h> #include <linux/errno.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/stat.h> #include <linux/fcntl.h> #include <linux/pagemap.h> diff --git a/fs/nfs/dir.c b/fs/nfs/dir.c index 564a47b321eb..c3a3a913e02f 100644 --- a/fs/nfs/dir.c +++ b/fs/nfs/dir.c @@ -23,7 +23,7 @@ #include <linux/fcntl.h> #include <linux/string.h> #include <linux/kernel.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/mm.h> #include <linux/sunrpc/clnt.h> #include <linux/nfs_fs.h> diff --git a/fs/nfs/file.c b/fs/nfs/file.c index 2b3f22777b0f..6f9b324e01cf 100644 --- a/fs/nfs/file.c +++ b/fs/nfs/file.c @@ -24,7 +24,7 @@ #include <linux/nfs_fs.h> #include <linux/nfs_mount.h> #include <linux/mm.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/pagemap.h> #include <linux/lockd/bind.h> #include <linux/smp_lock.h> diff --git a/fs/nfs/flushd.c b/fs/nfs/flushd.c index 502b490b8d78..601425cffba9 100644 --- a/fs/nfs/flushd.c +++ b/fs/nfs/flushd.c @@ -24,7 +24,7 @@ #include <linux/config.h> #include <linux/types.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/pagemap.h> #include <linux/file.h> diff --git a/fs/nfs/nfs2xdr.c b/fs/nfs/nfs2xdr.c index 7fef7da99b81..c24021a6d81a 100644 --- a/fs/nfs/nfs2xdr.c +++ b/fs/nfs/nfs2xdr.c @@ -12,7 +12,7 @@ #include <linux/param.h> #include <linux/sched.h> #include <linux/mm.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/utsname.h> #include <linux/errno.h> #include <linux/string.h> diff --git a/fs/nfs/nfs3xdr.c b/fs/nfs/nfs3xdr.c index f6260a552059..ab1110227c55 100644 --- a/fs/nfs/nfs3xdr.c +++ b/fs/nfs/nfs3xdr.c @@ -9,7 +9,7 @@ #include <linux/param.h> #include <linux/sched.h> #include <linux/mm.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/utsname.h> #include <linux/errno.h> #include <linux/string.h> diff --git a/fs/nfs/proc.c b/fs/nfs/proc.c index 17bb39f36ca8..e19009ea7e30 100644 --- a/fs/nfs/proc.c +++ b/fs/nfs/proc.c @@ -29,7 +29,7 @@ #include <linux/types.h> #include <linux/param.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/sched.h> #include <linux/mm.h> #include <linux/utsname.h> diff --git a/fs/nfs/read.c b/fs/nfs/read.c index 211d3a3db0a3..beb7bd8ddda9 100644 --- a/fs/nfs/read.c +++ b/fs/nfs/read.c @@ -22,7 +22,7 @@ #include <linux/fcntl.h> #include <linux/stat.h> #include <linux/mm.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/pagemap.h> #include <linux/sunrpc/clnt.h> #include <linux/nfs_fs.h> diff --git a/fs/nfs/symlink.c b/fs/nfs/symlink.c index eba7a859a750..4350cf8e73e8 100644 --- a/fs/nfs/symlink.c +++ b/fs/nfs/symlink.c @@ -20,7 +20,7 @@ #include <linux/pagemap.h> #include <linux/stat.h> #include <linux/mm.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/string.h> #include <linux/smp_lock.h> diff --git a/fs/nfs/unlink.c b/fs/nfs/unlink.c index f4abfe7b3796..51150971478c 100644 --- a/fs/nfs/unlink.c +++ b/fs/nfs/unlink.c @@ -6,7 +6,7 @@ * NOTE: we rely on holding the BKL for list manipulation protection. */ -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/string.h> #include <linux/dcache.h> #include <linux/sunrpc/sched.h> diff --git a/fs/nfs/write.c b/fs/nfs/write.c index 8b9a28556905..ac7fe27695c9 100644 --- a/fs/nfs/write.c +++ b/fs/nfs/write.c @@ -48,7 +48,7 @@ #include <linux/config.h> #include <linux/types.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/swap.h> #include <linux/pagemap.h> #include <linux/file.h> diff --git a/fs/nfsd/export.c b/fs/nfsd/export.c index 2beed5cf91b3..3db60bcc2d8a 100644 --- a/fs/nfsd/export.c +++ b/fs/nfsd/export.c @@ -15,7 +15,7 @@ */ #include <linux/unistd.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/stat.h> #include <linux/in.h> diff --git a/fs/nfsd/nfs3proc.c b/fs/nfsd/nfs3proc.c index a513bfbe052e..8051b15f8c90 100644 --- a/fs/nfsd/nfs3proc.c +++ b/fs/nfsd/nfs3proc.c @@ -18,7 +18,7 @@ #include <linux/in.h> #include <linux/version.h> #include <linux/unistd.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/major.h> #include <linux/sunrpc/svc.h> diff --git a/fs/nfsd/nfscache.c b/fs/nfsd/nfscache.c index 8a061ebcbed4..b13a8a3a725d 100644 --- a/fs/nfsd/nfscache.c +++ b/fs/nfsd/nfscache.c @@ -12,7 +12,7 @@ #include <linux/kernel.h> #include <linux/sched.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/string.h> #include <linux/sunrpc/svc.h> diff --git a/fs/nfsd/nfsctl.c b/fs/nfsd/nfsctl.c index 7a80fe990e01..7641c5b5252c 100644 --- a/fs/nfsd/nfsctl.c +++ b/fs/nfsd/nfsctl.c @@ -18,7 +18,7 @@ #include <linux/net.h> #include <linux/in.h> #include <linux/unistd.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/proc_fs.h> #include <linux/nfs.h> diff --git a/fs/nfsd/nfsfh.c b/fs/nfsd/nfsfh.c index 78c729c0941e..6e2c98a557a4 100644 --- a/fs/nfsd/nfsfh.c +++ b/fs/nfsd/nfsfh.c @@ -9,7 +9,7 @@ */ #include <linux/sched.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/fs.h> #include <linux/unistd.h> #include <linux/string.h> @@ -454,6 +454,7 @@ find_fh_dentry(struct super_block *sb, ino_t ino, int generation, ino_t dirino, if (tmp != dentry) { /* we lost a race, try again */ + dput(pdentry); dput(tmp); dput(dentry); dput(result); /* this will discard the whole free path, so we can up the semaphore */ diff --git a/fs/nfsd/nfsproc.c b/fs/nfsd/nfsproc.c index b5057d57b5f4..303792b58536 100644 --- a/fs/nfsd/nfsproc.c +++ b/fs/nfsd/nfsproc.c @@ -18,7 +18,7 @@ #include <linux/in.h> #include <linux/version.h> #include <linux/unistd.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/sunrpc/svc.h> #include <linux/nfsd/nfsd.h> @@ -252,8 +252,19 @@ nfsd_proc_create(struct svc_rqst *rqstp, struct nfsd_createargs *argp, if (attr->ia_valid & ATTR_MODE) { type = attr->ia_mode & S_IFMT; mode = attr->ia_mode & ~S_IFMT; - if (!type) /* HP weirdness */ - type = S_IFREG; + if (!type) { + /* no type, so if target exists, assume same as that, + * else assume a file */ + if (inode) { + type = inode->i_mode & S_IFMT; + if (type == S_IFCHR || type == S_IFBLK) { + /* reserve rdev for later checking */ + attr->ia_size = inode->i_rdev; + attr->ia_valid |= ATTR_SIZE; + } + } else + type = S_IFREG; + } } else if (inode) { type = inode->i_mode & S_IFMT; mode = inode->i_mode & ~S_IFMT; diff --git a/fs/nfsd/nfssvc.c b/fs/nfsd/nfssvc.c index a4a642c447dc..0537c06d7af6 100644 --- a/fs/nfsd/nfssvc.c +++ b/fs/nfsd/nfssvc.c @@ -19,7 +19,7 @@ #include <linux/uio.h> #include <linux/version.h> #include <linux/unistd.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/smp.h> #include <linux/smp_lock.h> diff --git a/fs/nfsd/nfsxdr.c b/fs/nfsd/nfsxdr.c index fcbddc5ed776..7bcc37c413f3 100644 --- a/fs/nfsd/nfsxdr.c +++ b/fs/nfsd/nfsxdr.c @@ -26,7 +26,7 @@ * Mapping of S_IF* types to NFS file types */ static u32 nfs_ftypes[] = { - NFNON, NFFIFO, NFCHR, NFBAD, + NFNON, NFCHR, NFCHR, NFBAD, NFDIR, NFBAD, NFBLK, NFBAD, NFREG, NFBAD, NFLNK, NFBAD, NFSOCK, NFBAD, NFLNK, NFBAD, @@ -136,20 +136,25 @@ decode_sattr(u32 *p, struct iattr *iap) static inline u32 * encode_fattr(struct svc_rqst *rqstp, u32 *p, struct inode *inode) { + int type = (inode->i_mode & S_IFMT); if (!inode) return 0; - *p++ = htonl(nfs_ftypes[(inode->i_mode & S_IFMT) >> 12]); + *p++ = htonl(nfs_ftypes[type >> 12]); *p++ = htonl((u32) inode->i_mode); *p++ = htonl((u32) inode->i_nlink); *p++ = htonl((u32) nfsd_ruid(rqstp, inode->i_uid)); *p++ = htonl((u32) nfsd_rgid(rqstp, inode->i_gid)); - if (S_ISLNK(inode->i_mode) && inode->i_size > NFS_MAXPATHLEN) { + + if (S_ISLNK(type) && inode->i_size > NFS_MAXPATHLEN) { *p++ = htonl(NFS_MAXPATHLEN); } else { *p++ = htonl((u32) inode->i_size); } *p++ = htonl((u32) inode->i_blksize); - *p++ = htonl((u32) inode->i_rdev); + if (S_ISCHR(type) || S_ISBLK(type)) + *p++ = htonl((u32) inode->i_rdev); + else + *p++ = htonl(0xffffffff); *p++ = htonl((u32) inode->i_blocks); *p++ = htonl((u32) inode->i_dev); *p++ = htonl((u32) inode->i_ino); diff --git a/fs/nfsd/vfs.c b/fs/nfsd/vfs.c index bd01b57f5c0c..43fc14a4fcbf 100644 --- a/fs/nfsd/vfs.c +++ b/fs/nfsd/vfs.c @@ -29,7 +29,7 @@ #include <linux/fcntl.h> #include <linux/net.h> #include <linux/unistd.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/in.h> #define __NO_VERSION__ #include <linux/module.h> diff --git a/fs/nls/nls_base.c b/fs/nls/nls_base.c index e98d8490c6f0..1db7ffd824b3 100644 --- a/fs/nls/nls_base.c +++ b/fs/nls/nls_base.c @@ -13,7 +13,7 @@ #include <linux/string.h> #include <linux/config.h> #include <linux/nls.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/errno.h> #ifdef CONFIG_KMOD #include <linux/kmod.h> diff --git a/fs/open.c b/fs/open.c index 309aa0667994..c6b8f7b89c58 100644 --- a/fs/open.c +++ b/fs/open.c @@ -13,6 +13,7 @@ #include <linux/dnotify.h> #include <linux/module.h> #include <linux/slab.h> +#include <linux/tty.h> #include <asm/uaccess.h> diff --git a/fs/openpromfs/inode.c b/fs/openpromfs/inode.c index e264dd3d3a28..6c8912cb194d 100644 --- a/fs/openpromfs/inode.c +++ b/fs/openpromfs/inode.c @@ -12,7 +12,7 @@ #include <linux/openprom_fs.h> #include <linux/locks.h> #include <linux/init.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/smp_lock.h> #include <asm/openprom.h> diff --git a/fs/pipe.c b/fs/pipe.c index c7f27a520a2f..94aa78853268 100644 --- a/fs/pipe.c +++ b/fs/pipe.c @@ -7,11 +7,12 @@ #include <linux/mm.h> #include <linux/file.h> #include <linux/poll.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/module.h> #include <linux/init.h> #include <asm/uaccess.h> +#include <asm/ioctls.h> /* * We use a start+len construction, which provides full use of the diff --git a/fs/qnx4/inode.c b/fs/qnx4/inode.c index c40f488e5704..490c3d047ed0 100644 --- a/fs/qnx4/inode.c +++ b/fs/qnx4/inode.c @@ -17,7 +17,7 @@ #include <linux/types.h> #include <linux/string.h> #include <linux/errno.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/qnx4_fs.h> #include <linux/fs.h> #include <linux/locks.h> diff --git a/fs/qnx4/truncate.c b/fs/qnx4/truncate.c index a25bf1daff7d..9dad91a173ad 100644 --- a/fs/qnx4/truncate.c +++ b/fs/qnx4/truncate.c @@ -13,7 +13,7 @@ #include <linux/config.h> #include <linux/types.h> #include <linux/errno.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/qnx4_fs.h> #include <linux/fs.h> #include <linux/locks.h> diff --git a/fs/read_write.c b/fs/read_write.c index 00b0daf7e4b2..2d264640c901 100644 --- a/fs/read_write.c +++ b/fs/read_write.c @@ -4,7 +4,7 @@ * Copyright (C) 1991, 1992 Linus Torvalds */ -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/stat.h> #include <linux/fcntl.h> #include <linux/file.h> diff --git a/fs/romfs/inode.c b/fs/romfs/inode.c index 76c811852d98..7edadf2aca24 100644 --- a/fs/romfs/inode.c +++ b/fs/romfs/inode.c @@ -67,7 +67,7 @@ #include <linux/module.h> #include <linux/types.h> #include <linux/errno.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/romfs_fs.h> #include <linux/fs.h> #include <linux/locks.h> diff --git a/fs/select.c b/fs/select.c index 975013e7f809..cf7459d3edfd 100644 --- a/fs/select.c +++ b/fs/select.c @@ -14,7 +14,7 @@ * of fds to overcome nfds < 16390 descriptors limit (Tigran Aivazian). */ -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/smp_lock.h> #include <linux/poll.h> #include <linux/file.h> diff --git a/fs/smbfs/file.c b/fs/smbfs/file.c index 0a95735fddc3..ac48abc8e9f1 100644 --- a/fs/smbfs/file.c +++ b/fs/smbfs/file.c @@ -13,7 +13,7 @@ #include <linux/fcntl.h> #include <linux/stat.h> #include <linux/mm.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/pagemap.h> #include <linux/smp_lock.h> diff --git a/fs/smbfs/inode.c b/fs/smbfs/inode.c index e502fb60b0e6..ac5f498088de 100644 --- a/fs/smbfs/inode.c +++ b/fs/smbfs/inode.c @@ -16,7 +16,7 @@ #include <linux/stat.h> #include <linux/errno.h> #include <linux/locks.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/init.h> #include <linux/file.h> #include <linux/dcache.h> diff --git a/fs/smbfs/proc.c b/fs/smbfs/proc.c index f0444f97d7d4..3f21086fc73e 100644 --- a/fs/smbfs/proc.c +++ b/fs/smbfs/proc.c @@ -9,7 +9,7 @@ #include <linux/types.h> #include <linux/errno.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/fs.h> #include <linux/file.h> #include <linux/stat.h> diff --git a/fs/super.c b/fs/super.c index 6262c76754a9..6482259ce233 100644 --- a/fs/super.c +++ b/fs/super.c @@ -22,12 +22,13 @@ #include <linux/config.h> #include <linux/string.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/locks.h> #include <linux/smp_lock.h> #include <linux/devfs_fs_kernel.h> #include <linux/fd.h> #include <linux/init.h> +#include <linux/major.h> #include <linux/quotaops.h> #include <linux/acct.h> diff --git a/fs/udf/dir.c b/fs/udf/dir.c index 9ec279e47a62..bf6d9988de48 100644 --- a/fs/udf/dir.c +++ b/fs/udf/dir.c @@ -38,7 +38,7 @@ #include <linux/string.h> #include <linux/errno.h> #include <linux/mm.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/udf_fs.h> #endif diff --git a/fs/udf/namei.c b/fs/udf/namei.c index 9cc2f3d29760..c37d298fe372 100644 --- a/fs/udf/namei.c +++ b/fs/udf/namei.c @@ -31,7 +31,7 @@ #include <linux/string.h> #include <linux/errno.h> #include <linux/mm.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/quotaops.h> #include <linux/udf_fs.h> diff --git a/fs/udf/partition.c b/fs/udf/partition.c index dcdf7666c022..a2c34d518b15 100644 --- a/fs/udf/partition.c +++ b/fs/udf/partition.c @@ -30,7 +30,7 @@ #include <linux/fs.h> #include <linux/string.h> #include <linux/udf_fs.h> -#include <linux/malloc.h> +#include <linux/slab.h> inline Uint32 udf_get_pblock(struct super_block *sb, Uint32 block, Uint16 partition, Uint32 offset) { diff --git a/fs/udf/super.c b/fs/udf/super.c index f5e9b0b446d8..1e089c0b1271 100644 --- a/fs/udf/super.c +++ b/fs/udf/super.c @@ -48,7 +48,7 @@ #include <linux/config.h> #include <linux/version.h> #include <linux/blkdev.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/kernel.h> #include <linux/locks.h> #include <linux/module.h> diff --git a/fs/udf/symlink.c b/fs/udf/symlink.c index be4e80165eb0..caa2b72664f1 100644 --- a/fs/udf/symlink.c +++ b/fs/udf/symlink.c @@ -32,7 +32,7 @@ #include <linux/sched.h> #include <linux/mm.h> #include <linux/stat.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/pagemap.h> #include <linux/smp_lock.h> #include "udf_i.h" diff --git a/fs/ufs/super.c b/fs/ufs/super.c index 6d83d7c51863..3602915135d3 100644 --- a/fs/ufs/super.c +++ b/fs/ufs/super.c @@ -73,7 +73,7 @@ #include <linux/errno.h> #include <linux/fs.h> #include <linux/ufs_fs.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/sched.h> #include <linux/stat.h> #include <linux/string.h> diff --git a/fs/ufs/util.c b/fs/ufs/util.c index 334e0efdb4ea..54a0ab80f59a 100644 --- a/fs/ufs/util.c +++ b/fs/ufs/util.c @@ -7,7 +7,7 @@ */ #include <linux/string.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/locks.h> #include "swab.h" diff --git a/fs/umsdos/dir.c b/fs/umsdos/dir.c index 2e0b7bb14767..c4f28da7770d 100644 --- a/fs/umsdos/dir.c +++ b/fs/umsdos/dir.c @@ -15,7 +15,7 @@ #include <linux/stat.h> #include <linux/limits.h> #include <linux/umsdos_fs.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <linux/pagemap.h> #define UMSDOS_SPECIAL_DIRFPOS 3 diff --git a/fs/umsdos/namei.c b/fs/umsdos/namei.c index c29387f3c759..560d3f5cd4e5 100644 --- a/fs/umsdos/namei.c +++ b/fs/umsdos/namei.c @@ -20,7 +20,7 @@ #include <linux/string.h> #include <linux/msdos_fs.h> #include <linux/umsdos_fs.h> -#include <linux/malloc.h> +#include <linux/slab.h> #define UMSDOS_DIR_LOCK diff --git a/fs/umsdos/rdir.c b/fs/umsdos/rdir.c index ff208e6ac253..e107a95f5002 100644 --- a/fs/umsdos/rdir.c +++ b/fs/umsdos/rdir.c @@ -14,7 +14,7 @@ #include <linux/stat.h> #include <linux/limits.h> #include <linux/umsdos_fs.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include <asm/uaccess.h> diff --git a/fs/vfat/namei.c b/fs/vfat/namei.c index 35c6529bec11..b8f8d6e1b11f 100644 --- a/fs/vfat/namei.c +++ b/fs/vfat/namei.c @@ -24,7 +24,7 @@ #include <linux/ctype.h> #include <linux/stat.h> #include <linux/mm.h> -#include <linux/malloc.h> +#include <linux/slab.h> #include "../fat/msbuffer.h" |
