Hi Al, Today's linux-next merge of the vfs tree got a conflict in fs/proc/internal.h between commit db3808c1bac6 ("mm, vmalloc: move get_vmalloc_info() to vmalloc.c") from Linus' tree and commit ae8970dd9ccb ("proc: Move non-public stuff from linux/proc_fs.h to fs/proc/internal.h") from the vfs 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 7571035,04255b6..0000000 --- a/fs/proc/internal.h +++ b/fs/proc/internal.h @@@ -154,36 -191,56 +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:
pgp5OcTEchOLH.pgp
Description: PGP signature