Commit Graph

118543 Commits

Author SHA1 Message Date
imura
198a538571 Remove macros
htole{s,l,q}, letoh{s,l,q},  htobe{s,l,q}, betoh{s,l,q}
and replace it with more standard byteorder macros in our system.
2005-09-19 08:07:18 +00:00
sos
903949a3ce Dont wait for READY on ATAPI_IDENTIFY.
Fixes the losage of some ATAPI device that reported failed probing with
"timeout waiting for read DRQ".
2005-09-19 07:35:42 +00:00
philip
3a96c530e2 Add an option to stop 'mouse drift' in some defective/cheap mice. This stops
the pointer slowly wandering away on its own in an annoying way when the mouse
isn't physically moved.

PR:		bin/83970
Submitted by:	Lena -at- lena.kiev.ua
X-MFC after:	6.0-RELEASE
2005-09-19 06:58:39 +00:00
phk
5376d97a97 Fix configuration locking in MD.
Remove  md_mtx.

Remove GIANT from the mdctl device driver and avoid DROP_GIANT,
PICKUP_GIANT and geom events since we can call into GEOM directly
now.

Pick up Giant around vn_close().

Apply an exclusive sx around mdctls ioctl and preloading to protect
lists etc..

Don't initialize our lock (md_mtx or md_sx) from a
SYSINIT when there is a perfectly good pair of _fini/_init
functions to do it from.

Prune any final fractional sector from the mediasize to
keep GEOM happy.

Cleanups:

Unify MDIOVERSION check in (x)mdctlioctl()

Add pointer to start() routine to softc to eliminate a switch{}

Inline guts of mddetach().

Always pass error pointer to mdnew(), simplify implementation.
2005-09-19 06:55:27 +00:00
marcel
d94a6a6215 o Extend the suite to run more than just the driver. We need to run
mdconfig(8), because we need a disk to work on.
o  Extend the number of tests now that we have a disk.
o  Simplify the driver. All parameters are ASCII strings now.
2005-09-19 06:51:57 +00:00
imp
e4930c9f7b Last change to this file actually removed the oldcard compat code.
This change removes one last K&Rism.
2005-09-19 03:35:32 +00:00
imp
4e70215e6b Make sure that we call if_free(ifp) after bus_teardown_intr. Since we
could get an interrupt after we free the ifp, and the interrupt
handler depended on the ifp being still alive, this could, in theory,
cause a crash.  Eliminate this possibility by moving the if_free to
after the bus_teardown_intr() call.
2005-09-19 03:10:21 +00:00
marcel
37a0bbb7e5 Add the beginnings of a testsuite for testing GPT control requests.
The testsuite is based on a simple driver program that builds a
request from the arguments passed to it and issues the request to
Geom. The driver emits FAIL with the error string or PASS depending
on whether the request completed with an error or not. A -v option
has been added to the driver and causes the request to be dumped.
The -v option to prove(1) controls the -v option to the driver.

The testsuite itself contains a hash of which the key constitutes
the arguments and the value is the expected result.
2005-09-19 02:59:09 +00:00
marcel
c4edd4f5db o Don't cause a panic when the control request lacks a verb.
o  Don't set the error twice when the named class does not exist.
   It causes ioctl(2) to return with error EEXIST.
2005-09-18 23:54:40 +00:00
marcel
b00bab4473 Move the UUID generator into its own function, called kern_uuidgen(),
so that UUIDs can be generated from within the kernel. The uuidgen(2)
syscall now allocates kernel memory, calls the generator, and does a
copyout() for the whole UUID store. This change is in support of GPT.
2005-09-18 21:40:15 +00:00
rwatson
bfb05b4b93 Add three new read-only socket options, which allow regression tests
and other applications to query the state of the stack regarding the
accept queue on a listen socket:

SO_LISTENQLIMIT    Return the value of so_qlimit (socket backlog)
SO_LISTENQLEN      Return the value of so_qlen (complete sockets)
SO_LISTENINCQLEN   Return the value of so_incqlen (incomplete sockets)

Minor white space tweaks to existing socket options to make them
consistent.

