Commit Graph

29456 Commits

Author SHA1 Message Date
sheldonh
91f6473b2c Bump __FreeBSD_version for userland smbfs import. 2001-12-14 12:41:56 +00:00
rwatson
949b1b8712 o Clarify the comments on AIO to note that yes, AIO really is unsuitable
for use on machines with untrusted local users, for security as well
  as stability reasons.
o Lack of clarity pointed out by: David Rufino <dr@soniq.net> via bugtraq.
2001-12-14 11:21:16 +00:00
mckusick
a120c6ba29 Add disk I/O scheduling for positively niced processes.
When a positively niced process requests a disk I/O, make
it wait for its nice value of ticks before scheduling its
I/O request if there are any other processes with I/O
requests in the disk queue. For all the gory details, see
the ``Running fsck in the Background'' paper in the Usenix
BSDCon 2002 Conference Proceedings, pages 55-64.
2001-12-14 10:49:15 +00:00
peter
dd0f3c5ca2 Proper fix for old config setting maxusers to 8. 2001-12-14 09:39:29 +00:00
ru
d216345eb6 mdoc(7) police: remove hard sentence break which I didn't
submit to Jonathan Mini.
2001-12-14 09:06:11 +00:00
dillon
8e6d2fbcbd A slightly different version of the vlrureclaim fix.
Reported by: peter, ps
2001-12-14 07:18:31 +00:00
luigi
bf2556cfad Remove printf's on mbuf/cluster allocation failures. There are now
equivalent and less dangerous (rate limited) messages in
the mbuf allocation code.

MFC after: 3 days
2001-12-14 05:56:35 +00:00
mckusick
d3b383005d Add disk I/O scheduling for positively niced processes.
When a positively niced process requests a disk I/O, make
it wait for its nice value of ticks before scheduling its
I/O request if there are any other processes with I/O
requests in the disk queue. For all the gory details, see
the ``Running fsck in the Background'' paper in the Usenix
BSDCon 2002 Conference Proceedings, pages 55-64.
2001-12-14 05:50:44 +00:00
dg
2ab37ca0c5 Moved the updating of if_ibytes from ether_demux() to ether_input() to fix
a bug where the interface input bytes count wasn't updated when bridging
is enabled.

MFC after:	3 days
2001-12-14 04:41:07 +00:00
dillon
62f062ea62 Too many people are compiling kernels with maxusers set to 0 without the new
config.  Hack the kernel to force auto-sizing if the old config is used.
2001-12-14 04:01:08 +00:00
dillon
cd4d323ad3 This fixes a large number of bugs in our NFS client side code. A recent
commit by Kirk also fixed a softupdates bug that could easily be triggered
by server side NFS.

	* An edge case with shared R+W mmap()'s and truncate whereby
	  the system would inappropriately clear the dirty bits on
	  still-dirty data.  (applicable to all filesystems)

	  THIS FIX TEMPORARILY DISABLED PENDING FURTHER TESTING.
	  see vm/vm_page.c line 1641

	* The straddle case for VM pages and buffer cache buffers when
	  truncating.  (applicable to NFS client side)

	* Possible SMP database corruption due to vm_pager_unmap_page()
	  not clearing the TLB for the other cpu's.  (applicable to NFS
	  client side but could effect all filesystems).  Note: not
	  considered serious since the corruption occurs beyond the file
	  EOF.

	* When flusing a dirty buffer due to B_CACHE getting cleared,
	  we were accidently setting B_CACHE again (that is, bwrite() sets
	  B_CACHE), when we really want it to stay clear after the write
	  is complete.  This resulted in a corrupt buffer.  (applicable
	  to all filesystems but probably only triggered by NFS)

	* We have to call vtruncbuf() when ftruncate()ing to remove
	  any buffer cache buffers.  This is still tentitive, I may
	  be able to remove it due to the second bug fix.  (applicable
	  to NFS client side)

	* vnode_pager_setsize() race against nfs_vinvalbuf()... we have
	  to set n_size before calling nfs_vinvalbuf or the NFS code
	  may recursively vnode_pager_setsize() to the original value
	  before the truncate.  This is what was causing the user mmap
	  bus faults in the nfs tester program.  (applicable to NFS
	  client side)

	* Fix to softupdates (see ufs/ffs/ffs_inode.c 1.73, commit made
	  by Kirk).

