orangefs: three fixes from other folks...
Fix sb refcount leak when allocate sb info failed: Chenyuan Mi fix error return code of orangefs_revalidate_lookup(): Jia-Ju Bai Remove redundant initialization of variable ret: Colin Ian King -----BEGIN PGP SIGNATURE----- iQIzBAABCAAdFiEEIGSFVdO6eop9nER2z0QOqevODb4FAmGJNnIACgkQz0QOqevO Db5J/w//Rh2z0OOzZIv6y56ksop08o4o6bVrRKr7pGuT+PQaekQ4kA1kXW/w+BH5 /OGKdJ13Wu+pfv89k7uvzPNnFj8q2BBpWilxbNHdyeIeAL6gmc95OaMqPAGibNT/ omnsP8M0xNHlYjZq7zFvkEVga2ejCPspzYZAps/3khFSBL0xBSINdXvhlRdp1Lmt ivjf1Pila6nAl90grc/F3+zvNmq30OjAEuCBDfz0JV+3/vLvVAmVIhlKFWfQZUjB 8NAA2k2ppuhVghGcq15S9qAA9qjWRsmWJoGo4IFuVT1ET/Svw+0YzPfRM2vzIDyG YUiG+DqNn33uTgKgU4ZeJO8RD9plcFVN+A4th09ReyTiCEAQmaoQr3U64nKUmhKj 1Ja4C1cdBmE//hfttZu0Iz7YVCKgxECOdr65MLQ10f6mMCz2zT9DXp+fe+Mlx6WY Jda9CYuYJOSCtAtRrXljQEoRkMqYUBPmHU/FXb7MZ22zP3II3iiNvCvkSi4ONw2m oS8UQhNJJzwrV0g8HADMfFj6D+ro72b3nCHy0wItOLiOh5uS1nBUxowlIzBUxj15 jpIiIK0LHc0RisfqO6b0rkVIcNLlBbHA1XVg3OMUoCoycmi9mqf0zsLz1qVlAZZO wDCGDH50X9Q96v38/Wa3eR6ZQumQijzhNiQSnRQZSWSSX4Y4QYA= =I44F -----END PGP SIGNATURE----- Merge tag 'for-linus-5.16-ofs1' of git://git.kernel.org/pub/scm/linux/kernel/git/hubcap/linux Pull orangefs fixes from Mike Marshall: - fix sb refcount leak when allocate sb info failed (Chenyuan Mi) - fix error return code of orangefs_revalidate_lookup() (Jia-Ju Bai) - remove redundant initialization of variable ret (Colin Ian King) * tag 'for-linus-5.16-ofs1' of git://git.kernel.org/pub/scm/linux/kernel/git/hubcap/linux: orangefs: Fix sb refcount leak when allocate sb info failed. fs: orangefs: fix error return code of orangefs_revalidate_lookup() orangefs: Remove redundant initialization of variable ret
This commit is contained in:
commit
a0c7d4a07f
@ -26,8 +26,10 @@ static int orangefs_revalidate_lookup(struct dentry *dentry)
|
|||||||
gossip_debug(GOSSIP_DCACHE_DEBUG, "%s: attempting lookup.\n", __func__);
|
gossip_debug(GOSSIP_DCACHE_DEBUG, "%s: attempting lookup.\n", __func__);
|
||||||
|
|
||||||
new_op = op_alloc(ORANGEFS_VFS_OP_LOOKUP);
|
new_op = op_alloc(ORANGEFS_VFS_OP_LOOKUP);
|
||||||
if (!new_op)
|
if (!new_op) {
|
||||||
|
ret = -ENOMEM;
|
||||||
goto out_put_parent;
|
goto out_put_parent;
|
||||||
|
}
|
||||||
|
|
||||||
new_op->upcall.req.lookup.sym_follow = ORANGEFS_LOOKUP_LINK_NO_FOLLOW;
|
new_op->upcall.req.lookup.sym_follow = ORANGEFS_LOOKUP_LINK_NO_FOLLOW;
|
||||||
new_op->upcall.req.lookup.parent_refn = parent->refn;
|
new_op->upcall.req.lookup.parent_refn = parent->refn;
|
||||||
|
@ -476,7 +476,7 @@ struct dentry *orangefs_mount(struct file_system_type *fst,
|
|||||||
const char *devname,
|
const char *devname,
|
||||||
void *data)
|
void *data)
|
||||||
{
|
{
|
||||||
int ret = -EINVAL;
|
int ret;
|
||||||
struct super_block *sb = ERR_PTR(-EINVAL);
|
struct super_block *sb = ERR_PTR(-EINVAL);
|
||||||
struct orangefs_kernel_op_s *new_op;
|
struct orangefs_kernel_op_s *new_op;
|
||||||
struct dentry *d = ERR_PTR(-EINVAL);
|
struct dentry *d = ERR_PTR(-EINVAL);
|
||||||
@ -527,7 +527,7 @@ struct dentry *orangefs_mount(struct file_system_type *fst,
|
|||||||
sb->s_fs_info = kzalloc(sizeof(struct orangefs_sb_info_s), GFP_KERNEL);
|
sb->s_fs_info = kzalloc(sizeof(struct orangefs_sb_info_s), GFP_KERNEL);
|
||||||
if (!ORANGEFS_SB(sb)) {
|
if (!ORANGEFS_SB(sb)) {
|
||||||
d = ERR_PTR(-ENOMEM);
|
d = ERR_PTR(-ENOMEM);
|
||||||
goto free_op;
|
goto free_sb_and_op;
|
||||||
}
|
}
|
||||||
|
|
||||||
ret = orangefs_fill_sb(sb,
|
ret = orangefs_fill_sb(sb,
|
||||||
|
Loading…
Reference in New Issue
Block a user