Commit Graph

71136 Commits

Author SHA1 Message Date
David E. O'Brien
a22d6431b2 Remove all the custom toolchain knob tweaking.
We are now using a native binutils, and you have to have CC=gcc in your
/etc/make.conf to compile userland anyway.
2002-03-15 08:21:41 +00:00
Alfred Perlstein
628abf6c69 Giant pushdown for read/write/pread/pwrite syscalls.
kern/kern_descrip.c:
Aquire Giant in fdrop_locked when file refcount hits zero, this removes
the requirement for the caller to own Giant for the most part.

kern/kern_ktrace.c:
Aquire Giant in ktrgenio, simplifies locking in upper read/write syscalls.

kern/vfs_bio.c:
Aquire Giant in bwillwrite if needed.

kern/sys_generic.c
Giant pushdown, remove Giant for:
   read, pread, write and pwrite.
readv and writev aren't done yet because of the possible malloc calls
for iov to uio processing.

kern/sys_socket.c
Grab giant in the socket fo_read/write functions.

kern/vfs_vnops.c
Grab giant in the vnode fo_read/write functions.
2002-03-15 08:03:46 +00:00
David E. O'Brien
67253d7329 Minor style nit. 2002-03-15 07:45:42 +00:00
David E. O'Brien
26830c9316 Update for binutils_2_12_anoncvs_20020221. 2002-03-15 07:45:18 +00:00
David E. O'Brien
1f85384086 Uggg!! LD ME HARDER!!
Rev 1.2 changed the default emulation from ``elf64_sparc'' to ``elf32_sparc''
and I never noticed it after my review of rev 1.1.  Backing the change of
the default emulation out, and Wa-la!, I can now build a native [and usable]
binutils.  WTF, the "-m elf64_sparc" parameter handed to `ld' by `gcc'
wasn't DTRT is beyond me.
2002-03-15 07:42:47 +00:00
Alfred Perlstein
3b018f572d Bug fixes:
Missed a place where the pipe sleep lock was needed in order to safely grab
Giant, fix it and add an assertion to make sure this doesn't happen again.

Fix typos in the PIPE_GET_GIANT/PIPE_DROP_GIANT that could cause the
wrong mutex to get passed to PIPE_LOCK/PIPE_UNLOCK.

Fix a location where the wrong pipe was being passed to
PIPE_GET_GIANT/PIPE_DROP_GIANT.
2002-03-15 07:18:09 +00:00
Luigi Rizzo
902e5bd188 Add comments to ME README.BOOTP README.TEMPLATING mentioning that
they contain stale information.
Remove files referring to the old diskless setup to avoid confusion.
2002-03-15 06:47:38 +00:00
Warner Losh
21677473c6 Revert most of the recent PCI merge. This has proven to be too
unstable for the coming DP1 release.  Instead, I'll develop that on
the IMP_CB_MERGE branch until it is more stable.
2002-03-15 06:41:01 +00:00
David E. O'Brien
f0c8652ed4 Quiet a warning on the Alpha. 2002-03-15 04:06:10 +00:00
Archie Cobbs
931c828ac5 Fix bugs where the ng_ppp node could transmit PPP frames whose length
exceeded the peer's configured MRU or MRRU.

MFC after:	1 week
2002-03-15 02:31:14 +00:00
Dag-Erling Smørgrav
f03a4b810a NAI DBA update. 2002-03-14 23:27:59 +00:00
Robert Watson
b45deeb2a5 NAI DBA update. 2002-03-14 21:58:58 +00:00
Bruce A. Mah
7ffada3048 Whitespace only change to reduce diffs to RELENG_4 version of this
file.
2002-03-14 21:52:01 +00:00
Robert Watson
7774db9751 NAI DBA update. 2002-03-14 21:51:00 +00:00
Søren Schmidt
733c2fbdd3 Unbreak the probing of some CDROM drives. 2002-03-14 21:35:55 +00:00
Doug Ambrisko
4359c3e645 Only allow super user to perform the Linux compatible ioctls since some
of the things they do, shouldn't be done by normal users.

