summaryrefslogtreecommitdiff
path: root/fs/orangefs/protocol.h
AgeCommit message (Collapse)Author
2017-04-26orangefs: remove ORANGEFS_READDIR macrosMartin Brandenburg
They are clones of the ORANGEFS_ITERATE macros in use elsewhere. Delete ORANGEFS_ITERATE_NEXT which is a hack previously used by readdir. Signed-off-by: Martin Brandenburg <martin@omnibond.com> Signed-off-by: Mike Marshall <hubcap@omnibond.com>
2016-08-15orangefs: clean up debugfs globalsMartin Brandenburg
Mostly this is moving code into orangefs-debugfs.c so that globals turn into static globals. Then gossip_debug_mask is renamed orangefs_gossip_debug_mask but keeps global visibility, so it can be used from a macro. Signed-off-by: Martin Brandenburg <martin@omnibond.com>
2016-08-02orangefs: Cache getattr results.Martin Brandenburg
The userspace component attempts to do this, but this will prevent us from even needing to go into userspace to satisfy certain getattr requests. Signed-off-by: Martin Brandenburg <martin@omnibond.com>
2016-04-08orangefs: Add KERN_<LEVEL> to gossip_<level> macrosJoe Perches
Emit the logging messages at the appropriate levels. Miscellanea: o Change format to fmt o Use the more common ##__VA_ARGS__ Signed-off-by: Joe Perches <joe@perches.com> Signed-off-by: Mike Marshall <hubcap@omnibond.com>
2016-04-08Orangefs: optimize boilerplate code.Mike Marshall
Suggested by David Binderman <dcb314@hotmail.com> The former can potentially be a performance win over the latter. memcpy(d, s, len); memset(d+len, c, size-len); memset(d, c, size); memcpy(d, s, len); Signed-off-by: Mike Marshall <hubcap@omnibond.com>
2016-03-31orangefs: minimum userspace version is 2.9.3Martin Brandenburg
Version 2.9.4 isn't even released yet. Signed-off-by: Martin Brandenburg <martin@omnibond.com>
2016-02-24orangefs: we never lookup with sym_follow setMartin Brandenburg
Signed-off-by: Martin Brandenburg <martin@omnibond.com> Signed-off-by: Mike Marshall <hubcap@omnibond.com>
2016-02-04orangefs: Implement inode_operations->permission().Martin Brandenburg
Thus d_revalidate is not obliged to check on as much, which will eventually lead the way to hammering the filesystem servers much less. Signed-off-by: Martin Brandenburg <martin@omnibond.com> Signed-off-by: Mike Marshall <hubcap@omnibond.com>
2016-01-13Orangefs: define a minimum compatible userspace version.Mike Marshall
Signed-off-by: Mike Marshall <hubcap@omnibond.com>
2015-12-04Orangefs: change pvfs2 filenames to orangefsMike Marshall
Also changed references within source files that referred to header files whose names had changed. Signed-off-by: Mike Marshall <hubcap@omnibond.com>
2015-12-03OrangeFS: Change almost all instances of the string PVFS2 to OrangeFS.Yi Liu
OrangeFS was formerly known as PVFS2 and retains the name in many places. I leave the device /dev/pvfs2-req since this affects userspace. I leave the filesystem type pvfs2 since this affects userspace. Further the OrangeFS sysint library reads fstab for an entry of type pvfs2 independently of kernel mounts. I leave extended attribute keys user.pvfs2 and system.pvfs2 as the sysint library understands these. I leave references to userspace binaries still named pvfs2. I leave the filenames. Signed-off-by: Yi Liu <yi9@clemson.edu> [martin@omnibond.com: clairify above constraints and merge] Signed-off-by: Martin Brandenburg <martin@omnibond.com> Signed-off-by: Mike Marshall <hubcap@omnibond.com>
2015-10-05Orangefs: fix some checkpatch.pl complaints that had creeped in.Mike Marshall
Signed-off-by: Mike Marshall <hubcap@omnibond.com>
2015-10-03Orangefs: Clean up error decoding.Martin Brandenburg
Errors from the server need to be decoded. A bunch of code was imported from the server to do this but much of it is convoluted and not even needed. The result is better but still as convoluted as required by the protocol. Signed-off-by: Martin Brandenburg <martin@omnibond.com> Signed-off-by: Mike Marshall <hubcap@omnibond.com>
2015-10-03Orangefs: Don't opencode memcpy.Mike Marshall
Signed-off-by: Mike Marshall <hubcap@omnibond.com>
2015-10-03Orangefs: put PVFS_util_min out of its misery.Mike Marshall
Signed-off-by: Mike Marshall <hubcap@omnibond.com>
2015-10-03Orangefs: fix dir_emit code in pvfs2_readdir.Mike Marshall
Al Viro glanced at readdir and surmised that getdents would misbehave the way it was written... and sure enough. Signed-off-by: Mike Marshall <hubcap@omnibond.com>
2015-10-03Orangefs: Swap order of include filesGuenter Roeck
spinlock_types.h requires types from linux/types.h. Including spinlock_types.h first may result in the following build errors, as seen with arm:allmodconfig. arch/arm/include/asm/spinlock_types.h:12:3: error: unknown type name 'u32' arch/arm/include/asm/spinlock_types.h:16:4: error: unknown type name 'u16' Fixes: deb4fb58ff73 ("Orangefs: kernel client part 2") Cc: Mark Brown <broonie@kernel.org> Cc: Mike Marshall <hubcap@omnibond.com> Signed-off-by: Guenter Roeck <linux@roeck-us.net> Signed-off-by: Mike Marshall <hubcap@omnibond.com>
2015-10-03Orangefs: sooth most sparse complaintsMike Marshall
Signed-off-by: Mike Marshall <hubcap@omnibond.com>
2015-10-03Orangefs: kernel client update 1.Mike Marshall
Stephen Rothwell noticed that orangefs would not compile on powerpc... Signed-off-by: Mike Marshall <hubcap@omnibond.com>
2015-10-03Orangefs: kernel client part 1Mike Marshall
OrangeFS (formerly PVFS) is an lgpl licensed userspace networked parallel file system. OrangeFS can be accessed through included system utilities, user integration libraries, MPI-IO and can be used by the Hadoop ecosystem as an alternative to the HDFS filesystem. OrangeFS is used widely for parallel science, data analytics and engineering applications. While applications often don't require Orangefs to be mounted into the VFS, users do like to be able to access their files in the normal way. The Orangefs kernel client allows Orangefs filesystems to be mounted as a VFS. The kernel client communicates with a userspace daemon which in turn communicates with the Orangefs server daemons that implement the filesystem. The server daemons (there's almost always more than one) need not be running on the same host as the kernel client. Orangefs filesystems can also be mounted with FUSE, and we ship code and instructions to facilitate that, but most of our users report preferring to use our kernel module instead. Further, as an example of a problem we can't solve with fuse, we have in the works a not-yet-ready-for-prime-time version of a file_operations lock function that accounts for the server daemons being distributed across more than one running kernel. Many people and organizations, including Clemson University, Argonne National Laboratories and Acxiom Corporation have helped to create what has become Orangefs over more than twenty years. Some of the more recent contributors to the kernel client include: Mike Marshall Christoph Hellwig Randy Martin Becky Ligon Walt Ligon Michael Moore Rob Ross Phil Carnes Signed-off-by: Mike Marshall <hubcap@omnibond.com>