Discussed with:	andre
MFC after:	1 week
2005-09-18 21:08:03 +00:00
imp
b96257fb77 No ED_NO_MIIBUS no more. Not one more or the same number of non positive options 2005-09-18 20:53:53 +00:00
imp
0fa86d9cb5 MFp4:
o eliminate the ED_NO_MIIBUS option.  Now, you need miibus to use ed with
  pccard.  If you have an old ISA or PCI card w/o a miibus, then you'll still
  be able to use the ed driver w/o miibus in the kernel.  If you have pccard
  you'll need mii now.  Most pccards these days have miibus, and many
  cards have ISSUES if you don't attach miibus.  issues I don't want to
  constantly rediagnose.
  - Add new media_ioctl, mediachg and tick function pointers.  The core
    driver will call these if they aren't NULL, or return an error if they
    are.
  - migrate remaining mii code into if_ed_pccard.
o include some notes from my datasheet fishing.  this may allow us to
  get media status from some pccards.
o Fix one bug that's common to many drivers.  call if_free(ifp) after
  we tear down the interrupt.  ed_intr() depends on ifp being there and
  freeing it while interrupts can still happen is, ummm, bad.
2005-09-18 20:51:34 +00:00
cognet
cbeddbcc36 Open the tty device and pass the fd for SNPSTTY.
MFC after:	3 days
2005-09-18 19:24:05 +00:00
cognet
007ea26251 Slightly change the API for the SNPSTTY ioctl so that the userland now
provides a file descriptor instead of a dev_t.

Discussed with:	phk
MFC after: 3 days
2005-09-18 19:23:35 +00:00
ache
470e1e4236 Just by allocating size*2 bytes we can't be sure that new size will be enough,
so change two
	if (size not enough) {
		reallocf(size*2);
	}
into
	while (size not enough) {
		reallocf(size*2);
	}
2005-09-18 17:50:58 +00:00
rwatson
64eedb0310 Take a first cut at cleaning up ifnet removal and multicast socket
panics, which occur when stale ifnet pointers are left in struct
moptions hung off of inpcbs:

- Add in_ifdetach(), which matches in6_ifdetach(), and allows the
  protocol to perform early tear-down on the interface early in
  if_detach().

- Annotate that if_detach() needs careful consideration.

- Remove calls to in_pcbpurgeif0() in the handling of SIOCDIFADDR --
  this is not the place to detect interface removal!  This also
  removes what is basically a nasty (and now unnecessary) hack.

- Invoke in_pcbpurgeif0() from in_ifdetach(), in both raw and UDP
  IPv4 sockets.

It is now possible to run the msocket_ifnet_remove regression test
using HEAD without panicking.

MFC after:	3 days
2005-09-18 17:36:28 +00:00
rodrigc
58834f5972 In mountd_precmd(), use rc_args, not mountd_args to
override the value of mountd_args.  This fixes the problem
where mountd_args was not properly being set if
weak_mountd_authentifcation="YES" was set in rc.conf.

PR:		conf/86260
Submitted by:	Thierry Herbelot <thierry at herbelot dot com>
MFC after:	3 days
2005-09-18 17:04:26 +00:00
brueffer
b548f294bc Add esp(4).
MFC after:	3 days
2005-09-18 16:22:20 +00:00
brueffer
a4229498a8 Change the DESCRIPTION section into HARDWARE, since it already lists
the supported hardware.

MFC after:	3 days
2005-09-18 16:20:38 +00:00
brueffer
b3810218d9 Use the correct function name as .Nm argument.
PR:		86169
Submitted by:	Toby Peterson <toby@apple.com>
MFC after:	3 days
2005-09-18 15:40:03 +00:00
keramida
1d904b58c3 Explain the use of `*' in master.passwd and that it's slightly
different from the use of `*' in /etc/passwd.

PR:		docs/86234
Submitted by:	Paul Hoffman <phoffman@above.proper.com>
MFC after:	1 week
2005-09-18 15:40:02 +00:00
netchild
a14edd9388 Add the KLD to the sndstat info. 2005-09-18 15:38:40 +00:00
netchild
76ba572aab Merge NetBSD fixes (except for 1.97 there should be no functional change):
1.94: ansify and KNF (NetBSD KNF).
	1.95: Fix DPRINTF (bug from change in 1.94).
	1.96: NetBSD specific.
	1.97: Fix memory leak reported by Ted Unangst as bug #3 on tech-kern.

