lkml.org 
[lkml]   [2016]   [Feb]   [21]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    SubjectRe: [PATCHv2] serial: samsung: drop the spinlock around uart_write_wakeup
    From
    Date
    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

    \
     
     \ /
      Last update: 2016-02-22 01:21    [W:2.232 / U:0.936 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site