Commit Graph

48043 Commits

Author SHA1 Message Date
Josef Karthauser
2ef72bc152 Fixes a potential buffer overflow with 'ed [MAXPATHLEN + 1 characters]'.
Submitted by:	Mike Heffner <spock@techfour.net>
Submitted on:	audit@freebsd.org
2000-04-30 20:46:14 +00:00
Poul-Henning Kamp
2c9b67a8df Remove unneeded #include <vm/vm_zone.h>
Generated by:	src/tools/tools/kerninclude
2000-04-30 18:52:11 +00:00
Brian Feldman
26872f7ef2 For the M_PREPEND macro, remove an initial mbuf NULL check I added. It
was added accidentally, and although not terrible, it would improperly
hide the bug of calling M_PREPEND with a NULL mbuf argument.

Submitted by:	jlemon (ISTR)
2000-04-30 18:42:44 +00:00
Brian Feldman
226f14bc83 Change the scheduler to actually respect the PUSER barrier. It's been
wrong for many years that negative niceness would lower the priority
of a process below PUSER, and once below PUSER, there were conditionals
in the code that are required to test for whether a process was in
the kernel which would break.

The breakage could (and did) cause lock-ups, basically nothing else
but the least nice program being able to run in some conditions.  The
algorithm which adjusts the priority now subtracts PRIO_MIN to do
things properly, and the ESTCPULIM() algorithm was updated to use
PRIO_TOTAL (PRIO_MAX - PRIO_MIN) to calculate the estcpu.

NICE_WEIGHT is now 1 to accomodate the full range of priorities better
(a -20 process with full CPU time has the priority of a +0 process with
no CPU time).  There are now 20 queues (exactly; 80 priorities) for
use in user processes' scheduling, and PUSER has been lowered to 48
to accomplish this.

This means, to the user, that things will be scheduled more correctly
(noticeable), there is no lock-up anymore WRT a niced -20 process
never releasing the CPU time for other processes.  In this fair system,
tsleep()ed < PUSER processes now will get the proper higher priority
than priority >= PUSER user processes.

The detective work of this was done by me, along with part of the
solution.  Luoqi Chen has provided most of the solution, and really
helped me understand what was happening better, to boot :)

Submitted by:   luoqi
Concept reviewed by:    bde
2000-04-30 18:33:43 +00:00
Andrey A. Chernov
85a23112fd Allow "-" for working with STDIN
Allow printing of each option separately when keyword specified without a
number
2000-04-30 18:06:04 +00:00
Andrey A. Chernov
43175e5e19 Fix warn format
Pointed-by: bde
2000-04-30 17:12:49 +00:00
Jeroen Ruigrok van der Werven
eff280b358 Remove bogus include, as per style(9).
Remove unused variable.
2000-04-30 17:05:26 +00:00
Andrey A. Chernov
df41cfee75 Back out all drainwait changes. It is enough controllable via sysctl or
comcontrol, having it in stty cause too many problems with existing drivers
and tty access permissings of non-superuser.

Asked-by: bde
2000-04-30 17:04:26 +00:00
Andrey A. Chernov
3363a08f8c gfmt: set drainwait only if changed
It allows to restore tty state without a warning for non-superuser
2000-04-30 16:22:09 +00:00
Andrey A. Chernov
c1d0c3a89d Add sysctl variable to set initial drainwait timeout on ttyopen, default to
5 minutes
2000-04-30 16:00:53 +00:00
Guy Helmer
d02e530b50 Allocate space for arrays of type "char *", not "char **".
Rev 1.8 made the type consistently incorrect.

Noted by:	Ben Smithurst <ben@scientia.demon.co.uk>
2000-04-30 15:57:00 +00:00
Mark Murray
f47dc39cf5 Fix comments, whitespace to reduce diffs between this and GENERIC. 2000-04-30 15:38:28 +00:00
Bruce Evans
3aae7b16d2 Fixed the type of some ivar access functions. Ivars have type uintptr_t,
not u_long.  On i386's with 64-bit longs, returning u_longs indirectly
in (more than) the space reserved for uintptr_t's tended to corrupt the
previous frame pointer in the stack frame, so it was not easy to debug.
The type mismatches are hidden by the bogus cast in DEVMETHOD().
2000-04-30 10:01:56 +00:00
Julian Elischer
ac4445057f Update the man page to reflect the recent changes to the kernel API for
netgraph.
2000-04-30 10:01:11 +00:00
Doug Rabson
0163d0f514 Include <sys/random.h> for rand_initialize(). 2000-04-30 09:41:35 +00:00
Yoshihiro Takahashi
0b09ce0c5b - Added UKBD_DFLT_KEYMAP option.
Pointed out:	Tomokazu HARADA <tkhara@osk4.3web.ne.jp>

