From nobody Wed Nov 5 05:44:03 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1530217890614135.5877858644485; Thu, 28 Jun 2018 13:31:30 -0700 (PDT) Received: from localhost ([::1]:38421 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fYdZh-0003Zq-Qd for importer@patchew.org; Thu, 28 Jun 2018 16:31:29 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:38113) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fYdAj-0007JL-HT for qemu-devel@nongnu.org; Thu, 28 Jun 2018 16:05:42 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fYdAi-0000eE-DD for qemu-devel@nongnu.org; Thu, 28 Jun 2018 16:05:41 -0400 Received: from mail-wm0-x236.google.com ([2a00:1450:400c:c09::236]:34779) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fYdAi-0000cG-5G for qemu-devel@nongnu.org; Thu, 28 Jun 2018 16:05:40 -0400 Received: by mail-wm0-x236.google.com with SMTP id l15-v6so240633wmc.1 for ; Thu, 28 Jun 2018 13:05:40 -0700 (PDT) Received: from 640k.lan ([82.84.124.111]) by smtp.gmail.com with ESMTPSA id 127-v6sm6211110wmd.18.2018.06.28.13.05.37 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 28 Jun 2018 13:05:38 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references; bh=9GOGJ6pkt/3AOlRppXnUaZT1JYCpviZq549cIzuY0Og=; b=qN28VqR0bar0mkdljOPb90xvFpfkAUCN5riKPnlF8Pf1x5W3GFLIHv4cR2mo4gS/4G mpWD9+lEYbJv7Dikk+06foKa8+3SYJM4ByEOs7KcgbF0b+PCS+HaQNOfJwani7NgjlaQ /kA/WlpyJOSleIK5Lo5nS5Prbv3i8iqDzMB5m+5O1Xt7fl4oT9K4Smnt4XNyxe7nHdpL 2HoguVWh2F8ki9RPIjcgTX+2SxC4ROkpa5KtRO1lH8rjVuFJg2i9D2XChSnNBaXfspUn qxtE2us+7H6d5XroDBvW7K70A+yd2g9NUP/2JBfUBLNeWIeTytqZiqNPti5GPQYGH7+2 WB1g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references; bh=9GOGJ6pkt/3AOlRppXnUaZT1JYCpviZq549cIzuY0Og=; b=rJ2TAT/Wag0it77VcCooxWT5qGb2+vBayfO46mNdRlhxaFo8UPmr82EPwyaFNNM4Yf 8zpvIldTJ5zPYSAippemxjiOKI7400r0sh68U7oB4IvXjmlJHiPpePkXdcVOh6cbqeVd 3LBEzp5xvKCwX6i7l+z5meGdjL1wQAqO0ZOV0k3ot59TJhTFhboMOh0uoAZonv6ylkpl XqOqQGvU1aR8Q0N77l2xzF7XcwwGj1PrI6sI5AkScWJ9NyuPiQLCv3YZJz40aufHjExR 8n1ETDPiVJBRqCBNG/cEiTj5K7E+Z1qCHvkBVI8L+luBuQW3vp/D0EzSNjoP9KamIBYw wqzg== X-Gm-Message-State: APt69E1lNoHnHgpvANsQ8SHgtWQXNm3e7H+tLPxKRUiUHX8P4QCmqxpH u4TOJLe2xAUWnhii/9rw5k9ovO6W X-Google-Smtp-Source: AAOMgpcjn9YRG613E4uhITOYhpU3mmPWxcY6p+Kw7GBOL4wyap6W6Ibgs9jAO7sXyYnOwRl3PkIzjg== X-Received: by 2002:a1c:1815:: with SMTP id 21-v6mr9387610wmy.72.1530216338525; Thu, 28 Jun 2018 13:05:38 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Date: Thu, 28 Jun 2018 22:04:35 +0200 Message-Id: <1530216310-52873-26-git-send-email-pbonzini@redhat.com> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <1530216310-52873-1-git-send-email-pbonzini@redhat.com> References: <1530216310-52873-1-git-send-email-pbonzini@redhat.com> X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:400c:c09::236 Subject: [Qemu-devel] [PULL 25/60] nvdimm: convert "unarmed" into a static property X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: David Hildenbrand Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZohoMail: RDKM_2 RSF_0 Z_629925259 SPT_0 Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" From: David Hildenbrand We don't allow to modify it after realization. So we can simply turn it into a static property. Reviewed-by: David Gibson Signed-off-by: David Hildenbrand Message-Id: <20180619134141.29478-10-david@redhat.com> Signed-off-by: Paolo Bonzini --- hw/mem/nvdimm.c | 32 +++++++------------------------- 1 file changed, 7 insertions(+), 25 deletions(-) diff --git a/hw/mem/nvdimm.c b/hw/mem/nvdimm.c index df97162..7260c9c 100644 --- a/hw/mem/nvdimm.c +++ b/hw/mem/nvdimm.c @@ -64,36 +64,11 @@ out: error_propagate(errp, local_err); } =20 -static bool nvdimm_get_unarmed(Object *obj, Error **errp) -{ - NVDIMMDevice *nvdimm =3D NVDIMM(obj); - - return nvdimm->unarmed; -} - -static void nvdimm_set_unarmed(Object *obj, bool value, Error **errp) -{ - NVDIMMDevice *nvdimm =3D NVDIMM(obj); - Error *local_err =3D NULL; - - if (memory_region_size(&nvdimm->nvdimm_mr)) { - error_setg(&local_err, "cannot change property value"); - goto out; - } - - nvdimm->unarmed =3D value; - - out: - error_propagate(errp, local_err); -} - static void nvdimm_init(Object *obj) { object_property_add(obj, NVDIMM_LABEL_SIZE_PROP, "int", nvdimm_get_label_size, nvdimm_set_label_size, NULL, NULL, NULL); - object_property_add_bool(obj, NVDIMM_UNARMED_PROP, - nvdimm_get_unarmed, nvdimm_set_unarmed, NULL); } =20 static MemoryRegion *nvdimm_get_memory_region(PCDIMMDevice *dimm, Error **= errp) @@ -166,13 +141,20 @@ static void nvdimm_write_label_data(NVDIMMDevice *nvd= imm, const void *buf, memory_region_set_dirty(mr, backend_offset, size); } =20 +static Property nvdimm_properties[] =3D { + DEFINE_PROP_BOOL(NVDIMM_UNARMED_PROP, NVDIMMDevice, unarmed, false), + DEFINE_PROP_END_OF_LIST(), +}; + static void nvdimm_class_init(ObjectClass *oc, void *data) { PCDIMMDeviceClass *ddc =3D PC_DIMM_CLASS(oc); NVDIMMClass *nvc =3D NVDIMM_CLASS(oc); + DeviceClass *dc =3D DEVICE_CLASS(oc); =20 ddc->realize =3D nvdimm_realize; ddc->get_memory_region =3D nvdimm_get_memory_region; + dc->props =3D nvdimm_properties; =20 nvc->read_label_data =3D nvdimm_read_label_data; nvc->write_label_data =3D nvdimm_write_label_data; --=20 1.8.3.1