drivers/media/usb/dvb-usb/af9005.c:981:48: warning: suggest braces around empty body in an 'if' statement
by kernel test robot
Hi Navid,
FYI, the error/warning still remains.
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: b791d1bdf9212d944d749a5c7ff6febdba241771
commit: 2289adbfa559050d2a38bcd9caac1c18b800e928 media: usb: fix memory leak in af9005_identify_state
date: 8 months ago
config: c6x-randconfig-r012-20200612 (attached as .config)
compiler: c6x-elf-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 checkout 2289adbfa559050d2a38bcd9caac1c18b800e928
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=c6x
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 >>, old ones prefixed by <<):
drivers/media/usb/dvb-usb/af9005.c: In function 'af9005_read_ofdm_register':
drivers/media/usb/dvb-usb/af9005.c:144:32: warning: suggest braces around empty body in an 'else' statement [-Wempty-body]
144 | deb_reg("value %xn", *value);
| ^
drivers/media/usb/dvb-usb/af9005.c: In function 'af9005_read_ofdm_registers':
drivers/media/usb/dvb-usb/af9005.c:159:35: warning: suggest braces around empty body in an 'else' statement [-Wempty-body]
159 | debug_dump(values, len, deb_reg);
| ^
drivers/media/usb/dvb-usb/af9005.c: In function 'af9005_write_ofdm_register':
drivers/media/usb/dvb-usb/af9005.c:174:18: warning: suggest braces around empty body in an 'else' statement [-Wempty-body]
174 | deb_reg("okn");
| ^
drivers/media/usb/dvb-usb/af9005.c: In function 'af9005_write_ofdm_registers':
drivers/media/usb/dvb-usb/af9005.c:191:18: warning: suggest braces around empty body in an 'else' statement [-Wempty-body]
191 | deb_reg("okn");
| ^
drivers/media/usb/dvb-usb/af9005.c: In function 'af9005_identify_state':
>> drivers/media/usb/dvb-usb/af9005.c:981:48: warning: suggest braces around empty body in an 'if' statement [-Wempty-body]
981 | deb_info("Identify state cold = %dn", *cold);
| ^
/tmp/cc9dN54m.s: Assembler messages:
/tmp/cc9dN54m.s:4651: Warning: ignoring changed section attributes for .far
--
drivers/media/usb/dvb-usb/af9005.c: In function 'af9005_read_ofdm_register':
drivers/media/usb/dvb-usb/af9005.c:144:32: warning: suggest braces around empty body in an 'else' statement [-Wempty-body]
144 | deb_reg("value %xn", *value);
| ^
drivers/media/usb/dvb-usb/af9005.c: In function 'af9005_read_ofdm_registers':
drivers/media/usb/dvb-usb/af9005.c:159:35: warning: suggest braces around empty body in an 'else' statement [-Wempty-body]
159 | debug_dump(values, len, deb_reg);
| ^
drivers/media/usb/dvb-usb/af9005.c: In function 'af9005_write_ofdm_register':
drivers/media/usb/dvb-usb/af9005.c:174:18: warning: suggest braces around empty body in an 'else' statement [-Wempty-body]
174 | deb_reg("okn");
| ^
drivers/media/usb/dvb-usb/af9005.c: In function 'af9005_write_ofdm_registers':
drivers/media/usb/dvb-usb/af9005.c:191:18: warning: suggest braces around empty body in an 'else' statement [-Wempty-body]
191 | deb_reg("okn");
| ^
drivers/media/usb/dvb-usb/af9005.c: In function 'af9005_identify_state':
>> drivers/media/usb/dvb-usb/af9005.c:981:48: warning: suggest braces around empty body in an 'if' statement [-Wempty-body]
981 | deb_info("Identify state cold = %dn", *cold);
| ^
/tmp/ccqEAIu5.s: Assembler messages:
/tmp/ccqEAIu5.s:4651: Warning: ignoring changed section attributes for .far
vim +/if +981 drivers/media/usb/dvb-usb/af9005.c
af4e067e1dcf92 drivers/media/dvb/dvb-usb/af9005.c Luca Olivetti 2007-05-07 956
af4e067e1dcf92 drivers/media/dvb/dvb-usb/af9005.c Luca Olivetti 2007-05-07 957 static int af9005_identify_state(struct usb_device *udev,
af4e067e1dcf92 drivers/media/dvb/dvb-usb/af9005.c Luca Olivetti 2007-05-07 958 struct dvb_usb_device_properties *props,
af4e067e1dcf92 drivers/media/dvb/dvb-usb/af9005.c Luca Olivetti 2007-05-07 959 struct dvb_usb_device_description **desc,
af4e067e1dcf92 drivers/media/dvb/dvb-usb/af9005.c Luca Olivetti 2007-05-07 960 int *cold)
af4e067e1dcf92 drivers/media/dvb/dvb-usb/af9005.c Luca Olivetti 2007-05-07 961 {
af4e067e1dcf92 drivers/media/dvb/dvb-usb/af9005.c Luca Olivetti 2007-05-07 962 int ret;
c58b84ee467bfd drivers/media/usb/dvb-usb/af9005.c Mauro Carvalho Chehab 2016-10-05 963 u8 reply, *buf;
c58b84ee467bfd drivers/media/usb/dvb-usb/af9005.c Mauro Carvalho Chehab 2016-10-05 964
c58b84ee467bfd drivers/media/usb/dvb-usb/af9005.c Mauro Carvalho Chehab 2016-10-05 965 buf = kmalloc(FW_BULKOUT_SIZE + 2, GFP_KERNEL);
c58b84ee467bfd drivers/media/usb/dvb-usb/af9005.c Mauro Carvalho Chehab 2016-10-05 966 if (!buf)
c58b84ee467bfd drivers/media/usb/dvb-usb/af9005.c Mauro Carvalho Chehab 2016-10-05 967 return -ENOMEM;
c58b84ee467bfd drivers/media/usb/dvb-usb/af9005.c Mauro Carvalho Chehab 2016-10-05 968
c58b84ee467bfd drivers/media/usb/dvb-usb/af9005.c Mauro Carvalho Chehab 2016-10-05 969 ret = af9005_boot_packet(udev, FW_CONFIG, &reply,
c58b84ee467bfd drivers/media/usb/dvb-usb/af9005.c Mauro Carvalho Chehab 2016-10-05 970 buf, FW_BULKOUT_SIZE + 2);
af4e067e1dcf92 drivers/media/dvb/dvb-usb/af9005.c Luca Olivetti 2007-05-07 971 if (ret)
c58b84ee467bfd drivers/media/usb/dvb-usb/af9005.c Mauro Carvalho Chehab 2016-10-05 972 goto err;
af4e067e1dcf92 drivers/media/dvb/dvb-usb/af9005.c Luca Olivetti 2007-05-07 973 deb_info("result of FW_CONFIG in identify state %d\n", reply);
af4e067e1dcf92 drivers/media/dvb/dvb-usb/af9005.c Luca Olivetti 2007-05-07 974 if (reply == 0x01)
af4e067e1dcf92 drivers/media/dvb/dvb-usb/af9005.c Luca Olivetti 2007-05-07 975 *cold = 1;
af4e067e1dcf92 drivers/media/dvb/dvb-usb/af9005.c Luca Olivetti 2007-05-07 976 else if (reply == 0x02)
af4e067e1dcf92 drivers/media/dvb/dvb-usb/af9005.c Luca Olivetti 2007-05-07 977 *cold = 0;
af4e067e1dcf92 drivers/media/dvb/dvb-usb/af9005.c Luca Olivetti 2007-05-07 978 else
2289adbfa55905 drivers/media/usb/dvb-usb/af9005.c Navid Emamdoost 2019-10-09 979 ret = -EIO;
2289adbfa55905 drivers/media/usb/dvb-usb/af9005.c Navid Emamdoost 2019-10-09 980 if (!ret)
af4e067e1dcf92 drivers/media/dvb/dvb-usb/af9005.c Luca Olivetti 2007-05-07 @981 deb_info("Identify state cold = %d\n", *cold);
c58b84ee467bfd drivers/media/usb/dvb-usb/af9005.c Mauro Carvalho Chehab 2016-10-05 982
c58b84ee467bfd drivers/media/usb/dvb-usb/af9005.c Mauro Carvalho Chehab 2016-10-05 983 err:
c58b84ee467bfd drivers/media/usb/dvb-usb/af9005.c Mauro Carvalho Chehab 2016-10-05 984 kfree(buf);
c58b84ee467bfd drivers/media/usb/dvb-usb/af9005.c Mauro Carvalho Chehab 2016-10-05 985 return ret;
af4e067e1dcf92 drivers/media/dvb/dvb-usb/af9005.c Luca Olivetti 2007-05-07 986 }
af4e067e1dcf92 drivers/media/dvb/dvb-usb/af9005.c Luca Olivetti 2007-05-07 987
:::::: The code at line 981 was first introduced by commit
:::::: af4e067e1dcf926d9523dff11e46c45fd9fa9da2 V4L/DVB (5625): Add support for the AF9005 demodulator from Afatech
:::::: TO: Luca Olivetti <luca(a)ventoso.org>
:::::: CC: Mauro Carvalho Chehab <mchehab(a)infradead.org>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 3 months
drivers/regulator/da9063-regulator.c:529:3: warning: initialized field overwritten
by kernel test robot
Hi Martin,
FYI, the error/warning still remains.
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: b791d1bdf9212d944d749a5c7ff6febdba241771
commit: 99f75ce6661993b8ba7ae0c94e95cb25454fdf1e regulator: da9063: fix suspend
date: 3 months ago
config: i386-randconfig-r011-20200612 (attached as .config)
compiler: gcc-4.9 (Ubuntu 4.9.3-13ubuntu2) 4.9.3
reproduce (this is a W=1 build):
git checkout 99f75ce6661993b8ba7ae0c94e95cb25454fdf1e
# save the attached .config to linux build tree
make W=1 ARCH=i386
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 >>, old ones prefixed by <<):
>> drivers/regulator/da9063-regulator.c:529:3: warning: initialized field overwritten [-Woverride-init]
.suspend = BFIELD(DA9063_REG_LDO9_CONT, DA9063_VLDO9_SEL),
^
drivers/regulator/da9063-regulator.c:529:3: warning: (near initialization for 'da9063_regulator_info[11].suspend') [-Woverride-init]
vim +529 drivers/regulator/da9063-regulator.c
69ca3e58d17854 Krystian Garbaciak 2013-07-29 462
69ca3e58d17854 Krystian Garbaciak 2013-07-29 463 /* Info of regulators for DA9063 */
69ca3e58d17854 Krystian Garbaciak 2013-07-29 464 static const struct da9063_regulator_info da9063_regulator_info[] = {
69ca3e58d17854 Krystian Garbaciak 2013-07-29 465 {
69ca3e58d17854 Krystian Garbaciak 2013-07-29 466 DA9063_BUCK(DA9063, BCORE1, 300, 10, 1570,
5b1f537e498303 Axel Lin 2019-03-04 467 da9063_buck_a_limits,
5b1f537e498303 Axel Lin 2019-03-04 468 DA9063_REG_BUCK_ILIM_C, DA9063_BCORE1_ILIM_MASK),
69ca3e58d17854 Krystian Garbaciak 2013-07-29 469 DA9063_BUCK_COMMON_FIELDS(BCORE1),
69ca3e58d17854 Krystian Garbaciak 2013-07-29 470 },
69ca3e58d17854 Krystian Garbaciak 2013-07-29 471 {
69ca3e58d17854 Krystian Garbaciak 2013-07-29 472 DA9063_BUCK(DA9063, BCORE2, 300, 10, 1570,
5b1f537e498303 Axel Lin 2019-03-04 473 da9063_buck_a_limits,
5b1f537e498303 Axel Lin 2019-03-04 474 DA9063_REG_BUCK_ILIM_C, DA9063_BCORE2_ILIM_MASK),
69ca3e58d17854 Krystian Garbaciak 2013-07-29 475 DA9063_BUCK_COMMON_FIELDS(BCORE2),
69ca3e58d17854 Krystian Garbaciak 2013-07-29 476 },
69ca3e58d17854 Krystian Garbaciak 2013-07-29 477 {
69ca3e58d17854 Krystian Garbaciak 2013-07-29 478 DA9063_BUCK(DA9063, BPRO, 530, 10, 1800,
5b1f537e498303 Axel Lin 2019-03-04 479 da9063_buck_a_limits,
5b1f537e498303 Axel Lin 2019-03-04 480 DA9063_REG_BUCK_ILIM_B, DA9063_BPRO_ILIM_MASK),
69ca3e58d17854 Krystian Garbaciak 2013-07-29 481 DA9063_BUCK_COMMON_FIELDS(BPRO),
69ca3e58d17854 Krystian Garbaciak 2013-07-29 482 },
69ca3e58d17854 Krystian Garbaciak 2013-07-29 483 {
69ca3e58d17854 Krystian Garbaciak 2013-07-29 484 DA9063_BUCK(DA9063, BMEM, 800, 20, 3340,
5b1f537e498303 Axel Lin 2019-03-04 485 da9063_buck_b_limits,
5b1f537e498303 Axel Lin 2019-03-04 486 DA9063_REG_BUCK_ILIM_A, DA9063_BMEM_ILIM_MASK),
69ca3e58d17854 Krystian Garbaciak 2013-07-29 487 DA9063_BUCK_COMMON_FIELDS(BMEM),
69ca3e58d17854 Krystian Garbaciak 2013-07-29 488 },
69ca3e58d17854 Krystian Garbaciak 2013-07-29 489 {
69ca3e58d17854 Krystian Garbaciak 2013-07-29 490 DA9063_BUCK(DA9063, BIO, 800, 20, 3340,
5b1f537e498303 Axel Lin 2019-03-04 491 da9063_buck_b_limits,
5b1f537e498303 Axel Lin 2019-03-04 492 DA9063_REG_BUCK_ILIM_A, DA9063_BIO_ILIM_MASK),
69ca3e58d17854 Krystian Garbaciak 2013-07-29 493 DA9063_BUCK_COMMON_FIELDS(BIO),
69ca3e58d17854 Krystian Garbaciak 2013-07-29 494 },
69ca3e58d17854 Krystian Garbaciak 2013-07-29 495 {
69ca3e58d17854 Krystian Garbaciak 2013-07-29 496 DA9063_BUCK(DA9063, BPERI, 800, 20, 3340,
5b1f537e498303 Axel Lin 2019-03-04 497 da9063_buck_b_limits,
5b1f537e498303 Axel Lin 2019-03-04 498 DA9063_REG_BUCK_ILIM_B, DA9063_BPERI_ILIM_MASK),
69ca3e58d17854 Krystian Garbaciak 2013-07-29 499 DA9063_BUCK_COMMON_FIELDS(BPERI),
69ca3e58d17854 Krystian Garbaciak 2013-07-29 500 },
69ca3e58d17854 Krystian Garbaciak 2013-07-29 501 {
69ca3e58d17854 Krystian Garbaciak 2013-07-29 502 DA9063_BUCK(DA9063, BCORES_MERGED, 300, 10, 1570,
5b1f537e498303 Axel Lin 2019-03-04 503 da9063_bcores_merged_limits,
5b1f537e498303 Axel Lin 2019-03-04 504 DA9063_REG_BUCK_ILIM_C, DA9063_BCORE1_ILIM_MASK),
69ca3e58d17854 Krystian Garbaciak 2013-07-29 505 /* BCORES_MERGED uses the same register fields as BCORE1 */
69ca3e58d17854 Krystian Garbaciak 2013-07-29 506 DA9063_BUCK_COMMON_FIELDS(BCORE1),
69ca3e58d17854 Krystian Garbaciak 2013-07-29 507 },
69ca3e58d17854 Krystian Garbaciak 2013-07-29 508 {
69ca3e58d17854 Krystian Garbaciak 2013-07-29 509 DA9063_BUCK(DA9063, BMEM_BIO_MERGED, 800, 20, 3340,
5b1f537e498303 Axel Lin 2019-03-04 510 da9063_bmem_bio_merged_limits,
5b1f537e498303 Axel Lin 2019-03-04 511 DA9063_REG_BUCK_ILIM_A, DA9063_BMEM_ILIM_MASK),
69ca3e58d17854 Krystian Garbaciak 2013-07-29 512 /* BMEM_BIO_MERGED uses the same register fields as BMEM */
69ca3e58d17854 Krystian Garbaciak 2013-07-29 513 DA9063_BUCK_COMMON_FIELDS(BMEM),
69ca3e58d17854 Krystian Garbaciak 2013-07-29 514 },
1c892e38ce59c8 Marek Vasut 2018-06-11 515 {
1c892e38ce59c8 Marek Vasut 2018-06-11 516 DA9063_LDO(DA9063, LDO3, 900, 20, 3440),
1c892e38ce59c8 Marek Vasut 2018-06-11 517 .oc_event = BFIELD(DA9063_REG_STATUS_D, DA9063_LDO3_LIM),
1c892e38ce59c8 Marek Vasut 2018-06-11 518 },
1c892e38ce59c8 Marek Vasut 2018-06-11 519 {
1c892e38ce59c8 Marek Vasut 2018-06-11 520 DA9063_LDO(DA9063, LDO7, 900, 50, 3600),
1c892e38ce59c8 Marek Vasut 2018-06-11 521 .oc_event = BFIELD(DA9063_REG_STATUS_D, DA9063_LDO7_LIM),
1c892e38ce59c8 Marek Vasut 2018-06-11 522 },
1c892e38ce59c8 Marek Vasut 2018-06-11 523 {
1c892e38ce59c8 Marek Vasut 2018-06-11 524 DA9063_LDO(DA9063, LDO8, 900, 50, 3600),
1c892e38ce59c8 Marek Vasut 2018-06-11 525 .oc_event = BFIELD(DA9063_REG_STATUS_D, DA9063_LDO8_LIM),
1c892e38ce59c8 Marek Vasut 2018-06-11 526 },
1c892e38ce59c8 Marek Vasut 2018-06-11 527 {
1c892e38ce59c8 Marek Vasut 2018-06-11 528 DA9063_LDO(DA9063, LDO9, 950, 50, 3600),
1c892e38ce59c8 Marek Vasut 2018-06-11 @529 .suspend = BFIELD(DA9063_REG_LDO9_CONT, DA9063_VLDO9_SEL),
1c892e38ce59c8 Marek Vasut 2018-06-11 530 },
1c892e38ce59c8 Marek Vasut 2018-06-11 531 {
1c892e38ce59c8 Marek Vasut 2018-06-11 532 DA9063_LDO(DA9063, LDO11, 900, 50, 3600),
1c892e38ce59c8 Marek Vasut 2018-06-11 533 .oc_event = BFIELD(DA9063_REG_STATUS_D, DA9063_LDO11_LIM),
1c892e38ce59c8 Marek Vasut 2018-06-11 534 },
1c892e38ce59c8 Marek Vasut 2018-06-11 535
1c892e38ce59c8 Marek Vasut 2018-06-11 536 /* The following LDOs are present only on DA9063, not on DA9063L */
69ca3e58d17854 Krystian Garbaciak 2013-07-29 537 {
69ca3e58d17854 Krystian Garbaciak 2013-07-29 538 DA9063_LDO(DA9063, LDO1, 600, 20, 1860),
69ca3e58d17854 Krystian Garbaciak 2013-07-29 539 },
69ca3e58d17854 Krystian Garbaciak 2013-07-29 540 {
69ca3e58d17854 Krystian Garbaciak 2013-07-29 541 DA9063_LDO(DA9063, LDO2, 600, 20, 1860),
69ca3e58d17854 Krystian Garbaciak 2013-07-29 542 },
69ca3e58d17854 Krystian Garbaciak 2013-07-29 543 {
69ca3e58d17854 Krystian Garbaciak 2013-07-29 544 DA9063_LDO(DA9063, LDO4, 900, 20, 3440),
69ca3e58d17854 Krystian Garbaciak 2013-07-29 545 .oc_event = BFIELD(DA9063_REG_STATUS_D, DA9063_LDO4_LIM),
69ca3e58d17854 Krystian Garbaciak 2013-07-29 546 },
69ca3e58d17854 Krystian Garbaciak 2013-07-29 547 {
69ca3e58d17854 Krystian Garbaciak 2013-07-29 548 DA9063_LDO(DA9063, LDO5, 900, 50, 3600),
69ca3e58d17854 Krystian Garbaciak 2013-07-29 549 },
69ca3e58d17854 Krystian Garbaciak 2013-07-29 550 {
69ca3e58d17854 Krystian Garbaciak 2013-07-29 551 DA9063_LDO(DA9063, LDO6, 900, 50, 3600),
69ca3e58d17854 Krystian Garbaciak 2013-07-29 552 },
1c892e38ce59c8 Marek Vasut 2018-06-11 553
69ca3e58d17854 Krystian Garbaciak 2013-07-29 554 {
69ca3e58d17854 Krystian Garbaciak 2013-07-29 555 DA9063_LDO(DA9063, LDO10, 900, 50, 3600),
69ca3e58d17854 Krystian Garbaciak 2013-07-29 556 },
69ca3e58d17854 Krystian Garbaciak 2013-07-29 557 };
69ca3e58d17854 Krystian Garbaciak 2013-07-29 558
:::::: The code at line 529 was first introduced by commit
:::::: 1c892e38ce59c82998e5444c8516ccb23a4e426f regulator: da9063: Handle less LDOs on DA9063L
:::::: TO: Marek Vasut <marek.vasut(a)gmail.com>
:::::: CC: Lee Jones <lee.jones(a)linaro.org>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 3 months
Re: [PATCH 3/4] Bluetooth: btintel: Add helper functions to parse firmware name
by kernel test robot
Hi Kiran,
Thank you for the patch! Perhaps something to improve:
[auto build test WARNING on bluetooth-next/master]
[also build test WARNING on next-20200611]
[cannot apply to bluetooth/master v5.7]
[if your patch is applied to the wrong git tree, please drop us a note to help
improve the system. BTW, we also suggest to use '--base' option to specify the
base tree in git format-patch, please see https://stackoverflow.com/a/37406982]
url: https://github.com/0day-ci/linux/commits/Kiran-K/Add-support-for-new-gene...
base: https://git.kernel.org/pub/scm/linux/kernel/git/bluetooth/bluetooth-next.git master
config: nds32-randconfig-r014-20200612 (attached as .config)
compiler: nds32le-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
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=nds32
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 >>, old ones prefixed by <<):
In file included from ./arch/nds32/include/generated/asm/bug.h:1,
from include/linux/bug.h:5,
from include/linux/thread_info.h:12,
from include/asm-generic/preempt.h:5,
from ./arch/nds32/include/generated/asm/preempt.h:1,
from include/linux/preempt.h:78,
from include/linux/spinlock.h:51,
from include/linux/seqlock.h:36,
from include/linux/time.h:6,
from include/linux/stat.h:19,
from include/linux/module.h:13,
from drivers/bluetooth/btintel.c:9:
include/linux/dma-mapping.h: In function 'dma_map_resource':
arch/nds32/include/asm/memory.h:82:32: warning: comparison of unsigned expression >= 0 is always true [-Wtype-limits]
82 | #define pfn_valid(pfn) ((pfn) >= PHYS_PFN_OFFSET && (pfn) < (PHYS_PFN_OFFSET + max_mapnr))
| ^~
include/asm-generic/bug.h:139:27: note: in definition of macro 'WARN_ON_ONCE'
139 | int __ret_warn_once = !!(condition); | ^~~~~~~~~
include/linux/dma-mapping.h:352:19: note: in expansion of macro 'pfn_valid'
352 | if (WARN_ON_ONCE(pfn_valid(PHYS_PFN(phys_addr))))
| ^~~~~~~~~
drivers/bluetooth/btintel.c: At top level:
drivers/bluetooth/btintel.c:229:6: warning: no previous prototype for 'btintel_boot_info' [-Wmissing-prototypes]
229 | void btintel_boot_info(struct hci_dev *hdev,
| ^~~~~~~~~~~~~~~~~
drivers/bluetooth/btintel.c:252:6: warning: no previous prototype for 'btintel_boot_info_tlv' [-Wmissing-prototypes]
252 | void btintel_boot_info_tlv(struct hci_dev *hdev,
| ^~~~~~~~~~~~~~~~~~~~~
<< from drivers/bluetooth/btintel.c:9:
>> drivers/bluetooth/btintel.c:385:6: warning: no previous prototype for 'btintel_get_fw_name' [-Wmissing-prototypes]
385 | bool btintel_get_fw_name(struct intel_version *ver,
| ^~~~~~~~~~~~~~~~~~~
<< from drivers/bluetooth/btintel.c:9:
>> drivers/bluetooth/btintel.c:439:6: warning: no previous prototype for 'btintel_get_fw_name_tlv' [-Wmissing-prototypes]
439 | void btintel_get_fw_name_tlv(struct intel_version_tlv *ver,
| ^~~~~~~~~~~~~~~~~~~~~~~
vim +/btintel_get_fw_name +385 drivers/bluetooth/btintel.c
384
> 385 bool btintel_get_fw_name(struct intel_version *ver,
386 struct intel_boot_params *params,
387 char *fw_name, size_t len,
388 const char *suffix)
389 {
390 /* This is for legacy HCI_Intel_Read_Version command.
391 *
392 * With this Intel bootloader only the hardware variant and device
393 * revision information are used to select the right firmware for SfP
394 * and WsP.
395 *
396 * The firmware filename is ibt-<hw_variant>-<dev_revid>.sfi.
397 *
398 * Currently the supported hardware variants are:
399 * 11 (0x0b) for iBT3.0 (LnP/SfP)
400 * 12 (0x0c) for iBT3.5 (WsP)
401 *
402 * For ThP/JfP and for future SKU's, the FW name varies based on HW
403 * variant, HW revision and FW revision, as these are dependent on CNVi
404 * and RF Combination.
405 *
406 * 17 (0x11) for iBT3.5 (JfP)
407 * 18 (0x12) for iBT3.5 (ThP)
408 *
409 * The firmware file name for these will be
410 * ibt-<hw_variant>-<hw_revision>-<fw_revision>.sfi.
411 *
412 */
413
414 switch (ver->hw_variant) {
415 case 0x0b: /* SfP */
416 case 0x0c: /* WsP */
417 snprintf(fw_name, len, "intel/ibt-%u-%u.%s",
418 le16_to_cpu(ver->hw_variant),
419 le16_to_cpu(params->dev_revid),
420 suffix);
421 break;
422 case 0x11: /* JfP */
423 case 0x12: /* ThP */
424 case 0x13: /* HrP */
425 case 0x14: /* CcP */
426 snprintf(fw_name, len, "intel/ibt-%u-%u-%u.%s",
427 le16_to_cpu(ver->hw_variant),
428 le16_to_cpu(ver->hw_revision),
429 le16_to_cpu(ver->fw_revision),
430 suffix);
431 break;
432 default:
433 return false;
434 }
435 return true;
436 }
437 EXPORT_SYMBOL_GPL(btintel_get_fw_name);
438
> 439 void btintel_get_fw_name_tlv(struct intel_version_tlv *ver,
440 char *fw_name, size_t len,
441 const char *suffix)
442 {
443 /* This is for legacy HCI_Intel_Read_Version command.
444 * The firmware file name for these will be
445 * ibt-<cnvi_top type+cnvi_top step>-<cnvr_top type+cnvr_top step>
446 *
447 * Currently the supported hardware variants are:
448 * iBT4.2 23 (0x17) for TyP
449 * iBT4.2 24 (0x18) for Solar
450 */
451 snprintf(fw_name, len, "intel/ibt-%04x-%04x.%s",
452 INTEL_CNVX_TOP_PACK_SWAB(INTEL_CNVX_TOP_TYPE(ver->cnvi_top),
453 INTEL_CNVX_TOP_STEP(ver->cnvi_top)),
454 INTEL_CNVX_TOP_PACK_SWAB(INTEL_CNVX_TOP_TYPE(ver->cnvr_top),
455 INTEL_CNVX_TOP_STEP(ver->cnvr_top)),
456 suffix);
457 }
458 EXPORT_SYMBOL_GPL(btintel_get_fw_name_tlv);
459
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 3 months
drivers/net/wireless/mediatek/mt76/mt7915/debugfs.c:365:6: warning: no previous prototype for 'mt7915_sta_add_debugfs'
by kernel test robot
Hi Ryder,
FYI, the error/warning still remains.
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: b791d1bdf9212d944d749a5c7ff6febdba241771
commit: ec9742a8f38ef69876e9f04be68d985c6bbb8f5f mt76: mt7915: add .sta_add_debugfs support
date: 4 weeks ago
config: microblaze-randconfig-r023-20200612 (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
git checkout ec9742a8f38ef69876e9f04be68d985c6bbb8f5f
# 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 >>, old ones prefixed by <<):
>> drivers/net/wireless/mediatek/mt76/mt7915/debugfs.c:365:6: warning: no previous prototype for 'mt7915_sta_add_debugfs' [-Wmissing-prototypes]
365 | void mt7915_sta_add_debugfs(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
| ^~~~~~~~~~~~~~~~~~~~~~
vim +/mt7915_sta_add_debugfs +365 drivers/net/wireless/mediatek/mt76/mt7915/debugfs.c
364
> 365 void mt7915_sta_add_debugfs(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 3 months
drivers/s390/crypto/zcrypt_api.c:986 _zcrypt_send_ep11_cprb() error: uninitialized symbol 'pref_weight'.
by Dan Carpenter
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: b29482fde649c72441d5478a4ea2c52c56d97a5e
commit: a7367997abb64b5e5a4f6fe6091629440b10da40 s390/zcrypt: ep11 structs rework, export zcrypt_send_ep11_cprb
config: s390-randconfig-m031-20200611 (attached as .config)
compiler: s390-linux-gcc (GCC) 9.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/s390/crypto/zcrypt_api.c:986 _zcrypt_send_ep11_cprb() error: uninitialized symbol 'pref_weight'.
drivers/s390/crypto/zcrypt_api.c:1008 _zcrypt_send_ep11_cprb() error: uninitialized symbol 'weight'.
Old smatch warnings:
drivers/s390/crypto/zcrypt_api.c:676 zcrypt_rsa_modexpo() error: uninitialized symbol 'pref_weight'.
drivers/s390/crypto/zcrypt_api.c:694 zcrypt_rsa_modexpo() error: uninitialized symbol 'weight'.
drivers/s390/crypto/zcrypt_api.c:760 zcrypt_rsa_crt() error: uninitialized symbol 'pref_weight'.
drivers/s390/crypto/zcrypt_api.c:778 zcrypt_rsa_crt() error: uninitialized symbol 'weight'.
drivers/s390/crypto/zcrypt_api.c:824 _zcrypt_send_cprb() warn: always true condition '(tdom >= 0) => (0-u16max >= 0)'
drivers/s390/crypto/zcrypt_api.c:846 _zcrypt_send_cprb() error: uninitialized symbol 'pref_weight'.
drivers/s390/crypto/zcrypt_api.c:867 _zcrypt_send_cprb() error: uninitialized symbol 'weight'.
drivers/s390/crypto/zcrypt_api.c:1065 zcrypt_rng() error: uninitialized symbol 'pref_weight'.
drivers/s390/crypto/zcrypt_api.c:1079 zcrypt_rng() error: uninitialized symbol 'weight'.
# 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 remote update linus
git checkout a7367997abb64b5e5a4f6fe6091629440b10da40
vim +/pref_weight +986 drivers/s390/crypto/zcrypt_api.c
a7367997abb64b Harald Freudenberger 2019-08-30 926 static long _zcrypt_send_ep11_cprb(struct ap_perms *perms,
00fab2350e6b91 Harald Freudenberger 2018-09-17 927 struct ep11_urb *xcrb)
91f3e3eaba4413 Ingo Tuchscherer 2013-11-20 928 {
e28d2af43614eb Ingo Tuchscherer 2016-08-25 929 struct zcrypt_card *zc, *pref_zc;
e28d2af43614eb Ingo Tuchscherer 2016-08-25 930 struct zcrypt_queue *zq, *pref_zq;
e28d2af43614eb Ingo Tuchscherer 2016-08-25 931 struct ep11_target_dev *targets;
e28d2af43614eb Ingo Tuchscherer 2016-08-25 932 unsigned short target_num;
e28d2af43614eb Ingo Tuchscherer 2016-08-25 933 unsigned int weight, pref_weight;
e28d2af43614eb Ingo Tuchscherer 2016-08-25 934 unsigned int func_code;
34a15167739412 Ingo Tuchscherer 2016-08-25 935 struct ap_message ap_msg;
13b251bdc8b97c Harald Freudenberger 2016-11-25 936 int qid = 0, rc = -ENODEV;
01396a374c3d31 Harald Freudenberger 2019-02-22 937 struct module *mod;
13b251bdc8b97c Harald Freudenberger 2016-11-25 938
13b251bdc8b97c Harald Freudenberger 2016-11-25 939 trace_s390_zcrypt_req(xcrb, TP_ZSENDEP11CPRB);
91f3e3eaba4413 Ingo Tuchscherer 2013-11-20 940
89a0c0ec0d2e3c Harald Freudenberger 2018-05-28 941 ap_init_message(&ap_msg);
89a0c0ec0d2e3c Harald Freudenberger 2018-05-28 942
e28d2af43614eb Ingo Tuchscherer 2016-08-25 943 target_num = (unsigned short) xcrb->targets_num;
91f3e3eaba4413 Ingo Tuchscherer 2013-11-20 944
91f3e3eaba4413 Ingo Tuchscherer 2013-11-20 945 /* empty list indicates autoselect (all available targets) */
e28d2af43614eb Ingo Tuchscherer 2016-08-25 946 targets = NULL;
e28d2af43614eb Ingo Tuchscherer 2016-08-25 947 if (target_num != 0) {
e28d2af43614eb Ingo Tuchscherer 2016-08-25 948 struct ep11_target_dev __user *uptr;
e28d2af43614eb Ingo Tuchscherer 2016-08-25 949
e28d2af43614eb Ingo Tuchscherer 2016-08-25 950 targets = kcalloc(target_num, sizeof(*targets), GFP_KERNEL);
13b251bdc8b97c Harald Freudenberger 2016-11-25 951 if (!targets) {
913140e221567b Arnd Bergmann 2019-04-08 952 func_code = 0;
13b251bdc8b97c Harald Freudenberger 2016-11-25 953 rc = -ENOMEM;
13b251bdc8b97c Harald Freudenberger 2016-11-25 954 goto out;
13b251bdc8b97c Harald Freudenberger 2016-11-25 955 }
91f3e3eaba4413 Ingo Tuchscherer 2013-11-20 956
e28d2af43614eb Ingo Tuchscherer 2016-08-25 957 uptr = (struct ep11_target_dev __force __user *) xcrb->targets;
e28d2af43614eb Ingo Tuchscherer 2016-08-25 958 if (copy_from_user(targets, uptr,
13b251bdc8b97c Harald Freudenberger 2016-11-25 959 target_num * sizeof(*targets))) {
913140e221567b Arnd Bergmann 2019-04-08 960 func_code = 0;
13b251bdc8b97c Harald Freudenberger 2016-11-25 961 rc = -EFAULT;
89a0c0ec0d2e3c Harald Freudenberger 2018-05-28 962 goto out_free;
13b251bdc8b97c Harald Freudenberger 2016-11-25 963 }
91f3e3eaba4413 Ingo Tuchscherer 2013-11-20 964 }
91f3e3eaba4413 Ingo Tuchscherer 2013-11-20 965
34a15167739412 Ingo Tuchscherer 2016-08-25 966 rc = get_ep11cprb_fc(xcrb, &ap_msg, &func_code);
34a15167739412 Ingo Tuchscherer 2016-08-25 967 if (rc)
e28d2af43614eb Ingo Tuchscherer 2016-08-25 968 goto out_free;
34a15167739412 Ingo Tuchscherer 2016-08-25 969
e28d2af43614eb Ingo Tuchscherer 2016-08-25 970 pref_zc = NULL;
e28d2af43614eb Ingo Tuchscherer 2016-08-25 971 pref_zq = NULL;
e28d2af43614eb Ingo Tuchscherer 2016-08-25 972 spin_lock(&zcrypt_list_lock);
e28d2af43614eb Ingo Tuchscherer 2016-08-25 973 for_each_zcrypt_card(zc) {
e28d2af43614eb Ingo Tuchscherer 2016-08-25 974 /* Check for online EP11 cards */
e28d2af43614eb Ingo Tuchscherer 2016-08-25 975 if (!zc->online || !(zc->card->functions & 0x04000000))
91f3e3eaba4413 Ingo Tuchscherer 2013-11-20 976 continue;
e28d2af43614eb Ingo Tuchscherer 2016-08-25 977 /* Check for user selected EP11 card */
e28d2af43614eb Ingo Tuchscherer 2016-08-25 978 if (targets &&
e28d2af43614eb Ingo Tuchscherer 2016-08-25 979 !is_desired_ep11_card(zc->card->id, target_num, targets))
91f3e3eaba4413 Ingo Tuchscherer 2013-11-20 980 continue;
00fab2350e6b91 Harald Freudenberger 2018-09-17 981 /* check if device node has admission for this card */
00fab2350e6b91 Harald Freudenberger 2018-09-17 982 if (!zcrypt_check_card(perms, zc->card->id))
00fab2350e6b91 Harald Freudenberger 2018-09-17 983 continue;
e28d2af43614eb Ingo Tuchscherer 2016-08-25 984 /* get weight index of the card device */
e28d2af43614eb Ingo Tuchscherer 2016-08-25 985 weight = speed_idx_ep11(func_code) * zc->speed_rating[SECKEY];
e47de21dd35bad Ingo Tuchscherer 2016-10-14 @986 if (zcrypt_card_compare(zc, pref_zc, weight, pref_weight))
^^^^^^^^^^^
Not initialized on first iteration through the loop.
34a15167739412 Ingo Tuchscherer 2016-08-25 987 continue;
e28d2af43614eb Ingo Tuchscherer 2016-08-25 988 for_each_zcrypt_queue(zq, zc) {
e28d2af43614eb Ingo Tuchscherer 2016-08-25 989 /* check if device is online and eligible */
e28d2af43614eb Ingo Tuchscherer 2016-08-25 990 if (!zq->online ||
148784246ef2d8 Harald Freudenberger 2016-10-27 991 !zq->ops->send_ep11_cprb ||
e28d2af43614eb Ingo Tuchscherer 2016-08-25 992 (targets &&
e28d2af43614eb Ingo Tuchscherer 2016-08-25 993 !is_desired_ep11_queue(zq->queue->qid,
e28d2af43614eb Ingo Tuchscherer 2016-08-25 994 target_num, targets)))
34a15167739412 Ingo Tuchscherer 2016-08-25 995 continue;
00fab2350e6b91 Harald Freudenberger 2018-09-17 996 /* check if device node has admission for this queue */
00fab2350e6b91 Harald Freudenberger 2018-09-17 997 if (!zcrypt_check_queue(perms,
00fab2350e6b91 Harald Freudenberger 2018-09-17 998 AP_QID_QUEUE(zq->queue->qid)))
00fab2350e6b91 Harald Freudenberger 2018-09-17 999 continue;
e47de21dd35bad Ingo Tuchscherer 2016-10-14 1000 if (zcrypt_queue_compare(zq, pref_zq,
e47de21dd35bad Ingo Tuchscherer 2016-10-14 1001 weight, pref_weight))
e28d2af43614eb Ingo Tuchscherer 2016-08-25 1002 continue;
e28d2af43614eb Ingo Tuchscherer 2016-08-25 1003 pref_zc = zc;
e28d2af43614eb Ingo Tuchscherer 2016-08-25 1004 pref_zq = zq;
e28d2af43614eb Ingo Tuchscherer 2016-08-25 1005 pref_weight = weight;
34a15167739412 Ingo Tuchscherer 2016-08-25 1006 }
34a15167739412 Ingo Tuchscherer 2016-08-25 1007 }
01396a374c3d31 Harald Freudenberger 2019-02-22 @1008 pref_zq = zcrypt_pick_queue(pref_zc, pref_zq, &mod, weight);
^^^^^^
From a static analysis perspective it's obvious why it generates a
warning for this, but it's probably wrong.
e28d2af43614eb Ingo Tuchscherer 2016-08-25 1009 spin_unlock(&zcrypt_list_lock);
e28d2af43614eb Ingo Tuchscherer 2016-08-25 1010
e28d2af43614eb Ingo Tuchscherer 2016-08-25 1011 if (!pref_zq) {
e28d2af43614eb Ingo Tuchscherer 2016-08-25 1012 rc = -ENODEV;
e28d2af43614eb Ingo Tuchscherer 2016-08-25 1013 goto out_free;
34a15167739412 Ingo Tuchscherer 2016-08-25 1014 }
34a15167739412 Ingo Tuchscherer 2016-08-25 1015
13b251bdc8b97c Harald Freudenberger 2016-11-25 1016 qid = pref_zq->queue->qid;
e28d2af43614eb Ingo Tuchscherer 2016-08-25 1017 rc = pref_zq->ops->send_ep11_cprb(pref_zq, xcrb, &ap_msg);
e28d2af43614eb Ingo Tuchscherer 2016-08-25 1018
e28d2af43614eb Ingo Tuchscherer 2016-08-25 1019 spin_lock(&zcrypt_list_lock);
01396a374c3d31 Harald Freudenberger 2019-02-22 1020 zcrypt_drop_queue(pref_zc, pref_zq, mod, weight);
e28d2af43614eb Ingo Tuchscherer 2016-08-25 1021 spin_unlock(&zcrypt_list_lock);
e28d2af43614eb Ingo Tuchscherer 2016-08-25 1022
e28d2af43614eb Ingo Tuchscherer 2016-08-25 1023 out_free:
e28d2af43614eb Ingo Tuchscherer 2016-08-25 1024 kfree(targets);
13b251bdc8b97c Harald Freudenberger 2016-11-25 1025 out:
89a0c0ec0d2e3c Harald Freudenberger 2018-05-28 1026 ap_release_message(&ap_msg);
13b251bdc8b97c Harald Freudenberger 2016-11-25 1027 trace_s390_zcrypt_rep(xcrb, func_code, rc,
13b251bdc8b97c Harald Freudenberger 2016-11-25 1028 AP_QID_CARD(qid), AP_QID_QUEUE(qid));
91f3e3eaba4413 Ingo Tuchscherer 2013-11-20 1029 return rc;
91f3e3eaba4413 Ingo Tuchscherer 2013-11-20 1030 }
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 3 months
drivers/infiniband/sw/siw/siw_qp_rx.c:141:3: note: in expansion of macro 'if'
by kernel test robot
Hi Bernard,
FYI, the error/warning still remains.
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: b791d1bdf9212d944d749a5c7ff6febdba241771
commit: 2c8ccb37b08fe364f02a9914daca474d43151453 RDMA/siw: Change CQ flags from 64->32 bits
date: 10 months ago
config: i386-randconfig-r011-20200612 (attached as .config)
compiler: gcc-4.9 (Ubuntu 4.9.3-13ubuntu2) 4.9.3
reproduce (this is a W=1 build):
git checkout 2c8ccb37b08fe364f02a9914daca474d43151453
# save the attached .config to linux build tree
make W=1 ARCH=i386
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 >>, old ones prefixed by <<):
In file included from include/linux/kernel.h:15:0,
from include/linux/list.h:9,
from include/linux/random.h:10,
from include/linux/net.h:18,
from drivers/infiniband/sw/siw/siw_qp_rx.c:8:
drivers/infiniband/sw/siw/siw_qp_rx.c: In function 'siw_rx_umem':
drivers/infiniband/sw/siw/siw_qp_rx.c:43:5: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
(void *)dest_addr, (void *)umem->fp_addr);
^
include/linux/printk.h:306:37: note: in definition of macro 'pr_warning'
printk(KERN_WARNING pr_fmt(fmt), ##__VA_ARGS__)
^
drivers/infiniband/sw/siw/siw_qp_rx.c:41:4: note: in expansion of macro 'pr_warn'
pr_warn("siw: %s: [QP %u]: bogus addr: %p, %pn",
^
drivers/infiniband/sw/siw/siw_qp_rx.c:43:24: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
(void *)dest_addr, (void *)umem->fp_addr);
^
include/linux/printk.h:306:37: note: in definition of macro 'pr_warning'
printk(KERN_WARNING pr_fmt(fmt), ##__VA_ARGS__)
^
drivers/infiniband/sw/siw/siw_qp_rx.c:41:4: note: in expansion of macro 'pr_warn'
pr_warn("siw: %s: [QP %u]: bogus addr: %p, %pn",
^
In file included from include/linux/export.h:45:0,
from include/linux/linkage.h:7,
from include/linux/kernel.h:8,
from include/linux/list.h:9,
from include/linux/random.h:10,
from include/linux/net.h:18,
from drivers/infiniband/sw/siw/siw_qp_rx.c:8:
drivers/infiniband/sw/siw/siw_qp_rx.c: In function 'siw_rx_pbl':
drivers/infiniband/sw/siw/siw_qp_rx.c:141:23: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
if (siw_rx_kva(srx, (void *)buf_addr, bytes) == bytes) {
^
include/linux/compiler.h:58:52: note: in definition of macro '__trace_if_var'
#define __trace_if_var(cond) (__builtin_constant_p(cond) ? (cond) : __trace_if_value(cond))
^
>> drivers/infiniband/sw/siw/siw_qp_rx.c:141:3: note: in expansion of macro 'if'
if (siw_rx_kva(srx, (void *)buf_addr, bytes) == bytes) {
^
drivers/infiniband/sw/siw/siw_qp_rx.c:141:23: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
if (siw_rx_kva(srx, (void *)buf_addr, bytes) == bytes) {
^
include/linux/compiler.h:58:61: note: in definition of macro '__trace_if_var'
#define __trace_if_var(cond) (__builtin_constant_p(cond) ? (cond) : __trace_if_value(cond))
^
>> drivers/infiniband/sw/siw/siw_qp_rx.c:141:3: note: in expansion of macro 'if'
if (siw_rx_kva(srx, (void *)buf_addr, bytes) == bytes) {
^
drivers/infiniband/sw/siw/siw_qp_rx.c:141:23: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
if (siw_rx_kva(srx, (void *)buf_addr, bytes) == bytes) {
^
include/linux/compiler.h:69:3: note: in definition of macro '__trace_if_value'
(cond) ? ^
include/linux/compiler.h:56:28: note: in expansion of macro '__trace_if_var'
#define if(cond, ...) if ( __trace_if_var( !!(cond , ## __VA_ARGS__) ) )
^
>> drivers/infiniband/sw/siw/siw_qp_rx.c:141:3: note: in expansion of macro 'if'
if (siw_rx_kva(srx, (void *)buf_addr, bytes) == bytes) {
^
drivers/infiniband/sw/siw/siw_qp_rx.c: In function 'siw_proc_send':
drivers/infiniband/sw/siw/siw_qp_rx.c:488:6: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
(void *)(sge->laddr + frx->sge_off),
^
drivers/infiniband/sw/siw/siw_qp_rx.c: In function 'siw_proc_write':
drivers/infiniband/sw/siw/siw_qp_rx.c:601:5: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
(void *)(srx->ddp_to + srx->fpdu_part_rcvd),
^
drivers/infiniband/sw/siw/siw_qp_rx.c: In function 'siw_proc_rresp':
drivers/infiniband/sw/siw/siw_qp_rx.c:844:24: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
rv = siw_rx_kva(srx, (void *)(sge->laddr + wqe->processed),
^
vim +/if +141 drivers/infiniband/sw/siw/siw_qp_rx.c
8b6a361b8c482f2 Bernard Metzler 2019-06-20 5
8b6a361b8c482f2 Bernard Metzler 2019-06-20 6 #include <linux/errno.h>
8b6a361b8c482f2 Bernard Metzler 2019-06-20 7 #include <linux/types.h>
8b6a361b8c482f2 Bernard Metzler 2019-06-20 @8 #include <linux/net.h>
8b6a361b8c482f2 Bernard Metzler 2019-06-20 9 #include <linux/scatterlist.h>
8b6a361b8c482f2 Bernard Metzler 2019-06-20 10 #include <linux/highmem.h>
8b6a361b8c482f2 Bernard Metzler 2019-06-20 11
8b6a361b8c482f2 Bernard Metzler 2019-06-20 12 #include <rdma/iw_cm.h>
8b6a361b8c482f2 Bernard Metzler 2019-06-20 13 #include <rdma/ib_verbs.h>
8b6a361b8c482f2 Bernard Metzler 2019-06-20 14
8b6a361b8c482f2 Bernard Metzler 2019-06-20 15 #include "siw.h"
8b6a361b8c482f2 Bernard Metzler 2019-06-20 16 #include "siw_verbs.h"
8b6a361b8c482f2 Bernard Metzler 2019-06-20 17 #include "siw_mem.h"
8b6a361b8c482f2 Bernard Metzler 2019-06-20 18
8b6a361b8c482f2 Bernard Metzler 2019-06-20 19 /*
8b6a361b8c482f2 Bernard Metzler 2019-06-20 20 * siw_rx_umem()
8b6a361b8c482f2 Bernard Metzler 2019-06-20 21 *
8b6a361b8c482f2 Bernard Metzler 2019-06-20 22 * Receive data of @len into target referenced by @dest_addr.
8b6a361b8c482f2 Bernard Metzler 2019-06-20 23 *
8b6a361b8c482f2 Bernard Metzler 2019-06-20 24 * @srx: Receive Context
8b6a361b8c482f2 Bernard Metzler 2019-06-20 25 * @umem: siw representation of target memory
8b6a361b8c482f2 Bernard Metzler 2019-06-20 26 * @dest_addr: user virtual address
8b6a361b8c482f2 Bernard Metzler 2019-06-20 27 * @len: number of bytes to place
8b6a361b8c482f2 Bernard Metzler 2019-06-20 28 */
8b6a361b8c482f2 Bernard Metzler 2019-06-20 29 static int siw_rx_umem(struct siw_rx_stream *srx, struct siw_umem *umem,
8b6a361b8c482f2 Bernard Metzler 2019-06-20 30 u64 dest_addr, int len)
8b6a361b8c482f2 Bernard Metzler 2019-06-20 31 {
8b6a361b8c482f2 Bernard Metzler 2019-06-20 32 int copied = 0;
8b6a361b8c482f2 Bernard Metzler 2019-06-20 33
8b6a361b8c482f2 Bernard Metzler 2019-06-20 34 while (len) {
8b6a361b8c482f2 Bernard Metzler 2019-06-20 35 struct page *p;
8b6a361b8c482f2 Bernard Metzler 2019-06-20 36 int pg_off, bytes, rv;
8b6a361b8c482f2 Bernard Metzler 2019-06-20 37 void *dest;
8b6a361b8c482f2 Bernard Metzler 2019-06-20 38
8b6a361b8c482f2 Bernard Metzler 2019-06-20 39 p = siw_get_upage(umem, dest_addr);
8b6a361b8c482f2 Bernard Metzler 2019-06-20 40 if (unlikely(!p)) {
8b6a361b8c482f2 Bernard Metzler 2019-06-20 41 pr_warn("siw: %s: [QP %u]: bogus addr: %p, %p\n",
8b6a361b8c482f2 Bernard Metzler 2019-06-20 42 __func__, qp_id(rx_qp(srx)),
8b6a361b8c482f2 Bernard Metzler 2019-06-20 43 (void *)dest_addr, (void *)umem->fp_addr);
8b6a361b8c482f2 Bernard Metzler 2019-06-20 44 /* siw internal error */
8b6a361b8c482f2 Bernard Metzler 2019-06-20 45 srx->skb_copied += copied;
8b6a361b8c482f2 Bernard Metzler 2019-06-20 46 srx->skb_new -= copied;
8b6a361b8c482f2 Bernard Metzler 2019-06-20 47
8b6a361b8c482f2 Bernard Metzler 2019-06-20 48 return -EFAULT;
8b6a361b8c482f2 Bernard Metzler 2019-06-20 49 }
8b6a361b8c482f2 Bernard Metzler 2019-06-20 50 pg_off = dest_addr & ~PAGE_MASK;
8b6a361b8c482f2 Bernard Metzler 2019-06-20 51 bytes = min(len, (int)PAGE_SIZE - pg_off);
8b6a361b8c482f2 Bernard Metzler 2019-06-20 52
8b6a361b8c482f2 Bernard Metzler 2019-06-20 53 siw_dbg_qp(rx_qp(srx), "page %p, bytes=%u\n", p, bytes);
8b6a361b8c482f2 Bernard Metzler 2019-06-20 54
8b6a361b8c482f2 Bernard Metzler 2019-06-20 55 dest = kmap_atomic(p);
8b6a361b8c482f2 Bernard Metzler 2019-06-20 56 rv = skb_copy_bits(srx->skb, srx->skb_offset, dest + pg_off,
8b6a361b8c482f2 Bernard Metzler 2019-06-20 57 bytes);
8b6a361b8c482f2 Bernard Metzler 2019-06-20 58
8b6a361b8c482f2 Bernard Metzler 2019-06-20 59 if (unlikely(rv)) {
8b6a361b8c482f2 Bernard Metzler 2019-06-20 60 kunmap_atomic(dest);
8b6a361b8c482f2 Bernard Metzler 2019-06-20 61 srx->skb_copied += copied;
8b6a361b8c482f2 Bernard Metzler 2019-06-20 62 srx->skb_new -= copied;
8b6a361b8c482f2 Bernard Metzler 2019-06-20 63
8b6a361b8c482f2 Bernard Metzler 2019-06-20 64 pr_warn("siw: [QP %u]: %s, len %d, page %p, rv %d\n",
8b6a361b8c482f2 Bernard Metzler 2019-06-20 65 qp_id(rx_qp(srx)), __func__, len, p, rv);
8b6a361b8c482f2 Bernard Metzler 2019-06-20 66
8b6a361b8c482f2 Bernard Metzler 2019-06-20 67 return -EFAULT;
8b6a361b8c482f2 Bernard Metzler 2019-06-20 68 }
8b6a361b8c482f2 Bernard Metzler 2019-06-20 69 if (srx->mpa_crc_hd) {
8b6a361b8c482f2 Bernard Metzler 2019-06-20 70 if (rx_qp(srx)->kernel_verbs) {
8b6a361b8c482f2 Bernard Metzler 2019-06-20 71 crypto_shash_update(srx->mpa_crc_hd,
8b6a361b8c482f2 Bernard Metzler 2019-06-20 72 (u8 *)(dest + pg_off), bytes);
8b6a361b8c482f2 Bernard Metzler 2019-06-20 73 kunmap_atomic(dest);
8b6a361b8c482f2 Bernard Metzler 2019-06-20 74 } else {
8b6a361b8c482f2 Bernard Metzler 2019-06-20 75 kunmap_atomic(dest);
8b6a361b8c482f2 Bernard Metzler 2019-06-20 76 /*
8b6a361b8c482f2 Bernard Metzler 2019-06-20 77 * Do CRC on original, not target buffer.
8b6a361b8c482f2 Bernard Metzler 2019-06-20 78 * Some user land applications may
8b6a361b8c482f2 Bernard Metzler 2019-06-20 79 * concurrently write the target buffer,
8b6a361b8c482f2 Bernard Metzler 2019-06-20 80 * which would yield a broken CRC.
8b6a361b8c482f2 Bernard Metzler 2019-06-20 81 * Walking the skb twice is very ineffcient.
8b6a361b8c482f2 Bernard Metzler 2019-06-20 82 * Folding the CRC into skb_copy_bits()
8b6a361b8c482f2 Bernard Metzler 2019-06-20 83 * would be much better, but is currently
8b6a361b8c482f2 Bernard Metzler 2019-06-20 84 * not supported.
8b6a361b8c482f2 Bernard Metzler 2019-06-20 85 */
8b6a361b8c482f2 Bernard Metzler 2019-06-20 86 siw_crc_skb(srx, bytes);
8b6a361b8c482f2 Bernard Metzler 2019-06-20 87 }
8b6a361b8c482f2 Bernard Metzler 2019-06-20 88 } else {
8b6a361b8c482f2 Bernard Metzler 2019-06-20 89 kunmap_atomic(dest);
8b6a361b8c482f2 Bernard Metzler 2019-06-20 90 }
8b6a361b8c482f2 Bernard Metzler 2019-06-20 91 srx->skb_offset += bytes;
8b6a361b8c482f2 Bernard Metzler 2019-06-20 92 copied += bytes;
8b6a361b8c482f2 Bernard Metzler 2019-06-20 93 len -= bytes;
8b6a361b8c482f2 Bernard Metzler 2019-06-20 94 dest_addr += bytes;
8b6a361b8c482f2 Bernard Metzler 2019-06-20 95 pg_off = 0;
8b6a361b8c482f2 Bernard Metzler 2019-06-20 96 }
8b6a361b8c482f2 Bernard Metzler 2019-06-20 97 srx->skb_copied += copied;
8b6a361b8c482f2 Bernard Metzler 2019-06-20 98 srx->skb_new -= copied;
8b6a361b8c482f2 Bernard Metzler 2019-06-20 99
8b6a361b8c482f2 Bernard Metzler 2019-06-20 100 return copied;
8b6a361b8c482f2 Bernard Metzler 2019-06-20 101 }
8b6a361b8c482f2 Bernard Metzler 2019-06-20 102
8b6a361b8c482f2 Bernard Metzler 2019-06-20 103 static int siw_rx_kva(struct siw_rx_stream *srx, void *kva, int len)
8b6a361b8c482f2 Bernard Metzler 2019-06-20 104 {
8b6a361b8c482f2 Bernard Metzler 2019-06-20 105 int rv;
8b6a361b8c482f2 Bernard Metzler 2019-06-20 106
8b6a361b8c482f2 Bernard Metzler 2019-06-20 107 siw_dbg_qp(rx_qp(srx), "kva: 0x%p, len: %u\n", kva, len);
8b6a361b8c482f2 Bernard Metzler 2019-06-20 108
8b6a361b8c482f2 Bernard Metzler 2019-06-20 109 rv = skb_copy_bits(srx->skb, srx->skb_offset, kva, len);
8b6a361b8c482f2 Bernard Metzler 2019-06-20 110 if (unlikely(rv)) {
8b6a361b8c482f2 Bernard Metzler 2019-06-20 111 pr_warn("siw: [QP %u]: %s, len %d, kva 0x%p, rv %d\n",
8b6a361b8c482f2 Bernard Metzler 2019-06-20 112 qp_id(rx_qp(srx)), __func__, len, kva, rv);
8b6a361b8c482f2 Bernard Metzler 2019-06-20 113
8b6a361b8c482f2 Bernard Metzler 2019-06-20 114 return rv;
8b6a361b8c482f2 Bernard Metzler 2019-06-20 115 }
8b6a361b8c482f2 Bernard Metzler 2019-06-20 116 if (srx->mpa_crc_hd)
8b6a361b8c482f2 Bernard Metzler 2019-06-20 117 crypto_shash_update(srx->mpa_crc_hd, (u8 *)kva, len);
8b6a361b8c482f2 Bernard Metzler 2019-06-20 118
8b6a361b8c482f2 Bernard Metzler 2019-06-20 119 srx->skb_offset += len;
8b6a361b8c482f2 Bernard Metzler 2019-06-20 120 srx->skb_copied += len;
8b6a361b8c482f2 Bernard Metzler 2019-06-20 121 srx->skb_new -= len;
8b6a361b8c482f2 Bernard Metzler 2019-06-20 122
8b6a361b8c482f2 Bernard Metzler 2019-06-20 123 return len;
8b6a361b8c482f2 Bernard Metzler 2019-06-20 124 }
8b6a361b8c482f2 Bernard Metzler 2019-06-20 125
8b6a361b8c482f2 Bernard Metzler 2019-06-20 126 static int siw_rx_pbl(struct siw_rx_stream *srx, int *pbl_idx,
8b6a361b8c482f2 Bernard Metzler 2019-06-20 127 struct siw_mem *mem, u64 addr, int len)
8b6a361b8c482f2 Bernard Metzler 2019-06-20 128 {
8b6a361b8c482f2 Bernard Metzler 2019-06-20 129 struct siw_pbl *pbl = mem->pbl;
8b6a361b8c482f2 Bernard Metzler 2019-06-20 130 u64 offset = addr - mem->va;
8b6a361b8c482f2 Bernard Metzler 2019-06-20 131 int copied = 0;
8b6a361b8c482f2 Bernard Metzler 2019-06-20 132
8b6a361b8c482f2 Bernard Metzler 2019-06-20 133 while (len) {
8b6a361b8c482f2 Bernard Metzler 2019-06-20 134 int bytes;
8b6a361b8c482f2 Bernard Metzler 2019-06-20 135 u64 buf_addr =
8b6a361b8c482f2 Bernard Metzler 2019-06-20 136 siw_pbl_get_buffer(pbl, offset, &bytes, pbl_idx);
8b6a361b8c482f2 Bernard Metzler 2019-06-20 137 if (!buf_addr)
8b6a361b8c482f2 Bernard Metzler 2019-06-20 138 break;
8b6a361b8c482f2 Bernard Metzler 2019-06-20 139
8b6a361b8c482f2 Bernard Metzler 2019-06-20 140 bytes = min(bytes, len);
8b6a361b8c482f2 Bernard Metzler 2019-06-20 @141 if (siw_rx_kva(srx, (void *)buf_addr, bytes) == bytes) {
8b6a361b8c482f2 Bernard Metzler 2019-06-20 142 copied += bytes;
8b6a361b8c482f2 Bernard Metzler 2019-06-20 143 offset += bytes;
8b6a361b8c482f2 Bernard Metzler 2019-06-20 144 len -= bytes;
8b6a361b8c482f2 Bernard Metzler 2019-06-20 145 } else {
8b6a361b8c482f2 Bernard Metzler 2019-06-20 146 break;
8b6a361b8c482f2 Bernard Metzler 2019-06-20 147 }
8b6a361b8c482f2 Bernard Metzler 2019-06-20 148 }
8b6a361b8c482f2 Bernard Metzler 2019-06-20 149 return copied;
8b6a361b8c482f2 Bernard Metzler 2019-06-20 150 }
8b6a361b8c482f2 Bernard Metzler 2019-06-20 151
:::::: The code at line 141 was first introduced by commit
:::::: 8b6a361b8c482f22ac99c3273285ff16b23fba91 rdma/siw: receive path
:::::: TO: Bernard Metzler <bmt(a)zurich.ibm.com>
:::::: CC: Jason Gunthorpe <jgg(a)mellanox.com>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 3 months
Re: [PATCH v8 2/8] firmware: add offset to request_firmware_into_buf
by kernel test robot
Hi Scott,
I love your patch! Yet something to improve:
[auto build test ERROR on driver-core/driver-core-testing]
[also build test ERROR on linus/master next-20200611]
[cannot apply to char-misc/char-misc-testing kselftest/next integrity/next-integrity v5.7]
[if your patch is applied to the wrong git tree, please drop us a note to help
improve the system. BTW, we also suggest to use '--base' option to specify the
base tree in git format-patch, please see https://stackoverflow.com/a/37406982]
url: https://github.com/0day-ci/linux/commits/Scott-Branden/firmware-add-reque...
base: https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core.git abfbb29297c27e3f101f348dc9e467b0fe70f919
config: nios2-randconfig-r015-20200612 (attached as .config)
compiler: nios2-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
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=nios2
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 >>, old ones prefixed by <<):
In file included from drivers/staging/gs_fpgaboot/gs_fpgaboot.c:15:
>> include/linux/firmware.h:112:31: error: unknown type name 'offset'; did you mean 'off_t'?
112 | void *buf, size_t size, offset)
| ^~~~~~
| off_t
vim +112 include/linux/firmware.h
107
108 static inline int request_partial_firmware_into_buf
109 (const struct firmware **firmware_p,
110 const char *name,
111 struct device *device,
> 112 void *buf, size_t size, offset)
113 {
114 return -EINVAL;
115 }
116
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 3 months
arch/arm/boot/compressed/fdt_rw.c:439:38: sparse: sparse: dubious: x | !y
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: b791d1bdf9212d944d749a5c7ff6febdba241771
commit: d047cd8a2760f58d17b8ade21d2f15b818575abc scripts/dtc: Update to upstream version v1.6.0-2-g87a656ae5ff9
date: 3 months ago
config: arm-randconfig-s032-20200612 (attached as .config)
compiler: arm-linux-gnueabi-gcc (GCC) 9.3.0
reproduce:
# apt-get install sparse
# sparse version: v0.6.1-250-g42323db3-dirty
git checkout d047cd8a2760f58d17b8ade21d2f15b818575abc
# save the attached .config to linux build tree
make W=1 C=1 ARCH=arm CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__'
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 >>)
>> arch/arm/boot/compressed/fdt_rw.c:439:38: sparse: sparse: dubious: x | !y
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 3 months
Re: [PATCH 2/4] Bluetooth: btintel: Add helper functions to dump boot/firmware info
by kernel test robot
Hi Kiran,
Thank you for the patch! Perhaps something to improve:
[auto build test WARNING on bluetooth-next/master]
[also build test WARNING on bluetooth/master v5.7 next-20200611]
[if your patch is applied to the wrong git tree, please drop us a note to help
improve the system. BTW, we also suggest to use '--base' option to specify the
base tree in git format-patch, please see https://stackoverflow.com/a/37406982]
url: https://github.com/0day-ci/linux/commits/Kiran-K/Add-support-for-new-gene...
base: https://git.kernel.org/pub/scm/linux/kernel/git/bluetooth/bluetooth-next.git master
config: nds32-randconfig-r014-20200612 (attached as .config)
compiler: nds32le-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
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=nds32
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 >>, old ones prefixed by <<):
In file included from ./arch/nds32/include/generated/asm/bug.h:1,
from include/linux/bug.h:5,
from include/linux/thread_info.h:12,
from include/asm-generic/preempt.h:5,
from ./arch/nds32/include/generated/asm/preempt.h:1,
from include/linux/preempt.h:78,
from include/linux/spinlock.h:51,
from include/linux/seqlock.h:36,
from include/linux/time.h:6,
from include/linux/stat.h:19,
from include/linux/module.h:13,
from drivers/bluetooth/btintel.c:9:
include/linux/dma-mapping.h: In function 'dma_map_resource':
arch/nds32/include/asm/memory.h:82:32: warning: comparison of unsigned expression >= 0 is always true [-Wtype-limits]
82 | #define pfn_valid(pfn) ((pfn) >= PHYS_PFN_OFFSET && (pfn) < (PHYS_PFN_OFFSET + max_mapnr))
| ^~
include/asm-generic/bug.h:139:27: note: in definition of macro 'WARN_ON_ONCE'
139 | int __ret_warn_once = !!(condition); | ^~~~~~~~~
include/linux/dma-mapping.h:352:19: note: in expansion of macro 'pfn_valid'
352 | if (WARN_ON_ONCE(pfn_valid(PHYS_PFN(phys_addr))))
| ^~~~~~~~~
drivers/bluetooth/btintel.c: At top level:
>> drivers/bluetooth/btintel.c:229:6: warning: no previous prototype for 'btintel_boot_info' [-Wmissing-prototypes]
229 | void btintel_boot_info(struct hci_dev *hdev,
| ^~~~~~~~~~~~~~~~~
>> drivers/bluetooth/btintel.c:252:6: warning: no previous prototype for 'btintel_boot_info_tlv' [-Wmissing-prototypes]
252 | void btintel_boot_info_tlv(struct hci_dev *hdev,
| ^~~~~~~~~~~~~~~~~~~~~
vim +/btintel_boot_info +229 drivers/bluetooth/btintel.c
228
> 229 void btintel_boot_info(struct hci_dev *hdev,
230 struct intel_version_tlv *ver)
231 {
232 const char *variant;
233
234 switch (ver->img_type) {
235 case 0x01:
236 variant = "Bootloader";
237 break;
238 case 0x03:
239 variant = "Firmware";
240 break;
241 default:
242 bt_dev_err(hdev, "Unsupported image type %x", ver->img_type);
243 return;
244 }
245
246 bt_dev_info(hdev, "%s timestamp %u.%u buildtype %u build %u",
247 variant, 2000 + (ver->timestamp >> 8),
248 ver->timestamp & 0xff, ver->build_type, ver->build_num);
249 }
250 EXPORT_SYMBOL_GPL(btintel_boot_info);
251
> 252 void btintel_boot_info_tlv(struct hci_dev *hdev,
253 struct intel_version_tlv *ver)
254 {
255 bt_dev_info(hdev, "Device revision is %u",
256 ver->dev_rev_id);
257
258 bt_dev_info(hdev, "Secure boot is %s",
259 ver->secure_boot ? "enabled" : "disabled");
260
261 bt_dev_info(hdev, "OTP lock is %s",
262 ver->otp_lock ? "enabled" : "disabled");
263
264 bt_dev_info(hdev, "API lock is %s",
265 ver->api_lock ? "enabled" : "disabled");
266
267 bt_dev_info(hdev, "Debug lock is %s",
268 ver->debug_lock ? "enabled" : "disabled");
269
270 bt_dev_info(hdev, "Minimum firmware build %u week %u %u",
271 ver->min_fw_build_nn, ver->min_fw_build_cw,
272 2000 + ver->min_fw_build_yy);
273 }
274 EXPORT_SYMBOL_GPL(btintel_boot_info_tlv);
275
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 3 months