From: Thomas Gleixner Date: Thu, 10 Dec 2009 14:35:10 +0000 (+0100) Subject: clockevents: Prevent clockevent_devices list corruption on cpu hotplug X-Git-Tag: v2.6.33-rc2~50^2~1 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=bb6eddf7676e1c1f3e637aa93c5224488d99036f;p=pandora-kernel.git clockevents: Prevent clockevent_devices list corruption on cpu hotplug Xiaotian Feng triggered a list corruption in the clock events list on CPU hotplug and debugged the root cause. If a CPU registers more than one per cpu clock event device, then only the active clock event device is removed on CPU_DEAD. The unused devices are kept in the clock events device list. On CPU up the clock event devices are registered again, which means that we list_add an already enqueued list_head. That results in list corruption. Resolve this by removing all devices which are associated to the dead CPU on CPU_DEAD. Reported-by: Xiaotian Feng Signed-off-by: Thomas Gleixner Tested-by: Xiaotian Feng Cc: stable@kernel.org --- Reading git-diff-tree failed