• Yang Shen's avatar
    coresight: trbe: remove cpuhp instance node before remove cpuhp state · 20ee8c22
    Yang Shen authored
    cpuhp_state_add_instance() and cpuhp_state_remove_instance() should
    be used in pairs. Or there will lead to the warn on
    cpuhp_remove_multi_state() since the cpuhp_step list is not empty.
    
    The following is the error log with 'rmmod coresight-trbe':
    Error: Removing state 215 which has instances left.
    Call trace:
      __cpuhp_remove_state_cpuslocked+0x144/0x160
      __cpuhp_remove_state+0xac/0x100
      arm_trbe_device_remove+0x2c/0x60 [coresight_trbe]
      platform_remove+0x34/0x70
      device_remove+0x54/0x90
      device_release_driver_internal+0x1e4/0x250
      driver_detach+0x5c/0xb0
      bus_remove_driver+0x64/0xc0
      driver_unregister+0x3c/0x70
      platform_driver_unregister+0x20/0x30
      arm_trbe_exit+0x1c/0x658 [coresight_trbe]
      __arm64_sys_delete_module+0x1ac/0x24c
      invoke_syscall+0x50/0x120
      el0_svc_common.constprop.0+0x58/0x1a0
      do_el0_svc+0x38/0xd0
      el0_svc+0x2c/0xc0
      el0t_64_sync_handler+0x1ac/0x1b0
      el0t_64_sync+0x19c/0x1a0
     ---[ end trace 0000000000000000 ]---
    
    Fixes: 3fbf7f01 ("coresight: sink: Add TRBE driver")
    Reviewed-by: default avatarAnshuman Khandual <anshuman.khandual@arm.com>
    Signed-off-by: default avatarYang Shen <shenyang39@huawei.com>
    Signed-off-by: default avatarSuzuki K Poulose <suzuki.poulose@arm.com>
    Link: https://lore.kernel.org/r/20221122090355.23533-1-shenyang39@huawei.com
    20ee8c22
coresight-trbe.c 46.8 KB