* qemu-emulated nfit devices disappeared @ 2021-11-04 7:27 Christoph Hellwig 2021-11-04 16:00 ` Dan Williams 0 siblings, 1 reply; 7+ messages in thread From: Christoph Hellwig @ 2021-11-04 7:27 UTC (permalink / raw) To: nvdimm [-- Attachment #1: Type: text/plain, Size: 737 bytes --] I've update my typical test configs last week without saving the old ones, and now the Qemu emulated NFIT devices don't show anyway more despite the kernel showing a NFIT table: # mesg | grep -i nfit [ 0.009184] ACPI: NFIT 0x00000000BFFE02FA 000198 (v01 BOCHS BXPCNFIT 00000001 BXPC 00000001) [ 0.009206] ACPI: Reserving NFIT table memory at [mem 0xbffe02fa-0xbffe0491] # lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 8M 0 disk sr0 11:0 1 1024M 0 rom nullb0 250:0 0 250G 0 disk vda 252:0 0 10G 0 disk └─vda1 252:1 0 10G 0 part / Any idea what might be missing in the attached config? This seems to be independent of the tested kernel version (5.14, 5.15, master). [-- Attachment #2: config.gz --] [-- Type: application/gzip, Size: 36548 bytes --] ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: qemu-emulated nfit devices disappeared 2021-11-04 7:27 qemu-emulated nfit devices disappeared Christoph Hellwig @ 2021-11-04 16:00 ` Dan Williams 2021-11-04 16:04 ` Christoph Hellwig 0 siblings, 1 reply; 7+ messages in thread From: Dan Williams @ 2021-11-04 16:00 UTC (permalink / raw) To: Christoph Hellwig; +Cc: Linux NVDIMM On Thu, Nov 4, 2021 at 12:27 AM Christoph Hellwig <hch@infradead.org> wrote: > > I've update my typical test configs last week without saving the old > ones, and now the Qemu emulated NFIT devices don't show anyway more > despite the kernel showing a NFIT table: > > # mesg | grep -i nfit > [ 0.009184] ACPI: NFIT 0x00000000BFFE02FA 000198 (v01 BOCHS BXPCNFIT 00000001 BXPC 00000001) > [ 0.009206] ACPI: Reserving NFIT table memory at [mem 0xbffe02fa-0xbffe0491] > > # lsblk > NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT > sda 8:0 0 8M 0 disk > sr0 11:0 1 1024M 0 rom > nullb0 250:0 0 250G 0 disk > vda 252:0 0 10G 0 disk > └─vda1 252:1 0 10G 0 part / > > Any idea what might be missing in the attached config? This seems to > be independent of the tested kernel version (5.14, 5.15, master). Can you share your qemu command line and the output of: ndctl list -vvv ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: qemu-emulated nfit devices disappeared 2021-11-04 16:00 ` Dan Williams @ 2021-11-04 16:04 ` Christoph Hellwig 2021-11-04 17:09 ` Dan Williams 0 siblings, 1 reply; 7+ messages in thread From: Christoph Hellwig @ 2021-11-04 16:04 UTC (permalink / raw) To: Dan Williams; +Cc: Christoph Hellwig, Linux NVDIMM On Thu, Nov 04, 2021 at 09:00:01AM -0700, Dan Williams wrote: > > Any idea what might be missing in the attached config? This seems to > > be independent of the tested kernel version (5.14, 5.15, master). > > Can you share your qemu command line qemu-system-x86_64 -enable-kvm \ -machine pc,nvdimm=on \ -m 4096,slots=8,maxmem=32G \ -smp 4 \ -kernel arch/x86/boot/bzImage \ -append "root=/dev/vda1 console=ttyS0,115200n8" \ -nographic \ -drive if=virtio,file=/home/hch/images/jessie.img,cache=none \ -object memory-backend-file,id=mem0,mem-path=/home/hch/images/test.img,share=yes,prealloc=no,align=128M,size=10G \ -device nvdimm,id=nvdimm0,memdev=mem0,slot=0,label-size=2M \ -object memory-backend-file,id=mem1,mem-path=/home/hch/images/scratch.img,share=yes,prealloc=no,align=128M,size=10G \ -device nvdimm,id=nvdimm1,memdev=mem1,slot=1,label-size=2M \ > and the output of: > > ndctl list -vvv [ { "provider":"ACPI.NFIT", "dev":"ndbus0", "dimms":[ { "dev":"nmem1", "id":"8680-57341200", "handle":2, "phys_id":0 }, { "dev":"nmem0", "id":"8680-56341200", "handle":1, "phys_id":0 } ], "regions":[ { "dev":"region1", "size":10603200512, "available_size":10603200512, "max_available_extent":10603200512, "type":"pmem", "iset_id":52512795602891997, "mappings":[ { "dimm":"nmem1", "offset":0, "length":10603200512, "position":0 } ], "persistence_domain":"unknown", "namespaces":[ { "dev":"namespace1.0", "mode":"raw", "size":0, "uuid":"00000000-0000-0000-0000-000000000000", "sector_size":512, "state":"disabled" } ] }, { "dev":"region0", "size":10603200512, "available_size":10603200512, "max_available_extent":10603200512, "type":"pmem", "iset_id":52512752653219036, "mappings":[ { "dimm":"nmem0", "offset":0, "length":10603200512, "position":0 } ], "persistence_domain":"unknown", "namespaces":[ { "dev":"namespace0.0", "mode":"raw", "size":0, "uuid":"00000000-0000-0000-0000-000000000000", "sector_size":512, "state":"disabled" } ] } ] } ] ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: qemu-emulated nfit devices disappeared 2021-11-04 16:04 ` Christoph Hellwig @ 2021-11-04 17:09 ` Dan Williams 2021-11-04 17:17 ` Christoph Hellwig 0 siblings, 1 reply; 7+ messages in thread From: Dan Williams @ 2021-11-04 17:09 UTC (permalink / raw) To: Christoph Hellwig; +Cc: Linux NVDIMM On Thu, Nov 4, 2021 at 9:04 AM Christoph Hellwig <hch@infradead.org> wrote: > > On Thu, Nov 04, 2021 at 09:00:01AM -0700, Dan Williams wrote: > > > Any idea what might be missing in the attached config? This seems to > > > be independent of the tested kernel version (5.14, 5.15, master). > > > > Can you share your qemu command line > > qemu-system-x86_64 -enable-kvm \ > -machine pc,nvdimm=on \ > -m 4096,slots=8,maxmem=32G \ > -smp 4 \ > -kernel arch/x86/boot/bzImage \ > -append "root=/dev/vda1 console=ttyS0,115200n8" \ > -nographic \ > -drive if=virtio,file=/home/hch/images/jessie.img,cache=none \ > -object memory-backend-file,id=mem0,mem-path=/home/hch/images/test.img,share=yes,prealloc=no,align=128M,size=10G \ > -device nvdimm,id=nvdimm0,memdev=mem0,slot=0,label-size=2M \ > -object memory-backend-file,id=mem1,mem-path=/home/hch/images/scratch.img,share=yes,prealloc=no,align=128M,size=10G \ > -device nvdimm,id=nvdimm1,memdev=mem1,slot=1,label-size=2M \ > > > > and the output of: > > > > ndctl list -vvv > > > [ > { > "provider":"ACPI.NFIT", > "dev":"ndbus0", > "dimms":[ > { > "dev":"nmem1", > "id":"8680-57341200", > "handle":2, > "phys_id":0 > }, > { > "dev":"nmem0", > "id":"8680-56341200", > "handle":1, > "phys_id":0 > } > ], > "regions":[ > { > "dev":"region1", > "size":10603200512, > "available_size":10603200512, Hmm, so the driver has 2 modes "labeled" and "label-less", in the labeled mode it waits for an explicit: ndctl create-namespace ...to provision region capacity into a namespace. In label-less mode it just assumes that the boundaries of the region are the boundaries of the namespace. In this case it looks like the driver found a label index block with no namespaces defined so it's waiting for one to be created. Are you saying that the only thing you changed from a working config with defined namespace to this one was a kernel change? I.e. the content of those memory-backend files has not changed? > "max_available_extent":10603200512, > "type":"pmem", > "iset_id":52512795602891997, > "mappings":[ > { > "dimm":"nmem1", > "offset":0, > "length":10603200512, > "position":0 > } > ], > "persistence_domain":"unknown", > "namespaces":[ > { > "dev":"namespace1.0", > "mode":"raw", > "size":0, > "uuid":"00000000-0000-0000-0000-000000000000", > "sector_size":512, > "state":"disabled" > } > ] > }, > { > "dev":"region0", > "size":10603200512, > "available_size":10603200512, > "max_available_extent":10603200512, > "type":"pmem", > "iset_id":52512752653219036, > "mappings":[ > { > "dimm":"nmem0", > "offset":0, > "length":10603200512, > "position":0 > } > ], > "persistence_domain":"unknown", > "namespaces":[ > { > "dev":"namespace0.0", > "mode":"raw", > "size":0, > "uuid":"00000000-0000-0000-0000-000000000000", > "sector_size":512, > "state":"disabled" > } > ] > } > ] > } > ] ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: qemu-emulated nfit devices disappeared 2021-11-04 17:09 ` Dan Williams @ 2021-11-04 17:17 ` Christoph Hellwig 2021-11-04 17:19 ` Christoph Hellwig 0 siblings, 1 reply; 7+ messages in thread From: Christoph Hellwig @ 2021-11-04 17:17 UTC (permalink / raw) To: Dan Williams; +Cc: Christoph Hellwig, Linux NVDIMM On Thu, Nov 04, 2021 at 10:09:37AM -0700, Dan Williams wrote: > Hmm, so the driver has 2 modes "labeled" and "label-less", in the > labeled mode it waits for an explicit: > > ndctl create-namespace > > ...to provision region capacity into a namespace. In label-less mode > it just assumes that the boundaries of the region are the boundaries > of the namespace. In this case it looks like the driver found a label > index block with no namespaces defined so it's waiting for one to be > created. Are you saying that the only thing you changed from a working > config with defined namespace to this one was a kernel change? I.e. > the content of those memory-backend files has not changed? Well, the config change is the only thing I though of as relevant. The content of those files actually changes all the time, as I also use them as the backing store for my qemu configs that use block devices. E.g. the previous run they did show up as NVMe devices. ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: qemu-emulated nfit devices disappeared 2021-11-04 17:17 ` Christoph Hellwig @ 2021-11-04 17:19 ` Christoph Hellwig 2021-11-04 17:21 ` Dan Williams 0 siblings, 1 reply; 7+ messages in thread From: Christoph Hellwig @ 2021-11-04 17:19 UTC (permalink / raw) To: Dan Williams; +Cc: Christoph Hellwig, Linux NVDIMM On Thu, Nov 04, 2021 at 10:17:31AM -0700, Christoph Hellwig wrote: > On Thu, Nov 04, 2021 at 10:09:37AM -0700, Dan Williams wrote: > > Hmm, so the driver has 2 modes "labeled" and "label-less", in the > > labeled mode it waits for an explicit: > > > > ndctl create-namespace > > > > ...to provision region capacity into a namespace. In label-less mode > > it just assumes that the boundaries of the region are the boundaries > > of the namespace. In this case it looks like the driver found a label > > index block with no namespaces defined so it's waiting for one to be > > created. Are you saying that the only thing you changed from a working > > config with defined namespace to this one was a kernel change? I.e. > > the content of those memory-backend files has not changed? > > Well, the config change is the only thing I though of as relevant. > The content of those files actually changes all the time, as I also > use them as the backing store for my qemu configs that use block > devices. E.g. the previous run they did show up as NVMe devices. Ok, blowing the files away and recreating them makes the pmem devices show up again. ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: qemu-emulated nfit devices disappeared 2021-11-04 17:19 ` Christoph Hellwig @ 2021-11-04 17:21 ` Dan Williams 0 siblings, 0 replies; 7+ messages in thread From: Dan Williams @ 2021-11-04 17:21 UTC (permalink / raw) To: Christoph Hellwig; +Cc: Linux NVDIMM On Thu, Nov 4, 2021 at 10:20 AM Christoph Hellwig <hch@infradead.org> wrote: > > On Thu, Nov 04, 2021 at 10:17:31AM -0700, Christoph Hellwig wrote: > > On Thu, Nov 04, 2021 at 10:09:37AM -0700, Dan Williams wrote: > > > Hmm, so the driver has 2 modes "labeled" and "label-less", in the > > > labeled mode it waits for an explicit: > > > > > > ndctl create-namespace > > > > > > ...to provision region capacity into a namespace. In label-less mode > > > it just assumes that the boundaries of the region are the boundaries > > > of the namespace. In this case it looks like the driver found a label > > > index block with no namespaces defined so it's waiting for one to be > > > created. Are you saying that the only thing you changed from a working > > > config with defined namespace to this one was a kernel change? I.e. > > > the content of those memory-backend files has not changed? > > > > Well, the config change is the only thing I though of as relevant. > > The content of those files actually changes all the time, as I also > > use them as the backing store for my qemu configs that use block > > devices. E.g. the previous run they did show up as NVMe devices. > > Ok, blowing the files away and recreating them makes the pmem > devices show up again. > Cool, yeah, I was going to guess the label area might have been clobbered, but there was just enough left to force the driver into labeled mode. You can verify with something like: ndctl read-labels -I -j all ...to see if nvdimms have label index blocks. ^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2021-11-04 17:21 UTC | newest] Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2021-11-04 7:27 qemu-emulated nfit devices disappeared Christoph Hellwig 2021-11-04 16:00 ` Dan Williams 2021-11-04 16:04 ` Christoph Hellwig 2021-11-04 17:09 ` Dan Williams 2021-11-04 17:17 ` Christoph Hellwig 2021-11-04 17:19 ` Christoph Hellwig 2021-11-04 17:21 ` Dan Williams
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).