You've been very helpful, haozhong, Thanks for your comments, I appreciate.

>>> Haozhong Zhang <haozhong.zh...@intel.com> 2016/11/21 星期一 上午 10:55 >>>
On 11/20/16 10:58 -0700, Lin Ma wrote:
>Hi Guangrong,
>
>I'm interested in vNVDIMM on qemu. I'd like to give it a try on my laptop.
>Because I dont have skylake server hardware, So I want to expose cpu flags
>clflushopt, clwb and pcommit to guest for NVDIMM drivers on TCG.
>
>I saw clflushopt and clwb feature flags in cpuinfo of guest, but no pcommit.
>Could you please tell me is there anyhing wrong in my qemu CLI or anything
>I misunderstand?

pcommit had been deprecated (see KVM commit
dfa169bbee00671288df25f8ef8a2f6e13fe2581), so it's correct to not have
it in guest.

>
>qemu-system-x86_64 \
>-cpu Skylake-Client,+pcommit,+clflushopt,+clwb \
>-machine pc-i440fx-2.8,nvdimm=on,accel=tcg \
>-m 4G,maxmem=... \
>-object memory-backend-file,... \
>-device nvdimm,... \
>
>BTW, In kvm mode, Even if I used '-cpu qemu64' without flags pcommit,
>clflushopt and clwb, The block device /dev/pmem0 is still there and can
>be used successfully. Does it make sense? Doesn't nvdimm kernel driver
>need pcommit, clflushopt and clwb to work?
>

If my memory is correct, Linux NVDIMM driver will fallback to clflush
when neither clflushopt nor clwb is available.

Haozhong


Reply via email to