Message ID | 20161208184447.23020-1-Anna.Schumaker@Netapp.com (mailing list archive) |
---|---|
State | Accepted |
Headers | show
X-Mozilla-Keys: nonjunk Return-Path: <linux-xfs-owner@vger.kernel.org> X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on sandeen.net X-Spam-Level: X-Spam-Status: No, score=-6.9 required=5.0 tests=BAYES_00,DKIM_SIGNED, HEADER_FROM_DIFFERENT_DOMAINS, RCVD_IN_DNSWL_HI, RP_MATCHES_RCVD, T_DKIM_INVALID autolearn=ham autolearn_force=no version=3.4.0 X-Spam-HP: BAYES_00=-1.9, DKIM_SIGNED=0.1, HEADER_FROM_DIFFERENT_DOMAINS=0.001, RCVD_IN_DNSWL_HI=-5,RP_MATCHES_RCVD=-0.1,T_DKIM_INVALID=0.01 X-Original-To: sandeen@sandeen.net Delivered-To: sandeen@sandeen.net Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by sandeen.net (Postfix) with ESMTP id D0EEB116E7 for <sandeen@sandeen.net>; Thu, 8 Dec 2016 12:44:05 -0600 (CST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932187AbcLHSpG (ORCPT <rfc822;sandeen@sandeen.net>); Thu, 8 Dec 2016 13:45:06 -0500 Received: from mx143.netapp.com ([216.240.21.24]:50372 "EHLO mx143.netapp.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932177AbcLHSpE (ORCPT <rfc822;linux-xfs@vger.kernel.org>); Thu, 8 Dec 2016 13:45:04 -0500 X-IronPort-AV: E=Sophos;i="5.33,320,1477983600"; d="scan'208";a="161939846" Received: from hioexcmbx01-prd.hq.netapp.com ([10.122.105.34]) by mx143-out.netapp.com with ESMTP; 08 Dec 2016 10:42:51 -0800 Received: from VMWEXCCAS05-PRD.hq.netapp.com (10.122.105.21) by hioexcmbx01-prd.hq.netapp.com (10.122.105.34) with Microsoft SMTP Server (TLS) id 15.0.1210.3; Thu, 8 Dec 2016 10:44:58 -0800 Received: from NAM02-CY1-obe.outbound.protection.outlook.com (10.120.60.153) by VMWEXCCAS05-PRD.hq.netapp.com (10.122.105.21) with Microsoft SMTP Server (TLS) id 15.0.1210.3 via Frontend Transport; Thu, 8 Dec 2016 10:44:58 -0800 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=netapp.onmicrosoft.com; s=selector1-netapp-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=KJBveTqLYmMMtjS/BlbAkIZCXav1hu/iPSmycJ9zjnA=; b=CMCsTs0MnI8MG7+WudR5UUjWEILeOcqXcilSKjz1KuS+U1Mxbji0tWxc+mWR44GH4bSgh05zwVlDkZHkRoIs7P/bC8hIFkUkAGgs38uXPwCyMXG01YBp/A7UmOZ2Rk88cpa5fXZklQCiYJGwxD5AzhtjTU5u9lKHJ+fDb4/nzLg= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Anna.Schumaker@netapp.com; Received: from gouda.nowheycreamery.com.nowheycreamery.com (99.9.112.69) by BLUPR0601MB1634.namprd06.prod.outlook.com (10.163.212.140) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.761.9; Thu, 8 Dec 2016 18:44:56 +0000 From: Anna Schumaker <Anna.Schumaker@Netapp.com> To: <linux-xfs@vger.kernel.org> CC: <david@fromorbit.com> Subject: [PATCH] xfs_io: Improvements to copy_range return code handling Date: Thu, 8 Dec 2016 13:44:47 -0500 Message-ID: <20161208184447.23020-1-Anna.Schumaker@Netapp.com> X-Mailer: git-send-email 2.10.2 MIME-Version: 1.0 Content-Type: text/plain X-Originating-IP: [99.9.112.69] X-ClientProxiedBy: BLUPR14CA0025.namprd14.prod.outlook.com (10.163.77.163) To BLUPR0601MB1634.namprd06.prod.outlook.com (10.163.212.140) X-MS-Office365-Filtering-Correlation-Id: a001c410-b5d3-49bc-c308-08d41f9a4e50 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001); SRVR:BLUPR0601MB1634; X-Microsoft-Exchange-Diagnostics: 1; BLUPR0601MB1634; 3:A9tcK/5gjvBV2E4GtG0oS+qm6SEzlhGYlMo/X9LQlP3R7FIC13Nd94/eC2BM9QqGZ89dGG5DU/w2Ugyh8efDLf7eGW391lESI8TfLd/AGUqHqHafRraeCAS7NtY2Hg4msUDqMvUcIITC+cCjG0wx2oMEKfdHUF41RnzvDNSQI22FmzZldOVJPLrtAocV8XF+r47zcqHdHXgVtMW/0NW6zdGIProVR4TOh4/oL0IL0pqMuh7qjWoInNjM4Ssus770gd9SJRMM+q6aZoUEPUnQkA==; 25:06Q89CSCmNafgYoDC97ddQq+1LkqlVq+iG3H5npQ4/tvoPl8UN6mLTFPGNZNhPOeY4sy/Tz8sMPZnV9qc1PVVg2AnKurvkvZEsIqCut3sn3id4jGYYU3N5YkeT+Tu7MCnZNLS5oNjzHaQCHOH0lGbhi9r3sJhqysEaq/3a2qemavRBbL1GEY/zVZCKm8qal/PFN5gM8wFqCNTu+6scxByMoa/v3Gy9visOA2UomAd+PnVRAaL5rm6eOoX3gfsdhslh9Mc4gOYz73tszfIae3dowRg5uRAk12nClRvvIvwlGmMZndwyXHpqraEGem4OEYeDCHLlml0W4sL+TIK5uIt8SjOM7VkcOn/5UOdgyj7qAP+vrDYZiHCL8kLXoRfEotvXMg1e+kSPb1XEz+OCSzfIOJX3pLrscsyIFjgRB32lAtkwTp4J5qP2IL/Q/ZCwUPGfyhXLQeb06zn7z5PK+YwA== X-Microsoft-Exchange-Diagnostics: 1; BLUPR0601MB1634; 31:ge9N+GCMtUfdEEscTyY0NErTl31YazIbSqx5fl8W7+aT3o0uC+O9KPpeWdhfQ89mrM1EGAWauJYTLU62aIN9tm2sbQJjRusGZ/kgf0eAjqO6kz3VmT7hpP1QdHUz5t7Xbut0tj2CVXQG52jc/zs0aGVRaiHqnZh/it0M1n3ECRvGCyMqWkP/pVsP4GyF8w2yxNLKzOPfLmuFyqtZUZEITCGpuY3acaCTXisRuKwbHuxYq4YCr8TIL1GgFNiv+9fPG5LjUktzXc+FS2Hqktqp3A==; 20:k8SyNhI0cOXlNGX31GLUGvN5LI7FoyHG6LV5BWuWOC1H7/NI4oLVF0g1ZkCddOqMivSzqu3mtPpiQ4cnucHrOMsD50eYQpN01PaXrCNE0/d1JIxU1kYabCtdoFRk+REXfHuwCcSbR6osrGwinz5f9TKcf+T/8whsFMQm5YQjmfaaOY1weHZin27hoBnW5st4DwyLkn08UEn6V2frtXrLJxfykJclwO7YwyGeWwRN0hsBJKEaIpm/n4+/0kzsdPOV8vsp3xzrHtHF15XaRfHqXd2xrJdBmXmOHB7vwbwHD1rm9N/GjEnwTFRXNQHYhCoGFFvqy3gPHKl4p1tS0po9cgi5FSVvHN/ArdYWMwbaItgWzsUYHO8Q6GdM05xPQelHbEVjbTO92uJbUAKstulkabDAnuY80gLMCp50c3+NtGnalJefiTDk4L8d5kWTGl7KbRDwAG58ZXdMT0Lw7YsE0Wk+wHwujWg9xJ3QqyNn+1ba+2E4XGPs5YFozkW3/Gba X-Microsoft-Antispam-PRVS: <BLUPR0601MB163450970F8F25512A26F742F8840@BLUPR0601MB1634.namprd06.prod.outlook.com> X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040375)(601004)(2401047)(5005006)(8121501046)(3002001)(10201501046)(6055026)(6041248)(20161123555025)(20161123564025)(20161123562025)(20161123560025)(6072148); SRVR:BLUPR0601MB1634; BCL:0; PCL:0; RULEID:; SRVR:BLUPR0601MB1634; X-Microsoft-Exchange-Diagnostics: 1; BLUPR0601MB1634; 4:iwPuQYq/nAtfUK0E83JBdAXokFxgBvQlDWbzaTtt1iF06C0jLZaHSHGNmugF95+oldBdBmSMs8jFa84g0JCEED1ai4c8OkU105WPmjzo15dKG+S8C++kRZOu8zGJP/recy5XUcY6EVjOQ01IBj/9MWDoFc3msIrk+vt1veFBp2JfsRXBOlk2a6hHynjW19gXIZvGFWNL89BHQhm1B0s9QnlZcVX3RpOeyHVCsVNhGTQ2CnDcbZwQBVyAwDeuOeRxj98o1jDCA3c5pm0VRnkFZ4dY+RuG+QYfEbIoltxBlCdFMdF4ldIywE8AEWXtm2uQ7oPdpF0kEkqPcq+F/Bpj9fWfSkyD5L4ovCu+Pdn7bsISf4KTPmaTg7v/5tSbkBbZijuRfd8B40Nk+V40odbdGzh6oeOr4usttlYaQuxWthvXGhO5oC+vw1+/LcwSMGExHbbRQiLO+lAVebgfGSqIB7VkGDb6kNnTRcBUNV5x/qNA3n4Qihe8hBZagUQ52nTQKmbIaaeSCDtXo9s2TQPwWcq4SC1loTEoNKv/fZz9T8YsQ3Wegg2R2/ZoZfbRLaNcA8FGtVWyN1+wGiCd2URDB1SNi8mWiepzzkZbBSJrXxY= X-Forefront-PRVS: 0150F3F97D X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(4630300001)(6009001)(7916002)(39450400003)(39860400002)(39840400002)(39410400002)(39850400002)(199003)(189002)(6116002)(1076002)(3846002)(4326007)(189998001)(2906002)(110136003)(5003940100001)(92566002)(6916009)(5660300001)(105586002)(47776003)(66066001)(86362001)(42186005)(106356001)(48376002)(6666003)(50986999)(7846002)(8676002)(733004)(305945005)(97736004)(101416001)(68736007)(6506006)(6512006)(6486002)(2351001)(50466002)(36756003)(50226002)(81166006)(7736002)(81156014)(38730400001); DIR:OUT; SFP:1101; SCL:1; SRVR:BLUPR0601MB1634; H:gouda.nowheycreamery.com.nowheycreamery.com; FPR:; SPF:None; PTR:InfoNoRecords; A:1; MX:1; LANG:en; Received-SPF: None (protection.outlook.com: netapp.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; BLUPR0601MB1634; 23:cU0ZHlmIh8GAeB2ng92qVmB4AgripzX0j2kjSEm?= =?us-ascii?Q?tJ7q7LgXhsnMEtpxNSCOWFocL4PxnGwi6/xvZz+fmbc0FE86DNqq/IqrrFDC?= =?us-ascii?Q?lVT6qhXQiaTl/ib5wD6bspeoKHiRNeBtGunfgO5ppTIkQMb0wV2VaQXRPDlQ?= =?us-ascii?Q?A4K6TsDZwCiixZeKhlSwcTporj+ZbwORzRxV20lW0KDBA97gxfk2xzNu6OF0?= =?us-ascii?Q?DxBtK0QMWOUOWUGUeXpuZtbvy3erKbGiVhczahw3zwn0duF9TJcq85CgUJUu?= =?us-ascii?Q?Ix8rIrfWIOHzf2EyIRFMxgyUzGHheiNMGs9TqDyrmsar1SkO4gCAM1RswxJM?= =?us-ascii?Q?bF/cyMqfhlJhMcT341Z/SOt9YNg9/ssHx/ZTaA5NBAxqB+Q18r2KvVKzl4Aw?= =?us-ascii?Q?t/+HnFdwA/CXPF0OvvFD5SQrI1Bl69AMpBHT5CEscL2KeRw2GbkXMMT6WlrY?= =?us-ascii?Q?1IcPrUYb4BLBwnsgfcERPsSv8UmEy/fLk9fR6PijY2i6tDyuAc7AMM4B1Eap?= =?us-ascii?Q?HXTCUDYDReduBGOm/Z5Dn7JFYxatzbnspS8AHCtbPpVHb5TKXZOSPR75NqFh?= =?us-ascii?Q?a1liKE0WDcHUlkUnEj9OAHMGsG9A44AHD1yhy+QCYSQrBkM6U4yJfhxMNVAQ?= =?us-ascii?Q?j0VYgQcQBA1uC95oF0H0/m/YPm4nTspVybnvK3YPPUoZxuXWNR8b3sH40pdR?= =?us-ascii?Q?GvXyqNBIKUeUwfk7y6xBy+TlM1hq932jINpJY/1/hieaOrri7qIW3lvuY5QR?= =?us-ascii?Q?ju9vPS6mprLTVDVU0Bx/W/sad1ZQxsMBxpaQ11+VbsQFm/U4i8dVeFwnW/yc?= =?us-ascii?Q?fnaEPAmMjgWi+UIPza8BImR5WaPmWcJbMCsvROkE0otBT1I/1JE7xzMdDdbs?= =?us-ascii?Q?CgpgO68SazN9e3BHJzJgmEwT3USHUIsVkRupx0HyhSF2f4RlBpSNMxfMQlHR?= =?us-ascii?Q?fqwxanZoXDTQ82YVJX3PvbrPc1oYOb0Y9lBWG2T6KKOL79PAphzVBQpGhDDF?= =?us-ascii?Q?r+KKMPbhntgylOT8FURVEPSEopsqxciupQ++I8bGg5K6GzmI62RnYaHLHwOb?= =?us-ascii?Q?msieqAnMqR54kgbcBeY9ZRDKes0m3M1p+OXa2Vc2/3XL9LdB2gKYsBHfb3lO?= =?us-ascii?Q?eNxNiW9po7I9ySE0IiZVCqvxvBIB+gD25y3Oah9CcJUuIbCkYslkhfg=3D?= =?us-ascii?Q?=3D?= X-Microsoft-Exchange-Diagnostics: 1; BLUPR0601MB1634; 6:oF6iB90G5w97eQoHPwEBQqjWbRpcNFsiFCQI848kXxrzcXN7SUTLvIdUbzT85Z9GOMzl4djgBf2A3H8C0bYz2ucpkTeWK4GFWuGAtc+NKoCFMvH0TLLASgQy34OMwlA7F/JNo6LYH5RjAFqLnhxo6YmdK7mCWkjyJB1NvpEJdwZZX6iRXPtlSNj35GMiynHyn89Aivqjakeiz1XgW3yOtESltdleYLZpWlwjH8GzakLtqGbEljrMJXSzNncuI3LxSH4ytmNXvblYiph4pQwbAViAlXFqpzLHGskN+A70JNxONJLjM4kcJclNCsUHjh68gEjpfzD89A2DJ52y5lMZzUd4IfhNXY8bho5uPEZcE3LBS1rIeSLa25WY7dy/eNMd88sUE5awAt+nDDuKu+OcfrhiUHGXiFHW+Ra3yR2K1k0=; 5:1OWee70HeQQuV3dJUY3b1uJjn6j9W/utS7C/tidLaF6s0f25DlxOqejfiEVJS3U88Qgdl+me+Br8sGG7P3rU03PoDu3URnwZsvvAPGqVvDhc0kCoO6RoOPw6R9PXvYZZ4UC3zzfe+thzO+qKRQzbCWzhyNMGT+/LjRVbmkjYCY8=; 24:TPAqQV4hwXB+ssoALyfmmpMv0kyCzkqLOiHX0dVw5+0eZl6dBL6JLe8YaClHG+gZTXDBJOhMEPyQL8mVp0MIonqVQXMPu0oDqy7syQpfl9U= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; BLUPR0601MB1634; 7:44n0fXb3LWB3TvSTgxG4yrJLCfiPcMW5NfOaq7zr1N3Dw2UfVobar3ItO59krC9r3HT9gzmnPvwt7IHhJd0bE5Xfs1I8z5xmt1xQFuD7PrrbvaxUsCJm/ChjN4l6V+uCE0p6fmfoXGsg45Ri1EQ8SHguKmoDpG9LRMNhfBF7PdooiIcXU8aKQ6dzrO6sEgQzFYOlJ6Yln5ryAEd37nNhrioW3co+ahS8hEWQ/BApXW+fS7gk9YqjG95kb7hqf+YNHpmwXNDBvjrHahAKzO2R1L+BwOnK6gx1FxOxLgcDuEPplEikFY8K3qc6y5CENQjhdeOK/gpwzAXM+Vomg/Ve5GYjYYuqqkr4BmnVh4bnbadpXtMmB8UPmEG4Oc7R39zyNqHUzWcM+yVrOEKK7vht0on1GhkaodmKYyRZZUnE9iTaTR1DSP59nw4XuZSiKgA/l3nV3yXaPL+YFHtEdWvVGQ== X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Dec 2016 18:44:56.3311 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: BLUPR0601MB1634 X-OriginatorOrg: netapp.com Sender: linux-xfs-owner@vger.kernel.org Precedence: bulk List-ID: <linux-xfs.vger.kernel.org> X-Mailing-List: linux-xfs@vger.kernel.org |
diff --git a/io/copy_file_range.c b/io/copy_file_range.c index eddc634..161bdcf 100644 --- a/io/copy_file_range.c +++ b/io/copy_file_range.c @@ -49,8 +49,11 @@ copy_file_range(int fd, loff_t *src, loff_t *dst, size_t len) do { ret = syscall(__NR_copy_file_range, fd, src, file->fd, dst, len, 0); - if (ret == -1) + if (ret == -1) { + fprintf(stderr, _("copy_range: %s\n"), strerror(errno)); return errno; + } else if (ret == 0) + break; len -= ret; } while (len > 0);
If copy_file_range() returns 0, then that means no data was copied. We should break out of the loop in this case to prevent looping indefinitely. Additionally, if an error is returned by copy_file_range() then we need to print out the string form to be used by error checking tests in xfstests. Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com> --- io/copy_file_range.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-)