- xid_t xid;
- struct vc_set_sched sched;
- struct vc_ctx_flags flags;
- unsigned cpuguaranteed = 0;
-
- sched.set_mask = (VC_VXSM_FILL_RATE |
- VC_VXSM_INTERVAL |
- VC_VXSM_TOKENS_MIN |
- VC_VXSM_TOKENS_MAX);
-
- if (!PyArg_ParseTuple(args, "I|I|I|I|I|I|I", &xid,
- &sched.fill_rate,
- &sched.interval,
- &sched.tokens,
- &sched.tokens_min,
- &sched.tokens_max,
- &cpuguaranteed))
- return NULL;
-
- flags.flagword = VC_VXF_SCHED_HARD;
- flags.mask |= VC_VXF_SCHED_HARD;
-#define VC_VXF_SCHED_SHARE 0x00000800ull
- if (cpuguaranteed==0) {
- flags.flagword |= VC_VXF_SCHED_SHARE;
- flags.mask |= VC_VXF_SCHED_SHARE;
- }
-
- if (vc_set_cflags(xid, &flags) == -1)
- return PyErr_SetFromErrno(PyExc_OSError);
+ xid_t ctx;
+ rspec_t rspec = { 32, VC_VXF_SCHED_FLAGS, -1, -1 };
+ PyObject *resources;
+ PyObject *cpu_share;