From nobody Sat Sep 03 03:11:03 2022 X-Original-To: freebsd-fs@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4MKKYX1SyNz4c8qX for ; Sat, 3 Sep 2022 03:11:12 +0000 (UTC) (envelope-from rmacklem@uoguelph.ca) Received: from CAN01-YT3-obe.outbound.protection.outlook.com (mail-yt3can01on2078.outbound.protection.outlook.com [40.107.115.78]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "mail.protection.outlook.com", Issuer "DigiCert Cloud Services CA-1" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4MKKYV6d5lz3Tm3 for ; Sat, 3 Sep 2022 03:11:10 +0000 (UTC) (envelope-from rmacklem@uoguelph.ca) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=mIxUR/MecxLBuSPTVQg0HyJeP00evGQEFG5ATbf4sNjgyULG/2vfJja0NJkhFkkvQZfbcIIhWtuQVZOqTKwExi1dd+J1FgoG5YZurgCaHVKfHDa+jxEtu39pH+r1m3venchd6hq1itzvCP0CLnRRoI76IpCaerAMtwTD3ISt9gq5DGwKYPAk8eDDzp6WCN6fz+WNkQS9wgTxBvaa4HFKYZDv1mpCEau65Qk3/vSxXk61LKxgXUF9g9SVyVDf9PBWTomXEdQlk2JTZ940PMBI+NWDRPfqxUmiFOZebk5f1rfOxbpO48fuNbp1eLqr4xxMXlKCedVbSFuVHbALF72PxA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=muYfohvB0e3xHatvkhq+gaGcsv6bzmz6hSXlzuRQCKI=; b=VdZEgU/ootbzw+tJ2V+HtZ1HxaH9pGdpq5IXo0++XRFbisYP0PhzquBpl3exkLngI1TY0j+hsGaO69UVsbQOFFU2wpu3ZuXVRJGsOLOpwztKrlo7TBVRvnPxjw8CEjxIbP0AYdxW5aIV+xiKuTfP61hG2F17B8i9NMor2zI1DpM9MyDPQKy8WvWVBsv4y3wmoLINPNqhVvDe0MK7HXtYBnhKoy8LqMUIvU8c9AWW6hQM9HfQ4wiP3bq5qEWY7mD5bv5p2tN6pAae37McJvGhDpymrtcz86r6RLF1nua+Cews2MVR9hQXvmA+HFcYicE5JXkJhGpS4DToE51/V4LTyA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=uoguelph.ca; dmarc=pass action=none header.from=uoguelph.ca; dkim=pass header.d=uoguelph.ca; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=uoguelph.ca; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=muYfohvB0e3xHatvkhq+gaGcsv6bzmz6hSXlzuRQCKI=; b=J++kBEwJLXxbB2wdeq6BpDaT7WvcFF7PTabre3WsKHOcRR4xQkxgxmAs4DxNQdjDlfRRh+A+g/bJa0JPHGgXC2Mhm049iL5V4LCyIsEW+nfgXC1wqQQD45IsZoHGMFqEMWQvxmmnKHOKC+RoYdaJ8KoIWvhCtsAJZ00tOxHwuyz7RP3vneSfd3XArcN5gTnXEvPpn7mH3EkHQnhIZCnTdfEs9TILbkAdgAcdmaStVGFdfGM1d3CRgi1BNWwLE4wxccQ9wYyrumZdcHGeI6ZD5a8MqwpCQnEnyCO0geEw9cGshY4Hyk24Bo/HRDtjSTkjjprYf3U1kn+SskBUlEyraQ== Received: from YQXPR01MB4150.CANPRD01.PROD.OUTLOOK.COM (2603:10b6:c01:6::7) by YQBPR0101MB8557.CANPRD01.PROD.OUTLOOK.COM (2603:10b6:c01:54::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5588.11; Sat, 3 Sep 2022 03:11:09 +0000 Received: from YQXPR01MB4150.CANPRD01.PROD.OUTLOOK.COM ([fe80::980d:23ea:9bc2:9f37]) by YQXPR01MB4150.CANPRD01.PROD.OUTLOOK.COM ([fe80::980d:23ea:9bc2:9f37%9]) with mapi id 15.20.5588.016; Sat, 3 Sep 2022 03:11:03 +0000 From: Rick Macklem To: FreeBSD Filesystems Subject: RFC: multiple concurrent I/O ops for copy_file_range(2) Thread-Topic: RFC: multiple concurrent I/O ops for copy_file_range(2) Thread-Index: AQHYv0H/+RMlpemwREiRz9tUi24+UQ== Date: Sat, 3 Sep 2022 03:11:03 +0000 Message-ID: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: msip_labels: x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: ec2a3c99-3faf-48b1-c337-08da8d59ef37 x-ms-traffictypediagnostic: YQBPR0101MB8557:EE_ x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: h4c6v4eLxw3X9X6HmD1FFgd7l5ZILXYvYgk+Clafhso2Nl8BHXe7Ulls++AfbraHuPORHsfhEGWbAh+H7N4S3GullG//hBc2qJ771FMTffYEDFhrxeIbxBr+/djhK2wHJ7yEucL7Z5zR7DYzffBSYQI5wPBkVO84GtNjiYW9tnziQsTzjeikSHxwDFSGTS1G0e5/7L6njcK2Jab8Tdf1B0gxn5aSl+yQyuQbXihCMUqzQBDLfUS9JNBgMbT1CNXA+QFeIrWrrD4iion2u9+n0t1pG3ZIQEMyD9BpcZFF1zP/jR1wT6MJBHdI1PzbP/gSbrI2t6D1ir/SactyNOZ41nqyRC44Pw8Ad0Qdnfb2nBedACI1osLeKdXg8LlTfPN9FAwG9R+JcLZ1CeN5+DJdfDpYwgvbY3RTr18LklUV/t578naKXegZ7Lgtt8Iol2aM3AZUhShOSDweDqnJ3VzuO9FIUL/jksF+ScuVkbSNWEIQMCekS7+KvhI+htgcD0zpYudlQxk5/ZcebqfQLtT9+0tucDUI0zEuxxWBSGqUJAy/EPYdNgSgECei6mPi52cOjBpcvYow5s5/v+qJ/K+T/aYJSW1H7YBAV83RLQy2qEhUhM5+HrrK2nNxodaEQifT92Fl13hmRBEQwUbjNB82BP118hzMzb5S+/ijgGcPcBaGIjWa4BaWZA4ffsdIEi2I9rY7QQBhBi9AXm6JtRstKUdPkTHeLd/N/BB5oJb5cCCoZtK7BVEfUEYpTD4xc73J x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:YQXPR01MB4150.CANPRD01.PROD.OUTLOOK.COM;PTR:;CAT:NONE;SFS:(13230016)(4636009)(136003)(376002)(39860400002)(366004)(346002)(396003)(55016003)(71200400001)(316002)(786003)(41320700001)(6916009)(38100700002)(122000001)(76116006)(66946007)(91956017)(478600001)(8676002)(66446008)(66476007)(86362001)(64756008)(83380400001)(38070700005)(33656002)(66556008)(8936002)(186003)(52536014)(5660300002)(41300700001)(2906002)(6506007)(4744005)(7696005)(9686003);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?iso-8859-1?Q?vWmyt7SKB7JIZ84/lhxSCqsO2BRnFjJGxj54eW0CI/vJSgCqrTaeP3Rp1u?= =?iso-8859-1?Q?qKCOJ7dL7NFOavljekxIhsshjr0btVpfnsvCzEAQDRTm8PDCButIBxlYLG?= =?iso-8859-1?Q?XZKU5ZHFmiKLUCpYjQiMXa+Jtw/f0Py66K2kSUbkk10agWy6ig7NgVyyvP?= =?iso-8859-1?Q?cPNMzDmDprEsy2OSEOB0B7bRbYDbE/oFqJep/VwZOkLl+dwtyCwv5IvMcm?= =?iso-8859-1?Q?lwf3eyffEGcCIFpZ1aHR7g9Y8oKssKsCSOVuJds4HXocV9K6uq7oMz1ttU?= =?iso-8859-1?Q?/CohUL2aI2QfE8YVm05UplK5g6RS668PaQsnv1L2w3ikXq+Lz5wuGPjob7?= =?iso-8859-1?Q?E/VUTnRMOmFRzkOmMMYLeh3yplqpucdBhHYk7X4G9A4Cw30QiiFxHtrVvS?= =?iso-8859-1?Q?ZDHbKfWhioBUIX2PyaDmR917aJ+ue+vTBzAMKDc2KNadaGW7F4iFfQ0Dhg?= =?iso-8859-1?Q?UDV6Tn9pCymjgiNp/MCXDvsuOEu3RhXt2Xjl6KGia2JBuGYQtD8HBThi+x?= =?iso-8859-1?Q?aFnXroyoSOYL1wGTNGS9kTzr5n7WYefU+5YBHS9XSW2atdC/aEqUxxROYV?= =?iso-8859-1?Q?HEumc7Sih8oDyVyiwxi48Zl92PWuadwK7v9081s6XwiFLgjZxgFQB2WNNU?= =?iso-8859-1?Q?Vo8UqXntARJVE+OH57Cpo1N12QKoFZ9ZfpYejIQIS9DfsgncaGmYhE7ykV?= =?iso-8859-1?Q?nJWwtqvm0behe2piV2f+ngaLIoxbEP03/HkoVty6d9UyIn8GCzRG3fzb0w?= =?iso-8859-1?Q?9hHyGc/9yRbwhv1ps5jl7PqIy72JYCxGD4sAekiTv8DXOi/0xD0JVfzW6/?= =?iso-8859-1?Q?Cz7SSFWcJy71jcCQVzYqBwoUCtlUsvqFHzO1fMLsg+I+MZAOyEEPza0CXI?= =?iso-8859-1?Q?mg/SDuf50XCZCq6HXW0m3K7p4NCnd04PazrxpzuWwDcurrvsQb+ro5cCp6?= =?iso-8859-1?Q?fHIuPQ4LoMg61GeNJhaLwjFJyZ3H4A7RgQ2tPmbT1ppcVBOQE0/YHMgKfS?= =?iso-8859-1?Q?LiIyzIBzbwhI6Tj0Lh0MpXsPtS+jFqTBxqeXoxdK/hneKRGiqU/3U2SrF8?= =?iso-8859-1?Q?RKwayMUWSajDrXIEkjrJ25FnD6YLtAy4zY32i2ySHWEHQOSqmRwQebKQ3v?= =?iso-8859-1?Q?n90rS8O/+xA1G0Z8aA+cB05MT88hGWJlQe3ZKFBOitlKAhD8hjB6oxfTv9?= =?iso-8859-1?Q?ulGzfIKHO+0eQRjko8oYMexYpnyvdUeEMXDU1fc9Q72xGAKAq4412jwGF9?= =?iso-8859-1?Q?RVDoxUjOJVs0xN/nAAJeJzYL52JSuWq458HoMIhcF9X6qOhSX2r/CdEAaI?= =?iso-8859-1?Q?zyX4ZVmTne8l6e10cmlOjZjaKn5PPX+Fcq/GCWzrVmE9MQp4N/W3V5SqgF?= =?iso-8859-1?Q?mNPevXdmwy4XDLqIvGu4WMfFGvy6OaAaKH4o44bWLDAkL0ptOGyy2Gh13k?= =?iso-8859-1?Q?Z2DAGJuw/wXfLqrb1fZZFFALUg/XxnTZPeLCLXbv6wuGgiS2pBFnvrb46B?= =?iso-8859-1?Q?y4wPAx2XhmugJvuB3GwqdWX4KEUPJddkBclHoQqo4Pg3BMBJyP9Sw+MPl+?= =?iso-8859-1?Q?lRG0gKNJ2p6Jo/Eclp2wIp88NhNBg7c8xS8HGbemZtYuswYlSBHGCWlDBC?= =?iso-8859-1?Q?Dq9nOQosgc8CleRwOzaDytXGbIScQLt8IkD4O65LXkH4VjN5tjA5a5S8wk?= =?iso-8859-1?Q?n1ZvX1Q3R5K4MHz9L5o4S90iySCzAJexNGEUgp4V?= Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable List-Id: Filesystems List-Archive: https://lists.freebsd.org/archives/freebsd-fs List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-freebsd-fs@freebsd.org MIME-Version: 1.0 X-OriginatorOrg: uoguelph.ca X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: YQXPR01MB4150.CANPRD01.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-Network-Message-Id: ec2a3c99-3faf-48b1-c337-08da8d59ef37 X-MS-Exchange-CrossTenant-originalarrivaltime: 03 Sep 2022 03:11:03.1049 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: be62a12b-2cad-49a1-a5fa-85f4f3156a7d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: hklakpk7pyp+2+SJfbBYFEZfNBwRP+/5wNKbsbsO+/EqYtxkyLBl8aYIOrVwWGMeu9/JSCN4MGe7z3vzqw6/kw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: YQBPR0101MB8557 X-Rspamd-Queue-Id: 4MKKYV6d5lz3Tm3 X-Spamd-Bar: ----- Authentication-Results: mx1.freebsd.org; dkim=pass header.d=uoguelph.ca header.s=selector2 header.b=J++kBEwJ; arc=pass ("microsoft.com:s=arcselector9901:i=1"); dmarc=pass (policy=none) header.from=uoguelph.ca; spf=pass (mx1.freebsd.org: domain of rmacklem@uoguelph.ca designates 40.107.115.78 as permitted sender) smtp.mailfrom=rmacklem@uoguelph.ca X-Spamd-Result: default: False [-6.00 / 15.00]; DWL_DNSWL_LOW(-1.00)[uoguelph.ca:dkim]; ARC_ALLOW(-1.00)[microsoft.com:s=arcselector9901:i=1]; NEURAL_HAM_MEDIUM(-1.00)[-1.000]; NEURAL_HAM_LONG(-1.00)[-1.000]; NEURAL_HAM_SHORT(-1.00)[-1.000]; DMARC_POLICY_ALLOW(-0.50)[uoguelph.ca,none]; R_DKIM_ALLOW(-0.20)[uoguelph.ca:s=selector2]; R_SPF_ALLOW(-0.20)[+ip4:40.107.0.0/16]; MIME_GOOD(-0.10)[text/plain]; MIME_TRACE(0.00)[0:+]; MLMMJ_DEST(0.00)[freebsd-fs@freebsd.org]; ASN(0.00)[asn:8075, ipnet:40.104.0.0/14, country:US]; FROM_EQ_ENVFROM(0.00)[]; RCVD_TLS_LAST(0.00)[]; RCVD_IN_DNSWL_NONE(0.00)[40.107.115.78:from]; TO_DN_ALL(0.00)[]; RCVD_COUNT_THREE(0.00)[3]; FREEFALL_USER(0.00)[rmacklem]; DKIM_TRACE(0.00)[uoguelph.ca:+]; FROM_HAS_DN(0.00)[]; RCPT_COUNT_ONE(0.00)[1]; TO_MATCH_ENVRCPT_ALL(0.00)[]; RWL_MAILSPIKE_POSSIBLE(0.00)[40.107.115.78:from] X-ThisMailContainsUnwantedMimeParts: N Hi,=0A= =0A= A recent discussion involving copy_file_range(2) performance=0A= included a suggestion that, maybe, copying of subranges=0A= should be done concurrently.=0A= =0A= Although I cannot be 100% sure, I think that this would=0A= involve using multiple kernel threads (taskqueue or similar)=0A= to issue I/O operations on the file system(s) for blocks=0A= (of f_iosize maybe?) concurrently, to improve performance.=0A= =0A= Doing this in a system call is unusual, to say the least but, then,=0A= copy_file_range(2) is an unusual system call to begin with.=0A= =0A= I have not attempted to code this up as of yet.=0A= =0A= So, what do others think of this idea?=0A= =0A= rick=0A=