From mboxrd@z Thu Jan 1 00:00:00 1970 Received: by 2002:a5d:6089:0:0:0:0:0 with SMTP id w9csp5557877wrt; Mon, 26 Nov 2018 05:27:16 -0800 (PST) X-Google-Smtp-Source: AFSGD/V6ntn+FzbIkyHxVfR6N8j3+Xa/BqO4Q2D0a04IAjAJ7lgpG/d7KHoCduDOvsBIAbInVfGN X-Received: by 2002:a81:ec0f:: with SMTP id j15mr19376449ywm.214.1543238836478; Mon, 26 Nov 2018 05:27:16 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1543238836; cv=none; d=google.com; s=arc-20160816; b=oRD7MxwbB3QXiOIfB6jmfSFMwCwNXdmXohtIRYMnLJT6fNC/bXptnu8Md+6cS2ckda 7E/QFKuTi4CfquAi32mdsJw31LwBcthq5fE3BbFhUpW7hjdSZsyN9BtXfxpt3vmTUlDl sh73CNLTfpZCDPc1qYvQR/IbclKprvFBNPB38B7Uft9cYHhXrEK5rk/blVVTryBzQDix Gk+UC3isv6lWBraGRHCqNdtsJ8C2aw3vsn1/Hd+1E0eokO9zogeyLtYmKeQEB9lhRiq1 9vjb75m5ICuvzPAw0SZO7O1QzceLLyvzVf+kNaVgn8dnmAkIlIaH1n+1m6fvo5PwkV8n c6hw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject :content-transfer-encoding:mime-version:references:in-reply-to :message-id:to:from:date; bh=RhS2s6xxI9YoGo2pgFI5LT/bkTJlci9yyC4M+lzCe2A=; b=fZmbYOgdeYaZIpZBRIUZzCiNr97aWXNDaJHLjajjx8grOfU8GPHIwhhxucLVgR6xIf uLlvgorJxF8w9EgSGyy49GhASzMdkBBV9KgREZynW+wcZps3ggAgQ4vTwy9Jftb9yYxK ZVJzqgquV+Sa6ybxgccypI1W34NjihtLOjT9Vo055Q3fYtXGzeuXIUGYlociLyaS/rxI VwPHMbjnqPdiCbnvwWmAKGcGE4UmEXhRorZOSxxuLFb4LJqZXmjy44Edw4VJeQ2Z8LW8 6gvi2mbrspCM2LCl48t6KL00mtWVnuULyRK9YFteb9RWWA+6cwtDqO/WOI9EfC8wzHtJ Jodg== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of qemu-arm-bounces+alex.bennee=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-arm-bounces+alex.bennee=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=redhat.com Return-Path: Received: from lists.gnu.org (lists.gnu.org. [2001:4830:134:3::11]) by mx.google.com with ESMTPS id s184-v6si255436ybb.25.2018.11.26.05.27.16 for (version=TLS1 cipher=AES128-SHA bits=128/128); Mon, 26 Nov 2018 05:27:16 -0800 (PST) Received-SPF: pass (google.com: domain of qemu-arm-bounces+alex.bennee=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) client-ip=2001:4830:134:3::11; Authentication-Results: mx.google.com; spf=pass (google.com: domain of qemu-arm-bounces+alex.bennee=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-arm-bounces+alex.bennee=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=redhat.com Received: from localhost ([::1]:35945 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gRGux-0002LZ-S0 for alex.bennee@linaro.org; Mon, 26 Nov 2018 08:27:15 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:60123) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gRGoz-0005Ai-DS for qemu-arm@nongnu.org; Mon, 26 Nov 2018 08:21:12 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1gRGou-00087Y-C3 for qemu-arm@nongnu.org; Mon, 26 Nov 2018 08:21:05 -0500 Received: from mx1.redhat.com ([209.132.183.28]:47466) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1gRGou-00086t-4z; Mon, 26 Nov 2018 08:21:00 -0500 Received: from smtp.corp.redhat.com (int-mx08.intmail.prod.int.phx2.redhat.com [10.5.11.23]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 037603154862; Mon, 26 Nov 2018 13:20:59 +0000 (UTC) Received: from localhost (unknown [10.43.2.182]) by smtp.corp.redhat.com (Postfix) with ESMTP id DA64B1F8; Mon, 26 Nov 2018 13:20:47 +0000 (UTC) Date: Mon, 26 Nov 2018 14:20:46 +0100 From: Igor Mammedov To: =?UTF-8?B?TWFyYy1BbmRyw6k=?= Lureau Message-ID: <20181126142046.07c5e227@redhat.com> In-Reply-To: <20181107123652.23417-11-marcandre.lureau@redhat.com> References: <20181107123652.23417-1-marcandre.lureau@redhat.com> <20181107123652.23417-11-marcandre.lureau@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-Scanned-By: MIMEDefang 2.84 on 10.5.11.23 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.41]); Mon, 26 Nov 2018 13:20:59 +0000 (UTC) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] [fuzzy] X-Received-From: 209.132.183.28 Subject: Re: [Qemu-arm] [PATCH for-3.2 v3 10/14] qdev-props: call object_apply_global_props() X-BeenThere: qemu-arm@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peter Maydell , Stefano Stabellini , Eduardo Habkost , Corey Minyard , Amit Shah , =?UTF-8?B?SGVydsOp?= Poussineau , "Michael S. Tsirkin" , Mark Cave-Ayland , qemu-devel@nongnu.org, dgilbert@redhat.com, qemu-arm@nongnu.org, qemu-ppc@nongnu.org, Marcel Apfelbaum , xen-devel@lists.xenproject.org, Anthony Perard , Paolo Bonzini , Stefan Berger , Andreas =?UTF-8?B?RsOkcmJlcg==?= , Artyom Tarasenko , Richard Henderson Errors-To: qemu-arm-bounces+alex.bennee=linaro.org@nongnu.org Sender: "Qemu-arm" X-TUID: 6o9ZLKmwXIJX On Wed, 7 Nov 2018 16:36:48 +0400 Marc-Andr=C3=A9 Lureau wrote: > It's now possible to use the common function. >=20 > Teach object_apply_global_props() to warn if Error argument is NULL. >=20 > Signed-off-by: Marc-Andr=C3=A9 Lureau > --- > hw/core/qdev-properties.c | 24 ++---------------------- > qom/object.c | 6 +++++- > 2 files changed, 7 insertions(+), 23 deletions(-) >=20 > diff --git a/hw/core/qdev-properties.c b/hw/core/qdev-properties.c > index 8728cbab9f..239535a4cb 100644 > --- a/hw/core/qdev-properties.c > +++ b/hw/core/qdev-properties.c > @@ -1223,28 +1223,8 @@ int qdev_prop_check_globals(void) > =20 > void qdev_prop_set_globals(DeviceState *dev) > { > - int i; > - > - for (i =3D 0; i < global_props()->len; i++) { > - GlobalProperty *prop; > - Error *err =3D NULL; > - > - prop =3D g_array_index(global_props(), GlobalProperty *, i); > - if (object_dynamic_cast(OBJECT(dev), prop->driver) =3D=3D NULL) { > - continue; > - } > - prop->used =3D true; > - object_property_parse(OBJECT(dev), prop->value, prop->property, = &err); > - if (err !=3D NULL) { > - error_prepend(&err, "can't apply global %s.%s=3D%s: ", > - prop->driver, prop->property, prop->value); > - if (!dev->hotplugged) { > - error_propagate(&error_fatal, err); > - } else { > - warn_report_err(err); > - } > - } > - } > + object_apply_global_props(OBJECT(dev), global_props(), > + dev->hotplugged ? NULL : &error_fatal); arguably, it's up to caller to decide it warn or not. I'd leave it warning code out of object_apply_global_props() and let caller= do the job > } > =20 > /* --- 64bit unsigned int 'size' type --- */ > diff --git a/qom/object.c b/qom/object.c > index 9acdf9e16d..b1a7f70550 100644 > --- a/qom/object.c > +++ b/qom/object.c > @@ -392,7 +392,11 @@ void object_apply_global_props(Object *obj, GArray *= props, Error **errp) > if (err !=3D NULL) { > error_prepend(&err, "can't apply global %s.%s=3D%s: ", > p->driver, p->property, p->value); > - error_propagate(errp, err); > + if (errp) { > + error_propagate(errp, err); > + } else { > + warn_report_err(err); > + } > } > } > } From mboxrd@z Thu Jan 1 00:00:00 1970 From: Igor Mammedov Subject: Re: [PATCH for-3.2 v3 10/14] qdev-props: call object_apply_global_props() Date: Mon, 26 Nov 2018 14:20:46 +0100 Message-ID: <20181126142046.07c5e227@redhat.com> References: <20181107123652.23417-1-marcandre.lureau@redhat.com> <20181107123652.23417-11-marcandre.lureau@redhat.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6]) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1gRGou-0006H5-QP for xen-devel@lists.xenproject.org; Mon, 26 Nov 2018 13:21:00 +0000 In-Reply-To: <20181107123652.23417-11-marcandre.lureau@redhat.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" To: =?UTF-8?B?TWFyYy1BbmRyw6k=?= Lureau Cc: Peter Maydell , Stefano Stabellini , Eduardo Habkost , Corey Minyard , Amit Shah , =?UTF-8?B?SGVydsOp?= Poussineau , "Michael S. Tsirkin" , Mark Cave-Ayland , qemu-devel@nongnu.org, dgilbert@redhat.com, qemu-arm@nongnu.org, qemu-ppc@nongnu.org, Marcel Apfelbaum , xen-devel@lists.xenproject.org, Anthony Perard , Paolo Bonzini , Stefan Berger , Andreas =?UTF-8?B?RsOkcmJlcg==?= , Artyom Tarasenko , Richard Henderson List-Id: xen-devel@lists.xenproject.org T24gV2VkLCAgNyBOb3YgMjAxOCAxNjozNjo0OCArMDQwMApNYXJjLUFuZHLDqSBMdXJlYXUgPG1h cmNhbmRyZS5sdXJlYXVAcmVkaGF0LmNvbT4gd3JvdGU6Cgo+IEl0J3Mgbm93IHBvc3NpYmxlIHRv IHVzZSB0aGUgY29tbW9uIGZ1bmN0aW9uLgo+IAo+IFRlYWNoIG9iamVjdF9hcHBseV9nbG9iYWxf cHJvcHMoKSB0byB3YXJuIGlmIEVycm9yIGFyZ3VtZW50IGlzIE5VTEwuCj4gCj4gU2lnbmVkLW9m Zi1ieTogTWFyYy1BbmRyw6kgTHVyZWF1IDxtYXJjYW5kcmUubHVyZWF1QHJlZGhhdC5jb20+Cj4g LS0tCj4gIGh3L2NvcmUvcWRldi1wcm9wZXJ0aWVzLmMgfCAyNCArKy0tLS0tLS0tLS0tLS0tLS0t LS0tLS0KPiAgcW9tL29iamVjdC5jICAgICAgICAgICAgICB8ICA2ICsrKysrLQo+ICAyIGZpbGVz IGNoYW5nZWQsIDcgaW5zZXJ0aW9ucygrKSwgMjMgZGVsZXRpb25zKC0pCj4gCj4gZGlmZiAtLWdp dCBhL2h3L2NvcmUvcWRldi1wcm9wZXJ0aWVzLmMgYi9ody9jb3JlL3FkZXYtcHJvcGVydGllcy5j Cj4gaW5kZXggODcyOGNiYWI5Zi4uMjM5NTM1YTRjYiAxMDA2NDQKPiAtLS0gYS9ody9jb3JlL3Fk ZXYtcHJvcGVydGllcy5jCj4gKysrIGIvaHcvY29yZS9xZGV2LXByb3BlcnRpZXMuYwo+IEBAIC0x MjIzLDI4ICsxMjIzLDggQEAgaW50IHFkZXZfcHJvcF9jaGVja19nbG9iYWxzKHZvaWQpCj4gIAo+ ICB2b2lkIHFkZXZfcHJvcF9zZXRfZ2xvYmFscyhEZXZpY2VTdGF0ZSAqZGV2KQo+ICB7Cj4gLSAg ICBpbnQgaTsKPiAtCj4gLSAgICBmb3IgKGkgPSAwOyBpIDwgZ2xvYmFsX3Byb3BzKCktPmxlbjsg aSsrKSB7Cj4gLSAgICAgICAgR2xvYmFsUHJvcGVydHkgKnByb3A7Cj4gLSAgICAgICAgRXJyb3Ig KmVyciA9IE5VTEw7Cj4gLQo+IC0gICAgICAgIHByb3AgPSBnX2FycmF5X2luZGV4KGdsb2JhbF9w cm9wcygpLCBHbG9iYWxQcm9wZXJ0eSAqLCBpKTsKPiAtICAgICAgICBpZiAob2JqZWN0X2R5bmFt aWNfY2FzdChPQkpFQ1QoZGV2KSwgcHJvcC0+ZHJpdmVyKSA9PSBOVUxMKSB7Cj4gLSAgICAgICAg ICAgIGNvbnRpbnVlOwo+IC0gICAgICAgIH0KPiAtICAgICAgICBwcm9wLT51c2VkID0gdHJ1ZTsK PiAtICAgICAgICBvYmplY3RfcHJvcGVydHlfcGFyc2UoT0JKRUNUKGRldiksIHByb3AtPnZhbHVl LCBwcm9wLT5wcm9wZXJ0eSwgJmVycik7Cj4gLSAgICAgICAgaWYgKGVyciAhPSBOVUxMKSB7Cj4g LSAgICAgICAgICAgIGVycm9yX3ByZXBlbmQoJmVyciwgImNhbid0IGFwcGx5IGdsb2JhbCAlcy4l cz0lczogIiwKPiAtICAgICAgICAgICAgICAgICAgICAgICAgICBwcm9wLT5kcml2ZXIsIHByb3At PnByb3BlcnR5LCBwcm9wLT52YWx1ZSk7Cj4gLSAgICAgICAgICAgIGlmICghZGV2LT5ob3RwbHVn Z2VkKSB7Cj4gLSAgICAgICAgICAgICAgICBlcnJvcl9wcm9wYWdhdGUoJmVycm9yX2ZhdGFsLCBl cnIpOwo+IC0gICAgICAgICAgICB9IGVsc2Ugewo+IC0gICAgICAgICAgICAgICAgd2Fybl9yZXBv cnRfZXJyKGVycik7Cj4gLSAgICAgICAgICAgIH0KPiAtICAgICAgICB9Cj4gLSAgICB9Cj4gKyAg ICBvYmplY3RfYXBwbHlfZ2xvYmFsX3Byb3BzKE9CSkVDVChkZXYpLCBnbG9iYWxfcHJvcHMoKSwK PiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGV2LT5ob3RwbHVnZ2VkID8gTlVMTCA6 ICZlcnJvcl9mYXRhbCk7CmFyZ3VhYmx5LCBpdCdzIHVwIHRvIGNhbGxlciB0byBkZWNpZGUgaXQg d2FybiBvciBub3QuCkknZCBsZWF2ZSBpdCB3YXJuaW5nIGNvZGUgb3V0IG9mIG9iamVjdF9hcHBs eV9nbG9iYWxfcHJvcHMoKSBhbmQgbGV0IGNhbGxlciBkbyB0aGUgam9iCgo+ICB9Cj4gIAo+ICAv KiAtLS0gNjRiaXQgdW5zaWduZWQgaW50ICdzaXplJyB0eXBlIC0tLSAqLwo+IGRpZmYgLS1naXQg YS9xb20vb2JqZWN0LmMgYi9xb20vb2JqZWN0LmMKPiBpbmRleCA5YWNkZjllMTZkLi5iMWE3Zjcw NTUwIDEwMDY0NAo+IC0tLSBhL3FvbS9vYmplY3QuYwo+ICsrKyBiL3FvbS9vYmplY3QuYwo+IEBA IC0zOTIsNyArMzkyLDExIEBAIHZvaWQgb2JqZWN0X2FwcGx5X2dsb2JhbF9wcm9wcyhPYmplY3Qg Km9iaiwgR0FycmF5ICpwcm9wcywgRXJyb3IgKiplcnJwKQo+ICAgICAgICAgIGlmIChlcnIgIT0g TlVMTCkgewo+ICAgICAgICAgICAgICBlcnJvcl9wcmVwZW5kKCZlcnIsICJjYW4ndCBhcHBseSBn bG9iYWwgJXMuJXM9JXM6ICIsCj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcC0+ZHJpdmVy LCBwLT5wcm9wZXJ0eSwgcC0+dmFsdWUpOwo+IC0gICAgICAgICAgICBlcnJvcl9wcm9wYWdhdGUo ZXJycCwgZXJyKTsKPiArICAgICAgICAgICAgaWYgKGVycnApIHsKPiArICAgICAgICAgICAgICAg IGVycm9yX3Byb3BhZ2F0ZShlcnJwLCBlcnIpOwo+ICsgICAgICAgICAgICB9IGVsc2Ugewo+ICsg ICAgICAgICAgICAgICAgd2Fybl9yZXBvcnRfZXJyKGVycik7Cj4gKyAgICAgICAgICAgIH0KPiAg ICAgICAgICB9Cj4gICAgICB9Cj4gIH0KCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fXwpYZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54 ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3RzLnhlbnByb2plY3Qub3JnL21haWxtYW4vbGlzdGlu Zm8veGVuLWRldmVs From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:60202) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gRGpB-0005Jy-Th for qemu-devel@nongnu.org; Mon, 26 Nov 2018 08:21:20 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1gRGp6-0008Ni-T8 for qemu-devel@nongnu.org; Mon, 26 Nov 2018 08:21:17 -0500 Date: Mon, 26 Nov 2018 14:20:46 +0100 From: Igor Mammedov Message-ID: <20181126142046.07c5e227@redhat.com> In-Reply-To: <20181107123652.23417-11-marcandre.lureau@redhat.com> References: <20181107123652.23417-1-marcandre.lureau@redhat.com> <20181107123652.23417-11-marcandre.lureau@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Subject: Re: [Qemu-devel] [PATCH for-3.2 v3 10/14] qdev-props: call object_apply_global_props() List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: =?UTF-8?B?TWFyYy1BbmRyw6k=?= Lureau Cc: qemu-devel@nongnu.org, Paolo Bonzini , dgilbert@redhat.com, Richard Henderson , Andreas =?UTF-8?B?RsOkcmJlcg==?= , qemu-arm@nongnu.org, xen-devel@lists.xenproject.org, Artyom Tarasenko , Anthony Perard , Mark Cave-Ayland , Eduardo Habkost , Amit Shah , Stefan Berger , Marcel Apfelbaum , Stefano Stabellini , "Michael S. Tsirkin" , qemu-ppc@nongnu.org, Peter Maydell , Corey Minyard , =?UTF-8?B?SGVydsOp?= Poussineau On Wed, 7 Nov 2018 16:36:48 +0400 Marc-Andr=C3=A9 Lureau wrote: > It's now possible to use the common function. >=20 > Teach object_apply_global_props() to warn if Error argument is NULL. >=20 > Signed-off-by: Marc-Andr=C3=A9 Lureau > --- > hw/core/qdev-properties.c | 24 ++---------------------- > qom/object.c | 6 +++++- > 2 files changed, 7 insertions(+), 23 deletions(-) >=20 > diff --git a/hw/core/qdev-properties.c b/hw/core/qdev-properties.c > index 8728cbab9f..239535a4cb 100644 > --- a/hw/core/qdev-properties.c > +++ b/hw/core/qdev-properties.c > @@ -1223,28 +1223,8 @@ int qdev_prop_check_globals(void) > =20 > void qdev_prop_set_globals(DeviceState *dev) > { > - int i; > - > - for (i =3D 0; i < global_props()->len; i++) { > - GlobalProperty *prop; > - Error *err =3D NULL; > - > - prop =3D g_array_index(global_props(), GlobalProperty *, i); > - if (object_dynamic_cast(OBJECT(dev), prop->driver) =3D=3D NULL) { > - continue; > - } > - prop->used =3D true; > - object_property_parse(OBJECT(dev), prop->value, prop->property, = &err); > - if (err !=3D NULL) { > - error_prepend(&err, "can't apply global %s.%s=3D%s: ", > - prop->driver, prop->property, prop->value); > - if (!dev->hotplugged) { > - error_propagate(&error_fatal, err); > - } else { > - warn_report_err(err); > - } > - } > - } > + object_apply_global_props(OBJECT(dev), global_props(), > + dev->hotplugged ? NULL : &error_fatal); arguably, it's up to caller to decide it warn or not. I'd leave it warning code out of object_apply_global_props() and let caller= do the job > } > =20 > /* --- 64bit unsigned int 'size' type --- */ > diff --git a/qom/object.c b/qom/object.c > index 9acdf9e16d..b1a7f70550 100644 > --- a/qom/object.c > +++ b/qom/object.c > @@ -392,7 +392,11 @@ void object_apply_global_props(Object *obj, GArray *= props, Error **errp) > if (err !=3D NULL) { > error_prepend(&err, "can't apply global %s.%s=3D%s: ", > p->driver, p->property, p->value); > - error_propagate(errp, err); > + if (errp) { > + error_propagate(errp, err); > + } else { > + warn_report_err(err); > + } > } > } > }