On Tue, May 31, 2022 at 08:13:04AM +0000, Ke Zhang wrote: > The warning info: > warning: passing argument 1 of ‘memcpy’ discards ‘const’ > qualifier from pointer target type > > Compulsory type conversion to clear compile warning. > > Signed-off-by: Ke Zhang <ke1x.zh...@intel.com> > --- > kernel/linux/kni/kni_misc.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/kernel/linux/kni/kni_misc.c b/kernel/linux/kni/kni_misc.c > index 780187d8bf..6f9dab4732 100644 > --- a/kernel/linux/kni/kni_misc.c > +++ b/kernel/linux/kni/kni_misc.c > @@ -403,10 +403,10 @@ kni_ioctl_create(struct net *net, uint32_t ioctl_num, > > /* if user has provided a valid mac address */ > if (is_valid_ether_addr(dev_info.mac_addr)) > - memcpy(net_dev->dev_addr, dev_info.mac_addr, ETH_ALEN); > + memcpy((unsigned char *)net_dev->dev_addr, dev_info.mac_addr, > ETH_ALEN); > else > /* Generate random MAC address. */ > - eth_random_addr(net_dev->dev_addr); > + eth_random_addr((uint8_t *)net_dev->dev_addr); > > if (dev_info.mtu) > net_dev->mtu = dev_info.mtu;
+Stephen H on CC, for his advice This fix seems wrong to do. Given that it's a pointer to const char* rather than an actual array in the structure, is a better fix not to point the pointer to a new area of memory rather than trying to overwrite the old one? /Bruce