From: Thomas Monjalon <firstname.lastname@example.org> To: Stephen Hemminger <email@example.com>, Ferruh Yigit <firstname.lastname@example.org> Cc: email@example.com, firstname.lastname@example.org Subject: Re: [dpdk-stable] [dpdk-dev] [PATCH] kni: fix kernel deadlock when using mlx devices Date: Wed, 18 Mar 2020 16:17:57 +0100 Message-ID: <3101970.h16uAIiOU7@xps> (raw) In-Reply-To: <email@example.com> 17/01/2020 17:43, Ferruh Yigit: > On 12/22/2019 5:55 PM, Stephen Hemminger wrote: > > This fixes a deadlock when using KNI with bifurcated drivers. > > Bringing kni device up always times out when using Mellanox > > devices. > > > > The kernel KNI driver sends message to userspace to complete > > the request. For the case of bifurcated driver, this may involve > > an additional request to kernel to change state. This request > > would deadlock because KNI was holding the RTNL mutex. > > > > This was a bad design which goes back to the original code. > > A workaround is for KNI driver to drop RTNL while waiting. > > To prevent the device from disappearing while the operation > > is in progress, it needs to hold reference to network device > > while waiting. > > > > As an added benefit, an useless error check can also be removed. > > > > Fixes: 3fc5ca2f6352 ("kni: initial import") > > Cc: firstname.lastname@example.org > > Signed-off-by: Stephen Hemminger <email@example.com> > > --- > > This patch cause a hang on my server, not sure what exactly was the problem but > kernel log was continuously printing "Cannot send to req_q". Will dig more. Ferruh, did you have a chance to check what is hanging? Stephen, is there any news on your side?
next prev parent reply index Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top 2019-12-22 17:55 [dpdk-stable] " Stephen Hemminger 2020-01-17 16:43 ` Ferruh Yigit 2020-03-18 15:17 ` Thomas Monjalon [this message] 2020-05-06 0:14 ` [dpdk-stable] [dpdk-dev] " Stephen Hemminger 2020-07-27 17:33 ` Ferruh Yigit 2020-07-27 17:52 ` Stephen Hemminger 2020-07-28 8:56 ` Igor Ryzhov
Reply instructions: You may reply publically 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=3101970.h16uAIiOU7@xps \ --firstname.lastname@example.org \ --email@example.com \ --firstname.lastname@example.org \ --email@example.com \ --firstname.lastname@example.org \ /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
patches for DPDK stable branches Archives are clonable: git clone --mirror http://inbox.dpdk.org/stable/0 stable/git/0.git # If you have public-inbox 1.1+ installed, you may # initialize and index your mirror using the following commands: public-inbox-init -V2 stable stable/ http://inbox.dpdk.org/stable \ email@example.com public-inbox-index stable Newsgroup available over NNTP: nntp://inbox.dpdk.org/inbox.dpdk.stable AGPL code for this site: git clone https://public-inbox.org/ public-inbox