Commit graph

125106 commits

Author SHA1 Message Date
Andrew Thompson 690d79381a Allow gif interfaces to be added as span ports, the user may want to send a
copy of all packets to the other side of the world.
2006-06-20 21:28:18 +00:00
Paul Saab fb595e7a9b Cleanup dcmd firmware processing into a single function, mfi_dcmd_command
to avoid duplication and mistakes when setting up firmware commands
for submission.

Reviewed by:	scottl
2006-06-20 21:06:05 +00:00
John Baldwin 880eb8c1ef Add a new section in this file for functions that are only exported by the
linker for use in the linker class handlers.  Move linker_add_class(),
linker_file_unload(), linker_load_dependencies(), and linker_make_file()
into this section.
2006-06-20 20:59:55 +00:00
John Baldwin aeeb017bd6 - Push Giant down into linker_reference_module().
- Add a new function linker_release_module() as a more intuitive complement
  to linker_reference_module() that wraps linker_file_unload().
  linker_release_module() can either take the module name and version info
  passed to linker_reference_module() or it can accept the linker file
  object returned by linker_reference_module().
2006-06-20 20:54:13 +00:00
Alan Cox f05446648b Change get_pv_entry() such that the call to vm_page_alloc() specifies
VM_ALLOC_NORMAL instead of VM_ALLOC_SYSTEM when try is TRUE.  In other
words, when get_pv_entry() is permitted to fail, it no longer tries as
hard to allocate a page.

Change pmap_enter_quick_locked() to fail rather than wait if it is
unable to allocate a page table page.  This prevents a race between
pmap_enter_object() and the page daemon.  Specifically, an inactive
page that is a successor to the page that was given to
pmap_enter_quick_locked() might become a cache page while
pmap_enter_quick_locked() waits and later pmap_enter_object() maps
the cache page violating the invariant that cache pages are never
mapped.  Similarly, change
pmap_enter_quick_locked() to call pmap_try_insert_pv_entry() rather
than pmap_insert_entry().  Generally speaking,
pmap_enter_quick_locked() is used to create speculative mappings.  So,
it should not try hard to allocate memory if free memory is scarce.

Add an assertion that the object containing m_start is locked in
pmap_enter_object().  Remove a similar assertion from
pmap_enter_quick_locked() because that function no longer accesses the
containing object.

Remove a stale comment.

Reviewed by: ups@
2006-06-20 20:52:11 +00:00
Paul Saab 83ff9c1304 Clean up some comments and device printf failures in mfi_get_log_state
and mfi_get_controller_info.
2006-06-20 20:41:54 +00:00
Alexander Leidinger aff681d258 regen after change to syscalls.master 2006-06-20 20:41:29 +00:00
John Baldwin f462ce3edd Make linker_find_file_by_name() and linker_find_file_by_id() static to
simplify linker locking.  The only external consumers now use
linker_file_foreach().
2006-06-20 20:41:15 +00:00
Alexander Leidinger 502195ac72 Switch to using the DUMMY infrastructure instead of UNIMPL for the new
syscalls. This way there will be a log message printed to the console
(this time for real).

Note: UNIMPL should be used for syscalls we do not implement ever, e.g.
syscalls to load linux kernel modules.

Submitted by:	rdivacky
Sponsored by:	Goole SoC 2006
P4 IDs:		99600, 99602
2006-06-20 20:38:44 +00:00
Jason Evans 0fc8aff0c4 Add a missing case for the switch statement in arena_run_reg_dalloc(). [1]
Fix a leak in chunk_dealloc(). [2]

Reported by:	[1] djam8193ah@hotmail.com,
		[2] Ville-Pertti Keinonen <will@exomi.com>
2006-06-20 20:38:25 +00:00
John Baldwin 932151064a - Add a new linker_file_foreach() function that walks the list of linker
file objects calling a user-specified predicate function on each object.
  The iteration terminates either when the entire list has been iterated
  over or the predicate function returns a non-zero value.
  linker_file_foreach() returns the value returned by the last invocation
  of the predicate function.  It also accepts a void * context pointer that
  is passed to the predicate function as well.  Using an iterator function
  avoids exposing linker internals to the rest of the kernel making locking
  simpler.
- Use linker_file_foreach() instead of walking the list of linker files
  manually to lookup ndis files in ndis(4).
