aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2017-07-15 15:00:42 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2017-07-15 15:00:42 -0400
commit78dcf73421a879d22319d3889119945b85954a68 (patch)
tree26e76f3e9fdc6b40133f2158de23cfe74af9feac /include/linux
parent93ff81859733d9697a5a0cc4707e52fb17056abb (diff)
parentfdb254db21bb4aed44a0bc7fe993e58d3848c926 (diff)
Merge branch 'work.mount' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs
Pull ->s_options removal from Al Viro: "Preparations for fsmount/fsopen stuff (coming next cycle). Everything gets moved to explicit ->show_options(), killing ->s_options off + some cosmetic bits around fs/namespace.c and friends. Basically, the stuff needed to work with fsmount series with minimum of conflicts with other work. It's not strictly required for this merge window, but it would reduce the PITA during the coming cycle, so it would be nice to have those bits and pieces out of the way" * 'work.mount' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs: isofs: Fix isofs_show_options() VFS: Kill off s_options and helpers orangefs: Implement show_options 9p: Implement show_options isofs: Implement show_options afs: Implement show_options affs: Implement show_options befs: Implement show_options spufs: Implement show_options bpf: Implement show_options ramfs: Implement show_options pstore: Implement show_options omfs: Implement show_options hugetlbfs: Implement show_options VFS: Don't use save/replace_mount_options if not using generic_show_options VFS: Provide empty name qstr VFS: Make get_filesystem() return the affected filesystem VFS: Clean up whitespace in fs/namespace.c and fs/super.c Provide a function to create a NUL-terminated string from unterminated data
Diffstat (limited to 'include/linux')
-rw-r--r--include/linux/dcache.h5
-rw-r--r--include/linux/fs.h11
-rw-r--r--include/linux/hugetlb.h3
-rw-r--r--include/linux/string.h1
4 files changed, 10 insertions, 10 deletions
diff --git a/include/linux/dcache.h b/include/linux/dcache.h
index c706eaac692e..3f3ff4ccdc3f 100644
--- a/include/linux/dcache.h
+++ b/include/linux/dcache.h
@@ -55,6 +55,11 @@ struct qstr {
55 55
56#define QSTR_INIT(n,l) { { { .len = l } }, .name = n } 56#define QSTR_INIT(n,l) { { { .len = l } }, .name = n }
57 57
58extern const char empty_string[];
59extern const struct qstr empty_name;
60extern const char slash_string[];
61extern const struct qstr slash_name;
62
58struct dentry_stat_t { 63struct dentry_stat_t {
59 long nr_dentry; 64 long nr_dentry;
60 long nr_unused; 65 long nr_unused;
diff --git a/include/linux/fs.h b/include/linux/fs.h
index 976aaa1af82a..7b5d6816542b 100644
--- a/include/linux/fs.h
+++ b/include/linux/fs.h
@@ -1364,11 +1364,6 @@ struct super_block {
1364 */ 1364 */
1365 char *s_subtype; 1365 char *s_subtype;
1366 1366
1367 /*
1368 * Saved mount options for lazy filesystems using
1369 * generic_show_options()
1370 */
1371 char __rcu *s_options;
1372 const struct dentry_operations *s_d_op; /* default d_op for dentries */ 1367 const struct dentry_operations *s_d_op; /* default d_op for dentries */
1373 1368
1374 /* 1369 /*
@@ -3046,7 +3041,7 @@ extern int generic_block_fiemap(struct inode *inode,
3046 struct fiemap_extent_info *fieinfo, u64 start, 3041 struct fiemap_extent_info *fieinfo, u64 start,
3047 u64 len, get_block_t *get_block); 3042 u64 len, get_block_t *get_block);
3048 3043
3049extern void get_filesystem(struct file_system_type *fs); 3044extern struct file_system_type *get_filesystem(struct file_system_type *fs);
3050extern void put_filesystem(struct file_system_type *fs); 3045extern void put_filesystem(struct file_system_type *fs);
3051extern struct file_system_type *get_fs_type(const char *name); 3046extern struct file_system_type *get_fs_type(const char *name);
3052extern struct super_block *get_super(struct block_device *); 3047extern struct super_block *get_super(struct block_device *);
@@ -3123,10 +3118,6 @@ extern void setattr_copy(struct inode *inode, const struct iattr *attr);
3123 3118
3124extern int file_update_time(struct file *file); 3119extern int file_update_time(struct file *file);
3125 3120
3126extern int generic_show_options(struct seq_file *m, struct dentry *root);
3127extern void save_mount_options(struct super_block *sb, char *options);
3128extern void replace_mount_options(struct super_block *sb, char *options);
3129
3130static inline bool io_is_direct(struct file *filp) 3121static inline bool io_is_direct(struct file *filp)
3131{ 3122{
3132 return (filp->f_flags & O_DIRECT) || IS_DAX(filp->f_mapping->host); 3123 return (filp->f_flags & O_DIRECT) || IS_DAX(filp->f_mapping->host);
diff --git a/include/linux/hugetlb.h b/include/linux/hugetlb.h
index 8d9fe131a240..0ed8e41aaf11 100644
--- a/include/linux/hugetlb.h
+++ b/include/linux/hugetlb.h
@@ -268,6 +268,9 @@ struct hugetlbfs_sb_info {
268 spinlock_t stat_lock; 268 spinlock_t stat_lock;
269 struct hstate *hstate; 269 struct hstate *hstate;
270 struct hugepage_subpool *spool; 270 struct hugepage_subpool *spool;
271 kuid_t uid;
272 kgid_t gid;
273 umode_t mode;
271}; 274};
272 275
273static inline struct hugetlbfs_sb_info *HUGETLBFS_SB(struct super_block *sb) 276static inline struct hugetlbfs_sb_info *HUGETLBFS_SB(struct super_block *sb)
diff --git a/include/linux/string.h b/include/linux/string.h
index 049866760e8b..a467e617eeb0 100644
--- a/include/linux/string.h
+++ b/include/linux/string.h
@@ -137,6 +137,7 @@ extern char *kstrdup(const char *s, gfp_t gfp) __malloc;
137extern const char *kstrdup_const(const char *s, gfp_t gfp); 137extern const char *kstrdup_const(const char *s, gfp_t gfp);
138extern char *kstrndup(const char *s, size_t len, gfp_t gfp); 138extern char *kstrndup(const char *s, size_t len, gfp_t gfp);
139extern void *kmemdup(const void *src, size_t len, gfp_t gfp); 139extern void *kmemdup(const void *src, size_t len, gfp_t gfp);
140extern char *kmemdup_nul(const char *s, size_t len, gfp_t gfp);
140 141
141extern char **argv_split(gfp_t gfp, const char *str, int *argcp); 142extern char **argv_split(gfp_t gfp, const char *str, int *argcp);
142extern void argv_free(char **argv); 143extern void argv_free(char **argv);