xfs
[Top] [All Lists]

Re: [PATCH 45/49] xfs: avoid CIL allocation during insert

To: Dave Chinner <david@xxxxxxxxxxxxx>
Subject: Re: [PATCH 45/49] xfs: avoid CIL allocation during insert
From: Mark Tinguely <tinguely@xxxxxxx>
Date: Mon, 29 Jul 2013 13:13:08 -0500
Cc: xfs@xxxxxxxxxxx
Delivered-to: xfs@xxxxxxxxxxx
In-reply-to: <1374215120-7271-46-git-send-email-david@xxxxxxxxxxxxx>
References: <1374215120-7271-1-git-send-email-david@xxxxxxxxxxxxx> <1374215120-7271-46-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>

Now that we have the size of the log vector that has been allocated,
we can determine if we need to allocate a new log vector for
formatting and insertion. We only need to allocate a new vector if
it won't fit into the existing buffer.

However, we need to hold the CIL context lock while we do this so
that we can't race with a push draining the currently queued log
vectors. It is safe to do this as long as we do GFP_NOFS allocation
to avoid avoid memory allocation recursing into the filesystem.
Hence we can safely overwrite the existing log vector on the CIL if
it is large enough to hold all the dirty regions of the current
item.

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

back to the CIl commit opt series now that the log space leak has been found..

Looks good - avoid allocation if dirtying existing dirty chunks. Remove the IOP_PIN

Reviewed-by: Mark Tinguely <tinguely@xxxxxxx>

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