From nobody Mon Feb 9 20:59:53 2026 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; 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 Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 150574412592689.6134898017599; Mon, 18 Sep 2017 07:15:25 -0700 (PDT) Received: from localhost ([::1]:36890 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dtwpY-0006jP-QN for importer@patchew.org; Mon, 18 Sep 2017 10:15:24 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:42949) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dtwiW-0000iG-IM for qemu-devel@nongnu.org; Mon, 18 Sep 2017 10:08:13 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1dtwiQ-0006QF-SA for qemu-devel@nongnu.org; Mon, 18 Sep 2017 10:08:08 -0400 Received: from mail.cn.fujitsu.com ([183.91.158.132]:20987 helo=heian.cn.fujitsu.com) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dtwiQ-0006Nj-92 for qemu-devel@nongnu.org; Mon, 18 Sep 2017 10:08:02 -0400 Received: from localhost (HELO cn.fujitsu.com) ([10.167.33.5]) by heian.cn.fujitsu.com with ESMTP; 18 Sep 2017 22:07:50 +0800 Received: from G08CNEXCHPEKD03.g08.fujitsu.local (unknown [10.167.33.85]) by cn.fujitsu.com (Postfix) with ESMTP id 15D6146BA6A2; Mon, 18 Sep 2017 22:07:49 +0800 (CST) Received: from maozy.g08.fujitsu.local (10.167.225.76) by G08CNEXCHPEKD03.g08.fujitsu.local (10.167.33.89) with Microsoft SMTP Server (TLS) id 14.3.361.1; Mon, 18 Sep 2017 22:07:51 +0800 X-IronPort-AV: E=Sophos;i="5.42,413,1500912000"; d="scan'208";a="26773971" From: Mao Zhongyi To: Date: Mon, 18 Sep 2017 22:05:17 +0800 Message-ID: X-Mailer: git-send-email 2.9.4 In-Reply-To: References: MIME-Version: 1.0 X-Originating-IP: [10.167.225.76] X-yoursite-MailScanner-ID: 15D6146BA6A2.A4A84 X-yoursite-MailScanner: Found to be clean X-yoursite-MailScanner-From: maozy.fnst@cn.fujitsu.com X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 183.91.158.132 Subject: [Qemu-devel] [PATCH v3 5/6] hw/block: Use errp directly rather than local_err 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: Kevin Wolf , "Michael S. Tsirkin" , Markus Armbruster , Max Reitz , Keith Busch , Gerd Hoffmann , Stefan Hajnoczi , Paolo Bonzini , John Snow Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail: RSF_0 Z_629925259 SPT_0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Pass the error message to errp directly rather than the local variable local_err and propagate it to errp via error_propagate(). Cc: John Snow Cc: Kevin Wolf Cc: Max Reitz Cc: Keith Busch Cc: Stefan Hajnoczi Cc: "Michael S. Tsirkin" Cc: Paolo Bonzini Cc: Gerd Hoffmann Cc: Markus Armbruster Signed-off-by: Mao Zhongyi Reviewed-by: Stefan Hajnoczi --- hw/block/fdc.c | 17 ++++++----------- hw/block/nvme.c | 8 +++----- hw/block/virtio-blk.c | 17 +++++------------ hw/ide/qdev.c | 12 ++++-------- hw/scsi/scsi-disk.c | 13 ++++--------- hw/usb/dev-storage.c | 9 +++------ 6 files changed, 25 insertions(+), 51 deletions(-) diff --git a/hw/block/fdc.c b/hw/block/fdc.c index 2853cdc..629609e 100644 --- a/hw/block/fdc.c +++ b/hw/block/fdc.c @@ -473,16 +473,13 @@ static void fd_revalidate(FDrive *drv) static void fd_change_cb(void *opaque, bool load, Error **errp) { FDrive *drive =3D opaque; - Error *local_err =3D NULL; =20 if (!load) { blk_set_perm(drive->blk, 0, BLK_PERM_ALL, &error_abort); } else { - blkconf_apply_backend_options(drive->conf, - blk_is_read_only(drive->blk), false, - &local_err); - if (local_err) { - error_propagate(errp, local_err); + if (!blkconf_apply_backend_options(drive->conf, + blk_is_read_only(drive->blk), + false, errp)) { return; } } @@ -522,7 +519,6 @@ static void floppy_drive_realize(DeviceState *qdev, Err= or **errp) FloppyDrive *dev =3D FLOPPY_DRIVE(qdev); FloppyBus *bus =3D FLOPPY_BUS(qdev->parent_bus); FDrive *drive; - Error *local_err =3D NULL; int ret; =20 if (dev->unit =3D=3D -1) { @@ -568,10 +564,9 @@ static void floppy_drive_realize(DeviceState *qdev, Er= ror **errp) dev->conf.rerror =3D BLOCKDEV_ON_ERROR_AUTO; dev->conf.werror =3D BLOCKDEV_ON_ERROR_AUTO; =20 - blkconf_apply_backend_options(&dev->conf, blk_is_read_only(dev->conf.b= lk), - false, &local_err); - if (local_err) { - error_propagate(errp, local_err); + if (!blkconf_apply_backend_options(&dev->conf, + blk_is_read_only(dev->conf.blk), + false, errp)) { return; } =20 diff --git a/hw/block/nvme.c b/hw/block/nvme.c index a18bf69..e117f7a 100644 --- a/hw/block/nvme.c +++ b/hw/block/nvme.c @@ -928,7 +928,6 @@ static void nvme_realize(PCIDevice *pci_dev, Error **er= rp) int i; int64_t bs_size; uint8_t *pci_conf; - Error *local_err =3D NULL; =20 if (!n->conf.blk) { error_setg(errp, "drive property not set"); @@ -947,10 +946,9 @@ static void nvme_realize(PCIDevice *pci_dev, Error **e= rrp) return; } blkconf_blocksizes(&n->conf); - blkconf_apply_backend_options(&n->conf, blk_is_read_only(n->conf.blk), - false, &local_err); - if (local_err) { - error_propagate(errp, local_err); + if (!blkconf_apply_backend_options(&n->conf, + blk_is_read_only(n->conf.blk), + false, errp)) { return; } =20 diff --git a/hw/block/virtio-blk.c b/hw/block/virtio-blk.c index a16ac75..4b4cdfe 100644 --- a/hw/block/virtio-blk.c +++ b/hw/block/virtio-blk.c @@ -913,7 +913,6 @@ static void virtio_blk_device_realize(DeviceState *dev,= Error **errp) VirtIODevice *vdev =3D VIRTIO_DEVICE(dev); VirtIOBlock *s =3D VIRTIO_BLK(dev); VirtIOBlkConf *conf =3D &s->conf; - Error *err =3D NULL; unsigned i; =20 if (!conf->conf.blk) { @@ -930,17 +929,13 @@ static void virtio_blk_device_realize(DeviceState *de= v, Error **errp) } =20 blkconf_serial(&conf->conf, &conf->serial); - blkconf_apply_backend_options(&conf->conf, - blk_is_read_only(conf->conf.blk), true, - &err); - if (err) { - error_propagate(errp, err); + if (!blkconf_apply_backend_options(&conf->conf, + blk_is_read_only(conf->conf.blk), + true, errp)) { return; } s->original_wce =3D blk_enable_write_cache(conf->conf.blk); - blkconf_geometry(&conf->conf, NULL, 65535, 255, 255, &err); - if (err) { - error_propagate(errp, err); + if (!blkconf_geometry(&conf->conf, NULL, 65535, 255, 255, errp)) { return; } blkconf_blocksizes(&conf->conf); @@ -955,9 +950,7 @@ static void virtio_blk_device_realize(DeviceState *dev,= Error **errp) for (i =3D 0; i < conf->num_queues; i++) { virtio_add_queue(vdev, 128, virtio_blk_handle_output); } - virtio_blk_data_plane_create(vdev, conf, &s->dataplane, &err); - if (err !=3D NULL) { - error_propagate(errp, err); + if (!virtio_blk_data_plane_create(vdev, conf, &s->dataplane, errp)) { virtio_cleanup(vdev); return; } diff --git a/hw/ide/qdev.c b/hw/ide/qdev.c index d60ac25..9677191 100644 --- a/hw/ide/qdev.c +++ b/hw/ide/qdev.c @@ -160,7 +160,6 @@ static void ide_dev_initfn(IDEDevice *dev, IDEDriveKind= kind, Error **errp) { IDEBus *bus =3D DO_UPCAST(IDEBus, qbus, dev->qdev.parent_bus); IDEState *s =3D bus->ifs + dev->unit; - Error *err =3D NULL; int ret; =20 if (!dev->conf.blk) { @@ -191,16 +190,13 @@ static void ide_dev_initfn(IDEDevice *dev, IDEDriveKi= nd kind, Error **errp) =20 blkconf_serial(&dev->conf, &dev->serial); if (kind !=3D IDE_CD) { - blkconf_geometry(&dev->conf, &dev->chs_trans, 65535, 16, 255, &err= ); - if (err) { - error_propagate(errp, err); + if (!blkconf_geometry(&dev->conf, &dev->chs_trans, 65535, 16, 255, + errp)) { return; } } - blkconf_apply_backend_options(&dev->conf, kind =3D=3D IDE_CD, kind != =3D IDE_CD, - &err); - if (err) { - error_propagate(errp, err); + if (!blkconf_apply_backend_options(&dev->conf, kind =3D=3D IDE_CD, + kind !=3D IDE_CD, errp)) { return; } =20 diff --git a/hw/scsi/scsi-disk.c b/hw/scsi/scsi-disk.c index 5f1e5e8..64a7fdd 100644 --- a/hw/scsi/scsi-disk.c +++ b/hw/scsi/scsi-disk.c @@ -2306,7 +2306,6 @@ static void scsi_disk_unit_attention_reported(SCSIDev= ice *dev) static void scsi_realize(SCSIDevice *dev, Error **errp) { SCSIDiskState *s =3D DO_UPCAST(SCSIDiskState, qdev, dev); - Error *err =3D NULL; =20 if (!s->qdev.conf.blk) { error_setg(errp, "drive property not set"); @@ -2322,17 +2321,13 @@ static void scsi_realize(SCSIDevice *dev, Error **e= rrp) blkconf_serial(&s->qdev.conf, &s->serial); blkconf_blocksizes(&s->qdev.conf); if (dev->type =3D=3D TYPE_DISK) { - blkconf_geometry(&dev->conf, NULL, 65535, 255, 255, &err); - if (err) { - error_propagate(errp, err); + if (!blkconf_geometry(&dev->conf, NULL, 65535, 255, 255, errp)) { return; } } - blkconf_apply_backend_options(&dev->conf, - blk_is_read_only(s->qdev.conf.blk), - dev->type =3D=3D TYPE_DISK, &err); - if (err) { - error_propagate(errp, err); + if (!blkconf_apply_backend_options(&dev->conf, + blk_is_read_only(s->qdev.conf.blk), + dev->type =3D=3D TYPE_DISK, errp)) { return; } =20 diff --git a/hw/usb/dev-storage.c b/hw/usb/dev-storage.c index 8a61ec9..801f552 100644 --- a/hw/usb/dev-storage.c +++ b/hw/usb/dev-storage.c @@ -601,7 +601,6 @@ static void usb_msd_realize_storage(USBDevice *dev, Err= or **errp) MSDState *s =3D USB_STORAGE_DEV(dev); BlockBackend *blk =3D s->conf.blk; SCSIDevice *scsi_dev; - Error *err =3D NULL; =20 if (!blk) { error_setg(errp, "drive property not set"); @@ -610,9 +609,8 @@ static void usb_msd_realize_storage(USBDevice *dev, Err= or **errp) =20 blkconf_serial(&s->conf, &dev->serial); blkconf_blocksizes(&s->conf); - blkconf_apply_backend_options(&s->conf, blk_is_read_only(blk), true, &= err); - if (err) { - error_propagate(errp, err); + if (!blkconf_apply_backend_options(&s->conf, blk_is_read_only(blk), + true, errp)) { return; } =20 @@ -636,10 +634,9 @@ static void usb_msd_realize_storage(USBDevice *dev, Er= ror **errp) &usb_msd_scsi_info_storage, NULL); scsi_dev =3D scsi_bus_legacy_add_drive(&s->bus, blk, 0, !!s->removable, s->conf.bootindex, dev->serial, - &err); + errp); blk_unref(blk); if (!scsi_dev) { - error_propagate(errp, err); return; } usb_msd_handle_reset(dev); --=20 2.9.4