RE: [krzk-mem-ctrl:for-v5.17/renesas-rpc 5/5] drivers/memory/renesas-rpc-if.c:253:14: warning: cast to smaller integer type 'enum rpcif_type' from 'const void *'

From: Prabhakar Mahadev Lad
Date: Sun Nov 21 2021 - 13:04:35 EST


Hi Krzysztof,

> -----Original Message-----
> From: Krzysztof Kozlowski <krzysztof.kozlowski@xxxxxxxxxxxxx>
> Sent: 21 November 2021 12:31
> To: kernel test robot <lkp@xxxxxxxxx>; Prabhakar Mahadev Lad <prabhakar.mahadev-lad.rj@xxxxxxxxxxxxxx>
> Cc: llvm@xxxxxxxxxxxxxxx; kbuild-all@xxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx; Biju Das
> <biju.das.jz@xxxxxxxxxxxxxx>; Wolfram Sang <wsa-dev@xxxxxxxxxxxxxxxxxxxx>
> Subject: Re: [krzk-mem-ctrl:for-v5.17/renesas-rpc 5/5] drivers/memory/renesas-rpc-if.c:253:14:
> warning: cast to smaller integer type 'enum rpcif_type' from 'const void *'
>
> On 17/11/2021 09:27, Krzysztof Kozlowski wrote:
> > On 17/11/2021 04:56, kernel test robot wrote:
> >> tree:
> https://jpn01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgit.kernel.org%2Fpub%2Fscm%2Flinux%2
> Fkernel%2Fgit%2Fkrzk%2Flinux-mem-ctrl.git&amp;data=04%7C01%7Cprabhakar.mahadev-
> lad.rj%40bp.renesas.com%7C2dc6e2d7058a4d615cec08d9aceac56f%7C53d82571da1947e49cb4625a166a4a2a%7C0%7C0%
> 7C637730946616076082%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXV
> CI6Mn0%3D%7C3000&amp;sdata=jDl%2B2uGmMvHbDRBNhRYdHcMs8tVpV2QyHjIEvIjmBog%3D&amp;reserved=0 for-
> v5.17/renesas-rpc
> >> head: b04cc0d912eb80d3c438b11d96ca847c3e77e8ab
> >> commit: b04cc0d912eb80d3c438b11d96ca847c3e77e8ab [5/5] memory:
> >> renesas-rpc-if: Add support for RZ/G2L
> >> config: x86_64-buildonly-randconfig-r002-20211116 (attached as
> >> .config)
> >> compiler: clang version 14.0.0
> >> (https://jpn01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgi
> >> thub.com%2Fllvm%2Fllvm-project&amp;data=04%7C01%7Cprabhakar.mahadev-l
> >> ad.rj%40bp.renesas.com%7C2dc6e2d7058a4d615cec08d9aceac56f%7C53d82571d
> >> a1947e49cb4625a166a4a2a%7C0%7C0%7C637730946616076082%7CUnknown%7CTWFp
> >> bGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6M
> >> n0%3D%7C3000&amp;sdata=GncdHf45Tf5IFjq650tIcWCQHr8b%2FKi%2BW%2F5%2Frh
> >> WLCZo%3D&amp;reserved=0 4c2cf3a314d9131b1b288e7c8ab0c75ac1b2be1d)
> >> reproduce (this is a W=1 build):
> >> wget
> https://jpn01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fraw.githubusercontent.com%2Fintel%2F
> lkp-tests%2Fmaster%2Fsbin%2Fmake.cross&amp;data=04%7C01%7Cprabhakar.mahadev-
> lad.rj%40bp.renesas.com%7C2dc6e2d7058a4d615cec08d9aceac56f%7C53d82571da1947e49cb4625a166a4a2a%7C0%7C0%
> 7C637730946616086037%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXV
> CI6Mn0%3D%7C3000&amp;sdata=A2rdd3p77C5yTeebqFwISM8aINdbRAbWrsreBV9%2BcpI%3D&amp;reserved=0 -O
> ~/bin/make.cross
> >> chmod +x ~/bin/make.cross
> >> #
> https://jpn01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgit.kernel.org%2Fpub%2Fscm%2Flinux%2
> Fkernel%2Fgit%2Fkrzk%2Flinux-mem-
> ctrl.git%2Fcommit%2F%3Fid%3Db04cc0d912eb80d3c438b11d96ca847c3e77e8ab&amp;data=04%7C01%7Cprabhakar.maha
> dev-
> lad.rj%40bp.renesas.com%7C2dc6e2d7058a4d615cec08d9aceac56f%7C53d82571da1947e49cb4625a166a4a2a%7C0%7C0%
> 7C637730946616086037%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXV
> CI6Mn0%3D%7C3000&amp;sdata=RkD43W82kRZCCNpN%2FqxuQb%2FVNaKkJvgHt8NN8A%2BgIsw%3D&amp;reserved=0
> >> git remote add krzk-mem-ctrl
> https://jpn01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgit.kernel.org%2Fpub%2Fscm%2Flinux%2
> Fkernel%2Fgit%2Fkrzk%2Flinux-mem-ctrl.git&amp;data=04%7C01%7Cprabhakar.mahadev-
> lad.rj%40bp.renesas.com%7C2dc6e2d7058a4d615cec08d9aceac56f%7C53d82571da1947e49cb4625a166a4a2a%7C0%7C0%
> 7C637730946616086037%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXV
> CI6Mn0%3D%7C3000&amp;sdata=unRWu2Zo3KD9lrN8%2BgWHDqvUdcmISul3ynABH8YVj44%3D&amp;reserved=0
> >> git fetch --no-tags krzk-mem-ctrl for-v5.17/renesas-rpc
> >> git checkout b04cc0d912eb80d3c438b11d96ca847c3e77e8ab
> >> # save the attached .config to linux build tree
> >> COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross
> >> W=1 ARCH=x86_64
> >>
> >> If you fix the issue, kindly add following tag as appropriate
> >> Reported-by: kernel test robot <lkp@xxxxxxxxx>
> >>
> >> All warnings (new ones prefixed by >>):
> >>
> >>>> drivers/memory/renesas-rpc-if.c:253:14: warning: cast to smaller
> >>>> integer type 'enum rpcif_type' from 'const void *'
> >>>> [-Wvoid-pointer-to-enum-cast]
> >> rpc->type = (enum rpcif_type)of_device_get_match_data(dev);
> >> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> >> 1 warning generated.
> >>
> >
> > I am afraid several drivers repeat this pattern and will be affected
> > as well on clang. GCC does not complain (apparently cast is enough for
> > GCC), but still this has to be fixed. Maybe cast via uintptr_t would
> > quite it?
> >
> > Let me know when I can expect the fix.
> >
>
> Any progress on fixing this one? It blocks entire set (and further Wolfram's patches) from being
> included in pull-request and might be postponed till next release.
>
Sorry for the delay I completely missed it, I have now posted a fix [1] to ML.

[1] https://patchwork.kernel.org/project/linux-renesas-soc/patch/20211121180155.9062-1-prabhakar.mahadev-lad.rj@xxxxxxxxxxxxxx/

Cheers,
Prabhakar

>
> Best regards,
> Krzysztof