Re: [PATCH v4] x86, hotplug: fix llc shared map unreleased during cpu hotplug

From: Peter Zijlstra
Date: Thu Sep 04 2014 - 02:25:29 EST


On Thu, Sep 04, 2014 at 02:40:07PM +0900, Yasuaki Ishimatsu wrote:
> (2014/09/04 14:20), Ingo Molnar wrote:
> >
> >* Wanpeng Li <wanpeng.li@xxxxxxxxxxxxxxx> wrote:
> >
> >>BUG: unable to handle kernel NULL pointer dereference at 0000000000000004
> >>IP: [..] find_busiest_group
> >>PGD 5a9d5067 PUD 13067 PMD 0
> >>Oops: 0000 [#3] SMP
> >>[...]
> >>Call Trace:
> >>load_balance
> >>? _raw_spin_unlock_irqrestore
> >>idle_balance
> >>__schedule
> >>schedule
> >>schedule_timeout
> >>? lock_timer_base
> >>schedule_timeout_uninterruptible
> >>msleep
> >>lock_device_hotplug_sysfs
> >>online_store
> >>dev_attr_store
> >>sysfs_write_file
> >>vfs_write
> >>SyS_write
> >>system_call_fastpath
> >>
> >>Last level cache shared map is built during cpu up and build sched domain
> >>routine takes advantage of it to setup sched domain cpu topology, however,
> >>llc shared map is unreleased during cpu disable which lead to invalid sched
> >>domain cpu topology. This patch fix it by release llc shared map correctly
> >>during cpu disable.
> >
> >Very little is said in this changelog about how the bug was
> >found, how likely it is to occur for others, what systems are
> >affected, etc.
>
> Hi Wanpeng,
>
> In my understanding, the panic occurs by just onlining CPU as follows:
> echo 1 > /sys/devices/system/cpu/cpuX/online
>
> So, how about add the information?

>From what I remember you need a special kind of hardware too, one that
doesn't preserve cpu numbers across hotplug. Most systems do; just not
this magic special one.

We want to fix that, but the only reason for this patch is consistency
with the rest of the code, we do indeed clear and set these bits in all
other masks, but not this one.

But yes, the Changelog needs help.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/