From: Kevin Hao <[email protected]> In order to fix a sleeping in atomic context bug, we have replaced the per_cpu_ptr() with get_cpu_ptr() in commit 97b853120a3e ("octeontx2: nic: Replace get_cpu()/put_cpu() with get_cpu_ptr()/put_cpu_ptr()") to disable the preempt in __cn10k_aura_freeptr(). But __cn10k_aura_freeptr() may be used in NAPI, the preempt disable seems redundant. The commit 29e9c67bf327 ("octeontx2-pf: Fix the use of GFP_KERNEL in atomic context on rt") chose to add the get/put_cpu() in cn10k_aura_freeptr(). With this change, the preempt disable in __cn10k_aura_freeptr() becomes unnecessary. So restore the per_cpu_ptr().
Signed-off-by: Kevin Hao <[email protected]> --- Hi Bruce, Please help me merge this patch into the following two branches: v5.15/standard/cn-sdkv5.4/octeon v5.15/standard/preempt-rt/cn-sdkv5.4/octeon drivers/net/ethernet/marvell/octeontx2/nic/otx2_common.h | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/drivers/net/ethernet/marvell/octeontx2/nic/otx2_common.h b/drivers/net/ethernet/marvell/octeontx2/nic/otx2_common.h index 132a9e5bb540..a8b004af781c 100644 --- a/drivers/net/ethernet/marvell/octeontx2/nic/otx2_common.h +++ b/drivers/net/ethernet/marvell/octeontx2/nic/otx2_common.h @@ -690,7 +690,7 @@ static inline void __cn10k_aura_freeptr(struct otx2_nic *pfvf, u64 aura, u64 size = 0, count_eot = 0; u64 tar_addr, val = 0; - lmt_info = get_cpu_ptr(pfvf->hw.lmt_info); + lmt_info = per_cpu_ptr(pfvf->hw.lmt_info, smp_processor_id()); tar_addr = (__force u64)otx2_get_regaddr(pfvf, NPA_LF_AURA_BATCH_FREE0); /* LMTID is same as AURA Id */ val = (lmt_info->lmt_id & 0x7FF) | BIT_ULL(63); @@ -711,7 +711,6 @@ static inline void __cn10k_aura_freeptr(struct otx2_nic *pfvf, u64 aura, } dma_wmb(); memcpy((u64 *)lmt_info->lmt_addr, ptrs, sizeof(u64) * num_ptrs); - put_cpu_ptr(pfvf->hw.lmt_info); /* Perform LMTST flush */ cn10k_lmt_flush(val, tar_addr); } -- 2.38.1
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#12132): https://lists.yoctoproject.org/g/linux-yocto/message/12132 Mute This Topic: https://lists.yoctoproject.org/mt/96695025/21656 Group Owner: [email protected] Unsubscribe: https://lists.yoctoproject.org/g/linux-yocto/unsub [[email protected]] -=-=-=-=-=-=-=-=-=-=-=-
