* fs/ceph/dir.c:1176 ceph_mkdir() warn: passing zero to 'ERR_PTR'
@ 2025-12-11 20:53 kernel test robot
0 siblings, 0 replies; 2+ messages in thread
From: kernel test robot @ 2025-12-11 20:53 UTC (permalink / raw)
To: oe-kbuild; +Cc: lkp, Dan Carpenter
BCC: lkp@intel.com
CC: oe-kbuild-all@lists.linux.dev
CC: linux-kernel@vger.kernel.org
TO: NeilBrown <neilb@suse.de>
CC: Christian Brauner <brauner@kernel.org>
CC: Jeff Layton <jlayton@kernel.org>
CC: Jan Kara <jack@suse.cz>
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: d358e5254674b70f34c847715ca509e46eb81e6f
commit: 88d5baf69082e5b410296435008329676b687549 Change inode_operations.mkdir to return struct dentry *
date: 10 months ago
:::::: branch date: 18 hours ago
:::::: commit date: 10 months ago
config: nios2-randconfig-r073-20251211 (https://download.01.org/0day-ci/archive/20251212/202512120406.qXoszsdu-lkp@intel.com/config)
compiler: nios2-linux-gcc (GCC) 8.5.0
If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Reported-by: Dan Carpenter <error27@gmail.com>
| Closes: https://lore.kernel.org/r/202512120406.qXoszsdu-lkp@intel.com/
New smatch warnings:
fs/ceph/dir.c:1176 ceph_mkdir() warn: passing zero to 'ERR_PTR'
Old smatch warnings:
fs/ceph/dir.c:908 ceph_handle_notrace_create() warn: passing zero to 'PTR_ERR'
vim +/ERR_PTR +1176 fs/ceph/dir.c
2817b000b02c5f Sage Weil 2009-10-06 1094
88d5baf69082e5 NeilBrown 2025-02-27 1095 static struct dentry *ceph_mkdir(struct mnt_idmap *idmap, struct inode *dir,
549c7297717c32 Christian Brauner 2021-01-21 1096 struct dentry *dentry, umode_t mode)
2817b000b02c5f Sage Weil 2009-10-06 1097 {
2678da88f4b449 Xiubo Li 2020-09-03 1098 struct ceph_mds_client *mdsc = ceph_sb_to_mdsc(dir->i_sb);
38d46409c4639a Xiubo Li 2023-06-12 1099 struct ceph_client *cl = mdsc->fsc->client;
2817b000b02c5f Sage Weil 2009-10-06 1100 struct ceph_mds_request *req;
5c31e92dffb94c Yan, Zheng 2019-05-26 1101 struct ceph_acl_sec_ctx as_ctx = {};
4868e537fa867f Xiubo Li 2022-05-10 1102 int err;
2817b000b02c5f Sage Weil 2009-10-06 1103 int op;
2817b000b02c5f Sage Weil 2009-10-06 1104
4868e537fa867f Xiubo Li 2022-05-10 1105 err = ceph_wait_on_conflict_unlink(dentry);
4868e537fa867f Xiubo Li 2022-05-10 1106 if (err)
88d5baf69082e5 NeilBrown 2025-02-27 1107 return ERR_PTR(err);
4868e537fa867f Xiubo Li 2022-05-10 1108
2817b000b02c5f Sage Weil 2009-10-06 1109 if (ceph_snap(dir) == CEPH_SNAPDIR) {
2817b000b02c5f Sage Weil 2009-10-06 1110 /* mkdir .snap/foo is a MKSNAP */
2817b000b02c5f Sage Weil 2009-10-06 1111 op = CEPH_MDS_OP_MKSNAP;
38d46409c4639a Xiubo Li 2023-06-12 1112 doutc(cl, "mksnap %llx.%llx/'%pd' dentry %p\n",
38d46409c4639a Xiubo Li 2023-06-12 1113 ceph_vinop(dir), dentry, dentry);
2817b000b02c5f Sage Weil 2009-10-06 1114 } else if (ceph_snap(dir) == CEPH_NOSNAP) {
38d46409c4639a Xiubo Li 2023-06-12 1115 doutc(cl, "mkdir %llx.%llx/'%pd' dentry %p mode 0%ho\n",
38d46409c4639a Xiubo Li 2023-06-12 1116 ceph_vinop(dir), dentry, dentry, mode);
2817b000b02c5f Sage Weil 2009-10-06 1117 op = CEPH_MDS_OP_MKDIR;
2817b000b02c5f Sage Weil 2009-10-06 1118 } else {
4868e537fa867f Xiubo Li 2022-05-10 1119 err = -EROFS;
2817b000b02c5f Sage Weil 2009-10-06 1120 goto out;
2817b000b02c5f Sage Weil 2009-10-06 1121 }
b1ee94aa593abd Yan, Zheng 2014-09-16 1122
2596366907f872 Yan, Zheng 2018-01-12 1123 if (op == CEPH_MDS_OP_MKDIR &&
2596366907f872 Yan, Zheng 2018-01-12 1124 ceph_quota_is_max_files_exceeded(dir)) {
b7a2921765cf79 Luis Henriques 2018-01-05 1125 err = -EDQUOT;
b7a2921765cf79 Luis Henriques 2018-01-05 1126 goto out;
b7a2921765cf79 Luis Henriques 2018-01-05 1127 }
abd4fc775857cd Luís Henriques 2022-08-25 1128 if ((op == CEPH_MDS_OP_MKSNAP) && IS_ENCRYPTED(dir) &&
abd4fc775857cd Luís Henriques 2022-08-25 1129 !fscrypt_has_encryption_key(dir)) {
abd4fc775857cd Luís Henriques 2022-08-25 1130 err = -ENOKEY;
abd4fc775857cd Luís Henriques 2022-08-25 1131 goto out;
abd4fc775857cd Luís Henriques 2022-08-25 1132 }
b7a2921765cf79 Luis Henriques 2018-01-05 1133
b1ee94aa593abd Yan, Zheng 2014-09-16 1134
2817b000b02c5f Sage Weil 2009-10-06 1135 req = ceph_mdsc_create_request(mdsc, op, USE_AUTH_MDS);
2817b000b02c5f Sage Weil 2009-10-06 1136 if (IS_ERR(req)) {
2817b000b02c5f Sage Weil 2009-10-06 1137 err = PTR_ERR(req);
2817b000b02c5f Sage Weil 2009-10-06 1138 goto out;
2817b000b02c5f Sage Weil 2009-10-06 1139 }
2817b000b02c5f Sage Weil 2009-10-06 1140
ec9595c080c6f0 Jeff Layton 2020-08-26 1141 mode |= S_IFDIR;
ec9595c080c6f0 Jeff Layton 2020-08-26 1142 req->r_new_inode = ceph_new_inode(dir, dentry, &mode, &as_ctx);
ec9595c080c6f0 Jeff Layton 2020-08-26 1143 if (IS_ERR(req->r_new_inode)) {
ec9595c080c6f0 Jeff Layton 2020-08-26 1144 err = PTR_ERR(req->r_new_inode);
ec9595c080c6f0 Jeff Layton 2020-08-26 1145 req->r_new_inode = NULL;
ec9595c080c6f0 Jeff Layton 2020-08-26 1146 goto out_req;
ec9595c080c6f0 Jeff Layton 2020-08-26 1147 }
ec9595c080c6f0 Jeff Layton 2020-08-26 1148
2817b000b02c5f Sage Weil 2009-10-06 1149 req->r_dentry = dget(dentry);
2817b000b02c5f Sage Weil 2009-10-06 1150 req->r_num_caps = 2;
3dd69aabcef3d8 Jeff Layton 2017-01-31 1151 req->r_parent = dir;
4c18347238ab5a Jeff Layton 2021-06-18 1152 ihold(dir);
3dd69aabcef3d8 Jeff Layton 2017-01-31 1153 set_bit(CEPH_MDS_R_PARENT_LOCKED, &req->r_req_flags);
09838f1bfd40f4 Christian Brauner 2023-08-07 1154 if (op == CEPH_MDS_OP_MKDIR)
09838f1bfd40f4 Christian Brauner 2023-08-07 1155 req->r_mnt_idmap = mnt_idmap_get(idmap);
2817b000b02c5f Sage Weil 2009-10-06 1156 req->r_args.mkdir.mode = cpu_to_le32(mode);
d9d00f71ab5a2b Xiubo Li 2023-06-05 1157 req->r_dentry_drop = CEPH_CAP_FILE_SHARED | CEPH_CAP_AUTH_EXCL |
d9d00f71ab5a2b Xiubo Li 2023-06-05 1158 CEPH_CAP_XATTR_EXCL;
2817b000b02c5f Sage Weil 2009-10-06 1159 req->r_dentry_unless = CEPH_CAP_FILE_EXCL;
ec9595c080c6f0 Jeff Layton 2020-08-26 1160
ec9595c080c6f0 Jeff Layton 2020-08-26 1161 ceph_as_ctx_to_req(req, &as_ctx);
ec9595c080c6f0 Jeff Layton 2020-08-26 1162
2817b000b02c5f Sage Weil 2009-10-06 1163 err = ceph_mdsc_do_request(mdsc, dir, req);
275dd19ea4e84c Yan, Zheng 2014-12-10 1164 if (!err &&
275dd19ea4e84c Yan, Zheng 2014-12-10 1165 !req->r_reply_info.head->is_target &&
275dd19ea4e84c Yan, Zheng 2014-12-10 1166 !req->r_reply_info.head->is_dentry)
2817b000b02c5f Sage Weil 2009-10-06 1167 err = ceph_handle_notrace_create(dir, dentry);
ec9595c080c6f0 Jeff Layton 2020-08-26 1168 out_req:
2817b000b02c5f Sage Weil 2009-10-06 1169 ceph_mdsc_put_request(req);
2817b000b02c5f Sage Weil 2009-10-06 1170 out:
b20a95a0dd47c5 Yan, Zheng 2014-02-11 1171 if (!err)
5c31e92dffb94c Yan, Zheng 2019-05-26 1172 ceph_init_inode_acls(d_inode(dentry), &as_ctx);
b20a95a0dd47c5 Yan, Zheng 2014-02-11 1173 else
2817b000b02c5f Sage Weil 2009-10-06 1174 d_drop(dentry);
5c31e92dffb94c Yan, Zheng 2019-05-26 1175 ceph_release_acl_sec_ctx(&as_ctx);
88d5baf69082e5 NeilBrown 2025-02-27 @1176 return ERR_PTR(err);
2817b000b02c5f Sage Weil 2009-10-06 1177 }
2817b000b02c5f Sage Weil 2009-10-06 1178
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
^ permalink raw reply [flat|nested] 2+ messages in thread
* fs/ceph/dir.c:1176 ceph_mkdir() warn: passing zero to 'ERR_PTR'
@ 2026-03-23 13:27 kernel test robot
0 siblings, 0 replies; 2+ messages in thread
From: kernel test robot @ 2026-03-23 13:27 UTC (permalink / raw)
To: oe-kbuild; +Cc: lkp, Dan Carpenter
BCC: lkp@intel.com
CC: oe-kbuild-all@lists.linux.dev
CC: linux-kernel@vger.kernel.org
TO: NeilBrown <neilb@suse.de>
CC: Christian Brauner <brauner@kernel.org>
CC: Jeff Layton <jlayton@kernel.org>
CC: Jan Kara <jack@suse.cz>
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: c369299895a591d96745d6492d4888259b004a9e
commit: 88d5baf69082e5b410296435008329676b687549 Change inode_operations.mkdir to return struct dentry *
date: 1 year, 1 month ago
:::::: branch date: 16 hours ago
:::::: commit date: 1 year, 1 month ago
config: hexagon-randconfig-r072-20260323 (https://download.01.org/0day-ci/archive/20260323/202603232113.WWeesLP4-lkp@intel.com/config)
compiler: clang version 23.0.0git (https://github.com/llvm/llvm-project b1cf9b0835d214bcbd0d6e8882760c07cfccb298)
smatch: v0.5.0-9004-gb810ac53
If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Reported-by: Dan Carpenter <error27@gmail.com>
| Closes: https://lore.kernel.org/r/202603232113.WWeesLP4-lkp@intel.com/
New smatch warnings:
fs/ceph/dir.c:1176 ceph_mkdir() warn: passing zero to 'ERR_PTR'
Old smatch warnings:
fs/ceph/dir.c:908 ceph_handle_notrace_create() warn: passing zero to 'PTR_ERR'
vim +/ERR_PTR +1176 fs/ceph/dir.c
2817b000b02c5f Sage Weil 2009-10-06 1094
88d5baf69082e5 NeilBrown 2025-02-27 1095 static struct dentry *ceph_mkdir(struct mnt_idmap *idmap, struct inode *dir,
549c7297717c32 Christian Brauner 2021-01-21 1096 struct dentry *dentry, umode_t mode)
2817b000b02c5f Sage Weil 2009-10-06 1097 {
2678da88f4b449 Xiubo Li 2020-09-03 1098 struct ceph_mds_client *mdsc = ceph_sb_to_mdsc(dir->i_sb);
38d46409c4639a Xiubo Li 2023-06-12 1099 struct ceph_client *cl = mdsc->fsc->client;
2817b000b02c5f Sage Weil 2009-10-06 1100 struct ceph_mds_request *req;
5c31e92dffb94c Yan, Zheng 2019-05-26 1101 struct ceph_acl_sec_ctx as_ctx = {};
4868e537fa867f Xiubo Li 2022-05-10 1102 int err;
2817b000b02c5f Sage Weil 2009-10-06 1103 int op;
2817b000b02c5f Sage Weil 2009-10-06 1104
4868e537fa867f Xiubo Li 2022-05-10 1105 err = ceph_wait_on_conflict_unlink(dentry);
4868e537fa867f Xiubo Li 2022-05-10 1106 if (err)
88d5baf69082e5 NeilBrown 2025-02-27 1107 return ERR_PTR(err);
4868e537fa867f Xiubo Li 2022-05-10 1108
2817b000b02c5f Sage Weil 2009-10-06 1109 if (ceph_snap(dir) == CEPH_SNAPDIR) {
2817b000b02c5f Sage Weil 2009-10-06 1110 /* mkdir .snap/foo is a MKSNAP */
2817b000b02c5f Sage Weil 2009-10-06 1111 op = CEPH_MDS_OP_MKSNAP;
38d46409c4639a Xiubo Li 2023-06-12 1112 doutc(cl, "mksnap %llx.%llx/'%pd' dentry %p\n",
38d46409c4639a Xiubo Li 2023-06-12 1113 ceph_vinop(dir), dentry, dentry);
2817b000b02c5f Sage Weil 2009-10-06 1114 } else if (ceph_snap(dir) == CEPH_NOSNAP) {
38d46409c4639a Xiubo Li 2023-06-12 1115 doutc(cl, "mkdir %llx.%llx/'%pd' dentry %p mode 0%ho\n",
38d46409c4639a Xiubo Li 2023-06-12 1116 ceph_vinop(dir), dentry, dentry, mode);
2817b000b02c5f Sage Weil 2009-10-06 1117 op = CEPH_MDS_OP_MKDIR;
2817b000b02c5f Sage Weil 2009-10-06 1118 } else {
4868e537fa867f Xiubo Li 2022-05-10 1119 err = -EROFS;
2817b000b02c5f Sage Weil 2009-10-06 1120 goto out;
2817b000b02c5f Sage Weil 2009-10-06 1121 }
b1ee94aa593abd Yan, Zheng 2014-09-16 1122
2596366907f872 Yan, Zheng 2018-01-12 1123 if (op == CEPH_MDS_OP_MKDIR &&
2596366907f872 Yan, Zheng 2018-01-12 1124 ceph_quota_is_max_files_exceeded(dir)) {
b7a2921765cf79 Luis Henriques 2018-01-05 1125 err = -EDQUOT;
b7a2921765cf79 Luis Henriques 2018-01-05 1126 goto out;
b7a2921765cf79 Luis Henriques 2018-01-05 1127 }
abd4fc775857cd Luís Henriques 2022-08-25 1128 if ((op == CEPH_MDS_OP_MKSNAP) && IS_ENCRYPTED(dir) &&
abd4fc775857cd Luís Henriques 2022-08-25 1129 !fscrypt_has_encryption_key(dir)) {
abd4fc775857cd Luís Henriques 2022-08-25 1130 err = -ENOKEY;
abd4fc775857cd Luís Henriques 2022-08-25 1131 goto out;
abd4fc775857cd Luís Henriques 2022-08-25 1132 }
b7a2921765cf79 Luis Henriques 2018-01-05 1133
b1ee94aa593abd Yan, Zheng 2014-09-16 1134
2817b000b02c5f Sage Weil 2009-10-06 1135 req = ceph_mdsc_create_request(mdsc, op, USE_AUTH_MDS);
2817b000b02c5f Sage Weil 2009-10-06 1136 if (IS_ERR(req)) {
2817b000b02c5f Sage Weil 2009-10-06 1137 err = PTR_ERR(req);
2817b000b02c5f Sage Weil 2009-10-06 1138 goto out;
2817b000b02c5f Sage Weil 2009-10-06 1139 }
2817b000b02c5f Sage Weil 2009-10-06 1140
ec9595c080c6f0 Jeff Layton 2020-08-26 1141 mode |= S_IFDIR;
ec9595c080c6f0 Jeff Layton 2020-08-26 1142 req->r_new_inode = ceph_new_inode(dir, dentry, &mode, &as_ctx);
ec9595c080c6f0 Jeff Layton 2020-08-26 1143 if (IS_ERR(req->r_new_inode)) {
ec9595c080c6f0 Jeff Layton 2020-08-26 1144 err = PTR_ERR(req->r_new_inode);
ec9595c080c6f0 Jeff Layton 2020-08-26 1145 req->r_new_inode = NULL;
ec9595c080c6f0 Jeff Layton 2020-08-26 1146 goto out_req;
ec9595c080c6f0 Jeff Layton 2020-08-26 1147 }
ec9595c080c6f0 Jeff Layton 2020-08-26 1148
2817b000b02c5f Sage Weil 2009-10-06 1149 req->r_dentry = dget(dentry);
2817b000b02c5f Sage Weil 2009-10-06 1150 req->r_num_caps = 2;
3dd69aabcef3d8 Jeff Layton 2017-01-31 1151 req->r_parent = dir;
4c18347238ab5a Jeff Layton 2021-06-18 1152 ihold(dir);
3dd69aabcef3d8 Jeff Layton 2017-01-31 1153 set_bit(CEPH_MDS_R_PARENT_LOCKED, &req->r_req_flags);
09838f1bfd40f4 Christian Brauner 2023-08-07 1154 if (op == CEPH_MDS_OP_MKDIR)
09838f1bfd40f4 Christian Brauner 2023-08-07 1155 req->r_mnt_idmap = mnt_idmap_get(idmap);
2817b000b02c5f Sage Weil 2009-10-06 1156 req->r_args.mkdir.mode = cpu_to_le32(mode);
d9d00f71ab5a2b Xiubo Li 2023-06-05 1157 req->r_dentry_drop = CEPH_CAP_FILE_SHARED | CEPH_CAP_AUTH_EXCL |
d9d00f71ab5a2b Xiubo Li 2023-06-05 1158 CEPH_CAP_XATTR_EXCL;
2817b000b02c5f Sage Weil 2009-10-06 1159 req->r_dentry_unless = CEPH_CAP_FILE_EXCL;
ec9595c080c6f0 Jeff Layton 2020-08-26 1160
ec9595c080c6f0 Jeff Layton 2020-08-26 1161 ceph_as_ctx_to_req(req, &as_ctx);
ec9595c080c6f0 Jeff Layton 2020-08-26 1162
2817b000b02c5f Sage Weil 2009-10-06 1163 err = ceph_mdsc_do_request(mdsc, dir, req);
275dd19ea4e84c Yan, Zheng 2014-12-10 1164 if (!err &&
275dd19ea4e84c Yan, Zheng 2014-12-10 1165 !req->r_reply_info.head->is_target &&
275dd19ea4e84c Yan, Zheng 2014-12-10 1166 !req->r_reply_info.head->is_dentry)
2817b000b02c5f Sage Weil 2009-10-06 1167 err = ceph_handle_notrace_create(dir, dentry);
ec9595c080c6f0 Jeff Layton 2020-08-26 1168 out_req:
2817b000b02c5f Sage Weil 2009-10-06 1169 ceph_mdsc_put_request(req);
2817b000b02c5f Sage Weil 2009-10-06 1170 out:
b20a95a0dd47c5 Yan, Zheng 2014-02-11 1171 if (!err)
5c31e92dffb94c Yan, Zheng 2019-05-26 1172 ceph_init_inode_acls(d_inode(dentry), &as_ctx);
b20a95a0dd47c5 Yan, Zheng 2014-02-11 1173 else
2817b000b02c5f Sage Weil 2009-10-06 1174 d_drop(dentry);
5c31e92dffb94c Yan, Zheng 2019-05-26 1175 ceph_release_acl_sec_ctx(&as_ctx);
88d5baf69082e5 NeilBrown 2025-02-27 @1176 return ERR_PTR(err);
2817b000b02c5f Sage Weil 2009-10-06 1177 }
2817b000b02c5f Sage Weil 2009-10-06 1178
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2026-03-23 13:28 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-03-23 13:27 fs/ceph/dir.c:1176 ceph_mkdir() warn: passing zero to 'ERR_PTR' kernel test robot
-- strict thread matches above, loose matches on Subject: below --
2025-12-11 20:53 kernel test robot
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.