xref: /linux/arch/s390/hypfs/hypfs.h (revision d39d0ed196aa1685bb24771e92f78633c66ac9cb)
1 /*
2  *  arch/s390/hypfs/hypfs.h
3  *    Hypervisor filesystem for Linux on s390.
4  *
5  *    Copyright (C) IBM Corp. 2006
6  *    Author(s): Michael Holzheu <holzheu@de.ibm.com>
7  */
8 
9 #ifndef _HYPFS_H_
10 #define _HYPFS_H_
11 
12 #include <linux/fs.h>
13 #include <linux/types.h>
14 #include <linux/debugfs.h>
15 
16 #define REG_FILE_MODE    0440
17 #define UPDATE_FILE_MODE 0220
18 #define DIR_MODE         0550
19 
20 extern struct dentry *hypfs_mkdir(struct super_block *sb, struct dentry *parent,
21 				  const char *name);
22 
23 extern struct dentry *hypfs_create_u64(struct super_block *sb,
24 				       struct dentry *dir, const char *name,
25 				       __u64 value);
26 
27 extern struct dentry *hypfs_create_str(struct super_block *sb,
28 				       struct dentry *dir, const char *name,
29 				       char *string);
30 
31 /* LPAR Hypervisor */
32 extern int hypfs_diag_init(void);
33 extern void hypfs_diag_exit(void);
34 extern int hypfs_diag_create_files(struct super_block *sb, struct dentry *root);
35 
36 /* VM Hypervisor */
37 extern int hypfs_vm_init(void);
38 extern void hypfs_vm_exit(void);
39 extern int hypfs_vm_create_files(struct super_block *sb, struct dentry *root);
40 
41 /* Directory for debugfs files */
42 extern struct dentry *hypfs_dbfs_dir;
43 #endif /* _HYPFS_H_ */
44