Commit Graph

57606 Commits

Author SHA1 Message Date
Matt Jacob
b42cba33a3 Fix a botch where we wrote the year register with > 2 digits (and
then knocked the extra digits off). Blegh. Update the comment and
adjustment method reading the chip clock year register to note that
anything less than 70 means we're past the year 2000.
2001-03-09 20:39:02 +00:00
Brian Somers
26e6a622c0 MAXHOSTNAME includes space for a NUL 2001-03-09 20:31:02 +00:00
Poul-Henning Kamp
a3e862d902 Remove vn(4) driver. 2001-03-09 20:10:35 +00:00
Poul-Henning Kamp
e10469fef8 Make md(4) and mdconfig(8) take over the role of vn(4) and vnconfig(8)
entirely as previously advertised.

md(4) adopted all assets of vn(4) some time back and has proper devfs
support and cloning abilities to boot.
2001-03-09 20:09:28 +00:00
Poul-Henning Kamp
a30d010c86 Make md(4) more in line with reality.
NB: probably contains mdoc mistakes, feel free to fix.
2001-03-09 20:07:37 +00:00
Poul-Henning Kamp
0ac6032373 Use a more BIOS friendly geometry.
Submitted by:	joe
2001-03-09 20:06:30 +00:00
Poul-Henning Kamp
83da2a90ae 1) If mdconfig isn't given an action argument, it assumes detach.
2) Running `mdconfig -l` without any attached devices results in
mdconfig printing "md0" to standard output.

Submitted by:	dd [1]

[1] no, not "dd(1)" but "Dima Dorfman"
2001-03-09 20:05:06 +00:00
Alfred Perlstein
9708152c20 Don't call malloc with M_WAITOK while holding a mutex. 2001-03-09 18:40:34 +00:00
Ian Dowse
d30344bdfa When creating a shadow vm_object in vmspace_fork(), only one
reference count was transferred to the new object, but both the
new and the old map entries had pointers to the new object.
Correct this by transferring the second reference.

This fixes a panic that can occur when mmap(2) is used with the
MAP_INHERIT flag.

PR:		i386/25603
Reviewed by:	dillon, alc
2001-03-09 18:25:54 +00:00
Ruslan Ermilov
3f610476ac mdoc(7) police: in mdocNG, -offset and -width values without scaling
indicator are treated as strings, so "-offset 0" will set the offset
to the width of the string "0", as opposed to "no offset".

TIP: if offset is not needed, the -offset clause may be omitted.
2001-03-09 16:22:37 +00:00
Daniel Eischen
af4878847e Correct a race condition where it was possible for a signaled
thread to become stranded and not placed in the run queue.

MFC Candidate

Reported by:	tegge
2001-03-09 16:05:43 +00:00
Alexander Langer
85ac71e9c6 Add module.9 and DECLARE_MODULE.9 2001-03-09 14:16:46 +00:00
Alexander Langer
8b26e61fab Add a general manpage about kernel modules, similar to driver(9).
Reviewed by:	dfr, ru
2001-03-09 14:12:43 +00:00
Alexander Langer
b6a55e7adc Add a manpage for the kernel macro DECLARE_MODULE.
Reviewed by:	dfr, ru
2001-03-09 14:11:56 +00:00
Doug Rabson
9c738f3e82 Change the kernel layout to match Linux/ia64 more closely. This prevents
the Linux loader from corrupting our text section when it attempts to
write out boot options.
2001-03-09 13:47:25 +00:00
Doug Rabson
2af41c92e8 Add SKI_ROOT_FILESYSTEM option. 2001-03-09 13:46:03 +00:00
Doug Rabson
7ea98b2be3 Allow the config file to specify a root filesystem filename. 2001-03-09 13:45:31 +00:00
Doug Rabson
60fe99457c Adjust a comment slightly. 2001-03-09 13:44:53 +00:00
Ruslan Ermilov
211bfbd228 Add new option -m which allows the user to set IP TTL. 2001-03-09 13:20:23 +00:00
David E. O'Brien
ff7405adba bye-bye documented raw devices 2001-03-09 13:06:53 +00:00
David E. O'Brien
02344806db bye-bye documented raw device 2001-03-09 13:06:09 +00:00
David E. O'Brien
1363575f81 Remove tunefs'ing that was OBE by rev 1.30.
Submitted by:	bde
2001-03-09 12:33:53 +00:00
David E. O'Brien
e25e0c30e2 Warner gave a nice followup in email, and I thought it would be nice to
get it in the CVS logs.  This pertains to rev 1.30 (and the MFC of it):

  Space optimization forces the kernel to always use fragments to store
  parts of file, rather than using an entire block when less than an
  entire block has been written.  This forces files to be as small as
  they can be at the minor cost of time to do all the fussy stuff.  The
  cpio image that we put on the disk was so close to filling the disk
  exactly that this minor minor difference made a big difference.  The
  system changed things to time optmization on the first write.  When
  the end of file was hit, it tried to allocate a full block (4k), but
  there was only 3k left on the disk (since you get only 1407 blocks on
  a 1.44 floppy) so it failed.  So this change nails the space
  optmiziation in place for the whole operation.
