Re: [PATCH 1/2] btrfs: Implement DRW lock

From: David Sterba
Date: Wed Jun 12 2019 - 10:09:29 EST


On Thu, Jun 06, 2019 at 04:52:18PM +0300, Nikolay Borisov wrote:
> A (D)ouble (R)eader (W)riter lock is a locking primitive that allows
> to have multiple readers or multiple writers but not multiple readers
> and writers holding it concurrently. The code is factored out from
> the existing open-coded locking scheme used to exclude pending
> snapshots from nocow writers and vice-versa. Current implementation
> actually favors Readers (that is snapshot creaters) to writers (nocow
> writers of the filesystem).
>
> Signed-off-by: Nikolay Borisov <nborisov@xxxxxxxx>
> ---
> fs/btrfs/Makefile | 2 +-
> fs/btrfs/drw_lock.c | 71 +++++++++++++++++++++++++++++++++++++++++++++
> fs/btrfs/drw_lock.h | 23 +++++++++++++++

In v2, please use locking.[ch] instead of new files.