| To: | Dave Chinner <david@xxxxxxxxxxxxx> |
|---|---|
| Subject: | Re: [PATCH 45/50] xfs: avoid CIL allocation during insert |
| From: | Mark Tinguely <tinguely@xxxxxxx> |
| Date: | Tue, 13 Aug 2013 08:37:47 -0500 |
| Cc: | xfs@xxxxxxxxxxx |
| Delivered-to: | xfs@xxxxxxxxxxx |
| In-reply-to: | <1376304611-22994-46-git-send-email-david@xxxxxxxxxxxxx> |
| References: | <1376304611-22994-1-git-send-email-david@xxxxxxxxxxxxx> <1376304611-22994-46-git-send-email-david@xxxxxxxxxxxxx> |
| User-agent: | Mozilla/5.0 (X11; FreeBSD amd64; rv:9.0) Gecko/20120122 Thunderbird/9.0 |
On 08/12/13 05:50, 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> --- Looks good. Reviewed-by: Mark Tinguely <tinguely@xxxxxxx> |
| Previous by Date: | Re: [PATCH 44/50] xfs: Reduce allocations during CIL insertion, Mark Tinguely |
|---|---|
| Next by Date: | Re: [PATCH 46/50] xfs: Combine CIL insert and prepare passes, Mark Tinguely |
| Previous by Thread: | ***** SUSPECTED SPAM ***** [PATCH 45/50] xfs: avoid CIL allocation during insert, Dave Chinner |
| Next by Thread: | ***** SUSPECTED SPAM ***** [PATCH 47/50] xfs: split the CIL lock, Dave Chinner |
| Indexes: | [Date] [Thread] [Top] [All Lists] |