On Tue, May 01, 2012 at 08:20:14AM -0700, Guenter Roeck wrote: > On Mon, Apr 30, 2012 at 09:18:01AM -0400, Kirill A. Shutemov wrote: > > From: "Kirill A. Shutemov" <kirill.shutemov@xxxxxxxxxxxxxxx> > > > > coretemp tries to access core_data array beyond bounds on cpu unplug if > > core id of the cpu if more than NUM_REAL_CORES-1. > > > [ ... ] > > > > Signed-off-by: Kirill A. Shutemov <kirill.shutemov@xxxxxxxxxxxxxxx> > > Looking at it again, you were right. Adding the check to get_core_online() > doesn't really help as the platform device is per CPU, not per core. > > Applied. I'll submit a separate patch to increase NUM_REAL_CORES. Actually, the problem is bigger. Documentation/cputopology.txt: ==== 2) /sys/devices/system/cpu/cpuX/topology/core_id: the CPU core ID of cpuX. Typically it is the hardware platform's identifier (rather than the kernel's). The actual value is architecture and platform dependent. ==== We should not use core id as an index in an array since it's an arbitrary number (from kernel POV). -- Kirill A. Shutemov _______________________________________________ lm-sensors mailing list lm-sensors@xxxxxxxxxxxxxx http://lists.lm-sensors.org/mailman/listinfo/lm-sensors