From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752778AbdHJO4E (ORCPT ); Thu, 10 Aug 2017 10:56:04 -0400 Received: from mx1.redhat.com ([209.132.183.28]:59796 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751972AbdHJO4D (ORCPT ); Thu, 10 Aug 2017 10:56:03 -0400 DMARC-Filter: OpenDMARC Filter v1.3.2 mx1.redhat.com 3F93B61467 Authentication-Results: ext-mx10.extmail.prod.ext.phx2.redhat.com; dmarc=none (p=none dis=none) header.from=redhat.com Authentication-Results: ext-mx10.extmail.prod.ext.phx2.redhat.com; spf=fail smtp.mailfrom=vkuznets@redhat.com From: Vitaly Kuznetsov To: Ingo Molnar Cc: x86@kernel.org, linux-kernel@vger.kernel.org, Thomas Gleixner , Ingo Molnar , "H. Peter Anvin" Subject: Re: [PATCH RESEND] x86/smpboot: Unbreak CPU0 hotplug References: <20170803105818.9934-1-vkuznets@redhat.com> <87fucztyww.fsf@vitty.brq.redhat.com> <20170810142351.b7h6usaou66aoywm@gmail.com> Date: Thu, 10 Aug 2017 16:56:00 +0200 In-Reply-To: <20170810142351.b7h6usaou66aoywm@gmail.com> (Ingo Molnar's message of "Thu, 10 Aug 2017 16:23:52 +0200") Message-ID: <87valvsc8v.fsf@vitty.brq.redhat.com> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.2 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.39]); Thu, 10 Aug 2017 14:56:03 +0000 (UTC) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Ingo Molnar writes: > * Vitaly Kuznetsov wrote: > >> Vitaly Kuznetsov writes: >> >> > A hang on CPU0 onlining after a preceding offlining is observed. Trace >> > shows that CPU0 is stuck in check_tsc_sync_target() waiting for source >> > CPU to run check_tsc_sync_source() but this never happens. Source CPU, >> > in its turn, is stuck on synchronize_sched() which is called from >> > native_cpu_up() -> do_boot_cpu() -> unregister_nmi_handler(). >> > >> > Fix the issue by moving unregister_nmi_handler() from do_boot_cpu() to >> > native_cpu_up() after cpu onlining is done. > > Looks like a classic ABBA deadlock, due to the use of synchronize_sched() in > unregister_nmi_handler(), right? > Exactly. >> > >> > Signed-off-by: Vitaly Kuznetsov >> > --- >> > It's been awile since my v1 submission, no comments so far. Resending. >> >> Sorry, but >> >> ping? >> >> I haven't received a single comment on this since the initial submission >> on June, 26 - is it so bad? :-) > > So the fix looks good to me at first sight, but wanted to wait for Thomas to ack > it - once he gets back from vacation. > Thanks! -- Vitaly