- Fixed disordering.
2000-04-30 09:12:48 +00:00
Yoshihiro Takahashi
517b2a8d5c Clean up MAXMEM routine.
Submitted by:	"K.Magara" <magara@maizuru-ct.ac.jp>
2000-04-30 08:52:47 +00:00
Yoshihiro Takahashi
de64b8c968 Fixed to support JIS7 KANJI.
Submitted by:	Nobuyuki Koganemaru <kogane@koganemaru.co.jp>
2000-04-30 08:40:43 +00:00
Yoshihiro Takahashi
292feef381 Sync with sys/boot/i386/libi386/biosdisk.c revision 1.30. 2000-04-30 08:24:36 +00:00
Bruce Evans
3101c7e80d Removed a stale forward struct declaration. 2000-04-30 06:47:24 +00:00
Brian Feldman
0f95689794 Allow overriding of net.inet.ip.fw.verbose_limit; if you want to make a
rule that logs without a log limit, use "logamount 0" in addition to "log".
2000-04-30 06:44:11 +00:00
Bruce Evans
2ba118a15e Removed superfluous forward declaration of struct klist. Forward
declarations of structs for use in prototypes are only necessary if
the struct is not otherwise declared in scope.

Removed prototypes for fdissequential() and fdsequential().  These
functions never existed in FreeBSD.

Fixed most style bugs in FreeBSD changes (mainly disordered prototypes
and prototypes without parameter names).
2000-04-30 06:31:28 +00:00
Poul-Henning Kamp
95bdaa0ee8 Hmm, diff/patch still doesn't like me.
Missed one s/biowait/bufwait/g
2000-04-30 06:16:03 +00:00
Bruce Evans
a3b693c9d7 Updated the name of the idempotency macro to match the move of this file.
Fixed a missing forward declaration.
2000-04-30 05:16:24 +00:00
Jonathan Lemon
b5b8b79d07 Define more DOSPTYP_* constants for different filesystem types
Reminded by:	ps
2000-04-30 02:33:40 +00:00
Bruce Evans
90541e30b6 Fixed world breakage for the NOSHARED=yes case. libpam now depends on
libopie.

Don't say that libpam.a doesn't exist.
2000-04-30 01:33:37 +00:00
Greg Lehey
d0c72fe599 Add reference to UNIX history graphing project.
Correct derivation of Eighth Edition Research UNIX.  According to dmr,
it was derived from 4.1cBSD; according to the 4.4BSD book, it was
derived from 4.1BSD.  Since dmr did the work, he's more likely to be
correct.

Correct typos.

Remove dead URLs.
2000-04-30 01:17:34 +00:00
Paul Saab
95394e643f Fall back to /pxeroot as the location of the NFS exported directory
if we are not given one by dhcp.
Remove extra includes while I am here.

