@@ -435,12 +435,12 @@ static void perf_pmu__del_aliases(struct perf_pmu *pmu)
435
435
/* Merge an alias, search in alias list. If this name is already
436
436
* present merge both of them to combine all information.
437
437
*/
438
- static bool perf_pmu_merge_alias (struct perf_pmu_alias * newalias ,
439
- struct list_head * alist )
438
+ static bool perf_pmu_merge_alias (struct perf_pmu * pmu ,
439
+ struct perf_pmu_alias * newalias )
440
440
{
441
441
struct perf_pmu_alias * a ;
442
442
443
- list_for_each_entry (a , alist , list ) {
443
+ list_for_each_entry (a , & pmu -> aliases , list ) {
444
444
if (!strcasecmp (newalias -> name , a -> name )) {
445
445
if (newalias -> pmu_name && a -> pmu_name &&
446
446
!strcasecmp (newalias -> pmu_name , a -> pmu_name )) {
@@ -454,7 +454,7 @@ static bool perf_pmu_merge_alias(struct perf_pmu_alias *newalias,
454
454
return false;
455
455
}
456
456
457
- static int perf_pmu__new_alias (struct list_head * list , int dirfd , const char * name ,
457
+ static int perf_pmu__new_alias (struct perf_pmu * pmu , int dirfd , const char * name ,
458
458
const char * desc , const char * val , FILE * val_fd ,
459
459
const struct pmu_event * pe )
460
460
{
@@ -536,8 +536,8 @@ static int perf_pmu__new_alias(struct list_head *list, int dirfd, const char *na
536
536
alias -> str = strdup (newval );
537
537
alias -> pmu_name = pmu_name ? strdup (pmu_name ) : NULL ;
538
538
539
- if (!perf_pmu_merge_alias (alias , list ))
540
- list_add_tail (& alias -> list , list );
539
+ if (!perf_pmu_merge_alias (pmu , alias ))
540
+ list_add_tail (& alias -> list , & pmu -> aliases );
541
541
542
542
return 0 ;
543
543
}
@@ -563,7 +563,7 @@ static inline bool pmu_alias_info_file(char *name)
563
563
* Process all the sysfs attributes located under the directory
564
564
* specified in 'dir' parameter.
565
565
*/
566
- static int pmu_aliases_parse (int dirfd , struct list_head * head )
566
+ static int pmu_aliases_parse (struct perf_pmu * pmu , int dirfd )
567
567
{
568
568
struct dirent * evt_ent ;
569
569
DIR * event_dir ;
@@ -597,7 +597,7 @@ static int pmu_aliases_parse(int dirfd, struct list_head *head)
597
597
continue ;
598
598
}
599
599
600
- if (perf_pmu__new_alias (head , dirfd , name , /*desc=*/ NULL ,
600
+ if (perf_pmu__new_alias (pmu , dirfd , name , /*desc=*/ NULL ,
601
601
/*val=*/ NULL , file , /*pe=*/ NULL ) < 0 )
602
602
pr_debug ("Cannot set up %s\n" , name );
603
603
fclose (file );
@@ -620,7 +620,7 @@ static int pmu_aliases(struct perf_pmu *pmu, int dirfd, const char *name)
620
620
return 0 ;
621
621
622
622
/* it'll close the fd */
623
- if (pmu_aliases_parse (fd , & pmu -> aliases ))
623
+ if (pmu_aliases_parse (pmu , fd ))
624
624
return -1 ;
625
625
626
626
return 0 ;
@@ -848,10 +848,9 @@ static int pmu_add_cpu_aliases_map_callback(const struct pmu_event *pe,
848
848
const struct pmu_events_table * table __maybe_unused ,
849
849
void * vdata )
850
850
{
851
- struct list_head * head = vdata ;
851
+ struct perf_pmu * pmu = vdata ;
852
852
853
- /* need type casts to override 'const' */
854
- perf_pmu__new_alias (head , -1 , pe -> name , pe -> desc , pe -> event , /*val_fd=*/ NULL , pe );
853
+ perf_pmu__new_alias (pmu , -1 , pe -> name , pe -> desc , pe -> event , /*val_fd=*/ NULL , pe );
855
854
return 0 ;
856
855
}
857
856
@@ -861,7 +860,7 @@ static int pmu_add_cpu_aliases_map_callback(const struct pmu_event *pe,
861
860
*/
862
861
void pmu_add_cpu_aliases_table (struct perf_pmu * pmu , const struct pmu_events_table * table )
863
862
{
864
- pmu_events_table__for_each_event (table , pmu , pmu_add_cpu_aliases_map_callback , & pmu -> aliases );
863
+ pmu_events_table__for_each_event (table , pmu , pmu_add_cpu_aliases_map_callback , pmu );
865
864
}
866
865
867
866
static void pmu_add_cpu_aliases (struct perf_pmu * pmu )
@@ -875,24 +874,18 @@ static void pmu_add_cpu_aliases(struct perf_pmu *pmu)
875
874
pmu_add_cpu_aliases_table (pmu , table );
876
875
}
877
876
878
- struct pmu_sys_event_iter_data {
879
- struct list_head * head ;
880
- struct perf_pmu * pmu ;
881
- };
882
-
883
877
static int pmu_add_sys_aliases_iter_fn (const struct pmu_event * pe ,
884
878
const struct pmu_events_table * table __maybe_unused ,
885
- void * data )
879
+ void * vdata )
886
880
{
887
- struct pmu_sys_event_iter_data * idata = data ;
888
- struct perf_pmu * pmu = idata -> pmu ;
881
+ struct perf_pmu * pmu = vdata ;
889
882
890
883
if (!pe -> compat || !pe -> pmu )
891
884
return 0 ;
892
885
893
886
if (!strcmp (pmu -> id , pe -> compat ) &&
894
887
pmu_uncore_alias_match (pe -> pmu , pmu -> name )) {
895
- perf_pmu__new_alias (idata -> head , -1 ,
888
+ perf_pmu__new_alias (pmu , -1 ,
896
889
pe -> name ,
897
890
pe -> desc ,
898
891
pe -> event ,
@@ -905,15 +898,10 @@ static int pmu_add_sys_aliases_iter_fn(const struct pmu_event *pe,
905
898
906
899
void pmu_add_sys_aliases (struct perf_pmu * pmu )
907
900
{
908
- struct pmu_sys_event_iter_data idata = {
909
- .head = & pmu -> aliases ,
910
- .pmu = pmu ,
911
- };
912
-
913
901
if (!pmu -> id )
914
902
return ;
915
903
916
- pmu_for_each_sys_event (pmu_add_sys_aliases_iter_fn , & idata );
904
+ pmu_for_each_sys_event (pmu_add_sys_aliases_iter_fn , pmu );
917
905
}
918
906
919
907
struct perf_event_attr * __weak
0 commit comments