#include <sys/errno.h>
#include <sys/select.h>
#include <kern/thread.h>
-#if 0 /* [ */
-#include <kern/sched_prim.h>
-#include <kern/parallel.h>
-#endif /* 0 ] */
#define LOG_RDPRI (PZERO + 1)
int flags, mode;
struct proc *p;
{
- unix_master(); /* for pg_id, sigh */
LOG_LOCK();
if (log_open) {
LOG_UNLOCK();
- unix_release();
return (EBUSY);
}
log_open = 1;
msgbufp->msg_bufc[i] = 0;
}
LOG_UNLOCK();
- unix_release();
+
return (0);
}
/*ARGSUSED*/
int
-logselect(dev, rw, p)
+logselect(dev, rw, wql, p)
dev_t dev;
int rw;
+ void * wql;
struct proc *p;
{
int s = splhigh();
splx(s);
return (1);
}
- selrecord(p, &logsoftc.sc_selp);
+ selrecord(p, &logsoftc.sc_selp, wql);
break;
}
splx(s);
funnel_state = thread_funnel_set(kernel_flock, TRUE);
selwakeup(&logsoftc.sc_selp);
if (logsoftc.sc_state & LOG_ASYNC) {
- unix_master();
LOG_LOCK();
pgid = logsoftc.sc_pgid;
LOG_UNLOCK();
gsignal(-pgid, SIGIO);
else if (p = pfind(pgid))
psignal(p, SIGIO);
- unix_release();
}
if (logsoftc.sc_state & LOG_RDWAIT) {
wakeup((caddr_t)msgbufp);
/*ARGSUSED*/
int
-logioctl(com, data, flag)
+logioctl(dev, com, data, flag)
caddr_t data;
{
long l;