From: David Miller <davem@davemloft.net>
To: olivier@sobrie.be
Cc: j.dumon@option.com, linux-usb@vger.kernel.org,
netdev@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH 2/2] hso: fix deadlock when receiving bursts of data
Date: Tue, 08 Jul 2014 16:16:33 -0700 (PDT) [thread overview]
Message-ID: <20140708.161633.2130069042930765600.davem@davemloft.net> (raw)
In-Reply-To: <1404723967-24245-2-git-send-email-olivier@sobrie.be>
From: Olivier Sobrie <olivier@sobrie.be>
Date: Mon, 7 Jul 2014 11:06:07 +0200
> When the module sends bursts of data, sometimes a deadlock happens in
> the hso driver when the tty buffer doesn't get the chance to be flushed
> quickly enough.
>
> To avoid this, first, we remove the endless while loop in
> put_rx_bufdata() which is the root cause of the deadlock.
> Secondly, when there is no room anymore in the tty buffer, we set up a
> timer of 100 msecs to give a chance to the upper layer to flush the tty
> buffer and make room for new data.
>
> Signed-off-by: Olivier Sobrie <olivier@sobrie.be>
I agree with the feedback you've been given in that adding a delay
like this is really not a reasonable solution.
Why is it so difficult to make the event which places the data there
trigger to necessary calls to pull the data out of the URB transfer
buffer?
This should be totally and completely event based.
next prev parent reply other threads:[~2014-07-08 23:16 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-07-07 9:06 [PATCH 1/2] hso: remove unused workqueue Olivier Sobrie
2014-07-07 9:06 ` [PATCH 2/2] hso: fix deadlock when receiving bursts of data Olivier Sobrie
2014-07-07 9:13 ` David Laight
2014-07-07 10:42 ` Olivier Sobrie
2014-07-07 12:55 ` David Laight
2014-07-07 13:38 ` Olivier Sobrie
2014-07-07 16:41 ` Dan Williams
2014-07-07 18:50 ` Olivier Sobrie
2014-07-08 23:16 ` David Miller [this message]
2014-07-10 14:28 ` Olivier Sobrie
2014-07-10 14:37 ` David Laight
2014-07-10 15:50 ` One Thousand Gnomes
2014-07-10 15:55 ` David Laight
2014-07-10 21:20 ` One Thousand Gnomes
2014-07-11 9:18 ` Olivier Sobrie
2014-07-11 9:28 ` David Laight
2014-07-11 12:05 ` Olivier Sobrie
2014-07-11 13:05 ` [PATCH v2 " Olivier Sobrie
2014-07-11 18:36 ` David Miller
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=20140708.161633.2130069042930765600.davem@davemloft.net \
--to=davem@davemloft.net \
--cc=j.dumon@option.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-usb@vger.kernel.org \
--cc=netdev@vger.kernel.org \
--cc=olivier@sobrie.be \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).