Commit Graph

455 Commits

Author SHA1 Message Date
rmind
2e6f2099c6 Import NPF - a packet filter. Some features:
- Designed to be fully MP-safe and highly efficient.

- Tables/IP sets (hash or red-black tree) for high performance lookups.

- Stateful filtering and Network Address Port Translation (NAPT).
  Framework for application level gateways (ALGs).

- Packet inspection engine called n-code processor - inspired by BPF -
  supporting generic RISC-like and specific CISC-like instructions for
  common patterns (e.g. IPv4 address matching).  See npf_ncode(9) manual.

- Convenient userland utility npfctl(8) with npf.conf(8).

NOTE: This is not yet a fully capable alternative to PF or IPFilter.
Further work (support for binat/rdr, return-rst/return-icmp, common ALGs,
state saving/restoring, logging, etc) is in progress.

Thanks a lot to Matt Thomas for various useful comments and code review.
Aye by: board@
2010-08-22 18:56:18 +00:00
haad
15b01eef79 dd dm driver to XEN configs because they do not have modules working yet.
This will enable using LVM by default on XEN DOM0 hostings running NetBSD.

Change suggested by Sam Fourman.
2010-08-12 20:16:27 +00:00
chs
6b187f6957 add more (commented-out) spdmem instances for HP xw-series workstations. 2010-08-08 18:28:00 +00:00
jakllsch
897b6b7d94 Almost entirely rework Intel Firmware Hub random number generator support.
This introduces fwhrng(4) which attaches via ichlpcib(4), replacing
the rnd(4) support in pchb(4).
2010-07-23 00:43:20 +00:00
jruoho
4d861e5bb4 Merge a driver for ACPI CPUs with basic support for processor power states,
also known as C-states. The code is modular and provides an easy way to add
the remaining functionality later (namely throttling and P-states).

Remarks:

  1.	Commented out in the GENERICs; more testing exposure is needed.

  2.	The C3-state is disabled for the time being because it turns off
	timers, among them the local APIC timer. This may not be universally
	true on all x86 processors; define ACPICPU_ENABLE_C3 to test.

  3.	The algorithm used to choose a power state may need tuning. When
	evaluating the appropriate state, the implementation uses the
	previous sleep time as an indicator. Additional hints would include
	for example the system load.

	Also bus master activity is evaluated when choosing a state. The
	usb(4) stack is notorious for such activity even when unused.
	Typically it must be disabled in order to reach the C3-state,
	but it may also prevent the use of C2.

  4.	While no extensive empirical measurements have been carried out, the
	power savings are somewhere between 1-2 W with C1 and C2, depending
	on the processor, firmware, and load. With C3 even up to 4 W can be
	saved.  The less something ticks, the more power is saved.

ok jmcneill@, joerg@, and discussed with various people.
2010-07-18 09:29:11 +00:00
rmind
7c940b718e Unify i386 and amd64 procfs MD code into x86. 2010-07-08 11:24:59 +00:00
cherry
c971211b47 The Xen balloon driver enables growing and shrinking
PV domains on the fly, by collaborating with UVM and the hypervisor
2010-07-06 15:00:09 +00:00
bouyer
f249dc1977 Sync DKWEDGE options with GENERIC 2010-06-26 13:08:37 +00:00
dholland
90345ac358 Remove orphaned heading "Mice" 2010-06-02 18:05:28 +00:00
dholland
7af6d770a0 COMPAT_43 should not be sorted between COMPAT_40 and COMPAT_50. 2010-06-02 18:02:57 +00:00
mjf
e0e10b0607 Add __cacheline_aligned and __read_mostly annotations.
These annotations help to mitigate false sharing on multiprocessor
systems.

Variables annotated with __cacheline_aligned are placed into the
.data.cacheline_aligned section in the kernel. Each item in this
section is aligned on a cachline boundary - this avoids false
sharing. Highly contended global locks are a good candidate for
__cacheline_aligned annotation.

