Commit Graph

583 Commits

Author SHA1 Message Date
Andrew Thompson
2b78d30630 Remove the uscanner(4) driver, this follows the removal of the kernel scanner
driver in Linux 2.6. uscanner was just a simple wrapper around a fifo and
contained no logic, the default interface is now libusb (supported by sane).

Reviewed by:	HPS
2009-03-19 20:33:26 +00:00
Bruce M Simpson
443fc3176d Introduce a number of changes to the MROUTING code.
This is purely a forwarding plane cleanup; no control plane
code is involved.

Summary:
 * Split IPv4 and IPv6 MROUTING support. The static compile-time
   kernel option remains the same, however, the modules may now
   be built for IPv4 and IPv6 separately as ip_mroute_mod and
   ip6_mroute_mod.
 * Clean up the IPv4 multicast forwarding code to use BSD queue
   and hash table constructs. Don't build our own timer abstractions
   when ratecheck() and timevalclear() etc will do.
 * Expose the multicast forwarding cache (MFC) and virtual interface
   table (VIF) as sysctls, to reduce netstat's dependence on libkvm
   for this information for running kernels.
   * bandwidth meters however still require libkvm.
 * Make the MFC hash table size a boot/load-time tunable ULONG,
   net.inet.ip.mfchashsize (defaults to 256).
 * Remove unused members from struct vif and struct mfc.
 * Kill RSVP support, as no current RSVP implementation uses it.
   These stubs could be moved to raw_ip.c.
 * Don't share locks or initialization between IPv4 and IPv6.
 * Don't use a static struct route_in6 in ip6_mroute.c.
   The v6 code is still using a cached struct route_in6, this is
   moved to mif6 for the time being.
 * More cleanup remains to be merged from ip_mroute.c to ip6_mroute.c.

v4 path tested using ports/net/mcast-tools.
v6 changes are mostly mechanical locking and *have not* been tested.
As these changes partially break some kernel ABIs, they will not
be MFCed. There is a lot more work to be done here.

Reviewed by:	Pavlin Radoslavov
2009-03-19 01:43:03 +00:00
Robert Watson
1df143759b Mention specifically in UPDATING that non-MPSAFE device drivers are no
longer supported.
2009-03-15 16:12:50 +00:00
Gabor Kovesdan
7e06afcad3 - Add an entry about enabling libc NLS support 2009-03-13 16:40:56 +00:00
Rui Paulo
e667034d80 Mention k8temp -> amdtemp rename.
MFC after:	2 weeks
2009-03-13 16:30:33 +00:00
Andrew Thompson
3296f80d98 Fix spelling. 2009-03-09 22:43:00 +00:00
Andrew Thompson
0ee5826e59 Update 20090309 to say that libmap.conf entries for libusb are no longer needed. 2009-03-09 22:42:01 +00:00
Stanislav Sedov
cb2fe9b1bb - Fix a typo.
Spotted by:	Steve Kargl <sgk@troutmask.apl.washington.edu>
2009-03-09 19:56:37 +00:00
Stanislav Sedov
f3106cde19 - Point libusb users to the ports collection UPDATING file. 2009-03-09 19:22:45 +00:00
Bruce M Simpson
d10910e6ce Merge IGMPv3 and Source-Specific Multicast (SSM) to the FreeBSD
IPv4 stack.

Diffs are minimized against p4.
PCS has been used for some protocol verification, more widespread
testing of recorded sources in Group-and-Source queries is needed.
sizeof(struct igmpstat) has changed.

__FreeBSD_version is bumped to 800070.
2009-03-09 17:53:05 +00:00
Andrew Thompson
a091d2a525 Install libusb20.so.1 as libusb.so.1, there will be a followup commit to the
ports tree so that programs use libusb from the base by default. Thanks to
Stanislav Sedov for sorting out the ports build.

Bump __FreeBSD_version to 800069

