From: David Howells <[email protected]>
Date: Thu, 29 Aug 2019 14:12:11 +0100
> When a local endpoint is ceases to be in use, such as when the kafs module
> is unloaded, the kernel will emit an assertion failure if there are any
> outstanding client connections:
>
> rxrpc: Assertion failed
> ------------[ cut here ]------------
> kernel BUG at net/rxrpc/local_object.c:433!
>
> and even beyond that, will evince other oopses if there are service
> connections still present.
>
> Fix this by:
...
> Only after destroying the connections can we close the socket lest we get
> an oops in a workqueue that's looking at a connection or a peer.
>
> Fixes: 3d18cbb7fd0c ("rxrpc: Fix conn expiry timers")
> Signed-off-by: David Howells <[email protected]>
> Tested-by: Marc Dionne <[email protected]>
Applied.