Mike Smith [Wed, 30 Apr 1997 03:12:09 +0000 (03:12 +0000)]
Use our copy of dlfcn.h, not the version in /usr/include, which may not
be up-to-date when we are building.
Submitted by: Terry Lambert <terry@lambert.org>
(1) Change logic for dependency: instead of defining "is_depended"
(default: IS_DEPENDED?=install) target on the depended port, call
DEPENDS_TARGET (default: install) from the depending port.
Other than being more flexible (some ports don't require the
dependency to be fully installed: see ghostscript4), this seems
like a more natural thing to do. (I never understood the
convoluted logic that was used before.)
By building packages with "DEPENDS_TARGET=package", I can avoid
file-sharing problems (like gs3 binary going into the gs4
package).
(2) Add new variable PATCH_SITE_SUBDIR and separate it from
MASTER_SITE_SUBDIR. Fixes linuxls port and is a correct thing to
do anyway.
Initially suggested and reviewed by: fenner
(3) Add new variable MASTER_SITE_LOCAL for local ports. Defaults to
LOCAL_PORTS subdir on ftp.freebsd.org's distfiles dir.
Submitted by: jkh
In comp_vgaregs skip cursor shape and 4 unused bytes (6 total)
instead of 2 unused.
Previus code broke syscons on Diamond Stealth 3D 3000
(video mode ptr was NULL with no real reason)
Peter Wemm [Tue, 29 Apr 1997 20:05:48 +0000 (20:05 +0000)]
Use a common numbering of the tty and net software interrupt levels
between the SMP and non-SMP case. It simplifies the #ifdef's, since
NHWI changes (at least for the moment) when APIC's are involved.
Implement Kerberized rcmd for rdump/rrestore. This is lacking the
options one would normally expect to set the realm, enable encryption,
and whatnot, but this actually is able to contact the remote server,
so at least it's a start. (As a bonus, the stripped static binary is
unquestionably exportable.)
Userland part of ISO9660 multi-session support. mount_cd9660(8) will
now by default mount the last data track (thus last session), as
opposed to the very first session it has been mounting previously.
This is consistent with the ISO9660 multi-session idea, and the way
other operating systems are working.
There's support to mount arbitrary sessions using the -s option. This
way, you can simulate multi-session CDs on something like vn devices
that don't support CDIO* ioctl commands. You can also force the
historic behaviour with
Dynamically adjust size of displayed username to the longest username which
appears, not the longest _maximum_ username (this should probably also go
into 2.2, for the day when we bump up the username length there too).
John Polstra [Tue, 29 Apr 1997 03:24:57 +0000 (03:24 +0000)]
Fix a bug that caused some false mismatches when both FNM_PATHNAME
and FNM_LEADING_DIR were specified and the pattern ended with "*".
Example: pattern="src/usr.sbin/w*", string="src/usr.sbin/watch/watch.8,v".
This should match, but did not.
John Polstra [Tue, 29 Apr 1997 02:11:48 +0000 (02:11 +0000)]
Set the N_EXT (external) flag for all weak symbols. It makes no
sense to have a weak symbol that is not externally visible. This
fixes many of the "relocation burb" warnings produced when compiling
C++ code with "-fpic". Beyond eliminating warnings, it also makes
some things work that didn't work before.
Revised fix for locking violation when unionfs calls vput with
UN_KLOCK flag.
When UN_KLOCK is set, VOP_UNLOCK should keep uppervp locked and clear
UN_ULOCK flag. To do this, when UN_KLOCK is set, (1) union_unlock
clears UN_ULOCK and does not clear UN_KLOCK, (2) union_lock() does not
access uppervp and does not clear UN_KLOCK, and (3) callers of
vput/VOP_UNLOCK should clear UN_KLOCK. For example, vput becomes:
Bill Paul [Mon, 28 Apr 1997 14:18:38 +0000 (14:18 +0000)]
Back out one of my paranoia tests from the last commit here; yp_access()
already deals with it appropriately. (You know you've been working too
hard when you forget how your own code works.)
Steve Price [Mon, 28 Apr 1997 03:03:23 +0000 (03:03 +0000)]
Shamelessly pilfer most of NetBSD's Makefile so that the
problem with 'make -j n' and no .depend file goes away.
I think Bruce mentioned this somewhere on one of the
mailing lists.
Steve Passe [Mon, 28 Apr 1997 00:02:22 +0000 (00:02 +0000)]
Submitted by: Wolfgang Helbig <helbig@MX.BA-Stuttgart.De>
make world fails when it tries to build LKMs because the files
opt_smp.h
opt_smp_invltbl.h
are missing.
This patch to /usr/src/share/mk/bsd.kmod.mk is a temporary workaround.
Note that LKMs built in this way may or may NOT work properly with an
SMP kernel.
Steve Passe [Sun, 27 Apr 1997 21:18:59 +0000 (21:18 +0000)]
informal discussion between Bruce Evans <bde@zeta.org.au>,
Peter Wemm <peter@spinner.DIALix.COM>, Steve Passe <smp@csn.net>
removed all the IPI_INTS code.
made the XFAST_IPI32 code default, renaming Xfastipi32 to Xinvltlb.
cleanup of i386/isa/isa_device.h to eliminate SMP dependancies:
made the id_irq member of struct isa_device an u_int.
made the id_drq member of struct isa_device an int.
removed all other '#ifdefs' concerning SMP & APIC_IO.
removed SMP/APIC_IO dependancies from if_ze.c.
Peter Wemm [Sun, 27 Apr 1997 20:01:47 +0000 (20:01 +0000)]
Create a special option file "opt_global.h" which is included by all
source files via a 'cc -include opt_global.h ...' type arrangement.
This means we can untangle certain header files.
options.i386 has a placeholder until it has a real member so we can avoid
having to teach config about it just yet.
The long-awaited mega-massive-network-code- cleanup. Part I.
This commit includes the following changes:
1) Old-style (pr_usrreq()) protocols are no longer supported, the compatibility
glue for them is deleted, and the kernel will panic on boot if any are compiled
in.
2) Certain protocol entry points are modified to take a process structure,
so they they can easily tell whether or not it is possible to sleep, and
also to access credentials.
3) SS_PRIV is no more, and with it goes the SO_PRIVSTATE setsockopt()
call. Protocols should use the process pointer they are now passed.
4) The PF_LOCAL and PF_ROUTE families have been updated to use the new
style, as has the `raw' skeleton family.
5) PF_LOCAL sockets now obey the process's umask when creating a socket
in the filesystem.
As a result, LINT is now broken. I'm hoping that some enterprising hacker
with a bit more time will either make the broken bits work (should be
easy for netipx) or dike them out.
There have been a number of reports that the syscons doesn't work
properly if i586_bcopy() is enabled.
The problem prevented users from installing 2.2(.1)-RELEASE. The
symptom is that the system looks frozen during device probe or just
before the main installation menu. The workaround was to specify the
flag 0x01 to the npx device so that i586_bcopy() is disabled.
The patch forces the syscons to call generic_bcopy() when copying
to/from the video memory, even if CPU is Pentium and i586_bcopy() is
enabled. i586_bcopy() is still called for copy operations between
non-video memory regions.
PR: kern/2277, kern/3066, kern/3107, kern/3134
2) video mode parameter table problem
The syscons reads and uses the video mode parameter table provided by
the VGA BIOS to set VGA registers when changing video mode and
modifying font data. It appears that in some VGA BIOSes the table is
not ordered as the syscons expects, and this leads to screen
corruption.
The problem prevented users from installing 2.2(.1)-RELEASE. The
symptom is the corrupt screen or strange vertical lines soon after the
kernel is loaded into memory (just after the kernel decompression).
The patch performs simplistic test and if it fails, set video_mode_ptr
to NULL so that the video mode switching won't happen.
This is an interim kludge. There should be a better way to deal with
the problem.
PR: kern/2498, conf/2775, conf/3354
Reviewed by: sos
Tested by: PR originators (not all of them, though)