Received: by 2002:a05:6358:e9c4:b0:b2:91dc:71ab with SMTP id hc4csp2727257rwb; Sat, 6 Aug 2022 05:09:22 -0700 (PDT) X-Google-Smtp-Source: AA6agR6EPjHp+3RuHvRtjT+feDXTEliKiSkEhxwZcZcKUCj3syFkQ47r7VzRtfh7qADkDydjbX8y X-Received: by 2002:a05:6402:2691:b0:43d:ba10:854b with SMTP id w17-20020a056402269100b0043dba10854bmr10094518edd.158.1659787761908; Sat, 06 Aug 2022 05:09:21 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1659787761; cv=none; d=google.com; s=arc-20160816; b=SDFeHEhurzVX9P5xZiPPFMvMkCmnh75DR6j61aD6/Uw4fGkKeS3firsbcfzM11x64t JYF0pdPubD/LaHHdzOWTFGVThpE4Dd94HYjplmfPp/qTnkA6LHaKuyPLRv9/e9L6IQWP imw+A6c61/24iAm5oPkBt1B1WGbKBSkNMvDOVdBFwrepBS8BXOegq/7gl7WD0Wq/5J0U +ojKzrhvA7yz5k4WqwpvmoVAMngnW3S8HbCTBI5la1DbTcSlR5s0YhErfUv7vOuMx4IC ezAJLgQH9ID2b6uHnRlJXivJoeVdR1XGZqmxQa918wfwFjrHO4zuKQVTz20Y4Akg4tx0 36Cg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from:dkim-signature; bh=b/QRNAmR+dRj8tez6CuFsMgvGm1WxN/JAuG774jeys4=; b=L/gXEAY69OUycY6uEhoF/uJzZ7ML49ZbBPdw6TdA1CRDrT+THSttnXguFvdy4xkDC3 a3GARe/Gl4x8ajlCcZHViIthoSnyWwvyBNY61wFUOc/D6cfkdYomv6Jclv61ua1S7oYK pkcYFZAe2FqBmbhJ53xCSkmqeS52Qa921gFJbd9tv+p7y9EjgOiQd9C07oNE2VpXJD5s I0QHWUV03xN7xJYiwF3+QJ8LUZOalCdCsIZXMpY9rz9wSf/tCtIGLJM7fj8GzEtwjaOp /FvjDH/3I84LWu5eB8yLZzhy57OooyE5sPihhhYhoQJR7+QetxeDuYFVV4cCOVjeJPJ4 3wcA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20210112 header.b=Xknb4oJj; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id l12-20020a170906794c00b0072397249ecbsi6453380ejo.928.2022.08.06.05.08.57; Sat, 06 Aug 2022 05:09:21 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20210112 header.b=Xknb4oJj; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230064AbiHFLxD (ORCPT + 99 others); Sat, 6 Aug 2022 07:53:03 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:54606 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229846AbiHFLxB (ORCPT ); Sat, 6 Aug 2022 07:53:01 -0400 Received: from mail-pf1-x42e.google.com (mail-pf1-x42e.google.com [IPv6:2607:f8b0:4864:20::42e]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 395DC13F35; Sat, 6 Aug 2022 04:53:01 -0700 (PDT) Received: by mail-pf1-x42e.google.com with SMTP id f192so4327732pfa.9; Sat, 06 Aug 2022 04:53:01 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc; bh=b/QRNAmR+dRj8tez6CuFsMgvGm1WxN/JAuG774jeys4=; b=Xknb4oJjGFrojDDrlDYIe7lM7C5Bt6RsnEguKcHkxOt8buI0Qly2xBN3MWUvq7qEmY txZIEL5QrhPo2/xUNdtJvPQnYfx2NW2Me/WzwiqlXvbgutrOWG7iwl5GdnP18fJt8SuM A1LAMqK/uG/elY2Krsd69ZRdA++EFfH35z48Ee1iCGoAhHlCEyaQUZfhovkkY9+tTmfx Ztu2hdCpT7UdxYoZdCA0Gr6UK1gNWtVoae0ylJbFYTf5q6d3uAPf8UgB4eUTrLT5/+T6 ZP+UEtRMgwCHYhkV4DEVoq+iRbBBHSsME3R8stK+Owu1N2pslHXuuBz5gP0E1p5Sef+l ZP3g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc; bh=b/QRNAmR+dRj8tez6CuFsMgvGm1WxN/JAuG774jeys4=; b=3MXT6LAGfdUF+jVFA3IouFboDuMtuce8+9iqIY5sGyp2mNprQK5H7qd7lM9POLI5Op fHY4mrLLrja87H4yXhxq1TyVTCp144mCOLFxgS7jTcKLLKAtZufq298MP21gqn6cIf8n xdgtBavVLb1bQYylmhSZBw1mnL3N3AvDtaYCozzN0vzoQB43wJgS7atThDwF61+phgdf WQC4bPkI08/LvC9t7Jn3PrMuDugJeJWnPwtP2kGlsTsMhphMu3ZGJTXFVc/waX8Mt3MT aOQReMryrQFKKx3QK22KOC+JDbvzzp2PO+znhJAP+ZI0VtQkZOUeG8RrI5RLhJZPrRlR 0CZg== X-Gm-Message-State: ACgBeo0LAdDc9nvPCGEtA3jWHVwjcRDxZ51mMXWLQ5s00tkJW4Z7lwWL BRf6pMOAFheKIgzXHP/V8Uc= X-Received: by 2002:aa7:8f13:0:b0:52d:fe17:ce11 with SMTP id x19-20020aa78f13000000b0052dfe17ce11mr11080360pfr.26.1659786780416; Sat, 06 Aug 2022 04:53:00 -0700 (PDT) Received: from localhost.localdomain (ec2-13-113-80-70.ap-northeast-1.compute.amazonaws.com. [13.113.80.70]) by smtp.gmail.com with ESMTPSA id k10-20020a170902c40a00b0016c57657977sm4954649plk.41.2022.08.06.04.52.56 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 06 Aug 2022 04:53:00 -0700 (PDT) From: Zhang Boyang To: Jens Axboe , Christoph Hellwig , linux-block@vger.kernel.org Cc: Tetsuo Handa , Jan Kara , Ming Lei , "Darrick J . Wong" , Chaitanya Kulkarni , Damien Le Moal , "Martin K . Petersen" , linux-kernel@vger.kernel.org Subject: [PATCH RESEND 0/1] loop: introduce LO_FLAGS_NODEALLOC Date: Sat, 6 Aug 2022 19:49:42 +0800 Message-Id: <20220806114943.8754-1-zhangboyang.id@gmail.com> X-Mailer: git-send-email 2.30.2 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_FROM, RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi, This patch gives userspace ability to prevent underlying file of loop device to be sparse. Currently, if loop device is 'trimmed' (BLKDISCARD), then underlying file will always become sparse and disk space freed. This behaviour is good for thin provisioning but not good for preallocated disk images. This patch introduces LO_FLAGS_NODEALLOC flag, which will write zeroes to underlying file instead of punching holes when BLKDISCARD is requested. Thus reducing file fragmentation of preallocated disk images and improve performance. I will also submit patches to util-linux to provide userspace support if this patch is merged. Best Regards, Zhang Boyang