iedowse [Thu, 25 Oct 2001 22:55:59 +0000 (22:55 +0000)]
Default to not performing ufs_dirhash's extensive directory-block
sanity check after every directory modification. This check can be
re-enabled at any time by setting the sysctl "vfs.ufs.dirhash_docheck"
to 1.
This group of sanity tests was there to ensure that any UFS_DIRHASH
bugs could be caught by a panic before a potentially corrupted
directory block would be written to disk. It has served its main
purpose now, so disable it in the interest of performance.
dillon [Thu, 25 Oct 2001 22:49:48 +0000 (22:49 +0000)]
In cluster_rbuild(), 'size' had better match buf->b_bcount and buf->b_bufsize
or the cluster will not be properly merged. Dup the code from
cluster_wbuild() and add some printf()s to see if bad cases are present.
rwatson [Thu, 25 Oct 2001 20:45:47 +0000 (20:45 +0000)]
o Modify format of /etc/fbtab to accept glob matching patterns for
target devices, not just individual devices and directories. This
permits activities such as:
ttyv0 0600 /dev/dsp*
Whereas previously that was not supported. This change is
backwards-compatible, except where device names included globbing
characters, which is not the case for any devices listed in MAKEDEV.
Submitted by: Maxime Henrion <mux@qualys.com>
MFC after: 3 weeks
iedowse [Thu, 25 Oct 2001 19:07:56 +0000 (19:07 +0000)]
Now that nfsm_reply() does not usually set 'error' to 0, we need
to do it explicitly in nfsrv_noop so that the reply gets sent back
to the client. This fixes the generation of a selection of RPC
error replies (RPC_PROGMISMATCH, RPC_PROGUNAVAIL, RPC_PROCUNAVAIL
etc.) that are used by some clients to detect support for optional
protocols and features.
Reviewed by: peter
Reported by: Thomas Quinot <quinot@inf.enst.fr>
PR: kern/31479
jhb [Thu, 25 Oct 2001 16:52:43 +0000 (16:52 +0000)]
Use %ecx instead of %ebx for the scratch register while updating %dr7 since
%ecx isn't a call safe register and thus we don't have to save and restore
it.
jhb [Thu, 25 Oct 2001 16:50:16 +0000 (16:50 +0000)]
- Fix typo in comment from previous revision.
- Fix a bug in the LDT changes where the wrong argument was passed to
set_user_ldt() from cpu_switch(). The bug was passing a pointer to the
ldt, but set_user_ldt() takes a pointer to the process' mdproc structure.
sobomax [Thu, 25 Oct 2001 15:51:50 +0000 (15:51 +0000)]
Don't put an extra space after password prompts, because it violates POLA,
makes FreeBSD inconsistent with previous releases and "other unices" as well
as with some internal password-asking services (e.g. ftp) within the same
release.
bde [Thu, 25 Oct 2001 11:46:54 +0000 (11:46 +0000)]
Fixed bugs in rev.1.973. Actually enable PCI_ENABLE_IO_MODES. It
defeats the point of LINT to comment out positive options.
Fixed style bugs in rev.1.973:
- disordering of PCI options list.
- missing space after "options".
- line longer than 80 characters.
- bogus quoting of "BIOS".
bde [Thu, 25 Oct 2001 11:20:15 +0000 (11:20 +0000)]
Fixed some English errors, mainly ones not fixed in the previous commit.
The previous commit message should have said this too (the only BSDism
fixed was punctuation for non-sentences). Neither these changes nor
the ones in the previous commit were exactly as submitted by me.
dfr [Thu, 25 Oct 2001 08:50:14 +0000 (08:50 +0000)]
Add the two sections used for PLT entries to the text and sdata sections
respectively. This makes IPLTLSB relocations work properly (these are
generated for weak symbols, particularly for _longjmp).
ru [Thu, 25 Oct 2001 07:28:55 +0000 (07:28 +0000)]
Fix cross-building further.
Introduce ${TARGET} defaulting to ${MACHINE} which should be set to
whatever your target ${MACHINE} is, and use that with world-related
stages. That is, to build pc98 on alpha, one now needs to set both
TARGET_ARCH=i386 and TARGET=pc98.
The scope of ${TARGET} is limited to Makefile.inc1 and cross-tools.
In particular, this change was tested to fix:
1. Cross building of "alpha" on i386. The breakage was introduced
by rev. 1.10 to sbin/i386/Makefile (missing <machine/cronyx.h>).
2. Descending into machine-specific subdirs for a different arch.
Previously, sbin/i386 and usr.sbin/boot0cfg were descended into
when cross-building "alpha" or pc98 on i386.
3. Fixes pc98 cross-building which was horribly broken, caused by
not setting MACHINE correctly (most ${MACHINE} == pc98 checking
Makefiles put -DPC98 to CFLAGS).
jlemon [Thu, 25 Oct 2001 05:32:01 +0000 (05:32 +0000)]
Add support for loadable microcode which implements interrupt coalescing
and packet bundling. Make the microcode settings controllable via sysctl
and loader tunables.
Submitted by: Marko Zec <zec@tel.fer.hr>
(with some munging and dynamic sysctl support by me)
Also extend the workaround for Dynamic Standby mode to later '559 chips,
not just the ICH2 variants.
jlemon [Thu, 25 Oct 2001 05:23:31 +0000 (05:23 +0000)]
Add Intel's loadable microcode to implement receive side bundling.
This is taken verbatim from the Intel's e100-1.6.22 release, with
the addition of their LICENSE file at the top.
wollman [Thu, 25 Oct 2001 02:35:29 +0000 (02:35 +0000)]
Resume deorbit burn sequence for <malloc.h>. Inspection of my make logs
reveals no programs in the standard build which hit the previous warning
message. This change will NOT be merged to 4-stable.
rwatson [Thu, 25 Oct 2001 02:03:37 +0000 (02:03 +0000)]
o Remove extern showallsockets, defunct as of the change to
kern.security.seeotheruids_permitted. This was missed in the
commit that made this change elsewhere.
jlemon [Thu, 25 Oct 2001 00:14:16 +0000 (00:14 +0000)]
Force FWRITE on when opening the console, so that the flags passed to
vn_close match those from vn_open. This fixes the panic some people
were seeing about "vrele: missed vn_close".
grog [Thu, 25 Oct 2001 00:01:06 +0000 (00:01 +0000)]
Update Labour Day in New Zealand. It's definitely not today. This
year it was on 22 October, which makes me think that it's the 4th
Monday in October. At least this way it's correct for this year.
jhb [Wed, 24 Oct 2001 22:15:38 +0000 (22:15 +0000)]
Document the requirements and nature of the logical CPU IDs. It isn't
very strict and leaves much up to the platform so that it can define a
convenient mapping.
jhb [Wed, 24 Oct 2001 21:35:31 +0000 (21:35 +0000)]
Change the module name from 'snd_cmipci' to 'snd_cmi' to match the
filename, module name in the loader, the dependency in snd_driver.ko, and
to be consistent with other sound drivers.
dfr [Wed, 24 Oct 2001 21:20:50 +0000 (21:20 +0000)]
If we get an unhandled page fault in kernel mode, either panic (if
pcb_onfault is not set) or arrange to restart at the location in
pcb_onfault.
This ought to help the stability of a system under moderate load. It
certainly stops DDB from hanging the kernel when it tries to access a
non-present page.
asmodai [Wed, 24 Oct 2001 18:10:37 +0000 (18:10 +0000)]
Add $FreeBSD$.
Change assert() macro to print failing function name.
Change K&R function prototype wrapper to ANSI prototype.
This makes us C99 conforming.
jhb [Wed, 24 Oct 2001 17:38:40 +0000 (17:38 +0000)]
- Clean up the comments slightly here to make them more readable.
- Set the type and trapframe number for the F00F workaround since type
can be used later by sv_transtrap(). Debuggers might also want to look
at the type in the trapframe.
ache [Wed, 24 Oct 2001 17:25:49 +0000 (17:25 +0000)]
Help to recover from bad seek (i.e. negative or too big) happens beyond
our pre-check control. Do the same way as refill.c does when it set __SERR,
i.e. clear read and ungetc buffers. Clear EOF flag too.
ume [Wed, 24 Oct 2001 16:53:54 +0000 (16:53 +0000)]
Make apm a module.
We need further work to be able to specify an equivalence of `flags 0x20'.
Many PCs should work for now. But, some PCs need `flags 0x20'.
rwatson [Wed, 24 Oct 2001 02:48:38 +0000 (02:48 +0000)]
o Note an additional potential problem here: LOCKD_MSG directly exports
struct ucred to userland. In 5.0-CURRENT, it is desirable to instead
export struct xucred, as ucred contains mutexes, pointers, and other
kernel evil. I'll add it to my work queue.