From patchwork Tue Nov 17 11:52:29 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jeff Layton X-Patchwork-Id: 7636021 Return-Path: X-Original-To: patchwork-linux-nfs@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork1.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.29.136]) by patchwork1.web.kernel.org (Postfix) with ESMTP id 816939F1D3 for ; Tue, 17 Nov 2015 11:53:36 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id AE56C204E2 for ; Tue, 17 Nov 2015 11:53:35 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id BDAE7204EC for ; Tue, 17 Nov 2015 11:53:34 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753472AbbKQLxb (ORCPT ); Tue, 17 Nov 2015 06:53:31 -0500 Received: from mail-qk0-f180.google.com ([209.85.220.180]:36799 "EHLO mail-qk0-f180.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753404AbbKQLxZ (ORCPT ); Tue, 17 Nov 2015 06:53:25 -0500 Received: by qkda6 with SMTP id a6so1674291qkd.3 for ; Tue, 17 Nov 2015 03:53:24 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=poochiereds_net.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=2b1nVO+PT7cmAYMYf1OoVW+m8fX12NwFI/LCdPj5RMs=; b=SI8M9ttAnijDWzO9AA39tQwMrMKEv5FGLEL6hMMNTNrC+HABdoHXQSI5QWCJONKJ89 okPnYRSb5eDcVpdv3Y17eEtA7fz0IiI1wOeiBBO7JzqgFwLjcaAb3oIyeh46kuymRQkg laXN4UyZjGMOcsPLG4zzjxXPEeW+NtJj+y3gcZ5ShUhzgBgEWjMHohIRPY8mDGG6I7pQ CJGyzTZh9EelF7hcEj3TOT2PgGel+WeT6SGj4W04smENv0iixS+mPHuEZx2f4FshDnCu B/3IAIpWNjgCEYy+dVKeOc+YAqZq/yqYDPzUs/qrQEHKhY7WL/wMsvBDU0MiGwE+01r5 RuSQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=2b1nVO+PT7cmAYMYf1OoVW+m8fX12NwFI/LCdPj5RMs=; b=Pixgb3BTQ2iu9i29ZVpq+1REf2U5302jRJIyHxUn2VELGHmhjqaGFcc7HYlcQhLMTk 6cdhZVfHMExCf7Xzvdet6vv4lOBcHc8WbIkd5cDw1ulbjgT9hAj3kJUgc3DH4atuP1XZ tpMTnsZ6H5JdJGQtQ67NAY1PUhyHG5X1CXD1kPVniTVvkLYV6RW604Dq/29e4jkdXOqN 7sWKrnRqcnt27Dbjh5mUHhSppgbFQOlBO41FRA8iWcyeHmEJ7njQkls+53+Svtt87oe1 KwbQjMPTCJEWeZyYTOq3nMwYTH0HR8pYtB8kJdbhGXq6zhDNQ7WrI4hqCaysWlpa1VYV FkVA== X-Gm-Message-State: ALoCoQlzLg6V8eompPApKGxizb0f2C8IRFmhS/MFVkDZzPt6z/pL9EWeTNujOVLOEOsjbXKkqYLU X-Received: by 10.55.49.197 with SMTP id x188mr42205031qkx.45.1447761204856; Tue, 17 Nov 2015 03:53:24 -0800 (PST) Received: from tlielax.poochiereds.net ([2606:a000:1125:4075::d5a]) by smtp.googlemail.com with ESMTPSA id w10sm1583910qhc.16.2015.11.17.03.53.23 (version=TLSv1/SSLv3 cipher=OTHER); Tue, 17 Nov 2015 03:53:24 -0800 (PST) From: Jeff Layton X-Google-Original-From: Jeff Layton To: bfields@fieldses.org, trond.myklebust@primarydata.com Cc: linux-nfs@vger.kernel.org, Eric Paris , Alexander Viro , linux-fsdevel@vger.kernel.org Subject: [PATCH v1 07/38] fsnotify: export several symbols Date: Tue, 17 Nov 2015 06:52:29 -0500 Message-Id: <1447761180-4250-8-git-send-email-jeff.layton@primarydata.com> X-Mailer: git-send-email 2.4.3 In-Reply-To: <1447761180-4250-1-git-send-email-jeff.layton@primarydata.com> References: <1447761180-4250-1-git-send-email-jeff.layton@primarydata.com> Sender: linux-nfs-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-nfs@vger.kernel.org X-Spam-Status: No, score=-7.4 required=5.0 tests=BAYES_00,DKIM_SIGNED, RCVD_IN_DNSWL_HI,RP_MATCHES_RCVD,T_DKIM_INVALID,UNPARSEABLE_RELAY autolearn=unavailable version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on mail.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP With nfsd's new open-file caching infrastructure, we need a way to know when unlinks occur so it can close files that it may be holding open. fsnotify fits the bill nicely, but the symbols aren't currently exported to modules. Export some of its symbols so nfsd can use this infrastructure. Cc: Eric Paris Signed-off-by: Jeff Layton --- fs/notify/group.c | 2 ++ fs/notify/inode_mark.c | 1 + fs/notify/mark.c | 4 ++++ 3 files changed, 7 insertions(+) diff --git a/fs/notify/group.c b/fs/notify/group.c index d16b62cb2854..295d08800126 100644 --- a/fs/notify/group.c +++ b/fs/notify/group.c @@ -81,6 +81,7 @@ void fsnotify_put_group(struct fsnotify_group *group) if (atomic_dec_and_test(&group->refcnt)) fsnotify_final_destroy_group(group); } +EXPORT_SYMBOL_GPL(fsnotify_put_group); /* * Create a new fsnotify_group and hold a reference for the group returned. @@ -109,6 +110,7 @@ struct fsnotify_group *fsnotify_alloc_group(const struct fsnotify_ops *ops) return group; } +EXPORT_SYMBOL_GPL(fsnotify_alloc_group); int fsnotify_fasync(int fd, struct file *file, int on) { diff --git a/fs/notify/inode_mark.c b/fs/notify/inode_mark.c index e785fd954c30..76e608b8894c 100644 --- a/fs/notify/inode_mark.c +++ b/fs/notify/inode_mark.c @@ -87,6 +87,7 @@ struct fsnotify_mark *fsnotify_find_inode_mark(struct fsnotify_group *group, return mark; } +EXPORT_SYMBOL_GPL(fsnotify_find_inode_mark); /* * If we are setting a mark mask on an inode mark we should pin the inode diff --git a/fs/notify/mark.c b/fs/notify/mark.c index fc0df4442f7b..c2bd670d4704 100644 --- a/fs/notify/mark.c +++ b/fs/notify/mark.c @@ -109,6 +109,7 @@ void fsnotify_put_mark(struct fsnotify_mark *mark) mark->free_mark(mark); } } +EXPORT_SYMBOL_GPL(fsnotify_put_mark); /* Calculate mask of events for a list of marks */ u32 fsnotify_recalc_mask(struct hlist_head *head) @@ -208,6 +209,7 @@ void fsnotify_destroy_mark(struct fsnotify_mark *mark, mutex_unlock(&group->mark_mutex); fsnotify_free_mark(mark); } +EXPORT_SYMBOL_GPL(fsnotify_destroy_mark); void fsnotify_destroy_marks(struct hlist_head *head, spinlock_t *lock) { @@ -402,6 +404,7 @@ int fsnotify_add_mark(struct fsnotify_mark *mark, struct fsnotify_group *group, mutex_unlock(&group->mark_mutex); return ret; } +EXPORT_SYMBOL_GPL(fsnotify_add_mark); /* * Given a list of marks, find the mark associated with given group. If found @@ -492,6 +495,7 @@ void fsnotify_init_mark(struct fsnotify_mark *mark, atomic_set(&mark->refcnt, 1); mark->free_mark = free_mark; } +EXPORT_SYMBOL_GPL(fsnotify_init_mark); static int fsnotify_mark_destroy(void *ignored) {