[Top] [All Lists]

Re: [PATCH 47/49] xfs: split the CIL lock

To: Dave Chinner <david@xxxxxxxxxxxxx>
Subject: Re: [PATCH 47/49] xfs: split the CIL lock
From: Mark Tinguely <tinguely@xxxxxxx>
Date: Mon, 29 Jul 2013 17:24:14 -0500
Cc: xfs@xxxxxxxxxxx
Delivered-to: xfs@xxxxxxxxxxx
In-reply-to: <1374215120-7271-48-git-send-email-david@xxxxxxxxxxxxx>
References: <1374215120-7271-1-git-send-email-david@xxxxxxxxxxxxx> <1374215120-7271-48-git-send-email-david@xxxxxxxxxxxxx>
User-agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:9.0) Gecko/20120122 Thunderbird/9.0
On 07/19/13 01:25, Dave Chinner wrote:
From: Dave Chinner<dchinner@xxxxxxxxxx>

The xc_cil_lock is used for two purposes - to protect the CIL
itself, and to protect the push/commit state and lists. These are
two logically separate structures and operations, so can have their
own locks. This means that pushing on the CIL and the commit wait
ordering won't contend for a lock with other transactions that are
completing concurrently. As the CIL insertion is the hottest path
throught eh CIL, this is a big win.

Signed-off-by: Dave Chinner<dchinner@xxxxxxxxxx>

read semaphore/xc_cil_lock (original lock) protects cil entries
write semaphore/xc_push_lock (new lock) protects the cil push

Looks good.

Review-by: Mark Tinguely <tinguely@xxxxxxx>

<Prev in Thread] Current Thread [Next in Thread>