lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite for Android: free password hash cracker in your pocket
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:   Wed, 17 Jun 2020 14:22:13 -0500
From:   Dan Murphy <dmurphy@...com>
To:     kernel test robot <lkp@...el.com>, <jacek.anaszewski@...il.com>,
        <pavel@....cz>, <robh@...nel.org>
CC:     <kbuild-all@...ts.01.org>, <devicetree@...r.kernel.org>,
        <linux-leds@...r.kernel.org>, <linux-kernel@...r.kernel.org>
Subject: Re: [RESEND PATCH v27 11/15] leds: lp55xx: Add multicolor framework
 support to lp55xx

Pavel/Jacek

On 6/17/20 11:28 AM, kernel test robot wrote:
> Hi Dan,
>
> I love your patch! Yet something to improve:
>
> [auto build test ERROR on pavel-linux-leds/for-next]
> [cannot apply to j.anaszewski-leds/for-next]
> [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/Dan-Murphy/Multicolor-Framework-v27/20200616-042217
> base:   git://git.kernel.org/pub/scm/linux/kernel/git/pavel/linux-leds.git for-next
> config: ia64-randconfig-r015-20200617 (attached as .config)
> compiler: ia64-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=ia64
>
> If you fix the issue, kindly add following tag as appropriate
> Reported-by: kernel test robot <lkp@...el.com>
>
> All errors (new ones prefixed by >>, old ones prefixed by <<):
>
> ia64-linux-ld: drivers/leds/leds-lp55xx-common.o: in function `lp55xx_set_mc_brightness':
>>> drivers/leds/leds-lp55xx-common.c:146: undefined reference to `led_mc_calc_color_components'
> ia64-linux-ld: drivers/leds/leds-lp55xx-common.o: in function `devm_led_classdev_multicolor_register':
>>> include/linux/led-class-multicolor.h:74: undefined reference to `devm_led_classdev_multicolor_register_ext'
> vim +146 drivers/leds/leds-lp55xx-common.c
>
>     138	
>     139	static int lp55xx_set_mc_brightness(struct led_classdev *cdev,
>     140					    enum led_brightness brightness)
>     141	{
>     142		struct led_classdev_mc *mc_dev = lcdev_to_mccdev(cdev);
>     143		struct lp55xx_led *led = mcled_cdev_to_led(mc_dev);
>     144		struct lp55xx_device_config *cfg = led->chip->cfg;
>     145	
>   > 146		led_mc_calc_color_components(&led->mc_cdev, brightness);
>     147		return cfg->multicolor_brightness_fn(led);
>     148	

Well this was a mess to figure out.

The only fix I can figure out here is to remove the

     depends on LEDS_CLASS_MULTI_COLOR || !LEDS_CLASS_MULTI_COLOR

from each child device and add

     select LEDS_CLASS_MULTI_COLOR

to the LP55XX_COMMON

This way the Multi color framework will inherit the symbol that was set 
by the COMMON flag which is inherited by majority from the child flags.

Dan

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