* [PATCH v2 10/10] af_unix: use freezable blocking calls in read [not found] <1367458508-9133-1-git-send-email-ccross@android.com> @ 2013-05-02 1:35 ` Colin Cross 2013-05-03 0:08 ` Tejun Heo 0 siblings, 1 reply; 6+ messages in thread From: Colin Cross @ 2013-05-02 1:35 UTC (permalink / raw) To: linux-pm Cc: linux-kernel, Rafael J. Wysocki, arve, Tejun Heo, Oleg Nesterov, Colin Cross, David S. Miller, Eric Dumazet, Al Viro, Eric W. Biederman, Gao feng, netdev Avoid waking up every thread sleeping in read call on an AF_UNIX socket during suspend and resume by calling a freezable blocking call. Previous patches modified the freezer to avoid sending wakeups to threads that are blocked in freezable blocking calls. This call was selected to be converted to a freezable call because it doesn't hold any locks or release any resources when interrupted that might be needed by another freezing task or a kernel driver during suspend, and is a common site where idle userspace tasks are blocked. Signed-off-by: Colin Cross <ccross@android.com> --- net/unix/af_unix.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/net/unix/af_unix.c b/net/unix/af_unix.c index 2db702d..2bcac57 100644 --- a/net/unix/af_unix.c +++ b/net/unix/af_unix.c @@ -114,6 +114,7 @@ #include <linux/mount.h> #include <net/checksum.h> #include <linux/security.h> +#include <linux/freezer.h> struct hlist_head unix_socket_table[2 * UNIX_HASH_SIZE]; EXPORT_SYMBOL_GPL(unix_socket_table); @@ -1880,7 +1881,7 @@ static long unix_stream_data_wait(struct sock *sk, long timeo) set_bit(SOCK_ASYNC_WAITDATA, &sk->sk_socket->flags); unix_state_unlock(sk); - timeo = schedule_timeout(timeo); + timeo = freezable_schedule_timeout(timeo); unix_state_lock(sk); clear_bit(SOCK_ASYNC_WAITDATA, &sk->sk_socket->flags); } -- 1.8.2.1 ^ permalink raw reply related [flat|nested] 6+ messages in thread
* Re: [PATCH v2 10/10] af_unix: use freezable blocking calls in read 2013-05-02 1:35 ` [PATCH v2 10/10] af_unix: use freezable blocking calls in read Colin Cross @ 2013-05-03 0:08 ` Tejun Heo 2013-05-04 19:19 ` Rafael J. Wysocki 0 siblings, 1 reply; 6+ messages in thread From: Tejun Heo @ 2013-05-03 0:08 UTC (permalink / raw) To: Colin Cross Cc: linux-pm, linux-kernel, Rafael J. Wysocki, arve, Oleg Nesterov, David S. Miller, Eric Dumazet, Al Viro, Eric W. Biederman, Gao feng, netdev On Wed, May 01, 2013 at 06:35:08PM -0700, Colin Cross wrote: > Avoid waking up every thread sleeping in read call on an AF_UNIX > socket during suspend and resume by calling a freezable blocking > call. Previous patches modified the freezer to avoid sending > wakeups to threads that are blocked in freezable blocking calls. > > This call was selected to be converted to a freezable call because > it doesn't hold any locks or release any resources when interrupted > that might be needed by another freezing task or a kernel driver > during suspend, and is a common site where idle userspace tasks are > blocked. Heh, so you are aware of the deadlock possibilities. Good selection of spots. For all the conversion patches. Acked-by: Tejun Heo <tj@kernel.org> Thanks. -- tejun ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH v2 10/10] af_unix: use freezable blocking calls in read 2013-05-03 0:08 ` Tejun Heo @ 2013-05-04 19:19 ` Rafael J. Wysocki 2013-05-04 20:39 ` Tejun Heo 0 siblings, 1 reply; 6+ messages in thread From: Rafael J. Wysocki @ 2013-05-04 19:19 UTC (permalink / raw) To: Tejun Heo Cc: Colin Cross, linux-pm, linux-kernel, arve, Oleg Nesterov, David S. Miller, Eric Dumazet, Al Viro, Eric W. Biederman, Gao feng, netdev On Thursday, May 02, 2013 05:08:12 PM Tejun Heo wrote: > On Wed, May 01, 2013 at 06:35:08PM -0700, Colin Cross wrote: > > Avoid waking up every thread sleeping in read call on an AF_UNIX > > socket during suspend and resume by calling a freezable blocking > > call. Previous patches modified the freezer to avoid sending > > wakeups to threads that are blocked in freezable blocking calls. > > > > This call was selected to be converted to a freezable call because > > it doesn't hold any locks or release any resources when interrupted > > that might be needed by another freezing task or a kernel driver > > during suspend, and is a common site where idle userspace tasks are > > blocked. > > Heh, so you are aware of the deadlock possibilities. Good selection > of spots. For all the conversion patches. > > Acked-by: Tejun Heo <tj@kernel.org> I wonder if that includes [3/10] (just to get the record straight)? Rafael -- I speak only for myself. Rafael J. Wysocki, Intel Open Source Technology Center. ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH v2 10/10] af_unix: use freezable blocking calls in read 2013-05-04 19:19 ` Rafael J. Wysocki @ 2013-05-04 20:39 ` Tejun Heo 2013-05-04 22:23 ` Colin Cross 0 siblings, 1 reply; 6+ messages in thread From: Tejun Heo @ 2013-05-04 20:39 UTC (permalink / raw) To: Rafael J. Wysocki Cc: Colin Cross, linux-pm@vger.kernel.org, lkml, arve, Oleg Nesterov, David S. Miller, Eric Dumazet, Al Viro, Eric W. Biederman, Gao feng, netdev Hello, Rafael. On Sat, May 4, 2013 at 12:19 PM, Rafael J. Wysocki <rjw@sisk.pl> wrote: >> Heh, so you are aware of the deadlock possibilities. Good selection >> of spots. For all the conversion patches. >> >> Acked-by: Tejun Heo <tj@kernel.org> > > I wonder if that includes [3/10] (just to get the record straight)? I think we want the lockdep annotations before these go in. I'll review Colin's new series later today. Thanks! -- tejun ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH v2 10/10] af_unix: use freezable blocking calls in read 2013-05-04 20:39 ` Tejun Heo @ 2013-05-04 22:23 ` Colin Cross 2013-05-05 11:23 ` Rafael J. Wysocki 0 siblings, 1 reply; 6+ messages in thread From: Colin Cross @ 2013-05-04 22:23 UTC (permalink / raw) To: Tejun Heo Cc: Rafael J. Wysocki, linux-pm@vger.kernel.org, lkml, Arve Hjønnevåg, Oleg Nesterov, David S. Miller, Eric Dumazet, Al Viro, Eric W. Biederman, Gao feng, netdev On Sat, May 4, 2013 at 1:39 PM, Tejun Heo <tj@kernel.org> wrote: > Hello, Rafael. > > On Sat, May 4, 2013 at 12:19 PM, Rafael J. Wysocki <rjw@sisk.pl> wrote: >>> Heh, so you are aware of the deadlock possibilities. Good selection >>> of spots. For all the conversion patches. >>> >>> Acked-by: Tejun Heo <tj@kernel.org> >> >> I wonder if that includes [3/10] (just to get the record straight)? > > I think we want the lockdep annotations before these go in. I'll > review Colin's new series later today. Just to make sure the merge order is clear, the two patches I posted yesterday to reintroduce the lockdep warning in try_to_freeze() (https://lkml.org/lkml/2013/5/3/488) need to be merged first, then I will repost this series on top of that one. ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH v2 10/10] af_unix: use freezable blocking calls in read 2013-05-04 22:23 ` Colin Cross @ 2013-05-05 11:23 ` Rafael J. Wysocki 0 siblings, 0 replies; 6+ messages in thread From: Rafael J. Wysocki @ 2013-05-05 11:23 UTC (permalink / raw) To: Colin Cross Cc: Tejun Heo, linux-pm@vger.kernel.org, lkml, Arve Hjønnevåg, Oleg Nesterov, David S. Miller, Eric Dumazet, Al Viro, Eric W. Biederman, Gao feng, netdev On Saturday, May 04, 2013 03:23:30 PM Colin Cross wrote: > On Sat, May 4, 2013 at 1:39 PM, Tejun Heo <tj@kernel.org> wrote: > > Hello, Rafael. > > > > On Sat, May 4, 2013 at 12:19 PM, Rafael J. Wysocki <rjw@sisk.pl> wrote: > >>> Heh, so you are aware of the deadlock possibilities. Good selection > >>> of spots. For all the conversion patches. > >>> > >>> Acked-by: Tejun Heo <tj@kernel.org> > >> > >> I wonder if that includes [3/10] (just to get the record straight)? > > > > I think we want the lockdep annotations before these go in. I'll > > review Colin's new series later today. > > Just to make sure the merge order is clear, the two patches I posted > yesterday to reintroduce the lockdep warning in try_to_freeze() > (https://lkml.org/lkml/2013/5/3/488) need to be merged first, then I > will repost this series on top of that one. OK, thanks for the clarification. Rafael -- I speak only for myself. Rafael J. Wysocki, Intel Open Source Technology Center. ^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2013-05-05 11:15 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <1367458508-9133-1-git-send-email-ccross@android.com>
2013-05-02 1:35 ` [PATCH v2 10/10] af_unix: use freezable blocking calls in read Colin Cross
2013-05-03 0:08 ` Tejun Heo
2013-05-04 19:19 ` Rafael J. Wysocki
2013-05-04 20:39 ` Tejun Heo
2013-05-04 22:23 ` Colin Cross
2013-05-05 11:23 ` Rafael J. Wysocki
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).