On Sun, Nov 22, 2020 at 06:56:24AM +0000, Chatradhi, Naveen Krishna wrote:
[AMD Official Use Only - Approved for External Use]
Hi Guenter, Salvatore
This is very unusual, and may mess up the "sensors" command. What problem is this trying to solve ?
Guenter, sorry for the delayed response. This fix is required to address the possible side channel attack reported in CVE-2020-12912.
[ ... ]
?
Yes, Salvatore, thanks for bringing the links.
A much better fix would have been to cache RAPL data for a short period of time. To avoid any possibility of attacks, maybe add some random interval. Something like this:
In accumulate_delta(): accums->next_update = jiffies + HZ / 2 + get_random_int % HZ;
In amd_energy_read(): accum = &data->accums[channel]; if (time_after(accum->next_update)) accumulate_delta(data, channel, cpu, reg); *val = div64_ul(accum->energy_ctr * 1000000UL, BIT(data->energy_units));
and drop amd_add_delta().
Guenter