@@ -1071,20 +1071,18 @@ static int __arm_kprobe_ftrace(struct kprobe *p, struct ftrace_ops *ops,
1071
1071
1072
1072
if (* cnt == 0 ) {
1073
1073
ret = register_ftrace_function (ops );
1074
- if (WARN (ret < 0 , "Failed to register kprobe-ftrace (error %d)\n" , ret ))
1075
- goto err_ftrace ;
1074
+ if (WARN (ret < 0 , "Failed to register kprobe-ftrace (error %d)\n" , ret )) {
1075
+ /*
1076
+ * At this point, sinec ops is not registered, we should be sefe from
1077
+ * registering empty filter.
1078
+ */
1079
+ ftrace_set_filter_ip (ops , (unsigned long )p -> addr , 1 , 0 );
1080
+ return ret ;
1081
+ }
1076
1082
}
1077
1083
1078
1084
(* cnt )++ ;
1079
1085
return ret ;
1080
-
1081
- err_ftrace :
1082
- /*
1083
- * At this point, sinec ops is not registered, we should be sefe from
1084
- * registering empty filter.
1085
- */
1086
- ftrace_set_filter_ip (ops , (unsigned long )p -> addr , 1 , 0 );
1087
- return ret ;
1088
1086
}
1089
1087
1090
1088
static int arm_kprobe_ftrace (struct kprobe * p )
@@ -1428,7 +1426,7 @@ _kprobe_addr(kprobe_opcode_t *addr, const char *symbol_name,
1428
1426
unsigned long offset , bool * on_func_entry )
1429
1427
{
1430
1428
if ((symbol_name && addr ) || (!symbol_name && !addr ))
1431
- goto invalid ;
1429
+ return ERR_PTR ( - EINVAL ) ;
1432
1430
1433
1431
if (symbol_name ) {
1434
1432
/*
@@ -1458,11 +1456,10 @@ _kprobe_addr(kprobe_opcode_t *addr, const char *symbol_name,
1458
1456
* at the start of the function.
1459
1457
*/
1460
1458
addr = arch_adjust_kprobe_addr ((unsigned long )addr , offset , on_func_entry );
1461
- if (addr )
1462
- return addr ;
1459
+ if (! addr )
1460
+ return ERR_PTR ( - EINVAL ) ;
1463
1461
1464
- invalid :
1465
- return ERR_PTR (- EINVAL );
1462
+ return addr ;
1466
1463
}
1467
1464
1468
1465
static kprobe_opcode_t * kprobe_addr (struct kprobe * p )
@@ -1486,15 +1483,15 @@ static struct kprobe *__get_valid_kprobe(struct kprobe *p)
1486
1483
if (unlikely (!ap ))
1487
1484
return NULL ;
1488
1485
1489
- if (p != ap ) {
1490
- list_for_each_entry ( list_p , & ap -> list , list )
1491
- if ( list_p == p )
1492
- /* kprobe p is a valid probe */
1493
- goto valid ;
1494
- return NULL ;
1495
- }
1496
- valid :
1497
- return ap ;
1486
+ if (p == ap )
1487
+ return ap ;
1488
+
1489
+ list_for_each_entry ( list_p , & ap -> list , list )
1490
+ if ( list_p == p )
1491
+ /* kprobe p is a valid probe */
1492
+ return ap ;
1493
+
1494
+ return NULL ;
1498
1495
}
1499
1496
1500
1497
/*
0 commit comments