xfs
[Top] [All Lists]

Re: A blocksize problem about dax and ext4

To: Cholerae Hu <choleraehyq@xxxxxxxxx>
Subject: Re: A blocksize problem about dax and ext4
From: Dan Williams <dan.j.williams@xxxxxxxxx>
Date: Wed, 23 Dec 2015 16:58:14 -0800
Cc: Dave Chinner <david@xxxxxxxxxxxxx>, "Elliott, Robert (Persistent Memory)" <elliott@xxxxxxx>, Ted Tso <tytso@xxxxxxx>, "adilger.kernel@xxxxxxxxx" <adilger.kernel@xxxxxxxxx>, "linux-nvdimm@xxxxxxxxxxxx" <linux-nvdimm@xxxxxxxxxxxx>, "linux-ext4@xxxxxxxxxxxxxxx" <linux-ext4@xxxxxxxxxxxxxxx>, "xfs@xxxxxxxxxxx" <xfs@xxxxxxxxxxx>, "linux-kernel@xxxxxxxxxxxxxxx" <linux-kernel@xxxxxxxxxxxxxxx>
Delivered-to: xfs@xxxxxxxxxxx
Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=intel-com.20150623.gappssmtp.com; s=20150623; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=12wCUDwqO4J9j9UH9nVA1iAL4BFAcBAK2R6cEiAV+RE=; b=VOvZal4BgsSGlUQ/jwa4JF9/hVOlU1I5CG4ecQjpgaEc0+yIynAn3Qk2xeEdaBamx3 gpnhIciuUMQ8zufOxgmF1eMk7KvkHpkfuNF+A3ZoXqkzhwwz6cfnQpfLBstpap5ZVUZI x4YUbU2BHbzDCa3KRRMW64zCKZb53vWI9VtQTvZ2wtwsQ2hR6N9DqMkI7X1+sti8b5M3 PeXVQ2+6WwBxLSaafb0qYe82jdQokWPuLkfBdHzMomhBplEgoGbiOjH6nt0A36lzlmfN zbrL+mD0f6G70lh/tkGAlftnrZ/VX8vvpSiyhlxQ2ZTZuoycg13t+n/f+wT0tbb5ZybL 1zjQ==
In-reply-to: <CAM=YXF9Dt-BuY9yM7d023a16gp=edGHeCDVTCwV-AEotj6sbFg@xxxxxxxxxxxxxx>
References: <CAM=YXF-aXxp19=uFDExUswpEfKXNN6LJScxAB-7-u-AgRiXJ2g@xxxxxxxxxxxxxx> <CAPcyv4gYHuSWuugnELSO6B1rye+b89io3zJVUXwRt0wE1ZfPrA@xxxxxxxxxxxxxx> <94D0CD8314A33A4D9D801C0FE68B40295BEC985F@xxxxxxxxxxxxxxxxxxxxxxxxxxxx> <20151224000021.GU19802@dastard> <CAM=YXF9Dt-BuY9yM7d023a16gp=edGHeCDVTCwV-AEotj6sbFg@xxxxxxxxxxxxxx>
On Wed, Dec 23, 2015 at 4:34 PM, Cholerae Hu <choleraehyq@xxxxxxxxx> wrote:
> The block size is 1024.
> # dumpe2fs -h /dev/pmem0 | grep "Block size"
> dumpe2fs 1.42.13 (17-May-2015)
> Block size:               1024
>
> I tried it out on xfs and I succeeded. There are the prompting messages:
> # mkfs.xfs -f -b size=1024 /dev/pmem0
> meta-data=/dev/pmem0             isize=512    agcount=4, agsize=32768 blks
>          =                       sectsz=512   attr=2, projid32bit=1
>          =                       crc=1        finobt=1
> data     =                       bsize=1024   blocks=131072, imaxpct=25
>          =                       sunit=0      swidth=0 blks
> naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
> log      =internal log           bsize=1024   blocks=2571, version=2
>          =                       sectsz=512   sunit=0 blks, lazy-count=1
> realtime =none                   extsz=4096   blocks=0, rtextents=0
> # mount -o dax /dev/pmem0 /mnt/mem
>
> The mount command doesn't return any message, and I can successfully read or
> write files in /mnt/mem.
>

xfs will silently disable dax when the fs block size is too small,
i.e. your mmap() operations are backed by page cache in this case.
Currently the only indication of whether a mapping is DAX backed or
not is the presence of the VM_MIXEDMAP flag ("mm" in the VmFlags field
of /proc/<pid>/smaps)

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