MFC after:	2 days
2002-03-14 20:56:41 +00:00
Dag-Erling Smørgrav
5bfbfe394b This commit was generated by cvs2svn to compensate for changes in r92289,
which included commits to RCS files with non-trunk default branches.
2002-03-14 20:42:07 +00:00
Dag-Erling Smørgrav
856bb440c7 Vendor import of OpenPAM Centaury. 2002-03-14 20:42:07 +00:00
Robert Watson
cd7aba4057 NAI DBA update. 2002-03-14 20:08:51 +00:00
Doug Rabson
0f638cfaeb Tweak the AP startup code somewhat. With all the other recent changes,
this now works pretty well for two processors at least.

Submitted by: marcel, mostly.
2002-03-14 19:37:36 +00:00
Doug Rabson
34da0be411 * Initialise pcb_pmap for new threads.
* Add support for forking new threads from &thread0 as well as curthread.
2002-03-14 19:34:50 +00:00
Doug Rabson
92e814dcb6 * Save and restore PCPU_GET(current_pmap) in pcb_pmap so that we don't
lose if a process is preempted while pmap is temporarily switched to
  another pmap.
* For SMP, drop the high-fp state when a thread is switched away from
  so that if another cpu resumes that thread, it doesn't have to play
  games with IPI to get ahold of the correct register values.
2002-03-14 19:33:03 +00:00
David E. O'Brien
1719980ed9 This commit was generated by cvs2svn to compensate for changes in r92282,
which included commits to RCS files with non-trunk default branches.
2002-03-14 19:25:32 +00:00
David E. O'Brien
4ac46041bb Import of LukeM's ftpd version 1.2 Beta 1. 2002-03-14 19:25:32 +00:00
Doug Rabson
48f7cc3fed Add pcpu.pc_current_pmap and pcb.pcb_pmap. 2002-03-14 19:20:24 +00:00
Doug Rabson
a9521dec8b Add a field to hold the current pmap of a thread. 2002-03-14 19:19:49 +00:00
Jens Schweikhardt
ac20ab0d2d Grammar bogon: s/structure a route/structure of a route/
MFC after:	3 days
2002-03-14 18:43:09 +00:00
Jens Schweikhardt
50dc00f1a2 Typo; s/lister/listener/
MFC after:	3 days
2002-03-14 18:34:46 +00:00
Udo Erdelhoff
c8ddc6240c FreeBSD/sparc64 installation documentation, German version 2002-03-14 18:32:27 +00:00
Robert Watson
16aae019a0 NAI DBA update 2002-03-14 16:53:39 +00:00
Mark Murray
8c3ea588df Remove the use of random(3), and encapsulate the salt-generation in
its own function. The use of arc4random(3) is hopeless overkill here,
but that does not hurt anything.

Requested by:	ache
2002-03-14 16:41:36 +00:00
Maxim Konovalov
7d0babda6d Teach REST how to restart a file transfer after 2^31 bytes: now yylex()
returns off_t in yylval.u.o. REST is the only user of yylval.u.o at the
moment.

NB: seems lukemftpd has the same bug.

PR:		misc/28629
Reviewed by:	ru
Approved by:	ru
MFC after:	1 month
2002-03-14 16:05:06 +00:00
Doug Rabson
17ea508863 Add ia64_sync_i(), ia64_get_tpr() and ia64_set_tpr(). 2002-03-14 12:29:55 +00:00
Maxim Konovalov
e9fc9230a6 Be consistent with UFS in a way how devfs_setattr() checks credentials
for chmod(2), chown(2) and utimes(2) with respect to jail(2).

Reviewed by:		rwatson, ru
Not objected by:	phk
Approved by:		ru
2002-03-14 11:18:42 +00:00
Maxim Konovalov
999ad26edb Clarify fcntl(2) and flock(2) interoperability.
PR:		docs/23353
Reviewed by:	ru, dillon
Approved by:	ru
MFC after:	3 days
2002-03-14 11:02:35 +00:00
Doug Rabson
0323b941f0 * Add some KTR messages for IPIs.
* Don't call ast() from interrupt() - if we switch, then we will miss
  writing cr.eoi which will prevent the current cpu from receiving
  interrupts until the current thread is resumed. The call to ast()
  happens magically in exception_restore where it is safe.
