[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <202009230817.OD1MNVVL%lkp@intel.com>
Date: Wed, 23 Sep 2020 09:08:04 +0800
From: kernel test robot <lkp@...el.com>
To: Mathieu Poirier <mathieu.poirier@...aro.org>, ohad@...ery.com,
bjorn.andersson@...aro.org, guennadi.liakhovetski@...ux.intel.com
Cc: kbuild-all@...ts.01.org, loic.pallardy@...com,
linux-remoteproc@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH 09/10] rpmsg: virtio: Make endianness conversion virtIO
specific
Hi Mathieu,
I love your patch! Perhaps something to improve:
[auto build test WARNING on next-20200921]
[cannot apply to linux/master linus/master rpmsg/for-next v5.9-rc6 v5.9-rc5 v5.9-rc4 v5.9-rc6]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]
url: https://github.com/0day-ci/linux/commits/Mathieu-Poirier/rpmsg-Make-RPMSG-name-service-modular/20200922-081745
base: b10b8ad862118bf42c28a98b0f067619aadcfb23
config: i386-randconfig-s001-20200921 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-15) 9.3.0
reproduce:
# apt-get install sparse
# sparse version: v0.6.2-201-g24bdaac6-dirty
# save the attached .config to linux build tree
make W=1 C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' ARCH=i386
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@...el.com>
sparse warnings: (new ones prefixed by >>)
>> drivers/rpmsg/virtio_rpmsg_bus.c:165:43: sparse: sparse: incorrect type in argument 2 (different base types) @@ expected restricted __virtio16 [usertype] val @@ got unsigned short [usertype] val @@
>> drivers/rpmsg/virtio_rpmsg_bus.c:165:43: sparse: expected restricted __virtio16 [usertype] val
>> drivers/rpmsg/virtio_rpmsg_bus.c:165:43: sparse: got unsigned short [usertype] val
>> drivers/rpmsg/virtio_rpmsg_bus.c:173:31: sparse: sparse: incorrect type in return expression (different base types) @@ expected unsigned short @@ got restricted __virtio16 @@
>> drivers/rpmsg/virtio_rpmsg_bus.c:173:31: sparse: expected unsigned short
>> drivers/rpmsg/virtio_rpmsg_bus.c:173:31: sparse: got restricted __virtio16
>> drivers/rpmsg/virtio_rpmsg_bus.c:181:43: sparse: sparse: incorrect type in argument 2 (different base types) @@ expected restricted __virtio32 [usertype] val @@ got unsigned int [usertype] val @@
>> drivers/rpmsg/virtio_rpmsg_bus.c:181:43: sparse: expected restricted __virtio32 [usertype] val
>> drivers/rpmsg/virtio_rpmsg_bus.c:181:43: sparse: got unsigned int [usertype] val
>> drivers/rpmsg/virtio_rpmsg_bus.c:189:31: sparse: sparse: incorrect type in return expression (different base types) @@ expected unsigned int @@ got restricted __virtio32 @@
>> drivers/rpmsg/virtio_rpmsg_bus.c:189:31: sparse: expected unsigned int
>> drivers/rpmsg/virtio_rpmsg_bus.c:189:31: sparse: got restricted __virtio32
# https://github.com/0day-ci/linux/commit/dd032e0b67fcd6197fed6b6a35c14fa07934a9b4
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Mathieu-Poirier/rpmsg-Make-RPMSG-name-service-modular/20200922-081745
git checkout dd032e0b67fcd6197fed6b6a35c14fa07934a9b4
vim +165 drivers/rpmsg/virtio_rpmsg_bus.c
159
160 static u16 virtio_rpmsg_transport16_to_cpu(struct rpmsg_device *rpdev, u16 val)
161 {
162 struct virtio_rpmsg_channel *vch = to_virtio_rpmsg_channel(rpdev);
163 struct virtproc_info *vrp = vch->vrp;
164
> 165 return virtio16_to_cpu(vrp->vdev, val);
166 }
167
168 static u16 virtio_rpmsg_cpu_to_transport16(struct rpmsg_device *rpdev, u16 val)
169 {
170 struct virtio_rpmsg_channel *vch = to_virtio_rpmsg_channel(rpdev);
171 struct virtproc_info *vrp = vch->vrp;
172
> 173 return cpu_to_virtio16(vrp->vdev, val);
174 }
175
176 static u32 virtio_rpmsg_transport32_to_cpu(struct rpmsg_device *rpdev, u32 val)
177 {
178 struct virtio_rpmsg_channel *vch = to_virtio_rpmsg_channel(rpdev);
179 struct virtproc_info *vrp = vch->vrp;
180
> 181 return virtio32_to_cpu(vrp->vdev, val);
182 }
183
184 static u32 virtio_rpmsg_cpu_to_transport32(struct rpmsg_device *rpdev, u32 val)
185 {
186 struct virtio_rpmsg_channel *vch = to_virtio_rpmsg_channel(rpdev);
187 struct virtproc_info *vrp = vch->vrp;
188
> 189 return cpu_to_virtio32(vrp->vdev, val);
190 }
191
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
Download attachment ".config.gz" of type "application/gzip" (37737 bytes)
Powered by blists - more mailing lists