#define VCMD_get_rlimit VC_CMD(RLIMIT, 1, 0)
#define VCMD_set_rlimit VC_CMD(RLIMIT, 2, 0)
#define VCMD_get_rlimit_mask VC_CMD(RLIMIT, 3, 0)
+#define VCMD_reset_minmax VC_CMD(RLIMIT, 9, 0)
struct vcmd_ctx_rlimit_v0 {
uint32_t id;
uint32_t maximum;
};
+#define VCMD_rlimit_stat VC_CMD(VSTAT, 1, 0)
+
+struct vcmd_rlimit_stat_v0 {
+ uint32_t id;
+ uint32_t hits;
+ uint64_t value;
+ uint64_t minimum;
+ uint64_t maximum;
+};
+
#define CRLIM_UNSET (0ULL)
#define CRLIM_INFINITY (~0ULL)
#define CRLIM_KEEP (~1ULL)
#include <linux/compiler.h>
-extern int vc_get_rlimit(uint32_t, void __user *);
-extern int vc_set_rlimit(uint32_t, void __user *);
extern int vc_get_rlimit_mask(uint32_t, void __user *);
+extern int vc_get_rlimit(struct vx_info *, void __user *);
+extern int vc_set_rlimit(struct vx_info *, void __user *);
+extern int vc_reset_minmax(struct vx_info *, void __user *);
+
+extern int vc_rlimit_stat(struct vx_info *, void __user *);
#ifdef CONFIG_IA32_EMULATION
-extern int vc_get_rlimit_x32(uint32_t, void __user *);
-extern int vc_set_rlimit_x32(uint32_t, void __user *);
+extern int vc_get_rlimit_x32(struct vx_info *, void __user *);
+extern int vc_set_rlimit_x32(struct vx_info *, void __user *);
#endif /* CONFIG_IA32_EMULATION */