Re: [PATCH 1/8] pmem: Initial version of persistent memory driver

From: Andy Lutomirski
Date: Thu Mar 05 2015 - 18:03:40 EST


On Mar 5, 2015 3:55 AM, "Boaz Harrosh" <boaz@xxxxxxxxxxxxx> wrote:
>
> From: Ross Zwisler <ross.zwisler@xxxxxxxxxxxxxxx>
>
> PMEM is a new driver That supports any physical contiguous iomem range
> as a single block device. The driver has support for as many as needed
> iomem ranges each as its own device.
>
> The driver is not only good for NvDIMMs, It is good for any flat memory
> mapped device. We've used it with NvDIMMs, Kernel reserved DRAM
> (memmap= on command line), PCIE Battery backed memory cards, VM shared
> memory, and so on.
>
> The API to pmem module a single string parameter named "map"
> of the form:
> map=mapS[,mapS...]
>
> where mapS=nn[KMG]$ss[KMG],
> or mapS=nn[KMG]@ss[KMG],
>
> nn=size, ss=offset
>
> Just like the Kernel command line map && memmap parameters,
> so anything you did at grub just copy/paste to here.
>
> The "@" form is exactly the same as the "$" form only that
> at bash prompt we need to escape the "$" with \$ so also
> support the '@' char for convenience.
>
> For each specified mapS there will be a device created.

[...]

> + pmem->virt_addr = ioremap_cache(pmem->phys_addr, pmem->size);

I think it would be nice to have control over the caching mode.
Depending on the application, WT or UC could make more sense.

--Andy
--
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/