Help and testing by:	stas
2009-03-09 17:05:31 +00:00
Konstantin Belousov
9f960e98aa Hopefully, improve the grammar and wording in the changes to shmctl(2)
manpage and UPDATING entry 20090302.

UPDATING changes suggested by bf2006a yahoo com.
man page corrections by bde.
2009-03-05 12:04:42 +00:00
Konstantin Belousov
65067cc8b0 Correct types of variables used to track amount of allocated SysV shared
memory from int to size_t. Implement a workaround for current ABI not
allowing to properly save size for and report more then 2Gb sized segment
of shared memory.

This makes it possible to use > 2 Gb shared memory segments on 64bit
architectures. Please note the new BUGS section in shmctl(2) and
UPDATING note for limitations of this temporal solution.

Reviewed by:	csjp
Tested by:	Nikolay Dzham <i levsha org ua>
MFC after:	2 weeks
2009-03-02 18:53:30 +00:00
Warner Losh
a709c9a6fc Add verbage about needing to remap libusb-0.1 to libusb20 to get old
programs to work with the new usb stack.
2009-03-01 18:57:59 +00:00
Robert Watson
176273ea2b Note that network device driver modules need rebuilding. 2009-03-01 12:44:33 +00:00
Andrew Thompson
a13a5664df Make a note about USB /dev changes. 2009-02-27 17:32:49 +00:00
Andrew Thompson
200dcf9a93 Fix spelling (again).
Spotted by:	Fabian Keil
2009-02-23 19:30:00 +00:00
Andrew Thompson
9c1e15b587 Fix spelling.
Spotted by:	Fabian Keil
2009-02-23 19:28:29 +00:00
Andrew Thompson
71e9286ce1 Add an UPDATING entry and bump the OS version to 800064. 2009-02-23 18:56:49 +00:00
Mike Makonnen
553bf6a453 Rename the rc.conf(5) knob if_up_delay to defaultroute_delay to better
reflect its purpose.
2009-02-17 11:55:50 +00:00
Maxim Konovalov
199cc11263 o Trim EOL whitespaces. 2009-02-17 10:50:18 +00:00
Maxim Konovalov
cbb9c89e93 o Teminate sentences by dot. 2009-02-17 10:49:36 +00:00
Andrew Thompson
bb71e4b6bc Add an entry for xorg+hal+USB2 not detecting input devices. 2009-02-16 18:59:18 +00:00
Andrew Thompson
e4edc14efd Switch over GENERIC kernels to USB2 by default.
Tested by:	make universe
2009-02-15 22:33:44 +00:00
John Baldwin
1494343738 Add a note to document that ichsmb(4) now uses left-justified SMBus slave
addresses.
2009-02-06 15:03:14 +00:00
Bjoern A. Zeeb
09f8c3ff36 Remove the single global unlocked route cache ip6_forward_rt
from the inet6 stack along with statistics and make sure we
properly free the rt in all cases.

While the current situation is not better performance wise it
prevents panics seen more often these days.
After more inet6 and ipsec cleanup we should be able to improve
the situation again passing the rt to ip6_forward directly.

Leave the ip6_forward_rt entry in struct vinet6 but mark it
for removal.

PR:		kern/128247, kern/131038
MFC after:	25 days
Committed from:	Bugathon #6
Tested by:	Denis Ahrens <denis@h3q.com> (different initial version)
2009-02-01 21:11:08 +00:00
Maxim Sobolev
74f91fb9e2 Mention removal of NTFS from GENERIC/amd64. 2009-01-19 17:00:42 +00:00
Lawrence Stewart
24cb0f2232 Add TCP Appropriate Byte Counting (RFC 3465) support to kernel.
The new behaviour is on by default, and can be disabled by setting the
net.inet.tcp.rfc3465 sysctl to 0 to obtain previous behaviour.

The patch changes struct tcpcb in sys/netinet/tcp_var.h which breaks
the ABI. Bump __FreeBSD_version to 800061 accordingly. User space tools
that rely on the size of struct tcpcb (e.g. sockstat) need to be recompiled.

