Linux Kernel
3.7.1
Main Page
Related Pages
Modules
Namespaces
Data Structures
Files
File List
Globals
All
Data Structures
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Groups
Pages
arch
s390
hypfs
hypfs.h
Go to the documentation of this file.
1
/*
2
* Hypervisor filesystem for Linux on s390.
3
*
4
* Copyright IBM Corp. 2006
5
* Author(s): Michael Holzheu <
[email protected]
>
6
*/
7
8
#ifndef _HYPFS_H_
9
#define _HYPFS_H_
10
11
#include <linux/fs.h>
12
#include <linux/types.h>
13
#include <
linux/debugfs.h
>
14
#include <
linux/workqueue.h
>
15
#include <
linux/kref.h
>
16
17
#define REG_FILE_MODE 0440
18
#define UPDATE_FILE_MODE 0220
19
#define DIR_MODE 0550
20
21
extern
struct
dentry
*
hypfs_mkdir
(
struct
super_block
*
sb
,
struct
dentry
*parent,
22
const
char
*
name
);
23
24
extern
struct
dentry
*
hypfs_create_u64
(
struct
super_block
*
sb
,
25
struct
dentry
*dir,
const
char
*
name
,
26
__u64
value
);
27
28
extern
struct
dentry
*
hypfs_create_str
(
struct
super_block
*
sb
,
29
struct
dentry
*dir,
const
char
*
name
,
30
char
*
string
);
31
32
/* LPAR Hypervisor */
33
extern
int
hypfs_diag_init
(
void
);
34
extern
void
hypfs_diag_exit
(
void
);
35
extern
int
hypfs_diag_create_files
(
struct
super_block
*
sb
,
struct
dentry
*root);
36
37
/* VM Hypervisor */
38
extern
int
hypfs_vm_init
(
void
);
39
extern
void
hypfs_vm_exit
(
void
);
40
extern
int
hypfs_vm_create_files
(
struct
super_block
*
sb
,
struct
dentry
*root);
41
42
/* debugfs interface */
43
struct
hypfs_dbfs_file
;
44
45
struct
hypfs_dbfs_data
{
46
void
*
buf
;
47
void
*
buf_free_ptr
;
48
size_t
size
;
49
struct
hypfs_dbfs_file
*
dbfs_file
;
50
struct
kref
kref
;
51
};
52
53
struct
hypfs_dbfs_file
{
54
const
char
*
name
;
55
int
(*
data_create
)(
void
**
data
,
void
**data_free_ptr,
56
size_t
*
size
);
57
void
(*
data_free
)(
const
void
*buf_free_ptr);
58
59
/* Private data for hypfs_dbfs.c */
60
struct
hypfs_dbfs_data
*
data
;
61
struct
delayed_work
data_free_work
;
62
struct
mutex
lock
;
63
struct
dentry
*
dentry
;
64
};
65
66
extern
int
hypfs_dbfs_init
(
void
);
67
extern
void
hypfs_dbfs_exit
(
void
);
68
extern
int
hypfs_dbfs_create_file
(
struct
hypfs_dbfs_file
*
df
);
69
extern
void
hypfs_dbfs_remove_file
(
struct
hypfs_dbfs_file
*
df
);
70
71
#endif
/* _HYPFS_H_ */
Generated on Thu Jan 10 2013 13:16:36 for Linux Kernel by
1.8.2