Ruslan Ermilov
27220696ca
Make this compile under cs_CZ.ISO8859-2 locale.
...
Reported by: Pav Lucistnik <pav@oook.cz>
We hit this problem earlier, in PR misc/45460.
2003-04-18 13:01:07 +00:00
Poul-Henning Kamp
11589318f3
KASSERT that NG_MKMESSAGE() is not called with mbuf flags.
2003-04-18 12:37:33 +00:00
Daniel Eischen
078d4c1b8b
Remove duplicate $FreeBSD$ id.
2003-04-18 07:45:03 +00:00
Daniel Eischen
e4c2ac1637
Sorry folks; I accidentally committed a patch from what I was working
...
on a couple of days ago. This should be the most recent changes.
Noticed by: davidxu
2003-04-18 07:09:43 +00:00
Jeff Roberson
7cd650a972
- Set the ke_cpu field in sched_add() for interrupt and realtime threads
...
since they are going on the current cpu and not their previously assigned
cpu.
- sched_runnable() should only return true in the SMP case if the other
processor has more than one thread that is runnable. We can not steal
curthread.
- Change kseq_print() to accept the cpuid instead of a kseq pointer. This
makes use of this function in ddb much easier.
2003-04-18 05:24:10 +00:00
Daniel Eischen
0174b69f92
Comment out the addition of -g to CFLAGS. This snuck in from
...
my local version.
2003-04-18 05:06:56 +00:00
Daniel Eischen
a0240e2cb0
Revamp libpthread so that it has a chance of working in an SMP
...
environment. This includes support for multiple KSEs and KSEGs.
The ability to create more than 1 KSE via pthread_setconcurrency()
is in the works as well as support for PTHREAD_SCOPE_SYSTEM threads.
Those should come shortly.
There are still some known issues which davidxu and I are working
on, but it'll make it easier for us by committing what we have.
This library now passes all of the ACE tests that libc_r passes
with the exception of one. It also seems to work OK with KDE
including konqueror, kwrite, etc. I haven't been able to get
mozilla to run due to lack of java plugin, so I'd be interested
to see how it works with that.
Reviewed by: davidxu
2003-04-18 05:04:16 +00:00
Daniel Eischen
b025fc9a31
Add FIFO queueing locking operations based on atomic swap.
...
Modify thread errno for the new libpthread changes.
Reviewed by: davidxu
2003-04-18 05:02:39 +00:00
Daniel Eischen
27f625a036
Add architecture dependent atomic ops (atomic_swap only), KSE specific
...
data, and userland versions of [gs]etcontext().
Modify the UTS entry and exit functions to account of FPU validity
and format.
2003-04-18 05:00:52 +00:00
David E. O'Brien
b18e94c0ba
Vendor import revision 1.51 of 8010.h (we renamed the file) from
...
http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/emu10k1/emu10k1/8010.h .
This includes some Audigy support.
2003-04-18 04:17:08 +00:00
David E. O'Brien
aca6bb0d8c
Sync with Creative's 8010.h rev 1.39.
2003-04-18 04:13:38 +00:00
David E. O'Brien
11e9b2d70a
Vendor import revision 1.39 of 8010.h (we renamed the file) from
...
http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/emu10k1/emu10k1/8010.h .
Rev 1.39 best matches our rev 1.3.
2003-04-18 03:57:22 +00:00
Peter Grehan
1fea81e0da
Remove reference to ata resource in print_child.
2003-04-18 02:47:12 +00:00
Peter Grehan
accf6b7248
Remove sparse address hack.
2003-04-18 02:46:12 +00:00
Peter Grehan
da5dcc52fc
Vastly simplify the macio ATA attachment, now that the register file
...
indirection is handled in the ATA common code.
2003-04-18 02:43:23 +00:00
Peter Grehan
5f9dfe1e17
Remove sparse addressing hack. The macio ATA driver no longer requires
...
this.
2003-04-18 02:42:27 +00:00
Peter Grehan
1e1e003218
- Convert NetBSD-derived macros to inline functions for better
...
type-checking and future debug code.
- Remove sparse addressing hack, since the only consumer, the macio ATA
driver, doesn't require it anymore.
2003-04-18 02:38:10 +00:00
John W. De Boskey
9327e08b68
continuation not needed
2003-04-18 02:30:40 +00:00
Gregory Neil Shapiro
3e59cfb104
The sendmail binary now has a reasonable default for MaxMimeHeaderLength
...
built in. No need to set it here.
MFC after: 1 week
2003-04-18 01:25:41 +00:00
Jacques Vidrine
1b467db206
The default if nsswitch.conf(5) is not present is supposed to be the
...
hated `compat' source, not `files'.
Reported by: Philip Paeps <philip@paeps.cx>
Sponsored by: DARPA, Network Associates Laboratories
2003-04-18 01:00:37 +00:00
Julian Elischer
d3a0bd78a8
Add a thread_unlink() and use it.
...
It could also be used twice in kern_thr.c but that's owned by jeff
so I'l let him change it when he's next there.
2003-04-18 00:16:13 +00:00
Bruce Evans
87d88cec87
Fixed an err() format error in rev.1.1. This should have been fatal
...
since WARNS was high in rev.1.1, but __printf0like() has been temporarily
disabled for 9 months.
2003-04-17 22:39:32 +00:00
John Baldwin
69297bf8c9
suser() does not need the proc lock, just the setting of P_PROTECTED in
...
p_flag needs the lock.
2003-04-17 22:38:27 +00:00
John Baldwin
cd4ed3b5b0
- kthread's don't have p_textvp set to anything, so replace code that
...
dealt with that possibility with a KASSERT().
- No need to set P_SYSTEM, kthread_create() does that for us.
2003-04-17 22:37:48 +00:00
John Baldwin
213b19e9fb
- Use a local struct proc variable to improve readability.
...
- Use a local variable to close a minor race when determining if the wmesg
printed out needs a prefix such as when a thread is blocked on a lock.
2003-04-17 22:36:40 +00:00
John Baldwin
f5d5cb3c7c
Tweak locking in the PS_XCPU handler to hold the sched_lock while reading
...
p_runtime.
2003-04-17 22:33:04 +00:00
John Baldwin
b68e08498f
The sched_lock is not needed while clearing two of the P_STOPPED bits in
...
p_flag. Also, the proc lock can't be recursed, so simplify an older proc
lock assertion.
2003-04-17 22:31:54 +00:00
John Baldwin
b5a2bad175
Don't assume that p_session hasn't changed out from under us after unlocking
...
the process and session. Instead, cache a true reference to the session
when we do the hold and release our reference on that session. This avoids
the need for the proc lock when dropping the reference.
2003-04-17 22:30:43 +00:00
John Baldwin
f385f7156a
Lock the sched_lock while setting TDF_INPANIC.
2003-04-17 22:29:23 +00:00
John Baldwin
27dad03c97
Use TD_IS_RUNNING() instead of thread_running() in the adaptive mutex
...
code.
2003-04-17 22:28:58 +00:00
John Baldwin
0bfc4d1445
fork1() already sets PS_INMEM, so don't set it again. This lets us push
...
sched_lock down slightly so that it isn't needed in the RFSTOPPED case.
2003-04-17 22:28:28 +00:00
John Baldwin
69c4ee54ff
- The prison mutex cannot possibly protect pointers to the prison it
...
protects, so don't bother locking it while we assign it to a ucred's
cr_prison.
- Fully construct the new credential for a process before assigning it to
p_ucred.
2003-04-17 22:26:53 +00:00
John Baldwin
e674d80790
Add some locking in for a few proc and thread fields.
2003-04-17 22:25:35 +00:00
John Baldwin
bb0e8070fd
- Push Giant down into the fork1() function a small bit.
...
- Set p_acflag earlier while already hold the proc lock in fork1().
- Mark the realitexpire() callout MPSAFE for new processes. It was already
marked safe for proc0 a long while ago.
2003-04-17 22:24:59 +00:00
John Baldwin
462f31bff0
Adjust a few comments.
2003-04-17 22:22:47 +00:00
John Baldwin
94df4b8584
Protect td_sigmask with the proc lock.
2003-04-17 22:21:57 +00:00
John Baldwin
538621734a
Test the P_WEXIT flag while already hold the proc lock instead of right
...
after dropping it.
2003-04-17 22:21:05 +00:00
John Baldwin
7e653dbd3b
Hold the proc lock across a wider range of fields that it protects.
2003-04-17 22:20:30 +00:00
John Baldwin
aff1d36ceb
Add some missing proc mutex unlocks.
2003-04-17 22:19:47 +00:00
John Baldwin
e5567180fb
Don't drop the proc lock just to reacquire it after a few simple assignment
...
statements. Just hold the lock the entire time.
2003-04-17 22:18:07 +00:00
John Baldwin
8365f5bf7c
Remove a couple of unused symbols.
2003-04-17 22:17:28 +00:00
John Baldwin
f36403612a
- Use a local variable to close a minor race when determining if the wmesg
...
printed out needs a prefix such as when a thread is blocked on a lock.
- Use another local variable to close another race for the td_wmesg and
td_wchan members of struct thread.
2003-04-17 22:16:58 +00:00
John Baldwin
ab0eee5563
Protect p_flag with the proc lock. The sched_lock is not needed to turn
...
off P_STOPPED_SIG in p_flag.
2003-04-17 22:14:30 +00:00
John Baldwin
c2247848dc
- P_SHOULDSTOP just needs proc lock now, so don't acquire sched_lock unless
...
it is needed.
- Add a proc lock assertion.
2003-04-17 22:13:46 +00:00
John Baldwin
c110b8e65e
Add a proc lock assertion and move another assertion up to the top of the
...
function.
2003-04-17 22:12:12 +00:00
John Baldwin
4cac73c759
The proc lock is sufficient to test p_state against PRS_ZOMBIE, so don't
...
needlessly lock sched_lock.
2003-04-17 22:09:08 +00:00
John Baldwin
9d8643eca6
Don't hold the proc lock while performing sigset conversions on local
...
variables.
2003-04-17 22:07:56 +00:00
John Baldwin
5edadff94d
- Remove garbage SIGSETOR() that snuck into struct sigpending_args
...
definition.
- Use the proper constant for the last arg to kern_sigaction() in osigvec()
instead of a magic value.
2003-04-17 22:06:43 +00:00
John Baldwin
8804bf6b03
Use local struct proc variables to reduce repeated td->td_proc dereferences
...
and improve readability.
2003-04-17 22:02:47 +00:00
John Baldwin
9520fc2bed
Adjust a KTR trace to log thread state instead of proc state as that is
...
more relevant.
2003-04-17 22:01:01 +00:00