Reviewed by:	rpaulo, gnn
Approved by:	gnn, kmacy (mentors)
Sponsored by:	FreeBSD Foundation
2009-01-15 06:44:22 +00:00
Alexander Motin
5d55747e72 ng_tty(4) module updated to match the new TTY subsystem. 2008-12-25 10:05:00 +00:00
Sam Leffler
a1c64caf63 correct wording 2008-12-19 23:12:14 +00:00
Sam Leffler
efc06131bf add makefs to the base system; FreeBSD_version bumped just in case
Reviewed by:	imp
2008-12-19 23:10:55 +00:00
Kip Macy
991f8615e4 convert ifnet and afdata locks from mutexes to rwlocks 2008-12-17 00:11:56 +00:00
Qing Li
6e6b3f7cbc This main goals of this project are:
1. separating L2 tables (ARP, NDP) from the L3 routing tables
2. removing as much locking dependencies among these layers as
   possible to allow for some parallelism in the search operations
3. simplify the logic in the routing code,

The most notable end result is the obsolescent of the route
cloning (RTF_CLONING) concept, which translated into code reduction
in both IPv4 ARP and IPv6 NDP related modules, and size reduction in
struct rtentry{}. The change in design obsoletes the semantics of
RTF_CLONING, RTF_WASCLONE and RTF_LLINFO routing flags. The userland
applications such as "arp" and "ndp" have been modified to reflect
those changes. The output from "netstat -r" shows only the routing
entries.

Quite a few developers have contributed to this project in the
past: Glebius Smirnoff, Luigi Rizzo, Alessandro Cerri, and
Andre Oppermann. And most recently:

- Kip Macy revised the locking code completely, thus completing
  the last piece of the puzzle, Kip has also been conducting
  active functional testing
- Sam Leffler has helped me improving/refactoring the code, and
  provided valuable reviews
- Julian Elischer setup the perforce tree for me and has helped
  me maintaining that branch before the svn conversion
2008-12-15 06:10:57 +00:00
Jens Schweikhardt
71fbac11b0 White space only: Tabify; white space at EOL removed. 2008-12-08 17:12:40 +00:00
Sam Leffler
c60b227c2c correct typo
Submitted by:	Ole Vole
2008-12-01 23:09:58 +00:00
Sam Leffler
3364462355 Switch to ath hal source code. Note this removes the ath_hal
module; the ath module now brings in the hal support.  Kernel
config files are almost backwards compatible; supplying

device ath_hal

gives you the same chip support that the binary hal did but you
must also include

options AH_SUPPORT_AR5416

to enable the extended format descriptors used by 11n parts.
It is now possible to control the chip support included in a
build by specifying exactly which chips are to be supported
in the config file; consult ath_hal(4) for information.
2008-12-01 16:53:01 +00:00
Kip Macy
db7f0b974f - bump __FreeBSD version to reflect added buf_ring, memory barriers,
and ifnet functions

- add memory barriers to <machine/atomic.h>
- update drivers to only conditionally define their own

- add lockless producer / consumer ring buffer
- remove ring buffer implementation from cxgb and update its callers

- add if_transmit(struct ifnet *ifp, struct mbuf *m) to ifnet to
  allow drivers to efficiently manage multiple hardware queues
  (i.e. not serialize all packets through one ifq)
- expose if_qflush to allow drivers to flush any driver managed queues

This work was supported by Bitgravity Inc. and Chelsio Inc.
2008-11-22 05:55:56 +00:00
Xin LI
de3a91a092 Grammar.
Submitted by:	"bf" <bf2006a at yahoo com>
2008-11-19 00:25:15 +00:00
Xin LI
de2e1b35a2 Mention that listsnapshots is disabled by default after latest ZFS import. 2008-11-18 21:41:09 +00:00
Oleg Bulyzhin
02d09f7901 Type of q_time (start of queue idle time) has changed: uint32_t -> uint64_t.
This should fix q_time overflow, which happens after 2^32/(86400*hz) days of
uptime (~50days for hz = 1000).
q_time overflow cause following:
- traffic shaping may not work in 'fast' mode (not enabled by default).
- incorrect average queue length calculation in RED/GRED algorithm.

