fscrypt: switch from ->is_encrypted() to IS_ENCRYPTED()

IS_ENCRYPTED() now gives the same information as
i_sb->s_cop->is_encrypted() but is more efficient, since IS_ENCRYPTED()
is just a simple flag check.  Prepare to remove ->is_encrypted() by
switching all callers to IS_ENCRYPTED().

Acked-by: Dave Chinner <dchinner@redhat.com>
Signed-off-by: Eric Biggers <ebiggers@google.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
This commit is contained in:
Eric Biggers 2017-10-09 12:15:36 -07:00 коммит произвёл Theodore Ts'o
Родитель 2ee6a576be
Коммит e0428a266d
5 изменённых файлов: 7 добавлений и 8 удалений

Просмотреть файл

@ -340,7 +340,7 @@ static int fscrypt_d_revalidate(struct dentry *dentry, unsigned int flags)
return -ECHILD; return -ECHILD;
dir = dget_parent(dentry); dir = dget_parent(dentry);
if (!d_inode(dir)->i_sb->s_cop->is_encrypted(d_inode(dir))) { if (!IS_ENCRYPTED(d_inode(dir))) {
dput(dir); dput(dir);
return 0; return 0;
} }

Просмотреть файл

@ -382,8 +382,7 @@ int fscrypt_setup_filename(struct inode *dir, const struct qstr *iname,
memset(fname, 0, sizeof(struct fscrypt_name)); memset(fname, 0, sizeof(struct fscrypt_name));
fname->usr_fname = iname; fname->usr_fname = iname;
if (!dir->i_sb->s_cop->is_encrypted(dir) || if (!IS_ENCRYPTED(dir) || fscrypt_is_dot_dotdot(iname)) {
fscrypt_is_dot_dotdot(iname)) {
fname->disk_name.name = (unsigned char *)iname->name; fname->disk_name.name = (unsigned char *)iname->name;
fname->disk_name.len = iname->len; fname->disk_name.len = iname->len;
return 0; return 0;

Просмотреть файл

@ -268,7 +268,7 @@ int fscrypt_get_encryption_info(struct inode *inode)
res = inode->i_sb->s_cop->get_context(inode, &ctx, sizeof(ctx)); res = inode->i_sb->s_cop->get_context(inode, &ctx, sizeof(ctx));
if (res < 0) { if (res < 0) {
if (!fscrypt_dummy_context_enabled(inode) || if (!fscrypt_dummy_context_enabled(inode) ||
inode->i_sb->s_cop->is_encrypted(inode)) IS_ENCRYPTED(inode))
return res; return res;
/* Fake up a context for an unencrypted directory */ /* Fake up a context for an unencrypted directory */
memset(&ctx, 0, sizeof(ctx)); memset(&ctx, 0, sizeof(ctx));

Просмотреть файл

@ -109,7 +109,7 @@ int fscrypt_ioctl_get_policy(struct file *filp, void __user *arg)
struct fscrypt_policy policy; struct fscrypt_policy policy;
int res; int res;
if (!inode->i_sb->s_cop->is_encrypted(inode)) if (!IS_ENCRYPTED(inode))
return -ENODATA; return -ENODATA;
res = inode->i_sb->s_cop->get_context(inode, &ctx, sizeof(ctx)); res = inode->i_sb->s_cop->get_context(inode, &ctx, sizeof(ctx));
@ -166,11 +166,11 @@ int fscrypt_has_permitted_context(struct inode *parent, struct inode *child)
return 1; return 1;
/* No restrictions if the parent directory is unencrypted */ /* No restrictions if the parent directory is unencrypted */
if (!cops->is_encrypted(parent)) if (!IS_ENCRYPTED(parent))
return 1; return 1;
/* Encrypted directories must not contain unencrypted files */ /* Encrypted directories must not contain unencrypted files */
if (!cops->is_encrypted(child)) if (!IS_ENCRYPTED(child))
return 0; return 0;
/* /*

Просмотреть файл

@ -100,7 +100,7 @@ static inline int fscrypt_setup_filename(struct inode *dir,
const struct qstr *iname, const struct qstr *iname,
int lookup, struct fscrypt_name *fname) int lookup, struct fscrypt_name *fname)
{ {
if (dir->i_sb->s_cop->is_encrypted(dir)) if (IS_ENCRYPTED(dir))
return -EOPNOTSUPP; return -EOPNOTSUPP;
memset(fname, 0, sizeof(struct fscrypt_name)); memset(fname, 0, sizeof(struct fscrypt_name));