Browse Source

FS-Cache: Bit waiting helpers

Add helpers for use with wait_on_bit().

Signed-off-by: David Howells <dhowells@redhat.com>
Acked-by: Steve Dickson <steved@redhat.com>
Acked-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Acked-by: Al Viro <viro@zeniv.linux.org.uk>
Tested-by: Daire Byrne <Daire.Byrne@framestore.com>
David Howells 16 years ago
parent
commit
2868cbea72
2 changed files with 23 additions and 0 deletions
  1. 3 0
      fs/fscache/internal.h
  2. 20 0
      fs/fscache/main.c

+ 3 - 0
fs/fscache/internal.h

@@ -82,6 +82,9 @@ extern unsigned fscache_defer_create;
 extern unsigned fscache_debug;
 extern unsigned fscache_debug;
 extern struct kobject *fscache_root;
 extern struct kobject *fscache_root;
 
 
+extern int fscache_wait_bit(void *);
+extern int fscache_wait_bit_interruptible(void *);
+
 /*
 /*
  * fsc-proc.c
  * fsc-proc.c
  */
  */

+ 20 - 0
fs/fscache/main.c

@@ -102,3 +102,23 @@ static void __exit fscache_exit(void)
 }
 }
 
 
 module_exit(fscache_exit);
 module_exit(fscache_exit);
+
+/*
+ * wait_on_bit() sleep function for uninterruptible waiting
+ */
+int fscache_wait_bit(void *flags)
+{
+	schedule();
+	return 0;
+}
+EXPORT_SYMBOL(fscache_wait_bit);
+
+/*
+ * wait_on_bit() sleep function for interruptible waiting
+ */
+int fscache_wait_bit_interruptible(void *flags)
+{
+	schedule();
+	return signal_pending(current);
+}
+EXPORT_SYMBOL(fscache_wait_bit_interruptible);