scratch_alloc() set scratch_start to the last byte of the current
allocation. The value of scratch_start is then reused as is (if it is
already aligned) in the next allocation. This result in a potential reuse
of the last byte of the previous allocation.
Signed-off-by: Anthony PERARD <anthony.perard@citrix.com>
Reviewed-by: Jan Beulich <jbeulich@suse.com>
if ( align < 16 )
align = 16;
- s = (scratch_start + align - 1) & ~(align - 1);
+ s = (scratch_start + align) & ~(align - 1);
e = s + size - 1;
BUG_ON(e < s);