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: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAD6h2NSnH68_2iXd5g3vxuoADdWkQhiFCjXHbKKAg3KgA5wgQQ@mail.gmail.com>
Date:	Mon, 4 Mar 2013 13:56:37 +0800
From:	Haojian Zhuang <haojian.zhuang@...aro.org>
To:	Axel Lin <axel.lin@...ics.com>
Cc:	Linus Walleij <linus.walleij@...aro.org>,
	Tony Lindgren <tony@...mide.com>, linux-kernel@...r.kernel.org
Subject: Re: [PATCH RFT] pinctrl: single: Fix build error

On 4 March 2013 13:47, Axel Lin <axel.lin@...ics.com> wrote:
> If pcs->is_pinconf is false, it means does not support pinconf.
> If pcs->is_pinconf is true, is_generic flag is always true.
>
> This patch fixes below build error:
>
>   CC [M]  drivers/pinctrl/pinctrl-single.o
> drivers/pinctrl/pinctrl-single.c: In function 'pcs_probe':
> drivers/pinctrl/pinctrl-single.c:1441:3: error: assignment of member 'is_generic' in read-only object
> make[2]: *** [drivers/pinctrl/pinctrl-single.o] Error 1
> make[1]: *** [drivers/pinctrl] Error 2
> make: *** [drivers] Error 2
>
> Signed-off-by: Axel Lin <axel.lin@...ics.com>
> ---
>  drivers/pinctrl/pinctrl-single.c |    6 +++---
>  1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/pinctrl/pinctrl-single.c b/drivers/pinctrl/pinctrl-single.c
> index 4cdcf85..e35dabd 100644
> --- a/drivers/pinctrl/pinctrl-single.c
> +++ b/drivers/pinctrl/pinctrl-single.c
> @@ -734,6 +734,7 @@ static const struct pinconf_ops pcs_pinconf_ops = {
>         .pin_config_dbg_show = pcs_pinconf_dbg_show,
>         .pin_config_group_dbg_show = pcs_pinconf_group_dbg_show,
>         .pin_config_config_dbg_show = pcs_pinconf_config_dbg_show,
> +       .is_generic = true,

There's two cases for is_generic. Your fix only make thing worse.

By the way, I already sent a patch to fix it.

Regards
Haojian
>  };
>
>  /**
> @@ -1435,10 +1436,9 @@ static int pcs_probe(struct platform_device *pdev)
>         pcs->desc.name = DRIVER_NAME;
>         pcs->desc.pctlops = &pcs_pinctrl_ops;
>         pcs->desc.pmxops = &pcs_pinmux_ops;
> -       pcs->desc.confops = &pcs_pinconf_ops;
> +       if (pcs->is_pinconf)
> +               pcs->desc.confops = &pcs_pinconf_ops;
>         pcs->desc.owner = THIS_MODULE;
> -       if (match->data)
> -               pcs_pinconf_ops.is_generic = true;
>
>         ret = pcs_allocate_pin_table(pcs);
>         if (ret < 0)
> --
> 1.7.9.5
>
>
>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