Bruce A. Mah [Tue, 2 Oct 2001 04:59:33 +0000 (04:59 +0000)]
Fix organizational nits: Move Cardbus/NEWCARD release note to PCCARD
section. Move release notes for tunneling-type drivers from network
protocol section to NICs section for consistency (tap(4) release notes
were combined).
Matthew Dillon [Tue, 2 Oct 2001 04:26:58 +0000 (04:26 +0000)]
Backout the last commit. The problem is actually much worse then I
first thought and may require serious work to the VOP_RENAME() api itself.
Basically, by the time the VOP_RENAME() function is called, it's already
too late.
Matt Jacob [Tue, 2 Oct 2001 00:13:44 +0000 (00:13 +0000)]
Remove all OpenBSD/NetBSD code. It was the right place to start from, but
it now really gets in the way.
This allows us to fix several problems- not least of which was problems
of ordering about when you'd have a device softc for an miibus child
available or not. Move some steps of things around.
Put the ifnet/arpcom structure at the head of the softc (PR 29249).
Don't do tx gc in the interrupt service routine- that seems to make
things a bit more efficient.
Enable jumbo support by default- but this version of 'jumbo' is broken
because it really is just using multiple tfd/rfd's to match a packet,
which will never be > CLSIZE anyway.
This should begin the first steps toward cleaning this driver up.
Fix ID's after a total boch CVS merge due to multiple people making
commits to these files.
As I sing to CVS:
Have I told you lately that I hate your guts? Have I told you
all SCM's are above you? You fill my heart with pain, take away
all my merging joy, grow my troubles that's what you do."
John Baldwin [Mon, 1 Oct 2001 22:50:30 +0000 (22:50 +0000)]
Move the ap boot spin lock earlier in the lock order before the sio(4)
lock since we occasionally call printf() while holding the ap boot lock
which can call down into the sio(4) driver if using a serial console.
Warner Losh [Mon, 1 Oct 2001 20:15:11 +0000 (20:15 +0000)]
Add d_thread_t. This is a typedef for struct thread in -current and
will be one for struct proc in stable. those drivers needing to have
cross version portability should use d_thread_t instead of inventing
their own means. Non-drivers, and drivers that either only run on
-current or must look under the covers of the struct proc/thread
should must not use this.
As noted in arch@, this minorly violates style(9), but the sys/conf.h
devsw already violates this and all I'm doing is extending the
violation to ease the burdon on device driver writers. It was judged
that this minor violation, which doesn't impact userland or those
people not using it, was preferable to the alternatives (eg #define
proc thread). C does not allow a way to rename or alias structs
easily, so we fall back to using a typedef.
Bump FreeBSD_version to reflect this change (porters guide to be done
in a separate commit).
if (mp->mnt_stat.f_owner != p->p_ucred->cr_uid) {
error = suser_td(td);
if (error) {
unwrap_lots_of_stuff();
return (error);
}
}
This makes the code more readable when complex clauses are in use,
and minimizes conflicts for large outstanding patchsets modifying the
kernel authorization code (of which I have several), especially where
existing authorization and context code are combined in the same if()
conditional.
Jonathan Lemon [Mon, 1 Oct 2001 18:03:56 +0000 (18:03 +0000)]
sppp rewrites the interface's ip address directly; this breaks when the
address is looked up via a hash table. Add a hack to move the entry to
a new hash bucket when the address changes.
Luigi Rizzo [Mon, 1 Oct 2001 16:58:28 +0000 (16:58 +0000)]
Add customised version of login for picobsd images on -CURRENT.
This version is basically the same one as login.c 1.67, and does
not require the use of PAM.
Kazutaka YOKOTA [Mon, 1 Oct 2001 11:48:02 +0000 (11:48 +0000)]
Fix the function CD(): "Clear to the end of the screen".
- When the video BIOS is called to clear the region (x, y)-(79, 24)
(by scrolling), the slashed region in Fig.1 is cleared. CD() is
supposed to clear the region shown in Fig.2.
x x
+-------+ +-------+
| | | |
y| ////| y| ////|
| ////| |///////|
| ////| |///////|
+-------+ +-------+
Fig.1 Fig.2
Kazutaka YOKOTA [Mon, 1 Oct 2001 11:42:25 +0000 (11:42 +0000)]
This is white-space only change. No functional difference.
- Be consistent about placing spaces around keywords and
operators; don't mix statements like "if(A==B)" and "if (X == Y)",
"return(0)" and "return (-1)", "P=10" and "Q = 0", etc.
- Consitently indent lines. It's not good to indent by 8 columns
in one part of the file, and by 4 columns in the other part.
Matthew Dillon [Mon, 1 Oct 2001 04:33:35 +0000 (04:33 +0000)]
After extensive testing it has been determined that adding complexity
to avoid removing higher level directory vnodes from the namecache has
no perceivable effect and will be removed. This is especially true
when vmiodirenable is turned on, which it is by default now. ( vmiodirenable
makes a huge difference in directory caching ). The vfs.vmiodirenable and
vfs.nameileafonly sysctls have been left in to allow further testing, but
I expect to rip out vfs.nameileafonly soon too.
I have also determined through testing that the real problem with numvnodes
getting too large is due to the VM Page cache preventing the vnode from
being reclaimed. The directory stuff made only a tiny dent relative
to Poul's original code, enough so that some tests succeeded. But tests
with several million small files show that the bigger problem is the VM Page
cache. This will have to be addressed by a future commit.
[the previous commit to pseudofs_vncache.c got the wrong log message]
YA pseudofs megacommit, part 2:
- Merge the pfs_vnode and pfs_vdata structures, and make the vnode cache
a doubly-linked list. This eliminates the need to walk the list in
pfs_vncache_free().
- Add an exit callout which revokes vnodes associated with the process
that just exited. Since it needs to lock the cache when it does this,
pfs_vncache_mutex needs MTX_RECURSE.
- Add a third callback to the pfs_node structure. This one simply returns
non-zero if the specified requesting process is allowed to access the
specified node for the specified target process. This is used in
addition to the usual permission checks, e.g. when certain files don't
make sense for certain (system) processes.
- Make sure that pfs_lookup() and pfs_readdir() don't yap about files
which aren't pfs_visible(). Also check pfs_visible() before performing
reads and writes, to prevent the kind of races reported in SA-00:77 and
SA-01:55 (fork a child, open /proc/child/ctl, have that child fork a
setuid binary, and assume control of it).
Warner Losh [Mon, 1 Oct 2001 03:59:13 +0000 (03:59 +0000)]
Fix the damage caused in the last commit:
give the correct workaround for compat library problem
give a better acpi workaround.
Also include note about TARGET_ARCH.
Matt Jacob [Mon, 1 Oct 2001 03:48:42 +0000 (03:48 +0000)]
Begin to implement target mode that for Fibre Channel has a private
per-command component that we *don't* try and pass thru CAM. CAM just
is too risky and too much of a pain- structures get copied, but not
all info of interest can be considered safely transported thru all
consumers (including user space) from the incoming ATIO to the outgoing
CTIO- it's just much safer to have a buddy structure, identified by the
command's tag which *does* make it thru safely.
Pay attention to link speed and report 200MB/s xfer speed for a
23XX card in 2GPs mode.
Greg Lehey [Mon, 1 Oct 2001 02:35:08 +0000 (02:35 +0000)]
Correct spelling of Labour Day in Australia, and clarify which states observe it.
Add Queen's Birthday in WA.
Expand unnecessary abbreviation.
Correct rules for German Buss- und Betttag.
Disunite Ivory Coast and Panama.