X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=kernel%2Fcontext_cmd.h;h=d1ec86b2f5cfb4663b981261261d317d573be851;hb=refs%2Fheads%2Fscholz;hp=f631095cd9d087b7d465a77132053e6cdcf0430c;hpb=8cf13bb177d92c93eb73dc8939777150536c2d00;p=util-vserver.git diff --git a/kernel/context_cmd.h b/kernel/context_cmd.h index f631095..d1ec86b 100644 --- a/kernel/context_cmd.h +++ b/kernel/context_cmd.h @@ -6,10 +6,6 @@ #define VCMD_task_xid VC_CMD(VINFO, 1, 0) -#ifdef __KERNEL__ -extern int vc_task_xid(uint32_t, void __user *); - -#endif /* __KERNEL__ */ #define VCMD_vx_info VC_CMD(VINFO, 5, 0) @@ -19,10 +15,14 @@ struct vcmd_vx_info_v0 { /* more to come */ }; -#ifdef __KERNEL__ -extern int vc_vx_info(uint32_t, void __user *); -#endif /* __KERNEL__ */ +#define VCMD_ctx_stat VC_CMD(VSTAT, 0, 0) + +struct vcmd_ctx_stat_v0 { + uint32_t usecnt; + uint32_t tasks; + /* more to come */ +}; /* context commands */ @@ -34,13 +34,13 @@ struct vcmd_ctx_create { uint64_t flagword; }; -#define VCMD_ctx_migrate VC_CMD(PROCMIG, 1, 0) +#define VCMD_ctx_migrate_v0 VC_CMD(PROCMIG, 1, 0) +#define VCMD_ctx_migrate VC_CMD(PROCMIG, 1, 1) -#ifdef __KERNEL__ -extern int vc_ctx_create(uint32_t, void __user *); -extern int vc_ctx_migrate(uint32_t, void __user *); +struct vcmd_ctx_migrate { + uint64_t flagword; +}; -#endif /* __KERNEL__ */ /* flag commands */ @@ -53,17 +53,12 @@ struct vcmd_ctx_flags_v0 { uint64_t mask; }; -#ifdef __KERNEL__ -extern int vc_get_cflags(uint32_t, void __user *); -extern int vc_set_cflags(uint32_t, void __user *); - -#endif /* __KERNEL__ */ /* context caps commands */ -#define VCMD_get_ccaps VC_CMD(FLAGS, 3, 0) -#define VCMD_set_ccaps VC_CMD(FLAGS, 4, 0) +#define VCMD_get_ccaps_v0 VC_CMD(FLAGS, 3, 0) +#define VCMD_set_ccaps_v0 VC_CMD(FLAGS, 4, 0) struct vcmd_ctx_caps_v0 { uint64_t bcaps; @@ -71,9 +66,35 @@ struct vcmd_ctx_caps_v0 { uint64_t cmask; }; -#ifdef __KERNEL__ -extern int vc_get_ccaps(uint32_t, void __user *); -extern int vc_set_ccaps(uint32_t, void __user *); +#define VCMD_get_ccaps VC_CMD(FLAGS, 3, 1) +#define VCMD_set_ccaps VC_CMD(FLAGS, 4, 1) + +struct vcmd_ctx_caps_v1 { + uint64_t ccaps; + uint64_t cmask; +}; + + + +/* bcaps commands */ + +#define VCMD_get_bcaps VC_CMD(FLAGS, 9, 0) +#define VCMD_set_bcaps VC_CMD(FLAGS, 10, 0) + +struct vcmd_bcaps { + uint64_t bcaps; + uint64_t bmask; +}; + + + +/* OOM badness */ + +#define VCMD_get_badness VC_CMD(MEMCTRL, 5, 0) +#define VCMD_set_badness VC_CMD(MEMCTRL, 6, 0) + +struct vcmd_badness_v0 { + int64_t bias; +}; -#endif /* __KERNEL__ */ #endif /* _VX_CONTEXT_CMD_H */