aboutsummaryrefslogtreecommitdiff
path: root/libdiskfs/diskfs.h
diff options
context:
space:
mode:
authorSamuel Thibault <samuel.thibault@ens-lyon.org>2012-07-01 02:12:43 +0000
committerSamuel Thibault <samuel.thibault@ens-lyon.org>2012-07-01 02:12:43 +0000
commit13ea39a34766fcbecd96ab94bcdf798b08e9bb60 (patch)
tree1e1463b03838a6f36868a4dafc7e652358a51857 /libdiskfs/diskfs.h
parent1f8d504f631531c199d7c6154a0dc442d80ea4a7 (diff)
parent7e15f3d69a83a34ac62cbbee944a0bfbfa92724e (diff)
downloadhurd-13ea39a34766fcbecd96ab94bcdf798b08e9bb60.tar.gz
hurd-13ea39a34766fcbecd96ab94bcdf798b08e9bb60.tar.bz2
hurd-13ea39a34766fcbecd96ab94bcdf798b08e9bb60.zip
Merge branch 'master' into xkb
Conflicts: config.make.in configure.in
Diffstat (limited to 'libdiskfs/diskfs.h')
-rw-r--r--libdiskfs/diskfs.h15
1 files changed, 13 insertions, 2 deletions
diff --git a/libdiskfs/diskfs.h b/libdiskfs/diskfs.h
index 9a61964c..2051e41d 100644
--- a/libdiskfs/diskfs.h
+++ b/libdiskfs/diskfs.h
@@ -27,9 +27,12 @@
#include <hurd/fshelp.h>
#include <hurd/iohelp.h>
#include <idvec.h>
+#include <features.h>
-#ifndef DISKFS_EXTERN_INLINE
-#define DISKFS_EXTERN_INLINE extern inline
+#ifdef DISKFS_DEFINE_EXTERN_INLINE
+#define DISKFS_EXTERN_INLINE
+#else
+#define DISKFS_EXTERN_INLINE __extern_inline
#endif
/* Each user port referring to a file points to one of these
@@ -781,6 +784,12 @@ error_t diskfs_start_protid (struct peropen *po, struct protid **cred);
the user to install is USER. */
void diskfs_finish_protid (struct protid *cred, struct iouser *user);
+extern struct protid * diskfs_begin_using_protid_port (file_t port);
+
+extern void diskfs_end_using_protid_port (struct protid *cred);
+
+#if defined(__USE_EXTERN_INLINES) || defined(DISKFS_DEFINE_EXTERN_INLINE)
+
/* Called by MiG to translate ports into struct protid *.
fsmutations.h arranges for this to happen for the io and
fs interfaces. */
@@ -800,6 +809,8 @@ diskfs_end_using_protid_port (struct protid *cred)
ports_port_deref (cred);
}
+#endif /* Use extern inlines. */
+
/* Called when a protid CRED has no more references. (Because references\
to protids are maintained by the port management library, this is
installed in the clean routines list.) The ports library will