* Add DDB 'show irq' command to examine interrupt hardware state.
2002-03-14 10:24:00 +00:00
Doug Rabson
838ba419e9 Add debug code to print SAPIC registers. 2002-03-14 10:17:08 +00:00
Bill Fumerola
78d9ac5774 minor grammar fixes 2002-03-14 10:09:19 +00:00
Murray Stokely
b82e53e2bd Add an ENVIRONMENT section, and document TARGET_ARCH and NO_WERROR.
Add a cross-build example.
2002-03-14 09:38:24 +00:00
Doug Rabson
2750f739f9 * Use a mutex to protect the RID allocator.
* Use ptc.g instead of ptc.l so that TLB shootdowns are broadcast to the
  coherence domain.
* Use smp_rendezvous for pmap_invalidate_all to ensure it happens on all
  cpus.
* Dike out a DIAGNOSTIC printf which didn't compile.
* Protect the internals of pmap_install with cpu_critical_enter/exit.
2002-03-14 09:28:05 +00:00
Doug Rabson
26c01501cd Move the call to pmap_bootstrap to after the initialisation of thread0.
This allows us to use mutexes in pmap safely. Also initialise fpcurthread
for cpu0 so that ia64_fpstate_check doesn't barf during boot.
2002-03-14 09:20:07 +00:00
Alfred Perlstein
b0a3bfbdc6 Missed this file for select SMP fixes associated with rev 1.93 of
kern/sys_generic.c
2002-03-14 05:16:18 +00:00
Alfred Perlstein
d16160657d Missed this file for select SMP fixes associated with rev 1.93 of
kern/sys_generic.c
2002-03-14 04:47:08 +00:00
Murray Stokely
afb3369031 Various mdoc fixes.
Submitted by:	ru
2002-03-14 04:21:50 +00:00
David E. O'Brien
b0627fcc77 Tune WARNS for Alpha. 2002-03-14 02:24:25 +00:00
Brian Feldman
9cb574590e Document faultstate.lookup_still_valid more than none.
Requested by:	alfred
2002-03-14 02:10:14 +00:00
Bruce A. Mah
355842bbfe Activate the sparc64 installation document. 2002-03-14 01:47:56 +00:00
Bruce A. Mah
51bd1150a5 Whitespace, no content or markup changes. 2002-03-14 01:40:47 +00:00
Bruce A. Mah
d9e8b42c20 s/Sparc/SPARC/ 2002-03-14 01:34:26 +00:00
Alfred Perlstein
85f190e4d1 Fixes to make select/poll mpsafe.
Problem:
  selwakeup required calling pfind which would cause lock order
  reversals with the allproc_lock and the per-process filedesc lock.
Solution:
  Instead of recording the pid of the select()'ing process into the
  selinfo structure, actually record a pointer to the thread.  To
  avoid dereferencing a bad address all the selinfo structures that
  are in use by a thread are kept in a list hung off the thread
  (protected by sellock).  When a selwakeup occurs the selinfo is
  removed from that threads list, it is also removed on the way out
  of select or poll where the thread will traverse its list removing
  all the selinfos from its own list.

Problem:
  Previously the PROC_LOCK was used to provide the mutual exclusion
  needed to ensure proper locking, this couldn't work because there
  was a single condvar used for select and poll and condvars can
  only be used with a single mutex.
Solution:
  Introduce a global mutex 'sellock' which is used to provide mutual
  exclusion when recording events to wait on as well as performing
  notification when an event occurs.

Interesting note:
  schedlock is required to manipulate the per-thread TDF_SELECT
  flag, however if given its own field it would not need schedlock,
  also because TDF_SELECT is only manipulated under sellock one
  doesn't actually use schedlock for syncronization, only to protect
  against corruption.

Proc locks are no longer used in select/poll.

Portions contributed by: davidc
2002-03-14 01:32:30 +00:00