From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752125AbcHFW1Y (ORCPT ); Sat, 6 Aug 2016 18:27:24 -0400 Received: from sf2.bxl.stone.is ([5.134.1.43]:56225 "EHLO sf2.bxl.stone.is" rhost-flags-OK-FAIL-OK-FAIL) by vger.kernel.org with ESMTP id S1751974AbcHFW1W (ORCPT ); Sat, 6 Aug 2016 18:27:22 -0400 X-Greylist: delayed 2347 seconds by postgrey-1.27 at vger.kernel.org; Sat, 06 Aug 2016 18:27:22 EDT Subject: Re: [PATCH v2 1/3] sched: Avoid that __wait_on_bit_lock() hangs To: Ingo Molnar References: <908d9eda-4942-270c-7431-bf56f0a62681@sandisk.com> <6e70b9d5-05ea-72f7-b6fe-2c900a5b4266@sandisk.com> Cc: Peter Zijlstra , Oleg Nesterov , "akpm@linux-foundation.org" , Johannes Weiner , Neil Brown , Michael Shaver , "linux-kernel@vger.kernel.org" From: Bart Van Assche Message-ID: Date: Sat, 6 Aug 2016 14:36:10 -0700 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.2 MIME-Version: 1.0 In-Reply-To: <6e70b9d5-05ea-72f7-b6fe-2c900a5b4266@sandisk.com> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit X-PPP-Message-ID: <20160806213613.68046.55401@vz23.stone-is.net> X-PPP-Vhost: bartvanassche.be X-Filter-ID: s0sct1PQhAABKnZB5plbIYrcAt68paBzxGNV4bZScc8DDDH9IcRzs4ldqK5vEMwbuZt+PpRPW1h0 yigPev+a+04My0LQQXIC7WDzp/8ADWUIQz2cxljJb7ms0bCFiVtXgwfiwlJS3fIgwvVR/7BSsYYZ ZS/DUBLA5nGN6cIn1z8pJ2Of1uqA8+WT5qTjvvlss5U0Y49+nMAJFiEeEdi1vgTe9nn8VR14s5h+ 0qpOzM15vI6pca52VjV5mIKutFi31wz56qeWJ3BB0Hxpv7qfrqg9slDa3EWyobP9lCdq71LGQdeB NIkLb6r47afaw/CHvTczy/haGLcWXbgGoE7T4TNRwOn16CFHTLf0X2kQqdjjRTu2Con4TWLpnir6 GMmM4tN+6SEfVbpEdB4RVvphkhxwEiTVJqDh0qKoKsXx5lm6I1iyriV2A2m1VoIRnPESbQmlb7A0 siDumDORbwwbyUQQrwpjxsATYS3iDPyAk1SprYlvne0NUB5b+H12aIr4ZQto/8ClyGMzJ/Thfwv3 fWxpRT+/yJfbGSQNjNMQMxBVVph2J+swW3DdR0HfJWbCowbovTu16yD6VpKabSrkCMhbG1gYCKtX xQumUA+APcwjk453OKkvcBjntLt9yA3C1kaTYScAX7m/CcfAV6pSARqi9VsQBnxqzpq/g9h3DaxG /Dk1XHNFp7zRWsCE086BlDqVWd2Z2uH2gQiQda+kSC8NSf3BEp2jmvXkqbVcDkCNjCeoOQJFpRcT Y+xj0NaiyB2Iv44ISCaVZLyGUM3tARNyLCVwCaAZV9h+Ad5mAHTqf32HRAIXLxSxjQIuPQZem1eU ZOdE2Qn9jdxCpPSlrCIE3MzTAn7ag0WOiSkq5TY= X-Report-Abuse-To: spam@sf1.bxl.stone.is X-Originating-IP: 87.238.162.216 X-SpamExperts-Domain: stone.is X-SpamExperts-Username: 87.238.162.216 Authentication-Results: bxl.stone.is; auth=pass smtp.auth=87.238.162.216@stone.is X-SpamExperts-Outgoing-Class: ham X-SpamExperts-Outgoing-Evidence: Combined (0.12) X-Recommended-Action: accept Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 08/05/16 16:09, Bart Van Assche wrote: > If delivery of a signal and __wake_up_common() happen concurrently > it is possible that the signal is delivered after __wake_up_common() > woke up the affected task and before bit_wait_io() checks whether a > signal is pending. Avoid that the next waiter is not woken up if this > happens. (replying to my own e-mail) Although this patch works reliably in my tests, the above description does not explain the hang. I will resend this patch with a better description. Bart.