@@ -2286,6 +2286,7 @@ event_subsystem_dir(struct trace_array *tr, const char *name,
2286
2286
{
2287
2287
struct event_subsystem * system , * iter ;
2288
2288
struct trace_subsystem_dir * dir ;
2289
+ struct eventfs_file * ef ;
2289
2290
int res ;
2290
2291
2291
2292
/* First see if we did not already create this dir */
@@ -2318,13 +2319,14 @@ event_subsystem_dir(struct trace_array *tr, const char *name,
2318
2319
} else
2319
2320
__get_system (system );
2320
2321
2321
- dir -> ef = eventfs_add_subsystem_dir (name , parent );
2322
- if (IS_ERR (dir -> ef )) {
2322
+ ef = eventfs_add_subsystem_dir (name , parent );
2323
+ if (IS_ERR (ef )) {
2323
2324
pr_warn ("Failed to create system directory %s\n" , name );
2324
2325
__put_system (system );
2325
2326
goto out_free ;
2326
2327
}
2327
2328
2329
+ dir -> ef = ef ;
2328
2330
dir -> tr = tr ;
2329
2331
dir -> ref_count = 1 ;
2330
2332
dir -> nr_events = 1 ;
@@ -2404,6 +2406,7 @@ event_create_dir(struct dentry *parent, struct trace_event_file *file)
2404
2406
struct trace_event_call * call = file -> event_call ;
2405
2407
struct eventfs_file * ef_subsystem = NULL ;
2406
2408
struct trace_array * tr = file -> tr ;
2409
+ struct eventfs_file * ef ;
2407
2410
const char * name ;
2408
2411
int ret ;
2409
2412
@@ -2420,12 +2423,14 @@ event_create_dir(struct dentry *parent, struct trace_event_file *file)
2420
2423
return - ENOMEM ;
2421
2424
2422
2425
name = trace_event_name (call );
2423
- file -> ef = eventfs_add_dir (name , ef_subsystem );
2424
- if (IS_ERR (file -> ef )) {
2426
+ ef = eventfs_add_dir (name , ef_subsystem );
2427
+ if (IS_ERR (ef )) {
2425
2428
pr_warn ("Could not create tracefs '%s' directory\n" , name );
2426
2429
return -1 ;
2427
2430
}
2428
2431
2432
+ file -> ef = ef ;
2433
+
2429
2434
if (call -> class -> reg && !(call -> flags & TRACE_EVENT_FL_IGNORE_ENABLE ))
2430
2435
eventfs_add_file ("enable" , TRACE_MODE_WRITE , file -> ef , file ,
2431
2436
& ftrace_enable_fops );
0 commit comments