Obtained from:	NetBSD
2005-09-18 15:13:06 +00:00
rwatson
585452751e Add a regression test for listen()'s backlog argument, both at time of
creation and at time of update using an additional call to listen().
This test also exercises SO_LISTENQLIMIT, a forthcoming socket option
that allows the retrieval (but not setting) of the queue limit.

Discussed with:	andre
2005-09-18 13:42:19 +00:00
marius
af8c8375af - In gem_ioctl() move the call to ether_ioctl() to the default case of
the switch statement in order to make this driver more like other
  Ethernet NIC drivers.
- In gem_attach() call gem_stop() in addition to gem_reset() to make
  sure the chip actually is stopped and not just reset.
- In gem_stop() also stop the gem_rint_timeout() callout in case the
  driver is compiled with GEM_RINT_TIMEOUT defined.

Merge some locking improvements from hme(4):
- Use callout_init_mtx() to close races between gem_stop() and gem_tick()
  as weel as gem_stop() and gem_rint() in case the driver is compiled
  with GEM_RINT_TIMEOUT defined.
- Use the driver lock instead of Giant in a bus dma callback.
- Lock the driver lock around mii operations.
- Cleanup locking in gem_ioctl().
- Remove redundant assertions that the driver lock is not held in
  gem_attach() and gem_detach() since mtx_lock() will assert that
  already since the driver lock is not recursive.
- Add callout_drain()'s to gem_detach() after calling gem_stop() to make
  sure that if softclock is running on another CPU and is blocked on our
  driver lock, we will wait until it has acquired the lock, seen that it
  was cancelled, dropped the lock, and awakened us so that we can safely
  destroy the mutex.
2005-09-18 13:23:19 +00:00
cperciva
b48ff0ab65 Add a note pointing out that certain information (IP address, list of
files fetched, FreeBSD release level) is transmitted to the portsnap
server when portsnap is run, but that this information is only used
anonymously and in aggregate.
2005-09-18 12:19:32 +00:00
netchild
bf4ea19965 ehcivar.h:
Synchronise with NetBSD upto rev 1.19:
		- Allow 32 chars in the saved vendor string.
		- Some NetBSD-only changes.
		- Some missing parts (define, variable).

ehci_pci.c:
	Add vendor ids for ATI and Philips.

	Add identification strings for the following:
		o ALi's M5239
		o AMD 8111
		o ATI SB200, SB400
		o Intel 6300ESB, ICH4, ICH5, ICH7
		o NVIDIA nForce 2, nForce 3, nForce 4
		o Philips ISP156x

ehcireg.h:
	We're at the same level as rev 1.18 from NetBSD.

usb_port.h:
	NetBSD/OpenBSD specific things

Obtained from:		NetBSD via DragonFly
No comment from:	usb@
2005-09-18 11:45:39 +00:00
rwatson
504eccc1e5 Fix spelling in a comment.
MFC after:	3 days
2005-09-18 10:46:34 +00:00
rwatson
2d8b6f2e27 Assert that (vp) is locked in fifo_close(), since we rely on the
exclusive vnode lock to synchronize the reference counts on struct
fifoinfo.

MFC after:	3 days
2005-09-18 10:44:50 +00:00
rwatson
1f48076149 Re-comment sbcompress() to explain what it is it does; it took me
quite a bit of reading to figure it out, and I want to avoid figuring
it out again.

Convert an if (foo) else printf("this is almost a panic") into a
KASSERT.

MFC after:	3 days
2005-09-18 10:30:10 +00:00
brueffer
e329b23e49 Sort the list of disk controllers by driver-name. The notable exception is
ata(4), which should stay on top.

