Commit graph

119109 commits

Author SHA1 Message Date
Warner Losh 2ae7662803 Merge in WIP from p4 for supporting ISA pccard bridges conforming to
the ExCA spec, and close cousins:

o Write an activate routine that works.
o merge a couple of items from oldcard before they are lost
o write a deactivate routine

I suspect we're still a ways away from having this work, but maybe for
6.1/5.5?
2005-10-14 04:47:18 +00:00
David Xu 5ad54b96fc Add ksiginfo_t which is a wrapper of siginfo_t but allows us to carry
more information which should not be in siginfo_t.

Reviewed by: jhb, deischen
2005-10-14 03:36:44 +00:00
David Xu ac2587e125 Add POSIX siginfo_t's si_code, this is for upcoming POSIX realtime signal
support in kernel.

Earlier patch reviewed by: jhb, deischen
2005-10-14 03:01:14 +00:00
Andrew Thompson fd6238a659 Further clean up the bridge hooks in if_ethersubr.c and ng_ether.c
- move the function pointer definitions to if_bridgevar.h
- move most of the logic to the new BRIDGE_INPUT and BRIDGE_OUTPUT macros
- remove unneeded functions from if_bridgevar.h and sort a little.
2005-10-14 02:38:47 +00:00
Alan Cox c71c8706fe Restore the UP optimization to reduce the number of TLB invalidations. The
previous revision only restored the MP optimization.

Describe the optimization strategy for TLB invalidations in a comment.

Reviewed by: ups@
MFC after: 3 days
2005-10-13 23:42:12 +00:00
Andrew Thompson 20a65f37a0 From 101 ways to panic your kernel.
Use bridge_ifdetach() to notify the bridge that a member has been detached. The
bridge can then remove it from its interface list and not try to send out via a
dead pointer.
2005-10-13 23:05:55 +00:00
Warner Losh 92a6736a5b If we can't probe the RTL80x9 for some reason, fall back to probing it
as a Novell NE-2000.  This is necessary for unpatched qemu working
correctly.  qemu claims to be a RTL8029, but doesn't implement the
RTL8029 specific registers at this time.  I've created patches for
that, but there's no reason we can't use qemu's emulation w/o these
patches.  This should make life easier for those folks that boot
FreeBSD via qemu.
2005-10-13 22:12:34 +00:00
Warner Losh fab4f06582 o Fix probing of rtl80x9 parts. We shouldn't be calling
ed_probe_generic8390 where we're calling it.  It will be done as part
  of ed_probe_Novel_generic after things are setup in a way that
  ed_probe_generic8390 will grok.
o Fix operator precedence botch that causes a panic when setting the media
  type for 10baseT connections.
o Save the type of device so that it prints with the rest of the probe.

# this should make it work with qemu again, but only if it has my patches
# to actually implement the RTL8029 specific registers.
2005-10-13 22:06:02 +00:00
Julian Elischer d0a2acd430 Consolidate two adjacent conditional blocks
I actually believe the code in question should be elsewhere (in the preceding
function).

MFC after:	1 week
2005-10-13 21:48:27 +00:00
Ruslan Ermilov e019908ee7 In detach method, move if_free() after bus_teardown_intr(). 2005-10-13 21:11:20 +00:00
John Baldwin 646abee6e3 Minor tweaks and fixups:
- Use device_printf() and if_printf() and remove nge_unit.
- Use callout_init_mtx() and remove nge_tick_locked() as nge_tick() is now
  always called with the driver lock held.
- Use M_ZERO to contigmalloc() when allocating nge_ldata.  It was possible
  for the random garbage to be used in certain cases otherwise.
- Cleanup attach error handling including no longer leaking nge_ldata.
- Add locking to the ifmedia callouts.
- Lock accesses to if_hwassist and if_capenable in nge_ioctl().

