From: Tim Chen <tim.c.chen@linux.intel.com>
To: Prarit Bhargava <prarit@redhat.com>, linux-kernel@vger.kernel.org
Cc: Thomas Gleixner <tglx@linutronix.de>,
Ingo Molnar <mingo@redhat.com>, "H. Peter Anvin" <hpa@zytor.com>,
x86@kernel.org, Peter Zijlstra <peterz@infradead.org>,
Len Brown <len.brown@intel.com>, Borislav Petkov <bp@suse.de>,
Andi Kleen <ak@linux.intel.com>,
Boris Ostrovsky <boris.ostrovsky@oracle.com>,
Jiri Olsa <jolsa@redhat.com>
Subject: Re: [PATCH] arch/x86: Remove second call to topology_update_package_map()
Date: Wed, 12 Oct 2016 15:06:44 -0700 [thread overview]
Message-ID: <1476310004.4440.16.camel@linux.intel.com> (raw)
In-Reply-To: <57FEA313.4060400@redhat.com>
On Wed, 2016-10-12 at 16:54 -0400, Prarit Bhargava wrote:
>
> On 10/12/2016 03:51 PM, Tim Chen wrote:
> >
> > On Wed, 2016-10-12 at 11:06 -0400, Prarit Bhargava wrote:
> > >
> > >
> > > On 10/12/2016 10:36 AM, Prarit Bhargava wrote:
> > > >
> > > >
> > > > This was noticed during the investigation of
> > > >
> > > > http://git.kernel.org/tip/2a51fe083eba7f99cbda72f5ef90cdf2f4df882c
> > > >
> > > > A note for reviewers on the cleanup in smp_init_package_map(): The
> > > > per_cpu variable x86_bios_cpu_apicid is initialized to BAD_APICID, and the
> > > > bitmaps are set to false by default so the code isn't necessary. The
> > > > pr_warn() can also be dropped as generic_processor_info() will do a
> > > > pr_warning() in the same situation.
> > > >
> > > >
> > > >
> > > > P.
> > > >
> > > > -----8<-----
> > > >
> > > > After commit 1f12e32f4cd5 ("x86/topology: Create logical package id"),
> > > > topology_update_package_map() is called twice on a CPU. The first call is in
> > > > generic_processor_info(), which is called on all present cpus (found in either
> > > > mptable or ACPI MADT). The second call is in smp_init_package_map() which
> > > > is called later on in the init sequence.
> > > >
> > > > Only a single call is necessary for the kernel to initialize the data
> > > > structures properly. This patch drops the later call in smp_init_package_map()
> > > > and moves smp_init_package_map() out of smp_store_boot_cpu_info().
> > > >
> > > Self-NAK.
> > >
> > > This seems to not work on systems with an empty socket :/. Looking into this now.
> > >
> > > P.
> > My single node workstation also failed to boot with the patch.
> The patch is incorrect. I'm dropping it completely.
>
The call from generic_processor_info to topology_update_package_map
during early boot was essentially no op, as physical_package_map has
not have been allocated by smp_init_package_map yet.
We have to call topology_update_package_map in smp_init_package_map
after allocating physical_package_map to properly set up
physical_package_map.
Tim
next prev parent reply other threads:[~2016-10-12 22:22 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-10-12 14:36 [PATCH] arch/x86: Remove second call to topology_update_package_map() Prarit Bhargava
2016-10-12 15:06 ` Prarit Bhargava
2016-10-12 19:51 ` Tim Chen
2016-10-12 20:54 ` Prarit Bhargava
2016-10-12 22:06 ` Tim Chen [this message]
2016-10-12 22:37 ` Prarit Bhargava
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1476310004.4440.16.camel@linux.intel.com \
--to=tim.c.chen@linux.intel.com \
--cc=ak@linux.intel.com \
--cc=boris.ostrovsky@oracle.com \
--cc=bp@suse.de \
--cc=hpa@zytor.com \
--cc=jolsa@redhat.com \
--cc=len.brown@intel.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@redhat.com \
--cc=peterz@infradead.org \
--cc=prarit@redhat.com \
--cc=tglx@linutronix.de \
--cc=x86@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.