Commit Graph

77028 Commits

Author SHA1 Message Date
Matt Jacob
f0b41ca4fc nit: xpt_bus_deregister has to be called with the sim lock held.
MFC after:	1 month
2010-03-30 20:39:57 +00:00
Jack F Vogel
1eadf156c2 fix my clobber of the copyright date :) 2010-03-30 19:54:29 +00:00
John Baldwin
e80b904382 Use CACHE_LINE_SIZE alignment for 'struct pcpu' rather than hardcoding 128.
Reviewed by:	jeff
2010-03-30 19:41:38 +00:00
Jack F Vogel
9de5aff5b4 Thanks to Michael Tuexen for adding SCTP support for 82599,
also for finding a one character bug that kept TSO from working.

Sometimes with direct attach cables a failure can occur in init,
the old method of calling detach was broken, there is no way to
return an error to the system from init, so I have changed it to
return failure thru the ioctl.

And, have fixed the ALTQ code changes of Max Laier, sorry Max :)
2010-03-30 19:09:18 +00:00
John Baldwin
7e3d78ae6d Defer freeing a kevent list until after dropping kqueue locks.
LOR:		185
Submitted by:	Matthew Fleming @ Isilon
MFC after:	1 week
2010-03-30 18:31:55 +00:00
John Baldwin
495072defa Various and sundry style, whitespace, and comment fixes.
Submitted by:	bde (mostly)
2010-03-30 18:29:19 +00:00
Jack F Vogel
eaa9db2bb6 Fix lint build problem. 2010-03-30 17:05:24 +00:00
Jack F Vogel
8ec87fc514 Update to igb and em:
em revision 7.0.0:
	- Using driver devclass, seperate legacy (pre-pcie) code
	  into a seperate source file. This will at least help
	  protect against regression issues. It compiles along
	  with em, and is transparent to end use, devices in each
	  appear to be 'emX'. When using em in a modular form this
	  also allows the legacy stuff to be defined out.
	- Add tx and rx rings as in igb, in the 82574 this becomes
	  actual multiqueue for the first time (2 queues) while in
	  other PCIE adapters its just make code cleaner.
	- Add RX mbuf handling logic that matches igb, this will
	  eliminate packet drops due to temporary mbuf shortage.

igb revision 1.9.3:
	- Following the ixgbe code, use a new approach in what
	  was called 'get_buf', the routine now has been made
	  independent of rxeof, it now does the update to the
	  engine TDT register, this design allows temporary
	  mbuf resources to become non-critical, not requiring
	  a packet to be discarded, instead it just returns and
	  does not increment the tail pointer.
	- With the above change it was also unnecessary to keep
	  'spare' maps around, since we do not have the discard
	  issue.
	- Performance tweaks and improvements to the code also.

MFC in a week
2010-03-29 23:36:34 +00:00
Jung-uk Kim
4cc5f38e97 Refine r204265. We want the standard VGA palette for packed pixel mode. 2010-03-29 22:41:30 +00:00
Warner Losh
309e3c39d2 Build modules for this config to make sure they stay buildable... 2010-03-29 22:29:41 +00:00
Warner Losh
cd1c19dd7b Enable module builds now that the build completes for them. This
should get them into the universe rotation.
2010-03-29 22:03:55 +00:00
Andriy Gapon
0c04f06072 g_vfs_open: correctly set devvp.v_bufobj.bo_bsize to DEV_BSIZE
Because of how breadn -> bufstrategy -> g_vfs_strategy are currently
implemented, bread on devvp always expects DEV_BSIZE block size.
Thus, devvp bo_bsize must always be DEV_BSIZE irrespective of media
properties or filesystem implementation details.

