[zen-kernel-zen-kernel:5.13/futex2 13/19] futex2_sizes.c:65:10: warning: comparison between pointer and integer
by kernel test robot
tree: https://github.com/zen-kernel/zen-kernel 5.13/futex2
head: db649ce1f5de12432be5bfedd8388eacc2f85efc
commit: 109091dbebdb22d9c1f926e501dad6a7377e5296 [13/19] selftests: futex2: Add futex sizes test
config: x86_64-rhel-8.3-kselftests (attached as .config)
compiler: gcc-10 (Ubuntu 10.3.0-1ubuntu1~20.04) 10.3.0
reproduce:
# apt-get install sparse
# sparse version: v0.6.3-341-g8af24329-dirty
# https://github.com/zen-kernel/zen-kernel/commit/109091dbebdb22d9c1f926e50...
git remote add zen-kernel-zen-kernel https://github.com/zen-kernel/zen-kernel
git fetch --no-tags zen-kernel-zen-kernel 5.13/futex2
git checkout 109091dbebdb22d9c1f926e501dad6a7377e5296
# save the attached .config to linux build tree
make W=1 C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' O=build_dir ARCH=x86_64 SHELL=/bin/bash -C tools/testing/selftests install
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All warnings (new ones prefixed by >>):
futex2_sizes.c: In function 'waiterfn':
>> futex2_sizes.c:65:10: warning: comparison between pointer and integer
65 | if (ret == ERROR)
| ^~
In file included from futex2_sizes.c:27:
>> ../include/logging.h:135:20: warning: format '%d' expects a matching 'int' argument [-Wformat=]
135 | fprintf(stderr, "\t%s: %s: "message, \
| ^~~~~~~~~~~~
futex2_sizes.c:66:3: note: in expansion of macro 'error'
66 | error("waiter failed %d errno %d\n", ret, errno);
| ^~~~~
../include/logging.h:138:20: warning: format '%d' expects a matching 'int' argument [-Wformat=]
138 | fprintf(stderr, "\t%s: "message, ERROR, ##args); \
| ^~~~~~~~
futex2_sizes.c:66:3: note: in expansion of macro 'error'
66 | error("waiter failed %d errno %d\n", ret, errno);
| ^~~~~
futex2_sizes.c: In function 'main':
futex2_sizes.c:98:12: warning: unused variable 'waiter' [-Wunused-variable]
98 | pthread_t waiter;
| ^~~~~~
futex2_sizes.c:97:12: warning: unused variable 'f_private' [-Wunused-variable]
97 | u_int32_t f_private = 0;
| ^~~~~~~~~
futex2_sizes.c:96:34: warning: unused variable 'shm_id' [-Wunused-variable]
96 | int res, ret = RET_PASS, fd, c, shm_id;
| ^~~~~~
futex2_sizes.c:96:27: warning: unused variable 'fd' [-Wunused-variable]
96 | int res, ret = RET_PASS, fd, c, shm_id;
| ^~
futex2_sizes.c:96:6: warning: unused variable 'res' [-Wunused-variable]
96 | int res, ret = RET_PASS, fd, c, shm_id;
| ^~~
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 2 months
Re: [PATCH 1/2] swap led_brightness from enum to typedef
by Dan Carpenter
Hi Amy,
url: https://github.com/0day-ci/linux/commits/Amy-Parker/leds-change-led_brigh...
base: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git dd9c7df94c1b23feacd54112f33ad95d93f64533
config: i386-randconfig-m021-20210715 (attached as .config)
compiler: gcc-10 (Ubuntu 10.3.0-1ubuntu1~20.04) 10.3.0
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
Reported-by: Dan Carpenter <dan.carpenter(a)oracle.com>
smatch warnings:
drivers/hid/hid-corsair.c:157 k90_backlight_get() warn: signedness bug returning '(-12)'
vim +157 drivers/hid/hid-corsair.c
b14a971f104520 Amy Parker 2021-07-15 145 static led_brightness k90_backlight_get(struct led_classdev *led_cdev)
^^^^^^^^^^^^^^
Just declare this as int instead of typedef.
6f78193ee9ea55 Clément Vuchener 2015-09-30 146 {
6f78193ee9ea55 Clément Vuchener 2015-09-30 147 int ret;
6f78193ee9ea55 Clément Vuchener 2015-09-30 148 struct k90_led *led = container_of(led_cdev, struct k90_led, cdev);
6f78193ee9ea55 Clément Vuchener 2015-09-30 149 struct device *dev = led->cdev.dev->parent;
6f78193ee9ea55 Clément Vuchener 2015-09-30 150 struct usb_interface *usbif = to_usb_interface(dev->parent);
6f78193ee9ea55 Clément Vuchener 2015-09-30 151 struct usb_device *usbdev = interface_to_usbdev(usbif);
6f78193ee9ea55 Clément Vuchener 2015-09-30 152 int brightness;
6d104af38b570d Johan Hovold 2017-01-12 153 char *data;
6d104af38b570d Johan Hovold 2017-01-12 154
6d104af38b570d Johan Hovold 2017-01-12 155 data = kmalloc(8, GFP_KERNEL);
6d104af38b570d Johan Hovold 2017-01-12 156 if (!data)
6d104af38b570d Johan Hovold 2017-01-12 @157 return -ENOMEM;
Negative error codes
6f78193ee9ea55 Clément Vuchener 2015-09-30 158
6f78193ee9ea55 Clément Vuchener 2015-09-30 159 ret = usb_control_msg(usbdev, usb_rcvctrlpipe(usbdev, 0),
6f78193ee9ea55 Clément Vuchener 2015-09-30 160 K90_REQUEST_STATUS,
6f78193ee9ea55 Clément Vuchener 2015-09-30 161 USB_DIR_IN | USB_TYPE_VENDOR |
6f78193ee9ea55 Clément Vuchener 2015-09-30 162 USB_RECIP_DEVICE, 0, 0, data, 8,
6f78193ee9ea55 Clément Vuchener 2015-09-30 163 USB_CTRL_SET_TIMEOUT);
7a546af50eb78a Johan Hovold 2017-01-12 164 if (ret < 5) {
6f78193ee9ea55 Clément Vuchener 2015-09-30 165 dev_warn(dev, "Failed to get K90 initial state (error %d).\n",
6f78193ee9ea55 Clément Vuchener 2015-09-30 166 ret);
6d104af38b570d Johan Hovold 2017-01-12 167 ret = -EIO;
6d104af38b570d Johan Hovold 2017-01-12 168 goto out;
6f78193ee9ea55 Clément Vuchener 2015-09-30 169 }
6f78193ee9ea55 Clément Vuchener 2015-09-30 170 brightness = data[4];
6f78193ee9ea55 Clément Vuchener 2015-09-30 171 if (brightness < 0 || brightness > 3) {
6f78193ee9ea55 Clément Vuchener 2015-09-30 172 dev_warn(dev,
6f78193ee9ea55 Clément Vuchener 2015-09-30 173 "Read invalid backlight brightness: %02hhx.\n",
6f78193ee9ea55 Clément Vuchener 2015-09-30 174 data[4]);
6d104af38b570d Johan Hovold 2017-01-12 175 ret = -EIO;
6d104af38b570d Johan Hovold 2017-01-12 176 goto out;
6f78193ee9ea55 Clément Vuchener 2015-09-30 177 }
6d104af38b570d Johan Hovold 2017-01-12 178 ret = brightness;
6d104af38b570d Johan Hovold 2017-01-12 179 out:
6d104af38b570d Johan Hovold 2017-01-12 180 kfree(data);
6d104af38b570d Johan Hovold 2017-01-12 181
6d104af38b570d Johan Hovold 2017-01-12 182 return ret;
6f78193ee9ea55 Clément Vuchener 2015-09-30 183 }
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 2 months
[android-common:android12-5.4 17/24] drivers/dma-buf/dma-buf.c:728 dma_buf_attach() warn: ignoring unreachable code.
by Dan Carpenter
tree: https://android.googlesource.com/kernel/common android12-5.4
head: bbf5a2eaba8de3602c3bc903f2477739ff89c631
commit: e618a51f562f1f038f31b6a4b4a250c062d70eab [17/24] ANDROID: Delete the DMA-BUF attachment sysfs statistics
config: i386-randconfig-m021-20210715 (attached as .config)
compiler: gcc-10 (Ubuntu 10.3.0-1ubuntu1~20.04) 10.3.0
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
Reported-by: Dan Carpenter <dan.carpenter(a)oracle.com>
smatch warnings:
drivers/dma-buf/dma-buf.c:728 dma_buf_attach() warn: ignoring unreachable code.
vim +728 drivers/dma-buf/dma-buf.c
d15bd7ee445d07 drivers/base/dma-buf.c Sumit Semwal 2011-12-26 696 struct dma_buf_attachment *dma_buf_attach(struct dma_buf *dmabuf,
d15bd7ee445d07 drivers/base/dma-buf.c Sumit Semwal 2011-12-26 697 struct device *dev)
d15bd7ee445d07 drivers/base/dma-buf.c Sumit Semwal 2011-12-26 698 {
d15bd7ee445d07 drivers/base/dma-buf.c Sumit Semwal 2011-12-26 699 struct dma_buf_attachment *attach;
d15bd7ee445d07 drivers/base/dma-buf.c Sumit Semwal 2011-12-26 700 int ret;
d15bd7ee445d07 drivers/base/dma-buf.c Sumit Semwal 2011-12-26 701
d1aa06a1eaf5f7 drivers/base/dma-buf.c Laurent Pinchart 2012-01-26 702 if (WARN_ON(!dmabuf || !dev))
d15bd7ee445d07 drivers/base/dma-buf.c Sumit Semwal 2011-12-26 703 return ERR_PTR(-EINVAL);
d15bd7ee445d07 drivers/base/dma-buf.c Sumit Semwal 2011-12-26 704
db7942b6292306 drivers/dma-buf/dma-buf.c Markus Elfring 2017-05-08 705 attach = kzalloc(sizeof(*attach), GFP_KERNEL);
34d84ec4881d13 drivers/dma-buf/dma-buf.c Markus Elfring 2017-05-08 706 if (!attach)
a9fbc3b73127ef drivers/base/dma-buf.c Laurent Pinchart 2012-01-26 707 return ERR_PTR(-ENOMEM);
d15bd7ee445d07 drivers/base/dma-buf.c Sumit Semwal 2011-12-26 708
d15bd7ee445d07 drivers/base/dma-buf.c Sumit Semwal 2011-12-26 709 attach->dev = dev;
d15bd7ee445d07 drivers/base/dma-buf.c Sumit Semwal 2011-12-26 710 attach->dmabuf = dmabuf;
2ed9201bdd9a8e drivers/base/dma-buf.c Laurent Pinchart 2012-01-26 711
2ed9201bdd9a8e drivers/base/dma-buf.c Laurent Pinchart 2012-01-26 712 mutex_lock(&dmabuf->lock);
2ed9201bdd9a8e drivers/base/dma-buf.c Laurent Pinchart 2012-01-26 713
d15bd7ee445d07 drivers/base/dma-buf.c Sumit Semwal 2011-12-26 714 if (dmabuf->ops->attach) {
a19741e5e5a9f1 drivers/dma-buf/dma-buf.c Christian König 2018-05-28 715 ret = dmabuf->ops->attach(dmabuf, attach);
d15bd7ee445d07 drivers/base/dma-buf.c Sumit Semwal 2011-12-26 716 if (ret)
d15bd7ee445d07 drivers/base/dma-buf.c Sumit Semwal 2011-12-26 717 goto err_attach;
d15bd7ee445d07 drivers/base/dma-buf.c Sumit Semwal 2011-12-26 718 }
d15bd7ee445d07 drivers/base/dma-buf.c Sumit Semwal 2011-12-26 719 list_add(&attach->node, &dmabuf->attachments);
d15bd7ee445d07 drivers/base/dma-buf.c Sumit Semwal 2011-12-26 720
d15bd7ee445d07 drivers/base/dma-buf.c Sumit Semwal 2011-12-26 721 return attach;
d15bd7ee445d07 drivers/base/dma-buf.c Sumit Semwal 2011-12-26 722
d15bd7ee445d07 drivers/base/dma-buf.c Sumit Semwal 2011-12-26 723 err_attach:
d15bd7ee445d07 drivers/base/dma-buf.c Sumit Semwal 2011-12-26 724 kfree(attach);
d15bd7ee445d07 drivers/base/dma-buf.c Sumit Semwal 2011-12-26 725 mutex_unlock(&dmabuf->lock);
d15bd7ee445d07 drivers/base/dma-buf.c Sumit Semwal 2011-12-26 726 return ERR_PTR(ret);
^^^^^^^^^^^^^^^^^^^
90935b28546d2c drivers/dma-buf/dma-buf.c Hridya Valsaraju 2021-02-01 727
90935b28546d2c drivers/dma-buf/dma-buf.c Hridya Valsaraju 2021-02-01 @728 dma_buf_detach(dmabuf, attach);
Unreachable code. There is no error path where it is attached so this
code can just be deleted. Also if ->attach() dif fail then we would
have to remove it from the &dmabuf->attachments list.
90935b28546d2c drivers/dma-buf/dma-buf.c Hridya Valsaraju 2021-02-01 729 return ERR_PTR(ret);
d15bd7ee445d07 drivers/base/dma-buf.c Sumit Semwal 2011-12-26 730 }
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 2 months
[xlnx:xlnx_rebase_v5.10 1377/1756] drivers/mtd/spi-nor/core.c:2246 spi_nor_read_id() error: we previously assumed 'nor->spimem' could be null (see line 2228)
by Dan Carpenter
tree: https://github.com/Xilinx/linux-xlnx xlnx_rebase_v5.10
head: f6f032f82f0a13def702a0154df535db88f43391
commit: d50528bd5db19df218fd9bd1e226a5644b769007 [1377/1756] spi: spi-cadence-quadspi: Added support for DDR PHY mode
config: x86_64-randconfig-m001-20210718 (attached as .config)
compiler: gcc-10 (Ubuntu 10.3.0-1ubuntu1~20.04) 10.3.0
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
Reported-by: Dan Carpenter <dan.carpenter(a)oracle.com>
New smatch warnings:
drivers/mtd/spi-nor/core.c:2246 spi_nor_read_id() error: we previously assumed 'nor->spimem' could be null (see line 2228)
Old smatch warnings:
drivers/mtd/spi-nor/core.c:1072 write_ear() error: uninitialized symbol 'code'.
vim +2246 drivers/mtd/spi-nor/core.c
06bb6f5a69dfc5 drivers/mtd/spi-nor/spi-nor.c Rafał Miłecki 2015-08-10 2221 static const struct flash_info *spi_nor_read_id(struct spi_nor *nor)
b199489d37b21c drivers/mtd/spi-nor/spi-nor.c Huang Shijie 2014-02-24 2222 {
9ec4bbcb2044ea drivers/mtd/spi-nor/core.c Boris Brezillon 2020-03-13 2223 const struct flash_info *info;
f173f26a4d543f drivers/mtd/spi-nor/spi-nor.c Vignesh Raghavendra 2019-08-06 2224 u8 *id = nor->bouncebuf;
2dcbfe365b1303 drivers/mtd/spi-nor/spi-nor.c Jonathan Neuschäfer 2020-02-23 2225 unsigned int i;
2dcbfe365b1303 drivers/mtd/spi-nor/spi-nor.c Jonathan Neuschäfer 2020-02-23 2226 int ret;
b199489d37b21c drivers/mtd/spi-nor/spi-nor.c Huang Shijie 2014-02-24 2227
b35b9a10362d20 drivers/mtd/spi-nor/spi-nor.c Boris Brezillon 2019-08-06 @2228 if (nor->spimem) {
^^^^^^^^^^^
Old code checks for NULL.
b35b9a10362d20 drivers/mtd/spi-nor/spi-nor.c Boris Brezillon 2019-08-06 2229 struct spi_mem_op op =
b35b9a10362d20 drivers/mtd/spi-nor/spi-nor.c Boris Brezillon 2019-08-06 2230 SPI_MEM_OP(SPI_MEM_OP_CMD(SPINOR_OP_RDID, 1),
b35b9a10362d20 drivers/mtd/spi-nor/spi-nor.c Boris Brezillon 2019-08-06 2231 SPI_MEM_OP_NO_ADDR,
b35b9a10362d20 drivers/mtd/spi-nor/spi-nor.c Boris Brezillon 2019-08-06 2232 SPI_MEM_OP_NO_DUMMY,
b35b9a10362d20 drivers/mtd/spi-nor/spi-nor.c Boris Brezillon 2019-08-06 2233 SPI_MEM_OP_DATA_IN(SPI_NOR_MAX_ID_LEN, id, 1));
b35b9a10362d20 drivers/mtd/spi-nor/spi-nor.c Boris Brezillon 2019-08-06 2234
2dcbfe365b1303 drivers/mtd/spi-nor/spi-nor.c Jonathan Neuschäfer 2020-02-23 2235 ret = spi_mem_exec_op(nor->spimem, &op);
b35b9a10362d20 drivers/mtd/spi-nor/spi-nor.c Boris Brezillon 2019-08-06 2236 } else {
2dcbfe365b1303 drivers/mtd/spi-nor/spi-nor.c Jonathan Neuschäfer 2020-02-23 2237 ret = nor->controller_ops->read_reg(nor, SPINOR_OP_RDID, id,
b35b9a10362d20 drivers/mtd/spi-nor/spi-nor.c Boris Brezillon 2019-08-06 2238 SPI_NOR_MAX_ID_LEN);
b35b9a10362d20 drivers/mtd/spi-nor/spi-nor.c Boris Brezillon 2019-08-06 2239 }
2dcbfe365b1303 drivers/mtd/spi-nor/spi-nor.c Jonathan Neuschäfer 2020-02-23 2240 if (ret) {
2dcbfe365b1303 drivers/mtd/spi-nor/spi-nor.c Jonathan Neuschäfer 2020-02-23 2241 dev_dbg(nor->dev, "error %d reading JEDEC ID\n", ret);
2dcbfe365b1303 drivers/mtd/spi-nor/spi-nor.c Jonathan Neuschäfer 2020-02-23 2242 return ERR_PTR(ret);
b199489d37b21c drivers/mtd/spi-nor/spi-nor.c Huang Shijie 2014-02-24 2243 }
b199489d37b21c drivers/mtd/spi-nor/spi-nor.c Huang Shijie 2014-02-24 2244
d50528bd5db19d drivers/mtd/spi-nor/core.c Sai Krishna Potthuri 2021-02-02 2245 for (i = 0; i < SPI_NOR_MAX_ID_LEN; i++)
d50528bd5db19d drivers/mtd/spi-nor/core.c Sai Krishna Potthuri 2021-02-02 @2246 nor->spimem->device_id[i] = id[i];
^^^^^^^^^^^^^^^^^^^^^^
New code adds unchecked dereference
d50528bd5db19d drivers/mtd/spi-nor/core.c Sai Krishna Potthuri 2021-02-02 2247
9ec4bbcb2044ea drivers/mtd/spi-nor/core.c Boris Brezillon 2020-03-13 2248 for (i = 0; i < ARRAY_SIZE(manufacturers); i++) {
9ec4bbcb2044ea drivers/mtd/spi-nor/core.c Boris Brezillon 2020-03-13 2249 info = spi_nor_search_part_by_id(manufacturers[i]->parts,
9ec4bbcb2044ea drivers/mtd/spi-nor/core.c Boris Brezillon 2020-03-13 2250 manufacturers[i]->nparts,
9ec4bbcb2044ea drivers/mtd/spi-nor/core.c Boris Brezillon 2020-03-13 2251 id);
9ec4bbcb2044ea drivers/mtd/spi-nor/core.c Boris Brezillon 2020-03-13 2252 if (info) {
9ec4bbcb2044ea drivers/mtd/spi-nor/core.c Boris Brezillon 2020-03-13 2253 nor->manufacturer = manufacturers[i];
9ec4bbcb2044ea drivers/mtd/spi-nor/core.c Boris Brezillon 2020-03-13 2254 return info;
b199489d37b21c drivers/mtd/spi-nor/spi-nor.c Huang Shijie 2014-02-24 2255 }
9ec4bbcb2044ea drivers/mtd/spi-nor/core.c Boris Brezillon 2020-03-13 2256 }
9ec4bbcb2044ea drivers/mtd/spi-nor/core.c Boris Brezillon 2020-03-13 2257
3ddc8adbbc7683 drivers/mtd/spi-nor/spi-nor.c Geert Uytterhoeven 2019-03-12 2258 dev_err(nor->dev, "unrecognized JEDEC id bytes: %*ph\n",
3ddc8adbbc7683 drivers/mtd/spi-nor/spi-nor.c Geert Uytterhoeven 2019-03-12 2259 SPI_NOR_MAX_ID_LEN, id);
b199489d37b21c drivers/mtd/spi-nor/spi-nor.c Huang Shijie 2014-02-24 2260 return ERR_PTR(-ENODEV);
b199489d37b21c drivers/mtd/spi-nor/spi-nor.c Huang Shijie 2014-02-24 2261 }
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 2 months
[intel-linux-intel-lts:5.4/yocto 972/1142] drivers/net/ethernet/stmicro/stmmac/stmmac_main.c:5760:5: sparse: sparse: symbol 'stmmac_all_queue_pairs_enable' was not declared. Should it be static?
by kernel test robot
tree: https://github.com/intel/linux-intel-lts.git 5.4/yocto
head: eeb611e5394c56d45c5cc8f7dc484c9f19e93143
commit: fabf035bcf07c8de58a4194b9440b566033892bb [972/1142] net: stmmac: add stmmac_all_queue_pairs_enable|disable() for XDP setup
config: x86_64-randconfig-s021-20210718 (attached as .config)
compiler: gcc-10 (Ubuntu 10.3.0-1ubuntu1~20.04) 10.3.0
reproduce:
# apt-get install sparse
# sparse version: v0.6.3-341-g8af24329-dirty
# https://github.com/intel/linux-intel-lts/commit/fabf035bcf07c8de58a4194b9...
git remote add intel-linux-intel-lts https://github.com/intel/linux-intel-lts.git
git fetch --no-tags intel-linux-intel-lts 5.4/yocto
git checkout fabf035bcf07c8de58a4194b9440b566033892bb
# save the attached .config to linux build tree
make W=1 C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' O=build_dir ARCH=x86_64 SHELL=/bin/bash drivers/net/ethernet/stmicro/stmmac/
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
sparse warnings: (new ones prefixed by >>)
drivers/net/ethernet/stmicro/stmmac/stmmac_main.c:1462:6: sparse: sparse: symbol 'stmmac_alloc_rx_buffers' was not declared. Should it be static?
drivers/net/ethernet/stmicro/stmmac/stmmac_main.c:2820:27: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __le32 [usertype] etdes4 @@ got unsigned long @@
drivers/net/ethernet/stmicro/stmmac/stmmac_main.c:2820:27: sparse: expected restricted __le32 [usertype] etdes4
drivers/net/ethernet/stmicro/stmmac/stmmac_main.c:2820:27: sparse: got unsigned long
drivers/net/ethernet/stmicro/stmmac/stmmac_main.c:2821:27: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __le32 [usertype] etdes5 @@ got unsigned long @@
drivers/net/ethernet/stmicro/stmmac/stmmac_main.c:2821:27: sparse: expected restricted __le32 [usertype] etdes5
drivers/net/ethernet/stmicro/stmmac/stmmac_main.c:2821:27: sparse: got unsigned long
drivers/net/ethernet/stmicro/stmmac/stmmac_main.c:2822:27: sparse: sparse: invalid assignment: |=
drivers/net/ethernet/stmicro/stmmac/stmmac_main.c:2822:27: sparse: left side has type restricted __le32
drivers/net/ethernet/stmicro/stmmac/stmmac_main.c:2822:27: sparse: right side has type unsigned long
>> drivers/net/ethernet/stmicro/stmmac/stmmac_main.c:5760:5: sparse: sparse: symbol 'stmmac_all_queue_pairs_enable' was not declared. Should it be static?
>> drivers/net/ethernet/stmicro/stmmac/stmmac_main.c:5814:5: sparse: sparse: symbol 'stmmac_all_queue_pairs_disable' was not declared. Should it be static?
drivers/net/ethernet/stmicro/stmmac/stmmac_main.c:5837:5: sparse: sparse: symbol 'stmmac_xdp_xmit' was not declared. Should it be static?
drivers/net/ethernet/stmicro/stmmac/stmmac_main.c:6552:6: sparse: sparse: symbol 'stmmac_clean_all_tx_rings' was not declared. Should it be static?
drivers/net/ethernet/stmicro/stmmac/stmmac_main.c:2394:57: sparse: sparse: context imbalance in 'stmmac_tx_clean' - unexpected unlock
vim +/stmmac_all_queue_pairs_enable +5760 drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
5759
> 5760 int stmmac_all_queue_pairs_enable(struct stmmac_priv *priv)
5761 {
5762 int i;
5763
5764 mutex_lock(&priv->lock);
5765
5766 if (stmmac_enabled_xdp(priv))
5767 priv->plat->normal_tx_queue_count = priv->plat->num_queue_pairs;
5768 else
5769 priv->plat->normal_tx_queue_count =
5770 priv->plat->tx_queues_to_use;
5771
5772 for (i = 0; i < priv->plat->num_queue_pairs; i++) {
5773 int err = stmmac_queue_pair_enable(priv, i);
5774
5775 if (err)
5776 return err;
5777 }
5778
5779 mutex_unlock(&priv->lock);
5780
5781 return 0;
5782 }
5783
5784 /**
5785 * stmmac_queue_pair_disable - Disables a queue pair
5786 * @priv: driver private structure
5787 * @queue_pair: queue pair
5788 *
5789 * Returns 0 on success, <0 on failure.
5790 **/
5791 int stmmac_queue_pair_disable(struct stmmac_priv *priv, u16 qid)
5792 {
5793 u16 qp_num = priv->plat->num_queue_pairs;
5794 int ret;
5795
5796 if (qid >= qp_num) {
5797 netdev_err(priv->dev,
5798 "%s: qid (%d) > number of queue pairs (%d)\n",
5799 __func__, qid, qp_num);
5800
5801 return -EINVAL;
5802 }
5803
5804 stmmac_napi_control(priv, qid, false);
5805 ret = stmmac_txrx_irq_control(priv, qid, false);
5806 if (ret)
5807 return ret;
5808 stmmac_txrx_dma_control(priv, qid, false);
5809 stmmac_txrx_desc_control(priv, qid, false);
5810
5811 return ret;
5812 }
5813
> 5814 int stmmac_all_queue_pairs_disable(struct stmmac_priv *priv)
5815 {
5816 int i;
5817
5818 mutex_lock(&priv->lock);
5819
5820 for (i = 0; i < priv->plat->num_queue_pairs; i++) {
5821 int err = stmmac_queue_pair_disable(priv, i);
5822
5823 if (err)
5824 return err;
5825 }
5826
5827 mutex_unlock(&priv->lock);
5828
5829 return 0;
5830 }
5831
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 2 months
[zen-kernel-zen-kernel:5.13/futex2 3/19] kernel/sys_ni.c:158:1: warning: no previous prototype for function '__arm64_sys_futex_waitv'
by kernel test robot
tree: https://github.com/zen-kernel/zen-kernel 5.13/futex2
head: db649ce1f5de12432be5bfedd8388eacc2f85efc
commit: 28d2f243eaf76b0e9d84947a899fc742bd49d70c [3/19] futex2: Implement vectorized wait
config: arm64-randconfig-r022-20210718 (attached as .config)
compiler: clang version 13.0.0 (https://github.com/llvm/llvm-project 5d5b08761f944d5b9822d582378333cc4b36a0a7)
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
# install arm64 cross compiling tool for clang build
# apt-get install binutils-aarch64-linux-gnu
# https://github.com/zen-kernel/zen-kernel/commit/28d2f243eaf76b0e9d84947a8...
git remote add zen-kernel-zen-kernel https://github.com/zen-kernel/zen-kernel
git fetch --no-tags zen-kernel-zen-kernel 5.13/futex2
git checkout 28d2f243eaf76b0e9d84947a899fc742bd49d70c
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=arm64
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All warnings (new ones prefixed by >>):
asmlinkage long __weak __arm64_sys_##name(const struct pt_regs *regs) \
^
<scratch space>:83:1: note: expanded from here
__arm64_sys_capset
^
kernel/sys_ni.c:136:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
arch/arm64/include/asm/syscall_wrapper.h:76:13: note: expanded from macro 'COND_SYSCALL'
asmlinkage long __weak __arm64_sys_##name(const struct pt_regs *regs) \
^
kernel/sys_ni.c:144:1: warning: no previous prototype for function '__arm64_sys_clone3' [-Wmissing-prototypes]
COND_SYSCALL(clone3);
^
arch/arm64/include/asm/syscall_wrapper.h:76:25: note: expanded from macro 'COND_SYSCALL'
asmlinkage long __weak __arm64_sys_##name(const struct pt_regs *regs) \
^
<scratch space>:84:1: note: expanded from here
__arm64_sys_clone3
^
kernel/sys_ni.c:144:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
arch/arm64/include/asm/syscall_wrapper.h:76:13: note: expanded from macro 'COND_SYSCALL'
asmlinkage long __weak __arm64_sys_##name(const struct pt_regs *regs) \
^
kernel/sys_ni.c:147:1: warning: no previous prototype for function '__arm64_sys_futex' [-Wmissing-prototypes]
COND_SYSCALL(futex);
^
arch/arm64/include/asm/syscall_wrapper.h:76:25: note: expanded from macro 'COND_SYSCALL'
asmlinkage long __weak __arm64_sys_##name(const struct pt_regs *regs) \
^
<scratch space>:85:1: note: expanded from here
__arm64_sys_futex
^
kernel/sys_ni.c:147:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
arch/arm64/include/asm/syscall_wrapper.h:76:13: note: expanded from macro 'COND_SYSCALL'
asmlinkage long __weak __arm64_sys_##name(const struct pt_regs *regs) \
^
kernel/sys_ni.c:148:1: warning: no previous prototype for function '__arm64_sys_futex_time32' [-Wmissing-prototypes]
COND_SYSCALL(futex_time32);
^
arch/arm64/include/asm/syscall_wrapper.h:76:25: note: expanded from macro 'COND_SYSCALL'
asmlinkage long __weak __arm64_sys_##name(const struct pt_regs *regs) \
^
<scratch space>:86:1: note: expanded from here
__arm64_sys_futex_time32
^
kernel/sys_ni.c:148:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
arch/arm64/include/asm/syscall_wrapper.h:76:13: note: expanded from macro 'COND_SYSCALL'
asmlinkage long __weak __arm64_sys_##name(const struct pt_regs *regs) \
^
kernel/sys_ni.c:149:1: warning: no previous prototype for function '__arm64_sys_set_robust_list' [-Wmissing-prototypes]
COND_SYSCALL(set_robust_list);
^
arch/arm64/include/asm/syscall_wrapper.h:76:25: note: expanded from macro 'COND_SYSCALL'
asmlinkage long __weak __arm64_sys_##name(const struct pt_regs *regs) \
^
<scratch space>:87:1: note: expanded from here
__arm64_sys_set_robust_list
^
kernel/sys_ni.c:149:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
arch/arm64/include/asm/syscall_wrapper.h:76:13: note: expanded from macro 'COND_SYSCALL'
asmlinkage long __weak __arm64_sys_##name(const struct pt_regs *regs) \
^
kernel/sys_ni.c:151:1: warning: no previous prototype for function '__arm64_sys_get_robust_list' [-Wmissing-prototypes]
COND_SYSCALL(get_robust_list);
^
arch/arm64/include/asm/syscall_wrapper.h:76:25: note: expanded from macro 'COND_SYSCALL'
asmlinkage long __weak __arm64_sys_##name(const struct pt_regs *regs) \
^
<scratch space>:92:1: note: expanded from here
__arm64_sys_get_robust_list
^
kernel/sys_ni.c:151:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
arch/arm64/include/asm/syscall_wrapper.h:76:13: note: expanded from macro 'COND_SYSCALL'
asmlinkage long __weak __arm64_sys_##name(const struct pt_regs *regs) \
^
kernel/sys_ni.c:155:1: warning: no previous prototype for function '__arm64_sys_futex_wait' [-Wmissing-prototypes]
COND_SYSCALL(futex_wait);
^
arch/arm64/include/asm/syscall_wrapper.h:76:25: note: expanded from macro 'COND_SYSCALL'
asmlinkage long __weak __arm64_sys_##name(const struct pt_regs *regs) \
^
<scratch space>:97:1: note: expanded from here
__arm64_sys_futex_wait
^
kernel/sys_ni.c:155:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
arch/arm64/include/asm/syscall_wrapper.h:76:13: note: expanded from macro 'COND_SYSCALL'
asmlinkage long __weak __arm64_sys_##name(const struct pt_regs *regs) \
^
kernel/sys_ni.c:157:1: warning: no previous prototype for function '__arm64_sys_futex_wake' [-Wmissing-prototypes]
COND_SYSCALL(futex_wake);
^
arch/arm64/include/asm/syscall_wrapper.h:76:25: note: expanded from macro 'COND_SYSCALL'
asmlinkage long __weak __arm64_sys_##name(const struct pt_regs *regs) \
^
<scratch space>:102:1: note: expanded from here
__arm64_sys_futex_wake
^
kernel/sys_ni.c:157:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
arch/arm64/include/asm/syscall_wrapper.h:76:13: note: expanded from macro 'COND_SYSCALL'
asmlinkage long __weak __arm64_sys_##name(const struct pt_regs *regs) \
^
>> kernel/sys_ni.c:158:1: warning: no previous prototype for function '__arm64_sys_futex_waitv' [-Wmissing-prototypes]
COND_SYSCALL(futex_waitv);
^
arch/arm64/include/asm/syscall_wrapper.h:76:25: note: expanded from macro 'COND_SYSCALL'
asmlinkage long __weak __arm64_sys_##name(const struct pt_regs *regs) \
^
<scratch space>:103:1: note: expanded from here
__arm64_sys_futex_waitv
^
kernel/sys_ni.c:158:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
arch/arm64/include/asm/syscall_wrapper.h:76:13: note: expanded from macro 'COND_SYSCALL'
asmlinkage long __weak __arm64_sys_##name(const struct pt_regs *regs) \
^
kernel/sys_ni.c:166:1: warning: no previous prototype for function '__arm64_sys_kexec_load' [-Wmissing-prototypes]
COND_SYSCALL(kexec_load);
^
arch/arm64/include/asm/syscall_wrapper.h:76:25: note: expanded from macro 'COND_SYSCALL'
asmlinkage long __weak __arm64_sys_##name(const struct pt_regs *regs) \
^
<scratch space>:108:1: note: expanded from here
__arm64_sys_kexec_load
^
kernel/sys_ni.c:166:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
arch/arm64/include/asm/syscall_wrapper.h:76:13: note: expanded from macro 'COND_SYSCALL'
asmlinkage long __weak __arm64_sys_##name(const struct pt_regs *regs) \
^
kernel/sys_ni.c:170:1: warning: no previous prototype for function '__arm64_sys_init_module' [-Wmissing-prototypes]
COND_SYSCALL(init_module);
^
arch/arm64/include/asm/syscall_wrapper.h:76:25: note: expanded from macro 'COND_SYSCALL'
asmlinkage long __weak __arm64_sys_##name(const struct pt_regs *regs) \
^
<scratch space>:113:1: note: expanded from here
__arm64_sys_init_module
^
kernel/sys_ni.c:170:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
arch/arm64/include/asm/syscall_wrapper.h:76:13: note: expanded from macro 'COND_SYSCALL'
asmlinkage long __weak __arm64_sys_##name(const struct pt_regs *regs) \
^
kernel/sys_ni.c:171:1: warning: no previous prototype for function '__arm64_sys_delete_module' [-Wmissing-prototypes]
COND_SYSCALL(delete_module);
^
arch/arm64/include/asm/syscall_wrapper.h:76:25: note: expanded from macro 'COND_SYSCALL'
asmlinkage long __weak __arm64_sys_##name(const struct pt_regs *regs) \
^
<scratch space>:114:1: note: expanded from here
__arm64_sys_delete_module
^
kernel/sys_ni.c:171:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
arch/arm64/include/asm/syscall_wrapper.h:76:13: note: expanded from macro 'COND_SYSCALL'
asmlinkage long __weak __arm64_sys_##name(const struct pt_regs *regs) \
^
kernel/sys_ni.c:176:1: warning: no previous prototype for function '__arm64_sys_syslog' [-Wmissing-prototypes]
COND_SYSCALL(syslog);
^
arch/arm64/include/asm/syscall_wrapper.h:76:25: note: expanded from macro 'COND_SYSCALL'
asmlinkage long __weak __arm64_sys_##name(const struct pt_regs *regs) \
^
<scratch space>:115:1: note: expanded from here
__arm64_sys_syslog
^
kernel/sys_ni.c:176:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
arch/arm64/include/asm/syscall_wrapper.h:76:13: note: expanded from macro 'COND_SYSCALL'
asmlinkage long __weak __arm64_sys_##name(const struct pt_regs *regs) \
^
kernel/sys_ni.c:183:1: warning: no previous prototype for function '__arm64_sys_setregid' [-Wmissing-prototypes]
COND_SYSCALL(setregid);
^
arch/arm64/include/asm/syscall_wrapper.h:76:25: note: expanded from macro 'COND_SYSCALL'
asmlinkage long __weak __arm64_sys_##name(const struct pt_regs *regs) \
^
<scratch space>:116:1: note: expanded from here
__arm64_sys_setregid
^
kernel/sys_ni.c:183:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
arch/arm64/include/asm/syscall_wrapper.h:76:13: note: expanded from macro 'COND_SYSCALL'
asmlinkage long __weak __arm64_sys_##name(const struct pt_regs *regs) \
^
kernel/sys_ni.c:184:1: warning: no previous prototype for function '__arm64_sys_setgid' [-Wmissing-prototypes]
COND_SYSCALL(setgid);
^
arch/arm64/include/asm/syscall_wrapper.h:76:25: note: expanded from macro 'COND_SYSCALL'
asmlinkage long __weak __arm64_sys_##name(const struct pt_regs *regs) \
^
<scratch space>:117:1: note: expanded from here
__arm64_sys_setgid
^
kernel/sys_ni.c:184:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
arch/arm64/include/asm/syscall_wrapper.h:76:13: note: expanded from macro 'COND_SYSCALL'
asmlinkage long __weak __arm64_sys_##name(const struct pt_regs *regs) \
^
kernel/sys_ni.c:185:1: warning: no previous prototype for function '__arm64_sys_setreuid' [-Wmissing-prototypes]
COND_SYSCALL(setreuid);
^
arch/arm64/include/asm/syscall_wrapper.h:76:25: note: expanded from macro 'COND_SYSCALL'
asmlinkage long __weak __arm64_sys_##name(const struct pt_regs *regs) \
^
<scratch space>:118:1: note: expanded from here
__arm64_sys_setreuid
^
kernel/sys_ni.c:185:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
vim +/__arm64_sys_futex_waitv +158 kernel/sys_ni.c
153
154 /* kernel/futex2.c */
155 COND_SYSCALL(futex_wait);
156 COND_SYSCALL_COMPAT(futex_wait);
157 COND_SYSCALL(futex_wake);
> 158 COND_SYSCALL(futex_waitv);
159 COND_SYSCALL_COMPAT(futex_waitv);
160
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 2 months
[zen-kernel-zen-kernel:5.13/futex2 16/19] kernel/futex2.c:1264:30: error: '__NR_futex_wait' undeclared; did you mean 'ksys_futex_wait'?
by kernel test robot
tree: https://github.com/zen-kernel/zen-kernel 5.13/futex2
head: db649ce1f5de12432be5bfedd8388eacc2f85efc
commit: ef20e009a86beacc6e27a543e1ed358a01b98af7 [16/19] futex2: Add sysfs entry for syscall numbers
config: m68k-randconfig-c003-20210718 (attached as .config)
compiler: m68k-linux-gcc (GCC) 10.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
# https://github.com/zen-kernel/zen-kernel/commit/ef20e009a86beacc6e27a543e...
git remote add zen-kernel-zen-kernel https://github.com/zen-kernel/zen-kernel
git fetch --no-tags zen-kernel-zen-kernel 5.13/futex2
git checkout ef20e009a86beacc6e27a543e1ed358a01b98af7
# save the attached .config to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-10.3.0 make.cross O=build_dir ARCH=m68k SHELL=/bin/bash
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 >>):
kernel/futex2.c: In function 'futex_get_shared_key':
kernel/futex2.c:313:31: error: implicit declaration of function 'basepage_index'; did you mean 'page_index'? [-Werror=implicit-function-declaration]
313 | key->index = (unsigned long)basepage_index(tail);
| ^~~~~~~~~~~~~~
| page_index
kernel/futex2.c: In function 'wait_show':
>> kernel/futex2.c:1264:30: error: '__NR_futex_wait' undeclared (first use in this function); did you mean 'ksys_futex_wait'?
1264 | return sprintf(buf, "%u\n", __NR_futex_wait);
| ^~~~~~~~~~~~~~~
| ksys_futex_wait
kernel/futex2.c:1264:30: note: each undeclared identifier is reported only once for each function it appears in
kernel/futex2.c: In function 'wake_show':
>> kernel/futex2.c:1272:30: error: '__NR_futex_wake' undeclared (first use in this function); did you mean 'ksys_futex_wake'?
1272 | return sprintf(buf, "%u\n", __NR_futex_wake);
| ^~~~~~~~~~~~~~~
| ksys_futex_wake
kernel/futex2.c: In function 'waitv_show':
>> kernel/futex2.c:1280:30: error: '__NR_futex_waitv' undeclared (first use in this function); did you mean '__futex_waitv'?
1280 | return sprintf(buf, "%u\n", __NR_futex_waitv);
| ^~~~~~~~~~~~~~~~
| __futex_waitv
kernel/futex2.c:1282:1: error: control reaches end of non-void function [-Werror=return-type]
1282 | }
| ^
kernel/futex2.c: In function 'wake_show':
kernel/futex2.c:1274:1: error: control reaches end of non-void function [-Werror=return-type]
1274 | }
| ^
kernel/futex2.c: In function 'wait_show':
kernel/futex2.c:1266:1: error: control reaches end of non-void function [-Werror=return-type]
1266 | }
| ^
cc1: some warnings being treated as errors
vim +1264 kernel/futex2.c
1260
1261 static ssize_t wait_show(struct kobject *kobj, struct kobj_attribute *attr,
1262 char *buf)
1263 {
> 1264 return sprintf(buf, "%u\n", __NR_futex_wait);
1265
1266 }
1267 static struct kobj_attribute futex2_wait_attr = __ATTR_RO(wait);
1268
1269 static ssize_t wake_show(struct kobject *kobj, struct kobj_attribute *attr,
1270 char *buf)
1271 {
> 1272 return sprintf(buf, "%u\n", __NR_futex_wake);
1273
1274 }
1275 static struct kobj_attribute futex2_wake_attr = __ATTR_RO(wake);
1276
1277 static ssize_t waitv_show(struct kobject *kobj, struct kobj_attribute *attr,
1278 char *buf)
1279 {
> 1280 return sprintf(buf, "%u\n", __NR_futex_waitv);
1281
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 2 months
[ti:ti-rt-linux-5.10.y 6720/6782] drivers/media/mc/mc-entity.c:443 __media_pipeline_start() error: uninitialized symbol 'ret'.
by Dan Carpenter
tree: git://git.ti.com/ti-linux-kernel/ti-linux-kernel.git ti-rt-linux-5.10.y
head: bee192299392dc41c94f4603968b7a3c02f17a1d
commit: 80dac899053d08524a40f195905022bb08e6104c [6720/6782] media: entity: Move the pipeline from entity to pads
config: i386-randconfig-m021-20210718 (attached as .config)
compiler: gcc-10 (Ubuntu 10.3.0-1ubuntu1~20.04) 10.3.0
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
Reported-by: Dan Carpenter <dan.carpenter(a)oracle.com>
smatch warnings:
drivers/media/mc/mc-entity.c:443 __media_pipeline_start() error: uninitialized symbol 'ret'.
vim +/ret +443 drivers/media/mc/mc-entity.c
20b852273642f4 drivers/media/media-entity.c Sakari Ailus 2016-11-21 406 __must_check int __media_pipeline_start(struct media_entity *entity,
e02188c90f6ef6 drivers/media/media-entity.c Laurent Pinchart 2010-08-25 407 struct media_pipeline *pipe)
e02188c90f6ef6 drivers/media/media-entity.c Laurent Pinchart 2010-08-25 408 {
d10c98949d1a1f drivers/media/media-entity.c Javier Martinez Canillas 2015-08-19 409 struct media_device *mdev = entity->graph_obj.mdev;
20b852273642f4 drivers/media/media-entity.c Sakari Ailus 2016-11-21 410 struct media_graph *graph = &pipe->graph;
cd448544d8c6d3 drivers/media/mc/mc-entity.c Sakari Ailus 2021-07-14 411 struct media_pad *pad = entity->pads;
cd448544d8c6d3 drivers/media/mc/mc-entity.c Sakari Ailus 2021-07-14 412 struct media_pad *pad_err = pad;
57208e5e25f263 drivers/media/media-entity.c Mauro Carvalho Chehab 2015-08-07 413 struct media_link *link;
af88be3887c1a0 drivers/media/media-entity.c Sakari Ailus 2012-01-11 414 int ret;
e02188c90f6ef6 drivers/media/media-entity.c Laurent Pinchart 2010-08-25 415
74a4133079f739 drivers/media/media-entity.c Sakari Ailus 2015-12-16 416 if (!pipe->streaming_count++) {
20b852273642f4 drivers/media/media-entity.c Sakari Ailus 2016-11-21 417 ret = media_graph_walk_init(&pipe->graph, mdev);
74a4133079f739 drivers/media/media-entity.c Sakari Ailus 2015-12-16 418 if (ret)
74a4133079f739 drivers/media/media-entity.c Sakari Ailus 2015-12-16 419 goto error_graph_walk_start;
106b9907c368e3 drivers/media/media-entity.c Sakari Ailus 2015-12-16 420 }
Not initialized on else path
106b9907c368e3 drivers/media/media-entity.c Sakari Ailus 2015-12-16 421
cd448544d8c6d3 drivers/media/mc/mc-entity.c Sakari Ailus 2021-07-14 422 media_graph_walk_start(&pipe->graph, pad);
cd448544d8c6d3 drivers/media/mc/mc-entity.c Sakari Ailus 2021-07-14 423
cd448544d8c6d3 drivers/media/mc/mc-entity.c Sakari Ailus 2021-07-14 424 while ((pad = media_graph_walk_next(graph))) {
cd448544d8c6d3 drivers/media/mc/mc-entity.c Sakari Ailus 2021-07-14 425 struct media_entity *entity = pad->entity;
80dac899053d08 drivers/media/mc/mc-entity.c Sakari Ailus 2021-07-14 426 bool skip_validation = pad->pipe != NULL;
80dac899053d08 drivers/media/mc/mc-entity.c Sakari Ailus 2021-07-14 427 struct media_pad *iter;
e02188c90f6ef6 drivers/media/media-entity.c Laurent Pinchart 2010-08-25 428
ef69ee1bc2c10f drivers/media/media-entity.c Mauro Carvalho Chehab 2015-10-01 429 DECLARE_BITMAP(active, MEDIA_ENTITY_MAX_PADS);
ef69ee1bc2c10f drivers/media/media-entity.c Mauro Carvalho Chehab 2015-10-01 430 DECLARE_BITMAP(has_no_links, MEDIA_ENTITY_MAX_PADS);
af88be3887c1a0 drivers/media/media-entity.c Sakari Ailus 2012-01-11 431
80dac899053d08 drivers/media/mc/mc-entity.c Sakari Ailus 2021-07-14 432 media_entity_for_each_pad(entity, iter) {
80dac899053d08 drivers/media/mc/mc-entity.c Sakari Ailus 2021-07-14 433 if (iter->pipe && iter->pipe != pipe) {
3eb87773dee633 drivers/media/media-entity.c Shuah Khan 2019-02-22 434 pr_err("Pipe active for %s. Can't start for %s\n",
80dac899053d08 drivers/media/mc/mc-entity.c Sakari Ailus 2021-07-14 435 entity->name, iter->entity->name);
8aaf62b5b9bef7 drivers/media/media-entity.c Sakari Ailus 2015-11-29 436 ret = -EBUSY;
80dac899053d08 drivers/media/mc/mc-entity.c Sakari Ailus 2021-07-14 437 } else {
80dac899053d08 drivers/media/mc/mc-entity.c Sakari Ailus 2021-07-14 438 iter->pipe = pipe;
80dac899053d08 drivers/media/mc/mc-entity.c Sakari Ailus 2021-07-14 439 }
80dac899053d08 drivers/media/mc/mc-entity.c Sakari Ailus 2021-07-14 440 iter->stream_count++;
8aaf62b5b9bef7 drivers/media/media-entity.c Sakari Ailus 2015-11-29 441 }
8aaf62b5b9bef7 drivers/media/media-entity.c Sakari Ailus 2015-11-29 442
80dac899053d08 drivers/media/mc/mc-entity.c Sakari Ailus 2021-07-14 @443 if (ret)
Only initialized on failure
80dac899053d08 drivers/media/mc/mc-entity.c Sakari Ailus 2021-07-14 444 goto error;
af88be3887c1a0 drivers/media/media-entity.c Sakari Ailus 2012-01-11 445
80dac899053d08 drivers/media/mc/mc-entity.c Sakari Ailus 2021-07-14 446 /* Already part of the pipeline, skip validation. */
80dac899053d08 drivers/media/mc/mc-entity.c Sakari Ailus 2021-07-14 447 if (skip_validation)
af88be3887c1a0 drivers/media/media-entity.c Sakari Ailus 2012-01-11 448 continue;
af88be3887c1a0 drivers/media/media-entity.c Sakari Ailus 2012-01-11 449
af88be3887c1a0 drivers/media/media-entity.c Sakari Ailus 2012-01-11 450 if (!entity->ops || !entity->ops->link_validate)
af88be3887c1a0 drivers/media/media-entity.c Sakari Ailus 2012-01-11 451 continue;
af88be3887c1a0 drivers/media/media-entity.c Sakari Ailus 2012-01-11 452
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 2 months
[zen-kernel-zen-kernel:5.13/futex2 3/19] kernel/futex2.c:728:37: error: invalid use of undefined type 'struct compat_futex_waitv'
by kernel test robot
tree: https://github.com/zen-kernel/zen-kernel 5.13/futex2
head: db649ce1f5de12432be5bfedd8388eacc2f85efc
commit: 28d2f243eaf76b0e9d84947a899fc742bd49d70c [3/19] futex2: Implement vectorized wait
config: sparc64-randconfig-r034-20210718 (attached as .config)
compiler: sparc64-linux-gcc (GCC) 10.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
# https://github.com/zen-kernel/zen-kernel/commit/28d2f243eaf76b0e9d84947a8...
git remote add zen-kernel-zen-kernel https://github.com/zen-kernel/zen-kernel
git fetch --no-tags zen-kernel-zen-kernel 5.13/futex2
git checkout 28d2f243eaf76b0e9d84947a899fc742bd49d70c
# save the attached .config to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-10.3.0 make.cross O=build_dir ARCH=sparc64 SHELL=/bin/bash
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 >>):
kernel/futex2.c: In function 'futex_get_shared_key':
kernel/futex2.c:307:31: error: implicit declaration of function 'basepage_index'; did you mean 'page_index'? [-Werror=implicit-function-declaration]
307 | key->index = (unsigned long)basepage_index(tail);
| ^~~~~~~~~~~~~~
| page_index
kernel/futex2.c: At top level:
kernel/futex2.c:683:42: error: expected ')' before 'void'
683 | COMPAT_SYSCALL_DEFINE4(compat_futex_wait, void __user *, uaddr, compat_u64, val,
| ^~~~~
| )
kernel/futex2.c:720:16: warning: 'struct compat_futex_waitv' declared inside parameter list will not be visible outside of this definition or declaration
720 | struct compat_futex_waitv __user *uwaitv,
| ^~~~~~~~~~~~~~~~~~
kernel/futex2.c: In function 'compat_futex_parse_waitv':
kernel/futex2.c:723:28: error: storage size of 'waitv' isn't known
723 | struct compat_futex_waitv waitv;
| ^~~~~
In file included from arch/sparc/include/asm/percpu_64.h:5,
from arch/sparc/include/asm/percpu.h:5,
from include/linux/irqflags.h:17,
from include/asm-generic/cmpxchg-local.h:6,
from arch/sparc/include/asm/cmpxchg_64.h:111,
from arch/sparc/include/asm/cmpxchg.h:5,
from arch/sparc/include/asm/atomic_64.h:12,
from arch/sparc/include/asm/atomic.h:5,
from include/linux/atomic.h:7,
from include/linux/debug_locks.h:5,
from include/linux/freezer.h:7,
from kernel/futex2.c:16:
>> kernel/futex2.c:728:37: error: invalid use of undefined type 'struct compat_futex_waitv'
728 | if (copy_from_user(&waitv, &uwaitv[i], sizeof(waitv)))
| ^
include/linux/compiler.h:58:52: note: in definition of macro '__trace_if_var'
58 | #define __trace_if_var(cond) (__builtin_constant_p(cond) ? (cond) : __trace_if_value(cond))
| ^~~~
kernel/futex2.c:728:3: note: in expansion of macro 'if'
728 | if (copy_from_user(&waitv, &uwaitv[i], sizeof(waitv)))
| ^~
>> kernel/futex2.c:728:37: error: invalid use of undefined type 'struct compat_futex_waitv'
728 | if (copy_from_user(&waitv, &uwaitv[i], sizeof(waitv)))
| ^
include/linux/compiler.h:58:61: note: in definition of macro '__trace_if_var'
58 | #define __trace_if_var(cond) (__builtin_constant_p(cond) ? (cond) : __trace_if_value(cond))
| ^~~~
kernel/futex2.c:728:3: note: in expansion of macro 'if'
728 | if (copy_from_user(&waitv, &uwaitv[i], sizeof(waitv)))
| ^~
>> kernel/futex2.c:728:37: error: invalid use of undefined type 'struct compat_futex_waitv'
728 | if (copy_from_user(&waitv, &uwaitv[i], sizeof(waitv)))
| ^
include/linux/compiler.h:69:3: note: in definition of macro '__trace_if_value'
69 | (cond) ? \
| ^~~~
include/linux/compiler.h:56:28: note: in expansion of macro '__trace_if_var'
56 | #define if(cond, ...) if ( __trace_if_var( !!(cond , ## __VA_ARGS__) ) )
| ^~~~~~~~~~~~~~
kernel/futex2.c:728:3: note: in expansion of macro 'if'
728 | if (copy_from_user(&waitv, &uwaitv[i], sizeof(waitv)))
| ^~
>> kernel/futex2.c:737:31: error: implicit declaration of function 'compat_ptr' [-Werror=implicit-function-declaration]
737 | futexv->objects[i].uaddr = compat_ptr(waitv.uaddr);
| ^~~~~~~~~~
kernel/futex2.c:723:28: warning: unused variable 'waitv' [-Wunused-variable]
723 | struct compat_futex_waitv waitv;
| ^~~~~
kernel/futex2.c: At top level:
>> kernel/futex2.c:756:36: error: expected ')' before 'struct'
756 | COMPAT_SYSCALL_DEFINE4(futex_waitv, struct compat_futex_waitv __user *, waiters,
| ^~~~~~~
| )
kernel/futex2.c:719:12: warning: 'compat_futex_parse_waitv' defined but not used [-Wunused-function]
719 | static int compat_futex_parse_waitv(struct futex_waiter_head *futexv,
| ^~~~~~~~~~~~~~~~~~~~~~~~
cc1: some warnings being treated as errors
vim +728 kernel/futex2.c
709
710 #ifdef CONFIG_COMPAT
711 /**
712 * compat_futex_parse_waitv - Parse a waitv array from userspace
713 * @futexv: Kernel side list of waiters to be filled
714 * @uwaitv: Userspace list to be parsed
715 * @nr_futexes: Length of futexv
716 *
717 * Return: Error code on failure, pointer to a prepared futexv otherwise
718 */
719 static int compat_futex_parse_waitv(struct futex_waiter_head *futexv,
720 struct compat_futex_waitv __user *uwaitv,
721 unsigned int nr_futexes)
722 {
723 struct compat_futex_waitv waitv;
724 struct futex_bucket *bucket;
725 unsigned int i;
726
727 for (i = 0; i < nr_futexes; i++) {
> 728 if (copy_from_user(&waitv, &uwaitv[i], sizeof(waitv)))
729 return -EFAULT;
730
731 if ((waitv.flags & ~FUTEXV_WAITER_MASK) ||
732 (waitv.flags & FUTEX_SIZE_MASK) != FUTEX_32)
733 return -EINVAL;
734
735 futexv->objects[i].key.pointer = 0;
736 futexv->objects[i].flags = waitv.flags;
> 737 futexv->objects[i].uaddr = compat_ptr(waitv.uaddr);
738 futexv->objects[i].val = waitv.val;
739 futexv->objects[i].index = i;
740
741 bucket = futex_get_bucket(compat_ptr(waitv.uaddr),
742 &futexv->objects[i].key,
743 is_object_shared);
744
745 if (IS_ERR(bucket))
746 return PTR_ERR(bucket);
747
748 futexv->objects[i].bucket = bucket;
749
750 INIT_LIST_HEAD(&futexv->objects[i].list);
751 }
752
753 return 0;
754 }
755
> 756 COMPAT_SYSCALL_DEFINE4(futex_waitv, struct compat_futex_waitv __user *, waiters,
757 unsigned int, nr_futexes, unsigned int, flags,
758 struct __kernel_timespec __user *, timo)
759 {
760 struct futex_waiter_head *futexv;
761 int ret;
762
763 if (flags & ~FUTEXV_MASK)
764 return -EINVAL;
765
766 if (!nr_futexes || nr_futexes > FUTEX_WAITV_MAX || !waiters)
767 return -EINVAL;
768
769 futexv = kmalloc((sizeof(struct futex_waiter) * nr_futexes) +
770 sizeof(*futexv), GFP_KERNEL);
771 if (!futexv)
772 return -ENOMEM;
773
774 futexv->hint = false;
775 futexv->task = current;
776
777 ret = compat_futex_parse_waitv(futexv, waiters, nr_futexes);
778
779 if (!ret)
780 ret = __futex_waitv(futexv, nr_futexes, timo, flags);
781
782 kfree(futexv);
783
784 return ret;
785 }
786 #endif
787
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 2 months