lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20180515180549.GP12217@hirez.programming.kicks-ass.net>
Date:   Tue, 15 May 2018 20:05:49 +0200
From:   Peter Zijlstra <peterz@...radead.org>
To:     Waiman Long <longman@...hat.com>
Cc:     Ingo Molnar <mingo@...hat.com>,
        Thomas Gleixner <tglx@...utronix.de>,
        linux-kernel@...r.kernel.org, linux-fsdevel@...r.kernel.org,
        Davidlohr Bueso <dave@...olabs.net>,
        "Theodore Y. Ts'o" <tytso@....edu>,
        Oleg Nesterov <oleg@...hat.com>,
        Amir Goldstein <amir73il@...il.com>, Jan Kara <jack@...e.cz>,
        Matthew Wilcox <willy@...radead.org>
Subject: Re: [PATCH v3 2/2] locking/percpu-rwsem: Annotate rwsem ownership
 transfer by setting RWSEM_OWNER_UNKNOWN

On Tue, May 15, 2018 at 02:02:00PM -0400, Waiman Long wrote:
> On 05/15/2018 01:58 PM, 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 am just trying not to expose internal working of rwsem, but I can
> document that one of the bits is the real deal without specifying which one.

Thing is, you don't want someone changing this without knowing about
that one magic bit. It doesn't hurt to be explicit here.

Also, do we want -1L instead of a -1 literal?

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