On Tue, May 15, 2018 at 07:58:05PM +0200, Peter Zijlstra wrote: > On Tue, May 15, 2018 at 01:38:04PM -0400, Waiman Long wrote: > > +/* > > + * Owner value to indicate the rwsem's owner is not currently known. > > + */ > > +#define RWSEM_OWNER_UNKNOWN ((struct task_struct *)-1) > > It might be nice to comment that this works and relies on having that > ANON_OWNER bit set. I'd rather change the definition to be ((struct task_struct *)2) otherwise this is both reader-owned and anonymously-owned which doesn't make much sense.