From: Jeff Layton <jlayton-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
To: linux-cifs-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
Cc: linux-fsdevel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
Subject: [PATCH 00/15] cifs: multiuser mount overhaul (try #3)
Date: Fri, 20 Aug 2010 15:31:56 -0400 [thread overview]
Message-ID: <1282332731-17444-1-git-send-email-jlayton@redhat.com> (raw)
The last version of this patchset was sent back in April. At that time,
I called them "multisession mounts". This patchset is the next iteration
of that set, rebased against the current state of Steve's cifs-2.6 tree.
The reason for the name change is simple -- people seemed to be confused
by calling them "multisession mounts". Hopefully by calling them
"multiuser mounts", that confusion will be reduced.
There are really only a couple of changes since the last time I posted
these patches:
1) the mount option has been renamed to "multiuser"
2) the tcon_link container is now properly refcounted and timestamped.
This should allow for pruning of unused sessions, probably by scheduling
a workqueue task via kernel timer or something along those lines. The
patch to do that has not been implemented yet, but the pieces are all in
place and I don't expect it will be too tough to do. That can be
implemented later -- it's just that unused sessions in multiuser mounts
will linger around for now.
The patchset looks quite a bit different than the earlier one, primarily
because of this latter piece. Since references to the tcon_link are
taken by callers, they have to be put so this necessitates some error
handling cleanup.
The patchset seems to work for me so far. I ran it through a few hundred
passes of the Connectathon testsuite with unix extensions enabled and
disabled. It passed without issue and everything seems to work as
expected.
I'd like to see this go into the 2.6.37 release if there are no
objections. There will be merge conflicts between this and Metze's
mfsymlink work. We'll just need to determine which one goes in first to
know who needs to rebase to what.
Jeff Layton (15):
cifs: eliminate redundant xdev check in cifs_rename
cifs: add tcon field to cifsFileInfo struct
cifs: make various routines use the cifsFileInfo->tcon pointer
cifs: fix handling of signing with writepages
cifs: add function to get a tcon from cifs_sb
cifs: temporarily rename cifs_sb->tcon to ptcon to catch stragglers
cifs: add cifs_sb_master_tcon and convert some callers to use it
cifs: have cifs_new_fileinfo take a tcon arg
cifs: add refcounted and timestamped container for holding tcons
cifs: have cifsFileInfo hold a reference to a tlink rather than tcon
pointer
cifs: have find_readable/writable_file filter by fsuid
cifs: fix cifs_show_options to show "username=" or "multiuser"
cifs: add routines to build sessions and tcons on the fly
cifs: on multiuser mount, set ownership to
current_fsuid/current_fsgid
cifs: add "multiuser" mount option
fs/cifs/cifs_dfs_ref.c | 21 ++--
fs/cifs/cifs_fs_sb.h | 10 +-
fs/cifs/cifsacl.c | 46 ++++++--
fs/cifs/cifsfs.c | 22 ++--
fs/cifs/cifsglob.h | 39 +++++++
fs/cifs/cifsproto.h | 7 +-
fs/cifs/connect.c | 285 ++++++++++++++++++++++++++++++++++++++++++++++-
fs/cifs/dir.c | 95 +++++++++++-----
fs/cifs/file.c | 161 +++++++++++++++------------
fs/cifs/fscache.c | 13 +-
fs/cifs/inode.c | 241 ++++++++++++++++++++++++++++------------
fs/cifs/ioctl.c | 17 +---
fs/cifs/link.c | 55 ++++++----
fs/cifs/misc.c | 2 +-
fs/cifs/readdir.c | 45 ++++----
fs/cifs/xattr.c | 60 +++++++----
16 files changed, 816 insertions(+), 303 deletions(-)
--
1.7.2.1
next reply other threads:[~2010-08-20 19:31 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-08-20 19:31 Jeff Layton [this message]
2010-08-20 19:31 ` [PATCH 01/15] cifs: eliminate redundant xdev check in cifs_rename Jeff Layton
[not found] ` <AANLkTikVRKBA-sv3F8cJMFV3nfqfu4AYXXJ9E4Ja+Qv+@mail.gmail.com>
[not found] ` <AANLkTikVRKBA-sv3F8cJMFV3nfqfu4AYXXJ9E4Ja+Qv+-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2010-08-25 17:55 ` Jeff Layton
2010-08-20 19:31 ` [PATCH 02/15] cifs: add tcon field to cifsFileInfo struct Jeff Layton
2010-08-20 19:32 ` [PATCH 04/15] cifs: fix handling of signing with writepages Jeff Layton
2010-08-20 19:32 ` [PATCH 06/15] cifs: temporarily rename cifs_sb->tcon to ptcon to catch stragglers Jeff Layton
2010-08-20 19:32 ` [PATCH 08/15] cifs: have cifs_new_fileinfo take a tcon arg Jeff Layton
[not found] ` <1282332731-17444-1-git-send-email-jlayton-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2010-08-20 19:31 ` [PATCH 03/15] cifs: make various routines use the cifsFileInfo->tcon pointer Jeff Layton
2010-08-20 19:32 ` [PATCH 05/15] cifs: add function to get a tcon from cifs_sb Jeff Layton
2010-08-20 19:32 ` [PATCH 07/15] cifs: add cifs_sb_master_tcon and convert some callers to use it Jeff Layton
2010-08-20 19:32 ` [PATCH 09/15] cifs: add refcounted and timestamped container for holding tcons Jeff Layton
2010-08-20 19:32 ` [PATCH 14/15] cifs: on multiuser mount, set ownership to current_fsuid/current_fsgid Jeff Layton
2010-08-20 19:32 ` [PATCH 10/15] cifs: have cifsFileInfo hold a reference to a tlink rather than tcon pointer Jeff Layton
2010-08-20 19:32 ` [PATCH 11/15] cifs: have find_readable/writable_file filter by fsuid Jeff Layton
2010-08-20 19:32 ` [PATCH 12/15] cifs: fix cifs_show_options to show "username=" or "multiuser" Jeff Layton
2010-08-20 19:32 ` [PATCH 13/15] cifs: add routines to build sessions and tcons on the fly Jeff Layton
2010-08-20 19:32 ` [PATCH 15/15] cifs: add "multiuser" mount option Jeff Layton
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1282332731-17444-1-git-send-email-jlayton@redhat.com \
--to=jlayton-h+wxahxf7alqt0dzr+alfa@public.gmane.org \
--cc=linux-cifs-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=linux-fsdevel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).