From nobody Mon May 6 04:42:39 2024 Delivered-To: importer@patchew.org Received-SPF: temperror (zoho.com: Error in retrieving data from DNS) 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=temperror (zoho.com: Error in retrieving data from DNS) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org Return-Path: Received: from lists.gnu.org (208.118.235.17 [208.118.235.17]) by mx.zohomail.com with SMTPS id 1513901594565710.2496413412821; Thu, 21 Dec 2017 16:13:14 -0800 (PST) Received: from localhost ([::1]:48799 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1eSAxH-0006rj-Mr for importer@patchew.org; Thu, 21 Dec 2017 19:12:51 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:60204) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1eSAw2-000684-CI for qemu-devel@nongnu.org; Thu, 21 Dec 2017 19:11:35 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1eSAw1-0007zs-AW for qemu-devel@nongnu.org; Thu, 21 Dec 2017 19:11:34 -0500 Received: from userp2130.oracle.com ([156.151.31.86]:47622) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1eSAvw-0007wz-Fx; Thu, 21 Dec 2017 19:11:28 -0500 Received: from pps.filterd (userp2130.oracle.com [127.0.0.1]) by userp2130.oracle.com (8.16.0.21/8.16.0.21) with SMTP id vBM0AGK0039252; Fri, 22 Dec 2017 00:11:27 GMT Received: from aserv0021.oracle.com (aserv0021.oracle.com [141.146.126.233]) by userp2130.oracle.com with ESMTP id 2f0q8s007k-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 22 Dec 2017 00:11:26 +0000 Received: from aserv0122.oracle.com (aserv0122.oracle.com [141.146.126.236]) by aserv0021.oracle.com (8.14.4/8.14.4) with ESMTP id vBM0BQXj027275 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=FAIL); Fri, 22 Dec 2017 00:11:26 GMT Received: from abhmp0002.oracle.com (abhmp0002.oracle.com [141.146.116.8]) by aserv0122.oracle.com (8.14.4/8.14.4) with ESMTP id vBM0BPTD005731; Fri, 22 Dec 2017 00:11:25 GMT Received: from strongheart.us.oracle.com (/10.132.90.51) by default (Oracle Beehive Gateway v4.0) with ESMTP ; Thu, 21 Dec 2017 16:11:25 -0800 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=from : to : cc : subject : date : message-id : in-reply-to : references; s=corp-2017-10-26; bh=O6bZ5rPzJrJOpPKcqcAC5/LtvQpPNJQoODHEWu9Kr+o=; b=WnpzJJEuW6kjRd3Rvv4VQgq8SrrOZzs2FkeNvnv9S48sculE6rG7jyZQXJCG5s5Q5U4+ hJv5gWX/tqj9VIwoepTH/d9JXitIsv29zQPEKoh5bHkg06m4vx03RbfrXvqEtEv7qP31 fi5ZtpTm2GH/yaDBO9zS8Tj7Bc6I2ygPfXaL0JwfqrOk+P2Uxrn0aQmIPbtLsP0Iv81O H3u/XdyPKNvg4Df5WSYlwT/DhrJjBdDtjE92S1756Hc+48tTskJy3mpcIYm9e2VtNzQc /NMElDG7rjuAQpxB8LJgsz3JZDBl4s0AR5bj4RSpjrVOLP8RF+SF1G9ZTZbTJgGxNlt9 QQ== From: Jack Schwartz To: qemu-devel@nongnu.org, qemu-block@nongnu.org Date: Thu, 21 Dec 2017 16:11:36 -0800 Message-Id: <1513901496-13538-2-git-send-email-jack.schwartz@oracle.com> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <1513901496-13538-1-git-send-email-jack.schwartz@oracle.com> References: <1513901496-13538-1-git-send-email-jack.schwartz@oracle.com> X-Proofpoint-Virus-Version: vendor=nai engine=5900 definitions=8752 signatures=668651 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 suspectscore=0 malwarescore=0 phishscore=0 bulkscore=0 spamscore=0 mlxscore=0 mlxlogscore=999 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1711220000 definitions=main-1712220000 X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x [generic] [fuzzy] X-Received-From: 156.151.31.86 Subject: [Qemu-devel] [PATCH v1 1/1] block: Add numeric errno field to BLOCK_IO_ERROR events 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: kwolf@redhat.com, konrad.wilk@oracle.com, armbru@redhat.com, mreitz@redhat.com, karl.heubaum@oracle.com 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_6 Z_629925259 SPT_0 Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" BLOCK_IO_ERROR events currently contain a "reason" string which is strerror(errno) of the error. This enhancement provides those events with the numeric errno value as well, since it is easier to parse for error type than a string. Signed-off-by: Jack Schwartz Reviewed-by: Konrad Rzeszutek Wilk Reviewed-by: Karl Heubaum --- block/block-backend.c | 2 +- qapi/block-core.json | 12 ++++++++++-- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/block/block-backend.c b/block/block-backend.c index baef8e7..f628668 100644 --- a/block/block-backend.c +++ b/block/block-backend.c @@ -1572,7 +1572,7 @@ static void send_qmp_error_event(BlockBackend *blk, qapi_event_send_block_io_error(blk_name(blk), bdrv_get_node_name(blk_bs(blk)), optype, action, blk_iostatus_is_enabled(blk), - error =3D=3D ENOSPC, strerror(error), + error =3D=3D ENOSPC, error, strerror(er= ror), &error_abort); } =20 diff --git a/qapi/block-core.json b/qapi/block-core.json index a8cdbc3..b7beca7 100644 --- a/qapi/block-core.json +++ b/qapi/block-core.json @@ -3660,6 +3660,11 @@ # io-status is present, please see query-block documentation # for more information (since: 2.2) # +# @errno: int describing the error cause, provided for applications. +# (Note: while most errnos are posix compliant between OSs, it +# is possible some errno values can vary among different OSs.) +# (since 2.12) +# # @reason: human readable string describing the error cause. # (This field is a debugging aid for humans, it should not # be parsed by applications) (since: 2.2) @@ -3675,14 +3680,17 @@ # "data": { "device": "ide0-hd1", # "node-name": "#block212", # "operation": "write", -# "action": "stop" }, +# "action": "stop", +# "nospace": false, +# "errno": 5, +# "reason": "Input/output error" }, # "timestamp": { "seconds": 1265044230, "microseconds": 450486 } } # ## { 'event': 'BLOCK_IO_ERROR', 'data': { 'device': 'str', 'node-name': 'str', 'operation': 'IoOperation= Type', 'action': 'BlockErrorAction', '*nospace': 'bool', - 'reason': 'str' } } + 'errno': 'int', 'reason': 'str' } } =20 ## # @BLOCK_JOB_COMPLETED: --=20 1.8.3.1