Re: [PATCH v2] iommu/tegra241-cmdqv: do not use smp_processor_id in preemptible context
From: Jason Gunthorpe
Date: Mon Dec 09 2024 - 09:20:33 EST
On Fri, Dec 06, 2024 at 10:01:14AM -0300, Luis Claudio R. Goncalves wrote:
> During boot some of the calls to tegra241_cmdqv_get_cmdq() will happen
> in preemptible context. As this function calls smp_processor_id(), if
> CONFIG_DEBUG_PREEMPT is enabled, these calls will trigger a series of
> "BUG: using smp_processor_id() in preemptible" backtraces.
>
> As tegra241_cmdqv_get_cmdq() only calls smp_processor_id() to use the
> CPU number as a factor to balance out traffic on cmdq usage, it is safe
> to use raw_smp_processor_id() here.
>
> v2: Sebastian helped identify that the problem was not exclusive to kernels
> with PREEMPT_RT enabled. The delta between v1 and v2 is the description.
>
> Signed-off-by: Luis Claudio R. Goncalves <lgoncalv@xxxxxxxxxx>
> ---
> drivers/iommu/arm/arm-smmu-v3/tegra241-cmdqv.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
Makes sense
Reviewed-by: Jason Gunthorpe <jgg@xxxxxxxxxx>
Jason