[lm-sensors] [PATCH] hwmon: coretemp: use list instead of fixed size array for temp data
Kirill A. Shutemov
kirill.shutemov at linux.intel.com
Thu May 3 12:04:09 CEST 2012
On Thu, May 03, 2012 at 05:29:43AM +0000, R, Durgadoss wrote:
> > @@ -707,14 +787,12 @@ static void __cpuinit put_core_offline(unsigned int cpu)
> >
> > pdata = platform_get_drvdata(pdev);
> >
> > - indx = TO_ATTR_NO(cpu);
> > -
> > - /* The core id is too big, just return */
> > - if (indx > MAX_CORE_DATA - 1)
> > - return;
> > + attr_no = TO_ATTR_NO(cpu);
> >
> > - if (pdata->core_data[indx] && pdata->core_data[indx]->cpu == cpu)
> > - coretemp_remove_core(pdata, &pdev->dev, indx);
> > + tdata = get_temp_data(pdata, attr_no);
> > + if (tdata->cpu == cpu)
>
> The get_temp_data can return a NULL. So, you might want to do,
> if (tdata && tdata->cpu == cpu) to avoid a potential NULL ptr crash.
Good catch, thanks.
> In general, why are we using spin_locks instead of mutex_locks,
> for list manipulations .. ?
I don't think it matters here. Contention is low and nobody sleeps, but
okay, I'll change it to mutex.
--
Kirill A. Shutemov
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.lm-sensors.org/pipermail/lm-sensors/attachments/20120503/d2b08044/attachment.sig>
More information about the lm-sensors
mailing list