mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2025-04-07 21:48:03 +07:00
shmem, ramfs: propagate umode_t, open-coded S_ISREG
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
This commit is contained in:
parent
8817644611
commit
09208d150b
@ -30,7 +30,7 @@ struct shmem_sb_info {
|
|||||||
spinlock_t stat_lock; /* Serialize shmem_sb_info changes */
|
spinlock_t stat_lock; /* Serialize shmem_sb_info changes */
|
||||||
uid_t uid; /* Mount uid for root directory */
|
uid_t uid; /* Mount uid for root directory */
|
||||||
gid_t gid; /* Mount gid for root directory */
|
gid_t gid; /* Mount gid for root directory */
|
||||||
mode_t mode; /* Mount mode for root directory */
|
umode_t mode; /* Mount mode for root directory */
|
||||||
struct mempolicy *mpol; /* default memory policy for mappings */
|
struct mempolicy *mpol; /* default memory policy for mappings */
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -1092,7 +1092,7 @@ static int shmem_mmap(struct file *file, struct vm_area_struct *vma)
|
|||||||
}
|
}
|
||||||
|
|
||||||
static struct inode *shmem_get_inode(struct super_block *sb, const struct inode *dir,
|
static struct inode *shmem_get_inode(struct super_block *sb, const struct inode *dir,
|
||||||
int mode, dev_t dev, unsigned long flags)
|
umode_t mode, dev_t dev, unsigned long flags)
|
||||||
{
|
{
|
||||||
struct inode *inode;
|
struct inode *inode;
|
||||||
struct shmem_inode_info *info;
|
struct shmem_inode_info *info;
|
||||||
@ -2128,7 +2128,7 @@ static int shmem_show_options(struct seq_file *seq, struct vfsmount *vfs)
|
|||||||
if (sbinfo->max_inodes != shmem_default_max_inodes())
|
if (sbinfo->max_inodes != shmem_default_max_inodes())
|
||||||
seq_printf(seq, ",nr_inodes=%lu", sbinfo->max_inodes);
|
seq_printf(seq, ",nr_inodes=%lu", sbinfo->max_inodes);
|
||||||
if (sbinfo->mode != (S_IRWXUGO | S_ISVTX))
|
if (sbinfo->mode != (S_IRWXUGO | S_ISVTX))
|
||||||
seq_printf(seq, ",mode=%03o", sbinfo->mode);
|
seq_printf(seq, ",mode=%03ho", sbinfo->mode);
|
||||||
if (sbinfo->uid != 0)
|
if (sbinfo->uid != 0)
|
||||||
seq_printf(seq, ",uid=%u", sbinfo->uid);
|
seq_printf(seq, ",uid=%u", sbinfo->uid);
|
||||||
if (sbinfo->gid != 0)
|
if (sbinfo->gid != 0)
|
||||||
@ -2239,7 +2239,7 @@ static void shmem_destroy_callback(struct rcu_head *head)
|
|||||||
|
|
||||||
static void shmem_destroy_inode(struct inode *inode)
|
static void shmem_destroy_inode(struct inode *inode)
|
||||||
{
|
{
|
||||||
if ((inode->i_mode & S_IFMT) == S_IFREG)
|
if (S_ISREG(inode->i_mode))
|
||||||
mpol_free_shared_policy(&SHMEM_I(inode)->policy);
|
mpol_free_shared_policy(&SHMEM_I(inode)->policy);
|
||||||
call_rcu(&inode->i_rcu, shmem_destroy_callback);
|
call_rcu(&inode->i_rcu, shmem_destroy_callback);
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user