- Use linker_file_foreach() to implement linker_hwpmc_list_objects().
2006-06-20 20:37:17 +00:00
John Baldwin aaf3170501 Make linker_file_add_dependency() and linker_load_module() static since
only the linker uses them.
2006-06-20 20:18:42 +00:00
Warner Losh 57dc2664ef Probe the memory size of the board better. Look at the bus width,
number of banks, rows and columns the SDRAMC is programmed to access
to determine the RAM size for the board, rather than hard-wiring it to
be 32MB.  My company's board with 64MB now probes correctly, as does
the KB9202 with only 32MB.  This means that to detect the right memory
size, our boot loader must correctly initialize these values.  This is
a fairly safe assumption because the boot loader has to initialize
SDRAM already, and it isn't really possible to change this register
after we've accessed SDRAM.
2006-06-20 20:13:40 +00:00
John Baldwin e767366f99 Don't check if malloc(M_WAITOK) returns NULL. 2006-06-20 20:11:00 +00:00
John Baldwin e5bb3a01d7 Use 'else' to remove another goto. 2006-06-20 19:49:28 +00:00
John Baldwin 73a2437a83 - Remove some useless variable initializations.
- Make some conditional free()'s where the condition was always true
  unconditional.
2006-06-20 19:32:10 +00:00
Yaroslav Tykhiy 15a901e263 We no longer need to disable interrupts in MD trap machinery
when we're about to call kdb_trap() because the latter MI
function can disable interrupts by itself now.

Pointed out by:	bde
X-MFC remark:	depends on kern/subr_kdb.c#1.18
Sponsored by:	RiNet (Cronyx Plus LLC)
2006-06-20 12:44:21 +00:00
George V. Neville-Neil fb11be62a2 Properly cast the values of valsize (the size of the value passed in)
in setsockopt so that they can be compared correctly against negative
values.  Passing in a negative value had a rather negative effect
on our socket code, making it impossible to open new sockets.

PR:		98858
Submitted by:	James.Juran@baesystems.com
MFC after:	1 week
2006-06-20 12:36:40 +00:00
Poul-Henning Kamp cef2c44390 +To create quality software, the ability to say no is usually far
+more important than the ability to say yes.
+               -- Michi Henning
+%
2006-06-20 08:34:36 +00:00
Andre Oppermann c9f7b0ad5b Allocate a zero'ed syncache hashtable. mtx_init() tests the supplied
memory location for already existing/initialized mutexes.  With random
data in the memory location this fails (ie. after a soft reboot).

Reported by:	brueffer, YAMAMOTO Shigeru
Submitted by:	YAMAMOTO Shigeru <shigeru-at-iij.ad.jp>
2006-06-20 08:11:30 +00:00
David E. O'Brien 35a6917047 Document that 'bad cksum 0' is expected on NICs with checksum off-loading. 2006-06-20 05:04:05 +00:00
Sam Leffler 866488d704 ipw statistics tool 2006-06-20 00:26:35 +00:00
David Xu 7da6810b11 Add variable cpu_mxcsr_mask to save valid bits of mxcsr register. 2006-06-19 22:59:28 +00:00
David Xu 4d70df3fee MFi386:
Use the method described in IA-32 Intel Architecture Software
	Developer's Manual chapter 11.6.6 to get valid mxcsr bits,
	use the mxcsr mask to clear invalid bits passed by user code.
2006-06-19 22:36:01 +00:00
Max Laier 0dad3f0e15 Import interface groups from OpenBSD. This allows to group interfaces in
order to - for example - apply firewall rules to a whole group of
interfaces.  This is required for importing pf from OpenBSD 3.9

Obtained from:	OpenBSD (with changes)
Discussed on:	-net (back in April)
2006-06-19 22:20:45 +00:00
John Baldwin 343ed0a875 - Move the gigabit NICs that use miibus into the miibus section to match
GENERIC.
- Add bce(4) and bfe(4).
2006-06-19 22:11:44 +00:00
Yaroslav Tykhiy b4e9432020 There is a plenty of arch's out there where sizeof(size_t) != sizeof(int).
A field width in printf(3) must be int, so cast return value from strlen()
to the type.

Noticed by:	Andrzej Tobola <ato iem pw edu pl>; tinderbox
Pointy hat to:	yar
X-MFC with:	the rest of the new asf code
2006-06-19 17:12:25 +00:00
Matteo Riondato 0a8d09fe8a Add a forgotten "," 2006-06-19 16:31:58 +00:00
Matteo Riondato d8eab5725f Add Hamlet eXagerate XURS232 USB-Serial adapter
PR:		usb/98983
Submitted by:	Massimo Lusetti
MFC after:	1 week
2006-06-19 16:30:35 +00:00
Christian Brueffer 17c6d5a742 Boji Tony Kannanthanam no longer supports this driver, Achim Leubner
however still does.  Confirmed by email contact with both of them.

MFC after:	3 days
2006-06-19 15:22:34 +00:00
David Malone 5e1aa27995 When we receive an out-of-window SYN for an "ESTABLISHED" connection,
ACK the SYN as required by RFC793, rather than ignoring it. NetBSD
have had a similar change since 1999.

