Peter Avalos [Sun, 7 Apr 2013 05:00:55 +0000 (22:00 -0700)]
Merge branch 'vendor/TNFTP'
Sepherosa Ziehau [Sun, 7 Apr 2013 04:57:49 +0000 (12:57 +0800)]
de: Reset chip after calling ether_ifattach()
Else the ifnet is not completely initialized
Reported-by: swildner@
Peter Avalos [Sun, 7 Apr 2013 04:34:01 +0000 (21:34 -0700)]
Import tnftp-
20121224.
* Add https support.
* When using the response to SYST to decide whether to default to
'binary' be a lot less specific.
Obtained-from: NetBSD
Sascha Wildner [Fri, 5 Apr 2013 03:50:55 +0000 (05:50 +0200)]
kernel/if_ndis: Grab the serializer around if_devstart().
Submitted-by: sephe
Sascha Wildner [Tue, 2 Apr 2013 19:23:19 +0000 (21:23 +0200)]
development.7: Mention dragonfly.vim.
Sascha Wildner [Tue, 2 Apr 2013 18:04:08 +0000 (20:04 +0200)]
kernel: Fix build without DDB.
Sascha Wildner [Tue, 2 Apr 2013 17:35:18 +0000 (19:35 +0200)]
<sys/param.h>: Adjust comment indent.
Sepherosa Ziehau [Tue, 2 Apr 2013 03:14:02 +0000 (11:14 +0800)]
re: Don't enable MSI by default even for PCI-e chips
It causes more troubles than the benefits it brings for us; it causes
watchdog, due to loosing interrupt, on certain PCI-e chips.
DragonFly-bug: http://bugs.dragonflybsd.org/issues/2533
Justin C. Sherrill [Tue, 2 Apr 2013 02:11:01 +0000 (22:11 -0400)]
Change to DragonFly 3.5.
Sascha Wildner [Mon, 1 Apr 2013 21:43:09 +0000 (23:43 +0200)]
kernel: Fix buildkernel without INVARIANTS.
Reported-by: Filippo Moretti <filippomore@yahoo.com>
Sascha Wildner [Mon, 1 Apr 2013 21:26:47 +0000 (23:26 +0200)]
mfi(4)/mfiutil(8): Add support for foreign configurations and drives.
For this, the following commands are added to mfiutil(8):
foreign scan - lists the number of foreign configs
foreign drives - lists the drives which are flagged as foreign
foreign display - displays the specified foreign configuration
foreign preview - previews the specified foreign configuration after import
foreign clear - clears the foreign configuration
foreign import - imports the foreign configuration
Foreign drive support has been added to 'show drives' too.
Tested-by: ftigeot
Taken-from: http://www.freebsd.org/cgi/query-pr.cgi?pr=172091
Sascha Wildner [Mon, 1 Apr 2013 15:41:51 +0000 (17:41 +0200)]
kernel/mfi: Add a tunable/sysctl to modify the command timeout.
Sascha Wildner [Mon, 1 Apr 2013 20:14:06 +0000 (22:14 +0200)]
kernel: Make tty_compat.c optional in 'files' instead of in the source.
Sascha Wildner [Mon, 1 Apr 2013 13:47:21 +0000 (15:47 +0200)]
bsd.sys.mk: Add -Wmissing-include-dirs to WARNS >= 1.
It ensures that all directories passed with -I<dir> actually exist.
Sascha Wildner [Mon, 1 Apr 2013 13:45:00 +0000 (15:45 +0200)]
libc: Fix -Wmissing-include-dirs.
Sepherosa Ziehau [Mon, 1 Apr 2013 09:55:27 +0000 (17:55 +0800)]
bnx: Pack TX mbuf and dmamap together; improve cache utilization
Sepherosa Ziehau [Mon, 1 Apr 2013 07:48:49 +0000 (15:48 +0800)]
Merge remote-tracking branch 'hofmann/wlan_serialize'
Sascha Wildner [Sun, 31 Mar 2013 19:45:49 +0000 (21:45 +0200)]
ciss(4): Fix build with CISS_DEBUG.
Sepherosa Ziehau [Sun, 31 Mar 2013 12:29:46 +0000 (20:29 +0800)]
bnx: Properly setup TX ring prod index position
Sepherosa Ziehau [Sun, 31 Mar 2013 10:26:40 +0000 (18:26 +0800)]
bge: Limit STD RX ring prod index increment to 8 for 5750, 5752 and 5755
This works around hardware errata.
NOTE:
For 5750, 5752 and 5755, the STD RX ring replesh threshold has already
been set to 8.
Obtained-from: tg3
Sascha Wildner [Sat, 30 Mar 2013 12:20:58 +0000 (13:20 +0100)]
lock(1): Use %jd for printing intmax_t.
Sascha Wildner [Fri, 29 Mar 2013 19:24:42 +0000 (20:24 +0100)]
libc: Fix -Wunused-parameter.
Sascha Wildner [Fri, 29 Mar 2013 14:09:02 +0000 (15:09 +0100)]
libc: Fix -Wpointer-arith.
Sascha Wildner [Fri, 29 Mar 2013 13:51:55 +0000 (14:51 +0100)]
libc: Fix -Wmissing-field-initializers.
Sascha Wildner [Thu, 28 Mar 2013 22:44:27 +0000 (23:44 +0100)]
libc: Fix -Wempty-body.
Sascha Wildner [Thu, 28 Mar 2013 22:32:39 +0000 (23:32 +0100)]
libc: Fix -Wreturn-type.
Sascha Wildner [Thu, 28 Mar 2013 22:28:33 +0000 (23:28 +0100)]
libc: Fix -Wunused-label.
Sascha Wildner [Thu, 28 Mar 2013 22:13:44 +0000 (23:13 +0100)]
libc: Fix -Wformat.
Sascha Wildner [Thu, 28 Mar 2013 22:07:56 +0000 (23:07 +0100)]
libc: Fix -Wunused-variable.
Sascha Wildner [Thu, 28 Mar 2013 18:29:19 +0000 (19:29 +0100)]
libc: Fix -Wold-style-definition.
Sascha Wildner [Fri, 29 Mar 2013 13:11:13 +0000 (14:11 +0100)]
libc: Bring back warnings to libc.
To disable warnings for the gdtoa sources only, the tweaking of the
CWARNFLAGS has to come _after_ <bsd.lib.mk> is included.
Therefore, it has to be done in libc's Makefile instead of its
Makefile.inc.
Before this commit warnings were completely disabled for libc due
to '-w' passed to every command line.
Also reset WARNS back to 0 since right now, libc doesn't even pass
WARNS=1.
Sascha Wildner [Fri, 29 Mar 2013 14:58:56 +0000 (15:58 +0100)]
libc/libc_r: Remove some obsolete comments.
Sascha Wildner [Fri, 29 Mar 2013 11:58:40 +0000 (12:58 +0100)]
kernel: Remove 'options COMPAT_SUNOS'.
It was supposed to provide binary compatibility with SunOS 4.x for the
sparc32 port of 4.4BSD.
Sascha Wildner [Fri, 29 Mar 2013 11:57:19 +0000 (12:57 +0100)]
kernel: Unbreak building kernels that have 'options BNX_TSO_DEBUG'.
Sascha Wildner [Fri, 29 Mar 2013 10:02:49 +0000 (11:02 +0100)]
lock(1): Do not require 'options COMPAT_43' in the kernel config.
We commented out COMPAT_43 in our configs some time ago, which broke
lock(1) that needed TIOCGETP and TIOCSETP ioctls which are only
available with COMPAT_43.
This commit converts lock(1) to use tcgetattr(3) and tcsetattr(3),
along with some minor cleanups.
Reported-by: noway on #dragonflybsd
Submitted-by: Joris Giovannangeli <joris@giovannangeli.fr>
Taken-from: FreeBSD
Sepherosa Ziehau [Fri, 29 Mar 2013 09:40:21 +0000 (17:40 +0800)]
bnx: Make sure that all of the TX rings receive tx_wreg update
Sepherosa Ziehau [Fri, 29 Mar 2013 09:23:19 +0000 (17:23 +0800)]
bnx: Make "force defrag" as TX ring flag
Sepherosa Ziehau [Fri, 29 Mar 2013 09:04:39 +0000 (17:04 +0800)]
bnx: Turn softc SHORTDMA flag into per TX ring flag
Avoid extra softc accessing during transmission.
Sepherosa Ziehau [Fri, 29 Mar 2013 02:22:16 +0000 (10:22 +0800)]
re: Disable IP header checksum offloading on 8168C/8168CP
These chips will generate wrong IP header checksum if IP options exist.
Obtained-from: FreeBSD
François Tigeot [Thu, 28 Mar 2013 07:42:23 +0000 (08:42 +0100)]
libc: Add a few missing xdr functions
Obtained-from: FreeBSD
Sepherosa Ziehau [Thu, 28 Mar 2013 09:53:32 +0000 (17:53 +0800)]
bnx: NIC based TX rings are only applicable to chips before 5705
Sepherosa Ziehau [Thu, 28 Mar 2013 09:26:37 +0000 (17:26 +0800)]
bnx: Regroup TX related fields into TX ring struct
Sepherosa Ziehau [Thu, 28 Mar 2013 07:35:19 +0000 (15:35 +0800)]
bnx: It does not make sense to have ret-ring size larger than prod-ring
Sepherosa Ziehau [Thu, 28 Mar 2013 06:44:19 +0000 (14:44 +0800)]
bnx: Defer interrupt allocation until chip reset is done
Sepherosa Ziehau [Thu, 28 Mar 2013 03:10:34 +0000 (11:10 +0800)]
bnx: Remove remainder of BCM5906
Matthew Dillon [Thu, 28 Mar 2013 00:03:12 +0000 (17:03 -0700)]
kernel - Cleanup SWB_NPAGES
* Remove the conditional for the SWB_NPAGES #define so the swblock
structure remains consistent. Remove the override in swap_pager.c.
* Previous code was confusing, but harmless.
Reported-by: Enjolras
Matthew Dillon [Wed, 27 Mar 2013 23:36:27 +0000 (16:36 -0700)]
vkernel - Add debugging
* Provide more information when interrupting to the db> prompt.
Sepherosa Ziehau [Wed, 27 Mar 2013 09:03:10 +0000 (17:03 +0800)]
jme: Enable PHY calibration to fix compat issue w/ certain switches
EA settings are obtained from JMicron Linux driver.
See-also: FreeBSD PR kern/177400
Sepherosa Ziehau [Wed, 27 Mar 2013 07:04:29 +0000 (15:04 +0800)]
jme: Fix comment
Matthew Dillon [Wed, 27 Mar 2013 01:09:15 +0000 (18:09 -0700)]
vkernel - Fix copyin/copyout to return the correct error code
* These functions must return EFAULT on error, not a KERN_* error code.
Matthew Dillon [Wed, 27 Mar 2013 01:07:52 +0000 (18:07 -0700)]
kernel - Fix bug in uiomove() error handling (2)
* Quickly fix bug in last commit related to setting the error
code in vm_fault_page()
Matthew Dillon [Tue, 26 Mar 2013 23:45:25 +0000 (16:45 -0700)]
kernel - mps driver - Adjust M_NOWAIT -> M_INTWAIT.
* This (and many other drivers) really should not be using M_NOWAIT,
which can fail trivially even when memory is available. Use
M_INTWAIT instead.
Matthew Dillon [Tue, 26 Mar 2013 23:35:56 +0000 (16:35 -0700)]
kernel - Fix bug in uiomove() error handling, fix deadlock in read_shortcut
* Fix a recently introduced bug in uiomove() related to error handling
when iovcnt is greater than 1.
* Fix a deadlock in the vm.read_shortcut code, rare triggerable except
by vkernels.
The deadlock is due to a busied VM page being held across a uiomove().
To fix a new function uiomove_nofault() was added which causes EFAULT
to be returned for any non-trivial VM fault (any fault related to nested
objects or vnode objects).
The vop_helper_read_shortcut() procedure uses this new uiomove function
and breaks out when the case occurs, returning and falling through to
the filesystem's normal buffer-cache-based read() code.
* As an added bonus, we no longer have to unlock the VM object across
the new uiomove_nofault() call in the read shorcut code, since it is
no longer possible to deadlock against the VM object.
Reported-by: tuxillo
Sascha Wildner [Tue, 26 Mar 2013 20:26:05 +0000 (21:26 +0100)]
nrelease: Use variables.
Sepherosa Ziehau [Tue, 26 Mar 2013 08:15:17 +0000 (16:15 +0800)]
ipiq: Use cached mycpu to access per-cpu ipiq stats
Reminded-by: sjg@
Sepherosa Ziehau [Tue, 26 Mar 2013 07:53:08 +0000 (15:53 +0800)]
bce: Don't use MSI-X, if the effective RX ring count is 1
Sepherosa Ziehau [Tue, 26 Mar 2013 07:23:00 +0000 (15:23 +0800)]
bce: Try enabling MSI-X on 5716 too
Well, to be frank, I never saw any real "5716" in the field.
Sepherosa Ziehau [Tue, 26 Mar 2013 07:21:34 +0000 (15:21 +0800)]
ipiq: Make stats per-cpu
Sepherosa Ziehau [Tue, 26 Mar 2013 06:16:29 +0000 (14:16 +0800)]
udp: Make stats per-cpu
Sepherosa Ziehau [Tue, 26 Mar 2013 04:41:51 +0000 (12:41 +0800)]
lnc: Call ether_ifattach() before lance_stop()
So ifnet is properly setup.
While I'm here, remove no longer needed lance_attach() and don't return
error code from lance_config(), which returned no error at all.
DragonFly-bug: http://bugs.dragonflybsd.org/issues/2528
Sascha Wildner [Mon, 25 Mar 2013 18:27:44 +0000 (19:27 +0100)]
kernel/cpu_topology: They are just bits, not BITS.
Sepherosa Ziehau [Mon, 25 Mar 2013 09:49:52 +0000 (17:49 +0800)]
ip: Cache align ip_stats
- ip_stats is padded to multiple cache line size; add comment about it
- Cache align the per-cpu ip_stats array
Sascha Wildner [Sat, 23 Mar 2013 19:21:29 +0000 (20:21 +0100)]
natacontrol(8): Add commands to tweak power/acoustic management features.
Sometimes disks designed to operate in low power mode by default
constantly spin up/down during operation which leads to reduced
performance.
This commit adds the 'feature' command to natacontrol(8) which
can be used to tweak the 'advanced power management' and 'automatic
acoustic management' features. Their current setting could already
be viewed before this commit using the 'natacontrol cap' command.
I'd like this to be possible with camcontrol(8) too for CAM attached
disks, but afaict these are ATA specific features so I guess we'd
have to integrate ATA into CAM too before that is possible.
Dragonfly-bug: <http://bugs.dragonflybsd.org/issues/2531>
Reported-by: Maurizio Lombardi <m.lombardi85@gmail.com>
Taken-from: FreeBSD PR 81692
Tested-by: Maurizio Lombardi <m.lombardi85@gmail.com>
Sascha Wildner [Sat, 23 Mar 2013 18:12:11 +0000 (19:12 +0100)]
natacontrol(8): s/atacontrol/natacontrol/
Sascha Wildner [Sat, 23 Mar 2013 11:48:33 +0000 (12:48 +0100)]
bsd.kern.mk: -Wno-unused-but-set-variable is gcc47 specific.
Sascha Wildner [Sat, 23 Mar 2013 00:38:00 +0000 (01:38 +0100)]
kernel/em/emx: Fix -Wundef.
Sascha Wildner [Sat, 23 Mar 2013 00:37:09 +0000 (01:37 +0100)]
kernel/ed: Fix -Wundef.
Sascha Wildner [Fri, 22 Mar 2013 21:54:08 +0000 (22:54 +0100)]
kernel/mfi: Move the dereference of 'sc' below the NULL check.
Sascha Wildner [Fri, 22 Mar 2013 21:47:25 +0000 (22:47 +0100)]
kernel/virtio: Fix -Wundef.
Sascha Wildner [Fri, 22 Mar 2013 21:22:44 +0000 (22:22 +0100)]
kernel/wlan: Fix -Wundef.
Sascha Wildner [Fri, 22 Mar 2013 20:38:33 +0000 (21:38 +0100)]
kernel/acpi: Fix -Wundef.
Sepherosa Ziehau [Fri, 22 Mar 2013 04:58:53 +0000 (12:58 +0800)]
tcp: Cache align tcp_stats
- tcp_stats is padded to multiple cache line size; add comment about it
- Cache align the per-cpu tcp_stats array
Sepherosa Ziehau [Fri, 22 Mar 2013 03:16:24 +0000 (11:16 +0800)]
vr: Remove extra VR_ISR_RX_NOBUF test
Pointed-out-by: swildner@
Sepherosa Ziehau [Fri, 22 Mar 2013 01:23:04 +0000 (09:23 +0800)]
ste: Add another PCI device ID for Sundance ST201
DragonFly-bug: http://bugs.dragonflybsd.org/issues/2529
Sepherosa Ziehau [Fri, 22 Mar 2013 01:22:32 +0000 (09:22 +0800)]
pcidevs: Add device ID for Sundance ST201
Markus Pfeiffer [Tue, 19 Mar 2013 18:57:36 +0000 (18:57 +0000)]
libthread_xu: Remove unnecessary calls to _thr_check_init()
With the previous commit it becomes unnecessary to check whether
libpthread has been initialised. This gets rid of some checks in
hot codepaths.
Markus Pfeiffer [Mon, 18 Mar 2013 21:46:24 +0000 (21:46 +0000)]
libc/libthread_xu - Fix segfault caused by libpthread used before initialised
If a binary has libpthread as dependency and is linked against libintl,
or any other library that uses pthread locking primitives from libc
without depending on libpthread itself it can happen that functions
from libpthread are called before libpthread's constructor has been
called. This leads to a segfault.
This fix adds a weak symbold to libc, namely _pthread_init_early,
which is called from a libc constructor function and therefore makes
sure that libpthread is initialised early enough.
Thanks to Simon Schubert, Angelos Oikonomopoulos, and Sascha Wildner
for the support in debugging this.
Venkatesh Srinivas [Thu, 21 Mar 2013 07:50:52 +0000 (03:50 -0400)]
kernel -- syscons: Resolve unmatched PHOLD() for MOUSE_MODE ioctl.
When a syscons process put itself into MOUSE_MODE, a process-hold
was being placed to stabilize the process for signal delivery. The
hold was not being released on process exit, however.
This change reworks syscons to install a per-process flag as to
whether it is in MOUSE_MODE or not and to remove the excess hold on
exit(). It also cleans up the error handling and prevents stale
process pointers from lingering in syscons stat structures.
Reported-by: mneumann, Studbolt
Closes-bug: 2521
Sepherosa Ziehau [Thu, 21 Mar 2013 09:15:49 +0000 (17:15 +0800)]
bnx: Improve 57766 performance by forcing 2K DMA size
Obtained-from: tg3
Sepherosa Ziehau [Thu, 21 Mar 2013 08:49:41 +0000 (16:49 +0800)]
bnx: Fix transmit hangs for 57766 and 57765 non-Ax chips
For the 57766 and 57765 non-Ax chips, the PCIe Fast Training Sequence
(FTS) value needs to setup to prevent transmit hangs.
Obtained-from: tg3
Antonio Huete Jimenez [Wed, 20 Mar 2013 09:33:28 +0000 (10:33 +0100)]
bpf - Remove crit_enter/exit calls.
bpf_token is used to protect the code now, critical sections are no
longer needed.
Pointed-out-by: sephe
Sepherosa Ziehau [Wed, 20 Mar 2013 13:34:20 +0000 (21:34 +0800)]
bnx: Add support for BCM5762 chips
Taken-from: tg3
John Marino [Tue, 19 Mar 2013 20:57:26 +0000 (21:57 +0100)]
libc/sl_find: sync prototype with NetBSD
The sl_find function does not modify the 'name' argument.
Set the constant qualifier on it to match NetBSD. FreeBSD will make this
change in the future as well.
Submitted by: Eitan Eadler <eadler@freebsd.org>
Sepherosa Ziehau [Tue, 19 Mar 2013 08:51:49 +0000 (16:51 +0800)]
async_rcvd: Don't add/drop socket reference on hot path
Instead, add reference in tcp_attach(), and drop the reference in
tcp_close()
Sepherosa Ziehau [Tue, 19 Mar 2013 07:56:11 +0000 (15:56 +0800)]
async_rcvd: Move MSGF_DONE test under async rcvd spinlock
This flag is meant to be protected by the async rcvd spinlock; use
ssleep instead of tsleep if race happened.
Sysctl node kern.ipc.async_rcvd_drop_race is added to count the
number of async rcvd message dropping races.
Sepherosa Ziehau [Tue, 19 Mar 2013 06:24:16 +0000 (14:24 +0800)]
async_rcvd: Remove the dead async rcvd message debug logging
This race does happen.
Peter Avalos [Mon, 18 Mar 2013 00:29:29 +0000 (17:29 -0700)]
sh: Sync with FreeBSD:
* Expand assignment-like words specially for export/readonly/local.
* Remove unused variables.
* Reset pendingsigs before checking pending traps, not after.
* Track continued jobs (even if not continued by bg or fg).
* Inline waitproc() into its only caller.
* Fix EINTR race condition in "wait" and "set -T" using sigsuspend().
* use setinputfile instead of open/setinputfd.
* Prefer internal nextopt() to libc getopt().
* Use C99 flexible array instead of accessing array beyond bounds.
* Fix two issues when an alias is redefined.
* Detect and flag write errors on stdout in builtins.
* Prefer strsignal() to accessing sys_siglist directly.
* Don't lose $? when backquoted command ends with semicolon or newline.
* Fix crash when parsing '{ } &'.
* Pass $? to command substitution containing compound/multiple commands.
* Simplify cd-hash interaction.
* Remove mkinit's initialization routine.
* Move some stackmarks to fix high memory usage in some loops.
* Show negated commands (!) in jobs output.
* Prefer our character classification functions to <ctype.h>.
* Expand here documents in the current process.
* Do not test for digit_contig in mksyntax.
* Simplify mksyntax
* Fix a crash with the stackmark code.
* If a SIGINT or SIGQUIT interrupts "wait", return status 128+sig.
* When executing a trap, keep exit status along with evalskip.
* Update $FreeBSD$ to include SVN id.
Obtained-from: FreeBSD
Sepherosa Ziehau [Sun, 17 Mar 2013 12:45:52 +0000 (20:45 +0800)]
miidevs: regen
Sepherosa Ziehau [Sun, 17 Mar 2013 12:44:48 +0000 (20:44 +0800)]
miidevs: Flip BCM5720C and BCM5718C IDs
Datasheet is wrong on the the IDs' names.
Sepherosa Ziehau [Sun, 17 Mar 2013 12:25:12 +0000 (20:25 +0800)]
miidevs: regen
Sepherosa Ziehau [Sun, 17 Mar 2013 12:24:54 +0000 (20:24 +0800)]
miidevs: Add PHY IDs for Broadcom 5762
Sepherosa Ziehau [Sun, 17 Mar 2013 11:45:35 +0000 (19:45 +0800)]
pcidevs: regen
Sepherosa Ziehau [Sun, 17 Mar 2013 11:45:05 +0000 (19:45 +0800)]
pcidevs: Add device IDs for Broadcom 5762/5725/5727
Sepherosa Ziehau [Sun, 17 Mar 2013 11:38:43 +0000 (19:38 +0800)]
pcidevs: regen
Sepherosa Ziehau [Sun, 17 Mar 2013 11:38:08 +0000 (19:38 +0800)]
pcidevs: Sort Broadcom chips device IDs in numeric order
Sascha Wildner [Sun, 17 Mar 2013 02:24:10 +0000 (03:24 +0100)]
<paths.h>: Add /usr/local/{bin,sbin} to _PATH_DEFPATH.
Sascha Wildner [Fri, 15 Mar 2013 19:37:29 +0000 (20:37 +0100)]
pciconf(8): Add support for displaying extended capabilities with -c.
Also, bring in some additional minor fixes.
Taken-from: FreeBSD
Sascha Wildner [Fri, 15 Mar 2013 19:29:29 +0000 (20:29 +0100)]
<bus/pci/pcireg.h>: Add some more definitions.
Sascha Wildner [Fri, 15 Mar 2013 19:27:16 +0000 (20:27 +0100)]
pciconf(8): Adjust some whitespace.
Sascha Wildner [Fri, 15 Mar 2013 17:52:50 +0000 (18:52 +0100)]
bsd-family-tree: Sync with FreeBSD (adds FreeBSD 9.1).