2001-03-09 12:29:08 +00:00
Ruslan Ermilov
8ce3f3dd28 Make it possible to use IP_TTL and IP_TOS setsockopt(2) options
on certain types of SOCK_RAW sockets.  Also, use the ip.ttl MIB
variable instead of MAXTTL constant as the default time-to-live
value for outgoing IP packets all over the place, as we already
do this for TCP and UDP.

Reviewed by:	wollman
2001-03-09 12:22:51 +00:00
Doug Rabson
288c7d772c Define KINFO_PROC_SIZE for ia64. 2001-03-09 11:34:29 +00:00
Ruslan Ermilov
7f3a1ed2a7 This is the getsid() we are talking about, not setsid().
PR:		docs/25626
Submitted by:	Yoshihiko Sarumaru <mistral@imasy.or.jp>
2001-03-09 11:16:09 +00:00
Ruslan Ermilov
ac94747952 mdoc(7) police revision 1.15:
- replaced Oo/Oc enclosures with Op;
- removed hard sentence breaks;
- removed doubled space.
2001-03-09 11:02:01 +00:00
Jonathan Lemon
c0647e0d07 Push the test for a disconnected socket when accept()ing down to the
protocol layer.  Not all protocols behave identically.  This fixes the
brokenness observed with unix-domain sockets (and postfix)
2001-03-09 08:16:40 +00:00
Jonathan Lemon
32676c2d1f The TCP sequence number used for sending a RST with the ipfw reset rule
is already in host byte order, so do not swap it again.

Reviewed by:	bfumerola
2001-03-09 08:13:08 +00:00
John Baldwin
5db078a9be Fix mtx_legal2block. The only time that it is bad to block on a mutex is
if we hold a spin mutex, since we can trivially get into deadlocks if we
start switching out of processes that hold spinlocks.  Checking to see if
interrupts were disabled was a sort of cheap way of doing this since most
of the time interrupts were only disabled when holding a spin lock.  At
least on the i386.  To fix this properly, use a per-process counter
p_spinlocks that counts the number of spin locks currently held, and
instead of checking to see if interrupts are disabled in the witness code,
check to see if we hold any spin locks.  Since child processes always
start up with the sched lock magically held in fork_exit(), we initialize
p_spinlocks to 1 for child processes.  Note that proc0 doesn't go through
fork_exit(), so it starts with no spin locks held.

Consulting from:	cp
2001-03-09 07:24:17 +00:00
Alan Cox
c9a970a79f Use the kthread API to create and destroy AIO daemons.
Submitted by:	jhb
2001-03-09 06:27:01 +00:00
John Baldwin
3a3f608288 Add a new informative KASSERT to ensure that a process is in the SRUN state
before we return it to cpu_switch().
2001-03-09 03:59:50 +00:00
John Baldwin
2e5fc9fd7e Document how to compile KTR into the kernel, tweak its behavior, and
examine the event logs in ddb(4).
2001-03-09 03:43:18 +00:00
John Baldwin
ebadd4f5b1 Document the ithread_* API used to manage interrupt threads and their
list of handlers.
2001-03-09 03:30:20 +00:00
John Baldwin
d265f30080 Add 2001 to copyright. 2001-03-09 03:17:18 +00:00
Sergey Babkin
404363cc17 The new version of the daylight time saving support. This time it works
for any change of the time zone offset from GMT. To enable use the
option -s.
2001-03-09 03:14:09 +00:00
John Baldwin
29ef536da3 - Add 2001 to copyright.
- Kthread functions return an error status, they don't set errno to an
  error status.
