[ti:ti-linux-5.4.y 3421/10779] drivers/pci/controller/dwc/pci-dra7xx.c:274:2: error: implicit declaration of function 'chained_irq_enter'
by kernel test robot
tree: git://git.ti.com/ti-linux-kernel/ti-linux-kernel.git ti-linux-5.4.y
head: 90e46f5ea1f52782440496e14fe7ccb72bbd8b04
commit: cff21cf22081ec4f0619d405017269f716ddae52 [3421/10779] PCI: dwc: pci-dra7xx: Fix MSI IRQ handling
config: riscv-randconfig-r033-20201016 (attached as .config)
compiler: riscv64-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 ti git://git.ti.com/ti-linux-kernel/ti-linux-kernel.git
git fetch --no-tags ti ti-linux-5.4.y
git checkout cff21cf22081ec4f0619d405017269f716ddae52
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=riscv
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/pci/controller/dwc/pci-dra7xx.c: In function 'dra7xx_pcie_msi_irq_handler':
>> drivers/pci/controller/dwc/pci-dra7xx.c:274:2: error: implicit declaration of function 'chained_irq_enter' [-Werror=implicit-function-declaration]
274 | chained_irq_enter(chip, desc);
| ^~~~~~~~~~~~~~~~~
>> drivers/pci/controller/dwc/pci-dra7xx.c:308:2: error: implicit declaration of function 'chained_irq_exit' [-Werror=implicit-function-declaration]
308 | chained_irq_exit(chip, desc);
| ^~~~~~~~~~~~~~~~
cc1: some warnings being treated as errors
vim +/chained_irq_enter +274 drivers/pci/controller/dwc/pci-dra7xx.c
263
264 static void dra7xx_pcie_msi_irq_handler(struct irq_desc *desc)
265 {
266 struct irq_chip *chip = irq_desc_get_chip(desc);
267 struct dra7xx_pcie *dra7xx;
268 struct dw_pcie *pci;
269 struct pcie_port *pp;
270 unsigned long reg;
271 u32 virq, bit;
272 int count = 0;
273
> 274 chained_irq_enter(chip, desc);
275
276 pp = irq_desc_get_handler_data(desc);
277 pci = to_dw_pcie_from_pp(pp);
278 dra7xx = to_dra7xx_pcie(pci);
279
280 reg = dra7xx_pcie_readl(dra7xx, PCIECTRL_DRA7XX_CONF_IRQSTATUS_MSI);
281 dra7xx_pcie_writel(dra7xx, PCIECTRL_DRA7XX_CONF_IRQSTATUS_MSI, reg);
282
283 switch (reg) {
284 case MSI:
285 /**
286 * Need to make sure all MSI status bits read 0 before
287 * exiting. Else, new MSI IRQs are not registered by the
288 * wrapper. Have an upperbound for the loop and exit the
289 * IRQ in case of IRQ flood to avoid locking up system
290 * in interrupt context.
291 */
292 while (dra7xx_pcie_handle_msi_irq(pp) && count < 1000)
293 count++;
294
295 break;
296 case INTA:
297 case INTB:
298 case INTC:
299 case INTD:
300 for_each_set_bit(bit, ®, PCI_NUM_INTX) {
301 virq = irq_find_mapping(dra7xx->irq_domain, bit);
302 if (virq)
303 generic_handle_irq(virq);
304 }
305 break;
306 }
307
> 308 chained_irq_exit(chip, desc);
309 }
310
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 11 months
[rcar:gmsl/dev 19/24] drivers/regulator/gpio-regulator.c:252:54: warning: format specifies type 'int' but the argument has type 'long'
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/kbingham/rcar.git gmsl/dev
head: c2a69d794dc6686bf77f7565ae51d4f7a4e8cd99
commit: 4c58ea4fc47b843a848d2a4456dc4ec9d52d3cff [19/24] DNI: Regulator: Debug
config: x86_64-randconfig-a004-20201016 (attached as .config)
compiler: clang version 12.0.0 (https://github.com/llvm/llvm-project 5fbab4025eb57b12f2842ab188ff07a110708e1d)
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 x86_64 cross compiling tool for clang build
# apt-get install binutils-x86-64-linux-gnu
# https://git.kernel.org/pub/scm/linux/kernel/git/kbingham/rcar.git/commit/...
git remote add rcar https://git.kernel.org/pub/scm/linux/kernel/git/kbingham/rcar.git
git fetch --no-tags rcar gmsl/dev
git checkout 4c58ea4fc47b843a848d2a4456dc4ec9d52d3cff
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=x86_64
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 >>):
>> drivers/regulator/gpio-regulator.c:252:54: warning: format specifies type 'int' but the argument has type 'long' [-Wformat]
dev_err(dev, "OF_GET_GPIO_REGULATOR_CONFIG %d\n", PTR_ERR(config));
~~ ^~~~~~~~~~~~~~~
%ld
include/linux/dev_printk.h:104:32: note: expanded from macro 'dev_err'
_dev_err(dev, dev_fmt(fmt), ##__VA_ARGS__)
~~~ ^~~~~~~~~~~
1 warning generated.
vim +252 drivers/regulator/gpio-regulator.c
230
231 static int gpio_regulator_probe(struct platform_device *pdev)
232 {
233 struct device *dev = &pdev->dev;
234 struct gpio_regulator_config *config = dev_get_platdata(dev);
235 struct device_node *np = dev->of_node;
236 struct gpio_regulator_data *drvdata;
237 struct regulator_config cfg = { };
238 struct regulator_dev *rdev;
239 enum gpiod_flags gflags;
240 int ptr, ret, state, i;
241
242 drvdata = devm_kzalloc(dev, sizeof(struct gpio_regulator_data),
243 GFP_KERNEL);
244 if (drvdata == NULL)
245 return -ENOMEM;
246
247 if (np) {
248 config = of_get_gpio_regulator_config(dev, np,
249 &drvdata->desc);
250
251 if (IS_ERR(config)) {
> 252 dev_err(dev, "OF_GET_GPIO_REGULATOR_CONFIG %d\n", PTR_ERR(config));
253 return PTR_ERR(config);
254 }
255 }
256
257 dev_err(dev, "Probing GPIO Regulator\n");
258
259 drvdata->desc.name = devm_kstrdup(dev, config->supply_name, GFP_KERNEL);
260 if (drvdata->desc.name == NULL) {
261 dev_err(dev, "Failed to allocate supply name\n");
262 return -ENOMEM;
263 }
264
265 drvdata->gpiods = devm_kzalloc(dev, sizeof(struct gpio_desc *),
266 GFP_KERNEL);
267 if (!drvdata->gpiods)
268 return -ENOMEM;
269
270 for (i = 0; i < config->ngpios; i++) {
271 drvdata->gpiods[i] = devm_gpiod_get_index(dev,
272 NULL,
273 i,
274 config->gflags[i]);
275 if (IS_ERR(drvdata->gpiods[i]))
276 return PTR_ERR(drvdata->gpiods[i]);
277 /* This is good to know */
278 gpiod_set_consumer_name(drvdata->gpiods[i], drvdata->desc.name);
279 }
280 drvdata->nr_gpios = config->ngpios;
281
282 drvdata->states = devm_kmemdup(dev,
283 config->states,
284 config->nr_states *
285 sizeof(struct gpio_regulator_state),
286 GFP_KERNEL);
287 if (drvdata->states == NULL) {
288 dev_err(dev, "Failed to allocate state data\n");
289 return -ENOMEM;
290 }
291 drvdata->nr_states = config->nr_states;
292
293 drvdata->desc.owner = THIS_MODULE;
294 drvdata->desc.enable_time = config->startup_delay;
295
296 /* handle regulator type*/
297 switch (config->type) {
298 case REGULATOR_VOLTAGE:
299 drvdata->desc.type = REGULATOR_VOLTAGE;
300 drvdata->desc.ops = &gpio_regulator_voltage_ops;
301 drvdata->desc.n_voltages = config->nr_states;
302 break;
303 case REGULATOR_CURRENT:
304 drvdata->desc.type = REGULATOR_CURRENT;
305 drvdata->desc.ops = &gpio_regulator_current_ops;
306 break;
307 default:
308 dev_err(dev, "No regulator type set\n");
309 return -EINVAL;
310 }
311
312 /* build initial state from gpio init data. */
313 state = 0;
314 for (ptr = 0; ptr < drvdata->nr_gpios; ptr++) {
315 if (config->gflags[ptr] == GPIOD_OUT_HIGH)
316 state |= (1 << ptr);
317 }
318 drvdata->state = state;
319
320 cfg.dev = dev;
321 cfg.init_data = config->init_data;
322 cfg.driver_data = drvdata;
323 cfg.of_node = np;
324
325 /*
326 * The signal will be inverted by the GPIO core if flagged so in the
327 * descriptor.
328 */
329 if (config->enabled_at_boot)
330 gflags = GPIOD_OUT_HIGH | GPIOD_FLAGS_BIT_NONEXCLUSIVE;
331 else
332 gflags = GPIOD_OUT_LOW | GPIOD_FLAGS_BIT_NONEXCLUSIVE;
333
334 cfg.ena_gpiod = gpiod_get_optional(dev, "enable", gflags);
335 if (IS_ERR(cfg.ena_gpiod))
336 return PTR_ERR(cfg.ena_gpiod);
337
338 rdev = devm_regulator_register(dev, &drvdata->desc, &cfg);
339 if (IS_ERR(rdev)) {
340 ret = PTR_ERR(rdev);
341 dev_err(dev, "Failed to register regulator: %d\n", ret);
342 return ret;
343 }
344
345 platform_set_drvdata(pdev, drvdata);
346
347 return 0;
348 }
349
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 11 months
Re: [PATCH net] net: dsa: point out the tail taggers
by kernel test robot
Hi Christian,
Thank you for the patch! Yet something to improve:
[auto build test ERROR on net/master]
url: https://github.com/0day-ci/linux/commits/Christian-Eggers/net-dsa-point-o...
base: https://git.kernel.org/pub/scm/linux/kernel/git/davem/net.git 2ecbc1f684482b4ed52447a39903bd9b0f222898
config: xtensa-allyesconfig (attached as .config)
compiler: xtensa-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
# https://github.com/0day-ci/linux/commit/aaa07cad29bf365264beb2c2e2668db83...
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Christian-Eggers/net-dsa-point-out-the-tail-taggers/20201017-003007
git checkout aaa07cad29bf365264beb2c2e2668db83ca31923
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=xtensa
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All error/warnings (new ones prefixed by >>):
>> net/dsa/tag_ksz.c:126:3: error: 'const struct dsa_device_ops' has no member named 'tail_tag'
126 | .tail_tag = true,
| ^~~~~~~~
>> net/dsa/tag_ksz.c:126:14: warning: initialization of 'const char *' from 'int' makes pointer from integer without a cast [-Wint-conversion]
126 | .tail_tag = true,
| ^~~~
net/dsa/tag_ksz.c:126:14: note: (near initialization for 'ksz8795_netdev_ops.name')
>> net/dsa/tag_ksz.c:126:14: warning: initialized field overwritten [-Woverride-init]
net/dsa/tag_ksz.c:126:14: note: (near initialization for 'ksz8795_netdev_ops.name')
net/dsa/tag_ksz.c:203:3: error: 'const struct dsa_device_ops' has no member named 'tail_tag'
203 | .tail_tag = true,
| ^~~~~~~~
net/dsa/tag_ksz.c:203:14: warning: initialization of 'const char *' from 'int' makes pointer from integer without a cast [-Wint-conversion]
203 | .tail_tag = true,
| ^~~~
net/dsa/tag_ksz.c:203:14: note: (near initialization for 'ksz9477_netdev_ops.name')
net/dsa/tag_ksz.c:203:14: warning: initialized field overwritten [-Woverride-init]
net/dsa/tag_ksz.c:203:14: note: (near initialization for 'ksz9477_netdev_ops.name')
vim +126 net/dsa/tag_ksz.c
119
120 static const struct dsa_device_ops ksz8795_netdev_ops = {
121 .name = "ksz8795",
122 .proto = DSA_TAG_PROTO_KSZ8795,
123 .xmit = ksz8795_xmit,
124 .rcv = ksz8795_rcv,
125 .overhead = KSZ_INGRESS_TAG_LEN,
> 126 .tail_tag = true,
127 };
128
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 11 months
[rcar:gmsl/dev 19/24] drivers/regulator/gpio-regulator.c:252:17: warning: format '%d' expects argument of type 'int', but argument 3 has type 'long int'
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/kbingham/rcar.git gmsl/dev
head: c2a69d794dc6686bf77f7565ae51d4f7a4e8cd99
commit: 4c58ea4fc47b843a848d2a4456dc4ec9d52d3cff [19/24] DNI: Regulator: Debug
config: microblaze-randconfig-r005-20201016 (attached as .config)
compiler: microblaze-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
# https://git.kernel.org/pub/scm/linux/kernel/git/kbingham/rcar.git/commit/...
git remote add rcar https://git.kernel.org/pub/scm/linux/kernel/git/kbingham/rcar.git
git fetch --no-tags rcar gmsl/dev
git checkout 4c58ea4fc47b843a848d2a4456dc4ec9d52d3cff
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=microblaze
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 >>):
In file included from include/linux/device.h:15,
from include/linux/platform_device.h:13,
from drivers/regulator/gpio-regulator.c:24:
drivers/regulator/gpio-regulator.c: In function 'gpio_regulator_probe':
>> drivers/regulator/gpio-regulator.c:252:17: warning: format '%d' expects argument of type 'int', but argument 3 has type 'long int' [-Wformat=]
252 | dev_err(dev, "OF_GET_GPIO_REGULATOR_CONFIG %d\n", PTR_ERR(config));
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/dev_printk.h:19:22: note: in definition of macro 'dev_fmt'
19 | #define dev_fmt(fmt) fmt
| ^~~
drivers/regulator/gpio-regulator.c:252:4: note: in expansion of macro 'dev_err'
252 | dev_err(dev, "OF_GET_GPIO_REGULATOR_CONFIG %d\n", PTR_ERR(config));
| ^~~~~~~
drivers/regulator/gpio-regulator.c:252:48: note: format string is defined here
252 | dev_err(dev, "OF_GET_GPIO_REGULATOR_CONFIG %d\n", PTR_ERR(config));
| ~^
| |
| int
| %ld
vim +252 drivers/regulator/gpio-regulator.c
230
231 static int gpio_regulator_probe(struct platform_device *pdev)
232 {
233 struct device *dev = &pdev->dev;
234 struct gpio_regulator_config *config = dev_get_platdata(dev);
235 struct device_node *np = dev->of_node;
236 struct gpio_regulator_data *drvdata;
237 struct regulator_config cfg = { };
238 struct regulator_dev *rdev;
239 enum gpiod_flags gflags;
240 int ptr, ret, state, i;
241
242 drvdata = devm_kzalloc(dev, sizeof(struct gpio_regulator_data),
243 GFP_KERNEL);
244 if (drvdata == NULL)
245 return -ENOMEM;
246
247 if (np) {
248 config = of_get_gpio_regulator_config(dev, np,
249 &drvdata->desc);
250
251 if (IS_ERR(config)) {
> 252 dev_err(dev, "OF_GET_GPIO_REGULATOR_CONFIG %d\n", PTR_ERR(config));
253 return PTR_ERR(config);
254 }
255 }
256
257 dev_err(dev, "Probing GPIO Regulator\n");
258
259 drvdata->desc.name = devm_kstrdup(dev, config->supply_name, GFP_KERNEL);
260 if (drvdata->desc.name == NULL) {
261 dev_err(dev, "Failed to allocate supply name\n");
262 return -ENOMEM;
263 }
264
265 drvdata->gpiods = devm_kzalloc(dev, sizeof(struct gpio_desc *),
266 GFP_KERNEL);
267 if (!drvdata->gpiods)
268 return -ENOMEM;
269
270 for (i = 0; i < config->ngpios; i++) {
271 drvdata->gpiods[i] = devm_gpiod_get_index(dev,
272 NULL,
273 i,
274 config->gflags[i]);
275 if (IS_ERR(drvdata->gpiods[i]))
276 return PTR_ERR(drvdata->gpiods[i]);
277 /* This is good to know */
278 gpiod_set_consumer_name(drvdata->gpiods[i], drvdata->desc.name);
279 }
280 drvdata->nr_gpios = config->ngpios;
281
282 drvdata->states = devm_kmemdup(dev,
283 config->states,
284 config->nr_states *
285 sizeof(struct gpio_regulator_state),
286 GFP_KERNEL);
287 if (drvdata->states == NULL) {
288 dev_err(dev, "Failed to allocate state data\n");
289 return -ENOMEM;
290 }
291 drvdata->nr_states = config->nr_states;
292
293 drvdata->desc.owner = THIS_MODULE;
294 drvdata->desc.enable_time = config->startup_delay;
295
296 /* handle regulator type*/
297 switch (config->type) {
298 case REGULATOR_VOLTAGE:
299 drvdata->desc.type = REGULATOR_VOLTAGE;
300 drvdata->desc.ops = &gpio_regulator_voltage_ops;
301 drvdata->desc.n_voltages = config->nr_states;
302 break;
303 case REGULATOR_CURRENT:
304 drvdata->desc.type = REGULATOR_CURRENT;
305 drvdata->desc.ops = &gpio_regulator_current_ops;
306 break;
307 default:
308 dev_err(dev, "No regulator type set\n");
309 return -EINVAL;
310 }
311
312 /* build initial state from gpio init data. */
313 state = 0;
314 for (ptr = 0; ptr < drvdata->nr_gpios; ptr++) {
315 if (config->gflags[ptr] == GPIOD_OUT_HIGH)
316 state |= (1 << ptr);
317 }
318 drvdata->state = state;
319
320 cfg.dev = dev;
321 cfg.init_data = config->init_data;
322 cfg.driver_data = drvdata;
323 cfg.of_node = np;
324
325 /*
326 * The signal will be inverted by the GPIO core if flagged so in the
327 * descriptor.
328 */
329 if (config->enabled_at_boot)
330 gflags = GPIOD_OUT_HIGH | GPIOD_FLAGS_BIT_NONEXCLUSIVE;
331 else
332 gflags = GPIOD_OUT_LOW | GPIOD_FLAGS_BIT_NONEXCLUSIVE;
333
334 cfg.ena_gpiod = gpiod_get_optional(dev, "enable", gflags);
335 if (IS_ERR(cfg.ena_gpiod))
336 return PTR_ERR(cfg.ena_gpiod);
337
338 rdev = devm_regulator_register(dev, &drvdata->desc, &cfg);
339 if (IS_ERR(rdev)) {
340 ret = PTR_ERR(rdev);
341 dev_err(dev, "Failed to register regulator: %d\n", ret);
342 return ret;
343 }
344
345 platform_set_drvdata(pdev, drvdata);
346
347 return 0;
348 }
349
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 11 months
[mlankhorst:locking-rework 4/63] drivers/gpu/drm/i915/gt/intel_timeline.c:67:25: sparse: sparse: incorrect type in argument 1 (different modifiers)
by kernel test robot
tree: git://people.freedesktop.org/~mlankhorst/linux locking-rework
head: 93635df9d2cb90420b6a12d3125708d7835dc273
commit: e1a39c7284bff8995e43acbcccfc3ff2681e067a [4/63] drm/i915: Pin timeline map after first timeline pin, v3.
config: i386-randconfig-s002-20201016 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-15) 9.3.0
reproduce:
# apt-get install sparse
# sparse version: v0.6.3-rc1-2-g368fd9ce-dirty
git remote add mlankhorst git://people.freedesktop.org/~mlankhorst/linux
git fetch --no-tags mlankhorst locking-rework
git checkout e1a39c7284bff8995e43acbcccfc3ff2681e067a
# 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(a)intel.com>
"sparse warnings: (new ones prefixed by >>)"
>> drivers/gpu/drm/i915/gt/intel_timeline.c:67:25: sparse: sparse: incorrect type in argument 1 (different modifiers) @@ expected void volatile *__p @@ got unsigned int const [usertype] *hwsp_seqno @@
>> drivers/gpu/drm/i915/gt/intel_timeline.c:67:25: sparse: expected void volatile *__p
>> drivers/gpu/drm/i915/gt/intel_timeline.c:67:25: sparse: got unsigned int const [usertype] *hwsp_seqno
vim +67 drivers/gpu/drm/i915/gt/intel_timeline.c
53
54 I915_SELFTEST_EXPORT int
55 intel_timeline_pin_map(struct intel_timeline *timeline)
56 {
57 struct drm_i915_gem_object *obj = timeline->hwsp_ggtt->obj;
58 u32 ofs = offset_in_page(timeline->hwsp_offset);
59 void *vaddr;
60
61 vaddr = i915_gem_object_pin_map(obj, I915_MAP_WB);
62 if (IS_ERR(vaddr))
63 return PTR_ERR(vaddr);
64
65 timeline->hwsp_map = vaddr;
66 timeline->hwsp_seqno = memset(vaddr + ofs, 0, CACHELINE_BYTES);
> 67 clflush(timeline->hwsp_seqno);
68
69 return 0;
70 }
71
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 11 months
arch/mips/include/asm/addrspace.h:88:37: warning: passing argument 1 of 'kfree' makes pointer from integer without a cast
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 9ff9b0d392ea08090cd1780fb196f36dbb586529
commit: 3af5f0f5c74ecbaf757ef06c3f80d56751277637 net: korina: fix kfree of rx/tx descriptor array
date: 4 days ago
config: mips-rb532_defconfig (attached as .config)
compiler: mipsel-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
# https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit...
git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
git fetch --no-tags linus master
git checkout 3af5f0f5c74ecbaf757ef06c3f80d56751277637
# 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 warnings (new ones prefixed by >>):
In file included from arch/mips/include/asm/barrier.h:11,
from arch/mips/include/asm/bitops.h:19,
from include/linux/bitops.h:29,
from include/linux/kernel.h:12,
from include/linux/list.h:9,
from include/linux/module.h:12,
from drivers/net/ethernet/korina.c:36:
drivers/net/ethernet/korina.c: In function 'korina_probe':
>> arch/mips/include/asm/addrspace.h:88:37: warning: passing argument 1 of 'kfree' makes pointer from integer without a cast [-Wint-conversion]
88 | #define KSEG0ADDR(a) (CPHYSADDR(a) | KSEG0)
| ~~~~~~~~~~~~~~^~~~~~~~
| |
| unsigned int
drivers/net/ethernet/korina.c:1116:8: note: in expansion of macro 'KSEG0ADDR'
1116 | kfree(KSEG0ADDR(lp->td_ring));
| ^~~~~~~~~
In file included from include/linux/irq.h:21,
from include/asm-generic/hardirq.h:13,
from arch/mips/include/asm/hardirq.h:16,
from include/linux/hardirq.h:10,
from include/linux/interrupt.h:11,
from drivers/net/ethernet/korina.c:42:
include/linux/slab.h:185:12: note: expected 'const void *' but argument is of type 'unsigned int'
185 | void kfree(const void *);
| ^~~~~~~~~~~~
In file included from arch/mips/include/asm/barrier.h:11,
from arch/mips/include/asm/bitops.h:19,
from include/linux/bitops.h:29,
from include/linux/kernel.h:12,
from include/linux/list.h:9,
from include/linux/module.h:12,
from drivers/net/ethernet/korina.c:36:
drivers/net/ethernet/korina.c: In function 'korina_remove':
>> arch/mips/include/asm/addrspace.h:88:37: warning: passing argument 1 of 'kfree' makes pointer from integer without a cast [-Wint-conversion]
88 | #define KSEG0ADDR(a) (CPHYSADDR(a) | KSEG0)
| ~~~~~~~~~~~~~~^~~~~~~~
| |
| unsigned int
drivers/net/ethernet/korina.c:1136:8: note: in expansion of macro 'KSEG0ADDR'
1136 | kfree(KSEG0ADDR(lp->td_ring));
| ^~~~~~~~~
In file included from include/linux/irq.h:21,
from include/asm-generic/hardirq.h:13,
from arch/mips/include/asm/hardirq.h:16,
from include/linux/hardirq.h:10,
from include/linux/interrupt.h:11,
from drivers/net/ethernet/korina.c:42:
include/linux/slab.h:185:12: note: expected 'const void *' but argument is of type 'unsigned int'
185 | void kfree(const void *);
| ^~~~~~~~~~~~
vim +/kfree +88 arch/mips/include/asm/addrspace.h
^1da177e4c3f415 include/asm-mips/addrspace.h Linus Torvalds 2005-04-16 84
^1da177e4c3f415 include/asm-mips/addrspace.h Linus Torvalds 2005-04-16 85 /*
^1da177e4c3f415 include/asm-mips/addrspace.h Linus Torvalds 2005-04-16 86 * Map an address to a certain kernel segment
^1da177e4c3f415 include/asm-mips/addrspace.h Linus Torvalds 2005-04-16 87 */
^1da177e4c3f415 include/asm-mips/addrspace.h Linus Torvalds 2005-04-16 @88 #define KSEG0ADDR(a) (CPHYSADDR(a) | KSEG0)
^1da177e4c3f415 include/asm-mips/addrspace.h Linus Torvalds 2005-04-16 89 #define KSEG1ADDR(a) (CPHYSADDR(a) | KSEG1)
^1da177e4c3f415 include/asm-mips/addrspace.h Linus Torvalds 2005-04-16 90 #define KSEG2ADDR(a) (CPHYSADDR(a) | KSEG2)
^1da177e4c3f415 include/asm-mips/addrspace.h Linus Torvalds 2005-04-16 91 #define KSEG3ADDR(a) (CPHYSADDR(a) | KSEG3)
^1da177e4c3f415 include/asm-mips/addrspace.h Linus Torvalds 2005-04-16 92
:::::: The code at line 88 was first introduced by commit
:::::: 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 Linux-2.6.12-rc2
:::::: TO: Linus Torvalds <torvalds(a)ppc970.osdl.org>
:::::: CC: Linus Torvalds <torvalds(a)ppc970.osdl.org>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 11 months
[linux-rt-devel:linux-5.9.y-rt-rebase 99/233] include/linux/seqlock.h:218:60: error: incomplete definition of type 'struct ww_mutex'
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/rt/linux-rt-devel.git linux-5.9.y-rt-rebase
head: ae29d238360226f2ec8d2531d96e64dc6901bf54
commit: b02dafecf64ca01e271279e17a0f25592c74dafa [99/233] locking/rtmutex: add ww_mutex addon for mutex-rt
config: x86_64-randconfig-a004-20201005 (attached as .config)
compiler: clang version 12.0.0 (https://github.com/llvm/llvm-project 5fbab4025eb57b12f2842ab188ff07a110708e1d)
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 x86_64 cross compiling tool for clang build
# apt-get install binutils-x86-64-linux-gnu
# https://git.kernel.org/pub/scm/linux/kernel/git/rt/linux-rt-devel.git/com...
git remote add linux-rt-devel https://git.kernel.org/pub/scm/linux/kernel/git/rt/linux-rt-devel.git
git fetch --no-tags linux-rt-devel linux-5.9.y-rt-rebase
git checkout b02dafecf64ca01e271279e17a0f25592c74dafa
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=x86_64
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
Note: the linux-rt-devel/linux-5.9.y-rt-rebase HEAD ae29d238360226f2ec8d2531d96e64dc6901bf54 builds fine.
It only hurts bisectibility.
All errors (new ones prefixed by >>):
In file included from arch/x86/kernel/asm-offsets.c:9:
In file included from include/linux/crypto.h:20:
In file included from include/linux/slab.h:15:
In file included from include/linux/gfp.h:6:
In file included from include/linux/mmzone.h:16:
>> include/linux/seqlock.h:218:60: error: incomplete definition of type 'struct ww_mutex'
SEQCOUNT_LOCKTYPE(struct ww_mutex, ww_mutex, true, &s->lock->base)
~~~~~~~^
include/linux/seqlock.h:192:33: note: expanded from macro 'SEQCOUNT_LOCKTYPE'
__SEQ_LOCK(lockdep_assert_held(lockmember)); \
^~~~~~~~~~
include/linux/lockdep.h:294:43: note: expanded from macro 'lockdep_assert_held'
WARN_ON(debug_locks && !lockdep_is_held(l)); \
^
include/linux/lockdep.h:270:47: note: expanded from macro 'lockdep_is_held'
#define lockdep_is_held(lock) lock_is_held(&(lock)->dep_map)
^~~~
include/asm-generic/bug.h:119:25: note: expanded from macro 'WARN_ON'
int __ret_warn_on = !!(condition); \
^~~~~~~~~
include/linux/seqlock.h:135:26: note: expanded from macro '__SEQ_LOCK'
#define __SEQ_LOCK(expr) expr
^~~~
include/linux/seqlock.h:218:26: note: forward declaration of 'struct ww_mutex'
SEQCOUNT_LOCKTYPE(struct ww_mutex, ww_mutex, true, &s->lock->base)
^
1 error generated.
make[2]: *** [scripts/Makefile.build:117: arch/x86/kernel/asm-offsets.s] Error 1
make[2]: Target '__build' not remade because of errors.
make[1]: *** [Makefile:1198: prepare0] Error 2
make[1]: Target 'prepare' not remade because of errors.
make: *** [Makefile:185: __sub-make] Error 2
make: Target 'prepare' not remade because of errors.
vim +218 include/linux/seqlock.h
55f3560df975f55 Ahmed S. Darwish 2020-07-20 213
a8772dccb2ec7b1 Peter Zijlstra 2020-07-23 214 SEQCOUNT_LOCKTYPE(raw_spinlock_t, raw_spinlock, false, s->lock)
a8772dccb2ec7b1 Peter Zijlstra 2020-07-23 215 SEQCOUNT_LOCKTYPE(spinlock_t, spinlock, false, s->lock)
a8772dccb2ec7b1 Peter Zijlstra 2020-07-23 216 SEQCOUNT_LOCKTYPE(rwlock_t, rwlock, false, s->lock)
a8772dccb2ec7b1 Peter Zijlstra 2020-07-23 217 SEQCOUNT_LOCKTYPE(struct mutex, mutex, true, s->lock)
a8772dccb2ec7b1 Peter Zijlstra 2020-07-23 @218 SEQCOUNT_LOCKTYPE(struct ww_mutex, ww_mutex, true, &s->lock->base)
a8772dccb2ec7b1 Peter Zijlstra 2020-07-23 219
:::::: The code at line 218 was first introduced by commit
:::::: a8772dccb2ec7b139db1b3ba782ecb12ed92d7c3 seqlock: Fold seqcount_LOCKNAME_t definition
:::::: TO: Peter Zijlstra <peterz(a)infradead.org>
:::::: CC: Peter Zijlstra <peterz(a)infradead.org>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 11 months
Re: [PATCH v5] net: can: Introduce MEN 16Z192-00 CAN controller driver
by kernel test robot
Hi Abhijeet,
Thank you for the patch! Perhaps something to improve:
[auto build test WARNING on 549738f15da0e5a00275977623be199fbbf7df50]
url: https://github.com/0day-ci/linux/commits/Abhijeet-Badurkar/net-can-Introd...
base: 549738f15da0e5a00275977623be199fbbf7df50
config: openrisc-randconfig-s031-20201015 (attached as .config)
compiler: or1k-linux-gcc (GCC) 9.3.0
reproduce:
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# apt-get install sparse
# sparse version: v0.6.3-rc1-dirty
# https://github.com/0day-ci/linux/commit/267876771a434b2be3278c2c87d36146c...
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Abhijeet-Badurkar/net-can-Introduce-MEN-16Z192-00-CAN-controller-driver/20201005-192132
git checkout 267876771a434b2be3278c2c87d36146c0fac77d
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' ARCH=openrisc
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/can/men_z192_can.c:1057:17: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void *addr @@ got void [noderef] __iomem *[assigned] dev_base @@
>> drivers/net/can/men_z192_can.c:1057:17: sparse: expected void *addr
>> drivers/net/can/men_z192_can.c:1057:17: sparse: got void [noderef] __iomem *[assigned] dev_base
>> drivers/net/can/men_z192_can.c:1071:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void *addr @@ got void [noderef] __iomem *dev_base @@
drivers/net/can/men_z192_can.c:1071:21: sparse: expected void *addr
>> drivers/net/can/men_z192_can.c:1071:21: sparse: got void [noderef] __iomem *dev_base
vim +1057 drivers/net/can/men_z192_can.c
962
963 static int men_z192_probe(struct mcb_device *mdev,
964 const struct mcb_device_id *id)
965 {
966 struct device *dev = &mdev->dev;
967 struct men_z192 *priv;
968 struct net_device *ndev;
969 void __iomem *dev_base;
970 struct resource *mem;
971 u32 timebase;
972 int ret = 0;
973 int irq;
974
975 mem = mcb_request_mem(mdev, dev_name(dev));
976 if (IS_ERR(mem)) {
977 dev_err(dev, "failed to request device memory");
978 return PTR_ERR(mem);
979 }
980
981 dev_base = ioremap(mem->start, resource_size(mem));
982 if (!dev_base) {
983 dev_err(dev, "failed to ioremap device memory");
984 ret = -ENXIO;
985 goto out_release;
986 }
987
988 irq = mcb_get_irq(mdev);
989 if (irq <= 0) {
990 ret = -ENODEV;
991 goto out_unmap;
992 }
993
994 ndev = alloc_candev(sizeof(struct men_z192), 0);
995 if (!ndev) {
996 dev_err(dev, "failed to allocat the can device");
997 ret = -ENOMEM;
998 goto out_unmap;
999 }
1000
1001 ndev->netdev_ops = &men_z192_netdev_ops;
1002 ndev->irq = irq;
1003 ndev->flags |= IFF_ECHO;
1004
1005 priv = netdev_priv(ndev);
1006 priv->ndev = ndev;
1007 priv->dev = dev;
1008
1009 priv->mem = mem;
1010 priv->dev_base = dev_base;
1011 priv->regs = priv->dev_base + MEN_Z192_REGS_OFFS;
1012
1013 timebase = readl(&priv->regs->timebase);
1014 if (!timebase) {
1015 dev_err(dev, "invalid timebase configured (timebase=%d)\n",
1016 timebase);
1017 ret = -EINVAL;
1018 goto out_free_candev;
1019 }
1020
1021 priv->can.clock.freq = timebase;
1022 priv->can.bittiming_const = &men_z192_bittiming_const;
1023 priv->can.do_set_mode = men_z192_set_mode;
1024 priv->can.do_get_berr_counter = men_z192_get_berr_counter;
1025 priv->can.ctrlmode_supported = CAN_CTRLMODE_LISTENONLY |
1026 CAN_CTRLMODE_3_SAMPLES |
1027 CAN_CTRLMODE_LOOPBACK;
1028
1029 spin_lock_init(&priv->lock);
1030
1031 netif_napi_add(ndev, &priv->napi, men_z192_poll,
1032 NAPI_POLL_WEIGHT);
1033
1034 skb_queue_head_init(&priv->echoq);
1035
1036 mcb_set_drvdata(mdev, ndev);
1037 SET_NETDEV_DEV(ndev, dev);
1038
1039 ndev->ethtool_ops = &men_z192_ethtool_ops;
1040
1041 ret = men_z192_register(ndev);
1042 if (ret) {
1043 dev_err(dev, "failed to register CAN device");
1044 goto out_free_candev;
1045 }
1046
1047 devm_can_led_init(ndev);
1048
1049 dev_info(dev, "MEN 16z192 CAN driver successfully registered\n");
1050
1051 return 0;
1052
1053 out_free_candev:
1054 netif_napi_del(&priv->napi);
1055 free_candev(ndev);
1056 out_unmap:
> 1057 iounmap(dev_base);
1058 out_release:
1059 mcb_release_mem(mem);
1060 return ret;
1061 }
1062
1063 static void men_z192_remove(struct mcb_device *mdev)
1064 {
1065 struct net_device *ndev = mcb_get_drvdata(mdev);
1066 struct men_z192 *priv = netdev_priv(ndev);
1067
1068 unregister_candev(ndev);
1069 netif_napi_del(&priv->napi);
1070
> 1071 iounmap(priv->dev_base);
1072 mcb_release_mem(priv->mem);
1073
1074 free_candev(ndev);
1075 }
1076
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 11 months
Re: [PATCH] Staging: android: ashmem: changed struct file_operations to const file_operations
by kernel test robot
Hi,
Thank you for the patch! Yet something to improve:
[auto build test ERROR on staging/staging-testing]
url: https://github.com/0day-ci/linux/commits/kiransuren-osuosl-org/Staging-an...
base: https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging.git 726eb70e0d34dc4bc4dada71f52bba8ed638431e
config: x86_64-randconfig-a006-20201016 (attached as .config)
compiler: clang version 12.0.0 (https://github.com/llvm/llvm-project 5fbab4025eb57b12f2842ab188ff07a110708e1d)
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 x86_64 cross compiling tool for clang build
# apt-get install binutils-x86-64-linux-gnu
# https://github.com/0day-ci/linux/commit/1496e5f2103cc6f96af90aaf323cf92f0...
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review kiransuren-osuosl-org/Staging-android-ashmem-changed-struct-file_operations-to-const-file_operations/20201016-131238
git checkout 1496e5f2103cc6f96af90aaf323cf92f018dcf41
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=x86_64
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/staging/android/ashmem.c:379:15: error: must use 'struct' tag to refer to type 'file_operations'
static const file_operations vmfile_fops;
^
struct
>> drivers/staging/android/ashmem.c:430:16: error: cannot assign to variable 'vmfile_fops' with const-qualified type 'const struct file_operations'
vmfile_fops = *vmfile->f_op;
~~~~~~~~~~~ ^
drivers/staging/android/ashmem.c:379:31: note: variable 'vmfile_fops' declared const here
static const file_operations vmfile_fops;
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
drivers/staging/android/ashmem.c:431:21: error: cannot assign to variable 'vmfile_fops' with const-qualified type 'const struct file_operations'
vmfile_fops.mmap = ashmem_vmfile_mmap;
~~~~~~~~~~~~~~~~ ^
drivers/staging/android/ashmem.c:379:31: note: variable 'vmfile_fops' declared const here
static const file_operations vmfile_fops;
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
drivers/staging/android/ashmem.c:432:34: error: cannot assign to variable 'vmfile_fops' with const-qualified type 'const struct file_operations'
vmfile_fops.get_unmapped_area =
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^
drivers/staging/android/ashmem.c:379:31: note: variable 'vmfile_fops' declared const here
static const file_operations vmfile_fops;
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
4 errors generated.
vim +379 drivers/staging/android/ashmem.c
376
377 static int ashmem_mmap(struct file *file, struct vm_area_struct *vma)
378 {
> 379 static const file_operations vmfile_fops;
380 struct ashmem_area *asma = file->private_data;
381 int ret = 0;
382
383 mutex_lock(&ashmem_mutex);
384
385 /* user needs to SET_SIZE before mapping */
386 if (!asma->size) {
387 ret = -EINVAL;
388 goto out;
389 }
390
391 /* requested mapping size larger than object size */
392 if (vma->vm_end - vma->vm_start > PAGE_ALIGN(asma->size)) {
393 ret = -EINVAL;
394 goto out;
395 }
396
397 /* requested protection bits must match our allowed protection mask */
398 if ((vma->vm_flags & ~calc_vm_prot_bits(asma->prot_mask, 0)) &
399 calc_vm_prot_bits(PROT_MASK, 0)) {
400 ret = -EPERM;
401 goto out;
402 }
403 vma->vm_flags &= ~calc_vm_may_flags(~asma->prot_mask);
404
405 if (!asma->file) {
406 char *name = ASHMEM_NAME_DEF;
407 struct file *vmfile;
408 struct inode *inode;
409
410 if (asma->name[ASHMEM_NAME_PREFIX_LEN] != '\0')
411 name = asma->name;
412
413 /* ... and allocate the backing shmem file */
414 vmfile = shmem_file_setup(name, asma->size, vma->vm_flags);
415 if (IS_ERR(vmfile)) {
416 ret = PTR_ERR(vmfile);
417 goto out;
418 }
419 vmfile->f_mode |= FMODE_LSEEK;
420 inode = file_inode(vmfile);
421 lockdep_set_class(&inode->i_rwsem, &backing_shmem_inode_class);
422 asma->file = vmfile;
423 /*
424 * override mmap operation of the vmfile so that it can't be
425 * remapped which would lead to creation of a new vma with no
426 * asma permission checks. Have to override get_unmapped_area
427 * as well to prevent VM_BUG_ON check for f_ops modification.
428 */
429 if (!vmfile_fops.mmap) {
> 430 vmfile_fops = *vmfile->f_op;
431 vmfile_fops.mmap = ashmem_vmfile_mmap;
432 vmfile_fops.get_unmapped_area =
433 ashmem_vmfile_get_unmapped_area;
434 }
435 vmfile->f_op = &vmfile_fops;
436 }
437 get_file(asma->file);
438
439 /*
440 * XXX - Reworked to use shmem_zero_setup() instead of
441 * shmem_set_file while we're in staging. -jstultz
442 */
443 if (vma->vm_flags & VM_SHARED) {
444 ret = shmem_zero_setup(vma);
445 if (ret) {
446 fput(asma->file);
447 goto out;
448 }
449 } else {
450 vma_set_anonymous(vma);
451 }
452
453 if (vma->vm_file)
454 fput(vma->vm_file);
455 vma->vm_file = asma->file;
456
457 out:
458 mutex_unlock(&ashmem_mutex);
459 return ret;
460 }
461
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 11 months