From patchwork Thu Jul 18 08:45:14 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Ofir Gal X-Patchwork-Id: 13736251 Received: from DU2PR03CU002.outbound.protection.outlook.com (mail-northeuropeazon11022116.outbound.protection.outlook.com [52.101.66.116]) (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 7B48213A272; Thu, 18 Jul 2024 08:45:38 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.66.116 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1721292340; cv=fail; b=oFUuE/GiSDvtL/J0dee0I8+vMDtcyJ4PIRkxECO4ecOWl+fnf3+L8noIn017eGWo7wgs7qiZyLE7rbN2zUilF/dS/gF6D9df3qee8S8qKDg3X447VNs6D1VwkOf+A106tqGxzNwZcD2IibvHSFPPZysiSckxhUo29KbOoxcY7F4= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1721292340; c=relaxed/simple; bh=hrXyDaUZD5O+KIuY6QI0GBnrWAENZW6x0xDSGwfPjoU=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=UFRSHCm71qlRYAKfV8T5hd0AzdkMjEbN48QCY/mo1srVva2qi0e6rM4/vP5/PgQQXgShV5VoW4mDKwc8bI5gq2w8/9IQIIkS9Un1zoKn+G33vwh8bucp+gGpWj5whrPWOpWejGXMOkpZAPQvIasK92g6KuSyks7I11+/OANK9Jg= 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=ohcher/F; arc=fail smtp.client-ip=52.101.66.116 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="ohcher/F" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=v4H7fT67DxCXxrOPufiCsKD9IK80r5P6wzyQCBDekDbh22xQGbLQx8kUmkySOsj8fHRX1Ur2qxIhVdvB4z4Jj0eGAAXddvd/0SBtc9MPvUd6mFFAcneV6RATrmKCnXbFQmH9fc9jsfBE/lh9vAcTmmMFX1mX/w6jCov7rV4aXU/+IbK49NFFHYYaRbfJySMkUkD93G8aP1GMgH63H0p8aFFe+Jrwz1rpYXEwn1+1qlux8UJ54RUqdEsWLevy8Vq2YrgOSIJPBWyPCxJzvUVCQ8eD0caxWX/rx232kr+qNFpxy+4Jr5fIwbVeHB/GED63ecyZ5G6UvhB7p5gE3J1NQg== 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=427ibjUET2vgiYD30TKQMjrgcTz1GT6EqH2o5uxTbbg=; b=aknUEp3Kc+4TagcW1u07b7OqllANt+jRXScD+Suu3ezJyZD+NBvhS5gtVHeOsx7YZmXgm4Mki2a0pA7FqLF7pMNboBY3jYjOfXORyGu1aDOUdwwZXGLQwJFa9YgS/JLdfonIvtJfAki1XS/CqKhi5hCy9VAdYwoTzAm2baG/TwB6i3n0lun9SUve5D/F8RHffyns+XqJ5NjbJFKFYIgOeV7hSC99WR0ws/OJsCjUiEGlXyiN/rKDzWagfzC3H0nIk3ScS40LBFsHJqiZgA0thCE/CHNZKCn4RDLS1EkCmm+G8FPIEMxc2jUuzz44QBRt0CcssZo8I2UamxfPND4WlA== 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=427ibjUET2vgiYD30TKQMjrgcTz1GT6EqH2o5uxTbbg=; b=ohcher/FbxBpNSNC89whsVEqQ41UYUZPV4RxoLlfjZFHoN7XhyK/zm9xx2jllIaDMQHj/WulOq0MPl3gvy5GbCTydXaMQLHA3mvh8n8z9h8BAFa1w50g3HlHX0kjCdp6b1SFRxtlUmCXT27py9xtz/S7/eE0GhnIdb+oq28f3jq1E33uPkvRVvqczyi9NURVJbGx6O3JFuj+B7sBrUsvzUuJnqGgtKbwj4oZGdPWIzustgzMoZiLYOCKU/aTN2uDhV1PiTGaMIHW4Dy67tGpbrgDuKXRBqPpP1gitUMi3c9V78URBJcB48yAnA3VgQoEc6ZXUvJdQUXRTXZc5JZh0Q== 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 PAXPR04MB9005.eurprd04.prod.outlook.com (2603:10a6:102:210::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7784.19; Thu, 18 Jul 2024 08:45:31 +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; Thu, 18 Jul 2024 08:45:31 +0000 From: Ofir Gal To: davem@davemloft.net, linux-block@vger.kernel.org, linux-nvme@lists.infradead.org, netdev@vger.kernel.org, ceph-devel@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, idryomov@gmail.com, xiubli@redhat.com Subject: [PATCH v5 3/3] drbd: use sendpages_ok() instead of sendpage_ok() Date: Thu, 18 Jul 2024 11:45:14 +0300 Message-ID: <20240718084515.3833733-4-ofir.gal@volumez.com> X-Mailer: git-send-email 2.45.1 In-Reply-To: <20240718084515.3833733-1-ofir.gal@volumez.com> References: <20240718084515.3833733-1-ofir.gal@volumez.com> X-ClientProxiedBy: TL2P290CA0030.ISRP290.PROD.OUTLOOK.COM (2603:1096:950:3::16) To AS8PR04MB8344.eurprd04.prod.outlook.com (2603:10a6:20b:3b3::20) Precedence: bulk X-Mailing-List: linux-block@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AS8PR04MB8344:EE_|PAXPR04MB9005:EE_ X-MS-Office365-Filtering-Correlation-Id: 505f93ef-ebe3-4eaf-8108-08dca705fae6 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|366016|1800799024|376014|7416014|52116014|38350700014; X-Microsoft-Antispam-Message-Info: =?utf-8?q?5PnUU7/yXHy6PeDtkFlrjChAWU9CGCj?= =?utf-8?q?4eyB4YhBqSgOTDSvc3/Hgps2tR1ntYpzMkZv1gBpv/ceig/5W9E4QvcrIqFI5iJI3?= =?utf-8?q?LzWqFPEyTcVGKktO5MudPKpuL+7rTM9wVMlnRJ+KcqX4qR/m3mv3Oc9Q+poZDF5hC?= =?utf-8?q?WA+vQ4b94h3OzVWccVnDigZoi+HIFDwNyQApUzzg6W6iStEGpl9MgWqOTit0UQeYu?= =?utf-8?q?n1M8/N9vMHNjq2GBmwVMazMaElrAIqpIIP5Glu/AQP+BGA5hubh1g1UqMzQ/dpBN5?= =?utf-8?q?3ZPw17CPKghQQgtLISc9iVdsaRbiil1rjZoXG8HYyfZwSgRC7/pkgShoD9BT4EPez?= =?utf-8?q?Fwi6TJJYc1d8/e1SrdsDeGteme6yQ6zMRkhAuXJ/GLZbkFFe3F166UWhXlyjCwmGP?= =?utf-8?q?BHQ0SBM1ZaNNzcF/vP1j+fkW9uFHpeG/s9J5MtI8iMp6yvZyi5y0FlwpCpRwjMpa2?= =?utf-8?q?f/TXteWhY4DZ7uD7nSlUZqreTcY7Ebqa1UVs7shiwv2i/uKH+sXDE50rlls/MQKmb?= =?utf-8?q?ZBSP2tzkLPe/HLIkcucALcMrqE4bw1uekbX/+hVpiPQlb0fjsAB3IsjrD+guEOpYF?= =?utf-8?q?mWM+AX1D+/kSZC/zsievPdL7yT1PLFET3OVPz9VaWOTlRzOpy+2yQ7ZLCPaDI+ToM?= =?utf-8?q?2R9OGoDuQuXGptansMG70gHzrbfhR+b9wuyhO/NEBywqybe+2J53c2C8qY7vG2XnK?= =?utf-8?q?UO31XwWULmYlA+R5y3oyNBA1rW43PO335TfO32AlnySR4ZmObDI4nT3gKGNtTPxzg?= =?utf-8?q?UGbyrm8S2j7f05363d3vj+7+NyU3xHvlEobIQO4mV0cG0O+rNq7HjqtS4qiZ+jaID?= =?utf-8?q?+u4sxuuDlc+47dKYDUdeE6b341PPJUaUmM9rO1GXMnCrocP2vjtpx8IewH8j1+ITd?= =?utf-8?q?AOuHZN64SsitSLOGqifJdpPHLH9jEM8x7zym6o7AnCCaV3AqqUIgAyIj23QwXugxo?= =?utf-8?q?HjeD8idI0rhOyD2kTI7mluac5FWy8thhdPLF8Fsfrs043+UeP4SqruHrfBmeG5g3n?= =?utf-8?q?ifi+PLJwd3EWgSr0bv1yZuFoN/kXQsPQMUjDySP3cbpK3JGJis1027ADXg2kHdZ8W?= =?utf-8?q?gMM9v9DmCjR8lQkx80gXXDKwIkmf9MB7hXtbD4xv/pYGIB4da+oy2G5jG/1ox4Y+s?= =?utf-8?q?hHnS57FUZ48hQaJQjicl9j8N/cazTdXh/Ua6T6lk0TmQlqKXZN9/Rercl7WoiXwmZ?= =?utf-8?q?IGZ1RakK0XapyFdXsVffi/0zXSeESdrVZMNGuvnDciTJWTb7c0vHmX9jq1EuWNIZG?= =?utf-8?q?+GlwLajVxhvblGOFgo9Y1VlpyfZo5n9peQkAbokoPuGbDlY1FFGssV61cvbNnN8Co?= =?utf-8?q?6FN4RdMhPxdsstTuSwa2Khoki0CMv+NwnQ=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)(376014)(7416014)(52116014)(38350700014);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?q?8FqvddZYroY5v/TIGyqyiBawmDIj?= =?utf-8?q?xSVE12tIuRuSr9G2QrBAxTjaw7dOOIX9Vneq9Qex32xbLNw+dGA025a7dthBsi9MQ?= =?utf-8?q?qLwq69Mg5aF6XUwQE8yEAbSdMbvTvdiVKZz/dYX72f/bQsag/4w8HZc3L7sXapzna?= =?utf-8?q?7+AmwFPOFsiGK0DbZ85e17vO8pZvVHzwgW+x8Or779CzL2w7Oo271apGOLGDuF6IK?= =?utf-8?q?r1lPy/z2lqRI+P0od7xQvEAE//Xlxs9b2ExehmAx+mveehGLgShFp0Mmkt3iiyQY+?= =?utf-8?q?dFdERAATtB8o0TQvWd/FOuYDEtF3Jxp1F5dgknFgxue8xlAkH2LjqCILBaec9Y1aN?= =?utf-8?q?f1uK8/cIzB9j2okOUZRh4m6sB9qMvR8kF/T201Pewf1oH20mh3TQ34rlrPTSYkVBa?= =?utf-8?q?2F5Zw8Hdfh/l3POUYISU7s5v0s+CxNUhE2/fH49bgPtya6WgQQgDWY5COp77zNVQJ?= =?utf-8?q?Eh1y2ud32FNPdiZ15HWB4aOYhWgMOWeQ58qr5Ra2W5en2BpnSinoRNnTIs+bqrgjc?= =?utf-8?q?n1ivub6Yv6vDzNCtt8RH1DNBwOCjdg3lIZvCkLZEuhMFNHWtn7PaLRAKvXpoAcs7T?= =?utf-8?q?lkPBos9LgixDyNojBof6ihLxbPPLTdQRysStTF58YCEexjSplQKqnZkLzgpEEsY4A?= =?utf-8?q?3lWN9aCgIIwEdtVl1++ci6VTi59gnJ1tFkBzbHzvDLYZ1Yvr40qacXOFI1mShlcJP?= =?utf-8?q?8q+algf6wxIGaEunaxA6sjmjOGbam8LOKCGAaGeP+4RQLkPQv/7WnJyuzcOVTE0b0?= =?utf-8?q?JjnAv1pt7BIqcQ0D392KOHqRNvqbIPT+ijmKWeMIaqUn1i5CbJmkrcqxJLuciAnBQ?= =?utf-8?q?Ja0T0oHnTzxJxI8eTdfGw9t3ZZpTDnh07/Maw/1HtNkXR7+5gYcdR2WJKBwMw+8tS?= =?utf-8?q?LTD/zMZoBgKytX3j/YWoz3Es7zBxFswrV28z0ioEiu1fB8oTH51Z1BX0V0dqg8x1G?= =?utf-8?q?4UbHEXMef5WErl4B1PwtQf6ufsD9yKjFNFe/jDtXBlrI9ugkuQzrF+vZoGgoP4xsY?= =?utf-8?q?Xh8vx4xPHe95ss0Lawe7Ii+GhL0vE1PyMMlbNRb/GhDdhVj/WxDWX2OiAPUV2JA/N?= =?utf-8?q?LIyEi9xXd9wUx2VM4gzrIQP5qSQVvefQtlXppA1azRj+vqQwSjF0Ff+iEZFB4UEiE?= =?utf-8?q?HfLN/vF3viuED9aAICpZv85462mID0nDkTveoPzT0AAzYjk6z43tYZN80CtMs6HjU?= =?utf-8?q?/YgX3vVor3pALhKTEVVaoq6TF9l3jxhs8OZ+9hmsfFPrdI1bE3c6d2qC5lQNsFcTm?= =?utf-8?q?xFMUiNG+e8LmwLdtQrw7ucPGRLqVR+enIS8btTlmH9UnLZYnGX/U0EQPiPCKEBp4P?= =?utf-8?q?V6cdzqApk0R41CqkxN++n41gkymz28f42oLw6Mx3B04aqT9SplqfK2Yu/Dyr6GxvM?= =?utf-8?q?xHaGmR8I5SusrusAR7kj0a3q+8cM/t9/JZJ6RPO0ChdHog+iazs0gjJJGYlynslF0?= =?utf-8?q?Qbixri9DdVhm0iNaYE8yfVEi2Dcl6lJWhQqC/eYTZh3NCFMOkaosokg/1bJHE2G8Y?= =?utf-8?q?wiX8UJAeAUhA?= X-OriginatorOrg: volumez.com X-MS-Exchange-CrossTenant-Network-Message-Id: 505f93ef-ebe3-4eaf-8108-08dca705fae6 X-MS-Exchange-CrossTenant-AuthSource: AS8PR04MB8344.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Jul 2024 08:45:31.1108 (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: UVl628MNfwdYuq4yOFcUkzw+oy8L65uMwqlJpXSovK7oeJEgW35OuLPFwbEh/ew2AZzwA2/uP5Tf+RgRK4priQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB9005 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 113b441d4d36..a5dbbf6cce23 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);