From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754641AbbIAH1r (ORCPT ); Tue, 1 Sep 2015 03:27:47 -0400 Received: from mail-wi0-f177.google.com ([209.85.212.177]:37383 "EHLO mail-wi0-f177.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753720AbbIAH1q (ORCPT ); Tue, 1 Sep 2015 03:27:46 -0400 Date: Tue, 1 Sep 2015 09:27:41 +0200 From: Ingo Molnar To: Markus Trippelsdorf Cc: Linus Torvalds , linux-kernel@vger.kernel.org, Peter Zijlstra , Thomas Gleixner , Andrew Morton , Mike Galbraith Subject: Re: [GIT PULL] scheduler changes for v4.3 Message-ID: <20150901072741.GB20383@gmail.com> References: <20150831172453.GA5429@gmail.com> <20150901070856.GA430@x4> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20150901070856.GA430@x4> User-Agent: Mutt/1.5.23 (2014-03-12) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org * Markus Trippelsdorf wrote: > On 2015.08.31 at 19:24 +0200, Ingo Molnar wrote: > > Please pull the latest sched-core-for-linus git tree from: > > > > git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git sched-core-for-linus > > > > # HEAD: ff277d4250fe715b6666219b1a3423b863418794 sched/deadline: Fix comment in enqueue_task_dl() > > Linus, > > your merge (commit a1d8561172f369ba) breaks booting on my machine. So I just double checked Linus's merge resolution, re-created it from scratch, and it looks correct. Furthermore, I resolved the conflict similarly in the past and this resolution had been in -tip and linux-next testing for some while. But I noticed something weird in your revert patch: > > I wrote down the backtrace: > > map_vsyscall > kvm_arch_hardware_setup > map_vsyscall > kvm_init > map_vsyscall > do_one_initcall > kernel_init_freeable > rest_init > kernel_init > ret_from_fork > rest_init > > RIP: svm_hardware_setup > > Reverting your merge resolution fixes the issue: > > diff --git a/kernel/cpu.c b/kernel/cpu.c > index 82cf9dff4295..873aa0757b04 100644 > --- a/kernel/cpu.c > +++ b/kernel/cpu.c > @@ -397,12 +397,11 @@ static int _cpu_down(unsigned int cpu, int tasks_frozen) > * Prevent irq alloc/free while the dying cpu reorganizes the > * interrupt affinities. > */ > - irq_lock_sparse(); So where does this chunk come from? None of the trees nor the merge resolution touches this code. Maybe you had other changes in your tree that interfered? That missing irq_lock_sparse() might indeed break the boot. But that's not something that got in there from Linus's tree AFAICS. > /* > * So now all preempt/rcu users must observe !cpu_active(). > */ > - err = stop_machine(take_cpu_down, &tcd_param, cpumask_of(cpu)); > + err = __stop_machine(take_cpu_down, &tcd_param, cpumask_of(cpu)); > if (err) { > /* CPU didn't die: tell everyone. Can't complain. */ > cpu_notify_nofail(CPU_DOWN_FAILED | mod, hcpu); This change cannot possibly have built on Linus's tree, as __stop_machine() got unexported, it is now internal and static to kernel/stop_machine.c... So could you please double check your side? Thanks, Ingo