kris [Tue, 8 May 2001 06:58:25 +0000 (06:58 +0000)]
GC some dead code relating to running df on unmounted block devices,
and remove the setgid operator bit from the installed binary: if you want
to view free disk space on an unmounted device, you should have read
permissions to access it.
kris [Tue, 8 May 2001 06:19:06 +0000 (06:19 +0000)]
Sync up with OpenBSD. Too many changes to note, but the major features
are:
* Implement cpio compatibility mode when pax is invoked as cpio
* Extend tar compatibility mode to cover many of the GNU tar single-letter
options (bzip2 mode, aka -y/-j is not present in OpenBSD). When
invoked as tar, pax is now full-featured enough for use by the ports
collection to extract distfiles and create packages.
* Many bug fixes to the operation of pax and the tar compatibility modes
* Code fixes for things like correct string buffer termination.
I tried to preserve existing FreeBSD fixes to this utility; please let me
know if I have inadvertently spammed something.
imp [Mon, 7 May 2001 22:28:05 +0000 (22:28 +0000)]
Set the slot pointer in the pc98 case. Correct the name of the bridge
chip to the one that the Japanese use. Now we get insert/remove
events on my PC-9821Ne. More work in bus space is needed to make
drivers work.
horikawa [Mon, 7 May 2001 22:15:18 +0000 (22:15 +0000)]
Fix typos.
o replace `of possible' with `if possible'
o VOP_SETACL(9) is modified to say about `ACL' instead of `extended
attributed'
o EOPNOTSUPP of VOP_SETEXTATTR(9) is modified to say about
VOP_SETEXTATTR(9) instead of VOP_GETEXTATTR(9)
Reviewed by: Robert Watson <rwatson@FreeBSD.org>,
Chris Costello <chris@calldei.com>
msmith [Mon, 7 May 2001 21:46:44 +0000 (21:46 +0000)]
Minor updates:
- Rework of twe_report_request to use the command status value rather
than the flags register. (Joel Jacobson @ 3ware)
- Update to match some changes in -current vs. stable.
nsayer [Mon, 7 May 2001 20:38:39 +0000 (20:38 +0000)]
Add PAM support to SRA authentication. Cribbed mostly from ftpd. This
doesn't solve the problem of root being allowed to log in, but that sort
of thing is something PAM should be doing anyway.
knu [Mon, 7 May 2001 18:07:29 +0000 (18:07 +0000)]
Properly copy the P_ALTSTACK flag in struct proc::p_flag to the child
process on fork(2).
It is the supposed behavior stated in the manpage of sigaction(2), and
Solaris, NetBSD and FreeBSD 3-STABLE correctly do so.
The previous fix against libc_r/uthread/uthread_fork.c fixed the
problem only for the programs linked with libc_r, so back it out and
fix fork(2) itself to help those not linked with libc_r as well.
PR: kern/26705
Submitted by: KUROSAWA Takahiro <fwkg7679@mb.infoweb.ne.jp>
Tested by: knu, GOTOU Yuuzou <gotoyuzo@notwork.org>,
and some other people
Not objected by: hackers
MFC in: 3 days
imp [Mon, 7 May 2001 16:50:34 +0000 (16:50 +0000)]
Disable the card after sending the removed event up to the pccard
layer. This fixes an ordering problem that would cause the ISR for
the device to run with now power applied to the device. Most cards
failed to deal with this gracefully, and thus would hang on card
eject.
The power down event, for those keeping score, is what causes the
interrupt for the card.
Many folks in the Japanese nomads list have reported this, so I'll be
MFCing quickly for their benefit.
rwatson [Sun, 6 May 2001 16:15:42 +0000 (16:15 +0000)]
o First step in cleaning up authorization code for the posix4
implementation. Move from direct uid 0 comparision to using suser_xxx()
call with the same semantics. Simplify CAN_AFFECT() macro as passed
pcred was redundant. The checks here still aren't "right", but they
are probably "better".
deischen [Sun, 6 May 2001 02:13:12 +0000 (02:13 +0000)]
When setting up the frame to invoke a signal handler, preserve the
%fs and %gs registers instead of setting them to known sane values.
%fs is going to be used for thread/KSE specific data by the new
threads library; we'll want it to be valid inside of signal handlers.
According to bde, Linux preserves the state of %fs and %gs when setting
up signal handlers, so there is precedent for doing this.
The same changes should be made in the Linux emulator, but when made,
they seem to break (at least one version of) the IBM JDK for Linux
(reported by drew).
jdp [Sat, 5 May 2001 23:21:05 +0000 (23:21 +0000)]
Performance improvements for the ELF dynamic linker. These
particularly help programs which load many shared libraries with
a lot of relocations. Large C++ programs such as are found in KDE
are a prime example.
While relocating a shared object, maintain a vector of symbols
which have already been looked up, directly indexed by symbol
number. Typically, symbols which are referenced by a relocation
entry are referenced by many of them. This is the same optimization
I made to the a.out dynamic linker in 1995 (rtld.c revision 1.30).
Also, compare the first character of a sought-after symbol with its
symbol table entry before calling strcmp().
On a PII/400 these changes reduce the start-up time of a typical
KDE program from 833 msec (elapsed) to 370 msec.
joerg [Sat, 5 May 2001 14:42:06 +0000 (14:42 +0000)]
Add q quirk for the old SONY SMO drive i've been sitting upon in my
private tree for too long now. This (pre SCSI-2) drive returns a
mystic code when the medium is inserted but not spun up.
kris [Sat, 5 May 2001 01:10:13 +0000 (01:10 +0000)]
Add -z flag to pax to allow gzipping of archive output. Add -z and -Z (gzip
and compress) to pax when used in tar mode (invoked as 'tar') for
compatibility with GNU tar.
bzip2 functionality for further GNU tar compatibility will be added at a
later date.
deischen [Fri, 4 May 2001 20:37:07 +0000 (20:37 +0000)]
Move the check for a pending signals to after the thread has been
placed in any scheduling queue(s). The process of dispatching
signals to a thread can change its state which will attempt to add
or remove the thread from any scheduling queue to which it belongs.
This can break some assertions if the thread isn't in the queue(s)
implied by its state.
When adding dispatching a pending signal to a thread, be sure to
remove the signal from the threads set of pending signals.
joerg [Fri, 4 May 2001 19:50:34 +0000 (19:50 +0000)]
Add infrastructure that allows to build docs and RELNOTESng without
the need to also create the entire ports tree during a `make release'.
The main motivation behind this is that handling the ports tree still
takes a huge amount of time due to the large number of directories
involved, even on modern disks.
The solution is to establish a list of dependent ports that are
minimally required. This list needs to be manually maintained in case
the doc ports toolchain changes, and has thus been broken out into a
separate file Makefile.inc.docports. (release/Makefile has gotten
overly lengthy already anyway.)
dillon [Fri, 4 May 2001 18:43:19 +0000 (18:43 +0000)]
Raise the SysV shared memory defaults to more reasonable values.
Mainly increases the shared memory limit from 4M to 32M (approx).
Many more programs these days use SysV shared memory, especially X-related
programs.
jhb [Fri, 4 May 2001 17:15:16 +0000 (17:15 +0000)]
- Move state about lock objects out of struct lock_object and into a new
struct lock_instance that is stored in the per-process and per-CPU lock
lists. Previously, the lock lists just kept a pointer to each lock held.
That pointer is now replaced by a lock instance which contains a pointer
to the lock object, the file and line of the last acquisition of a lock,
and various flags about a lock including its recursion count.
- If we sleep while holding a sleepable lock, then mark that lock instance
as having slept and ignore any lock order violations that occur while
acquiring Giant when we wake up with slept locks. This is ok because of
Giant's special nature.
- Allow witness to differentiate between shared and exclusive locks and
unlocks of a lock. Witness will now detect the case when a lock is
acquired first in one mode and then in another. Mutexes are always
locked and unlocked exclusively. Witness will also now detect the case
where a process attempts to unlock a shared lock while holding an
exclusive lock and vice versa.
- Fix a bug in the lock list implementation where we used the wrong
constant to detect the case where a lock list entry was full.
jhb [Fri, 4 May 2001 16:13:28 +0000 (16:13 +0000)]
Don't hold the process mutex across calls to FREE() since the vm system
uses lockmgr locks and this leads to a lock order reversal. At this point
in wait1() the process is not on any process lists or in the process tree,
so no other process should be able to find it or have a reference to it
anyways, so the locking is not needed.
mckusick [Fri, 4 May 2001 05:49:28 +0000 (05:49 +0000)]
Refinement to revision 1.16 of ufs/ffs/ffs_snapshot.c to reduce
the amount of time that the filesystem must be suspended. The
current snapshot is elided as well as the earlier snapshots.
bmah [Thu, 3 May 2001 21:59:35 +0000 (21:59 +0000)]
More RELNOTESng infrastructure fixup: The directory layout of
stylesheets (particularly with respect to translations) is now similar
to that of the doc/ tree. Added a customization for HTML page footers
(this is the only reader-visible change).
obrien [Thu, 3 May 2001 21:37:06 +0000 (21:37 +0000)]
Total hack to fix broken bootstrap. Add -I/usr/src/include at the tail
end of the include searching. We really need a real fix for the issue of
which set of headers to use in compiling the cross-tools -- /usr/include,
or /usr/src/include.
dwmalone [Thu, 3 May 2001 11:26:46 +0000 (11:26 +0000)]
Avoid dividing by zero if kd->procbase->ki_structsize is uninitalised.
(I'm testing the numerator rather than the denominator, which looks
weird, but is the right thing to do here).