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: <20190308223040.GA31960@codeaurora.org>
Date:   Fri, 8 Mar 2019 15:30:40 -0700
From:   Lina Iyer <ilina@...eaurora.org>
To:     Stephen Boyd <swboyd@...omium.org>
Cc:     evgreen@...omium.org, marc.zyngier@....com,
        linux-kernel@...r.kernel.org, rplsssn@...eaurora.org,
        linux-arm-msm@...r.kernel.org, thierry.reding@...il.com,
        bjorn.andersson@...aro.org, dianders@...omium.org,
        linus.walleij@...aro.org
Subject: Re: [PATCH v3 6/9] drivers: pinctrl: msm: setup GPIO irqchip
 hierarchy

On Thu, Mar 07 2019 at 17:59 -0700, Stephen Boyd wrote:
>Quoting Lina Iyer (2019-02-22 14:18:47)
>> diff --git a/drivers/pinctrl/qcom/pinctrl-msm.c b/drivers/pinctrl/qcom/pinctrl-msm.c
>> index ee8119879c4c..83053b45982e 100644
>> --- a/drivers/pinctrl/qcom/pinctrl-msm.c
>> +++ b/drivers/pinctrl/qcom/pinctrl-msm.c
>> @@ -890,6 +918,9 @@ static int msm_gpio_irq_set_wake(struct irq_data *d, unsigned int on)
>>
>>         raw_spin_unlock_irqrestore(&pctrl->lock, flags);
>
>Can we remove the above hunk of code in this function? From what I can
>tell we're trying to set wake on the GIC SPI line and that won't ever
>work because it doesn't support wakeup support. Furthermore, I get a
>lockdep splat when I try to set wake on a GPIO irq with this patchset
>applied. It's probably a false positive though because it's warning
>about an AA deadlock with the irq descriptor lock, which is aliased
>between the two controllers.
>
>>
>> +       if (d->parent_data)
>> +               irq_chip_set_wake_parent(d, on);
>> +
>>         return 0;
>>  }
>>
>
>Here's a patch on top. If you need my signed-off-by please feel free to
>add it:
>
I will fold it in in my patch. It has your Co-developed-by anyways.

Thanks,
Lina

>Signed-off-by: Stephen Boyd <swboyd@...omium.org>
>
>-----8<-------
>diff --git a/drivers/pinctrl/qcom/pinctrl-msm.c b/drivers/pinctrl/qcom/pinctrl-msm.c
>index cdbc06ec5e96..4e81dad80a4d 100644
>--- a/drivers/pinctrl/qcom/pinctrl-msm.c
>+++ b/drivers/pinctrl/qcom/pinctrl-msm.c
>@@ -852,20 +852,10 @@ static int msm_gpio_irq_set_type(struct irq_data *d, unsigned int type)
>
> static int msm_gpio_irq_set_wake(struct irq_data *d, unsigned int on)
> {
>-	struct gpio_chip *gc = irq_data_get_irq_chip_data(d);
>-	struct msm_pinctrl *pctrl = gpiochip_get_data(gc);
>-	unsigned long flags;
>-
>-	raw_spin_lock_irqsave(&pctrl->lock, flags);
>-
>-	irq_set_irq_wake(pctrl->irq, on);
>-
>-	raw_spin_unlock_irqrestore(&pctrl->lock, flags);
>-
> 	if (d->parent_data)
>-		irq_chip_set_wake_parent(d, on);
>+		return irq_chip_set_wake_parent(d, on);
>
>-	return 0;
>+	return -ENOSYS;
> }
>
> static int msm_gpio_irq_reqres(struct irq_data *d)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