static int pwqr_create(int flags)
{
- if (flags & ~(O_NONBLOCK | O_CLOEXEC)) {
+ if (flags & ~PWQR_FL__SET) {
errno = -EINVAL;
return -1;
}
struct pwqr_ioc_wait wait;
switch (op) {
- case PWQR_GET_CONC:
- case PWQR_REGISTER:
- case PWQR_UNREGISTER:
- case PWQR_PARK:
+ case PWQR_CTL_GET_CONC:
+ case PWQR_CTL_REGISTER:
+ case PWQR_CTL_UNREGISTER:
+ case PWQR_CTL_PARK:
return ioctl(fd, op);
- case PWQR_SET_CONC:
- case PWQR_WAKE:
- case PWQR_WAKE_OC:
+ case PWQR_CTL_SET_CONC:
+ case PWQR_CTL_WAKE:
+ case PWQR_CTL_WAKE_OC:
return ioctl(fd, op, val);
- case PWQR_WAIT:
+ case PWQR_CTL_WAIT:
wait.pwqr_ticket = val;
wait.pwqr_uaddr = uaddr;
return ioctl(fd, op, &wait);
atomic_add(&pwqr_g.ticket, 1);
#endif
if (atomic_fetch_and_add(&pwqr_g.waiters, 0))
- pwqr_ctl(pwqr_g.fd, PWQR_WAKE, n, NULL);
+ pwqr_ctl(pwqr_g.fd, PWQR_CTL_WAKE, n, NULL);
}
static ALWAYS_INLINE void pwqr_signal(void)
{
pthread_cleanup_push(&pwqr_do_wait_cleanup, NULL);
pthread_setcanceltype(PTHREAD_CANCEL_ASYNCHRONOUS, &canceltype);
- rc = pwqr_ctl(pwqr_g.fd, PWQR_WAIT, ticket, &pwqr_g.lo);
+ rc = pwqr_ctl(pwqr_g.fd, PWQR_CTL_WAIT, ticket, &pwqr_g.lo);
if (rc < 0) {
if (errno == EINTR) {
rc = INPOOL;
run_job(job);
#endif
- if ((rc = pwqr_ctl(pwqr_g.fd, PWQR_PARK, 0, NULL)) == 0) {
+ if ((rc = pwqr_ctl(pwqr_g.fd, PWQR_CTL_PARK, 0, NULL)) == 0) {
access_once(pwqr_g.overcommit_count) = 0;
if (atomic_fetch_and_sub(&pwqr_g.parked, 1) == 0) {
pwqr_spawn_thread(PARKED, 1);
goto out;
pthread_cleanup_push(&pwqr_main_cleanup, NULL);
- if (pwqr_ctl(pwqr_g.fd, PWQR_REGISTER, 0, NULL) < 0)
+ if (pwqr_ctl(pwqr_g.fd, PWQR_CTL_REGISTER, 0, NULL) < 0)
goto out;
do {
}
pwqr_g.fd = fd;
- n = pwqr_ctl(pwqr_g.fd, PWQR_GET_CONC, 0, NULL) + 4;
+ n = pwqr_ctl(pwqr_g.fd, PWQR_CTL_GET_CONC, 0, NULL) + 4;
pwqr_spawn_thread(INPOOL, n);
pwqr_spawn_thread(PARKED, 4);