- Remove the BUGS section as all the bugs listed have been fixed now.
2001-03-09 03:09:30 +00:00
John Baldwin
3ddf9cce52 The 'gdb' command works on the alpha as well as the i386. 2001-03-09 03:07:53 +00:00
David E. O'Brien
ca5bd0c65a newfs with `-m 1'
This is needed even with `-o space' as the kernel decides to be "helpful"
and not really do space optimization.  Looking at src/sys/ufs/ffs/ffs_alloc.c
we see why:		if (fs->fs_minfree <= 5 ||
		            fs->fs_cstotal.cs_nffree >
		            (off_t)fs->fs_dsize * fs->fs_minfree / (2 * 100))
			            break;
	            log(LOG_NOTICE, "%s: optimization changed from SPACE to TIME\n"

I have picked `1' vs. `0' just incase some code somewhere has the assumption
the %free can never be `0'.

Helped with understanding why -m 1 made a different:	imp
2001-03-09 01:03:15 +00:00
MIHIRA Sanpei Yoshiro
edc7e465e6 Stick the I-O DATA PCLA/TE PC Card adapter entry in the right sort order. 2001-03-09 00:30:48 +00:00
Brian Somers
c6fde08927 Talk a little more about the differences between PPPoE on FreeBSD & OpenBSD. 2001-03-09 00:12:09 +00:00
Brian Somers
5284761414 MAXPATHLEN -> PATH_MAX
Don't assume MAXHOSTNAMELEN includes the NUL
Correct a diagnostic
Use "localhost" in our prompt instead of ""
2001-03-08 23:51:50 +00:00
Archie Cobbs
22dfb9bdb7 Fix potential crash caused by packets with bogus ACK's.
Reported by:	Fabien THOMAS <fabient@netasq.com>
2001-03-08 20:10:02 +00:00
Bosko Milekic
4bde2ac539 Fix is a similar race condition as existed in the mbuf code. When we go
into an interruptable sleep and we increment a sleep count, we make sure
that we are the thread that will decrement the count when we wakeup.
Otherwise, what happens is that if we get interrupted (signal) and we
have to wake up, but before we get our mutex, some thread that wants
to wake us up detects that the count is non-zero and so enters wakeup_one(),
but there's nothing on the sleep queue and so we don't get woken up. The
thread will still decrement the sleep count, which is bad because we will
also decrement it again later (as we got interrupted) and are already off
the sleep queue.
2001-03-08 19:21:45 +00:00
Ian Dowse
bfef7ed45c It was possible for ip_forward() to supply to icmp_error()
an IP header with ip_len in network byte order. For certain
values of ip_len, this could cause icmp_error() to write
beyond the end of an mbuf, causing mbuf free-list corruption.
This problem was observed during generation of ICMP redirects.

We now make quite sure that the copy of the IP header kept
for icmp_error() is stored in a non-shared mbuf header so
that it will not be modified by ip_output().

Also:
- Calculate the correct number of bytes that need to be
  retained for icmp_error(), instead of assuming that 64
  is enough (it's not).
- In icmp_error(), use m_copydata instead of bcopy() to
  copy from the supplied mbuf chain, in case the first 8
  bytes of IP payload are not stored directly after the IP
  header.
- Sanity-check ip_len in icmp_error(), and panic if it is
  less than sizeof(struct ip). Incoming packets with bad
  ip_len values are discarded in ip_input(), so this should
  only be triggered by bugs in the code, not by bad packets.

This patch results from code and suggestions from Ruslan, Bosko,
Jonathan Lemon and Matt Dillon, with important testing by Mike
Tancsa, who could reproduce this problem at will.

Reported by:	Mike Tancsa <mike@sentex.net>
Reviewed by:	ru, bmilekic, jlemon, dillon
2001-03-08 19:03:26 +00:00
David Malone
2239c07de9 Make the wait for sendfile buffers interruptable. Stops one process
consuming them all and then getting stuck.

Reviewed by:	dg
Reviewed by:	bmilekic
Observed by:	Andreas Persson <pap@garen.net>
2001-03-08 16:28:10 +00:00
Andrew Gallatin
5af5ae6e18 Take the KINFO_PROC_SIZE back down to 912 on alpha.
Since the compiler lays out the stuct so that pointers are naturally
(8-byte) aligned aligned, adding the int ki_layout didn't change the size of
the stuct; it just converted the alignment padding to a usable struct
field.
2001-03-08 15:17:38 +00:00
KATO Takenori
e70037181a Replaced p (undeclared) with curproc (after i386/isa/npx.c). 2001-03-08 14:25:51 +00:00
David E. Cross
57db636284 Submitted by: Ian Dowse <iedowse@maths.tcd.ie>, David Cross <dec@freebsd.org>
Reviewed by:	David Cross <dec@freebsd.org>, jkh <jkh@freebsd.org>
Approved by:	jkh <jkh@freebsd.org>
Obtained from:	Ian Dowse <iedowse@maths.tcd.ie>, David Cross <dec@freebsd.org>
We have been running this patch on a production NIS server for 2.5 weeks now.
Normally we would have ypserv die at least once a week, and often many times
a day.

This patch treats and error from select as zeroing out the FD_SET to indicate
that no fds are ready for reading.  This is safe because the rpc code
always re-inits the FDSET before calling select.
2001-03-08 13:57:41 +00:00
Jordan K. Hubbard
7e2f1eda7a Fix a paste-o which introduced a syntax error. 2001-03-08 10:41:40 +00:00