tree:
git://git.infradead.org/users/hch/block.git bvec-phys
head: 282ec99e1ddbbefe986790bef36bf50573d15cf2
commit: 89142b678be44d8b11844add9d2b511dcb66edd9 [23/31] vhost: use bvec_kmap_local in
{get,put}u16_iotlb
config: mips-randconfig-r011-20210520 (attached as .config)
compiler: mips64el-linux-gcc (GCC) 9.3.0
reproduce (this is a W=1 build):
wget
https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O
~/bin/make.cross
chmod +x ~/bin/make.cross
git remote add hch-block
git://git.infradead.org/users/hch/block.git
git fetch --no-tags hch-block bvec-phys
git checkout 89142b678be44d8b11844add9d2b511dcb66edd9
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=mips
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
drivers/vhost/vringh.c: In function 'getu16_iotlb':
> drivers/vhost/vringh.c:1185:2: error: 'kaddr' undeclared
(first use in this function)
1185 | kaddr = bvec_kmap_local(&iov);
| ^~~~~
drivers/vhost/vringh.c:1185:2: note: each undeclared identifier is reported only once
for each function it appears in
drivers/vhost/vringh.c:1176:8: warning: unused variable 'from'
[-Wunused-variable]
1176 | void *from;
| ^~~~
drivers/vhost/vringh.c: In function 'putu16_iotlb':
> drivers/vhost/vringh.c:1207:2: error: implicit declaration of
function 'kunmap_loal'; did you mean 'kunmap_local'?
[-Werror=implicit-function-declaration]
1207 | kunmap_loal(kaddr);
| ^~~~~~~~~~~
| kunmap_local
cc1: some warnings being treated as errors
vim +/kaddr +1185 drivers/vhost/vringh.c
1171
1172 static inline int getu16_iotlb(const struct vringh *vrh,
1173 u16 *val, const __virtio16 *p)
1174 {
1175 struct bio_vec iov;
1176 void *from;
1177 int ret;
1178
1179 /* Atomic read is needed for getu16 */
1180 ret = iotlb_translate(vrh, (u64)(uintptr_t)p, sizeof(*p),
1181 &iov, 1, VHOST_MAP_RO);
1182 if (ret < 0)
1183 return ret;
1184
1185 kaddr = bvec_kmap_local(&iov);
1186 *val =
vringh16_to_cpu(vrh, READ_ONCE(*(__virtio16 *)kaddr));
1187 kunmap_local(kaddr);
1188
1189 return 0;
1190 }
1191
1192 static inline int putu16_iotlb(const struct vringh *vrh,
1193 __virtio16 *p, u16 val)
1194 {
1195 struct bio_vec iov;
1196 void *kaddr;
1197 int ret;
1198
1199 /* Atomic write is needed for putu16 */
1200 ret = iotlb_translate(vrh, (u64)(uintptr_t)p, sizeof(*p),
1201 &iov, 1, VHOST_MAP_WO);
1202 if (ret < 0)
1203 return ret;
1204
1205 kaddr = bvec_kmap_local(&iov);
1206 WRITE_ONCE(*(__virtio16 *)kaddr, cpu_to_vringh16(vrh, val));
1207 kunmap_loal(kaddr);
1208
1209 return 0;
1210 }
1211
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org