MFC after:	3 days
2005-09-18 08:14:16 +00:00
brueffer
a528c6e560 Sort the list of ethernet devices by driver-name.
MFC after:	3 days
2005-09-18 07:46:05 +00:00
brueffer
767d367ab0 Sort list of supported hardware.
MFC after:	3 days
2005-09-18 07:32:49 +00:00
brueffer
a12862b193 Don't claim matcd(4) support, it was removed long ago.
MFC after:	3 days
2005-09-18 07:23:53 +00:00
csjp
6216087b31 Introduce a kernel config for the Mandatory Access Control framework.
This kernel config briefly describes some of the major MAC policies
available on FreeBSD. The hope is that this will raise the awareness
about MAC and get more people interested.

Discussed with:	scottl
2005-09-18 03:15:36 +00:00
nyan
0cc2091b50 Merged from src/sbin/fdisk/fdisk.c revision 1.81.
- Call gctl_free() to free resource allocated with gctl_get_handle().

MFC after:	3 days
2005-09-18 02:38:29 +00:00
imp
7808a8bb7e MFi386: pci attribute allocation fixes. 2005-09-18 01:42:43 +00:00
imp
55babf09d2 MFp4: Expose device_probe_child() 2005-09-18 01:32:09 +00:00
imp
d01ccbd79e Expose legacy_pcib_alloc_resource, and use it in the mptable pci bus
implementation, like other routines in the legacy bus.

This should fix problems with resource allocation on MP systems without
ACPI enabled.
2005-09-17 23:57:53 +00:00
csjp
02556fa478 Remove reference to bpfstat, this no longer exists. 2005-09-17 23:45:22 +00:00
csjp
7d71792fdf Implement new world order in VFS locking for ACLs. This will remove the
unconditional acquisition of Giant for ACL related operations. If the file
system is set as being MP safe and debug.mpsafevfs is 1, do not pickup
giant.

For any operations which require namei(9) lookups:

__acl_get_file
__acl_get_link
__acl_set_file
__acl_set_link
__acl_delete_file
__acl_delete_link
__acl_aclcheck_file
__acl_aclcheck_link

-Set the MPSAFE flag in NDINIT
-Initialize vfslocked variable using the NDHASGIANT macro

For functions which operate on fds, make sure the operations are locked:

__acl_get_fd
__acl_set_fd
__acl_delete_fd
__acl_aclcheck_fd

-Initialize vfslocked using VFS_LOCK_GIANT before we manipulate the vnode

Discussed with:	jeff
2005-09-17 22:01:14 +00:00
cperciva
c428222e35 Handle circular dependencies properly (via errx(3)) rather than dumping
core.  This bug was made visible by a recent change to the audio/timidity++
port, which now has itself as a run dependency.

Reported by:	Emil Mikulic, Andreas Klemm
2005-09-17 15:30:16 +00:00
joel
33a8c892b7 Bump .Dd
Reminded by:	simon
2005-09-17 15:13:22 +00:00
rodrigc
ef8331fe9f Clarify wording for -m flag.
PR:	docs/84704
2005-09-17 15:10:39 +00:00
rodrigc
29e27ce1a6 Call gctl_free() to free resource allocated with gctl_get_handle().
PR:		bin/84664
Submitted by:	Daan Vreeken <Danovitsch at Vitsch dot net>
MFC after:	3 days
2005-09-17 14:56:10 +00:00
rodrigc
c186ba9bf2 Fix so that color changes are not lost when the video mode changes.
PR:	bin/83553
Submitted by:	Dan Lukes <dan at obluda dot cz>
2005-09-17 12:52:04 +00:00
damien
e802c15322 o Add initial bits for IBSS support.
o Allow association with APs that do not broadcast SSID (with hints from
  Nick Hudson and Hajimu Umemoto).
o IFQ_DRV_PREPEND mbuf when h/w ring is full so it can be sent later.
o Increment if_oerrors when appropriate.
o Did some cleanup while I'm here.

MFC after:	1 day
2005-09-17 12:41:05 +00:00
joel
609346c61e Add cdce(4).
Reviewed by:	brueffer
2005-09-17 09:35:56 +00:00
joel
75e39fcad2 Add HARDWARE section.
Reviewed by:	brueffer
2005-09-17 09:20:16 +00:00