Submitted by:	Yuriy N. Shkandybin jura at networks dot ru (1, 3, 4)
Tested by:	Yuriy N. Shkandybin jura at networks dot ru
MFC after:	3 days
2005-10-13 20:22:07 +00:00
Joel Dahl 3a22b03d6c Add support for ATI IXP[234]00. 2005-10-13 18:28:26 +00:00
Hajimu UMEMOTO d02b24bc22 fixed a crush when either -lh or -ls option is used.
Obtained from:	KAME
2005-10-13 18:12:46 +00:00
Hajimu UMEMOTO 0625d8dcb8 setkey(8) is not WARNS=2 compliant, yet. 2005-10-13 17:57:34 +00:00
Ruslan Ermilov 199474fd36 Remove a stale comment. 2005-10-13 17:26:14 +00:00
Xin LI 7c775ce110 Language nits.
Submitted by:	nukq at newsmth org, me
2005-10-13 17:25:28 +00:00
Xin LI 9803e24996 Mention that hptmv(4) actually works for the amd64 platform as well.
Suggested by:	Mikhail Teterin [mi+mx aldan algebra com]
Submitted by:	me
PR:		docs/87302
2005-10-13 17:20:06 +00:00
John Baldwin 2ddd41fbec - Clarify when the softc is allocated. It is allocated when a device is
probed and attached, not on the first call to device_get_softc().
- Add a cross reference to DEVICE_PROBE regarding the caveats of using the
  softc in a driver's probe routine.
- Fix a grammar bogon.

PR:		docs/87176 (1)
Submitted by:	Devon H. O'Dell dodell at offmyserver dot com (1)
MFC after:	3 days
2005-10-13 16:57:53 +00:00
John Baldwin 10ebc7c038 - When bintime was added to this manpage, standalone .Nm changed from
microtime to bintime.  However, one standaline .Nm wasn't changed, and as
  a result, the manpage claimed that bintime was added in both 5.0 and 3.0.
  Fix by listing microtime explicitly.
- Fix a grammar bogon.

PR:		docs/87147 (1)
Submitted by:	Matthew Luckie (1)
MFC after:	3 days
2005-10-13 16:01:28 +00:00
Gleb Smirnoff eb2405dde8 - When flushing node input queue, check whether item has a callback. If
it does, then call it suppling ENOENT as error value.
- Add assert, that helped to catch the above error.
2005-10-13 11:55:50 +00:00
Andrew Thompson 9cff52f7f6 Clean up the if_bridge hooks a bit in if_ethersubr.c and ng_ether.c, move
the broadcast/multicast test to bridge_input().

Requested by:	glebius
2005-10-13 09:43:30 +00:00
Søren Schmidt ca107a4b1e Minor cleanups, no functional changes 2005-10-13 08:05:21 +00:00
Tim Kientzle db38abe649 1) Use GNU libtool to build shared libraries on non-FreeBSD
systems (or on FreeBSD systems when using ports).

2) Overhaul the versioning logic.  In particular,
   SHLIB_MAJOR number is now computed as "major+minor",
   which ensures library versions are the same for
   the FreeBSD build system and the portable
   libtool/autoconf/automake build system.
2005-10-13 05:51:38 +00:00
Stephan Uphoff f6f67ea993 Restore optimizations to reduce TLB shootdowns.
Alan Cox pointed out that they are really useful for
sendfile().

MFC after:	3 days
2005-10-13 03:55:25 +00:00
Doug Ambrisko db43cd0417 Fix tinderbox box by removing incomplete/bad spl usage. Proper giant free
locking is required in for aio.

Pointed out by:	imp
2005-10-12 22:33:22 +00:00
Pawel Jakub Dawidek 384c6482df First start rc.d/ipsec and then rc.d/mountcritremote, so we can mount
NFS file system over IPsec.

