On Thu, Mar 17, 2016 at 04:32:50PM +0800, Xiao Guangrong wrote: > +static void nvdimm_init(Object *obj) > +{ > + object_property_add_bool(obj, "reserve-label", nvdimm_get_reserve_label, > + nvdimm_set_reserve_label, NULL); In the future users may wish for larger namespace label sizes. This bool option will not allow that. Perhaps the option should be an integer called "label-size"? > +static void nvdimm_assert_rw_label_data(NVDIMMDevice *nvdimm, uint64_t size, > + uint64_t offset) > +{ > + assert(nvdimm->reserve_label && > + (nvdimm->label_size >= size + offset) && (offset + size > offset)); > +} It's not clear from this patch alone, but QEMU is not allowed to assert due to invalid inputs from the guest. So if input validation is necessary here because the values may be invalid, please write if statements and error returns. This is important so guests cannot cause QEMU to core dump (SIGABRT default behavior) and so that nested virtualization doesn't allow a nested guest to DoS its parent guest.
Attachment:
signature.asc
Description: PGP signature