alc [Sun, 11 Jun 2006 04:53:06 +0000 (04:53 +0000)]
Remove pmap_pagedaemon_waken and update pmap_get_pv_entry() to match the
current interface with the machine-independent layer. Without this change,
the page daemon would only have been awakened the first time that the
number of pv entries went above the high water mark, not each time.
iedowse [Sat, 10 Jun 2006 17:29:40 +0000 (17:29 +0000)]
Hold on to firmware images until the interface detaches since
firmware_get() will not work while resuming. Note that we can't
simply drop the FIRMWARE_UNLOAD flag, because that will result in
a firmware image that can never be unloaded by the user since the
firmware subsystem will hold a linker reference to it (it's not
clear that firmware_put() without FIRMWARE_UNLOAD ever does quite
what you'd want).
iedowse [Sat, 10 Jun 2006 17:04:07 +0000 (17:04 +0000)]
Keep firmware images on the list until they have been unregistered
with firmware_unregister(). Previously when the last driver reference
had been dropped we would clear the list entry under the assumption
that the firmware module was about to be unloaded, but this was not
true if the firmware image had been loaded manually with kldload.
This makes it possible to manually kldload firmware images as a
workaround for drivers such as ipw that attempt to load firmware
while resuming after a suspend.
Reviewed by: mlaier (an earlier version of the patch)
rwatson [Sat, 10 Jun 2006 14:34:07 +0000 (14:34 +0000)]
Move some functions and definitions from uipc_socket2.c to uipc_socket.c:
- Move sonewconn(), which creates new sockets for incoming connections on
listen sockets, so that all socket allocate code is together in
uipc_socket.c.
- Move 'maxsockets' and associated sysctls to uipc_socket.c with the
socket allocation code.
- Move kern.ipc sysctl node to uipc_socket.c, add a SYSCTL_DECL() for it
to sysctl.h and remove lots of scattered implementations in various
IPC modules.
- Sort sodealloc() after soalloc() in uipc_socket.c for dependency order
reasons. Statisticize soalloc() and sodealloc() as they are now
required only in uipc_socket.c, and are internal to the socket
implementation.
After this change, socket allocation and deallocation is entirely
centralized in one file, and uipc_socket2.c consists entirely of socket
buffer manipulation and default protocol switch functions.
njl [Sat, 10 Jun 2006 08:20:17 +0000 (08:20 +0000)]
* Ask for a page-aligned page instead of an arbitrary address. This should
not be necessary but might be helpful and at least reduce fragmentation.
* Add an assert to detect if the wakecode ever grows too big. We include
1 KB for stack, which should be more than enough also.
* Remove unnecessary initialization of static variables.
* Add comments and a bootverbose print giving the page phys address.
njl [Sat, 10 Jun 2006 08:20:03 +0000 (08:20 +0000)]
Minor tweaks to the resume code. Previous commit reverted alignment back
to 4. There is no need to be more strict at assembly time since we copy
the code anyway to a private page.
* Clear the direction flag and eflags. Probably not necessary but it won't
hurt to be safe.
* Add prefixes to all instructions to prevent any assembler mistakes.
* Remove zeroing of eax - edi. We use those registers immediately after
to transfer values to protected mode so this was pointless.
* Update comments to reflect info found during code review.
jmallett [Sat, 10 Jun 2006 01:37:00 +0000 (01:37 +0000)]
Rather than using specified_ro to parse the options list an extra time, and
keeping a flag to check whether we actually wanted to mount the filesystem
readonly, setup the options list so that we start off by assuming rw is what's
desired and let later flags change that.
pjd [Fri, 9 Jun 2006 17:36:50 +0000 (17:36 +0000)]
Don't expect that 'device random' will compile in those files into the
kernel for us. If random is compiled as kernel module, geom_bde.ko cannot
be loaded.
kib [Fri, 9 Jun 2006 16:09:26 +0000 (16:09 +0000)]
Copy filename read from the stdin into the private buffer. Otherwise,
next read filename overwrite previous one, resulting in acl being
applied only to the last name in the list.
Submitted by: Oleg Lomaka <oleg.lomaka at gmail com>
MFC after: 1 week
Approved by: kan (mentor)
maxim [Fri, 9 Jun 2006 14:23:40 +0000 (14:23 +0000)]
o Remove a cruft prevented libpthread sigaction(2) wrapper to
do its work for SIGINFO. Always install libpthread signal handler
wrapper for SIGINFO even if user SIG_IGN's or SIG_DFL's it.
SIGINFO has a special meaning for libpthread: when LIBPTHREAD_DEBUG
enviroment variable defined it is used for dumping an information
about threads to /tmp/.
Reported by: mi
Reviewed by: deischen
MFC after: 2 weeks
cperciva [Fri, 9 Jun 2006 03:40:04 +0000 (03:40 +0000)]
When deleting empty directories prior to building the release tarballs,
pass the "-empty" flag to find(1). This change has no effect other
than to get rid of a few pages of "rmdir: ...: Directory not empty"
error messages. (Note that the "-empty" flag has been supported by
find(1) since 4.3-RELEASE.)
rwatson [Thu, 8 Jun 2006 21:58:04 +0000 (21:58 +0000)]
Lock process when copying fields from process structure so as to
get a consistent snapshot, as well as get consistent values (i.e.,
that p_comm is properly nul-terminated).
marius [Thu, 8 Jun 2006 21:02:25 +0000 (21:02 +0000)]
- Merge sys/sparc64/pci/psycho.c rev. 1.8:
Map the device memory belonging to resources of type SYS_RES_MEMORY into
KVA upon activation so that rman_get_virtual() works as expected.
- In sbus_alloc_resource() checking whether toffs is 0 as an indication
that no applicable child range was found isn't appropriate as it's
perfectly valid for the requested SYS_RES_MEMORY resource to start at
the beginning of a child range. So check for the RMAN still being NULL
instead.
- As a minor runtime speed optimization break out of the loop where we
search for the applicable child range in sbus_alloc_resource() as soon
as it's found.
- Let sbus_setup_intr() return ENOMEM rather than 0 if it can't allocate
memory for the interrupt clearing info.
- Actually do what the comment in sbus_setup_intr() says and disable the
respective interrupt while fiddling with it.
- Remove some superfluous INTVEC() around inr, which already only contains
the interrupt vector, in sbus_setup_intr().
- While here, fix a style(9) bug in sbus_setup_intr() (don't use function
calls in initializers).
The first two changes are required for a CG6 driver.
davidch [Thu, 8 Jun 2006 18:31:21 +0000 (18:31 +0000)]
Log:
- Removed updates to if_ibytes, if_obytes, if_imcasts, and if_omcasts.
These should not be handled by the driver.
- Add code to handle excessively fragmented mbufs when mapping TX frames.
njl [Thu, 8 Jun 2006 17:54:10 +0000 (17:54 +0000)]
Minor tweaks to the resume code that might help people debug.
* Add hw.acpi.resume_beep tunable and sysctl, default to 0. Beeps the PC
speaker soon after waking to diagnose whether the wakeup code is even
getting run before other drivers possibly hang the system. To stop the beep,
cause another beep (i.e. keyboard bell). Submitted by takawata@, I changed
the frequency to be lower.
* Use 4096 instead of 4 byte alignment. Might be useful although doesn't
seem to be necessary.
* Remove a useless assignment to acpi_reset_video. It was overwritten by
the default sysctl value anyway.
marius [Thu, 8 Jun 2006 13:10:51 +0000 (13:10 +0000)]
* elf64-sparc.c (sparc64_elf_adjust_dynamic_symbol): When linking a
non-shared object, do not reserve space in .plt and .rela.plt
for regular symbols neither defined nor referenced in shared objects.
This is a backport of rev. 1.101 (sourceware.org repository) to
Binutils 2.15 which fixes the creation of bogus relocations in the
PLT of Firefox and Thunderbird binaries and which in turn caused
them to segfault in rtld(1). This is committed to the vendor branch
as it doesn't represent a local change but the original vendor fix
is from after elf_link_hash_flags was replaced with bitfields.
oleg [Thu, 8 Jun 2006 11:27:45 +0000 (11:27 +0000)]
install_state() should properly initialize 'addr_type' field of newly created
flows for O_LIMIT rules. Otherwise 'ipfw -d show' is unable to display
PARENT rules properly.
(This bug was exposed by ipfw2.c rev.1.90)
sam [Wed, 7 Jun 2006 17:53:15 +0000 (17:53 +0000)]
remove ath hal options; having them here causes opt_ah.h to be clobbered
by config and that breaks builds unless one duplicates the options in the
config file
jkoshy [Wed, 7 Jun 2006 16:51:54 +0000 (16:51 +0000)]
Catch up with the rename of symbol VDOOMED to VI_DOOMED in revision
1.198 of "sys/sys/vnode.h". Remove a cross-reference to a manual
page that never existed.
---------------------------------------------------------------------- CVS:
PR: Fill this in if a GNATS PR is affected by the
change. CVS: Submitted by: Fill this in if someone else sent
in the change. CVS: Reviewed by: Fill this in if someone else
reviewed your modification. CVS: Approved by: Fill this in if
you needed approval for this commit. CVS: Obtained from: Fill
this in if the change is from third party software. CVS: MFC after:
N [day[s]|week[s]|month[s]] CVS: Fill in to get MFC notification
later. (days assumed unless specified) CVS:
---------------------------------------------------------------------- CVS:
Enter Log. Lines beginning with `CVS:' are removed automatically
glebius [Wed, 7 Jun 2006 10:26:51 +0000 (10:26 +0000)]
Add section describing how ARP load balancing works and its
limitations:
- Can't load balance behind router
- ARP balancing + pfsync probably won't work
yongari [Wed, 7 Jun 2006 09:05:20 +0000 (09:05 +0000)]
Fix watchdog timeout errors seen on a few systems.
SK-NET GENESIS document says reading SK_ISSR should stop generating
further interrupts(Since we drop a driver lock before invoking
ifp->if_input handler we should disable interrupts in ISR in order
to protect integrity of softc from subsequent interrupts). But it
seems that there is possibility of loosing interrupts between
reading SK_ISSR and determining which interrupts are reported.
To cope with the situation we continuously read SK_ISSR register
until there are no interrupts. However, it seems that the above
work around doesn't fix all cases. To protect watchdog handler
from triggering false alarm add a work around code which try to
reclaim pending Tx descriptors before resetting hardware. This
should fix occasional watchdog timeout errors seen on this driver.
Reported by: Frank Behrens <frank AT pinky dot sax dot de >
Tested by: Frank Behrens <frank AT pinky dot sax dot de >
trhodes [Wed, 7 Jun 2006 03:33:48 +0000 (03:33 +0000)]
Simply running ``make world'' will bomb unless you dig up the
undocumented HISTORICAL_MAKE_WORLD variable and set it. Note it
here so the blow up will not really be a surprise to people who
read.
Link the buildingworld chapter of our handbook in the README
while I'm here.
rodrigc [Tue, 6 Jun 2006 21:56:49 +0000 (21:56 +0000)]
For network filesystems (NFS, samba, etc.), do not pass "export" nmount()
parameter to try to delete an NFS export. It won't work, and will log
a spurious warning to syslog.
Tested by: Arno J. Klaassen <arno at heho dot snv dot jussieu dot fr>
MFC after: 3 days