Received: by 2002:ab2:6816:0:b0:1f9:5764:f03e with SMTP id t22csp2907953lqo; Tue, 21 May 2024 00:16:18 -0700 (PDT) X-Forwarded-Encrypted: i=3; AJvYcCXg2Rs/QemzIeJPIyp8TAjkVk3XTY7riFbPfL90KBak7h5rZ6X6/Mx8Ztt3BTBY4oyXqt3RwRgka3bnItanfub+LLoswS3xfmX0883KZg== X-Google-Smtp-Source: AGHT+IHO8OAxYyGuqLUftUJDwN+06qFKLGplfuH9wvZiiBtxjoIl3to3+q0Xc+fiDHw7+m7F7reZ X-Received: by 2002:a05:6a21:328e:b0:1af:d044:1395 with SMTP id adf61e73a8af0-1afde0b0c18mr34339477637.20.1716275778309; Tue, 21 May 2024 00:16:18 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1716275778; cv=pass; d=google.com; s=arc-20160816; b=a3/utDgc3a1Wd/iSbvhQKqvBHIb7wriX6E0gbLa3CTXexcnhe6F4QnRAhettnnRqOY YTUDS8RRK7LUOdLWUa56yZYT2+cZuoWnbnK6W2Rkt1FKIQB5Iv6u3aF2DIicx1tUYMFl yOo1Khli/BrB5fm3pG1T0vsc5em6LhSEY+por36ygkGnI2cfezf/t7NDs7WFRr0VjBpm sx+9q1RZgMxWNqWv16dL2dHus32+ZSClABsQZP3NOVIwbBNdUGbaq3ZEcMO+ux+THoC6 F+7KbF79y1Gt39BX4+naGz/jwkw80cOKyM2cSCMny6vbqN7ocelRuggRFPu0AopNGxlh UGaw== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:list-unsubscribe :list-subscribe:list-id:precedence:date:message-id:dkim-signature :dkim-signature:dkim-signature:dkim-signature; bh=W+x/MszspGfaxPeUMNwt99V1Aq3KDkqnswX/iPLB774=; fh=fmZR5fhPQnjbhr3B+36YgCtIiAPw0bldhO7zCrfCWek=; b=HdzqV39IZ4K4XfcSqZI1UazMi3VR79/kTYPKMCp2LOPEGZCuDjjzIPIgTiodcRoWL7 SOpas33dngybO6GAtbflbf12OJuHj9NxGzsoR+9jSrUaPbmGxGGcdz0nl4W1V/pWOfFx zm3WEYJvKv5+/vDqmBKDD70Dx1OD7ELXErAiv0MbB9+f6fFo5EjJNlldlRgQw92P8Q/a 0HQr3kd7rh6MozhPMpRvrO5zcoDXhdG6yGzeYEAVGh0mgVkNPCtAxmwUKV/VB3OXh9IU fvKEEXVtAtmT/G2UOTATW0zl7iH6x5Vq7RLLScOtZILG1fzBYBB/30IgkjuuZiTSgDKq NX5w==; dara=google.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@suse.de header.s=susede2_rsa header.b=lkYoiFQK; dkim=neutral (no key) header.i=@suse.de header.s=susede2_ed25519; dkim=pass header.i=@suse.de header.s=susede2_rsa header.b=lkYoiFQK; dkim=neutral (no key) header.i=@suse.de header.s=susede2_ed25519; arc=pass (i=1 spf=pass spfdomain=suse.de dkim=pass dkdomain=suse.de dkim=pass dkdomain=suse.de dmarc=pass fromdomain=suse.de); spf=pass (google.com: domain of linux-kernel+bounces-184548-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:45e3:2400::1 as permitted sender) smtp.mailfrom="linux-kernel+bounces-184548-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=suse.de Return-Path: Received: from sv.mirrors.kernel.org (sv.mirrors.kernel.org. [2604:1380:45e3:2400::1]) by mx.google.com with ESMTPS id d9443c01a7336-1ef0c0385b6si38159605ad.358.2024.05.21.00.16.18 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 21 May 2024 00:16:18 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel+bounces-184548-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:45e3:2400::1 as permitted sender) client-ip=2604:1380:45e3:2400::1; Authentication-Results: mx.google.com; dkim=pass header.i=@suse.de header.s=susede2_rsa header.b=lkYoiFQK; dkim=neutral (no key) header.i=@suse.de header.s=susede2_ed25519; dkim=pass header.i=@suse.de header.s=susede2_rsa header.b=lkYoiFQK; dkim=neutral (no key) header.i=@suse.de header.s=susede2_ed25519; arc=pass (i=1 spf=pass spfdomain=suse.de dkim=pass dkdomain=suse.de dkim=pass dkdomain=suse.de dmarc=pass fromdomain=suse.de); spf=pass (google.com: domain of linux-kernel+bounces-184548-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:45e3:2400::1 as permitted sender) smtp.mailfrom="linux-kernel+bounces-184548-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=suse.de Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by sv.mirrors.kernel.org (Postfix) with ESMTPS id B9062283A4C for ; Tue, 21 May 2024 07:07:01 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id B171C4D5BF; Tue, 21 May 2024 07:06:50 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=suse.de header.i=@suse.de header.b="lkYoiFQK"; dkim=permerror (0-bit key) header.d=suse.de header.i=@suse.de header.b="LzZM6u+0"; dkim=pass (1024-bit key) header.d=suse.de header.i=@suse.de header.b="lkYoiFQK"; dkim=permerror (0-bit key) header.d=suse.de header.i=@suse.de header.b="LzZM6u+0" Received: from smtp-out2.suse.de (smtp-out2.suse.de [195.135.223.131]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 00C783FB8B; Tue, 21 May 2024 07:06:46 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=195.135.223.131 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716275209; cv=none; b=iz4G1tQQaSVfUR3cCVApSiIJ3h+y03sBss2fs2fHpM9UmXV9Mafq4u90iu+5ittYy1K5jLMUUTj0A2IZhNk9yxQW3GxUaWdLxZkIc3atrFtwfgXL68Vh+qs37tgOTuwP7llAj1u8kaXF2XR6/ZiAI3zNT0PWMN+PTcA/QUdJJbs= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716275209; c=relaxed/simple; bh=2ZY/PSAzoW1ZOz6dI6RDJtEq54XyjN4jqvcdtBtMkYg=; h=Message-ID:Date:MIME-Version:Subject:To:Cc:References:From: In-Reply-To:Content-Type; b=sMsN97qy2nmaD3XMEN3o9nuD6Lb5pb0WSzpHWA7W7EC+eSto9TVsovLdN2tlHpUOBOHIQu6JeD/LytVivZ1fN4y+5dD2+PAUVGNBgWRVWPnJlEp33Lfi1lyXAWeWO4a4B72S1LhG/j1/nZ48zYyqyhlQLub/SQXwNUXpZrjZuC0= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=suse.de; spf=pass smtp.mailfrom=suse.de; dkim=pass (1024-bit key) header.d=suse.de header.i=@suse.de header.b=lkYoiFQK; dkim=permerror (0-bit key) header.d=suse.de header.i=@suse.de header.b=LzZM6u+0; dkim=pass (1024-bit key) header.d=suse.de header.i=@suse.de header.b=lkYoiFQK; dkim=permerror (0-bit key) header.d=suse.de header.i=@suse.de header.b=LzZM6u+0; arc=none smtp.client-ip=195.135.223.131 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=suse.de Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=suse.de Received: from imap1.dmz-prg2.suse.org (imap1.dmz-prg2.suse.org [IPv6:2a07:de40:b281:104:10:150:64:97]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by smtp-out2.suse.de (Postfix) with ESMTPS id 303545BF13; Tue, 21 May 2024 07:06:45 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_rsa; t=1716275205; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=W+x/MszspGfaxPeUMNwt99V1Aq3KDkqnswX/iPLB774=; b=lkYoiFQKZmKC+ZXYy1QE+LlPKIKD6HPyZi7R4V0VCniW9Z3jYQlGvB8AlItyWFTUH0vhvk kx7xgT5zz6jCbuxC5/t6L8S5Jx66CtUqWJMljoRTuR5ECeDMXdYGwhAppk161LFPtGBkYH ydWcq1NIn/G3os7CarT8KbKE9zKqock= DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_ed25519; t=1716275205; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=W+x/MszspGfaxPeUMNwt99V1Aq3KDkqnswX/iPLB774=; b=LzZM6u+0gBsii5yIjl6R2k1CYDzZkOJUHm4SONegMmAuPbmVe7T1o/K3urJMWXKHZPMhtG NjKWll4f87/0bcAQ== Authentication-Results: smtp-out2.suse.de; dkim=pass header.d=suse.de header.s=susede2_rsa header.b=lkYoiFQK; dkim=pass header.d=suse.de header.s=susede2_ed25519 header.b=LzZM6u+0 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_rsa; t=1716275205; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=W+x/MszspGfaxPeUMNwt99V1Aq3KDkqnswX/iPLB774=; b=lkYoiFQKZmKC+ZXYy1QE+LlPKIKD6HPyZi7R4V0VCniW9Z3jYQlGvB8AlItyWFTUH0vhvk kx7xgT5zz6jCbuxC5/t6L8S5Jx66CtUqWJMljoRTuR5ECeDMXdYGwhAppk161LFPtGBkYH ydWcq1NIn/G3os7CarT8KbKE9zKqock= DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_ed25519; t=1716275205; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=W+x/MszspGfaxPeUMNwt99V1Aq3KDkqnswX/iPLB774=; b=LzZM6u+0gBsii5yIjl6R2k1CYDzZkOJUHm4SONegMmAuPbmVe7T1o/K3urJMWXKHZPMhtG NjKWll4f87/0bcAQ== Received: from imap1.dmz-prg2.suse.org (localhost [127.0.0.1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by imap1.dmz-prg2.suse.org (Postfix) with ESMTPS id 3095B13A1E; Tue, 21 May 2024 07:06:44 +0000 (UTC) Received: from dovecot-director2.suse.de ([2a07:de40:b281:106:10:150:64:167]) by imap1.dmz-prg2.suse.org with ESMTPSA id 7vEPCgRITGZpZgAAD6G6ig (envelope-from ); Tue, 21 May 2024 07:06:44 +0000 Message-ID: Date: Tue, 21 May 2024 09:06:43 +0200 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH v20 04/12] block: add emulation for copy Content-Language: en-US To: Nitesh Shetty , Jens Axboe , Jonathan Corbet , Alasdair Kergon , Mike Snitzer , Mikulas Patocka , Keith Busch , Christoph Hellwig , Sagi Grimberg , Chaitanya Kulkarni , Alexander Viro , Christian Brauner , Jan Kara Cc: martin.petersen@oracle.com, bvanassche@acm.org, david@fromorbit.com, damien.lemoal@opensource.wdc.com, anuj20.g@samsung.com, joshi.k@samsung.com, nitheshshetty@gmail.com, gost.dev@samsung.com, Vincent Fu , linux-block@vger.kernel.org, linux-kernel@vger.kernel.org, linux-doc@vger.kernel.org, dm-devel@lists.linux.dev, linux-nvme@lists.infradead.org, linux-fsdevel@vger.kernel.org References: <20240520102033.9361-1-nj.shetty@samsung.com> <20240520102033.9361-5-nj.shetty@samsung.com> From: Hannes Reinecke In-Reply-To: <20240520102033.9361-5-nj.shetty@samsung.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-Spam-Flag: NO X-Spam-Score: -4.50 X-Rspamd-Action: no action X-Rspamd-Queue-Id: 303545BF13 X-Spam-Level: X-Rspamd-Server: rspamd2.dmz-prg2.suse.org X-Spamd-Result: default: False [-4.50 / 50.00]; BAYES_HAM(-3.00)[100.00%]; NEURAL_HAM_LONG(-1.00)[-1.000]; R_DKIM_ALLOW(-0.20)[suse.de:s=susede2_rsa,suse.de:s=susede2_ed25519]; NEURAL_HAM_SHORT(-0.20)[-1.000]; MIME_GOOD(-0.10)[text/plain]; XM_UA_NO_VERSION(0.01)[]; MX_GOOD(-0.01)[]; RCVD_TLS_ALL(0.00)[]; RCPT_COUNT_TWELVE(0.00)[28]; RCVD_VIA_SMTP_AUTH(0.00)[]; MIME_TRACE(0.00)[0:+]; ARC_NA(0.00)[]; MID_RHS_MATCH_FROM(0.00)[]; FREEMAIL_ENVRCPT(0.00)[gmail.com]; TO_DN_SOME(0.00)[]; FROM_EQ_ENVFROM(0.00)[]; FROM_HAS_DN(0.00)[]; FREEMAIL_CC(0.00)[oracle.com,acm.org,fromorbit.com,opensource.wdc.com,samsung.com,gmail.com,vger.kernel.org,lists.linux.dev,lists.infradead.org]; FUZZY_BLOCKED(0.00)[rspamd.com]; RCVD_COUNT_TWO(0.00)[2]; TO_MATCH_ENVRCPT_ALL(0.00)[]; DBL_BLOCKED_OPENRESOLVER(0.00)[samsung.com:email,suse.de:dkim,suse.de:email]; DKIM_SIGNED(0.00)[suse.de:s=susede2_rsa,suse.de:s=susede2_ed25519]; DKIM_TRACE(0.00)[suse.de:+] On 5/20/24 12:20, Nitesh Shetty wrote: > For the devices which does not support copy, copy emulation is added. > It is required for in-kernel users like fabrics, where file descriptor is > not available and hence they can't use copy_file_range. > Copy-emulation is implemented by reading from source into memory and > writing to the corresponding destination. > At present in kernel user of emulation is fabrics. > > Signed-off-by: Nitesh Shetty > Signed-off-by: Vincent Fu > Signed-off-by: Anuj Gupta > --- > block/blk-lib.c | 223 +++++++++++++++++++++++++++++++++++++++++ > include/linux/blkdev.h | 4 + > 2 files changed, 227 insertions(+) > Again, I'm not sure if we need this. After all, copy offload _is_optional, so we need to be prepared to handle systems where it's not supported. In the end, the caller might decide to do something else entirely; having an in-kernel emulation would defeat that. And with adding an emulation to nullblk we already have an emulation target to try if people will want to start experimenting. So I'd rather not have this but rather let the caller deal with the fact that copy offload is optional. Cheers, Hannes -- Dr. Hannes Reinecke Kernel Storage Architect hare@suse.de +49 911 74053 688 SUSE Software Solutions GmbH, Frankenstr. 146, 90461 Nürnberg HRB 36809 (AG Nürnberg), GF: I. Totev, A. McDonald, W. Knoblich