From patchwork Wed Jun 13 17:44:24 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Anton Nefedov X-Patchwork-Id: 929003 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (mailfrom) smtp.mailfrom=nongnu.org (client-ip=2001:4830:134:3::11; helo=lists.gnu.org; envelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=virtuozzo.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (1024-bit key; unprotected) header.d=virtuozzo.com header.i=@virtuozzo.com header.b="buI18Nul"; dkim-atps=neutral Received: from lists.gnu.org (lists.gnu.org [IPv6:2001:4830:134:3::11]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 415Z4V53nFz9s2g for ; Thu, 14 Jun 2018 03:48:58 +1000 (AEST) Received: from localhost ([::1]:35973 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fT9t7-00066e-4F for incoming@patchwork.ozlabs.org; Wed, 13 Jun 2018 13:48:55 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:59571) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fT9pN-0003Qu-6Y for qemu-devel@nongnu.org; Wed, 13 Jun 2018 13:45:02 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fT9pH-0007F0-Gu for qemu-devel@nongnu.org; Wed, 13 Jun 2018 13:45:01 -0400 Received: from mail-eopbgr10095.outbound.protection.outlook.com ([40.107.1.95]:27040 helo=EUR02-HE1-obe.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1fT9pG-0007AL-Vd; Wed, 13 Jun 2018 13:44:55 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=virtuozzo.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=14aCL/lbJZM7qtcl4+wDBCEQcbvz3lVcxByqTagh12k=; b=buI18NulGy4alzq1b+34btSlSRb9wacUNyfwxFcona6uYybK3tRs4INEJI/jaXPAb1Iop8QnJbUv64X1rx8ilcsWq8zbOf9IdGAsB3dPBlwXBaEvCHloPtNAyLduuf4H3XZLC9XT5nhTWksoXvkmWFP57H9w2zEgUaqPQBc+ZII= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=anton.nefedov@virtuozzo.com; Received: from xantnef-ws.sw.ru (195.214.232.6) by AM0PR08MB3347.eurprd08.prod.outlook.com (2603:10a6:208:5f::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.863.16; Wed, 13 Jun 2018 17:44:51 +0000 From: Anton Nefedov To: qemu-devel@nongnu.org Date: Wed, 13 Jun 2018 20:44:24 +0300 Message-Id: <1528911866-37489-7-git-send-email-anton.nefedov@virtuozzo.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1528911866-37489-1-git-send-email-anton.nefedov@virtuozzo.com> References: <1528911866-37489-1-git-send-email-anton.nefedov@virtuozzo.com> MIME-Version: 1.0 X-Originating-IP: [195.214.232.6] X-ClientProxiedBy: HE1PR0902CA0023.eurprd09.prod.outlook.com (2603:10a6:3:e5::33) To AM0PR08MB3347.eurprd08.prod.outlook.com (2603:10a6:208:5f::20) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 951804f7-dd5d-4fa4-fff5-08d5d1555e26 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652020)(5600026)(711020)(4534165)(7168020)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060)(7193020); SRVR:AM0PR08MB3347; X-Microsoft-Exchange-Diagnostics: 1; AM0PR08MB3347; 3:XK5Snfa/ef/J743r4snqsjoqmgTBXzIb8RX2duFwl4bY0ly93scIQ3e8INbwM4r4hpVlmuNZlcv2EFp8oKTSVfhX2qTiahaaUd76x3ctWaaOQNYJ8ZmsKd9S6D96toBuJKkSSEiwYzBGRjs59fJ8BzuOu2YKhPMkIhq3hEmdo7XQHadZ91wUX4zZ/M05gH7OsjQmECtUGugaotAqXQLOQPYcP4+j1CVW3GjOhEIb6iv8d4hTO1BP1WDTsrZYTOVM; 25:d9m5vKWvjj8YNIo/aFJM3b92DlXYCK76oxhUw0Mhy2EdBqzxc1BpIxo3GWEENZqzqDnVBovFFK9RaX9WT0KzYvhZhkhqKPuN48tSSYy0OPo9HaO6OL1W4pvRGa2DozKC4ATWXCr4gZM6eWogy+FhvTghr98LvV7WDn6W0fV3Bs892v62rD4/4BkU82Zd9rCrLPOkzn9207vNt0+J2lwlQ8DzzMEm46BzPGv/FDVtI3FyXsw2wn7az6dSIXWzTM/TO85aC54Gu8O9phLT8fBlDWJEiEHQhIyW3ZF0/qxCcCzD7OvhA1cMlkTFPlUw5x/KEl19IIiiAmZ0tGjjz1TccA==; 31:RSp0zqMbZPx+RPC3EdmzNSWijsHq5lr0TCo87DGiF4HVe+37jjJZsokIi8nVTCEEOkcxoIdaDcInB24KmtD/IC7khrflTU9P22e5QJvMgkuxKMdHWmVvtwnCSWAI0Vuf4TuHME4jn//64aMj0urzEX1lwzXoGGkK+xWGG+1AhnpFtnKdA/hybFFcEOcGUBa1YN8R3f51MFmbq9gVnNNNsDQ7oyXs8v4/mM5ynco5x7w= X-MS-TrafficTypeDiagnostic: AM0PR08MB3347: X-Microsoft-Exchange-Diagnostics: 1; AM0PR08MB3347; 20:xGQYmaPWmSTgZcvx0iB2lQzA0shKGT/BKa15K6A6Mzn6N+9Qk3R6PAQVDzqFOPrWbabnj8xho5KzyXvk1we+AzMMAaGGtk6l8Fl6Pq16weGrt8FkxMjCxeFWsN547tahlzZnQon2FLhK8l74Sgmi83HSg7+vX73GUyhFa4aVn+9RFbJoskr5T2ojS50UTPUVFjyH2nGQYzOXV3RU2Z6GHLMLca3d7AAhYXrfdTeSBnLd7rEKW23m9z1VbzqYx5pf3ReLYEiTpURAMykE9K9Gj/jd/5BaOBoH92GTxTkSW+jfselGudWJEokRjOzyTqiBCy5W5hVByx50ilwvuyoOEa5YM5Q5MvES443PWG5efEDrRKeqqYrAca+AeN92Vt04IvkbKSodPH/nI62nsPzTW19uB+q6iMqy+qo1OKC8im9rT48AuXKwe1lC8UV8wa6Q9k/uALtU9clS53BpkRMGgznWjGo0LwFwnpyd3r8cyNQLREJ/Lmi7gLYlqdcJIjX9; 4:gIO//X+ZoXw3bbO/IE3zt4bNV/MXrg57zIaAhjuqvaKqq9MVEOKPikeJ8kApDaZ2irsqWEW1twg0JUvKeang5lvGPxHdkl2Telg7hRp36+khOyZPYolQW24hODF2AWsncqGh2ywtZ2hrH06XnaY9AxdTfErW2VJd9VQeYurR8sF6YHUGouAH9i05sP33/+U4Cr5MkK3sJt1/V22mJWtTk/SxkKhIXO1gJa4BmWA1ojIqjalxq2OJ+Xw+4lSHyEcYzYqkHMgXFPM7hNZwoC6KMw== X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-MS-Exchange-SenderADCheck: 1 X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040522)(2401047)(8121501046)(5005006)(3002001)(93006095)(93001095)(3231254)(944501410)(52105095)(10201501046)(149027)(150027)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123560045)(20161123562045)(20161123558120)(20161123564045)(6072148)(201708071742011)(7699016); SRVR:AM0PR08MB3347; BCL:0; PCL:0; RULEID:; SRVR:AM0PR08MB3347; X-Forefront-PRVS: 07025866F6 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10019020)(396003)(346002)(376002)(39850400004)(366004)(39380400002)(199004)(189003)(50466002)(2351001)(386003)(4326008)(2361001)(59450400001)(6512007)(52116002)(105586002)(486006)(478600001)(106356001)(44832011)(53416004)(107886003)(51416003)(53936002)(76176011)(11346002)(956004)(446003)(2616005)(476003)(69596002)(6486002)(48376002)(16526019)(6506007)(7736002)(97736004)(186003)(5660300001)(6666003)(25786009)(6916009)(305945005)(8936002)(6116002)(3846002)(50226002)(66066001)(36756003)(8676002)(86362001)(47776003)(55236004)(68736007)(316002)(2906002)(16586007)(81166006)(26005)(81156014); DIR:OUT; SFP:1102; SCL:1; SRVR:AM0PR08MB3347; H:xantnef-ws.sw.ru; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; A:1; MX:1; Received-SPF: None (protection.outlook.com: virtuozzo.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; AM0PR08MB3347; 23:SrfUL3d7cIlNNtNhYFweG6jrIPso4D9mtyEHt8Hxb?= be1MWnyQSBMZVEWX9bzjo4SNiBk51kcfxYZ+pxp3FTc+u85QTInowchE4A2C0/eDKB1xY8XBjmn5KmZpBE9DxltPWhiAeuJNvBJNtazxXVPgc2StBIBDiYaXpW8cZiCedqlnvq7cO+Q+Bxkqxv3F4i9ViS1oZR2eFZ1W/uL4Iqa30zBak9s09xrOsN6zbL9PaZxEDlJEjd/vU4aMqLO/yc6Lg+tCkhH9S2NBmpnaO1AzL0jcxjFCovHkJPSn7onOcV4okNDm92xn80ZG3lHMEwobdtRZoYTECR1X2x/ft4K/cfNZn7DEaFJUrELrpOvRz8pi1hdUaVWSPAb3Ql9YIctOJee+3L7qDb0HakDGK4dcnIHFYIY5a7bgPQn1Z/Ej/ZDaLt8xO5ufuI2xAex6HOQ2JnRw8MOQlha1CR+hGF/xgnGltGDwXUm1c5RwKa7A0Wm3sMGH2L8GFeF1ZB/wKVD4cERqpMwgpcKrTBFtr1qxwRGMldMtB89aY87GtRnyvTMHjnxw+wXG7HlpUOZjP7TTJwG5QxYjDrkOLpm0bn8FvxUOGQNCedu8rLChGEhjmujyJGG9OY2+9LA43hW+QLvnRB5VG+UcxR46J1SmNovOeszcWCWM0haNbBpM9pL44FUNd1mhzUv6bN/75/gRKkcF4cNmlqemyZi7h3v6A0Eoontaj+9+CpwYUeOqA5Kkx/yX/4Mt/SENJLXWvcScksCB6IurJo17j1q+HqNpGHAq7dbR0uNGIRKcUSmFe0r6b6KtIdLejcwHl9X0M+2ia/HbIcfPQFUaobXgFNOhJ0W55cR5jyjyinzdSiFs9f4HB+45mcTsJVCOBLrzcNY/VyRedDrOOrNxegzx0KllRoosadt2r/cwX7dFHNBDab46/cY+/t18Xle1e5l8SEbx6wkt81ZPju7CZkmSbYy5FAszf8V4VrOZagorRVWWntHbiWZnE49hKY3eGwM3uapbYnOvcVPk2iTH2fQk9Hc9uMzhEdbCJ1C7ElXCecNX/AnI+Ao/mQtH+wPVkM701VKg/0yREkn+YnE58SgiNJHZuIm1aZJV+tQM5otql7zCcJmV6U9o8W4SftWQG3BF1wIZLAKYe5JXTHpBi3dD8xPO+cUXt5mNgnNej2hKg/Vn9kcfjKR7vD66CVRuehhxejVUqocpSdl3FsM8KNAuwsUWugULlzQ8gQb31Nh+kvjYMDns+ZPlx3de1hrjmnFierfEJqLqceD/iftursjf9ug9tDuoTluKYNeiAUAz9aETC639qoCIwrQLSDrZyhsG4EOBRpMXieAY67ZHxM92BBc3us8tA== X-Microsoft-Antispam-Message-Info: jGV4AMCujDjxqrHTRXYjj89t++oRXdYcVqlRy9crdjZkL3P3u5r5C/TLr6BYmZhaEeFHkMMIcAd6Qhl0du5UQOICa8CC4RcwqOaYKSiefs1WEJ5sDYlFbClLMXDaG5xQ5Eqfj4Pj8mVSQUTVudwJBKCRyhOuySOg/WL9NidgXW2AcHG3lAJMRrVNIzpIb9+Y X-Microsoft-Exchange-Diagnostics: 1; AM0PR08MB3347; 6:if6CMH6ymqXoBM7R0U5ei7C82TM+FhQ3VOOboiIgxuoGkrpNdG+cJwxm9A6R2otQXP+szFS4vlXWy6KZXiilLx+lVFuAhsA86THCU7t43/dZf7tjP9JjtTs6S84Ehki0xtmisuO1bVQ/atKZz1b2lyIgfP6odkbwwbNu99+QiS9iIB/R3JdNvRpZGWO/R/UEtZvPPSpWk+WiLh+936a+UCrFHug9rD9mekR1qK2cfJA5DgvbdtgWPRMlr9A7jah370AD1J8+o16ESHlcpQ3y8ijJBSnESwjFBE4HKVxc1wHi3HcuWMfIMkJpEGn/EMKjdSWlsq6K+mpZyuZAK1dQQYmv3R9Gvr7L/MO+bQU3FvxLcJamAs+twdauRy5EkmKZupogmRwzadFhaRdk6sNrWQ3t6B5snScAz/dQrrr/iI8rK+lZyatieJt5G66UbpsYcjsHVk/7TT4U0zHRlf2fCQ==; 5:gAETiKSQs2q5loThyxOt0msjyHxgKUli5Zhvkn9Qs1dqE71DgS+WtRpTdWJsC7VT0LxZvQiACi6LIVgitt/SKKAxQ1RWVzWTE0oiz17IZ074ssmrG3t55BBLuIk3sOGFkTfyFC9qg2zYnhBExpSeqgk/HwfworLb1RJkJtn+ChY=; 24:+YSE8vcCmkTST1PAtf8HA1VyOmQqqg8psm+TnRu8qJ8dgOq1lVI7LjkVXWcpXtT5E42GMGCC4DwwovtYspZ5xr/8V/oon5v/w7c+swZpQWg= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; AM0PR08MB3347; 7:7+syPl+ATmiXgSpf38QZqxp9knF8O1yrQl4lLBSoACZz71gkAcPbTa6dfWcWl+aNIIP8zNLDh14ui/sTtJzTx4PZa2GXZinqIq4w7W7/PjNsd5jqP5eEQ0k0p4P7IJX63+Yi4tbs2bxjy8i/wnmkAdhwsVv/3Ui9yKv8blOlA4usTUc5Ol0ZhQxcW/x5KnHEgqNJh+IHBNIjQnd0VNPffTb4glAM1lzMC2ikm9t/UniLPbUBBogcfLP8nn+H0N3D; 20:ZcmgBoufcg3dDdkLgkGQ5xzidPtiR0g9WjnRd+OAXtktbcye0DWL9mT23HoFCz+SA/E/smeHMSLZ+K2ZH7MI0u8eg/mzl/TsHWeUavE6pLJnTzy+G+wih/G96EayzflL7VH7YCPsGDFWooUJ0jIl71+8VsAKqdm9hsdsqqQdawo= X-OriginatorOrg: virtuozzo.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Jun 2018 17:44:51.7307 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 951804f7-dd5d-4fa4-fff5-08d5d1555e26 X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 0bc7f26d-0264-416e-a6fc-8352af79c58f X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR08MB3347 X-detected-operating-system: by eggs.gnu.org: Windows 7 or 8 [fuzzy] X-Received-From: 40.107.1.95 Subject: [Qemu-devel] [PATCH v3 6/8] scsi: account unmap operations 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, Anton Nefedov , berto@igalia.com, den@virtuozzo.com, qemu-block@nongnu.org, armbru@redhat.com, mreitz@redhat.com, pbonzini@redhat.com, jsnow@redhat.com Errors-To: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: "Qemu-devel" Signed-off-by: Anton Nefedov Reviewed-by: Vladimir Sementsov-Ogievskiy Reviewed-by: Alberto Garcia --- hw/scsi/scsi-disk.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/hw/scsi/scsi-disk.c b/hw/scsi/scsi-disk.c index 0b68a8d..ed72662 100644 --- a/hw/scsi/scsi-disk.c +++ b/hw/scsi/scsi-disk.c @@ -1653,6 +1653,10 @@ static void scsi_unmap_complete_noio(UnmapCBData *data, int ret) goto done; } + block_acct_start(blk_get_stats(s->qdev.conf.blk), &r->acct, + r->sector_count * s->qdev.blocksize, + BLOCK_ACCT_UNMAP); + r->req.aiocb = blk_aio_pdiscard(s->qdev.conf.blk, r->sector * s->qdev.blocksize, r->sector_count * s->qdev.blocksize, @@ -1679,10 +1683,11 @@ static void scsi_unmap_complete(void *opaque, int ret) r->req.aiocb = NULL; aio_context_acquire(blk_get_aio_context(s->qdev.conf.blk)); - if (scsi_disk_req_check_error(r, ret, false)) { + if (scsi_disk_req_check_error(r, ret, true)) { scsi_req_unref(&r->req); g_free(data); } else { + block_acct_done(blk_get_stats(s->qdev.conf.blk), &r->acct); scsi_unmap_complete_noio(data, ret); } aio_context_release(blk_get_aio_context(s->qdev.conf.blk)); @@ -1729,10 +1734,12 @@ static void scsi_disk_emulate_unmap(SCSIDiskReq *r, uint8_t *inbuf) return; invalid_param_len: + block_acct_invalid(blk_get_stats(s->qdev.conf.blk), BLOCK_ACCT_UNMAP); scsi_check_condition(r, SENSE_CODE(INVALID_PARAM_LEN)); return; invalid_field: + block_acct_invalid(blk_get_stats(s->qdev.conf.blk), BLOCK_ACCT_UNMAP); scsi_check_condition(r, SENSE_CODE(INVALID_FIELD)); }