Suggested by:	Tomasz Pi³at <tomasz.pilat@axelspringer.pl>
2005-10-12 22:14:44 +00:00
Pawel Jakub Dawidek 73a9e4d2e3 setkey(8) was moved to /sbin/. 2005-10-12 21:43:47 +00:00
Pawel Jakub Dawidek a0b8a85fc6 setkey(8) was repo-copied from usr.sbin/ to sbin/.
This will allow for NFS mount of /usr over IPsec.

Discussed on:	arch@
2005-10-12 21:40:41 +00:00
Xin LI ce8da5b5ad MFen:
errata/article.sgml:		1.72	-> 1.73.2.1
	hardware/amd64/proc-amd64.sgml:	1.3.4.1	-> 1.5.2.1 [dummy merge]
	hardware/common/artheader.sgml:	1.6	-> 1.7
	hardware/common/dev.sgml:	1.277	-> 1.282.2.3
	hardware/common/intro.sgml:	1.6	-> 1.7
	installation/common/artheader.sgml: 1.5	-> 1.6
	installation/common/trouble.sgml: 1.17	-> 1.19
	installation/common/upgrade.sgml: 1.12	-> 1.13
	readme/article.sgml:	       1.31.2.2 -> 1.37
	relnotes/common/new.sgml:	1.849	-> 1.883.2.7
	Makefile:			1.3	-> 1.7

Follow the English revision to remove early adopter guide.

This is intended for a RELENG_6 and RELENG_6_0 merge.

Obtained from:	The FreeBSD Simplified Chinese Project (delphij)
2005-10-12 20:30:39 +00:00
Søren Schmidt 7ebce0231b Add support for the ATI IXP[234]00 series chipsets.
HW donated by: sentex
2005-10-12 20:00:26 +00:00
Andrew Thompson febd0759f3 Change the reference counting to count the number of cloned interfaces for each
cloner. This ensures that ifc->ifc_units is not prematurely freed in
if_clone_detach() before the clones are destroyed, resulting in memory modified
after free. This could be triggered with if_vlan.

Assert that all cloners have been destroyed when freeing the memory.

Change all simple cloners to destroy their clones with ifc_simple_destroy() on
module unload so the reference count is properly updated. This also cleans up
the interface destroy routines and allows future optimisation.

Discussed with:	brooks, pjd, -current
Reviewed by:	brooks
2005-10-12 19:52:16 +00:00
Warner Losh 680d937a4b Be pedantic here: We're converting from network byte order to host
byte order in these cases.  This is a nop in terms of the generated
code, but is logically incorrect.

PR: 73852
2005-10-12 19:12:46 +00:00
Bjoern A. Zeeb 33cd26c2ca Document that changes to nsswitch.conf might be needed when
compiling with NO_NIS.

PR:		bin/87221
Reviewed by:	simon
MFC after:	4 weeks
2005-10-12 19:05:22 +00:00
Maxim Konovalov d46ff6bd1e o INP_ONESBCAST is inpcb.inp_vflag flag not inp_flags. The confusion
with IP_PORTRANGE_HIGH leads to the incorrect checksum calculation.

PR:		kern/87306
Submitted by:	Rickard Lind
Reviewed by:	bms
MFC after:	2 weeks
2005-10-12 18:13:25 +00:00
Doug Ambrisko 9ac16277e3 Use a better EVFILT_LIO description!
Submitted by:	alc
2005-10-12 18:07:13 +00:00
Doug Ambrisko d7c39f45d5 This test can run now. 2005-10-12 18:04:18 +00:00
Doug Ambrisko 69cd28dacb Add in kqueue support to LIO event notification and fix how it handled
notifications when LIO operations completed.  These were the problems
with LIO event complete notification:
      -	Move all LIO/AIO event notification into one general function
	so we don't have bugs in different data paths.  This unification
	got rid of several notification bugs one of which if kqueue was
	used a SIGILL could get sent to the process.
      -	Change the LIO event accounting to count all AIO request that
	could have been split across the fast path and daemon mode.
	The prior accounting only kept track of AIO op's in that
	mode and not the entire list of operations.  This could cause
	a bogus LIO event complete notification to occur when all of
	the fast path AIO op's completed and not the AIO op's that
	ended up queued for the daemon.

