Francois Tigeot [Fri, 30 Mar 2012 18:47:36 +0000 (20:47 +0200)]
VFS quota: add a command to set a group quota
Francois Tigeot [Fri, 23 Mar 2012 22:19:12 +0000 (23:19 +0100)]
VFS quota: add a command to set a user's quota
Sascha Wildner [Tue, 17 Apr 2012 16:13:57 +0000 (18:13 +0200)]
mpt(4): Sync with FreeBSD.
Bug fixes and cleanups.
Sascha Wildner [Tue, 17 Apr 2012 16:03:15 +0000 (18:03 +0200)]
mpt(4): Pass INTR_MPSAFE when setting up the interrupt.
It's a porting mistake I did back then.
Francois Tigeot [Thu, 22 Mar 2012 13:33:43 +0000 (14:33 +0100)]
VFS quota: start enforcing limits
* Add a function vq_write_ok() to check if writing a specified amount
of data to a mounted filesystem is allowed.
* It only checks a global per mount-point limit for now.
* Enforce this limit check in vop_write().
Francois Tigeot [Sat, 17 Mar 2012 21:15:09 +0000 (22:15 +0100)]
VFS quota: add a function to set a per mount-point global space limit
Francois Tigeot [Mon, 16 Apr 2012 17:50:55 +0000 (19:50 +0200)]
VFS accounting: have syscalls fail if not enabled
Francois Tigeot [Sat, 17 Mar 2012 18:30:55 +0000 (19:30 +0100)]
VFS quota: report per mount-point space limits
Sepherosa Ziehau [Mon, 16 Apr 2012 12:00:36 +0000 (20:00 +0800)]
jme: Change how IFCAP_RSS is handled
- Number of RX rings being used is not changed.
- Hardware is always setup w/ RSS support.
- If IFCAP_RSS is not enabled, we simply don't use the RSS hash provided
by the hardware.
Sepherosa Ziehau [Mon, 16 Apr 2012 11:51:31 +0000 (19:51 +0800)]
jme: Per-device tunable knobs
Sepherosa Ziehau [Mon, 16 Apr 2012 11:41:20 +0000 (19:41 +0800)]
ifnet: Factor out if_ring_count2()
This function calculates maximum allowed power-of-2 ring count based on
user specified value (cnt) and the maximum number of rings supported by
the hardware (cnt_max). The power-of-2 cpu count is also take into
consideration.
Sepherosa Ziehau [Mon, 16 Apr 2012 10:43:00 +0000 (18:43 +0800)]
emx: Change how IFCAP_RSS is handled
- Number of RX rings being used is not changed.
- Hardware is always setup w/ RSS support.
- If IFCAP_RSS is not enabled, we simply don't use the RSS hash provided
by the hardware.
Sepherosa Ziehau [Mon, 16 Apr 2012 10:19:19 +0000 (18:19 +0800)]
emx: Allow user to specify the number of RX ring to use
Default value is 0, which means auto (based on # of cpus in the system)
Sepherosa Ziehau [Mon, 16 Apr 2012 10:07:28 +0000 (18:07 +0800)]
emx: Per-device tunable knobs
- Max TX/RX descriptor count
- Interrupt thrrotle ceiling
Sepherosa Ziehau [Mon, 16 Apr 2012 09:51:14 +0000 (17:51 +0800)]
bus: Change device_getenv_int interface a little bit
- Pass in the fallback value
- If the kgetenv fails, fallback value will be returned
Sepherosa Ziehau [Mon, 16 Apr 2012 09:16:08 +0000 (17:16 +0800)]
pci: Utilize device_getenv_int
Sepherosa Ziehau [Mon, 16 Apr 2012 09:15:16 +0000 (17:15 +0800)]
bus: Add device_getenv_int helper function
To get device specific int tunable knobs.
Sepherosa Ziehau [Mon, 16 Apr 2012 02:10:52 +0000 (10:10 +0800)]
route: Turn on route_assert_owner_access by default
No reports about the invalid CPU local routing information accessing
since 2009. Time to use assertion instead of printing backtrace.
Sascha Wildner [Sun, 15 Apr 2012 20:23:33 +0000 (22:23 +0200)]
kernel: Use ${.TARGET} in module Makefiles.
François Tigeot [Sun, 15 Apr 2012 20:09:45 +0000 (22:09 +0200)]
VFS accounting: remove unneeded code
Francois Tigeot [Sun, 15 Apr 2012 19:31:39 +0000 (21:31 +0200)]
VFS accounting: do not call initialization functions directly
* Use a macro to check if VFS accounting is enabled and they have been
properly enabled for this mount point first
* Change the return type of vfs_acdone() to void. This function does
not return errors and should not make a filesystem unmount fail.
Sascha Wildner [Sun, 15 Apr 2012 19:17:04 +0000 (21:17 +0200)]
kernel/netgraph7: Remove some atalk remains.
Francois Tigeot [Sun, 15 Apr 2012 18:41:10 +0000 (20:41 +0200)]
VFS accounting: fix vfs_register()
* Do not register per mount-point initialization and destruction
functions if VFS accounting is not globally enabled.
Francois Tigeot [Sat, 17 Mar 2012 17:17:49 +0000 (18:17 +0100)]
VFS quota: add per mount-point global, uid and gid limit fields.
Sepherosa Ziehau [Sun, 15 Apr 2012 12:39:46 +0000 (20:39 +0800)]
if: Remove experimental ifnet.if_start related sysctls
Sascha Wildner [Sun, 15 Apr 2012 10:26:45 +0000 (12:26 +0200)]
make.conf: Remove the unused LOADER_TFTP_SUPPORT variable.
We offer both the NFS and TFTP versions of pxeboot and loader since
2005 (see
423d6aa030d43ea1d66b0572688d0964c641c1b5) and since this
commit, the LOADER_TFTP_SUPPORT make.conf variable has been without
any effect.
Sascha Wildner [Sat, 14 Apr 2012 15:34:00 +0000 (17:34 +0200)]
Remove some unnecessary inclusions of <sys/cdefs.h> across the tree.
Venkatesh Srinivas [Sat, 14 Apr 2012 01:10:58 +0000 (18:10 -0700)]
kernel -- Enable threaded syncer for NFS mounts.
NFS mounts will now use a per-mount thread to complete periodic syncs on its
vnodes rather than using the system's syncer0.
Also remove a change that snuck in mistakenly to unmark syncer threads
as verbose.
Venkatesh Srinivas [Sat, 14 Apr 2012 00:46:42 +0000 (17:46 -0700)]
kernel -- Per-mount threaded syncer infrastructure.
Do not shut down syncer thread when unmount fails.
Reminded-by: dillon@
Sascha Wildner [Fri, 13 Apr 2012 17:40:11 +0000 (19:40 +0200)]
kernel: Clean up some module Makefiles.
Remove unneeded .PATHs and variables. Use ${.TARGET}.
Sascha Wildner [Fri, 13 Apr 2012 17:20:25 +0000 (19:20 +0200)]
cxm(4): Remove an unused file (opt_cxm.h) from the Makefile.
Sepherosa Ziehau [Fri, 13 Apr 2012 10:40:16 +0000 (18:40 +0800)]
em/emx: Add a note about why MSI-X should be not enable on 82574
Sepherosa Ziehau [Fri, 13 Apr 2012 09:09:10 +0000 (17:09 +0800)]
em/emx: Update to Intel em-7.2.4
- Fix the max frame length settings for 82583 chips
- Workaround 82574 specification update errata #20.
Local changes:
- For 82574 specification update errata #20 workaround, we don't
disable ASPM L1. Disabling ASPM L1 is said to be unnecessary
in the specification update.
Sepherosa Ziehau [Fri, 13 Apr 2012 10:31:32 +0000 (18:31 +0800)]
pci: Add definition for PCI express Link capabilities/control
Sepherosa Ziehau [Fri, 13 Apr 2012 08:34:51 +0000 (16:34 +0800)]
tcp/sack: Further optimize scoreboard block allocation
Use one slot freed SACK scoreboard cache.
30minutes tests are conducted on a heavy congested real-life network path;
the new statistics:
31254 SACK scoreboard updates
2 overflows
0 failures
13392 records reused
12703 records fast allocated
Before this commit, ~42% allocations are avoided (reused); after this commit,
~83% allocations are avoided (reused + fast allocated).
Sepherosa Ziehau [Fri, 13 Apr 2012 07:30:26 +0000 (15:30 +0800)]
tcp/sack: Optimize scoreboard block allocation
Allocate SACK scoreboard block only if we can't extend the existing
one's right edge (end).
This commit could avoid ~70% SACK scoreboard block allocation on
leaf.dragonflybsd.org (
11528032 updating, 8353353 reused) according
to the "netstat -s -f inet -p tcp" output as of today. On my testing
sites, this commit could avoid 30%~50% SACK scoreboard block allocation.
Sepherosa Ziehau [Fri, 13 Apr 2012 06:31:55 +0000 (14:31 +0800)]
tcp/sack: Move scoreboard block start/end setup into alloc function
This paves way for further SACK scoreboard block allocation optimization
Sepherosa Ziehau [Fri, 13 Apr 2012 06:25:52 +0000 (14:25 +0800)]
tcp/sack: Move empty scoreboard updating into insert_block()
Sepherosa Ziehau [Fri, 13 Apr 2012 03:58:58 +0000 (11:58 +0800)]
ether: Don't manually packing up input mbufs
Since we use spin ports for netisrs now, we no longer need to explicitly
avoid IPI storm on input path.
Sascha Wildner [Thu, 12 Apr 2012 21:04:33 +0000 (23:04 +0200)]
kernel/tmpfs: Make compiling tmpfs into the kernel optional.
If the user wants to build a kernel without tmpfs built in,
allow it to him.
Our GENERIC configs have 'options TMPFS', but even if it
isn't loaded or built into the kernel, it will be kldloaded
upon mount_tmpfs(8) via vfsload(3).
This behavior is the same with our other file systems: the
module will be autoloaded at the first mount -t <type> if
it isn't either in-kernel or already loaded.
Sepherosa Ziehau [Thu, 12 Apr 2012 09:17:11 +0000 (17:17 +0800)]
tcp: Prefer IW parameters in routing entries
Sepherosa Ziehau [Thu, 12 Apr 2012 08:55:25 +0000 (16:55 +0800)]
rt_metrics: Add rmx_iw* to record user-set IW parameters
Sepherosa Ziehau [Thu, 12 Apr 2012 07:25:31 +0000 (15:25 +0800)]
tcp: Support settable IW parameters
As suggested in:
http://tools.ietf.org/html/draft-ietf-tcpm-initcwnd-03
To be RFC3390 conforming, these parameters should be left as the default:
net.inet.tcp.iwcapsegs -> 3
net.inet.tcp.iwmaxsegs -> 4
Sepherosa Ziehau [Thu, 12 Apr 2012 07:04:52 +0000 (15:04 +0800)]
tcp: Staticize tcp_do_rfc3390
Sepherosa Ziehau [Thu, 12 Apr 2012 06:48:56 +0000 (14:48 +0800)]
tcp: "Reasonably" reduce IW after SYN retransmition timeout
Sascha Wildner [Wed, 11 Apr 2012 18:06:52 +0000 (20:06 +0200)]
kernel/nwfs: The NCP check only applies if it is not the module build.
Add some dependency stuff that will cause nwfs to load ncp if it is
not loaded or in the kernel.
However ncp ultimately depends on IPX which is not available as a
module, so that's the minimum that needs compiling into the kernel
in order to use nwfs.
This should really fix the kernel build.
Sascha Wildner [Wed, 11 Apr 2012 17:38:12 +0000 (19:38 +0200)]
kernel/smbfs: The netsmb check only applies if it is not the module build.
The necessary files from netsmb are built into the module. In the kernel
it is two separate options.
This fixes buildkernel.
Reported-by: Francois Tigeot <ftigeot@wolfpond.org>
Samuel J. Greear [Wed, 11 Apr 2012 16:26:02 +0000 (10:26 -0600)]
dntpd - Update pool servers to be of the newly-created dragonfly ntp.org zone
Sepherosa Ziehau [Wed, 11 Apr 2012 14:15:08 +0000 (22:15 +0800)]
tcp/syncache: Use the calculated RTO instead of calculate again
The recalculation actually uses wrong backoff, grrr
Sepherosa Ziehau [Wed, 11 Apr 2012 14:07:24 +0000 (22:07 +0800)]
tcp/syncache: Increase SYN|ACK max retransmit attempts from 3 to 4
- It matches what the comment says: 15 seconds timeout, if RFC6298 is
not enabled.
- Add comment about the timeout if RFC6298 is enabled.
Sepherosa Ziehau [Wed, 11 Apr 2012 13:54:52 +0000 (21:54 +0800)]
carp: Get rid of the null serializer function stubs
They are used in the early carp development stage; no longer useful now
Sepherosa Ziehau [Wed, 11 Apr 2012 10:24:53 +0000 (18:24 +0800)]
tcp/syncache: Use tcp_syn_backoff|low RTO multipler
Sepherosa Ziehau [Wed, 11 Apr 2012 10:09:43 +0000 (18:09 +0800)]
tcp: Adjust SYN retransmit backoff a little bit.
This pattern is proposed by:
Chu, J., "Tuning TCP Parameters for the 21st Century",
http://www.ietf.org/proceedings/75/slides/tcpm-1.pdf
Sepherosa Ziehau [Wed, 11 Apr 2012 10:05:04 +0000 (18:05 +0800)]
tcp: RW=min(IW,cwnd) is standardized in RFC5681
Sepherosa Ziehau [Wed, 11 Apr 2012 09:57:43 +0000 (17:57 +0800)]
tcp: Increase IW to 2 segments, if RFC3390 is not enabled.
First of all, RFC2581 allows this. Additionally, it is intended to
fix sender and receiver deadlock before delayed ACK timer expires.
Add comment about these.
Sepherosa Ziehau [Wed, 11 Apr 2012 09:51:04 +0000 (17:51 +0800)]
tcp: Factor out tcp_initial_window; ease further IW adjustment
Sascha Wildner [Wed, 11 Apr 2012 09:37:30 +0000 (11:37 +0200)]
sys/conf/options: Clean up and sort the file system related options.
Sascha Wildner [Wed, 11 Apr 2012 09:36:43 +0000 (11:36 +0200)]
nwfs/smbfs: Fix and cleanup the Makefiles a bit.
Sepherosa Ziehau [Wed, 11 Apr 2012 08:45:12 +0000 (16:45 +0800)]
carp: Add comment about how lockless MPSAFE is done
Sepherosa Ziehau [Wed, 11 Apr 2012 07:54:39 +0000 (15:54 +0800)]
vlan: Wording in comment
Sepherosa Ziehau [Wed, 11 Apr 2012 07:44:11 +0000 (15:44 +0800)]
carp: Change 1/0 usage of int into boolean_t, which is more expressive
Sascha Wildner [Wed, 11 Apr 2012 08:41:36 +0000 (10:41 +0200)]
Remove one more old OpenSSL file via 'make upgrade'.
Sepherosa Ziehau [Wed, 11 Apr 2012 03:23:39 +0000 (11:23 +0800)]
tcp_input: Partly revert
98cb2337e1000153d84b64a5e9aabbecda8e8dbf
Since all TCP operations are carried in its own netisr thread, the
workaround/comment is no longer needed/applied; change it into
assertion instead.
The "snd_nxt < snd_una" should (hopefully) have been fixed by:
1ff9b7d322dc5a26f7173aa8c38ecb79da80e419
Sepherosa Ziehau [Wed, 11 Apr 2012 03:09:33 +0000 (11:09 +0800)]
tcp_input: Use acceptable_window_update when applicable
While I'm here, adjust comment (ACK is always on when we reach that code)
Sepherosa Ziehau [Fri, 6 Apr 2012 01:47:36 +0000 (09:47 +0800)]
tcp/sack: Cleanup the SACK related bits when return from tcp_input slow path
When the code path that could generate the invalid SACK block on out-of-order
FIN segment was walked through, it turned out that some SACK related bits
could be leftover from the previous input segment, e.g. SACKLEFT.
Since the observed invalid SACK option contains only one SACK block and the
block's right edge is same as its left edge, the code which can generate that
SACK block could be run only if SACKLEFT is turned on and reportblk's start
and end are same.
- If SACKLEFT is on then reportblk's start and end must not be same, so the
SACKLEFT is leftover from the previous input segment.
- If KASSERTs about the clearance of the SACK bits are added immediately
before returning from the tcp_input slow path, the KASSERTs could fail due
to SACKLEFT are still on.
Obviously the SACK related bits are never intended to be inheritted from one
input segment to another input segment, so we just clear them before returning
from the tcp_input slow path.
Sepherosa Ziehau [Wed, 28 Mar 2012 08:17:32 +0000 (16:17 +0800)]
tcp/sack: Take FIN bit into consideration when setup report SACK block end
The invalid SACK option observed on the heavily segment reordering network
path (50% segments out of order) contains only one SACK block which tries
to cover the FIN segment but sets the right edge incorrectly, i.e. the right
edge is same as the left edge; mainly because the FIN bit is not counted.
Sascha Wildner [Tue, 10 Apr 2012 19:46:27 +0000 (21:46 +0200)]
acpi_hp.4: List the HP Compaq nc6320 as tested with the acpi_hp(4) driver.
The reported values looked sane.
Tested-by: Andrea Magliano <masterblaster@tiscali.it>
Peter Avalos [Tue, 10 Apr 2012 17:28:26 +0000 (10:28 -0700)]
Merge branch 'vendor/OPENSSL'
Peter Avalos [Tue, 10 Apr 2012 16:57:21 +0000 (09:57 -0700)]
Bring in the krb5 module in OpenSSL.
Even though we don't have Kerberos5 in base, we should still be
installing the krb5_asn.h header.
Peter Avalos [Tue, 10 Apr 2012 16:51:20 +0000 (09:51 -0700)]
Merge remote-tracking branch 'origin/master'
Sepherosa Ziehau [Tue, 10 Apr 2012 13:26:53 +0000 (21:26 +0800)]
carp: Lockless MPSAFE, step 11 of 11
Remove big giant carp token.
Sepherosa Ziehau [Mon, 9 Apr 2012 13:06:57 +0000 (21:06 +0800)]
carp: Lock MPSAFE, step 10 of 11
Make carp_softc.sc_carpdev and ifnet.if_carp accessing and updating
lockless MPSAFE.
carp_softc.sc_carpdev:
- Reader of the sc_carpdev will cache the value in temporary variable
and use the cached value instead of always accessing sc_carpdev,
which may be inconsistent due to change of sc_carpdev.
ifnet.if_carp
- if_carp is a pointer to the carp_softc container list, while the list
only contains pointer to carp_softc
- Reader of if_carp will cache the value in temporary variable and use
the cached value instead of always accessing if_carp, which may be
inconsistent due to if_carp updating.
- Updating of the if_carp is done in the following way:
ocif = ifp->if_carp;
ncif = cif_copy(ocif);
cif_modify(ncif);
ifp->if_carp = ncif;
netmsg_service_sync();
/* when we reach here all users of old if_carp (ocif) are done */
cif_free(ocif)
Sascha Wildner [Mon, 9 Apr 2012 02:37:14 +0000 (04:37 +0200)]
pst(4): Add a missing contigfree().
Sascha Wildner [Mon, 9 Apr 2012 01:31:45 +0000 (03:31 +0200)]
mps(4): Add a missing kfree().
Sascha Wildner [Sun, 8 Apr 2012 23:28:51 +0000 (01:28 +0200)]
kernel: Remove NULL checks after kmalloc() with M_WAITOK.
Sascha Wildner [Sun, 8 Apr 2012 22:29:44 +0000 (00:29 +0200)]
acpi_hp(4): Fix some previously overlooked issues.
Sascha Wildner [Sun, 8 Apr 2012 19:19:02 +0000 (21:19 +0200)]
IPXrouted(8): Re-indent some code to make the outer for() better visible.
Sepherosa Ziehau [Sat, 7 Apr 2012 14:17:44 +0000 (22:17 +0800)]
carp: Lockless MPSAFE step 9 of many
Carry out timeout processing in netisr0
Sascha Wildner [Sat, 7 Apr 2012 13:18:59 +0000 (15:18 +0200)]
Document which drivers are using MSI and how it can be disabled.
Sascha Wildner [Sat, 7 Apr 2012 12:36:54 +0000 (14:36 +0200)]
kernel/pci: Adjust MSI allocation verbose message a bit.
Sascha Wildner [Sat, 7 Apr 2012 11:59:15 +0000 (13:59 +0200)]
arcmsr(4): Use the available dev variable (like bus_release_resource()).
Sascha Wildner [Sat, 7 Apr 2012 10:51:27 +0000 (12:51 +0200)]
arcmsr(4): Add MODULE_VERSION.
Sascha Wildner [Sat, 7 Apr 2012 10:50:02 +0000 (12:50 +0200)]
arcmsr(4): Use MSI if it is supported by the device.
Sascha Wildner [Sat, 7 Apr 2012 11:15:38 +0000 (13:15 +0200)]
kernel: Fix building with USERCONFIG but without VISUAL_USERCONFIG.
Reported-by: v_2e on users@
François Tigeot [Sat, 7 Apr 2012 07:08:46 +0000 (09:08 +0200)]
Kernel - properly handle max. io size when dumping
* A magic constant was used to define the maximum IO size used when
dumping core
* Stop this practice and use the information provided by the underlying
device driver, capping the result to MAXPHYS if needed.
* This should fix issue #2343
Sascha Wildner [Sat, 7 Apr 2012 02:17:29 +0000 (04:17 +0200)]
Update the pciconf(8) database.
Apr 4, 2012 snapshot from http://pciids.sourceforge.net/
Sascha Wildner [Fri, 6 Apr 2012 15:42:09 +0000 (17:42 +0200)]
<machine/param.h>: Bring back the DFLTPHYS define.
This is needed in pkgsrc, too, at least in graphics/sane-backends, which
is needed by KDE4 via ksaneplugin.
Until the impact on pkgsrc has been estimated and fixed, this define will
stay.
John Marino [Fri, 6 Apr 2012 11:05:50 +0000 (13:05 +0200)]
dlfcn: How weak!
John Marino [Fri, 6 Apr 2012 08:08:47 +0000 (10:08 +0200)]
rtld: Fix rtld_functrace
The replacement for the do_reloc functionality wasn't properly implemented
in commit
35b2b265aa300727e840990e41e604edb8b25314
Reported-by: swildner
John Marino [Fri, 6 Apr 2012 07:33:33 +0000 (09:33 +0200)]
rtld: Implement fdlopen(3)
Implement rtld interface fdlopen. It is similar to dlopen, but takes a
file description instead of a path to reference the shared object.
Taken from: FreeBSD SVN 229768 (07 JAN 2012)
Sepherosa Ziehau [Fri, 6 Apr 2012 09:30:34 +0000 (17:30 +0800)]
igb: Always prepare for vlan when setup reception unit
vlan could be added after igb is initialized/brought up.
Sepherosa Ziehau [Fri, 6 Apr 2012 09:27:58 +0000 (17:27 +0800)]
igb: vlan could detect that the parent interface is gone; don't prevent detach
Sepherosa Ziehau [Fri, 6 Apr 2012 09:08:26 +0000 (17:08 +0800)]
carp: Lockless MPSAFE step 8 of many
Dispatch virtual host addresses' extraction into netisr0
Sepherosa Ziehau [Fri, 6 Apr 2012 08:37:08 +0000 (16:37 +0800)]
carp: Cleanup, move most of the code left in ioctl into sub-ioctl functions
Sepherosa Ziehau [Fri, 6 Apr 2012 08:09:58 +0000 (16:09 +0800)]
carp: Lockless MPSAFE step 7 of many
Dispatch backing device's name extraction into netisr0
Sepherosa Ziehau [Fri, 6 Apr 2012 05:27:55 +0000 (13:27 +0800)]
carp: In ioctl, we have to recompute HMAC only if any configures are changed
Sepherosa Ziehau [Fri, 6 Apr 2012 04:57:17 +0000 (12:57 +0800)]
netstat: Reduce SACK scoreboard statistics description verbosity
Sascha Wildner [Thu, 5 Apr 2012 19:48:35 +0000 (21:48 +0200)]
dsched.9: A little mdoc correction.
Sascha Wildner [Thu, 5 Apr 2012 17:10:51 +0000 (19:10 +0200)]
kernel/ufs: Fix compilation without INVARIANTS.
Sascha Wildner [Thu, 5 Apr 2012 09:08:06 +0000 (11:08 +0200)]
ppp(8): Raise WARNS to 2 and fix the warnings.