[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <20180308.124357.718414383801823111.davem@davemloft.net>
Date: Thu, 08 Mar 2018 12:43:57 -0500 (EST)
From: David Miller <davem@...emloft.net>
To: ubraun@...ux.vnet.ibm.com
Cc: netdev@...r.kernel.org, linux-s390@...r.kernel.org,
schwidefsky@...ibm.com, heiko.carstens@...ibm.com,
raspl@...ux.vnet.ibm.com
Subject: Re: [PATCH net 1/1] net/smc: wakeup closing listen socket
From: Ursula Braun <ubraun@...ux.vnet.ibm.com>
Date: Wed, 7 Mar 2018 13:59:31 +0100
> Closing of a listen socket wakes up kernel_accept() of
> smc_tcp_listen_worker(), and then has to wait till
> smc_tcp_listen_worker() gives up the internal clcsock. This wait is
> non-interruptible, and does not fit to the interruptible wakeup in
> smc_tcp_listen_worker().
I am having a hard time understanding this.
A non-interruptible sleep just means that the sleeper can only be
woken up by the event itself. Said another way, signals and other
unrelated events do not wake up the sleeper.
So as long as the socket close emits the wakeup event, the
non-interruptible sleeper will wake up.
It is also a huge red flag that you feel that you need custom handling
in this area and can't use the generic infrastructure and routines for
this.
Without a better understanding and explanation, there is no way I am
applying this. It seems that you guys do a lot of things in custom
ways that really should follow the methods and mechanisms used by
other protocol families in the tree.
Thank you.
Powered by blists - more mailing lists