From e8edc6e03a5c8562dc70a6d969f732bdb355a7e7 Mon Sep 17 00:00:00 2001 From: Alexey Dobriyan Date: Mon, 21 May 2007 01:22:52 +0400 Subject: Detach sched.h from mm.h First thing mm.h does is including sched.h solely for can_do_mlock() inline function which has "current" dereference inside. By dealing with can_do_mlock() mm.h can be detached from sched.h which is good. See below, why. This patch a) removes unconditional inclusion of sched.h from mm.h b) makes can_do_mlock() normal function in mm/mlock.c c) exports can_do_mlock() to not break compilation d) adds sched.h inclusions back to files that were getting it indirectly. e) adds less bloated headers to some files (asm/signal.h, jiffies.h) that were getting them indirectly Net result is: a) mm.h users would get less code to open, read, preprocess, parse, ... if they don't need sched.h b) sched.h stops being dependency for significant number of files: on x86_64 allmodconfig touching sched.h results in recompile of 4083 files, after patch it's only 3744 (-8.3%). Cross-compile tested on all arm defconfigs, all mips defconfigs, all powerpc defconfigs, alpha alpha-up arm i386 i386-up i386-defconfig i386-allnoconfig ia64 ia64-up m68k mips parisc parisc-up powerpc powerpc-up s390 s390-up sparc sparc-up sparc64 sparc64-up um-x86_64 x86_64 x86_64-up x86_64-defconfig x86_64-allnoconfig as well as my two usual configs. Signed-off-by: Alexey Dobriyan Signed-off-by: Linus Torvalds --- fs/9p/vfs_addr.c | 1 + fs/9p/vfs_dentry.c | 1 + fs/9p/vfs_inode.c | 1 + fs/9p/vfs_super.c | 1 + fs/affs/inode.c | 2 +- fs/affs/super.c | 1 + fs/afs/callback.c | 1 + fs/afs/cell.c | 1 + fs/afs/dir.c | 1 + fs/afs/inode.c | 1 + fs/afs/internal.h | 1 + fs/afs/main.c | 1 + fs/afs/proc.c | 1 + fs/afs/security.c | 1 + fs/afs/super.c | 1 + fs/afs/vlocation.c | 1 + fs/afs/vnode.c | 1 + fs/afs/volume.c | 1 + fs/binfmt_misc.c | 2 +- fs/coda/cache.c | 1 + fs/coda/upcall.c | 2 +- fs/configfs/inode.c | 1 + fs/ecryptfs/messaging.c | 2 +- fs/fifo.c | 1 + fs/fuse/file.c | 1 + fs/fuse/inode.c | 1 + fs/gfs2/glock.h | 1 + fs/hfs/inode.c | 1 + fs/hfsplus/inode.c | 1 + fs/hpfs/buffer.c | 2 +- fs/hpfs/namei.c | 2 +- fs/hpfs/super.c | 1 + fs/minix/bitmap.c | 1 + fs/ncpfs/file.c | 1 + fs/ncpfs/ioctl.c | 1 + fs/nfs/client.c | 2 +- fs/nfs/dir.c | 1 + fs/nfs/file.c | 1 + fs/nfs/inode.c | 2 +- fs/nfs/pagelist.c | 1 + fs/nfsd/nfs4callback.c | 1 + fs/nfsd/nfs4recover.c | 2 +- fs/nfsd/nfssvc.c | 2 +- fs/ntfs/file.c | 1 + fs/ramfs/inode.c | 2 +- fs/smbfs/dir.c | 1 + fs/smbfs/file.c | 1 + fs/smbfs/inode.c | 1 + fs/smbfs/request.c | 1 + fs/sysfs/inode.c | 1 + fs/udf/file.c | 1 + fs/udf/namei.c | 1 + 52 files changed, 52 insertions(+), 11 deletions(-) (limited to 'fs') diff --git a/fs/9p/vfs_addr.c b/fs/9p/vfs_addr.c index 3128aa948a4..9ac4ffe9ac7 100644 --- a/fs/9p/vfs_addr.c +++ b/fs/9p/vfs_addr.c @@ -32,6 +32,7 @@ #include #include #include +#include #include "debug.h" #include "v9fs.h" diff --git a/fs/9p/vfs_dentry.c b/fs/9p/vfs_dentry.c index 775e26e82cb..d93960429c0 100644 --- a/fs/9p/vfs_dentry.c +++ b/fs/9p/vfs_dentry.c @@ -33,6 +33,7 @@ #include #include #include +#include #include "debug.h" #include "v9fs.h" diff --git a/fs/9p/vfs_inode.c b/fs/9p/vfs_inode.c index 7624821729a..c76cd8fa3f6 100644 --- a/fs/9p/vfs_inode.c +++ b/fs/9p/vfs_inode.c @@ -33,6 +33,7 @@ #include #include #include +#include #include "debug.h" #include "v9fs.h" diff --git a/fs/9p/vfs_super.c b/fs/9p/vfs_super.c index 8eb9263a67b..7bdf8b32684 100644 --- a/fs/9p/vfs_super.c +++ b/fs/9p/vfs_super.c @@ -36,6 +36,7 @@ #include #include #include +#include #include "debug.h" #include "v9fs.h" diff --git a/fs/affs/inode.c b/fs/affs/inode.c index c5b9d73c084..4609a6c13fe 100644 --- a/fs/affs/inode.c +++ b/fs/affs/inode.c @@ -9,7 +9,7 @@ * * (C) 1991 Linus Torvalds - minix filesystem */ - +#include #include "affs.h" extern const struct inode_operations affs_symlink_inode_operations; diff --git a/fs/affs/super.c b/fs/affs/super.c index b800d451cd6..6d0ebc32153 100644 --- a/fs/affs/super.c +++ b/fs/affs/super.c @@ -15,6 +15,7 @@ #include #include #include +#include #include "affs.h" extern struct timezone sys_tz; diff --git a/fs/afs/callback.c b/fs/afs/callback.c index f64e40fefc0..bacf518c6fa 100644 --- a/fs/afs/callback.c +++ b/fs/afs/callback.c @@ -17,6 +17,7 @@ #include #include #include +#include #include "internal.h" unsigned afs_vnode_update_timeout = 10; diff --git a/fs/afs/cell.c b/fs/afs/cell.c index 9b1311a1df5..175a567db78 100644 --- a/fs/afs/cell.c +++ b/fs/afs/cell.c @@ -13,6 +13,7 @@ #include #include #include +#include #include #include "internal.h" diff --git a/fs/afs/dir.c b/fs/afs/dir.c index 719af4fb15d..546c59522eb 100644 --- a/fs/afs/dir.c +++ b/fs/afs/dir.c @@ -16,6 +16,7 @@ #include #include #include +#include #include "internal.h" static struct dentry *afs_lookup(struct inode *dir, struct dentry *dentry, diff --git a/fs/afs/inode.c b/fs/afs/inode.c index 47f5fed7195..d196840127c 100644 --- a/fs/afs/inode.c +++ b/fs/afs/inode.c @@ -19,6 +19,7 @@ #include #include #include +#include #include "internal.h" struct afs_iget_data { diff --git a/fs/afs/internal.h b/fs/afs/internal.h index 4953ba5a6f4..2dac3ad2c44 100644 --- a/fs/afs/internal.h +++ b/fs/afs/internal.h @@ -16,6 +16,7 @@ #include #include #include +#include #include "afs.h" #include "afs_vl.h" diff --git a/fs/afs/main.c b/fs/afs/main.c index f1f71ff7d5c..cd21195bbb2 100644 --- a/fs/afs/main.c +++ b/fs/afs/main.c @@ -13,6 +13,7 @@ #include #include #include +#include #include "internal.h" MODULE_DESCRIPTION("AFS Client File System"); diff --git a/fs/afs/proc.c b/fs/afs/proc.c index d5601f617cd..13df512aea9 100644 --- a/fs/afs/proc.c +++ b/fs/afs/proc.c @@ -13,6 +13,7 @@ #include #include #include +#include #include #include "internal.h" diff --git a/fs/afs/security.c b/fs/afs/security.c index e0ea88b63eb..566fe712c68 100644 --- a/fs/afs/security.c +++ b/fs/afs/security.c @@ -13,6 +13,7 @@ #include #include #include +#include #include #include "internal.h" diff --git a/fs/afs/super.c b/fs/afs/super.c index 8d47ad88a09..2e8496ba120 100644 --- a/fs/afs/super.c +++ b/fs/afs/super.c @@ -22,6 +22,7 @@ #include #include #include +#include #include "internal.h" #define AFS_FS_MAGIC 0x6B414653 /* 'kAFS' */ diff --git a/fs/afs/vlocation.c b/fs/afs/vlocation.c index 3370cdb7256..09e3ad0fc7c 100644 --- a/fs/afs/vlocation.c +++ b/fs/afs/vlocation.c @@ -12,6 +12,7 @@ #include #include #include +#include #include "internal.h" unsigned afs_vlocation_timeout = 10; /* volume location timeout in seconds */ diff --git a/fs/afs/vnode.c b/fs/afs/vnode.c index c36c98ce2c3..232c55dc245 100644 --- a/fs/afs/vnode.c +++ b/fs/afs/vnode.c @@ -14,6 +14,7 @@ #include #include #include +#include #include "internal.h" #if 0 diff --git a/fs/afs/volume.c b/fs/afs/volume.c index dd160cada45..8bab0e3437f 100644 --- a/fs/afs/volume.c +++ b/fs/afs/volume.c @@ -15,6 +15,7 @@ #include #include #include +#include #include "internal.h" static const char *afs_voltypes[] = { "R/W", "R/O", "BAK" }; diff --git a/fs/binfmt_misc.c b/fs/binfmt_misc.c index 72d0b412c37..330fd3fe854 100644 --- a/fs/binfmt_misc.c +++ b/fs/binfmt_misc.c @@ -18,7 +18,7 @@ #include #include - +#include #include #include #include diff --git a/fs/coda/cache.c b/fs/coda/cache.c index 5d052713326..fcb88fa8d2f 100644 --- a/fs/coda/cache.c +++ b/fs/coda/cache.c @@ -16,6 +16,7 @@ #include #include #include +#include #include #include diff --git a/fs/coda/upcall.c b/fs/coda/upcall.c index a5b5e631ba6..5faacdb1a47 100644 --- a/fs/coda/upcall.c +++ b/fs/coda/upcall.c @@ -16,7 +16,7 @@ #include #include - +#include #include #include #include diff --git a/fs/configfs/inode.c b/fs/configfs/inode.c index 2ec9beac17c..ddc003a9d21 100644 --- a/fs/configfs/inode.c +++ b/fs/configfs/inode.c @@ -32,6 +32,7 @@ #include #include #include +#include #include #include "configfs_internal.h" diff --git a/fs/ecryptfs/messaging.c b/fs/ecryptfs/messaging.c index 3baf253be95..a9d87c47f72 100644 --- a/fs/ecryptfs/messaging.c +++ b/fs/ecryptfs/messaging.c @@ -19,7 +19,7 @@ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA * 02111-1307, USA. */ - +#include #include "ecryptfs_kernel.h" static LIST_HEAD(ecryptfs_msg_ctx_free_list); diff --git a/fs/fifo.c b/fs/fifo.c index 6e7df725678..9785e36f81e 100644 --- a/fs/fifo.c +++ b/fs/fifo.c @@ -12,6 +12,7 @@ #include #include #include +#include #include static void wait_for_partner(struct inode* inode, unsigned int *cnt) diff --git a/fs/fuse/file.c b/fs/fuse/file.c index acfad65a6e8..d0ed60bc318 100644 --- a/fs/fuse/file.c +++ b/fs/fuse/file.c @@ -11,6 +11,7 @@ #include #include #include +#include static const struct file_operations fuse_direct_io_file_operations; diff --git a/fs/fuse/inode.c b/fs/fuse/inode.c index c3a2ad0da43..78f7a1dc90d 100644 --- a/fs/fuse/inode.c +++ b/fs/fuse/inode.c @@ -17,6 +17,7 @@ #include #include #include +#include MODULE_AUTHOR("Miklos Szeredi "); MODULE_DESCRIPTION("Filesystem in Userspace"); diff --git a/fs/gfs2/glock.h b/fs/gfs2/glock.h index 11477ca3a3c..b3e152db70c 100644 --- a/fs/gfs2/glock.h +++ b/fs/gfs2/glock.h @@ -10,6 +10,7 @@ #ifndef __GLOCK_DOT_H__ #define __GLOCK_DOT_H__ +#include #include "incore.h" /* Flags for lock requests; used in gfs2_holder gh_flag field. diff --git a/fs/hfs/inode.c b/fs/hfs/inode.c index fafcba59387..9a934db0bd8 100644 --- a/fs/hfs/inode.c +++ b/fs/hfs/inode.c @@ -13,6 +13,7 @@ #include #include +#include #include "hfs_fs.h" #include "btree.h" diff --git a/fs/hfsplus/inode.c b/fs/hfsplus/inode.c index 642012ac337..45dab5d6cc1 100644 --- a/fs/hfsplus/inode.c +++ b/fs/hfsplus/inode.c @@ -12,6 +12,7 @@ #include #include #include +#include #include "hfsplus_fs.h" #include "hfsplus_raw.h" diff --git a/fs/hpfs/buffer.c b/fs/hpfs/buffer.c index b52b7381d10..b6fca543544 100644 --- a/fs/hpfs/buffer.c +++ b/fs/hpfs/buffer.c @@ -5,7 +5,7 @@ * * general buffer i/o */ - +#include #include "hpfs_fn.h" void hpfs_lock_creation(struct super_block *s) diff --git a/fs/hpfs/namei.c b/fs/hpfs/namei.c index 9953cf9a2f1..d256559b410 100644 --- a/fs/hpfs/namei.c +++ b/fs/hpfs/namei.c @@ -5,7 +5,7 @@ * * adding & removing files & directories */ - +#include #include "hpfs_fn.h" static int hpfs_mkdir(struct inode *dir, struct dentry *dentry, int mode) diff --git a/fs/hpfs/super.c b/fs/hpfs/super.c index fca1165d719..29cc34abb2e 100644 --- a/fs/hpfs/super.c +++ b/fs/hpfs/super.c @@ -12,6 +12,7 @@ #include #include #include +#include /* Mark the filesystem dirty, so that chkdsk checks it when os/2 booted */ diff --git a/fs/minix/bitmap.c b/fs/minix/bitmap.c index c4a554df7b7..99a12f12776 100644 --- a/fs/minix/bitmap.c +++ b/fs/minix/bitmap.c @@ -15,6 +15,7 @@ #include #include #include +#include static int nibblemap[] = { 4,3,3,2,3,2,2,1,3,2,2,1,2,1,1,0 }; diff --git a/fs/ncpfs/file.c b/fs/ncpfs/file.c index addfd3147ea..d3152f8d95c 100644 --- a/fs/ncpfs/file.c +++ b/fs/ncpfs/file.c @@ -17,6 +17,7 @@ #include #include #include +#include #include #include "ncplib_kernel.h" diff --git a/fs/ncpfs/ioctl.c b/fs/ncpfs/ioctl.c index 8843a83d4ef..c67b4bdcf71 100644 --- a/fs/ncpfs/ioctl.c +++ b/fs/ncpfs/ioctl.c @@ -17,6 +17,7 @@ #include #include #include +#include #include diff --git a/fs/nfs/client.c b/fs/nfs/client.c index 50c6821bad2..881fa490092 100644 --- a/fs/nfs/client.c +++ b/fs/nfs/client.c @@ -12,7 +12,7 @@ #include #include - +#include #include #include #include diff --git a/fs/nfs/dir.c b/fs/nfs/dir.c index ac92e45432a..c27258b5d3e 100644 --- a/fs/nfs/dir.c +++ b/fs/nfs/dir.c @@ -33,6 +33,7 @@ #include #include #include +#include #include "nfs4_fs.h" #include "delegation.h" diff --git a/fs/nfs/file.c b/fs/nfs/file.c index 5eaee6dd040..9eb8eb4e4a0 100644 --- a/fs/nfs/file.c +++ b/fs/nfs/file.c @@ -27,6 +27,7 @@ #include #include #include +#include #include #include diff --git a/fs/nfs/inode.c b/fs/nfs/inode.c index 2b26ad7c977..bd9f5a83659 100644 --- a/fs/nfs/inode.c +++ b/fs/nfs/inode.c @@ -15,7 +15,7 @@ #include #include - +#include #include #include #include diff --git a/fs/nfs/pagelist.c b/fs/nfs/pagelist.c index e12054c86d0..cbdd1c6aaa9 100644 --- a/fs/nfs/pagelist.c +++ b/fs/nfs/pagelist.c @@ -11,6 +11,7 @@ #include #include +#include #include #include #include diff --git a/fs/nfsd/nfs4callback.c b/fs/nfsd/nfs4callback.c index 32ffea033c7..864090edc28 100644 --- a/fs/nfsd/nfs4callback.c +++ b/fs/nfsd/nfs4callback.c @@ -38,6 +38,7 @@ #include #include #include +#include #include #include #include diff --git a/fs/nfsd/nfs4recover.c b/fs/nfsd/nfs4recover.c index c7774e3a946..ebd03cc0747 100644 --- a/fs/nfsd/nfs4recover.c +++ b/fs/nfsd/nfs4recover.c @@ -45,7 +45,7 @@ #include #include #include - +#include #define NFSDDBG_FACILITY NFSDDBG_PROC diff --git a/fs/nfsd/nfssvc.c b/fs/nfsd/nfssvc.c index d7759ce6ed9..ff55950efb4 100644 --- a/fs/nfsd/nfssvc.c +++ b/fs/nfsd/nfssvc.c @@ -9,7 +9,7 @@ */ #include - +#include #include #include #include diff --git a/fs/ntfs/file.c b/fs/ntfs/file.c index 39a1669506b..7ed56390b58 100644 --- a/fs/ntfs/file.c +++ b/fs/ntfs/file.c @@ -26,6 +26,7 @@ #include #include #include +#include #include #include diff --git a/fs/ramfs/inode.c b/fs/ramfs/inode.c index 4ace5d72eae..d40d22b347b 100644 --- a/fs/ramfs/inode.c +++ b/fs/ramfs/inode.c @@ -32,7 +32,7 @@ #include #include #include - +#include #include #include "internal.h" diff --git a/fs/smbfs/dir.c b/fs/smbfs/dir.c index 50136b1a3ec..48da4fa6b7d 100644 --- a/fs/smbfs/dir.c +++ b/fs/smbfs/dir.c @@ -13,6 +13,7 @@ #include #include #include +#include #include #include diff --git a/fs/smbfs/file.c b/fs/smbfs/file.c index f161797160c..aea3f8aa54c 100644 --- a/fs/smbfs/file.c +++ b/fs/smbfs/file.c @@ -17,6 +17,7 @@ #include #include #include +#include #include #include diff --git a/fs/smbfs/inode.c b/fs/smbfs/inode.c index 5c9243a23b9..6724a6cf01f 100644 --- a/fs/smbfs/inode.c +++ b/fs/smbfs/inode.c @@ -25,6 +25,7 @@ #include #include #include +#include #include #include #include diff --git a/fs/smbfs/request.c b/fs/smbfs/request.c index c288fbe7953..3f54a0f80fa 100644 --- a/fs/smbfs/request.c +++ b/fs/smbfs/request.c @@ -11,6 +11,7 @@ #include #include #include +#include #include #include diff --git a/fs/sysfs/inode.c b/fs/sysfs/inode.c index 4de5c6b8991..bdd30e74de6 100644 --- a/fs/sysfs/inode.c +++ b/fs/sysfs/inode.c @@ -13,6 +13,7 @@ #include #include #include +#include #include #include "sysfs.h" diff --git a/fs/udf/file.c b/fs/udf/file.c index 40d5047defe..51b5764685e 100644 --- a/fs/udf/file.c +++ b/fs/udf/file.c @@ -36,6 +36,7 @@ #include #include #include +#include #include "udf_i.h" #include "udf_sb.h" diff --git a/fs/udf/namei.c b/fs/udf/namei.c index 91df4928651..51fe307dc0e 100644 --- a/fs/udf/namei.c +++ b/fs/udf/namei.c @@ -30,6 +30,7 @@ #include #include #include +#include static inline int udf_match(int len1, const char *name1, int len2, const char *name2) { -- cgit v1.2.3