hc
2023-12-08 01573e231f18eb2d99162747186f59511f56b64d
kernel/kernel/fail_function.c
....@@ -152,20 +152,13 @@
152152 DEFINE_DEBUGFS_ATTRIBUTE(fei_retval_ops, fei_retval_get, fei_retval_set,
153153 "%llx\n");
154154
155
-static int fei_debugfs_add_attr(struct fei_attr *attr)
155
+static void fei_debugfs_add_attr(struct fei_attr *attr)
156156 {
157157 struct dentry *dir;
158158
159159 dir = debugfs_create_dir(attr->kp.symbol_name, fei_debugfs_dir);
160
- if (!dir)
161
- return -ENOMEM;
162160
163
- if (!debugfs_create_file("retval", 0600, dir, attr, &fei_retval_ops)) {
164
- debugfs_remove_recursive(dir);
165
- return -ENOMEM;
166
- }
167
-
168
- return 0;
161
+ debugfs_create_file("retval", 0600, dir, attr, &fei_retval_ops);
169162 }
170163
171164 static void fei_debugfs_remove_attr(struct fei_attr *attr)
....@@ -173,8 +166,7 @@
173166 struct dentry *dir;
174167
175168 dir = debugfs_lookup(attr->kp.symbol_name, fei_debugfs_dir);
176
- if (dir)
177
- debugfs_remove_recursive(dir);
169
+ debugfs_remove_recursive(dir);
178170 }
179171
180172 static int fei_kprobe_handler(struct kprobe *kp, struct pt_regs *regs)
....@@ -211,7 +203,7 @@
211203 {
212204 struct fei_attr *attr = list_entry(v, struct fei_attr, list);
213205
214
- seq_printf(m, "%pf\n", attr->kp.addr);
206
+ seq_printf(m, "%ps\n", attr->kp.addr);
215207 return 0;
216208 }
217209
....@@ -307,7 +299,7 @@
307299
308300 ret = register_kprobe(&attr->kp);
309301 if (!ret)
310
- ret = fei_debugfs_add_attr(attr);
302
+ fei_debugfs_add_attr(attr);
311303 if (ret < 0)
312304 fei_attr_remove(attr);
313305 else {
....@@ -339,19 +331,13 @@
339331 return PTR_ERR(dir);
340332
341333 /* injectable attribute is just a symlink of error_inject/list */
342
- if (!debugfs_create_symlink("injectable", dir,
343
- "../error_injection/list"))
344
- goto error;
334
+ debugfs_create_symlink("injectable", dir, "../error_injection/list");
345335
346
- if (!debugfs_create_file("inject", 0600, dir, NULL, &fei_ops))
347
- goto error;
336
+ debugfs_create_file("inject", 0600, dir, NULL, &fei_ops);
348337
349338 fei_debugfs_dir = dir;
350339
351340 return 0;
352
-error:
353
- debugfs_remove_recursive(dir);
354
- return -ENOMEM;
355341 }
356342
357343 late_initcall(fei_debugfs_init);