[Public] > -----Original Message----- > From: Koenig, Christian <christian.koe...@amd.com> > Sent: Monday, August 23, 2021 3:02 PM > To: Kees Cook <keesc...@chromium.org>; Lazar, Lijo > <lijo.la...@amd.com> > Cc: Pan, Xinhui <xinhui....@amd.com>; David Airlie <airl...@linux.ie>; > Daniel Vetter <dan...@ffwll.ch>; Zhang, Hawking > <hawking.zh...@amd.com>; Xu, Feifei <feifei...@amd.com>; Gao, Likun > <likun....@amd.com>; Gu, JiaWei (Will) <jiawei...@amd.com>; Quan, > Evan <evan.q...@amd.com>; amd-...@lists.freedesktop.org; dri- > de...@lists.freedesktop.org; Deucher, Alexander > <alexander.deuc...@amd.com>; Tuikov, Luben > <luben.tui...@amd.com>; Grodzovsky, Andrey > <andrey.grodzov...@amd.com>; Li, Dennis <dennis...@amd.com>; > Sundararaju, Sathishkumar <sathishkumar.sundarar...@amd.com>; Kim, > Jonathan <jonathan....@amd.com>; Wang, Kevin(Yang) > <kevin1.w...@amd.com>; Nieto, David M <david.ni...@amd.com>; Feng, > Kenneth <kenneth.f...@amd.com>; Lee Jones <lee.jo...@linaro.org>; > Clements, John <john.cleme...@amd.com>; linux-ker...@vger.kernel.org; > linux-harden...@vger.kernel.org > Subject: Re: [PATCH] drm/amd/pm: And destination bounds checking to > struct copy > > Am 23.08.21 um 16:23 schrieb Kees Cook: > > > > On August 22, 2021 11:28:54 PM PDT, "Christian König" > <christian.koe...@amd.com> wrote: > >> > >> Am 19.08.21 um 22:14 schrieb Kees Cook: > >>> [...] > >>> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu.h > >>> b/drivers/gpu/drm/amd/amdgpu/amdgpu.h > >>> index 96e895d6be35..4605934a4fb7 100644 > >>> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu.h > >>> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu.h > >>> @@ -1446,4 +1446,29 @@ static inline int amdgpu_in_reset(struct > amdgpu_device *adev) > >>> { > >>> return atomic_read(&adev->in_gpu_reset); > >>> } > >>> + > >>> +/** > >>> + * memcpy_trailing - Copy the end of one structure into the middle > >>> +of another > >>> + * > >>> + * @dst: Pointer to destination struct > >>> + * @first_dst_member: The member name in @dst where the > overwrite > >>> +begins > >>> + * @last_dst_member: The member name in @dst where the > overwrite > >>> +ends after > >>> + * @src: Pointer to the source struct > >>> + * @first_src_member: The member name in @src where the copy > begins > >>> + * > >>> + */ > >>> +#define memcpy_trailing(dst, first_dst_member, last_dst_member, > \ > >>> + src, first_src_member) \ > >> Please don't add a function like this into amdgpu.h, especially when > >> it is only used by the SMU code. > > Sure, I'm happy to move it. It wasn't clear to me which headers were > considered "immutable". Which header should I put this in? > > I think amdgpu_smuio.h, but I'm not 100% sure. Alex do you have a better > idea? >
No, that's for the SMUIO callbacks for the IP block. Please use drivers/gpu/drm/amd/pm/inc/amdgpu_smu.h Alex > We don't want to put anything new into amdgpu.h any more since this is > basically only a legacy leftover. > > Thanks, > Christian. > > > > >> And please give it an amdgpu_ prefix so that we are not confusing it > >> with a core function. > > Sure, I will include that. > > > >> Apart from that looks good to me. > > Thanks! > > > > -Kees