Reviewed by:	mckusick
MFC after:	2 weeks
2010-03-29 20:34:25 +00:00
Joel Dahl
b40d342195 Start copyright notices with /*- 2010-03-29 20:27:17 +00:00
Jung-uk Kim
704858479c Check the pointer to JIT binary filter before its de-allocation.
Submitted by:	Alexander Sack (asack at niksun dot com)
MFC after:	3 days
2010-03-29 20:24:03 +00:00
Warner Losh
96f36ceee3 Arm defines intr_disable() as a macro, which causes problems for cxgb.
Rather than remove it for all architectures (which was a botch in
r205845), remove it only for arm and mips until that can be sorted out.

Pointy Hat: imp

Submitted by:	Navdeep Parhar
MFC after:	7 days
2010-03-29 19:36:37 +00:00
John Baldwin
90dfe31955 Add a handler for the local APIC error interrupt. For now it just prints
out the current value of the local APIC error register when the interrupt
fires.

MFC after:	1 week
2010-03-29 19:13:34 +00:00
John Baldwin
6fb5da5092 Cosmetic tweak to use a type suffix instead of a cast to force a constant
to be a long.
2010-03-29 18:47:04 +00:00
Matt Jacob
2b4969ff9e Change how multipath labels are created and managed. This makes it easier
to support various storage boxes which really aren't active-active.

We only write the label on the *first* provider. For all other providers
we just "add" the disk. This also allows for an "add" verb.

A usage implication is that you should specificy the currently active
storage path as the first provider.

Note that this does not add RDAC-like functionality, but better allows for
autovolumefailover configurations (additional checkins elsewhere will support
this).

Sponsored by:	Panasas
MFC after:	1 month
2010-03-29 18:04:06 +00:00
Warner Losh
c99255b8a6 Make all the modules build on arm (modulo ipfilter, which I'm looking
into):

o Don't build vpo and syscons on mips or arm either
o Add a section for mips and arm breakages, and document why.
  This is easier than opting in on all the other architectures:
  # no BUS_SPACE_UNSPECIFIED: bce, bwi, bwn, mfi, mpt, siba_bwn
  # No barrier instruction support (specific to this driver): sym
  # no uart_cpu_$MACHINE_ARCH: uart

(mips has, by inspection, the same issues as arm, so ditto for it)

MFC after:	7 days
2010-03-29 17:31:55 +00:00
Warner Losh
751b0fbd01 Cast the bus_size_t to a intmax_t rather than assuming type-punning to
a size_t.  Switch from %z to %j.
2010-03-29 17:26:24 +00:00
Warner Losh
68d9da9140 Cast bus_space_t to a intmax_t and use %j to print it instead of
assuming it is size_t sized and using %z.
2010-03-29 17:25:06 +00:00
Warner Losh
784ae79476 Cast a bus_size_t to a (size_t) to use %zd specifier. Not quite the
right thing to do, but it is in compat code I don't want to sort out
at the moment.
2010-03-29 17:24:23 +00:00
Rui Paulo
58c4a5a1a8 Add AR9285.
Sponsored by:	iXsystems, inc
2010-03-29 17:09:04 +00:00
Warner Losh
8bb566164c Mark the vtoc.h structure as packed so that it is the right size and
layout on arm.

MFC after:	7 days
2010-03-29 15:59:44 +00:00
Luigi Rizzo
10afb58b81 remove a leftover debugging message 2010-03-29 12:27:49 +00:00
Luigi Rizzo
296ec631be Fix handling of set manipulations.
This patch has two fixes for potential kernel panics (one wrong
index, one access to the wrong lock) and two fixes to wrong logic
in a conditional. The potential panics are also on stable/8,
so I am going to MFC the fix quickly.
2010-03-29 12:19:23 +00:00
Andrew Thompson
b4eb1a01cf Do not sync cache for the PL2506
PR:		usb/144915
Submitted by:	Monty Hall
2010-03-28 20:09:04 +00:00
Andrew Thompson
9e5d4aec14 Do not swap Apple keys when detecting Apple-FN keyboards.
Reported by:	Steven Noonan
Submitted by:	Hans Petter Selasky
2010-03-28 20:07:08 +00:00
Andrew Thompson
79491ae837 Make sure the bsd_urb_list gets initialised and that new URB's are queued at
the end of the list.

Submitted by:	Hans Petter Selasky
2010-03-28 20:04:03 +00:00
Andrew Thompson
4a4bd31b44 Add PCI IDs for two more nForce controllers.
Submitted by:	Dmitry Luhtionov @ gmail.com
2010-03-28 20:02:50 +00:00
Andrew Thompson
208f52dae6 Add a couple of usb product IDs.
Submitted by:	Dmitry Luhtionov @ gmail.com
2010-03-28 20:02:13 +00:00
Nathan Whitehorn
e0cbed6815 Set hw.ofwfb.relax_mmap=1 by default. While these checks may be a good
idea in principle, X does not work without them on basically any hardware,
and this is probably the most frequent problem people run into on PowerPC.

Prodded by:	rnoland
MFC after:	1 week
2010-03-28 17:17:32 +00:00
Ed Schouten
510ea843ba Rename st_*timespec fields to st_*tim for POSIX 2008 compliance.
A nice thing about POSIX 2008 is that it finally standardizes a way to
obtain file access/modification/change times in sub-second precision,
namely using struct timespec, which we already have for a very long
time. Unfortunately POSIX uses different names.

This commit adds compatibility macros, so existing code should still
build properly. Also change all source code in the kernel to work
without any of the compatibility macros. This makes it all a less
ambiguous.

I am also renaming st_birthtime to st_birthtim, even though it was a
local extension anyway. It seems Cygwin also has a st_birthtim.
2010-03-28 13:13:22 +00:00
Rui Paulo
4e87d54a57 Add a comment explaining the previous commit.
Submitted by:	sam
2010-03-28 12:55:31 +00:00
Bjoern A. Zeeb
8b7893b056 When tearing down IPsec as part of a (virtual) network stack,
do not try to free the same list twice but free both the
acquiring list and the security policy acquiring list.

Reviewed by:	anchie
MFC after:	3 days
2010-03-28 06:51:50 +00:00
Justin T. Gibbs
3905e20898 Use standard types in preference to BSD types so that these header files
can be used in applications compiled with only POSIX types visible.

MFC after: 2 weeks
2010-03-28 00:10:09 +00:00
Alan Cox
3792de2e87 Correctly handle preemption of pmap_update_pde_invalidate().
X-MFC after:	r205573
2010-03-27 23:53:47 +00:00
Alan Cox
a57d0d8e1d Simplify pmap_growkernel(), making the i386 version more like the amd64
version.

MFC after:	3 weeks
2010-03-27 18:24:27 +00:00
Alexander Motin
42d008a11c Fix lock leakage.
PR:		kern/145081
2010-03-27 15:39:19 +00:00
Marcel Moolenaar
8d02363b0c Bring up-to-date:
o   Switch to ITANIUM2 has the cpu. This has absolutely no effect
    on the code, but makes for a better example.
o   Drop COMPAT_FREEBSD6. We're tier 2, so you're supposed to run
    8-stable or newer.
o   Add PREEMPTION. It works now.
o   Remove HWPMC_HOOKS. We don't have support for hwpmc yet.

o   Add a bunch of new devices: atapist, hptiop, amr, ips, twa, igb,
    ixgbe, ae, age, alc, ale, bce, bfe, et, jme, msk, nge, sk, ste,
    stge, tx, vge, axe, rue, udav, fwip, and all USB serial.
o   Remove "legacy" devices: le, vx, dc, pcn, rl, sis.

Make sure to the module list is a superset of what goes into GENERIC.
2010-03-27 06:53:11 +00:00
Marcel Moolenaar
9280895b48 Implement interrupt to CPU binding. Assign interrupts to CPUs in a
round-robin fashion, starting with the highest priority interrupt
on the highest-numbered CPU and cycling downwards.
2010-03-27 05:40:50 +00:00
Marcel Moolenaar
1adf3cbdb7 Remove nx_pcibus from the nexus resource. Nexus is not involved
with PCI busses. Remove nexus_read_ivar() and nexus_write_ivar()
to give default behaviour. Remove <machine/nexusvar.h> as well,
because there's nothing in it that's being used.
2010-03-27 03:15:34 +00:00
Jack F Vogel
c00148556a Update the driver to Intel version 2.1.6
- add some new hardware support for 82599
	- Big change to interrupt architecture, it now
	  uses a queue which contains an RX/TX pair as
	  the recipient of the interrupt. This will reduce
	  overall system interrupts/msix usage.
	- Improved RX mbuf handling: the old get_buf routine
	  is no longer synchronized with rxeof, this allows
	  the elimination of packet discards due to mbuf
	  allocation failure.
	- Much simplified and improved AIM code, it now
	  happens in the queue interrupt context and takes
	  into account both the traffic on the RX AND TX
	  side.
	- variety of small tweaks, like ring size, that have
	  been seen as performance improvements.
	- Thanks to those that provided feedback or suggested
	  changes, I hope I've caught all of them.
2010-03-27 00:21:40 +00:00
Marcel Moolenaar
1764e57174 Rename disable_intr() to ia64_disable_intr() and rename enable_intr()
to ia64_enable_intr(). This reduces confusion with intr_disable() and
intr_restore().

Have configure_final() call ia64_finalize_intr() instead of enable_intr()
in preparation of adding support for binding interrupts to all CPUs.
2010-03-26 21:22:02 +00:00
Matt Jacob
739fd8c533 D'oh- isp_handle_index' logic was reversed (not used in FreeBSD).
MFC after:	1 week
2010-03-26 20:22:18 +00:00
Rui Paulo
c0873717d4 Pass the correct pointer to fled_cb(). 2010-03-26 18:49:43 +00:00
Matt Jacob
670508b16a Clean up some printing stuff so that we can have a bit finer control
on debug output. Add a new platform function requirement to allow
for printing based upon the ITL nexus instead of the isp unit plus
channel, target and lun. This allows some printouts and error messages
from the core code to appear in the same format as the platform's
subsystem (in FreeBSD's case, CAM path).

MFC after:	1 week
2010-03-26 15:13:31 +00:00
Alexander Leidinger
2e2d757e51 Revert r205683 to resolve some code quality issues which do not affect the
build or use of linprocfs, before committing the reworked patch again.

Requested by:	des
2010-03-26 14:36:16 +00:00
Fabien Thomas
662cf71968 Handling SIGPIPE will cause deadlock/crash.
Return an error immediatly in case of hard shutdown.

MFC after: 3days
2010-03-26 14:35:48 +00:00
Alexander Leidinger
6cdf931c46 Fix some bogus values in linprocfs.
Submitted by:	Petr Salinger <Petr.Salinger@seznam.cz>
Verified on:	GNU/kFreeBSD debian 8.0-1-686 (by submitter)
PR:		144584
2010-03-26 11:43:15 +00:00