Hi, Will
Thanks for your reply!
There are absolutely privileged registers, and seriously expose the interface 
directly! 
However, these interfaces (/dev/cpu/<N>/msr) need permissions to access, so 
there should be few security issues. In addition, it may be due to my unclear 
description above. This driver is mainly a debugging tool. It make developers 
can easily get the values of some system registers without modifying the kernel.
In fact, we first considered the /dev/mem solution, but it seems that /dev/mem 
can map peripheral or IO registers, but not system registers.

> 2020年12月1日 上午1:57,Will Deacon <w...@kernel.org> 写道:
> 
> On Tue, Dec 01, 2020 at 01:48:30AM +0800, Rongwei Wang wrote:
>> MSR ARM driver aims to provide interfacs for user to read or write data to 
>> all
>> system registers. Its functions is same as MSR driver (x86 platform). It 
>> mainly
>> depends on kprobe and undef exception to read or write system registers
>> dynamicly.
> 
> ... but why? These are privileged registers for a reason, and giving
> userspace access to them is bound to cause serious problems. Why can't we
> do whatever it is that userspace is trying to do by poking these things in
> the kernel instead? This interface is a bit like using /dev/mem instead of
> writing a proper device driver.
> 
> Thanks,
> 
> Will

Reply via email to