NB: due to ABI change this change is not applicable to stable.

PR:		kern/128401
2008-10-28 14:14:57 +00:00
Nick Hibma
d8135f4ace Add an entry about the split up of usb into usb+*hci modules.
Submitted by:	Andrew Thompson
2008-10-10 06:37:51 +00:00
Joseph Koshy
e91c7c813e Mention the libpmc/hwpmc ABI change introduced in SVN r183725. 2008-10-10 04:23:40 +00:00
Xin LI
737d990ae4 Don't mention lib/compat, it has gone long ago. Use ports/misc/compat*
instead.
2008-10-08 01:31:00 +00:00
Ed Schouten
66e7dc385b The si(4) and ufoma(4) drivers have been ported to the new TTY layer.
Remove the entries from the UPDATING entry, to cause less confusion
among our users.
2008-09-14 19:25:57 +00:00
Ollivier Robert
9d965219e4 Mention ntpd upgrade to 4.2.4p5. 2008-09-03 08:30:17 +00:00
Dag-Erling Smørgrav
eaeb50d411 Belatedly add a notice about the reversed order of preference for OpenSSH
authentication keys.
2008-09-01 23:50:56 +00:00
Ed Schouten
bc093719ca Integrate the new MPSAFE TTY layer to the FreeBSD operating system.
The last half year I've been working on a replacement TTY layer for the
FreeBSD kernel. The new TTY layer was designed to improve the following:

- Improved driver model:

  The old TTY layer has a driver model that is not abstract enough to
  make it friendly to use. A good example is the output path, where the
  device drivers directly access the output buffers. This means that an
  in-kernel PPP implementation must always convert network buffers into
  TTY buffers.

  If a PPP implementation would be built on top of the new TTY layer
  (still needs a hooks layer, though), it would allow the PPP
  implementation to directly hand the data to the TTY driver.

- Improved hotplugging:

  With the old TTY layer, it isn't entirely safe to destroy TTY's from
  the system. This implementation has a two-step destructing design,
  where the driver first abandons the TTY. After all threads have left
  the TTY, the TTY layer calls a routine in the driver, which can be
  used to free resources (unit numbers, etc).

  The pts(4) driver also implements this feature, which means
  posix_openpt() will now return PTY's that are created on the fly.

- Improved performance:

  One of the major improvements is the per-TTY mutex, which is expected
  to improve scalability when compared to the old Giant locking.
  Another change is the unbuffered copying to userspace, which is both
  used on TTY device nodes and PTY masters.

Upgrading should be quite straightforward. Unlike previous versions,
existing kernel configuration files do not need to be changed, except
when they reference device drivers that are listed in UPDATING.

Obtained from:		//depot/projects/mpsafetty/...
Approved by:		philip (ex-mentor)
Discussed:		on the lists, at BSDCan, at the DevSummit
Sponsored by:		Snow B.V., the Netherlands
dcons(4) fixed by:	kan
2008-08-20 08:31:58 +00:00
Ed Schouten
db96ec0b6b Extend the message in UPDATING on the sio(4) -> uart(4) change.
It turns out I forgot to mention that people really need to make sure
their hints are up to date if they are updating a system through the
serial console.

Requested by:	gavin
Reviewed by:	gavin
2008-08-18 10:38:16 +00:00
Maxim Konovalov
c5783846f6 o Trim whitespaces. 2008-07-25 09:30:53 +00:00
Maxim Konovalov
032e0bf850 o Fix grammar: see -> See. 2008-07-25 09:13:18 +00:00