From: Juergen Gross > Sent: 12 May 2021 09:58 > > On 12.05.21 10:50, 'Joerg Roedel' wrote: > > On Wed, May 12, 2021 at 10:16:12AM +0200, Juergen Gross wrote: > >> You want something like xen_safe_[read|write]_ulong(). > > > > From a first glance I can't see it, what is the difference between the > > xen_safe_*_ulong() functions and __get_user()/__put_user()? The only > > difference I can see is that __get/__put_user() support different access > > sizes, but neither of those disables page-faults by itself, for example. > > > > Couldn't these xen-specific functions not also be replaces by > > __get_user()/__put_user()? > > No, those were used before, but commit 9da3f2b7405440 broke Xen's use > case. That is why I did commit 1457d8cf7664f. I've just looked at 9da3f2b7405440. It doesn't look right to me - wrong return value for a lot of cases. OTOH it isn't in my newest tree at all. If bogus_uaccess() is now elsewhere I can't see how (without changes) it would allow through these faults. David - Registered Address Lakeside, Bramley Road, Mount Farm, Milton Keynes, MK1 1PT, UK Registration No: 1397386 (Wales)