On 7/19/19 2:45 PM, Luis Henriques wrote: > On Mon, May 20, 2019 at 04:59:12PM -0400, Waiman Long wrote: >> The rwsem->owner contains not just the task structure pointer, it also >> holds some flags for storing the current state of the rwsem. Some of >> the flags may have to be atomically updated. To reflect the new reality, >> the owner is now changed to an atomic_long_t type. >> >> New helper functions are added to properly separate out the task >> structure pointer and the embedded flags. > I started seeing KASAN use-after-free with current master, and a bisect > showed me that this commit 94a9717b3c40 ("locking/rwsem: Make > rwsem->owner an atomic_long_t") was the problem. Does it ring any > bells? I can easily reproduce it with xfstests (generic/464). > > Cheers, > -- > Luís
This patch shouldn't change the behavior of the rwsem code. The code only access data within the rw_semaphore structures. I don't know why it will cause a KASAN error. I will have to reproduce it and figure out exactly which statement is doing the invalid access. Thanks, Longman