Variables annotated with __read_mostly are packed together tightly
into a .data.read_mostly section in the kernel. The idea here is that
we can pack infrequently modified data items into a cacheline and
avoid having to purge the cache, which would happen if read mostly
data and write mostly data shared a cachline. Initialisation variables
are a prime candiate for __read_mostly annotations.
2010-06-01 22:13:30 +00:00
plunky
c938c0405b add btmagic(4) where other Bluetooth drivers are listed 2010-05-22 19:02:07 +00:00
mrg
309c6e11b7 enable IPFILTER_COMPAT in all kernels that have ipfilter already.
canonicalise several of the ipf option segments in various files
(this mostly means adding commented out IPFILTER_DEFAULT_BLOCK,
or adding commented or uncommented IPFILTER_LOG or IPFILTER_LOOKUP
option statements.)

i built about 20 of these kernels to check, but not all of them.
2010-05-08 22:16:25 +00:00
pooka
835e533be4 Remove unused count (invariably "4") from pseudo-device fss. 2010-04-16 13:48:27 +00:00
ahoka
5b74e5d788 revert last change, amd64 doesnt have monolith so dont remove pad. 2010-04-09 14:37:57 +00:00
ahoka
42b95af124 Remove pad from GENERIC, add to MONOLITH, we have it as a module now. 2010-04-09 14:02:05 +00:00
jruoho
5a858cc492 Add WMI mappings for HP laptops. Requested by cegger@.
Thanks to apb@ and cegger@ for initial testing.

XXX: This conflicts with hpqlb(4). Someone with the suitable hardware needs
     to complete the list of hotkeys before -- and if -- this can replace
     hpqlb(4). For now, the driver was left uncommented in the GENERICs.
2010-04-08 17:32:30 +00:00
jruoho
496980a056 Add wmidell(4). 2010-04-08 09:45:17 +00:00
dholland
33b963cb18 sort a couple things 2010-03-28 00:00:07 +00:00
plunky
04e2ab6ae6 add uhso(4) device where appropriate
- follow the lead of other USB driver declarations wrt commented out
    - (cross-)build tested all these kernels
2010-03-07 09:39:42 +00:00
plunky
c269ebf72f use a MI major number for uhso(4) driver
(requested by mrg)
2010-03-06 23:45:38 +00:00
plunky
4677f8289f add major device for usho(4) driver 2010-03-06 21:31:50 +00:00
cnst
213f4eaf44 remove aiboost(4) from GENERICs, since it cannot win in autoconf(9) over aibs(4); ok pgoyette 2010-03-06 04:28:53 +00:00
pgoyette
ad945e1f49 Correct spelling of smscmon and add (commented out) to GENERICs 2010-02-22 13:42:04 +00:00
ahoka
4c65a125fc Add SPLASH example, like in i386. 2010-02-22 05:59:04 +00:00
cnst
51998ed2d7 New wbsio(4) driver for Winbond Super I/O attachment of lm(4) on any port.
http://mail-index.netbsd.org/tech-kern/2010/02/17/msg007338.html

Reviewed by <pgoyette>, <tech-kern>.
2010-02-21 05:16:29 +00:00
cnst
1c23afa3cb New aibs(4) driver for ASUSTeK AI Booster (ACPI ATK0110) hardware monitor
with limit support.

        http://thread.gmane.org/gmane.os.netbsd.devel.kernel/35654

