From: Krzysztof Kozlowski <k.kozlowski@samsung.com>
To: Anand Moon <linux.amoon@gmail.com>
Cc: "Peter Hurley" <peter@hurleysoftware.com>,
"Greg Kroah-Hartman" <gregkh@linuxfoundation.org>,
"Jiri Slaby" <jslaby@suse.com>,
linux-serial@vger.kernel.org,
"linux-samsung-soc@vger.kernel.org"
<linux-samsung-soc@vger.kernel.org>,
"Linux Kernel" <linux-kernel@vger.kernel.org>,
"Marek Szyprowski" <m.szyprowski@samsung.com>,
"Robert Bałdyga" <r.baldyga@samsung.com>
Subject: Re: [PATCHv2] serial: samsung: drop the spinlock around uart_write_wakeup
Date: Mon, 22 Feb 2016 09:08:20 +0900 [thread overview]
Message-ID: <56CA5174.3050706@samsung.com> (raw)
In-Reply-To: <CANAwSgSVHPVWBwaO6b4QvUEopCFSKXrFbHkY837+gG62wpc-Jg@mail.gmail.com>
On 21.02.2016 11:59, Anand Moon wrote:
> Hi Krzysztof,
>
> On 21 February 2016 at 07:07, Krzysztof Kozlowski
> <k.kozlowski@samsung.com> wrote:
>> 2016-02-20 4:30 GMT+09:00 Peter Hurley <peter@hurleysoftware.com>:
>>> [ +cc Krzysztof Kozlowski ]
>>>
>>> On 02/18/2016 09:15 PM, Anand Moon wrote:
>>>> From: Anand Moon <linux.amoon@gmail.com>
>>>>
>>>> drop the spin_unlock/lock around uart_write_wakeup to protect
>>>> write wakeup for uart port.
>>>
>>> What Krzysztof was saying wrt v1 of this patch is that the
>>> changelog should provide as much information as possible to
>>> the maintainer(s) and driver author(s), and that you should
>>> test that outcome.
>>>
>>> Here's what I would have written for a commit message:
>>>
>>>
>>> Remove deadlock workaround for line disciplines that invoke
>>> the tty driver's write() method directly from their write_wakeup()
>>> method. As documented for the write_wakeup() line discipline method
>>> in tty_ldisc.h, line disciplines must not attempt i/o directly
>>> from write_wakeup() as this will deadlock. Reviews of in-tree line
>>> disciplines confirm all defer i/o.
>>>
>>> NB: This workaround was added in commit c15c3747ee32
>>> ("serial: samsung: fix potential soft lockup during uart write")
>>> which notes both slip and bluetooth hci attempt i/o directly from
>>> write_wakeup(). These issues were fixed in commits 661f7fda21b1
>>> ("slip: Fix deadlock in write_wakeup") and da64c27d3c93
>>> ("bluetooth: hci_ldisc: fix deadlock condition"), respectively.
>>
>> Thanks Peter for thorough analysis. It shouldn't be done by you but by
>> the patch submitter... and I have big worries that Anand did not
>> perform that analysis.
>>
>> Anand, could you at least test that this lockup does not happen
>> anymore? You will need board with Bluetooth for that (and not USB
>> Bluetooth...). If you cannot test it, maybe guys from Polish R&D could
>> help you (Cc-ed), because they were working on DMA for serial used in
>> Bluetooth.
>>
>> Best regards,
>> Krzysztof
>
> I have looked into the history of the changes,
> commit c15c3747ee32 (serial: samsung: fix potential soft lockup during
> uart write)
> was added long time ago, that's why have missed this.
>
> I don't have on-board Bluetooth enable boards with me,
> so if their is potential lockup you people observer
> do not consider this patch.
Which means that you cannot test it... Find someone who can test it with
Bluetooth (or SLIP) and will provide you a Tested-by tag.
Best regards,
Krzysztof
next prev parent reply other threads:[~2016-02-22 0:08 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-02-19 5:15 [PATCHv2] serial: samsung: drop the spinlock around uart_write_wakeup Anand Moon
2016-02-19 19:30 ` Peter Hurley
2016-02-20 3:36 ` Anand Moon
2016-02-21 1:37 ` Krzysztof Kozlowski
2016-02-21 2:59 ` Anand Moon
2016-02-22 0:08 ` Krzysztof Kozlowski [this message]
2016-02-22 3:31 ` Anand Moon
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=56CA5174.3050706@samsung.com \
--to=k.kozlowski@samsung.com \
--cc=gregkh@linuxfoundation.org \
--cc=jslaby@suse.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-samsung-soc@vger.kernel.org \
--cc=linux-serial@vger.kernel.org \
--cc=linux.amoon@gmail.com \
--cc=m.szyprowski@samsung.com \
--cc=peter@hurleysoftware.com \
--cc=r.baldyga@samsung.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.