From patchwork Thu May 17 15:47:37 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jeff Layton X-Patchwork-Id: 10407053 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id 724E8602C2 for ; Thu, 17 May 2018 15:47:53 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 623B128526 for ; Thu, 17 May 2018 15:47:53 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 567B028569; Thu, 17 May 2018 15:47:53 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-8.0 required=2.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,MAILING_LIST_MULTI,RCVD_IN_DNSWL_HI autolearn=unavailable version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 10F2F28526 for ; Thu, 17 May 2018 15:47:53 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752517AbeEQPrl (ORCPT ); Thu, 17 May 2018 11:47:41 -0400 Received: from mail.kernel.org ([198.145.29.99]:50534 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752385AbeEQPrj (ORCPT ); Thu, 17 May 2018 11:47:39 -0400 Received: from tleilax.poochiereds.net (cpe-71-70-156-158.nc.res.rr.com [71.70.156.158]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id ACFF12084E; Thu, 17 May 2018 15:47:38 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1526572059; bh=2hMkuUJQlTheDUwzODFRqg8wwO1XpOHeFSMicPYnkBQ=; h=From:To:Cc:Subject:Date:From; b=YYb5Nz6gB+II56T6j3oYDNNvcNxF1r6LmrLnu5xSM+StwDhWmuCg4rKSL3mSz4HBB FivtCvUmL+3jTSBvacpbjYJOEYLxfKrljMQc/OoxHpiwCpIvM3n3aFDrzwRhAMUdBI cF5SzoF4tDbWp4dDN1+8pCBGpxO612n6tvqv+D8U= From: Jeff Layton To: viro@zeniv.linux.org.uk Cc: linux-kernel@vger.kernel.org, linux-fsdevel@vger.kernel.org Subject: [PATCH] vfs: remove iterate_supers_type Date: Thu, 17 May 2018 11:47:37 -0400 Message-Id: <20180517154737.18877-1-jlayton@kernel.org> X-Mailer: git-send-email 2.17.0 Sender: linux-fsdevel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-fsdevel@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP From: Jeff Layton Nothing calls this. Signed-off-by: Jeff Layton Reviewed-by: Carlos Maiolino --- fs/super.c | 36 ------------------------------------ include/linux/fs.h | 2 -- 2 files changed, 38 deletions(-) diff --git a/fs/super.c b/fs/super.c index 30b7490bd049..456276033e59 100644 --- a/fs/super.c +++ b/fs/super.c @@ -631,42 +631,6 @@ void iterate_supers(void (*f)(struct super_block *, int), int arg) spin_unlock(&sb_lock); } -/** - * iterate_supers_type - call function for superblocks of given type - * @type: fs type - * @f: function to call - * @arg: argument to pass to it - * - * Scans the superblock list and calls given function, passing it - * locked superblock and given argument. - */ -void iterate_supers_type(struct file_system_type *type, - void (*f)(struct super_block *, void *), void *arg) -{ - struct super_block *sb, *p = NULL; - - spin_lock(&sb_lock); - hlist_for_each_entry(sb, &type->fs_supers, s_instances) { - sb->s_count++; - spin_unlock(&sb_lock); - - down_read(&sb->s_umount); - if (sb->s_root && (sb->s_flags & SB_BORN)) - f(sb, arg); - up_read(&sb->s_umount); - - spin_lock(&sb_lock); - if (p) - __put_super(p); - p = sb; - } - if (p) - __put_super(p); - spin_unlock(&sb_lock); -} - -EXPORT_SYMBOL(iterate_supers_type); - static struct super_block *__get_super(struct block_device *bdev, bool excl) { struct super_block *sb; diff --git a/include/linux/fs.h b/include/linux/fs.h index 7107d291d853..c4761eba3b44 100644 --- a/include/linux/fs.h +++ b/include/linux/fs.h @@ -3116,8 +3116,6 @@ extern struct super_block *get_active_super(struct block_device *bdev); extern void drop_super(struct super_block *sb); extern void drop_super_exclusive(struct super_block *sb); extern void iterate_supers(void (*)(struct super_block *, int), int); -extern void iterate_supers_type(struct file_system_type *, - void (*)(struct super_block *, void *), void *); extern int dcache_dir_open(struct inode *, struct file *); extern int dcache_dir_close(struct inode *, struct file *);