From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S933870AbbGUTYN (ORCPT ); Tue, 21 Jul 2015 15:24:13 -0400 Received: from mx1.redhat.com ([209.132.183.28]:46033 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S933377AbbGUTYL (ORCPT ); Tue, 21 Jul 2015 15:24:11 -0400 Date: Tue, 21 Jul 2015 21:22:19 +0200 From: Oleg Nesterov To: Ingo Molnar Cc: Peter Zijlstra , Rik van Riel , Tejun Heo , linux-kernel@vger.kernel.org Subject: [PATCH v2 0/6] stop_machine: cleanups, fix, remove lglock Message-ID: <20150721192219.GA31150@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.5.18 (2008-05-17) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hello, Let me resend this. The only change in v2 is that I rediffed this series against v4.2-rc3. 5/6 patch fixes the bug, I think. Say, stop_one_cpu(X) can race with _cpu_down(X)->stop_machine() so that the kernel will crash if this CPU X becomes online again. The window after cpu_stopper_thread() returns and before smpboot_thread() calls ->park() is tiny, but still this is possible afaics. But see the changelog in 6/6, I think we should turn this cpu_stop_signal_done() into BUG() later. 6/6 removes lglock from kernel/stop_machine.c. Peter, Rik, what do you think ? Oleg. include/linux/lglock.h | 5 -- include/linux/stop_machine.h | 28 ++------ kernel/cpu.c | 2 +- kernel/locking/lglock.c | 22 ------ kernel/stop_machine.c | 162 ++++++++++++++++++++++++------------------ 5 files changed, 98 insertions(+), 121 deletions(-)