mirror of
https://github.com/Fishwaldo/Star64_linux.git
synced 2025-07-07 15:01:44 +00:00
Merge branch 'work.misc' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs
Pull misc vfs updates from Al Viro: "Assorted bits and pieces from various people. No common topic in this pile, sorry" * 'work.misc' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs: fs/affs: add rename exchange fs/affs: add rename2 to prepare multiple methods Make stat/lstat/fstatat pass AT_NO_AUTOMOUNT to vfs_statx() fs: don't set *REFERENCED on single use objects fs: compat: Remove warning from COMPATIBLE_IOCTL remove pointless extern of atime_need_update_rcu() fs: completely ignore unknown open flags fs: add a VALID_OPEN_FLAGS fs: remove _submit_bh() fs: constify tree_descr arrays passed to simple_fill_super() fs: drop duplicate header percpu-rwsem.h fs/affs: bugfix: Write files greater than page size on OFS fs/affs: bugfix: enable writes on OFS disks fs/affs: remove node generation check fs/affs: import amigaffs.h fs/affs: bugfix: make symbolic links work again
This commit is contained in:
commit
11fbf53d66
28 changed files with 130 additions and 74 deletions
|
@ -29,7 +29,6 @@
|
|||
#include <linux/lockdep.h>
|
||||
#include <linux/percpu-rwsem.h>
|
||||
#include <linux/workqueue.h>
|
||||
#include <linux/percpu-rwsem.h>
|
||||
#include <linux/delayed_call.h>
|
||||
|
||||
#include <asm/byteorder.h>
|
||||
|
@ -2925,17 +2924,19 @@ extern int vfs_statx_fd(unsigned int, struct kstat *, u32, unsigned int);
|
|||
|
||||
static inline int vfs_stat(const char __user *filename, struct kstat *stat)
|
||||
{
|
||||
return vfs_statx(AT_FDCWD, filename, 0, stat, STATX_BASIC_STATS);
|
||||
return vfs_statx(AT_FDCWD, filename, AT_NO_AUTOMOUNT,
|
||||
stat, STATX_BASIC_STATS);
|
||||
}
|
||||
static inline int vfs_lstat(const char __user *name, struct kstat *stat)
|
||||
{
|
||||
return vfs_statx(AT_FDCWD, name, AT_SYMLINK_NOFOLLOW,
|
||||
return vfs_statx(AT_FDCWD, name, AT_SYMLINK_NOFOLLOW | AT_NO_AUTOMOUNT,
|
||||
stat, STATX_BASIC_STATS);
|
||||
}
|
||||
static inline int vfs_fstatat(int dfd, const char __user *filename,
|
||||
struct kstat *stat, int flags)
|
||||
{
|
||||
return vfs_statx(dfd, filename, flags, stat, STATX_BASIC_STATS);
|
||||
return vfs_statx(dfd, filename, flags | AT_NO_AUTOMOUNT,
|
||||
stat, STATX_BASIC_STATS);
|
||||
}
|
||||
static inline int vfs_fstat(int fd, struct kstat *stat)
|
||||
{
|
||||
|
@ -3000,9 +3001,10 @@ extern const struct file_operations simple_dir_operations;
|
|||
extern const struct inode_operations simple_dir_inode_operations;
|
||||
extern void make_empty_dir_inode(struct inode *inode);
|
||||
extern bool is_empty_dir_inode(struct inode *inode);
|
||||
struct tree_descr { char *name; const struct file_operations *ops; int mode; };
|
||||
struct tree_descr { const char *name; const struct file_operations *ops; int mode; };
|
||||
struct dentry *d_alloc_name(struct dentry *, const char *);
|
||||
extern int simple_fill_super(struct super_block *, unsigned long, struct tree_descr *);
|
||||
extern int simple_fill_super(struct super_block *, unsigned long,
|
||||
const struct tree_descr *);
|
||||
extern int simple_pin_fs(struct file_system_type *, struct vfsmount **mount, int *count);
|
||||
extern void simple_release_fs(struct vfsmount **mount, int *count);
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue