> 2.  2 nvdimm will make daxctl-devices.sh FAIL

Do you mean a system with real nvdimms makes daxctl-devices.sh fail?
=>
No, I mean daxctl-devices.sh FAIL happen if I have mem1(nv1) and mem2(nv2) with 
following cmd.
If ONLY have mem1(nv1), daxctl-devices.sh will PASS.

qemu-system-x86_64 /root/vm/ubuntu-red_ndctltest_VM.img \
-m 16G,slots=4,maxmem=512G \
-smp 40 \
-machine pc,accel=kvm,nvdimm=on \
-enable-kvm \
-cpu kvm64 \
-object memory-backend-file,id=mem1,share,mem-path=/root/vm/tmp/nvdimm0,size=2G 
\
-device nvdimm,memdev=mem1,id=nv1,label-size=2M \
-object memory-backend-file,id=mem2,share,mem-path=/root/vm/tmp/nvdimm1,size=2G 
\
-device nvdimm,memdev=mem2,id=nv2,label-size=2M \
-numa node,mem=4G,cpus=0-19,nodeid=0 \
-numa node,mem=4G,cpus=20-39,nodeid=1 \
-numa node,mem=4G,nodeid=2 \
-numa node,mem=4G,nodeid=3 \

-----Original Message-----
From: Dan Williams <[email protected]> 
Sent: Monday, December 30, 2019 2:03 PM
To: Li, Redhairer <[email protected]>
Cc: [email protected]
Subject: Re: [PATCH] daxctl: Change region input type from INTEGER to STRING.

On Sat, Dec 28, 2019 at 11:54 PM Li, Redhairer <[email protected]> wrote:
>
> OK, got it.
> I have figured out the problem.
> I pass wrong parameter to util_daxctl_region_filter.
>
> But I found two other problems before I apply my patch.
>
> 1. DAX device already online after reconfigure it to system-ram.
>
> "$DAXCTL" reconfigure-device -N -m system-ram "$daxdev"
>
> If daxctl-device.sh do online-memory again, it makes FAIL 
> daxctl-devices.sh (exit status: 1) even I add --no-online when 
> reconfigure-device
>
> + ../daxctl/daxctl reconfigure-device -N -m system-ram --no-online 
> + dax0.0
> libdaxctl: memblock_in_dev: dax0.0: memory0: Unable to determine 
> phys_index: Success reconfigured 1 device [
>   {
>     "chardev":"dax0.0",
>     "size":262144000,
>     "target_node":0,
>     "mode":"system-ram",
>     "movable":false
>   }
> ]
> ++ daxctl_get_mode dax0.0
> ++ ../daxctl/daxctl list -d dax0.0
> ++ jq -er '.[].mode'
> libdaxctl: memblock_in_dev: dax0.0: memory0: Unable to determine 
> phys_index: Success
> + [[ system-ram == \s\y\s\t\e\m\-\r\a\m ]] ../daxctl/daxctl 
> + online-memory dax0.0
> libdaxctl: memblock_in_dev: dax0.0: memory0: Unable to determine 
> phys_index: Success
> libdaxctl: memblock_in_dev: dax0.0: memory0: Unable to determine 
> phys_index: Success
> dax0.0:
>   WARNING: detected a race while onlining memory
>   Some memory may not be in the expected zone. It is
>   recommended to disable any other onlining mechanisms,
>   and retry. If onlining is to be left to other agents,
>   use the --no-online option to suppress this warning

This is likely because Ubuntu ships a udev rule that automatically onlines 
hot-added memory. We've talked about a way to auto-detect when a distribution 
ships a udev configuration like this, but for now this warning message is the 
best we can do.

[..]>
> 2.  2 nvdimm will make daxctl-devices.sh FAIL

Do you mean a system with real nvdimms makes daxctl-devices.sh fail?
_______________________________________________
Linux-nvdimm mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to