| To: | Dave Chinner <david@xxxxxxxxxxxxx> |
|---|---|
| Subject: | Re: Request for information on bloated writes using Swift |
| From: | Dilip Simha <nmdilipsimha@xxxxxxxxx> |
| Date: | Tue, 2 Feb 2016 23:09:15 -0800 |
| Cc: | Eric Sandeen <sandeen@xxxxxxxxxxx>, xfs@xxxxxxxxxxx |
| Delivered-to: | xfs@xxxxxxxxxxx |
| Dkim-signature: | v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc:content-type; bh=89dJ8HCn6S/6Xk+z34GnBoT3fzLNV7s3BI1LAPh/xNg=; b=lH2BmlXq723cNUiF/CJIkPMbIE6TZKSH4boKdds1Oq1f4X0fgmZ92z5cZ/xz04PhA4 szHthgIxLz8y8XG/aoMtDYA9f6AP6N2sjAFmJx7d43RVsn/u5DgY7vFMaSYmdvty8bSJ 31qA70ijelxxwaQwVs9vFBtnSz1yUqeUL6JfzvqMXINl44z/5LD8/4r3TLLC4ZIS5qCl Fi5yZdxRVve/ORACh1jIdw0solLI/YgibxTwkezJunOTkA2JXtQD8nL7ZsuD/CNvwj81 n4BWuScZApgZfDo8Mcn7nC5l7CALLW1fizIuSiVVTywDOHtXwoyzK9Yl3o5dd9fBy807 f+7w== |
| In-reply-to: | <20160203063705.GB459@dastard> |
| References: | <CAFHL4X1JU02LFYntkqhYg1N++ZU46ML3v5higo1nRsPyoZxL5A@xxxxxxxxxxxxxx> <56B16A3C.1030207@xxxxxxxxxxx> <CAFHL4X0QBtFpz3=HMVMrp6NoaW5BRkDSoTE1yJQvQ=0JrW5+YQ@xxxxxxxxxxxxxx> <20160203063705.GB459@dastard> |
|
Hi Dave,
On Tue, Feb 2, 2016 at 10:37 PM, Dave Chinner <david@xxxxxxxxxxxxx> wrote: On Tue, Feb 02, 2016 at 07:40:34PM -0800, Dilip Simha wrote: Thank you for the details. This is exactly where I am a bit perplexed. Since the reclamation logic skips inodes that have the XFS_DIFLAG_PREALLOC flag set, why did the allocation logic allot more blocks on such an inode? My understanding is that the fallocate caller only requested for 256K worth of blocks to be available sequentially if possible. On any subsequent write beyond the EOF, the caller is completely unaware of the underlying file-system storing that data adjacent to the first 256K data. Since XFS is speculatively allocating additional space (512K) adjacent to the first 256K data, I would expect XFS to either treat these two allocations distinctly and NOT mark XFS_DIFLAG_PREALLOC on the additional 512K data(minus the actually used additional data="" OR remove XFS_DIFLAG_PREALLOC flag on the entire inode. Also, is there any way I can check for this flag? The FLAGS, as observed from xfs_bmap doesn't show any flags set to it. Am I not looking at the right flags? # xfs_bmap -lpv /srv/node/r16/objects/10/ff3/55517cd029bee36151a5098ce7cdeff3/1453771923.11401.data /srv/node/r16/objects/10/ff3/55517cd029bee36151a5098ce7cdeff3/1453771923.11401.data: EXT: FILE-OFFSET BLOCK-RANGE AG AG-OFFSET TOTAL FLAGS 0: [0..1535]: 1465876416..1465877951 1 (744384..745919) 1536 00000 Thanks & Regards, Dilip
|
| Previous by Date: | Re: Request for information on bloated writes using Swift, Dave Chinner |
|---|---|
| Next by Date: | Re: Request for information on bloated writes using Swift, Dave Chinner |
| Previous by Thread: | Re: Request for information on bloated writes using Swift, Dave Chinner |
| Next by Thread: | Re: Request for information on bloated writes using Swift, Dave Chinner |
| Indexes: | [Date] [Thread] [Top] [All Lists] |