bde [Thu, 10 Jan 2002 11:49:55 +0000 (11:49 +0000)]
Clear the single-step flag for signal handlers. This fixes bogus trace
traps on the first instruction of signal handlers.
In trap.c:syscall(), fake a trace trap if the single-step flag was set
on entry to the kernel, not if it will be set on exit from the kernel.
This fixes bogus trace traps after the last instruction of signal handlers.
gdb-4.18 (the version in FreeBSD) still has problems with the program in
the PR. These seem to be due to bugs in gdb and not in FreeBSD, and are
fixed in gdb-5.1 (the distribution version).
PR: 33262
Tested by: k Macy <kip_macy@yahoo.com>
MFC after: 1 day
marcel [Thu, 10 Jan 2002 05:36:36 +0000 (05:36 +0000)]
Further fixes related to the interface renaming. Now that we
properly translate the interface name passed to us, make sure
we also translate correctly before we return the list of
interfaces with the SIOCGIFCONF ioctl. It is common to use
the interface names returned by that ioctl in further ioctls,
such as SIOCGIFFLAGS.
Remove linux_ifname as it is no longer used. Also remove
ifname_bsd_to_linux as it cannot be used anymore now that
linux_ifname is removed (was deadcode anyway).
Reported and tested by: Andrew Atrens <atrens@nortelnetworks.com>
msmith [Thu, 10 Jan 2002 03:52:01 +0000 (03:52 +0000)]
Eliminate the use of commons in the kernel and modules,
simplifying the module linking process and eliminating the risks
associated with doubly-defined variables.
Cases where commons were legitimately used (detection of
compiled-in subsystems) have been converted to use sysinits, and
any new code should use this or an equivalent practice as a
matter of course.
Modules can override this behaviour by substituting -fno-common
out of ${CFLAGS} in cases where commons are necessary
(eg. third-party object modules). Commons will be resolved and
allocated space when the kld is linked as part of the module
build process, so they will not pose a risk to the kernel or
other modules.
Provide a mechanism for controlling the export of symbols from
the module namespace. The EXPORT_SYMS variable may be set in the
Makefile to NO (export no symbols), a list of symbols to export,
or the name of a file containing a newline-seperated list of
symbols to be exported. Non-exported symbols are converted to
local symbols. If EXPORT_SYMS is not set, all global symbols are
currently exported. This behaviour is expected to change (to
exporting no symbols) once modules have been converted.
Reviewed by: peter (in principle)
Obtained from: green (kmod_syms.awk)
deischen [Thu, 10 Jan 2002 02:36:30 +0000 (02:36 +0000)]
Use a spare slot in the machine context to identify the context format
and to inherently verify its validity. Alpha signal frames and trap
frames are different; this field identifies which format the context
is
Set the machine context format (signal frame) before copying it out
when sending a signal.
iedowse [Thu, 10 Jan 2002 02:15:35 +0000 (02:15 +0000)]
Terminate requests in nfs_sigintr() if the filesystem is in the
process of being unmounted. This allows forced NFS unmounts to
complete even if there are processes stuck holding the mnt_lock
while the server is down. The mechanism is not ideal in that there
is a small chance we might accidentally cancel requests during a
failed non-forced unmount attempt on that filesystem, but this
is not really a big problem.
Also, move the tsleep() in nfs_nmcancelreqs() so that we do not
sleep in the case where there are no requests to be cancelled.
iedowse [Thu, 10 Jan 2002 01:59:30 +0000 (01:59 +0000)]
Change dounmount() to return EBUSY in the non-MNT_FORCE case if we
can't acquire the mnt_lock without blocking. Normally non-forced
unmount attempts return EBUSY quickly if any vnodes are active, so
this just extends that behaviour to cover the per-mount mnt_lock
too.
rwatson [Thu, 10 Jan 2002 01:25:35 +0000 (01:25 +0000)]
o Revert kern_sig.c#1.143, as cr_cansignal() doesn't currently permit
a number of desirable cases in which SIGIO/SIGURG are delivered. We'll
keep tweaking.
deischen [Wed, 9 Jan 2002 17:36:53 +0000 (17:36 +0000)]
Initialze a stack variable with NULL to unbreak buildworld with -Wall.
I don't know about anyone else, but the compiler was always aborting
on this stupid warning, and has been doing so for weeks.
nectar [Wed, 9 Jan 2002 13:13:51 +0000 (13:13 +0000)]
Fix the rxvt termcap entry:
= Get the alternate character set capabilities right.
= Enable color support for `rxvt'.
= Add `rxvt-mono' for no color support.
msmith [Wed, 9 Jan 2002 03:39:04 +0000 (03:39 +0000)]
Define the kern.cam sysctl in the cam layer, rather than multiply in several
peripheral drivers. Remove Ken's comment to the effect that this needed
to be done.
imp [Tue, 8 Jan 2002 20:52:23 +0000 (20:52 +0000)]
Catch up to NetBSD:
1.156 pooka; Socket Low-Power CF WLAN
1.155 ichiro; IBM Smart Capture Card II
1.152-154 ichiro; Fujitsu CF EtherCard and FMV-181,182,182A
1.151 christos; Symbol Spectrum24
jhb [Tue, 8 Jan 2002 18:05:03 +0000 (18:05 +0000)]
Fix some 32/64-bit bugs. IPv4 addresses are 32-bits, not longs. On the
alpha these bugs didn't cause any problems because it was little endian,
but on sparc64, we ended up with garbage for the IP address when we tried
to contact the server. (Usually 3.253.0.0)