Hi Andrew, Today's linux-next merge of the akpm tree got a conflict in fs/proc/internal.h between commit 4608da4a9433 ("proc: Move non-public stuff from linux/proc_fs.h to fs/proc/internal.h") from the vfs tree and commit "mm, vmalloc: move get_vmalloc_info() to vmalloc.c" from the akpm tree. I fixed it up (see below) and can carry the fix as necessary (no action is required). -- Cheers, Stephen Rothwell sfr@xxxxxxxxxxxxxxxx diff --cc fs/proc/internal.h index 04255b6,47eac85..0000000 --- a/fs/proc/internal.h +++ b/fs/proc/internal.h @@@ -191,56 -157,36 +191,35 @@@ static inline struct proc_dir_entry *pd atomic_inc(&pde->count); return pde; } -void pde_put(struct proc_dir_entry *pde); - -int proc_fill_super(struct super_block *); -struct inode *proc_get_inode(struct super_block *, struct proc_dir_entry *); -int proc_remount(struct super_block *sb, int *flags, char *data); +extern void pde_put(struct proc_dir_entry *); /* - * These are generic /proc routines that use the internal - * "struct proc_dir_entry" tree to traverse the filesystem. - * - * The /proc root directory has extended versions to take care - * of the /proc/<pid> subdirectories. + * inode.c */ -int proc_readdir(struct file *, void *, filldir_t); -struct dentry *proc_lookup(struct inode *, struct dentry *, unsigned int); +struct pde_opener { + struct file *file; + struct list_head lh; + int closing; + struct completion *c; +}; +extern const struct inode_operations proc_pid_link_inode_operations; +extern void proc_init_inodecache(void); +extern struct inode *proc_get_inode(struct super_block *, struct proc_dir_entry *); +extern int proc_fill_super(struct super_block *); +extern void proc_entry_rundown(struct proc_dir_entry *); -/* Lookups */ -typedef struct dentry *instantiate_t(struct inode *, struct dentry *, - struct task_struct *, const void *); -int proc_fill_cache(struct file *filp, void *dirent, filldir_t filldir, - const char *name, int len, - instantiate_t instantiate, struct task_struct *task, const void *ptr); -int pid_revalidate(struct dentry *dentry, unsigned int flags); -struct inode *proc_pid_make_inode(struct super_block * sb, struct task_struct *task); -extern const struct dentry_operations pid_dentry_operations; -int pid_getattr(struct vfsmount *mnt, struct dentry *dentry, struct kstat *stat); -int proc_setattr(struct dentry *dentry, struct iattr *attr); +/* - * mmu.c - */ - struct vmalloc_info { - unsigned long used; - unsigned long largest_chunk; - }; - - #ifdef CONFIG_MMU - #define VMALLOC_TOTAL (VMALLOC_END - VMALLOC_START) - extern void get_vmalloc_info(struct vmalloc_info *); - - #else - #define VMALLOC_TOTAL 0UL - static inline void get_vmalloc_info(struct vmalloc_info *vmi) - { - vmi->used = 0; - vmi->largest_chunk = 0; - } - #endif - - /* + * proc_devtree.c + */ +#ifdef CONFIG_PROC_DEVICETREE +extern void proc_device_tree_init(void); +#endif +/* + * proc_namespaces.c + */ extern const struct inode_operations proc_ns_dir_inode_operations; extern const struct file_operations proc_ns_dir_operations;
Attachment:
pgpCjAWP1Jls_.pgp
Description: PGP signature