From: Kevin Hao <[email protected]>

The mpam_reprogram_ris_partid() and mpam_reset_ris() may be invoked on a
specific CPU by smp_call_on_cpu(). According to the implementation of
smp_call_on_cpu(), that also means these functions would be executed
in the worker kthread context. Both the
lockdep_assert_preemption_disabled() and lockdep_assert_held()
assertions are not suitable in this context because:
 - the lockdep_assert_preemption_disabled() will trigger false positive
   since the preempt is enabled in the worker kthread, but it will not
   migrate to other CPU since the worker kthread is bound to one CPU.
 - the implementation of lockdep_assert_held() is to check the lock
   acquired by the current process. So in a worker kthread, it
   definitely not acquire the &msc->lock.

Signed-off-by: Kevin Hao <[email protected]>
---
Hi Bruce,

Please help me merge this into the following two branches:
  v5.15/standard/cn-sdkv5.15/octeon
  v5.15/standard/preempt-rt/cn-sdkv5.15/octeon

 drivers/platform/mpam/mpam_devices.c | 6 ------
 1 file changed, 6 deletions(-)

diff --git a/drivers/platform/mpam/mpam_devices.c 
b/drivers/platform/mpam/mpam_devices.c
index 6fd355048d99..bd705dfe2498 100644
--- a/drivers/platform/mpam/mpam_devices.c
+++ b/drivers/platform/mpam/mpam_devices.c
@@ -1040,8 +1040,6 @@ static void mpam_reprogram_ris_partid(struct mpam_msc_ris 
*ris, u16 partid,
        u16 bwa_fract = GENMASK(15, rprops->bwa_wd);
        u16 minval;
 
-       lockdep_assert_held(&msc->lock);
-
        spin_lock(&msc->part_sel_lock);
        __mpam_part_sel(ris->ris_idx, partid, msc);
 
@@ -1206,13 +1204,9 @@ static int mpam_save_mbwu_state(void *arg)
 static int mpam_reset_ris(void *arg)
 {
        struct mpam_msc_ris *ris = arg;
-       struct mpam_msc *msc = ris->msc;
        struct reprogram_ris reprogram_arg;
        struct mpam_config empty_cfg = { 0 };
 
-       lockdep_assert_preemption_disabled(); /* don't migrate to another CPU */
-       lockdep_assert_held(&msc->lock);
-
        if (ris->in_reset_state)
                return 0;
 
-- 
2.39.2

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#12962): 
https://lists.yoctoproject.org/g/linux-yocto/message/12962
Mute This Topic: https://lists.yoctoproject.org/mt/100679186/21656
Group Owner: [email protected]
Unsubscribe: https://lists.yoctoproject.org/g/linux-yocto/unsub 
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to