Received: by 2002:a05:6358:53a8:b0:117:f937:c515 with SMTP id z40csp3561824rwe; Sun, 16 Apr 2023 23:14:38 -0700 (PDT) X-Google-Smtp-Source: AKy350b0vLMTyyZMou08bsNHRW5a0fdBwjkD5oyg/OKGbgfwR/p2F3CHUrmar7zoZoPNkeZ4l3Ww X-Received: by 2002:a17:903:1387:b0:1a6:7632:2b1a with SMTP id jx7-20020a170903138700b001a676322b1amr10601305plb.64.1681712077991; Sun, 16 Apr 2023 23:14:37 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1681712077; cv=none; d=google.com; s=arc-20160816; b=s/5Vxz7xPT9/0DkeqEbbkNMm0E0S3G1rHh+d3tWOTDF1Jprcxyy5L9V/+hFjpsMmsk jG3VgGLSgZ0Vhv796iYQetmJIv1cQGZ8GL6wGvW1whmQJ/pWnLWQt2QH8gcWigah4GYg jiCSOLK4lxXFb08VmbcbrcHbTKf+9UBosvI1x/gRG+Lr6/9KVTZqoVjTGz1BzR4ep6Uy qW/9+VvwYB8+bN4ikFeksHuOoArNksmNOXHC3ZF0z8ehWyQz0f1TId8n+oge6rCOLs4W JcopfBCDpx6875tSm/CcF+wK6GJ/YQGGxTLo/UOjmkEWDvcClmBjM2/8cbA4spnk0yG0 MMpg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:in-reply-to:from :references:cc:to:content-language:subject:user-agent:mime-version :date:message-id:dkim-signature:dkim-signature; bh=rrkQqEZwaf8aOA/KoAyOi6UrBxwxGW9M2sCoRTZStv0=; b=AFPissjy61yxlBK77907EWxFmtvPrtZ15hpfDaxLTdqFjIaP9+qxngp2H1WzOmDLSG sJ/cHaoDGr3EalhjVevVjUph2mfXgLkbCDUTRc7q+cNmGGW/35hPg01yeTICdGAPbTfg NPh1s/icgwQdRRaQz+w3SMncxrLBjeFFhqd/xi/dtZpPx8eWO9QqwfDsGnxpklykVfUt QSeyElKqZWpm934Ypxcz8SFgxuE/9el1Xe1585ge+YZsv+TwJF4n+qRkpyi/R98RJITU NOv102zvLzYXaAEjx3TOQkSbaA9eFnsbxc7EH2jvNvCgt2vdcUG9/dHUginptVodEpBb Er7g== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@suse.de header.s=susede2_rsa header.b="WLod/41M"; dkim=neutral (no key) header.i=@suse.de header.s=susede2_ed25519 header.b=QOOo96nL; 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=NONE dis=NONE) header.from=suse.de Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id u6-20020a17090282c600b001a4fc13dfa5si10888195plz.276.2023.04.16.23.14.27; Sun, 16 Apr 2023 23:14:37 -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=@suse.de header.s=susede2_rsa header.b="WLod/41M"; dkim=neutral (no key) header.i=@suse.de header.s=susede2_ed25519 header.b=QOOo96nL; 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=NONE dis=NONE) header.from=suse.de Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229781AbjDQGEr (ORCPT + 99 others); Mon, 17 Apr 2023 02:04:47 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:45052 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229458AbjDQGEp (ORCPT ); Mon, 17 Apr 2023 02:04:45 -0400 Received: from smtp-out1.suse.de (smtp-out1.suse.de [IPv6:2001:67c:2178:6::1c]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id E0F732116; Sun, 16 Apr 2023 23:04:44 -0700 (PDT) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out1.suse.de (Postfix) with ESMTPS id CD91D21A36; Mon, 17 Apr 2023 06:04:42 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_rsa; t=1681711482; 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=rrkQqEZwaf8aOA/KoAyOi6UrBxwxGW9M2sCoRTZStv0=; b=WLod/41MS3MSM8lV3g7lnbAyQq7Oyz5uV1e6EO3ZzPMOgBYiP4qb3zeGAY1iqF1yl3QInK 1wfcMkSadpsWfIN6IdrFUmbGUgxZK5S0HQhByvg9DTFYj10OsKDTdEQgo/ue7+xF3NGxAD Rzvzul7ksZPpwUAdKN5scAvVcK1aaEM= DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_ed25519; t=1681711482; 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=rrkQqEZwaf8aOA/KoAyOi6UrBxwxGW9M2sCoRTZStv0=; b=QOOo96nLPf9dmolrUwN/eUK2w3JW7nfFX/L5MBQEDvOZRGNOvozSje6+KzChcEILrKk9bQ FxSvSIP/VHgu04BA== Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id 8269E1390E; Mon, 17 Apr 2023 06:04:42 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id f+h9HXrhPGQEegAAMHmgww (envelope-from ); Mon, 17 Apr 2023 06:04:42 +0000 Message-ID: Date: Mon, 17 Apr 2023 08:04:42 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.9.1 Subject: Re: [RFC 0/4] convert create_page_buffers to create_folio_buffers Content-Language: en-US To: Luis Chamberlain Cc: Pankaj Raghav , brauner@kernel.org, willy@infradead.org, viro@zeniv.linux.org.uk, akpm@linux-foundation.org, linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org, gost.dev@samsung.com References: <20230414110821.21548-1-p.raghav@samsung.com> <1e68a118-d177-a218-5139-c8f13793dbbf@suse.de> From: Hannes Reinecke In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-5.4 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,NICE_REPLY_A,RCVD_IN_DNSWL_MED, 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 On 4/17/23 04:27, Luis Chamberlain wrote: > On Fri, Apr 14, 2023 at 03:47:13PM +0200, Hannes Reinecke wrote: >> @@ -2333,13 +2395,15 @@ int block_read_full_folio(struct folio *folio, >> get_block_t *get_block) >> if (IS_ENABLED(CONFIG_FS_VERITY) && IS_VERITY(inode)) >> limit = inode->i_sb->s_maxbytes; >> >> - VM_BUG_ON_FOLIO(folio_test_large(folio), folio); >> - >> head = create_folio_buffers(folio, inode, 0); >> blocksize = head->b_size; >> bbits = block_size_bits(blocksize); >> >> - iblock = (sector_t)folio->index << (PAGE_SHIFT - bbits); >> + if (WARN_ON(PAGE_SHIFT < bbits)) { >> + iblock = (sector_t)folio->index >> (bbits - PAGE_SHIFT); >> + } else { >> + iblock = (sector_t)folio->index << (PAGE_SHIFT - bbits); >> + } >> lblock = (limit+blocksize-1) >> bbits; >> bh = head; >> nr = 0; > > BTW I See this pattern in: > > fs/mpage.c: do_mpage_readpage() > fs/mpage.c: __mpage_writepage() > > A helper might be in order. > But only _iff_ we decide to stick with buffer_heads and upgrade the buffer_head code to handle multi-page block sizes. The idea was to move over to iomap, hence I'm not sure into which lengths we should go keeping buffer_heads alive ... Cheers, Hannes -- Dr. Hannes Reinecke Kernel Storage Architect hare@suse.de +49 911 74053 688 SUSE Software Solutions GmbH, Maxfeldstr. 5, 90409 Nürnberg HRB 36809 (AG Nürnberg), Geschäftsführer: Ivo Totev, Andrew Myers, Andrew McDonald, Martje Boudien Moerman