Re: what's in nvdimm.git for v4.4?
From: Dan Williams
Date: Wed Oct 21 2015 - 18:50:12 EST
On Wed, Oct 21, 2015 at 3:36 PM, Elliott, Robert (Persistent Memory)
<elliott@xxxxxxx> wrote:
>
>
>> -----Original Message-----
>> From: Linux-nvdimm [mailto:linux-nvdimm-bounces@xxxxxxxxxxxx] On Behalf Of
>> Jan Kara
>> Sent: Wednesday, October 21, 2015 4:08 AM
> ...
>> On Tue 20-10-15 17:31:18, Dan Williams wrote:
>> > On Tue, Oct 20, 2015 at 5:01 PM, Dave Chinner <david@xxxxxxxxxxxxx>
> ...
>> > I'm wondering if we can take a conservative step forward with those
>> > patches for 4.4. if XFS and EXT4 interactions need more time to get
>> > worked out, which I believe they do, I can conceive just turning on
>> > get_user_pages() support for DAX-mappings of the raw block device.
>> > This would be via the new facility I posted yesterday:
>> > https://lists.01.org/pipermail/linux-nvdimm/2015-October/002512.html.
>> > While not very functional for applications it makes testing base DAX
>> > mechanisms straightforward.
>>
>> I had a look at the patch and I miss one thing: Why do we need bd_mutex
>> to protect faults? I see a comment there:
>>
>> /* check that the faulting page hasn't raced with bdev resize */
>>
>> Is it really possible that bdev gets shrunk under us? Hum, looking into
>> fs/block_dev.c, probably it is. But there are other places - like DIO path
>> - assuming that block device mapping cannot just disappear from under us.
>> I wonder how that would cope with bdev size change...
>
> DIO_IGNORE_TRUNCATE was added to eliminate an awful lot of CPU
> time incrementing and decrementing i_dio_count for direct IO
> to block devices, especially at pmem type speeds. I hope
> that kind of accounting doesn't need to be brought back.
>
> https://lkml.org/lkml/2015/4/3/557
> https://lkml.org/lkml/2015/4/15/590
Thanks for that reminder Robert. I think this backs up my suspicion
that the base mmap_sem protections should be enough for raw block mmap
+ DAX.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/