Re: [PATCH 5/5] dax: "Hotplug" persistent memory for use like normal RAM

From: Dan Williams
Date: Tue Feb 12 2019 - 19:30:30 EST


On Tue, Feb 12, 2019 at 11:59 AM Brice Goglin <Brice.Goglin@xxxxxxxx> wrote:
>
> Le 11/02/2019 Ã 17:22, Dave Hansen a Ãcrit :
>
> > On 2/9/19 3:00 AM, Brice Goglin wrote:
> >> I've used your patches on fake hardware (memmap=xx!yy) with an older
> >> nvdimm-pending branch (without Keith's patches). It worked fine. This
> >> time I am running on real Intel hardware. Any idea where to look ?
> > I've run them on real Intel hardware too.
> >
> > Could you share the exact sequence of commands you're issuing to
> > reproduce the hang? My guess would be that there's some odd interaction
> > between Dan's latest branch and my now (slightly) stale patches.
> >
> > I'll refresh them this week and see if I can reproduce what you're seeing.
>
> # ndctl disable-region all
> # ndctl zero-labels all
> # ndctl enable-region region0
> # ndctl create-namespace -r region0 -t pmem -m devdax
> {
> "dev":"namespace0.0",
> "mode":"devdax",
> "map":"dev",
> "size":"1488.37 GiB (1598.13 GB)",
> "uuid":"ad0096d7-3fe7-4402-b529-ad64ed0bf789",
> "daxregion":{
> "id":0,
> "size":"1488.37 GiB (1598.13 GB)",
> "align":2097152,
> "devices":[
> {
> "chardev":"dax0.0",
> "size":"1488.37 GiB (1598.13 GB)"
> }
> ]
> },
> "align":2097152
> }
> # ndctl enable-namespace namespace0.0
> # echo -n dax0.0 > /sys/bus/dax/drivers/device_dax/remove_id
> <hang>
>
> I tried with and without dax_pmem_compat loaded, but it doesn't help.

I think this is due to:

a9f1ffdb6a20 device-dax: Auto-bind device after successful new_id

I missed that this path is also called in the remove_id path. Thanks
for the bug report! I'll get this fixed up.