PR:		93236
Submitted by:	Grant Edwards <grante@visi.com>
MFC after:	1 month
2006-06-19 12:33:52 +00:00
Søren Schmidt 1ebe29d0de Fix type casts so that we get at the right response queue.
Submitted by: glebius+ru
2006-06-19 11:47:57 +00:00
David E. O'Brien f05d4088fc Trival whitespace change. 2006-06-19 11:30:36 +00:00
David E. O'Brien b3f1b4a2c7 Update for the 'file' 4.17 import. 2006-06-19 08:10:23 +00:00
David Xu d037e6d6d0 Style fix, use low-case. 2006-06-19 07:55:29 +00:00
David E. O'Brien 838ae103d1 Update for the 'file' 4.17 import. 2006-06-19 07:53:49 +00:00
David E. O'Brien 88a5e5ac7b Virgin import of Christos Zoulas's FILE 4.17. 2006-06-19 07:52:15 +00:00
David E. O'Brien 9c5a4d53e8 This commit was generated by cvs2svn to compensate for changes in r159764,
which included commits to RCS files with non-trunk default branches.
2006-06-19 07:52:15 +00:00
David Xu 85b2d575de Clear bit 22 in MSR IA32_MISC_ENABLE, according to Intel document,
when the bit 22 is set to 1, CPUID with EAX=0 returns a maximum
value in EAX[7..0] of 3, when set to 0(default), CPUID with EAX=0
returns the number corresponding to the maximum standard function
supported. On my machine, BIOS sets the bit to 1 to make it to be
compatible with old OS, this causes dual-core Pentium-D (two
physical cores) to be identified as hyperthreading (two logical
cores) by function mp_topology().
2006-06-19 07:51:47 +00:00
Paul Saab b33484302d Remove two debugging printfs 2006-06-19 05:35:56 +00:00
Bruce A. Mah 2ec641c210 Various wording nits (hopefully resulting in net improvements) to the
main kernel section.
2006-06-19 02:55:27 +00:00
Andrew Thompson 615fccc52b Fix spelling mistake in comment. 2006-06-19 02:25:11 +00:00
Olivier Houchard 08459723d8 Make sure the stack is properly aligned.
Enable the MMU when relocating as well, and use write-through cache.
2006-06-18 22:46:30 +00:00
Simon L. B. Nielsen aee85526aa - Fail with an understandable error message if we cannot detect the
sector size, instead of later failing with an error about /boot/mbr
  not being a multiple of the sector size (since we end up with an
  assumed sector size of MAX_SEC_SIZE * 2).
- We query the sector size via an IOCTL anyway, so if that succeeds
  use that instead of probing for it via read(2) calls.  This fixes
  the problem with fdisk failing to operate on at least graid3 and
  md(4) devices on kernels with src/sys/geom/geom_dev.c before
  rev. 1.90, due to fdisk failing to detect the sector size.
- When detecting the root device allow "/" characters in it, which
  happens with e.g. gmirror devices.

Reviewed by:	cperciva
MFC after:	1 week
2006-06-18 22:02:22 +00:00
Simon L. B. Nielsen 274ede62a8 In g_dev_strategy(), when failing an IO request with EINVAL due to
offset or request size which is not a multiple of the sector size, make
sure that the bio is set to indicate that no data has actually been
transferred.

The result of this is that the file offset is no longer incremented for
these requests.  The fact that the file offset was incremented broke
fdisk(8)'s probing of sector size for non-512 byte sector sizes.

Reviewed by:	phk, cperciva
Submitted by:	mdodd
MFC after:	2 weeks
2006-06-18 22:01:15 +00:00
Bruce A. Mah b06185fd6d Minor tightening up of release notes:
Delete two release notes related to the kern.elf*.can_exec_dyn that
seemed to cancel each other out.

Consolidate two notes related to BPF JIT.

Delete note about fixing CHECKSUM.MD5 bug; no released versions of
FreeBSD shipped with it.
2006-06-18 21:32:26 +00:00
Bruce A. Mah 5575962843 Put several notes in the right place: Move an arp(8) note from kernel
to userland.  Move all of the items in the Kernel contrib section to
the top-level contrib section.

All of the moved items are unchanged with respect to their actual
contents.
2006-06-18 21:13:28 +00:00
Robert Watson 721150ad8f When retrieving SO_ERROR via getsockopt(), hold the socket lock around
the retrieval and replacement with 0.

MFC after:	1 week
2006-06-18 19:02:49 +00:00
Alexander Leidinger 5ea8ff67ee Document support for the Aceeca Mez1000 RDA. 2006-06-18 17:56:37 +00:00
Alexander Leidinger 8cc6aade65 Add support for the Aceeca Mez1000 RDA.
PR:		82839
Submitted by:	Mike Durian <durian@shadetreesoftware.com>
2006-06-18 17:55:29 +00:00