From patchwork Tue Jul 23 06:56:07 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Ofir Gal X-Patchwork-Id: 13739613 Received: from DUZPR83CU001.outbound.protection.outlook.com (mail-northeuropeazon11023076.outbound.protection.outlook.com [52.101.67.76]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id CF85E14A616; Tue, 23 Jul 2024 06:56:29 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.67.76 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1721717791; cv=fail; b=nS2rX8TpH366g/DYRXBOPXaqzSPZQpeC6UbybtzZMdJnKPtTPQqzgXel0o2CLoWGArCy3kVSdn/PTkHfHgATsqHmh9/eClY7fqmIoKiiCJHEn/LJOjDWLi+T4XVQyx4it65JXE+s5aGIKtcpf6gdgtsbW+ZWk8XPhCfts6UjeUs= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1721717791; c=relaxed/simple; bh=q/4FhTcQw8Ct3qXSg64D5CY8N29ave52dAbM4g5K8+8=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=SR0x2DLjo4brm0PAP5o5aXulg/kDraMXhcjwYFh7zSlOBeGY/K9FST832eJrEBjIHKTSmUCtBVMqhSvFPxtnFXMX+aoGPp1+OCZm+mnIwR2BFZpbjNCnAVjg68jSeSA7SeV1G3a2uKzoMiTcSNUg4urnvO12byB6v2+LY5eHdgk= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=volumez.com; spf=pass smtp.mailfrom=volumez.com; dkim=pass (2048-bit key) header.d=storingio.onmicrosoft.com header.i=@storingio.onmicrosoft.com header.b=jQqDI2ZA; arc=fail smtp.client-ip=52.101.67.76 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=volumez.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=volumez.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=storingio.onmicrosoft.com header.i=@storingio.onmicrosoft.com header.b="jQqDI2ZA" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=hpaw+9uMWMZPF8Y38R9Se+n2e2caxD1eTNgiNwG0MyZnd/Hhek6l+cLs5GrfSH/gKCogB6UgQQq4M0TEi6CcKbf3qL/S2KqWiO10vslho9JrlNIgvBYBFjz66RxVJr0AWUEBbgIjW3JhC21di3gdz/gWdfeaAxEyppg20rTchm8cKt62Vdl0GzCOd277jj9di4Fwgpbj9mTcdERhf/Md49cxrQg2R6pK1k7krA8AvPX9sg0ser6Ubm3NO+dSjLO0+tCZGwYGbt+Q0HbokbuuVUCURXEP6knYaZZVNZVTLG6MdNRp2hxR3ckwuQYqBULyFth1Hg4sHFIxwMpTj7lPgA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=YZ0tWBiQ2iqQ8K+UeCzLmCv2laXrL4ME8WggNX5AW9w=; b=VW/onWWPBEUyysGXhsYtzpg5OQclUWaMxrPp/ov/iyPLSWoAwU/YfWctg9wEB8Q9LN1tMVU07RppSBQAdZvSS4erTYJJ0euJrG+0JxbKcWxiTwf+mCcxhsBX6lkE0eNYV8VkvJe+9ASGLRTtJy328TpF73+TvPdVEpF9mRMu82G3yL4b4wQaNELGnbREZTkkL1v5K46NmO0o8fQvRKCeSUzU6bMklzvBxKi+UdAQKuiwrkRGHveDHsvd9A/JEmBZvcTMw4HVLDFY/yJU+DWaIt1Wk/eaALwADA6tVS8T3KIwCENgiLYHKn6TxYkzC9l+28owrRHZl7JXW/ECmUNHug== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=volumez.com; dmarc=pass action=none header.from=volumez.com; dkim=pass header.d=volumez.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=storingio.onmicrosoft.com; s=selector1-storingio-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=YZ0tWBiQ2iqQ8K+UeCzLmCv2laXrL4ME8WggNX5AW9w=; b=jQqDI2ZAbicn8JxnRl0z0v0EgwB/XtvmmimVbNEBCuexs0i5N08MWndQIvxjml7zyRBxhx7KuVT2d61M9DY36Qey9T6vSFPOLu5S3dkmEpEj1M5cZUyodeBoU1lceNQbHOaLTjQKorD38OyHrJGt9E36M25CQtgdOqgvVlmfmL5TVS6dd4H8JDc9anCSWDpvAB50zNfwzykIeMSbgSIpYfEVHLaiO1w1mzvVVPOb5CbKkNl3GO4huO9rFYR5MN2lvJL1C+bPMoc90QtfJrhxfr/OrD7k/ypFVQTy/OuX1uSncv69BELNGvyBAaAlHzxSLwVbB+BLIPo7j6DProYpoQ== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=volumez.com; Received: from AS8PR04MB8344.eurprd04.prod.outlook.com (2603:10a6:20b:3b3::20) by DBBPR04MB8044.eurprd04.prod.outlook.com (2603:10a6:10:1e5::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7784.19; Tue, 23 Jul 2024 06:56:24 +0000 Received: from AS8PR04MB8344.eurprd04.prod.outlook.com ([fe80::d3e7:36d9:18b3:3bc7]) by AS8PR04MB8344.eurprd04.prod.outlook.com ([fe80::d3e7:36d9:18b3:3bc7%5]) with mapi id 15.20.7784.016; Tue, 23 Jul 2024 06:56:23 +0000 From: Ofir Gal To: davem@davemloft.net, linux-block@vger.kernel.org, linux-nvme@lists.infradead.org, netdev@vger.kernel.org Cc: dhowells@redhat.com, edumazet@google.com, kuba@kernel.org, pabeni@redhat.com, kbusch@kernel.org, axboe@kernel.dk, hch@lst.de, sagi@grimberg.me, philipp.reisner@linbit.com, lars.ellenberg@linbit.com, christoph.boehmwalder@linbit.com Subject: [PATCH v6 3/3] drbd: use sendpages_ok() instead of sendpage_ok() Date: Tue, 23 Jul 2024 09:56:07 +0300 Message-ID: <20240723065608.338883-4-ofir.gal@volumez.com> X-Mailer: git-send-email 2.45.1 In-Reply-To: <20240723065608.338883-1-ofir.gal@volumez.com> References: <20240723065608.338883-1-ofir.gal@volumez.com> X-ClientProxiedBy: TL2P290CA0021.ISRP290.PROD.OUTLOOK.COM (2603:1096:950:3::15) To AS8PR04MB8344.eurprd04.prod.outlook.com (2603:10a6:20b:3b3::20) Precedence: bulk X-Mailing-List: netdev@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AS8PR04MB8344:EE_|DBBPR04MB8044:EE_ X-MS-Office365-Filtering-Correlation-Id: c4a455ec-78f4-4893-3656-08dcaae490c8 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|366016|1800799024|7416014|376014|52116014|38350700014; X-Microsoft-Antispam-Message-Info: =?utf-8?q?8hRMNBeZHXgaygicF3I/rCJgzrYzSzd?= =?utf-8?q?uWA593Fx7a4fwOsVmvqTiakzUEBNSpu2+lloPnT3aKa3YmrMZp8bXYFNFrs7GVwlL?= =?utf-8?q?7C+EhM40ugtQEPq4m1OkoNCN/mmgdd1qI9vMq3bzeqj3hEGb7kwM4/W9/46MGcW+E?= =?utf-8?q?o+leHRC4hTKA/zbicKeHdvbBuGNoUaVQ/f5NZGkmVk3lUoTVzormWSkcRZzfjJVCC?= =?utf-8?q?dQ48PHEis16Oz+powEdWJ9Q509PfdO5U/lkLgeQ461OFAkY/DDmeLtw0M3Mq/5vTE?= =?utf-8?q?MmhuUKEHQo6PF6DqM0XSqyD7ifDPE5cw4PD8Ob+f8PIbiOQAsnsfUhMgfRNLoKUCg?= =?utf-8?q?UnHb0JC8c2LnMv7IOKRWrGhTkDENEHmtL3no+ARXZEqv7WW34fCTtSAZrJ5wA8snI?= =?utf-8?q?Q5JKy5KT1O/4+rt5mXXCcK6HxP+i/tua0wOL5ZVjVnU4KW3/EdBKZIlZlpOB7luHK?= =?utf-8?q?WqhoHWipFQlQxw/dybv3JSYjX9QPghZ+6xjijOIwWMpukUuOuDGOxnwZpwnLvGhhs?= =?utf-8?q?meCVmVz6AGLFMyWlP8nmTqsWYwcPjJKRKzXusxGBD4KgeopQe+ETGXveCjhPJIfHz?= =?utf-8?q?oWa3KNdpkgXIru+R135skyUuCLHN17FdosB7CwvRQLuP29N2huXzXXW/vOz/KB9YP?= =?utf-8?q?Y7b7IOsVwNN7PkrMicLxh0QRfBmTLS7CDvDe6GF86nWnUFWVVVj3JWxRh+aUxU6Cl?= =?utf-8?q?hGINjdZQ34eanL5TER7iqVmWY9XvLtoxFrUlySr1Xu83rBVvmWl7jP+pwPeQdaIiD?= =?utf-8?q?EG+rScEoGn1UOw+1Yn8wcHVNROe4s5XP7YYBKLbEaz+Zmp5+eh7JMLABtzHs6RRhb?= =?utf-8?q?Bq1/zQe8bt1QF5zVOcUMx+eiF43Tl73iUQNzsf39NbDGE1gOSrKpP/PM6UNEBEzye?= =?utf-8?q?U268oYZ1hPpaMBgPf6qd11q06ZlIiHjywYcD3BUHtSSn43ofCakkYFanuGrZABU2z?= =?utf-8?q?flhX9BSWEXda/oKHEvUbVqSsvPsxEuSCkN4FwJWKuZE4MPqFZfVSNHmHvDvr5vuZE?= =?utf-8?q?D6z6AFR3VtOgZ3voMq7nR3QaaShzoI7rRyuyw/h4xTBDRoJcEkWkVb65F83mJrILU?= =?utf-8?q?2MK09LHgu5JYsGoUbgaVkmEg2W757v3D85sRLHUCxdPzgr1dTCEWoD6lKOnJGy58Y?= =?utf-8?q?O3xYZu6u2A64n9o7CL02I6wyOf+MetO5z8ns6QZh4h7XMmeDS7xBsgzWJPCzNe5aQ?= =?utf-8?q?bkdSkB9TN4AEX5n+EoMPfq0S62szCC9zTCG2qU/Z5NULbhF2SCHLmTq3DT4owwCC+?= =?utf-8?q?OaS8s39FLKRYN1Jnk5haJPJEb6P8vsYUK44O5Pf5w5HQDRiO51SHIAUAqMByvd0Wj?= =?utf-8?q?gJRub/5RXjmzNhHf2cKlxy/Vr36gZzCL6g=3D=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR04MB8344.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(366016)(1800799024)(7416014)(376014)(52116014)(38350700014);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?q?DpvXVEBuDoP6Gsl3ca0/cqktl3Id?= =?utf-8?q?OFjJq4e+Et5+gOPrjibWxMJbPrnfPuRqjsqwqBUC0V/OGngmuYUmjW+uwzxBROqtl?= =?utf-8?q?WQ8a+W+K1t04ugTvelQHiyv0gmfvCQXVDTqn1xd+0kA5dLsJXFp7HT3RAygXCaYdj?= =?utf-8?q?uAPPz4h2pbJUm9pypoYUcOkTdiYRm5IPz26Ff18it191mA/AiMQHl++2wpto+gEql?= =?utf-8?q?m3SCkRlFGXg7ovFhXSpD246yFWyPaObOMACvj/V5ur2YUAMJL7REfwzls81D+ag/P?= =?utf-8?q?1IeZxKocT5qB/RsSOYll8NUFq2PQ1KuJVA7eKT9Avp9XcmRa2AtlYsLD6Y7ThlAH8?= =?utf-8?q?OZlRgh4DxJsa5FLa5MfQ6jMW8BLZ9JZwu2oiGPce6SK3xH2Rh6v/sKV28a3SODEX2?= =?utf-8?q?QTTVlIeIsCtXWEk4ISodd1fcO0wfIyXI1uOD8hwOqN/wYAujzlYEVRNnX8Io6+yYx?= =?utf-8?q?hqiq2xhBRyto/x+34EaErZjnUJy6rr93jnoX5cvnX2kShKAkSMUNPHuOjwnzS5Urh?= =?utf-8?q?c8HTat7mCJ+ybKluTgQadYT9htb9d+Z7Hhlzbl3JkL5bvyvdTaFNtZL6sKpScmQCj?= =?utf-8?q?4Wx4ZN6oJrLCrz+JveAlBSMQfeZyL1mASRuxHPueNLdh/3nGImFBabUJUIlQFiALi?= =?utf-8?q?SPo4ZRN9hJf4QbI2II5Q7YAbAZcjDCsnxNMz6JgWh47ai8T+XKfTgCg+K4G/EXuk5?= =?utf-8?q?uRFEL+uE69WlH6mkFK1erUQhsu9d1VveHMorp2fVW4e32QXbt3zW/kGoOoJphhJTT?= =?utf-8?q?bjkiRxpNua39/4QDjk860WJ9TyKNNmEmMJ4wWs24wHWCvYWngznp4bNDjuLq1KMEe?= =?utf-8?q?/hvgAuGGHAUCtyHpmcSssgP0/nuR30/NJ0x5XG3+hSQ9aGmPDkH6T309FI6XIWj76?= =?utf-8?q?F4BU6cUFnpkvG93CFBQHJIdNmmmjXjOT8IB5pceXBvs1nojjTSirqmv+4Ghk3DH7Z?= =?utf-8?q?aruqxQwrGiZqkB0EQ10KES9ed7dCRJrrjPFlN6eNJSqaSthH3cPnTYKvL/0luEhKi?= =?utf-8?q?lcnCRaF1YNSo/a+cIwCbcUpJGevSJRt4vjlAezqe7BWLofIZ98FN5T0cClnEKvRgX?= =?utf-8?q?m7HDmDUpXPtRMOkHtJ7SXLUBNYW31Da4AodoFnrstJuX0Bq5a2zGBMEa39X5BVMBP?= =?utf-8?q?j410+0rLw4kL9Y1iY/SMdRGzEp1iovM9QPJkdeKy/155BgtXbcAZcFL+eykSAeOpi?= =?utf-8?q?UJ/UvxKqCMFbjCNm0NTR+8yaRIw1l0wmUoF6HD5xdPnBg1O1o04vcD3WUZWWIpASO?= =?utf-8?q?Jc13liIUOk82tyE4CqutPeI7mthmrsP0/h0Md0hzbRNIsDTvKbVySpacXuISoYSbx?= =?utf-8?q?qBC6+m53BTlZL0Ne5uwLW8ado/bzxE9kL0CWbRx4SUbu1dBRXoWj7ZsRz4hWaZUCy?= =?utf-8?q?pZlMAUmHSEMzaSQlsQ7md1faHaqw571D0tMroME1rds3qJvVo80CYXWK9u4TCrVPQ?= =?utf-8?q?kJIJHNPjr0L4mM5XKE3ivM574h96AzWAdlGJAZXBIHdkI1NAIqJpXgrVsr+7jwsNC?= =?utf-8?q?jtZL9OE6lu3u?= X-OriginatorOrg: volumez.com X-MS-Exchange-CrossTenant-Network-Message-Id: c4a455ec-78f4-4893-3656-08dcaae490c8 X-MS-Exchange-CrossTenant-AuthSource: AS8PR04MB8344.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Jul 2024 06:56:23.9036 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: b1841924-914b-4377-bb23-9f1fac784a1d X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: bbnasO5W25erGYPS2lkUb8g92aHINibf4xZjIJfUyj0Mjkxs9L75Fq8pJ+YUeSoPF+va7vyciB6JIdRd63AhbQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBBPR04MB8044 Currently _drbd_send_page() use sendpage_ok() in order to enable MSG_SPLICE_PAGES, it check the first page of the iterator, the iterator may represent contiguous pages. MSG_SPLICE_PAGES enables skb_splice_from_iter() which checks all the pages it sends with sendpage_ok(). When _drbd_send_page() sends an iterator that the first page is sendable, but one of the other pages isn't skb_splice_from_iter() warns and aborts the data transfer. Using the new helper sendpages_ok() in order to enable MSG_SPLICE_PAGES solves the issue. Acked-by: Christoph Böhmwalder Signed-off-by: Ofir Gal --- drivers/block/drbd/drbd_main.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/block/drbd/drbd_main.c b/drivers/block/drbd/drbd_main.c index f92673f05c7a..3d02015c1ddc 100644 --- a/drivers/block/drbd/drbd_main.c +++ b/drivers/block/drbd/drbd_main.c @@ -1550,7 +1550,7 @@ static int _drbd_send_page(struct drbd_peer_device *peer_device, struct page *pa * put_page(); and would cause either a VM_BUG directly, or * __page_cache_release a page that would actually still be referenced * by someone, leading to some obscure delayed Oops somewhere else. */ - if (!drbd_disable_sendpage && sendpage_ok(page)) + if (!drbd_disable_sendpage && sendpages_ok(page, len, offset)) msg.msg_flags |= MSG_NOSIGNAL | MSG_SPLICE_PAGES; drbd_update_congested(peer_device->connection);