On Fri, Aug 27, 2021 at 12:23 PM Al Viro <viro@xxxxxxxxxxxxxxxxxx> wrote: > > Could you show the cases where "partial copy, so it's OK" behaviour would > break anything? Absolutely. For example, i t would cause an infinite loop in restore_fpregs_from_user() if the "buf" argument is a situation where the first page is fine, but the next page is not. Why? Because __restore_fpregs_from_user() would take a fault, but then fault_in_pages_readable() (renamed) would succeed, so you'd just do that "retry" forever and ever. Probably there are a number of other places too. That was literally the *first* place I looked at. Seriously. The current semantics are "check the whole area". THOSE MUST NOT CHANGE. Linus