| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
can pass the size to free()
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Introduce new defines TTHIWATMINSPACE, TTMINHIWAT for some magic values
that are used in tty.c.
- Remove hiwat adjustments in ttwrite(). This fixes this codepath not
being interrupt safe.
- Change ttysetwater() to keep at least TTHIWATMINSPACE space above the high
water mark. This makes it consistent with ttycheckoutq(). Without this
change, the hiwat adjustment change above causes deadlocks in pty.
ok kspillner@
commit it now deraadt@
|
|
|
|
|
|
|
| |
- rename uiomove() to uiomovei() and update all its users.
- introduce uiomove(), which is similar to uiomovei() but with a size_t.
- rewrite uiomovei() as an uiomove() wrapper.
ok kettenis@
|
|
|
|
|
| |
Help and feedback by Theo and Miod.
OK deraadt@, manpage-ok jmc@
|
|
|
|
|
| |
era. fix uvm including c files to include lock.h or atomic.h as necessary.
ok deraadt
|
|
|
|
|
|
| |
objective: vnode.h doesn't include uvm_extern.h anymore.
followup changes: include uvm_extern.h or lock.h where necessary.
ok and help from deraadt
|
| |
|
|
|
|
|
|
|
|
|
|
| |
dynamic clamping mechanism. In the (new? has it already been 20 years?)
world of tty ring buffers, c_cn is the maximum...
There could be some ugly limit elsewhere, which may cause a deadlock
(dug as deep as my patience allows), so please report any sort
of new console or xterm issues that show up, such as tty lockups or high
cpu utilization..
|
| |
|
|
|
|
|
|
|
|
|
|
| |
related to disk stastics for almost 17 years, and the remaining
userland-visible defines duplicate those found in <sys/sched.h>.
Move the remaining _KERNEL defines to <sys/tty.h> where they belong, and
update all users to cope with this.
ok kettenis@
|
| |
|
|
|
|
|
|
| |
not have any threads left. Treat that the same as an empty pgrp.
encountered by and ok deraadt@
|
|
|
|
| |
after discussions with beck deraadt kettenis.
|
|
|
|
|
| |
don't need to be married.
ok guenther miod beck jsing kettenis
|
|
|
|
|
|
|
|
|
|
|
| |
PS_{ZOMBIE,EMBRYO} on the process instead of peeking into the process's
thread data. This eliminates the need for the thread-level SDEAD state.
Change kvm_getprocs() (both the sysctl() and kvm backends) to report the
"most active" scheduler state for the process's threads.
tweaks kettenis@
feedback and ok matthew@
|
|
|
|
| |
ok millert
|
| |
|
|
|
|
|
|
| |
(aka ^T), summing CPU and check runnable/running status of all threads.
ok deraadt@
|
|
|
|
| |
testing help mpi@
|
|
|
|
|
| |
compat. This will be used to implement tcgetsid() in the future.
OK kettenis@ guenther@
|
| |
|
|
|
|
|
|
|
| |
when events is set to POLLIN and POLLHUP when events is set to
POLLOUT. In the pty case we need to be careful to only treat the
pty as closed if carrier is on. This fixes a hang on close problem
seen with ssh and xterm.
|
|
|
|
| |
is fixed.
|
|
|
|
|
| |
when events is set to POLLIN and POLLHUP when events is set to
POLLOUT. OK deraadt@
|
|
|
|
|
|
| |
for big time_t and casting to long long
ok deraadt@
|
|
|
|
| |
ok matthew@ deraadt@
|
|
|
|
|
|
|
|
|
|
|
| |
anyone is waiting with kqueue their knotes may still have a reference to
the tty and later try to use it in the filt_tty* functions.
To avoid this, walk the knotes in ttyfree(), remove them from the tty's
list and invalidate them by setting kn_hook to NODEV. The filter
functions can then check for this and safely ignore the knotes.
ok tedu matthieu
|
|
|
|
|
|
|
| |
we do not grow space like clist chains). Clamp it a bit more precisely,
ensuring a bit of space for kernel ^T handling and such. It was definately
wrong, and we can tune this if required later.
ok kettenis
|
|
|
|
| |
ok deraadt@
|
|
|
|
|
|
|
| |
of per-rthread. Handling of per-thread tick and runtime counters
inspired by how FreeBSD does it.
ok kettenis@
|
|
|
|
|
|
|
|
| |
problem has been tracked down. This fixes the sharing of the signal
handling state: shared bits go in sigacts, per-rthread bits goes in
struct proc.
ok deraadt@
|
|
|
|
|
|
| |
the obvious cases to return EINVAL and ENXIO.
ok tedu deraadt
|
|
|
|
|
|
| |
until they're zombies and then send them signals (for intr mounts). Until
that is untangled, the sigacts change is unsafe. sthen@ was the victim
for this one
|
|
|
|
|
|
|
|
|
|
|
|
| |
be shared (p_sigignore, p_sigcatch, P_NOCLDSTOP, P_NOCLDWAIT) moves
to struct sigacts, wihle stuff that should be per rthread (ps_oldmask,
SAS_OLDMASK, ps_sigstk) moves to struct proc. Treat the coredumping
state bits (ps_sig, ps_code, ps_type, ps_sigval) as per-rthread
until our locking around coredumping is better.
Oh, and remove the old SunOS-compat ps_usertramp member.
"I like the sound of this" tedu@
|
|
|
|
|
|
|
|
|
| |
a vforked child behave correctly. Have the parent in a vfork()
wait on a (different) flag in *its* process instead of the child
to prevent a possible use-after-free. When ktracing the child
return from a fork, call it rfork if an rthread was created.
ok blambert@
|
|
|
|
|
|
|
|
|
| |
so that the process-level stuff is to/from struct process and not
struct proc. This fixes a bunch of problem cases in rthreads.
Based on earlier work by blambert and myself, but mostly written
at c2k10.
Tested by many: deraadt, sthen, krw, ray, and in snapshots
|
|
|
|
| |
ok deraadt matthew millert
|
|
|
|
|
|
|
|
| |
max-baud-rate hint. Adjust TTYHOG (the nearly full logic) to this new
situation. The larger buffers are required by the very high speed
KDDI devices in Japan (CF com, or USB ucom) so those are the only two
drivers which currently ask for a larger buffer size.
ok yasuoka miod
|
|
|
|
| |
a process instead of using curproc. ok deraadt
|
|
|
|
| |
from Dawe.
|
|
|
|
|
|
|
|
|
|
| |
supported it doesn't do any harm), so put the KNOTE() in selwakeup() itself and
remove it from any occurences where both are used, except one for kqueue itself
and one in sys_pipe.c (where the selwakeup is under a PIPE_SEL flag).
Based on a diff from tedu.
ok deraadt
|
|
|
|
|
|
| |
after the master side of the pty has finished reading) and in ttyflush().
ok tedu millert
|
|
|
|
|
| |
they are signed int)
ok miod guenther
|
|
|
|
|
|
|
|
| |
Change to void function.
Also, no need to have global tty stats pointer, so just return it
from clalloc, as the caller frees it immediately anyway.
ok miod@
|
|
|
|
|
|
|
|
|
| |
write buffer, not the amount of space used. It is debatable wether the
size of the write buffer is set by the size of the buffer or the high water
mark. For now, go with the former since that seems to be more consistent
with what the pipe and socet code does. It is also what NetBSD does.
ok deraadt@
|
|
|
|
| |
into a potentially sleeping function... ok tedu.
|
| |
|
|
|
|
|
| |
fixing (status) ^T support on some ttys without carrier
ok pyr
|
|
|
|
|
| |
developers. if you notice tty weirdnesses in the next few months, talk to
me
|