Messages in this thread | | | Date | Wed, 9 Jan 2019 19:20:50 -0500 | From | Sasha Levin <> | Subject | Re: [PATCH][re-post] vmbus: fix subchannel removal |
| |
On Wed, Jan 09, 2019 at 08:56:06PM +0000, Dexuan Cui wrote: > >The changes to split ring allocation from open/close, broke >the cleanup of subchannels. This resulted in problems using >uio on network devices because the subchannel was left behind >when the network device was unbound. > >The cause was in the disconnect logic which used list splice >to move the subchannel list into a local variable. This won't >work because the subchannel list is needed later during the >process of the rescind messages (relid2channel). > >The fix is to just leave the subchannel list in place >which is what the original code did. The list is cleaned >up later when the host rescind is processed. > >Without the fix, we have a lot of "hang" issues in netvsc when we >try to change the NIC's MTU, set the number of channels, etc. > >Fixes: ae6935ed7d42 ("vmbus: split ring buffer allocation from open") >Cc: stable@vger.kernel.org >Signed-off-by: Stephen Hemminger <sthemmin@microsoft.com> >Signed-off-by: Dexuan Cui <decui@microsoft.com>
Queued, thank you.
-- Thanks, Sasha
| |