[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v2 3/4] nvdimm: add a boolean option "restrict"
From: |
Haozhong Zhang |
Subject: |
Re: [Qemu-devel] [PATCH v2 3/4] nvdimm: add a boolean option "restrict" |
Date: |
Thu, 8 Jun 2017 14:39:48 +0800 |
User-agent: |
NeoMutt/20170428 (1.8.2) |
On 06/07/17 16:27 +0100, Stefan Hajnoczi wrote:
> On Tue, Jun 06, 2017 at 03:22:28PM +0800, Haozhong Zhang wrote:
> > If a vNVDIMM device is not backed by a DAX device and its "restrict"
> > option is enabled, bit 3 of state flags in its region mapping
> > structure will be set, in order to notify the guest of the lack of
> > write persistence guarantee. Once this bit is set, the guest OS may
> > mark the vNVDIMM device as read-only.
> >
> > This option is disabled by default for backwards compatibility. It's
> > recommended to enable for the formal usage.
>
> Good idea. I think the following is cleaner:
>
> DEFINE_PROP_ON_OFF_AUTO("readonly") on the 'nvdimm' device. The
> following states are available:
>
> * 'on' - ACPI_NFIT_MEM_NOT_ARMED is set
> * 'off' - ACPI_NFIT_MEM_NOT_ARMED is clear
> * 'auto' - ACPI_NFIT_MEM_NOT_ARMED set if backend is not persistent
>
> This new property defaults to 'auto'. Machine types older than
> pc-i440fx-2.10 and pc-q35-2.10 default to 'on'.
I think the the name "readonly" is not precise, because QEMU only sets
one bit and does not prevent guest writes. It's guest decision to
treat the vNVDIMM devices as read-only (e.g. Linux kernel).
We may use "unsafe-write" instead.
Haozhong
[Qemu-devel] [PATCH v2 1/4] nvdimm: add a macro for property "label-size", Haozhong Zhang, 2017/06/06
[Qemu-devel] [PATCH v2 2/4] nvdimm: warn if the backend is not a DAX device, Haozhong Zhang, 2017/06/06