[GIT PULL] AFS fixes and development

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Linus,

The following are a set of fix and development patches for AFS for 5.2.  To
summarise:

 (1) Fix the AFS file locking so that sqlite can run on an AFS mount and
     also so that firefox and gnome can use a homedir that's mounted
     through AFS.

     This required emulation of fine-grained locking when the server will
     only support whole-file locks and no upgrade/downgrade.  Four modes
     are provided, settable by mount parameter:

     "flock=local" - No reference to the server

     "flock=openafs" - Fine-grained locks are local-only, whole-file locks
     require sufficient server locks

     "flock=strict" - All locks require sufficient server locks

     "flock=write" - Always get an exclusive server lock

     If the volume is a read-only or backup volume, then flock=local for
     that volume.

 (2) Log extra information for a couple of cases where the client mucks up
     somehow: AFS vnode with undefined type and dir check failure - in both
     cases we seem to end up with unfilled data, but the issues happen
     infrequently and are difficult to reproduce at will.

 (3) Implement silly rename for unlink() and rename().

 (4) Set i_blocks so that du can get some information about usage.

 (5) Fix xattr handlers to return the right amount of data and to not
     overflow buffers.

 (6) Implement getting/setting raw AFS and YFS ACLs as xattrs.

Tested-by: Jonathan Billings <jsbillings@xxxxxxxxxxxxxx>
Signed-off-by: David Howells <dhowells@xxxxxxxxxx>
---
The following changes since commit cd8dead0c39457e58ec1d36db93aedca811d48f1:

  Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net (2019-04-24 16:18:59 -0700)

are available in the Git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs.git tags/afs-next-20190507

for you to fetch changes up to f5e4546347bc847be30b3cf904db5fc874b3c5dc:

  afs: Implement YFS ACL setting (2019-05-07 16:48:44 +0100)

----------------------------------------------------------------
AFS Development

----------------------------------------------------------------
David Howells (17):
      afs: Split wait from afs_make_call()
      afs: Calculate lock extend timer from set/extend reply reception
      afs: Fix AFS file locking to allow fine grained locks
      afs: Further fix file locking
      afs: Add file locking tracepoints
      afs: Improve dir check failure reports
      afs: Handle lock rpc ops failing on a file that got deleted
      afs: Add directory reload tracepoint
      afs: Implement sillyrename for unlink and rename
      afs: Add more tracepoints
      afs: Provide mount-time configurable byte-range file locking emulation
      afs: Log more information for "kAFS: AFS vnode with undefined type\n"
      afs: Fix the afs.cell and afs.volume xattr handlers
      afs: Fix getting the afs.fid xattr
      afs: Get an AFS3 ACL as an xattr
      afs: Get YFS ACLs and information through xattrs
      afs: Implement YFS ACL setting

Joe Gorse (1):
      afs: implement acl setting

Marc Dionne (1):
      afs: Calculate i_blocks based on file size

 fs/afs/Makefile            |   1 +
 fs/afs/afs_fs.h            |   2 +
 fs/afs/dir.c               | 167 ++++++++++--
 fs/afs/dir_silly.c         | 239 ++++++++++++++++++
 fs/afs/flock.c             | 616 ++++++++++++++++++++++++++++-----------------
 fs/afs/fs_probe.c          |  13 +-
 fs/afs/fsclient.c          | 277 +++++++++++++++++---
 fs/afs/inode.c             |  43 +++-
 fs/afs/internal.h          |  64 ++++-
 fs/afs/protocol_yfs.h      |   6 +-
 fs/afs/rxrpc.c             |  33 ++-
 fs/afs/super.c             |  34 ++-
 fs/afs/vl_probe.c          |  14 +-
 fs/afs/vlclient.c          |  26 +-
 fs/afs/xattr.c             | 270 +++++++++++++++++++-
 fs/afs/yfsclient.c         | 329 +++++++++++++++++++++---
 include/linux/fs.h         |   1 +
 include/trace/events/afs.h | 385 +++++++++++++++++++++++++++-
 18 files changed, 2142 insertions(+), 378 deletions(-)
 create mode 100644 fs/afs/dir_silly.c



[Index of Archives]     [Linux Ext4 Filesystem]     [Union Filesystem]     [Filesystem Testing]     [Ceph Users]     [Ecryptfs]     [AutoFS]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux Cachefs]     [Reiser Filesystem]     [Linux RAID]     [Samba]     [Device Mapper]     [CEPH Development]

  Powered by Linux