Testing program written by: Avadis Tevanian, Jr.
Testing program supplied by: jkh / Apple (see Dec2001 posting to freebsd-hackers with Subject 'NFS: How to make FreeBS fall on its face in one easy step')
MFC after:	1 week
2001-12-14 01:16:57 +00:00
dillon
a6be0b0189 Add maxusers auto-sizing description to NOTES file for -current 2001-12-14 01:01:20 +00:00
rwatson
9e2b770a8f o Wording fix in comment.
Submitted by:	tanimura via p4
2001-12-14 00:38:01 +00:00
mckusick
735db38be3 Minimize the time necessary to suspend operations on a filesystem
when taking a snapshot. The two time consuming operations are
scanning all the filesystem bitmaps to determine which blocks
are in use and scanning all the other snapshots so as to be able
to expunge their blocks from the view of the current snapshot.
The bitmap scanning is broken into two passes. Before suspending
the filesystem all bitmaps are scanned. After the suspension,
those bitmaps that changed after being scanned the first time
are rescanned. Typically there are few bitmaps that need to be
rescanned. The expunging of other snapshots is now done after
the suspension is released by observing that we can easily
identify any blocks that were allocated to them after the
suspension (they will be maked as `not needing to be copied'
in the just created snapshot). For all the gory details, see
the ``Running fsck in the Background'' paper in the Usenix
BSDCon 2002 Conference Proceedings, pages 55-64.
2001-12-14 00:15:06 +00:00
obrien
8f8357505c Convert C++ style comments to proper C ones.
Clean up C comments just a tad.
Fix ID's.
2001-12-13 23:48:34 +00:00
peter
a194c44001 If we were called to allocate a vnode that is not associated with a
mount point, do not dereference the NULL mp argument.
2001-12-13 23:46:01 +00:00
green
91e55e40ce Remove stale prototype for sonewconn3(). 2001-12-13 22:16:54 +00:00
rwatson
36784fd2c4 o Back out portions of 1.50 and 1.47, eliminating sonewconn3() and
always deriving the credential for a newly accepted connection from
  the listen socket.  Previously, the selection of the credential
  depended on the protocol: UNIX domain sockets would use the
  connecting process's credential, and protocols supporting a creation
  of the socket before the receiving end called accept() would use
  the listening socket.  After this change, it is always the listening
  credential.

Reviewed by:	green
2001-12-13 22:09:37 +00:00
silby
dc4fed395a Limit maxprocperuid to 9/10 maxproc, and limit maxfilesperproc to 9/10
maxfiles.  This should make local resource exhaustion attacks easier
to handle with a non-tweaked setup.

MFC after:	3 days
2001-12-13 20:00:45 +00:00
jhb
c56ea0b56a Use C comments instead of C++ comments.
Reported by:	gcc30
2001-12-13 19:54:12 +00:00
jlemon
9c2ee55c75 Tone down and remove some obnoxious warnings that are slightly overkill. 2001-12-13 16:13:31 +00:00
sheldonh
0cfa55aca8 Add module dependency on libmchain.
With this change, mounting an smb share (using mount_smb, which is not
yet included in the tree) without any of smbfs, libiconv or libmchain
compiled into the kernel or loaded works.
2001-12-13 13:08:34 +00:00
jhb
7cfed6a8b7 Use ANSI C string contatenation instead of a multi-line string literal.
Reported by:	gcc30
2001-12-13 11:14:28 +00:00
jhb
550cf26594 Comment tokens after #undef <macroname> and #endif.
Reported by:	gcc30
2001-12-13 11:12:30 +00:00
jhb
66ac46bd15 Use a per-thread variable for keeping state when a thread is processing
a KTR log entry.  Any KTR requests made while working on an entry are
ignored/discarded to prevent recursion.  This is a better fix for the
hack to futz with the CPU mask and call getnanotime() if KTR_LOCK or
KTR_WITNESS was on.  It also covers the actual formatting of the log entry
including dumping it to the display which the earlier hacks did not.
2001-12-13 10:33:20 +00:00
mckusick
d375501d04 When a file is partially truncated, we first check to see if the
new file end will land in the middle of a file hole. Since the last
block of a file must always be allocated, the hole is filled by
allocating a block at that location. If the hole being filled is
a direct block, then the truncation may eventually reduce the
full sized block down to a fragment. When running with soft
updates, it is necessary to FSYNC the file after allocating the
block and before creating the fragment to avoid triggering a
soft updates inconsistency when the block unexpectedly shrinks.

Found by:	Matthew Dillon <dillon@apollo.backplane.com>
MFC after:	1 week
2001-12-13 05:07:48 +00:00
jlemon
3c2732d720 Undo one of my last minute changes; move sc_iss up earlier so it
is initialized in case we take the T/TCP path.
2001-12-13 04:05:26 +00:00
jlemon
776e8594bd Fix up tabs from cut&n&paste. 2001-12-13 04:02:31 +00:00
jlemon
ec4b51f883 Fix up tabs in comments. 2001-12-13 04:02:09 +00:00
jlemon
37e5dc6ec1 Minor style fixes. 2001-12-13 04:01:23 +00:00
jlemon
f3ff850b00 Minor style fix. 2001-12-13 04:01:01 +00:00
mjacob
c0159cc50e Roll firmware to latest offerings... Fixes a number of f/w related
bugs.

MFC after:	1 week
2001-12-13 00:09:06 +00:00
imp
e231bcb189 Sync to pccarddevs 1.25 2001-12-12 20:06:29 +00:00
imp
e2b68f4e4f Move LINKSYS2 to its correct numerical location.
Add BONDWELL B236 Game Card Joystick.  A PC Card joystick card.
2001-12-12 20:05:48 +00:00
sobomax
b850c99165 Add DIVA USB mp3 player.
Submitted by:	Olexander Kunytsa <kunia@x-telecom.net>
MFC after:	3 days
2001-12-12 15:58:23 +00:00
nyan
a59db7704d MFi386: revision 1.35 (Add support for writing to BIOS disks) 2001-12-12 13:47:04 +00:00
nyan
be7a644187 MFi386: revision 1.485 (the previous commit is not completely) 2001-12-12 12:27:59 +00:00
sheldonh
e351feb646 Connect libiconv to the build.
Recent work by fjoe and bp has fixed smbfs.  The smbfs module
can now be loaded once libiconv and libmchain have been loaded,
and works!
2001-12-12 10:11:16 +00:00
alfred
7ae2ddd405 Fix select on named pipes without a reader.
PR: kern/19871
MFC after: 1 month
2001-12-12 09:35:33 +00:00
jhb
6394a9f716 Axe an unneeded PCPU_SET(spinlocks, NULL) that I missed earlier. 2001-12-12 08:07:41 +00:00
arr
e55fee2143 - Move _jail sysctl node underneath _kern_security in order to standardize
where our security related sysctl tuneables are located.  Also, this
  will help if/when we move _security node out from under _kern as to help
  make _kern less cluttered.

Approved by:	rwatson
Review by:	rwatson
2001-12-12 05:23:20 +00:00
jhb
21b6b26912 Overhaul the per-CPU support a bit:
- The MI portions of struct globaldata have been consolidated into a MI
  struct pcpu.  The MD per-CPU data are specified via a macro defined in
  machine/pcpu.h.  A macro was chosen over a struct mdpcpu so that the
  interface would be cleaner (PCPU_GET(my_md_field) vs.
  PCPU_GET(md.md_my_md_field)).
- All references to globaldata are changed to pcpu instead.  In a UP kernel,
  this data was stored as global variables which is where the original name
  came from.  In an SMP world this data is per-CPU and ideally private to each
  CPU outside of the context of debuggers.  This also included combining
  machine/globaldata.h and machine/globals.h into machine/pcpu.h.
- The pointer to the thread using the FPU on i386 was renamed from
  npxthread to fpcurthread to be identical with other architectures.
- Make the show pcpu ddb command MI with a MD callout to display MD
  fields.
- The globaldata_register() function was renamed to pcpu_init() and now
  init's MI fields of a struct pcpu in addition to registering it with
  the internal array and list.
- A pcpu_destroy() function was added to remove a struct pcpu from the
  internal array and list.

Tested on:	alpha, i386
Reviewed by:	peter, jake
2001-12-11 23:33:44 +00:00
mjacob
40e227221b Explicitly decode GetAllNext SNS Response back *as*
a GetAllNext response. Otherwise, we won't unswizzle
it correctly. This was found on linux/PPC.

This mandated creating another inline: isp_get_gan_response.
2001-12-11 21:58:04 +00:00
green
b40c254986 Add VOP_GETEXTATTR(9) passthrough support to pseudofs.
Obtained from:	TrustedBSD Project
Sponsored by:	DARPA, NAI Labs
2001-12-11 20:48:20 +00:00
des
a3fff002fa Remove an obsolete prototype for procfs_kmemaccess().
Submitted by:	rwatson
2001-12-11 19:07:10 +00:00
sheldonh
b7ccf76823 Correct a comment that should have been updated in rev 1.43, when
CIRCLEQ was removed.

PR:		kern/32688
Submitted by:	Jordan DeLong <fracture@allusion.net>
2001-12-11 11:49:58 +00:00
guido
2e77fc4d02 Fix boot -p for DDBless kernels
Pointed out by: John Hay <jhay@icomtek.csir.co.za>
2001-12-11 10:21:26 +00:00
peter
46c0ef263e Wrap Dangerously Dedicated printf under if (bootverbose) 2001-12-11 05:35:43 +00:00
luigi
41dffde8bb Avoid an unnecessary copy of a packet if it is already in a single mbuf.
Introduce an additional device flag for those NICs which require the
transmit buffers to be aligned to 32-bit boundaries.

(the equivalen fix for STABLE is slightly simpler because there are
no supported chips which require this alignment there.)
2001-12-11 02:47:53 +00:00
peter
c7282b9212 Delete some leftover code from a bygone age. We dont have an array of
IdlePTDS anymore and dont to the PTD[MPPTDI] swapping etc.
2001-12-11 01:17:40 +00:00
jhb
8c6afa35be - Add 'fwrite' and 'fseek' words for writing to and seeking on files.
- Change the 'fopen' keyword to accept a mode parameter.  Note that this
  will break existing 4th scripts that use fopen.  Thus, the loader
  version has been bumped and loader.4th has been changed to check for a
  sufficient version on i386 and alpha.  Be sure that you either do a full
  world build or install or full build and install of sys/boot after this
  since loader.old won't work with the new 4th files and vice versa.

PR:		kern/32389
Submitted by:	Jonathan Mini <mini@haikugeek.com>
Sponsored by:	ClickArray, Inc.
2001-12-11 00:49:34 +00:00
mjacob
991ffbae56 Major restructuring for swizzling to the request queue and unswizzling from
the response queue. Instead of the ad hoc ISP_SWIZZLE_REQUEST, we now have
a complete set of inline functions in isp_inline.h. Each platform is
responsible for providing just one of a set of ISP_IOX_{GET,PUT}{8,16,32}
macros.

The reason this needs to be done is that we need to have a single set of
functions that will work correctly on multiple architectures for both little
and big endian machines. It also needs to work correctly in the case that
we have the request or response queues in memory that has to be treated
specially (e.g., have ddi_dma_sync called on it for Solaris after we update
it or before we read from it). It also has to handle the SBus cards (for
platforms that have them) which, while on a Big Endian machine, do *not*
require *most* of the request/response queue entry fields to be swizzled
or unswizzled.

One thing that falls out of this is that we no longer build requests in the
request queue itself. Instead, we build the request locally (e.g., on the
stack) and then as part of the swizzling operation, copy it to the request
queue entry we've allocated. I thought long and hard about whether this was
too expensive a change to make as it in a lot of cases requires an extra
copy. On balance, the flexbility is worth it. With any luck, the entry that
we build locally stays in a processor writeback cache (after all, it's only
64 bytes) so that the cost of actually flushing it to the memory area that is
the shared queue with the PCI device is not all that expensive. We may examine
this again and try to get clever in the future to try and avoid copies.

Another change that falls out of this is that MEMORYBARRIER should be taken
a lot more seriously. The macro ISP_ADD_REQUEST does a MEMORYBARRIER on the
entry being added. But there had been many other places this had been missing.
It's now very important that it be done.

Additional changes:

Fix a longstanding buglet of sorts. When we get an entry via isp_getrqentry,
the iptr value that gets returned is the value we intend to eventually plug
into the ISP registers as the entry *one past* the last one we've written-
*not* the current entry we're updating. All along we've been calling sync
functions on the wrong index value. Argh. The 'fix' here is to rename all
'iptr' variables as 'nxti' to remember that this is the 'next' pointer-
not the current pointer.

Devote a single bit to mboxbsy- and set aside bits for output mbox registers
that we need to pick up- we can have at least one command which does not
have any defined output registers (MBOX_EXECUTE_FIRMWARE).

MFC after:	2 weeks
2001-12-11 00:18:45 +00:00
jhb
356efe3c0b Add support for writing blocks to the loader's disk cache.
PR:		kern/32389
Submitted by:	Jonathan Mini <mini@haikugeek.com>
Sponsored by:	ClickArray, Inc.
2001-12-11 00:10:00 +00:00
jhb
f4789ce28d Add support for writing to BIOS disks.
PR:		kern/32389
Submitted by:	Jonathan Mini <mini@haikugeek.com>
Sponsored by:	ClickArray, Inc.
2001-12-11 00:08:10 +00:00
obrien
41ac252611 Missed an assignment of arg6 in previous commit. 2001-12-10 20:58:39 +00:00
guido
aebaef0c19 Get rid of irritating (bogus) message:
pcm0: ac97 codec failed to reset extended mode (0, got 80)
This was due to not masking off the correct extended function bits
in the read value from the extended status reg.

MFC after:	2 days
2001-12-10 20:27:18 +00:00
obrien
806dd95941 Adjust for the addition of CTR6. 2001-12-10 20:18:17 +00:00
obrien
403e9e766c Complete the CTR6 addition (and TR6 and ITR6...) 2001-12-10 20:09:49 +00:00
guido
d779575f78 Add new boot flag to i386 boot: -p.
This flag adds a pausing utility. When ran with -p, during the kernel
probing phase, the kernel will pause after each line of output.
This pausing can be ended with the '.' key, and is automatically
suspended when entering ddb.

This flag comes in handy at systems without a serial port that either hang
during booting or reser.
Reviewed by:	(partly by jlemon)
MFC after:	1 week
2001-12-10 20:02:22 +00:00
sheldonh
77923eeead Regen from usbdevs rev 1.70: added some AGFA scanners 2001-12-10 11:46:23 +00:00
sheldonh
d28105bffe Add some AGFA scanners:
SnapScan 1236U	SnapScan e20
	SnapScan e25	SnapScan e26
	SnapScan e40	SnapScan e50
	SnapScan e52

PR:	kern/32649
Submitted by:	"Erik H. Bakke" <ebakke@trolltech.com>
2001-12-10 11:40:38 +00:00
obrien
7d96c168ec I missed a string concatenation. 2001-12-10 09:34:47 +00:00
murray
7c576b77fa Add identification string for AMD-761 host to PCI bridge.
PR:	kern/32255
2001-12-10 09:27:00 +00:00
obrien
7fd9a6a23a Update to C99, s/__FUNCTION__/__func__/,
also don't use ANSI string concatenation.
2001-12-10 08:09:49 +00:00
obrien
a3979449a5 Update to C99, s/__FUNCTION__/__func__/. 2001-12-10 05:58:28 +00:00
obrien
330a1032c1 Update to C99, s/__FUNCTION__/__func__/. 2001-12-10 05:51:45 +00:00
obrien
cca4f7b2d9 Repeat after me -- "Use of ANSI string concatenation can be bad."
In this case, C99's __func__ is properly defined as:

	static const char __func__[] = "function-name";

and GCC 3.1 will not allow it to be used in bogus string concatenation.
2001-12-10 05:40:12 +00:00
obrien
626d81cb49 Add a CTR6, we need it now. 2001-12-10 05:38:23 +00:00
alc
a49c1c9183 o Eliminate compilation warnings on 64-bit architectures. 2001-12-10 03:34:06 +00:00
non
eaeb1aadee Remove PAO3 dependent part where I missed to remove at last commit. 2001-12-10 02:07:34 +00:00
iedowse
d9883ffb32 Add a NO_6_BYTE quirk for the D-series olympus digital cameras.
PR:		kern/31250
Submitted by:	Bryan Liesner <bleez@bellatlantic.net>
2001-12-09 21:38:33 +00:00
obrien
5a9c67b398 We need machine/{signal,ucontext}.h to build a cross GCC compiler.
So craft the proper versions of these and commit em.
2001-12-09 19:39:49 +00:00
obrien
da824e5ba2 Following sys/i386/include/ansi.h rev 1.33, add additional integer types
in <machine/ansi.h> and that are required by <sys/stdint.h>.
2001-12-09 19:38:21 +00:00
obrien
e81425551e style(9) 2001-12-09 19:12:07 +00:00
obrien
8e4c84a064 We need machine/types.h to build a cross GCC compiler.
(copied from src/sys/i386/include/types.h rev 1.23, except for the label_t
size, which is '10' everywhere BUT on i386)
2001-12-09 19:11:45 +00:00
obrien
6d39bbaa3c machine/limits.h
(taken from i386/include/limits.h rev 1.19)
2001-12-09 18:30:04 +00:00
iwasaki
7c555201d3 Disable sleep requests for 5 sec after wakeup. This is needed for
some Toshiba and Thinkpad laptops.
Wakeup event is generated by power button or sleep button on some
laptops but this also generates SCI interrupt, and shutdown the system
as result.  So this is introduced so that acpi driver ignore given
requests for certain period.
2001-12-09 18:02:36 +00:00
arr
915c6a9163 - Replace M_WAIT with M_TRYWAIT since the M_WAIT flag is deprecated.
Spotted by: bde
2001-12-09 17:48:08 +00:00
alc
be4cbfd029 o Eliminate unnecessary synchronization from filt_aiodetach().
o The manual page for kevent says that EVFILT_AIO returns under the same
   conditions as aio_error().  With that in mind, set the data field
   of the returned struct kevent to the value that would be returned
   by aio_error().
 o Fix two compilation warnings.
2001-12-09 08:16:36 +00:00
msmith
1c02062f9f The ScanLogic SL11R-IDE claims to be SCSI-compatible, but actually requires
the UFI command set.  Even with this patch, it's incredibly slow on my
laptop, but at least now it works.

Note that the drive is reported to CAM with the vendor and device IDs from
the device itself, forcing the user to patch the da(4) quirk table
manually.
2001-12-09 06:02:46 +00:00
dillon
6fe4980d43 Allow maxusers to be specified as 0 in the kernel config, which will
cause the system to auto-size to between 32 and 512 depending on the
amount of memory.

MFC after:	1 week
2001-12-09 01:57:09 +00:00
des
6dec2d1dfe Pull in more stuff from procfs now that it's been pseudofsized. 2001-12-09 00:38:59 +00:00
des
2a99d8ecba Fix various bugs in the debugging code and reenable it. 2001-12-09 00:35:30 +00:00
des
b2e2ac1d06 Fix an incorrect PFS_TRACE. Also, use __func__ instead of __FUNCTION__. 2001-12-09 00:28:12 +00:00
des
61cf8e0723 p_trespass() has been dead for over a year. 2001-12-08 23:56:37 +00:00
alfred
8b52554b3a Replace %i formatting characters with %d since printf(9) doesn't support %i.
Someone forgot the long flamefest I lost to add %i to kernel printf.
2001-12-08 23:46:38 +00:00
des
21823ec3f8 Fix a KSEfication brain-o in procfs_doprocfile(): return the path of the target process,
not the calling process.  While we're here, also unstaticize procfs_doprocfile() and
procfs_docurproc() so linprocfs can call them directly instead of duplicating them.

Submitted by:	Dominic Mitchell <dom@semantico.com>
2001-12-08 22:34:14 +00:00
dillon
6e9238ff3f The nbuf calculation was assuming that PAGE_SIZE = 4096 bytes, which is
bogus.  The calculation has been adjusted to use units of kilobytes.

Noticed by: Chad David <davidc@acns.ab.ca>
MFC after:	1 week
2001-12-08 20:37:08 +00:00
davidc
1d1054c88d Update the comment about System initialization to reflect the use of
DOMAIN_SET(9) instead of SYSINIT for adding domains at startup.

Reviewed by: alfred
2001-12-08 04:20:54 +00:00
rwatson
03b1add9d3 o Expand list of tunables documented in loader.8 to include kern.maxusers,
since other related tunables were also documented here.  Add a cross
  reference to tuning(7) for information on setting this value
  appropriately.
2001-12-07 18:05:24 +00:00
arr
34eecfd781 - Fix a bunch of malloc calls where the M_FLAG is incorrectly used; it
should be M_WAITOK.

Spotted by: des
2001-12-07 17:59:15 +00:00
rwatson
02fc34fde9 o Our currenty userland boot code (due to rc.conf and rc.network) always
enables TCP keepalives using the net.inet.tcp.always_keepalive by default.
  Synchronize the kernel default with the userland default.
2001-12-07 17:01:28 +00:00
cokane
9aa8f2242a This patch will fix the lockups associated with AMD 751,761,762 based AGP
controllers. There still seems to be some issues with the DRI copying code
for some adapters, at least it doesn't hang the system now. Input would be
appreciated.

PR: 32301
Obtained from:	Eric Anhlot <eanholt@gladstone.uoregon.edu>, Joe <joeo@nks.net>
2001-12-07 05:41:26 +00:00
imp
bacdbb04c9 Back out my "joy" change. It was really the for some uncommitted ata
code I have.
2001-12-07 01:52:40 +00:00
arr
d502ffe4f0 - malloc should be passed M_WAITOK, not M_WAIT (a mbuf flag)
- make use of M_ZERO to remove a call to bzero()
2001-12-07 01:32:40 +00:00
peter
fc9cc438f0 MFS (merge from stable): rev 1.13.4.13, fix ordering of IFF_RUNNING mods.
The reason we are required to commit to -current first is so that later
MFC's do not risk the loss of existing bug fixes.  Even if this was not
strictly required in -current, it should still be fixed there too.
2001-12-07 00:58:37 +00:00
peter
4cfbfee7bf MFS (merge from stable): rev 1.9.2.28, fix ordering of IFF_RUNNING mods.
The reason we are required to commit to -current first is so that later
MFC's do not risk the loss of existing bug fixes.  Even if this was not
strictly required in -current, it should still be fixed there too.
2001-12-07 00:57:57 +00:00
peter
c3af474bd9 Part 2 of previous commit. Add joy_isa.c and joy_pccard.c.
Submitted by:	jhb
2001-12-06 23:10:24 +00:00
rwatson
7769631069 o A few more minor whitespace and other style fixes.
Submitted by:	bde
2001-12-06 21:58:47 +00:00
rwatson
751c41df3a o Remove unnecessary inclusion of opt_global.h.
Submitted by:	bde
2001-12-06 21:55:41 +00:00
jhb
e0b71aa03c Add multiple inclusion protection. 2001-12-06 18:17:02 +00:00
peter
cb64660fb4 Somebody moved joy.c from isa/ to dev/joy/ without updating conf/files.
Pointy-hat to: imp
2001-12-06 18:00:42 +00:00
obrien
6084b5393d Compile all kernels with "-ffreestanding":
Assert that compilation takes place in a freestanding environment. This
	implies `-fno-builtin'. A freestanding environment is one in which the
	standard library may not exist, and program startup may not necessarily be
	at main. The most obvious example is an OS kernel. This is equivalent to
	`-fno-hosted'.
2001-12-06 17:53:32 +00:00
pdeuskar
125cbff878 Fixed two problems:
1. Changed incorrect conditional in fxhw.c which would never
evaluate to true. Thanks to John Polstra for pointing that out.
2. Write to PCI config space by default, enabling memory access and
bus master enable.

Submitted by:Prafulla Deuskar
MFC after:3 days
2001-12-06 17:50:21 +00:00
imp
760ad80101 The pccard/cardbus power interface should depend on having pccard or
cardbus in the kernel, not on all the bridges that implement it.
Note: this is NEWCARD only, so we don't want it for the 'card' case,
unlike card_if.m, which is both NEWCARD and OLDCARD.
2001-12-06 06:40:18 +00:00
rwatson
754ad10054 o Make kern.security.bsd.suser_enabled TUNABLE.
Requested by:	green
2001-12-05 18:49:20 +00:00
ru
3dd3844f57 Fixed remotely exploitable DoS in arpresolve().
Easily exploitable by flood pinging the target
host over an interface with the IFF_NOARP flag
set (all you need to know is the target host's
MAC address).

MFC after:	0 days
2001-12-05 18:13:34 +00:00
rwatson
17ba4e897e o Whitespace sync to GENERIC 2001-12-05 18:08:23 +00:00
guido
bb8f2bd57a Fix initialisation of struct nat entry, to solve a panic that occurs
when reloading a nat table after reboot

Submitted by:	Arjan de Vet <devet@devet.org>
Reviewed by:	IP Filter mailing list
MFC after:	3 days
2001-12-05 10:46:24 +00:00
guido
19c1d909f1 Fix resume for HP Omnibook 500's.
MFC after:	1 week
2001-12-05 10:36:32 +00:00
guido
4133536ce1 Add suspend/resume hooks to this driver; necessary to overcome
problems on HP Omnibook 500.

MFC after:	1 week
2001-12-05 10:34:07 +00:00
jhay
4561eee870 Add VLAN support.
MFC after:	7 days
2001-12-05 09:34:28 +00:00
imp
6304c87af7 Moved to dev/joy 2001-12-05 09:10:47 +00:00
imp
8e21ce3870 Move joy from isa to dev/joy. 2001-12-05 09:10:20 +00:00
imp
1cac84ff00 Use new location for joy, plus list its new bus front ends. 2001-12-05 09:09:48 +00:00
imp
c2b70c9237 Split joystick driver into ISA and PC Card front ends.
Similar code was submitted in PR 5559 by Takeshi OHASHI-san, but the
PC Card system has changed much since then, so this is a fresh
implementation.

PR:	i386/5559
Submitted by: Takeshi OHASHI
2001-12-05 09:08:23 +00:00
imp
245b70f5f2 Implement prism2 detection from NetBSD. This mostly obsoletes the
prism2 flag in pccard.conf, but I'm leaving it place for the moment in
case the small sample of PrismII cards that I've tried is not
representative.

MFC After: 30 days
Obtained from: NetBSD
2001-12-05 08:57:36 +00:00
ume
994ac6118a Newer SA is prefered for a out-bound packet than old one
when net.key.prefered_oldsa is set to zero.

Obtained from:	KAME
MFC after:	1 week
2001-12-05 05:40:49 +00:00
mckusick
f62c954d2f Update pathnames for creation of tags file. 2001-12-05 01:23:21 +00:00
sos
949b72a9f9 Add entries to allow setting the CD type on cue sheets 2001-12-04 21:40:41 +00:00
sos
4052a320bb Allow setting the CD type on cue sheets 2001-12-04 21:39:34 +00:00
iedowse
e16d92f4df When VOP_SYMLINK fails, the value of *vpp is junk, so we must NULL
out nd.ni_vp to prevent the resource cleanup code at the end of
nfsrv_symlink from trying to vrele it. This fixes a "vrele: negative
ref cnt" panic that can occur when a symlink is attempted on an NFS
filesystem with no free space. Found locally, but the symptoms
correspond to those in the PR referenced below.

PR:		kern/26878
MFC after:	3 days
2001-12-04 16:53:42 +00:00
imp
67df0b50e4 implement MFC links properly (and I think long links too). This make
the sprint wireless card try to attach.  Sadly, the pci code at the
bridge keeps this from happening.

Bug w/o PR: jhb :-)
2001-12-04 13:48:16 +00:00
des
6b161786dd The entry for the 'set' command no longer has a list of variables.
PR:		32454
Submitted by:	Gary W. Swearingen <swear@blarg.net>
MFC after:	3 days
2001-12-04 12:01:00 +00:00
des
d7018ca87e PROCFS requires PSEUDOFS. 2001-12-04 11:48:16 +00:00
des
de8206def1 s/^options\t\t/options \t/ 2001-12-04 11:17:31 +00:00
des
7810400c8f PROCFS requires PSEUDOFS. 2001-12-04 11:17:30 +00:00
des
9d903750d7 PROCFS requires PSEUDOFS. I forgot that GENERIC didn't have PSEUDOFS yet. 2001-12-04 11:12:20 +00:00
marcel
defebc6748 When translating the interface name when "eth?" is given, do not
use the internal index number as the unit number to compare with.
The first ethernet interface in Linux is called "eth0", whereas
our internal index starts wth 1 and is not unique to ethernet
interfaces (lo0 has index 1 for example). Instead, use a function-
local index number that starts with 0 and is incremented only
for ethernet interfaces. This way the unit number will match the
n-th ethernet interface in the system, which is exactly what it
means in Linux.

Tested by: Glenn Johnson <gjohnson@srrc.ars.usda.gov>
MFC after: 3 days
2001-12-04 03:55:10 +00:00
scottl
c78ca7db76 MFS: Use correct terminology for RAID 0/1 and 0/5. 2001-12-04 02:39:06 +00:00
luigi
cb46bc1155 Remove error messages on mbuf allocation failures, now
this is done more safely in kern/subr_mbuf.c

Two-days'-delay-thanks-to: @home shutting down service
2001-12-04 02:30:53 +00:00
scottl
8f464117e5 BAH! Missed another change to this file. 2001-12-04 02:26:57 +00:00
scottl
6ba0b41dce Bah, I missed this file on the last commit 2001-12-04 02:24:07 +00:00
des
de55179b29 PROCFS requires PSEUDOFS now. 2001-12-04 01:35:59 +00:00
des
e05a1e1712 Pseudofsize procfs(5). 2001-12-04 01:35:06 +00:00
obrien
ff81a8c93d Back out rev 1.48. The problem is with a bogus __attribute__ in stdio.h. 2001-12-04 01:29:54 +00:00
des
536f2aee59 Reduce namespace pollution by removing argument names from prototypes. 2001-12-04 01:23:02 +00:00
jhb
22c01df0b4 Add a missing open paren to a macro that's been broken (and apparently
unused) since rev 1.1 so it is at least correct.

Submitted by:	Maxime Henrion <mux@qualys.com>
2001-12-04 00:35:28 +00:00
scottl
3913fdc6dd Use d_thread_t to reduce diffs between current and stable.
Spell ACQUIRE correctly.
2001-12-03 22:55:14 +00:00
rwatson
fb311b7cce o Update an instance of 'unprivileged_procdebug_permitted' missed
in the previous commit: the comment should also call it
  'unprivileged_proc_debug'.
2001-12-03 19:10:21 +00:00
brooks
8b6f6e9487 Don't pass an interface pointer to VLAN_INPUT{,_TAG}. Get it from the
mbuf instead.

Suggested by:	fenner
2001-12-03 17:28:27 +00:00
rwatson
b5de442911 o Introduce pr_mtx into struct prison, providing protection for the
mutable contents of struct prison (hostname, securelevel, refcount,
  pr_linux, ...)
o Generally introduce mtx_lock()/mtx_unlock() calls throughout kern/
  so as to enforce these protections, in particular, in kern_mib.c
  protection sysctl access to the hostname and securelevel, as well as
  kern_prot.c access to the securelevel for access control purposes.
o Rewrite linux emulator abstractions for accessing per-jail linux
  mib entries (osname, osrelease, osversion) so that they don't return
  a pointer to the text in the struct linux_prison, rather, a copy
  to an array passed into the calls.  Likewise, update linprocfs to
  use these primitives.
o Update in_pcb.c to always use prison_getip() rather than directly
  accessing struct prison.

Reviewed by:	jhb
2001-12-03 16:12:27 +00:00
dwmalone
4dca628204 Add missing declaration of ftime.
Submitted by:	Sergey Matveychuk <sem@ciam.ru>
Obtained from:	NetBSD
MFC after:	1 week
2001-12-03 15:07:54 +00:00
dcs
462671a608 Remove unused filed.
PR:		kern/32395
Submitted by:	Jonathan Mini <mini@haikugeek.com>
2001-12-03 12:07:05 +00:00
obrien
4790145648 Reapply rev 1.37 (hide the __attribute__ gcc keyword) into RELENG_4 even
though it was backed out.
With out this change the TenDRA compiler is not bootstrapable.
2001-12-03 11:29:01 +00:00
murray
f02533b302 Fix typo.
PR:		32455
Submitted by:	"Gary W. Swearingen" <swear@blarg.net>
2001-12-03 06:00:24 +00:00
green
f9d5720e42 Split out NAI Labs license and BSD license to prevent the accidental
violation of either.
2001-12-03 00:21:18 +00:00
rwatson
de0f8b15da o Uniformly copy uap arguments into local variables before grabbing
giant, and make whitespace more consistent around giant-frobbing.
2001-12-02 15:22:56 +00:00
rwatson
dbe003dc3e o Remove KSE race in setuid() in which oldcred was preserved before giant
was grabbed.  This was introduced in 1.101 when the giant pushdown
  for kern_prot.c was originally performed.
2001-12-02 15:15:29 +00:00
rwatson
8b2ab77900 o General style, formatting, etc, improvements:
- uid's -> uids
	- whitespace improvements, linewrap improvements
	- reorder copyright more appropriately
	- remove redundant MP SAFE comments, add one "NOT MPSAFE?"
	  for setgroups(), which seems to be the sole un-changed system
	  call in the file.
	- clean up securelevel_g?() functions, improve comments.

Largely submitted by:	bde
2001-12-02 15:07:10 +00:00