Re: [PATCH] sched: fix a potential double-fetch bug in sched_copy_attr
From: Peter Zijlstra
Date: Mon Jan 07 2019 - 12:11:09 EST
On Tue, Dec 25, 2018 at 04:16:47PM -0600, Kangjie Lu wrote:
> "uattr->size" is copied in from user space and checked. However, it is
> copied in again after the security check. A malicious user may race to
> change it. The fix checks if uattr->size is ever changed after the
> check.
>
> Signed-off-by: Kangjie Lu <kjlu@xxxxxxx>
> ---
> + /* Sanity check if size was changed in user space */
> + if (attr->size != size)
> + return -EINVAL;
> +
What perf_copy_attr() does (from whence we copied this code) is:
attr->size = size;
Would that not also fix things?