Suggestions from:	alc
2005-10-12 17:51:31 +00:00
Tim Kientzle 7fb8511e34 Make some purely internal symbols static to reduce link pollution. 2005-10-12 15:38:45 +00:00
Robert Watson 606dcf085f When performing a VOP_LOOKUP() as part of UFS1 extended attribute
auto-start, set cnp.cn_lkflags to LK_EXCLUSIVE.  This flag must now
be set so that lockmgr knows what kind of lock to acquire, and it
will panic if not specified.  This resulted in a panic when using
extended attributes on UFS1 as of locking work present in the 6.x
branch.

This is a RELENG_6_0 merge candidate.

Reported by:	lofi
MFC after:	3 days
2005-10-12 14:18:58 +00:00
Joel Dahl d528ad8566 New release notes: snd_mss(4) manual page added. 2005-10-12 12:24:37 +00:00
Gleb Smirnoff 32b33288f7 After rev. 1.103 the oitem and ierror are no longer needed, remove them. 2005-10-12 10:18:44 +00:00
Yaroslav Tykhiy 9c4e83a46c __MAKE_CONF doesn't really belong here because it is
a FreeBSD extension of sys.mk.  A xref to make.conf(5)
will be enough here.

Requested by:	ru
2005-10-12 10:09:36 +00:00
Philip Paeps 7691747aac Unbreak the net.inet6.tcp6.getcred sysctl.
This makes inetd/auth work again in IPv6 setups.

Pointy hat to:	ume/KAME
2005-10-12 09:24:18 +00:00
Hajimu UMEMOTO 9129d539e2 AES counter mode uses 8byte IV, not 16 bytes.
Obtained from:	NetBSD
2005-10-12 09:13:48 +00:00
Diomidis Spinellis 9f5c1d1955 Move execve's access time update functionality into a new
vfs_mark_atime() function, and use the new function for
performing efficient atime updates in mmap().

Reviewed by:	bde
MFC after:	2 weeks
2005-10-12 06:56:00 +00:00
Tim Kientzle f230dd9adb Minor style nit: tab instead of space after #define 2005-10-12 03:28:38 +00:00
Tim Kientzle a3c4173bb8 When reading GNU-style sparse archive entries, handle
the first sparse block correctly (we used to assume
that the first sparse block was always at offset zero).
2005-10-12 03:27:46 +00:00
Tim Kientzle 52a88d3b57 In pax interchange format, use UTF8 for writing
link names, usernames, or group names that contain
non-ASCII characters.

In particular, this corrects an inconsistency reported
by Ed Maste when archiving symlinks with odd characters:
long symlinks would get preserved, short ones would
be changed.
2005-10-12 03:26:09 +00:00
Bill Paul 85c13a8375 Convert ndis_set_info() and ndis_get_info() from using msleep()
to KeSetEvent()/KeWaitForSingleObject(). Also make object argument
of KeWaitForSingleObject() a void * like it's supposed to be.
2005-10-12 03:02:50 +00:00
Stephan Uphoff 4c0e268adf Ensure that a thread stays on same CPU when calculating per CPU
TLB shootdown requirements. Otherwise a CPU may not get the needed
TLB invalidation.

The PTE valid and access flags can not be used here to avoid TLB
shootdowns unless sf->cpumask == all_cpus.
( Otherwise some CPUs may still hold an even older entry in the TLB)
Since sf_buf_alloc mappings are normally always used this is
also not really useful and presetting accessed and modified
allows the CPU to speculatively load the entry into the TLB.

Both bugs can cause random data corruption.

MFC after:	3 days
2005-10-12 01:41:48 +00:00