Reviewed by <pgoyette>, <jruoho> and <tech-kern>.
2010-02-09 03:19:50 +00:00
pgoyette
b6f86abdfe Add flags to all instances of lm(4), add a reference to man page 2010-02-08 21:45:31 +00:00
pgoyette
c26849053d Add acpismbus enries - commented out! 2010-02-06 20:12:32 +00:00
jruoho
084261a156 Remove ACPICA_PEDANTIC. 2010-01-31 12:20:22 +00:00
tnn
9ecd6e9551 uhmodem(4) is superseded by u3g(4) and u3ginit(4).
Prepare for uhmodem(4) removal by not building it anymore.
This may fix PR kern/41174.
2010-01-07 18:49:30 +00:00
martin
c67e811ad6 Add the u3ginit driver to all configs which have the u3g driver 2010-01-07 00:18:47 +00:00
pooka
bb27c3b9ac unifdef -D UGEN_BULK_RA_WB
Default behaviour unchanged, the feature must still be explicitly
enabled for a ugen fd.
2009-12-23 01:04:45 +00:00
jym
87333291ab Compile in PaX support for Xen x86 kernels (dom0 and domU).
ok bouyer@. Compiled and tested by me under i386. Only compile tested for
amd64.
2009-12-17 23:53:24 +00:00
pooka
70d4493c77 Remove the portalfs kernel file system driver. Replace mount_portal(8)
with a version based on puffs.  User functionality remains the same.
2009-12-05 20:11:01 +00:00
sborrill
d47b1ae24d Add udl(4) 2009-12-03 11:37:55 +00:00
tron
7395068839 Enable SSP (Stack Smash Protection) in x86 kernels by default (except
in i386 *TINY kernels). The NetBSD/i386 "ALL" kernel is unconditionally
compiled with SSP enabled.

Change approved by the core team.
2009-11-25 17:08:08 +00:00
jmcneill
23e8227b7c PR# kern/42139: ACPI WMI: new driver
Import acpiwmi(4) from Jukka Ruohonen. From the PR:

Attached is a driver that implements ACPI WMI API:

http://www.microsoft.com/whdc/system/pnppwr/wmi/wmi-acpi.mspx

The WMI is used to provide a generic interface for OEMs to use certain
platform/laptop-specific additions to the standard ACPI in a somewhat
portable way. These can be hotkeys for additional buttons, different event
handlers (wireless kill switch, lid switch, etc.), and so on. At least HP
and Acer use it by default nowadays.

The benefit of this interface would be portability. For an example, instead
of hpqlb(4) that works only with certain HP models, we could have a generic
HP WMI-driver that should work in theory across all HP laptops. On many new
laptops WMI may also be the only way to access laptop/manufacturer-specific
features.
2009-10-02 16:47:52 +00:00
skrll
980b1066f3 It's -z max-page-size, not -z maxpagesize. 2009-10-02 10:14:20 +00:00
skrll
1521a0436b MAXPAGESIZE got bumped to 0x200000. Use -z maxpagesize=0x100000 until
someone(tm) decides that kernels should have that alignment, etc.
2009-10-01 09:15:19 +00:00
jmcneill
c05491c171 Need sdmmc* at wb? 2009-09-30 22:19:00 +00:00
jmcneill
e7a9e26c28 wss@acpi doesn't make much sense on amd64, so remove it 2009-09-30 20:49:07 +00:00
jmcneill
beb3879990 add and enable wb(4) 2009-09-30 20:47:09 +00:00
christos
68b7139cf2 add toshide 2009-09-20 01:14:31 +00:00
jmcneill
68aba25e22 Switch on hdaudio(4) 2009-09-07 22:59:09 +00:00
jmcneill
ad5f1845fb Refer to hdaudio as 'High Definition Audio', not
'Intel High Definition Audio' as many vendors implement the HD audio spec.
2009-09-07 10:40:54 +00:00
sborrill
b88195cfa1 hdaudio(4) is a standards-compliant driver for Intel High Definition Audio.
It will replace azalia(4) after testing.

To use, comment out azalia in your kernel configuration and uncomment the
hdaudio and hdafg lines so it reads:

# Intel High Definition Audio
hdaudio*	at pci? dev ? function ?
hdafg*		at hdaudiobus?

You should also:
cd /dev
sh MAKEDEV audio
2009-09-06 17:25:55 +00:00
christos
9d70e21035 put back drm. 2009-08-09 21:32:16 +00:00
christos
c0dd0d68ac remove drm stuff for now 2009-08-09 20:27:06 +00:00
christos
8ae4a49631 add spic and drm to generic 2009-08-09 19:37:35 +00:00