RE: [PATCH 02/12] drm/amdgpu: Optimize xxx_ras_fini function of each ras block
[AMD Official Use Only] > -Original Message- > From: Chai, Thomas > Sent: Monday, February 21, 2022 6:16 PM > To: amd-gfx@lists.freedesktop.org > Cc: Chai, Thomas ; Zhang, Hawking > ; Zhou1, Tao ; Clements, > John ; Chai, Thomas > Subject: [PATCH 02/12] drm/amdgpu: Optimize xxx_ras_fini function of each ras > block > > 1. Move the variables of ras block instance members to >the top of the call to xxx_ras_fini. [Tao] to the top of the call to xxx_ras_fini -> from specific xxx_ras_fini to general ras_fini call. > 2. Function calls inside the modules only use parameters >passed from xxx_ras_fini instead of ras block instance >members. > > Signed-off-by: yipechai > --- > drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c | 4 ++-- > drivers/gpu/drm/amd/amdgpu/amdgpu_gmc.c | 8 > drivers/gpu/drm/amd/amdgpu/amdgpu_hdp.c | 4 ++-- > drivers/gpu/drm/amd/amdgpu/amdgpu_mmhub.c | 4 ++-- > drivers/gpu/drm/amd/amdgpu/amdgpu_nbio.c | 4 ++-- > drivers/gpu/drm/amd/amdgpu/amdgpu_sdma.c | 4 ++-- > drivers/gpu/drm/amd/amdgpu/amdgpu_umc.c | 4 ++-- > drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c | 4 ++-- > drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c | 2 +- > drivers/gpu/drm/amd/amdgpu/sdma_v4_0.c| 2 +- > drivers/gpu/drm/amd/amdgpu/soc15.c| 2 +- > 11 files changed, 21 insertions(+), 21 deletions(-) > > diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c > b/drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c > index d020c4599433..40f7e29aa9ca 100644 > --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c > +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c > @@ -647,8 +647,8 @@ int amdgpu_gfx_ras_late_init(struct amdgpu_device > *adev, struct ras_common_if *r void amdgpu_gfx_ras_fini(struct > amdgpu_device *adev, struct ras_common_if *ras_block) { > if (amdgpu_ras_is_supported(adev, AMDGPU_RAS_BLOCK__GFX) && > - adev->gfx.ras_if) > - amdgpu_ras_block_late_fini(adev, adev->gfx.ras_if); > + ras_block) > + amdgpu_ras_block_late_fini(adev, ras_block); > } > > int amdgpu_gfx_process_ras_data_cb(struct amdgpu_device *adev, diff --git > a/drivers/gpu/drm/amd/amdgpu/amdgpu_gmc.c > b/drivers/gpu/drm/amd/amdgpu/amdgpu_gmc.c > index 5dcb341cae19..4823c42e0e02 100644 > --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_gmc.c > +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_gmc.c > @@ -455,16 +455,16 @@ int amdgpu_gmc_ras_late_init(struct amdgpu_device > *adev) void amdgpu_gmc_ras_fini(struct amdgpu_device *adev) { > if (adev->umc.ras && adev->umc.ras->ras_block.ras_fini) > - adev->umc.ras->ras_block.ras_fini(adev, NULL); > + adev->umc.ras->ras_block.ras_fini(adev, adev->umc.ras_if); > > if (adev->mmhub.ras && adev->mmhub.ras->ras_block.ras_fini) > - adev->mmhub.ras->ras_block.ras_fini(adev, NULL); > + adev->mmhub.ras->ras_block.ras_fini(adev, adev- > >mmhub.ras_if); > > if (adev->gmc.xgmi.ras && adev->gmc.xgmi.ras->ras_block.ras_fini) > - adev->gmc.xgmi.ras->ras_block.ras_fini(adev, NULL); > + adev->gmc.xgmi.ras->ras_block.ras_fini(adev, adev- > >gmc.xgmi.ras_if); > > if (adev->hdp.ras && adev->hdp.ras->ras_block.ras_fini) > - adev->hdp.ras->ras_block.ras_fini(adev, NULL); > + adev->hdp.ras->ras_block.ras_fini(adev, adev->hdp.ras_if); > } > > /* > diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_hdp.c > b/drivers/gpu/drm/amd/amdgpu/amdgpu_hdp.c > index 0f224e21cd55..5595f903c17a 100644 > --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_hdp.c > +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_hdp.c > @@ -27,6 +27,6 @@ > void amdgpu_hdp_ras_fini(struct amdgpu_device *adev, struct ras_common_if > *ras_block) { > if (amdgpu_ras_is_supported(adev, AMDGPU_RAS_BLOCK__HDP) && > - adev->hdp.ras_if) > - amdgpu_ras_block_late_fini(adev, adev->hdp.ras_if); > + ras_block) > + amdgpu_ras_block_late_fini(adev, ras_block); > } > diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_mmhub.c > b/drivers/gpu/drm/amd/amdgpu/amdgpu_mmhub.c > index 6dfcedcc37fd..e7c3b8fff868 100644 > --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_mmhub.c > +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_mmhub.c > @@ -27,6 +27,6 @@ > void amdgpu_mmhub_ras_fini(struct amdgpu_device *adev, struct > ras_common_if *ras_block) { > if (amdgpu_ras_is_supported(adev, AMDGPU_RAS_BLOCK__MMHUB) > && > - adev->mmhub.ras_if) > - amdgpu_ras_block_late_fini(adev, a
[PATCH 02/12] drm/amdgpu: Optimize xxx_ras_fini function of each ras block
1. Move the variables of ras block instance members to the top of the call to xxx_ras_fini. 2. Function calls inside the modules only use parameters passed from xxx_ras_fini instead of ras block instance members. Signed-off-by: yipechai --- drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c | 4 ++-- drivers/gpu/drm/amd/amdgpu/amdgpu_gmc.c | 8 drivers/gpu/drm/amd/amdgpu/amdgpu_hdp.c | 4 ++-- drivers/gpu/drm/amd/amdgpu/amdgpu_mmhub.c | 4 ++-- drivers/gpu/drm/amd/amdgpu/amdgpu_nbio.c | 4 ++-- drivers/gpu/drm/amd/amdgpu/amdgpu_sdma.c | 4 ++-- drivers/gpu/drm/amd/amdgpu/amdgpu_umc.c | 4 ++-- drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c | 4 ++-- drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c | 2 +- drivers/gpu/drm/amd/amdgpu/sdma_v4_0.c| 2 +- drivers/gpu/drm/amd/amdgpu/soc15.c| 2 +- 11 files changed, 21 insertions(+), 21 deletions(-) diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c index d020c4599433..40f7e29aa9ca 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c @@ -647,8 +647,8 @@ int amdgpu_gfx_ras_late_init(struct amdgpu_device *adev, struct ras_common_if *r void amdgpu_gfx_ras_fini(struct amdgpu_device *adev, struct ras_common_if *ras_block) { if (amdgpu_ras_is_supported(adev, AMDGPU_RAS_BLOCK__GFX) && - adev->gfx.ras_if) - amdgpu_ras_block_late_fini(adev, adev->gfx.ras_if); + ras_block) + amdgpu_ras_block_late_fini(adev, ras_block); } int amdgpu_gfx_process_ras_data_cb(struct amdgpu_device *adev, diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_gmc.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_gmc.c index 5dcb341cae19..4823c42e0e02 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_gmc.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_gmc.c @@ -455,16 +455,16 @@ int amdgpu_gmc_ras_late_init(struct amdgpu_device *adev) void amdgpu_gmc_ras_fini(struct amdgpu_device *adev) { if (adev->umc.ras && adev->umc.ras->ras_block.ras_fini) - adev->umc.ras->ras_block.ras_fini(adev, NULL); + adev->umc.ras->ras_block.ras_fini(adev, adev->umc.ras_if); if (adev->mmhub.ras && adev->mmhub.ras->ras_block.ras_fini) - adev->mmhub.ras->ras_block.ras_fini(adev, NULL); + adev->mmhub.ras->ras_block.ras_fini(adev, adev->mmhub.ras_if); if (adev->gmc.xgmi.ras && adev->gmc.xgmi.ras->ras_block.ras_fini) - adev->gmc.xgmi.ras->ras_block.ras_fini(adev, NULL); + adev->gmc.xgmi.ras->ras_block.ras_fini(adev, adev->gmc.xgmi.ras_if); if (adev->hdp.ras && adev->hdp.ras->ras_block.ras_fini) - adev->hdp.ras->ras_block.ras_fini(adev, NULL); + adev->hdp.ras->ras_block.ras_fini(adev, adev->hdp.ras_if); } /* diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_hdp.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_hdp.c index 0f224e21cd55..5595f903c17a 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_hdp.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_hdp.c @@ -27,6 +27,6 @@ void amdgpu_hdp_ras_fini(struct amdgpu_device *adev, struct ras_common_if *ras_block) { if (amdgpu_ras_is_supported(adev, AMDGPU_RAS_BLOCK__HDP) && - adev->hdp.ras_if) - amdgpu_ras_block_late_fini(adev, adev->hdp.ras_if); + ras_block) + amdgpu_ras_block_late_fini(adev, ras_block); } diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_mmhub.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_mmhub.c index 6dfcedcc37fd..e7c3b8fff868 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_mmhub.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_mmhub.c @@ -27,6 +27,6 @@ void amdgpu_mmhub_ras_fini(struct amdgpu_device *adev, struct ras_common_if *ras_block) { if (amdgpu_ras_is_supported(adev, AMDGPU_RAS_BLOCK__MMHUB) && - adev->mmhub.ras_if) - amdgpu_ras_block_late_fini(adev, adev->mmhub.ras_if); + ras_block) + amdgpu_ras_block_late_fini(adev, ras_block); } diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_nbio.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_nbio.c index 0de2fdf31eed..54a5a15272c1 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_nbio.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_nbio.c @@ -47,6 +47,6 @@ int amdgpu_nbio_ras_late_init(struct amdgpu_device *adev, struct ras_common_if * void amdgpu_nbio_ras_fini(struct amdgpu_device *adev, struct ras_common_if *ras_block) { if (amdgpu_ras_is_supported(adev, AMDGPU_RAS_BLOCK__PCIE_BIF) && - adev->nbio.ras_if) - amdgpu_ras_block_late_fini(adev, adev->nbio.ras_if); + ras_block) + amdgpu_ras_block_late_fini(adev, ras_block); } diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_sdma.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_sdma.c index 863035a94bd8..1df8de84386d 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_sdma.c +++ b/drivers/gp