xref: /openbmc/linux/arch/s390/hypfs/hypfs_vm.h (revision 18afb028)
1 /* SPDX-License-Identifier: GPL-2.0 */
2 /*
3  *    Hypervisor filesystem for Linux on s390. z/VM implementation.
4  *
5  *    Copyright IBM Corp. 2006
6  *    Author(s): Michael Holzheu <holzheu@de.ibm.com>
7  */
8 
9 #ifndef _S390_HYPFS_VM_H_
10 #define _S390_HYPFS_VM_H_
11 
12 #define DIAG2FC_NAME_LEN 8
13 
14 struct diag2fc_data {
15 	__u32 version;
16 	__u32 flags;
17 	__u64 used_cpu;
18 	__u64 el_time;
19 	__u64 mem_min_kb;
20 	__u64 mem_max_kb;
21 	__u64 mem_share_kb;
22 	__u64 mem_used_kb;
23 	__u32 pcpus;
24 	__u32 lcpus;
25 	__u32 vcpus;
26 	__u32 ocpus;
27 	__u32 cpu_max;
28 	__u32 cpu_shares;
29 	__u32 cpu_use_samp;
30 	__u32 cpu_delay_samp;
31 	__u32 page_wait_samp;
32 	__u32 idle_samp;
33 	__u32 other_samp;
34 	__u32 total_samp;
35 	char  guest_name[DIAG2FC_NAME_LEN];
36 };
37 
38 struct diag2fc_parm_list {
39 	char userid[DIAG2FC_NAME_LEN];
40 	char aci_grp[DIAG2FC_NAME_LEN];
41 	__u64 addr;
42 	__u32 size;
43 	__u32 fmt;
44 };
45 
46 void *diag2fc_store(char *query, unsigned int *count, int offset);
47 void diag2fc_free(const void *data);
48 extern char *diag2fc_guest_query;
49 
50 #endif /* _S390_HYPFS_VM_H_ */
51