peter [Sun, 21 May 2000 12:50:18 +0000 (12:50 +0000)]
Implement an optimization of the VM<->pmap API. Pass vm_page_t's directly
to various pmap_*() functions instead of looking up the physical address
and passing that. In many cases, the first thing the pmap code was doing
was going to a lot of trouble to get back the original vm_page_t, or
it's shadow pv_table entry.
Inspired by: John Dyson's 1998 patches.
Also:
Eliminate pv_table as a seperate thing and build it into a machine
dependent part of vm_page_t. This eliminates having a seperate set of
structions that shadow each other in a 1:1 fashion that we often went to
a lot of trouble to translate from one to the other. (see above)
This happens to save 4 bytes of physical memory for each page in the
system. (8 bytes on the Alpha).
Eliminate the use of the phys_avail[] array to determine if a page is
managed (ie: it has pv_entries etc). Store this information in a flag.
Things like device_pager set it because they create vm_page_t's on the
fly that do not have pv_entries. This makes it easier to "unmanage" a
page of physical memory (this will be taken advantage of in subsequent
commits).
Add a function to add a new page to the freelist. This could be used
for reclaiming the previously wasted pages left over from preloaded
loader(8) files.
hoek [Sun, 21 May 2000 05:40:44 +0000 (05:40 +0000)]
Compile in the case that anyone ever actually uses LEAVE_FREE_CHARS.
It's not clear what this does nor why they would do it, but it should
compile, now. This could be a case where fixing the code so that it
compiles merely masks more devious dysfunctional behaviour.
hoek [Sun, 21 May 2000 05:33:40 +0000 (05:33 +0000)]
Uh, ya, sure this almost compiled for __bsdi__. NOT!
Note that __bsdi__s_/_i_/_os_/__ has moved this file to dev/ic/ and
has completely removed the non-compiling function from pdq_ifsubr.c and
has completely removed this function and placed it into netinet/if_ether.c
(if, in fact, it wasn't there the whole time). I was tempted to simply
remove this __bsdi__only__ function.
jkh [Sat, 20 May 2000 23:25:08 +0000 (23:25 +0000)]
I've always wanted to be able to dump out the current values of
the mixer in a format suitable for saving and handing off to
mixer(1) at some future date to restore the settings.
Add a -s flag to do this.
obrien [Sat, 20 May 2000 18:01:05 +0000 (18:01 +0000)]
Revert rev 1.10 as I took the bug report too much on face value. The bug
submitter has been refered to the ISC to determine if there his problems
are due to a bug in the script.
As a side note, `man 8 ifconfig' does not show "ifconfig -alias" as being
acceptable, but it is and does server a purpose.
obrien [Sat, 20 May 2000 10:14:43 +0000 (10:14 +0000)]
ASM_DECLARE_OBJECT_NAME and ASM_FINISH_DECLARE_OBJECT are ELF MI routines
to generate the special .type and .size directives which are used to set
the corresponding fields of the linker symbol table entries in the ELF
object file. As such they are not i386-specific and thus belong in our
MI header. Otherwise on the Alpha we don't properly give the type and
size of dynamic symbols. Bintuil versions past 2.9.1 warn of this and
w/o this change, `ld' generates a lot of warnings during a `make world'.
dbaker [Fri, 19 May 2000 18:02:25 +0000 (18:02 +0000)]
Correct confusion and differentiate appropriately between GMT and UTC when
date is launched with the "u" argument. It now operates in the documented
manner.
kris [Fri, 19 May 2000 09:42:53 +0000 (09:42 +0000)]
fork() -> vfork()
This would have been commit #2 which was "Obtained from: BSD/OS" except
their code is buggy (they call err() if the execl() fails, which will
incorrectly call exit()), so instead this is:
jdp [Fri, 19 May 2000 04:32:17 +0000 (04:32 +0000)]
This is step 1 in an effort to unify the start-up files for the
various architectures. Now all the work is done in crtbegin.c.
It doesn't contain any assembly language code, so it should work
fine on all architectures. (I have tested it on the i386 and the
alpha.) The old assembly language files crt[in].S are now empty
shells that generate no code or data. They should not be removed
any time soon, because the various versions of gcc in src and ports
expect them to exist.
Next I will move crtbegin.c into a new common machine-independent
directory, and adjust the i386-elf Makefile to use that version.
After that I will adjust the alpha Makefile to use the common
version too.
peter [Fri, 19 May 2000 00:55:21 +0000 (00:55 +0000)]
Return ECONNRESET instead of EINVAL if the connection has been shot
down as a result of a reset. Returning EINVAL in that case makes no
sense at all and just confuses people as to what happened. It could be
argued that we should save the original address somewhere so that
getsockname() etc can tell us what it used to be so we know where the
problem connection attempts are coming from.
msmith [Wed, 17 May 2000 19:44:16 +0000 (19:44 +0000)]
If we are running in APIC_IO mode, pretend that we didn't see the BIOS
reporting an AT PIC. We do this because otherwise the PIC will claim
IRQ 2 in an unshareable mode, preventing other devices from legitimately
using it.
For symmetry, in !APIC_IO mode, ignore the APIC if it's reported.
This is a hack; a better solution would have the PIC's driver release
the IRQ if it was not going to be active.
iwasaki [Wed, 17 May 2000 18:29:17 +0000 (18:29 +0000)]
Add CIS string comparison function.
This should solve tentatively the pccardd core dump problem when
there's no CIS (likely CardBus cards).
Later, this function will have regex CIS string comparison capability
too.
jlemon [Wed, 17 May 2000 04:05:07 +0000 (04:05 +0000)]
Cast sizeof() calls to be of type (int) when they appear in a signed
integer expression. Otherwise the sizeof() call will force the expression
to be evaluated as unsigned, which is not the intended behavior.
hoek [Tue, 16 May 2000 17:19:32 +0000 (17:19 +0000)]
Catchup with the times:
- Avoid use of word that Americans don't know how to spell
- Avoid use of capital letters when referring to command names
- Bookmarks do span files
- Use .Qq where appropriate. I didn't use .Sq or .Dq where `' and ``''
appear, since it's not clear to me what modern usage of those two
macros is.
- Say simply: ``See .Xr xxx 1'' rather than ``See the .Xr xxx 1 command''.
This former style has undoubtedly increased in popularity due to
html and hyperlinks, but it's always been around (esp. for manpage
sections other than section 1).
- Use .St
- Dedocument use of `-' to mean that `more` should read from its
standard input. The modern preferred way to read from standard
input is by specifying /dev/stdin. This is not a prelude to changing
more's behaviour within the short term (ie. at least 3-4 years).
imp [Tue, 16 May 2000 06:37:59 +0000 (06:37 +0000)]
Woof. Had lots more of these than I thought when I started. Time to
batch the rest:
Add EXP DVD-780 DVD rom drive (brian reichert)
Generic cdrom (???)
Two modems eicon DIVA and com1 mc218 from oliver breuninger
Farallon SkyLINE (Dirk-Willem van Gulik)
Nits to the xe cards for xe driver!
hoek [Tue, 16 May 2000 04:58:34 +0000 (04:58 +0000)]
From PR submitter:
compress uses setfile() to make flags, ownership and mode of the output
the same as those of the original. However, if the filesystem holding the
output file doesn't support these operations, compress prints a warning.
This bites a bit with NFS directories, which always fail the chflags()
operation. If the file system doesn't support the operation, then the
flags data wasn't valid on the original file anyway, so the warning is
spurious.