Reminded by:	jlemon
2000-04-29 23:08:49 +00:00
Jonathan Lemon
8e30378f89 Teach the loader about the ext2fs filesystem, extended partitions, and
the new readdir function.
2000-04-29 20:49:33 +00:00
Jonathan Lemon
efb8ff8532 Add a readdir function to the loader fsops vector, and implement the
functionality for some of the filesystesms.
2000-04-29 20:47:10 +00:00
Jonathan Lemon
ee8d82ce9f Add ext2fs support to the loader. 2000-04-29 20:44:07 +00:00
Poul-Henning Kamp
932a24df3e Peter and I cross-committed: this file needs sys/kernel.h now. 2000-04-29 18:03:52 +00:00
Warner Losh
f490231eb3 Return 0 from attach.
Submitted by: mihira-san <sanpei@sanpei.org>
2000-04-29 17:43:12 +00:00
Poul-Henning Kamp
87150cb06d s/biowait/bufwait/g
Prodded by: several.
2000-04-29 16:25:22 +00:00
Poul-Henning Kamp
c1462ad325 Remove a leftover dysonism. 2000-04-29 16:14:10 +00:00
Poul-Henning Kamp
eb95c536ad Remove unneeded #include <sys/kernel.h> 2000-04-29 15:36:14 +00:00
Peter Wemm
5a54cb4145 Add a missing MODULE_DEPEND() on miibus.. I was working from
KMODDEPS which this driver didn't have.
2000-04-29 15:25:56 +00:00
Peter Wemm
95a1645553 Depend on miibus.
Note that if_aue doesn't strictly depend on usb because it uses the
method interface for calls rather than using internal symbols, and
because it's a child driver of usb and therefore will not try and do
anything unless the parent usb code is loaded at some point.  if_aue does
strictly depend on miibus as it will fail to link if it is missing.
2000-04-29 13:41:57 +00:00
Peter Wemm
9ad6460a9e Provide a tag so that miibus consumers can depend on the module,
regardless of whether it is in a seperate .ko or the kernel (or in a .ko
bundled with several other things in one file for packaging).
2000-04-29 13:38:26 +00:00
Peter Wemm
99ff81767f Minimal tweak to make the ng_XXX modules depend on netgraph so that they
see its symbols and link ok.
2000-04-29 13:36:07 +00:00
Peter Wemm
6ff4e7af7e nwfs depends on ncp 2000-04-29 13:34:28 +00:00
Peter Wemm
36d4f7c197 Stick a module dependency on 'splash' in the saver declaration macro so
that all savers are automatically declared dependent on the splash driver.
2000-04-29 13:33:18 +00:00
Peter Wemm
041cd80735 Initial dependency so that the kld's will link. imgact_coff depends
on the ibcs2 module being present.
2000-04-29 13:32:16 +00:00
Peter Wemm
eb2d8c2e8a The newer module dependency code exposes an apparent bug in the
bus/driver/kobj system.  I am not 100% sure that this is the correct fix,
but it is harmless and does seem to solve the problem.  At worst, it could
cause a tiny memory leak at unload time - this is better than a free(NULL)
and subsequent panic.  I'm waiting for comments from Doug about this.
This may yet be backed out and fixed differently.

The change itself is to increment the reference count on drivers in one
case where it appears to have been missed.  When everything is unloaded,
kobj_class_free() was being called twice in some cases, and panicing the
second time.
2000-04-29 13:24:35 +00:00
Peter Wemm
54823af256 First round implementation of a fine grain enhanced module to module
version dependency system.  This isn't quite finished, but it is at a
useful stage to do a functional checkpoint.

Highlights:
- version and dependency metadata is gathered via linker sets, so things
are handled the same for static kernels and code built to live in a kld.
- The dependencies are at module level (versus at file level).
- Dependencies determine kld symbol search order - this means that you
cannot link against symbols in another file unless you depend on it. This
is so that you cannot accidently unload the target out from underneath
the ones referencing it.
- It is flexible enough that we can put tags in #include files and macros
so that we can get decent hooks for enforcing recompiles on incompatable
ABI changes.  eg: if we change struct proc, we could force a recompile
for all kld's that reference the proc struct.
- Tangled dependency references at boot time are sorted.  Files are
relocated once all their dependencies are already relocated.

Caveats:
- Loader support is incomplete, but has been worked on seperately.
- Actual enforcement of the version number tags is not active yet - just
the module dependencies are live.  The actual structure of versioning
hasn't been agreed on yet. (eg: major.minor, or whatever)
- There is some backwards compatability for old modules without metadata
but I'm not sure how good it is.

This is based on work originally done by Boris Popov (bp@freebsd.org),
but I'm not sure he'd recognize much of it now. Don't blame him. :-)
Also, ideas have been borrowed from Mike Smith.
2000-04-29 13:19:31 +00:00
Jeroen Ruigrok van der Werven
18616dacbb Remove unused include. 2000-04-29 12:47:03 +00:00
Jeroen Ruigrok van der Werven
e9a4553da8 Remove a bogus include. 2000-04-29 12:28:44 +00:00
Jeroen Ruigrok van der Werven
2e79759062 Remove dead debug code.
This also removes a dependency/reference on COMPAT_43.
2000-04-29 12:02:00 +00:00
Satoshi Asami
b952892aa3 Add lib/X11/locale/zh_TW.Big5.
Found by:	bento
2000-04-29 11:43:18 +00:00
Peter Wemm
7c3fdf6bbc Do not fault if curproc is null. 2000-04-29 11:32:15 +00:00