dragonfly.git
20 months agohammer2: More hammer2 msg cleanup, get reconnect ioctl working
Matthew Dillon [Sat, 11 Aug 2012 21:56:27 +0000 (14:56 -0700)]
hammer2: More hammer2 msg cleanup, get reconnect ioctl working

* Fix state machine sequencing issues when shutting down a connection.  We
  have to properly simulate DELETE messages for any open transactional
  states and give the function callbacks time to do there stuff.

* Properly respond to DELETE messages for LNK_CONN and LNK_SPAN transactions.

* Stabilize the RECLUSTER ioctl.

20 months agoMerge branches 'hammer2' and 'master' of ssh://crater.dragonflybsd.org/repository...
Matthew Dillon [Sat, 11 Aug 2012 21:56:01 +0000 (14:56 -0700)]
Merge branches 'hammer2' and 'master' of ssh://crater.dragonflybsd.org/repository/git/dragonfly into hammer2

20 months agohptrr.4: Remove unneeded .Pp
Sascha Wildner [Sat, 11 Aug 2012 20:15:12 +0000 (22:15 +0200)]
hptrr.4: Remove unneeded .Pp

20 months agopflogd(8): Raise WARNS to 5.
Sascha Wildner [Sat, 11 Aug 2012 10:25:10 +0000 (12:25 +0200)]
pflogd(8): Raise WARNS to 5.

20 months agolibm & rtld: Ansify some remaining functions.
Sascha Wildner [Sat, 11 Aug 2012 10:14:24 +0000 (12:14 +0200)]
libm & rtld: Ansify some remaining functions.

20 months agohammer2 - Config notifications, cleanup HAMMER2 VFS API
Matthew Dillon [Sat, 11 Aug 2012 03:46:51 +0000 (20:46 -0700)]
hammer2 - Config notifications, cleanup HAMMER2 VFS API

* A hammer2 volume has a PERSISTENT table of 256 entries in the media
  volume header for specifying how the cluster connects together.  Various
  hammer2 directives can list, add, or remove entries from this table.

  This table will be used for several different aspects of the filesystem
  and one of them is to tell the userland hammer2 service daemon what
  other machines to connect to.  That is, we want the cluster configuration
  to be persistently stored as part of a HAMMER2 filesystem.

* Add a notification message from the kernel to the daemon whenever this
  table id modified.  The kernel will also spam the contents of the table
  to the daemon when it first connects to the daemon.

  The service daemon tracks the table and will connect to (or disconnect
  from) the listed targets in real time.  In addition, the service daemon
  will retry a failed connection (or failed DNS lookup) forever as long
  as the entry is intact.  The idea being that a machine in the cluster
  will recover once transitory failures are resolved.

  This is a bit messy at the moment as two pthreads have to be created for
  each connection... one to handle connect, disconnect, and retry operations
  and the other to handle the actual message stream over the connection.

* Clean up the HAMMER2 VFS code's messaging APIs a bit, bringing them
  closer to the hammer2 userland APIs (though of course there will
  always be major differences).

* Adjust the hammer2 VFS to try to clean up open transactional states
  when a socket failure occurs before proceeding with a umount, so the
  related functional states can be triggered and cleaned up.

* Added an ioctl to reconnect a hammer2 mount to the userland hammer2
  service daemon (not yet used).  This will allow us to kill and restart
  the daemon and have it recover the communications pipes between itself
  and the HAMMER2 mounts in the kernel.

20 months agoMerge branches 'hammer2' and 'master' of ssh://crater.dragonflybsd.org/repository...
Matthew Dillon [Fri, 10 Aug 2012 22:52:06 +0000 (15:52 -0700)]
Merge branches 'hammer2' and 'master' of ssh://crater.dragonflybsd.org/repository/git/dragonfly into hammer2

20 months ago/usr/src/Makefile: Remove duplicate target.
Sascha Wildner [Fri, 10 Aug 2012 21:22:03 +0000 (23:22 +0200)]
/usr/src/Makefile: Remove duplicate target.

20 months agohammer2 - Message span tree work
Matthew Dillon [Fri, 10 Aug 2012 18:20:24 +0000 (11:20 -0700)]
hammer2 - Message span tree work

* Trivially optimize out the sending of a SPAN back across the same
  connection it was received from.

20 months agohammer2 - Message routing work
Matthew Dillon [Fri, 10 Aug 2012 17:42:08 +0000 (10:42 -0700)]
hammer2 - Message routing work

* Further API simplification

* Start adding router infrastructure to the kernel VFS

* Looks like we will need a 'source' and 'target' field in
  the message header after all (replaces the single 'spanid' field),
  in order to track the reply VC as a message is relayed.

20 months agoMerge branches 'hammer2' and 'master' of ssh://crater.dragonflybsd.org/repository...
Matthew Dillon [Fri, 10 Aug 2012 17:39:59 +0000 (10:39 -0700)]
Merge branches 'hammer2' and 'master' of ssh://crater.dragonflybsd.org/repository/git/dragonfly into hammer2

20 months agobce: Add TSO support
Sepherosa Ziehau [Fri, 10 Aug 2012 08:22:44 +0000 (16:22 +0800)]
bce: Add TSO support

Obatined-from: FreeBSD

With following modification:
These chips can handle ip.ip_len and tcphdr.th_sum, if they are setup
according to Microsoft LSO specification, so ip.ip_len should not be
cleared and tcphdr.th_sum should be left as it is.

According-to: bnx2

20 months agobce: Remove debug stuffs from polling code
Sepherosa Ziehau [Fri, 10 Aug 2012 06:20:49 +0000 (14:20 +0800)]
bce: Remove debug stuffs from polling code

20 months agobce: Remove debug stuffs from output path
Sepherosa Ziehau [Fri, 10 Aug 2012 06:19:15 +0000 (14:19 +0800)]
bce: Remove debug stuffs from output path

20 months agotuxload - Minor modifications.
Antonio Huete Jimenez [Fri, 10 Aug 2012 08:42:07 +0000 (10:42 +0200)]
tuxload - Minor modifications.

- Add some output.
- First create the files, then mmap() them

20 months agohammer2 - further crypto cleanup
Alex Hornung [Fri, 10 Aug 2012 07:37:22 +0000 (08:37 +0100)]
hammer2 - further crypto cleanup

 * put the symmetric crypto algorithms (so far only GCM) into a table.
   The algorithm is currently chosen via a define (HAMMER2_CRYPTO_ALGO),
   but in the future it would be trivial to make it a runtime setting.

 * Link the crypto chunk size to HAMMER2_MSG_ALIGN, since we want the
   chunks as big as possible, but not so big that a message gets stuck.

20 months agobce: Set RX interrupt rate ~6000Hz
Sepherosa Ziehau [Fri, 10 Aug 2012 04:51:59 +0000 (12:51 +0800)]
bce: Set RX interrupt rate ~6000Hz

20 months agobce: Don't loop in the interrupt handler to drain TX/RX
Sepherosa Ziehau [Fri, 10 Aug 2012 04:36:17 +0000 (12:36 +0800)]
bce: Don't loop in the interrupt handler to drain TX/RX

20 months agobce: Remove debug stuffs on RX/TX interrupt path
Sepherosa Ziehau [Fri, 10 Aug 2012 02:27:13 +0000 (10:27 +0800)]
bce: Remove debug stuffs on RX/TX interrupt path

20 months agobce: Remove debugging stuffs in interrupt handler
Sepherosa Ziehau [Fri, 10 Aug 2012 02:19:01 +0000 (10:19 +0800)]
bce: Remove debugging stuffs in interrupt handler

20 months agohammer2 - Message routing work
Matthew Dillon [Fri, 10 Aug 2012 01:11:32 +0000 (18:11 -0700)]
hammer2 - Message routing work

* Make hammer2_router a separately allocated structure so we can use
  it as a persistent entity when its related hammer2_iocom, h2span_link,
  or h2span_relay structure gets ripped out.

20 months agoMerge branches 'hammer2' and 'master' of ssh://crater.dragonflybsd.org/repository...
Matthew Dillon [Fri, 10 Aug 2012 01:05:44 +0000 (18:05 -0700)]
Merge branches 'hammer2' and 'master' of ssh://crater.dragonflybsd.org/repository/git/dragonfly into hammer2

20 months agohammer2 - make gcm IV counter endian-agnostic
Alex Hornung [Thu, 9 Aug 2012 19:55:55 +0000 (20:55 +0100)]
hammer2 - make gcm IV counter endian-agnostic

20 months agohammer2 - error out on enc/dec errors
Alex Hornung [Thu, 9 Aug 2012 19:31:53 +0000 (20:31 +0100)]
hammer2 - error out on enc/dec errors

20 months agohammer2 - Fix nact assertion
Matthew Dillon [Thu, 9 Aug 2012 20:05:58 +0000 (13:05 -0700)]
hammer2 - Fix nact assertion

* An nact assertion was getting hit because of an assumption that
  the assertion caused not to be correct.  Fix the assumption.

20 months agoMerge branches 'hammer2' and 'master' of ssh://crater.dragonflybsd.org/repository...
Matthew Dillon [Thu, 9 Aug 2012 19:51:25 +0000 (12:51 -0700)]
Merge branches 'hammer2' and 'master' of ssh://crater.dragonflybsd.org/repository/git/dragonfly into hammer2

20 months agoposix_memalign.3: Document aligned_alloc().
Sascha Wildner [Thu, 9 Aug 2012 19:15:53 +0000 (21:15 +0200)]
posix_memalign.3: Document aligned_alloc().

20 months agohammer2 - AES GCM support
Alex Hornung [Thu, 9 Aug 2012 18:35:31 +0000 (19:35 +0100)]
hammer2 - AES GCM support

20 months agohammer2 - Major crypto API cleanup
Matthew Dillon [Thu, 9 Aug 2012 18:02:05 +0000 (11:02 -0700)]
hammer2 - Major crypto API cleanup

* For now always read aux_data in via the FIFO, remove the
  direct-to-message read().

* Cleanup the crypto API

20 months agoMerge branches 'hammer2' and 'master' of ssh://crater.dragonflybsd.org/repository...
Matthew Dillon [Thu, 9 Aug 2012 18:01:47 +0000 (11:01 -0700)]
Merge branches 'hammer2' and 'master' of ssh://crater.dragonflybsd.org/repository/git/dragonfly into hammer2

20 months agolibc: Add a copyright to aligned_alloc.c
Sascha Wildner [Thu, 9 Aug 2012 17:42:46 +0000 (19:42 +0200)]
libc: Add a copyright to aligned_alloc.c

20 months agomalloc.3: Remove a ,
Sascha Wildner [Thu, 9 Aug 2012 17:39:11 +0000 (19:39 +0200)]
malloc.3: Remove a ,

20 months agoixgbe(4): Sync with FreeBSD
François Tigeot [Thu, 9 Aug 2012 10:52:34 +0000 (12:52 +0200)]
ixgbe(4): Sync with FreeBSD

Update to the ixgbe driver:
  - Add a couple of new devices
  - Flow control changes in shared and core code
  - Bug fix to Flow Director for 82598
  - Shared code sync to internal with required core change

20 months agoixgbe: compilation fix for debug routines
François Tigeot [Thu, 9 Aug 2012 08:47:55 +0000 (10:47 +0200)]
ixgbe: compilation fix for debug routines

The driver didn't build when DBG was set to 1.

20 months agoat_quick_exit.3: Add an ERRORS section.
Sascha Wildner [Thu, 9 Aug 2012 07:58:46 +0000 (09:58 +0200)]
at_quick_exit.3: Add an ERRORS section.

Submitted-by: vsrinivas
20 months agolibc: Add a copyright to quick_exit.c
Sascha Wildner [Thu, 9 Aug 2012 07:58:31 +0000 (09:58 +0200)]
libc: Add a copyright to quick_exit.c

Reported-by: vsrinivas
20 months ago<stdlib.h>: Adjust the visibility of our C11 functions.
Sascha Wildner [Thu, 9 Aug 2012 07:53:03 +0000 (09:53 +0200)]
<stdlib.h>: Adjust the visibility of our C11 functions.

20 months agoAdd at_quick_exit(3) and quick_exit(3) manual pages.
Sascha Wildner [Thu, 9 Aug 2012 07:50:14 +0000 (09:50 +0200)]
Add at_quick_exit(3) and quick_exit(3) manual pages.

Taken-from: FreeBSD

20 months agomdoc: Let us refer to C11 in manual pages with ".St -isoC-2011".
Sascha Wildner [Thu, 9 Aug 2012 07:40:10 +0000 (09:40 +0200)]
mdoc: Let us refer to C11 in manual pages with ".St -isoC-2011".

20 months agoxterm: Remove ability to restore console after man, less, etc.
John Marino [Wed, 8 Aug 2012 23:00:33 +0000 (01:00 +0200)]
xterm: Remove ability to restore console after man, less, etc.

Having a man page disappear before the read the end (if it indeed appears
at all) is pretty annoying.  Equally annoying is using the "more" command
on a file with few lines only to see nothing.  The default behavior of
xterm console had few fans.

This removes the smcup and rmcup codes from xterm-basic, the basis for
the xterm console definitions.  Now man pages are left on the screen
after viewing, and the pagers work as expected.

20 months agoemx: Status change is protected by main serializer
Sepherosa Ziehau [Thu, 9 Aug 2012 06:56:45 +0000 (14:56 +0800)]
emx: Status change is protected by main serializer

No need to hold all of the serializers during a status poll

20 months agohammer2 - SPAN protocol work, router work
Matthew Dillon [Thu, 9 Aug 2012 06:25:23 +0000 (23:25 -0700)]
hammer2 - SPAN protocol work, router work

* Fix SPAN relay sort and sequencing bugs.

* Start reworking the APIs to accomodate routed messages.  Start by
  creating a hammer2_router structure and adjusting most of the msg
  functions to pass it instead of the iocom.

* Fix hammer2_state races by moving the state allocation to
  hammer2_msg_alloc() instead of hammer2_msg_write(). This gives
  code a chance to assign the state->any.* field without having to
  worry about the state getting ripped out from under us.

20 months agohammer2 - SPAN protocol work
Matthew Dillon [Thu, 9 Aug 2012 01:32:16 +0000 (18:32 -0700)]
hammer2 - SPAN protocol work

* Because we allow loops in the graph the loss of a feeder node can
  result in a tail-chasing loop of SPAN updates with an ever-growing
  distance parameter.

  To deal with this a spanning tree distance limit is required, beyond
  which no propagation occurs which terminates the chase.  The tail
  then catches up to the head and the node is finally removed from
  the spanning tree entirely.

  This fixes the propagation of spanning tree deletions e.g. when we
  umount a HAMMER2 PFS.

* Fix a state insertion bug.  A structure was being inserted into the
  red-black tree before the required fields were being initialized.
  Corrects a SPAN propagation fault.

20 months agoMerge branches 'hammer2' and 'master' of ssh://crater.dragonflybsd.org/repository...
Matthew Dillon [Thu, 9 Aug 2012 01:32:06 +0000 (18:32 -0700)]
Merge branches 'hammer2' and 'master' of ssh://crater.dragonflybsd.org/repository/git/dragonfly into hammer2

20 months agocut(1): Add back -w (split on whitespace functionality).
Sascha Wildner [Thu, 9 Aug 2012 00:56:25 +0000 (02:56 +0200)]
cut(1): Add back -w (split on whitespace functionality).

Reported-by: Tim Darby <t+dfbsd@timdarby.net>
Dragonfly-bug: <http://bugs.dragonflybsd.org/issues/2385>

20 months agohammer2 - userland API / span work
Matthew Dillon [Wed, 8 Aug 2012 22:04:50 +0000 (15:04 -0700)]
hammer2 - userland API / span work

* Fix a stall bug in the streaming write code

* Add some pretty-printing support for debug output.  Also remove
  a ton of debug messages.

* Add a remote shell 'tree' command to dump the spanning tree.

* Cleanup some of the state handling and error codes.

20 months agoMerge branches 'hammer2' and 'master' of ssh://crater.dragonflybsd.org/repository...
Matthew Dillon [Wed, 8 Aug 2012 22:04:02 +0000 (15:04 -0700)]
Merge branches 'hammer2' and 'master' of ssh://crater.dragonflybsd.org/repository/git/dragonfly into hammer2

20 months agocut: Sync with FreeBSD
John Marino [Wed, 8 Aug 2012 21:22:08 +0000 (23:22 +0200)]
cut: Sync with FreeBSD

Addresses:
http://bugs.dragonflybsd.org/issues/2385
reported-by: Tim Darby

20 months agoMerge branches 'hammer2' and 'master' of ssh://crater.dragonflybsd.org/repository...
Matthew Dillon [Wed, 8 Aug 2012 16:29:57 +0000 (09:29 -0700)]
Merge branches 'hammer2' and 'master' of ssh://crater.dragonflybsd.org/repository/git/dragonfly into hammer2

20 months agohpt27xx(4): Use NULL for pointers.
Sascha Wildner [Wed, 8 Aug 2012 13:42:58 +0000 (15:42 +0200)]
hpt27xx(4): Use NULL for pointers.

20 months agoAdd the hpt27xx(4) driver for HighPoint RocketRAID 27xx SAS controllers.
Sascha Wildner [Wed, 8 Aug 2012 12:18:22 +0000 (14:18 +0200)]
Add the hpt27xx(4) driver for HighPoint RocketRAID 27xx SAS controllers.

The manual page mentions the following adapters to be supported:

* RocketRAID 271x
* RocketRAID 272x
* RocketRAID 274x
* RocketRAID 276x
* RocketRAID 278x

I have tested it with a RocketRAID 2720.

Taken-from: FreeBSD

20 months agobnx: Disable RX max BDs based interrupt moderation
Sepherosa Ziehau [Wed, 8 Aug 2012 13:11:11 +0000 (21:11 +0800)]
bnx: Disable RX max BDs based interrupt moderation

The RX max coalesce BDs is limited to 255, which means that the chip will
generate ~5800 interrupts/s when it sinks 1.48Mpps tiny packets.  However,
interrupt rate at 4000Hz is already enough for the chip to sink 1.48Mpps
tiny packets, so ticks based RX interrupt moderation should be prefered.

20 months agobnx: Allow TX/RX max coalesce BDs to be 0; mainly for debugging
Sepherosa Ziehau [Wed, 8 Aug 2012 11:11:03 +0000 (19:11 +0800)]
bnx: Allow TX/RX max coalesce BDs to be 0; mainly for debugging

20 months agobnx: Correct debug messages
Sepherosa Ziehau [Wed, 8 Aug 2012 08:35:53 +0000 (16:35 +0800)]
bnx: Correct debug messages

20 months agobnx: Rearrange the code to check the spare TX descripors first
Sepherosa Ziehau [Wed, 8 Aug 2012 08:11:11 +0000 (16:11 +0800)]
bnx: Rearrange the code to check the spare TX descripors first

While im here, remove the useless fragmentation checksum code, which
is never supported by this driver

20 months agobnx: Increase spare TX descriptors to 33 to incorporate TSO segment
Sepherosa Ziehau [Wed, 8 Aug 2012 07:53:30 +0000 (15:53 +0800)]
bnx: Increase spare TX descriptors to 33 to incorporate TSO segment

20 months agoemx: emx_timer() only requires main serializer
Sepherosa Ziehau [Wed, 8 Aug 2012 05:31:56 +0000 (13:31 +0800)]
emx: emx_timer() only requires main serializer

20 months agoem/emx: Fix up detach path
Sepherosa Ziehau [Wed, 8 Aug 2012 05:21:20 +0000 (13:21 +0800)]
em/emx: Fix up detach path

- We could release management control only if PCI BAR is mapped
- Release multicase array memory

20 months agohammer2 - SPAN protocol work
Matthew Dillon [Wed, 8 Aug 2012 04:28:40 +0000 (21:28 -0700)]
hammer2 - SPAN protocol work

* Initial implementation of the LNK_SPAN protocol between two hammer
  service daemons running on different machines.  There's still lots to do.

  mount x P PFSs (P pipes) (machine A)
|
  service daemon  (machine A) (handling P + 1 connections)
|
  INET SOCKET
|
  service daemon (machine B) (handling Q + 1 connections)
|
  mount x Q PFSs (Q pipes) (machine B)

* Service deamons starts with LNK_CONN and then interconnect SPANs.

* SPAN protocol allows any number of connections between services daemons and
  from service daemons to physical HAMMER2 mounts.

* Fixed a message write() sequencing bug

* Added some additional debug directives, and also added a remote debug
  directive to connect from one already-running service daemon to another.

20 months agoMerge branches 'hammer2' and 'master' of ssh://crater.dragonflybsd.org/repository...
Matthew Dillon [Wed, 8 Aug 2012 04:28:02 +0000 (21:28 -0700)]
Merge branches 'hammer2' and 'master' of ssh://crater.dragonflybsd.org/repository/git/dragonfly into hammer2

20 months agoemx: Increase spare TX descriprors to 33 incorporate TSO segment
Sepherosa Ziehau [Wed, 8 Aug 2012 04:18:26 +0000 (12:18 +0800)]
emx: Increase spare TX descriprors to 33 incorporate TSO segment

20 months agoemx: Make sure that mbuf is changed before busdma sync
Sepherosa Ziehau [Wed, 8 Aug 2012 04:09:51 +0000 (12:09 +0800)]
emx: Make sure that mbuf is changed before busdma sync

This should not be problem for emx, since it does not have any
busdma constraint thus no effective busdma sync will happen.

20 months agoigb: Make sure that mbuf is changed before busdma sync
Sepherosa Ziehau [Wed, 8 Aug 2012 03:49:41 +0000 (11:49 +0800)]
igb: Make sure that mbuf is changed before busdma sync

This should not be problem for igb, since it does not have any
busdma constraint thus no effective busdma sync will happen.

20 months agoalc: Stablize this driver and fix various porting overlooks
Sepherosa Ziehau [Mon, 6 Aug 2012 12:15:15 +0000 (20:15 +0800)]
alc: Stablize this driver and fix various porting overlooks

- Use ifnet serializer to protect driver data.  This should fix the
  various panics that were observed on the network output path.
- Fix busdma setup.
- Always allocate the descriptor rings and status blocks at the lower
  4GB.  The original way will require the RX/TX bufs to be located at
  the lower 4GB, which is a great waste of bounce buffers, cpu cycles
  and memory bandwidth.
- Don't mess up M_PKTHDR on RX path.
- Allocate mbuf w/ MB_WAIT on initialization path.
- Enable MSI by default.

20 months agohammer2 - more userland msg API work
Matthew Dillon [Tue, 7 Aug 2012 23:15:48 +0000 (16:15 -0700)]
hammer2 - more userland msg API work

* Simplify the messaging API further.

* Add a state function callback for state machine transitions

* Open a LNK_CONN transaction on connect, allowing daemon<->daemon spanning
  tree operation (untested).

20 months agohammer2 - Correct state recording bugs in vfs
Matthew Dillon [Tue, 7 Aug 2012 23:15:12 +0000 (16:15 -0700)]
hammer2 - Correct state recording bugs in vfs

* Correct similar bugs in the vfs that were present in the userland code.

20 months agohammer2 - Add pfs-fsid, pfs-clid directive
Matthew Dillon [Tue, 7 Aug 2012 21:22:15 +0000 (14:22 -0700)]
hammer2 - Add pfs-fsid, pfs-clid directive

* Add commands to retrieve specific uuid's for named PFSs.

20 months agohammer2 - spanning tree and messaging work
Matthew Dillon [Tue, 7 Aug 2012 19:40:24 +0000 (12:40 -0700)]
hammer2 - spanning tree and messaging work

* Fix numerous bugs and cleanup the messaging infrastructure further.

  Fix issues with state tracking and incorrect message flags, assert that
  flags are correct.

* Fix issues with connection termination.  All active transactions must be
  completely closed from both ends before the iocom can be destroyed.

  Fix bugs in the MSGF_DELETE message simulator when a socket error occurs
  (simulating the other end closing any active transactions going over
  the iocom).

* Implement the spanning tree relay code.  The relay code is even relatively
  optimal though ultimately we need to add additional filters to make
  client<->service rendezvous's less cpu intensive.

20 months agohammer2 - Adjust LNK_SPAN/LNK_CONN
Matthew Dillon [Tue, 7 Aug 2012 19:38:33 +0000 (12:38 -0700)]
hammer2 - Adjust LNK_SPAN/LNK_CONN

* Adjust the SPAN and CONN structures, rename 'weight' to 'dist' (for
  distance).

20 months agohammer2 - add HAMMER2IOC_PFS_LOOKUP
Matthew Dillon [Tue, 7 Aug 2012 19:37:53 +0000 (12:37 -0700)]
hammer2 - add HAMMER2IOC_PFS_LOOKUP

* Add the HAMMER2IOC_PFS_LOOKUP ioctl which looks up a specific PFS
  by name.

20 months agoMerge branches 'hammer2' and 'master' of ssh://crater.dragonflybsd.org/repository...
Matthew Dillon [Tue, 7 Aug 2012 19:37:18 +0000 (12:37 -0700)]
Merge branches 'hammer2' and 'master' of ssh://crater.dragonflybsd.org/repository/git/dragonfly into hammer2

20 months agoncurses: Fix pkgsrc check and use of ncurses
John Marino [Tue, 7 Aug 2012 11:35:26 +0000 (13:35 +0200)]
ncurses: Fix pkgsrc check and use of ncurses

Without the macro SET_NEED_WCHAR_H defined, the ncurses header will not
include wchar.h which is where the wint_t type is defined.  This breaks
any program loading ncurses.h without defining this macro because several
functions use the wint_t type.

Define wint_t as int if wchar.h isn't included.  This fixes the ncurses
check on several pkgsrc configuration checks and allows the package to
build with the system ncurses.

20 months agoarcmsr(4): Use cam_calc_geometry().
Sascha Wildner [Tue, 7 Aug 2012 07:19:35 +0000 (09:19 +0200)]
arcmsr(4): Use cam_calc_geometry().

20 months agompt(4): Fix a porting mistake I did in 6d259fc1.
Sascha Wildner [Tue, 7 Aug 2012 07:16:38 +0000 (09:16 +0200)]
mpt(4): Fix a porting mistake I did in 6d259fc1.

I left in both the code of the "#if __FreeBSD_version" as well as that of
its "#else". This caused the geometry to be calculated twice.

20 months agoMerge branches 'hammer2' and 'master' of ssh://crater.dragonflybsd.org/repository...
Matthew Dillon [Tue, 7 Aug 2012 06:37:21 +0000 (23:37 -0700)]
Merge branches 'hammer2' and 'master' of ssh://crater.dragonflybsd.org/repository/git/dragonfly into hammer2

20 months agokernel/dsched: Add a version parameter to the DSCHED_POLICY_MODULE macro.
Sascha Wildner [Tue, 7 Aug 2012 01:31:59 +0000 (03:31 +0200)]
kernel/dsched: Add a version parameter to the DSCHED_POLICY_MODULE macro.

20 months agohptmv(4): Use cam_calc_geometry().
Sascha Wildner [Tue, 7 Aug 2012 01:25:51 +0000 (03:25 +0200)]
hptmv(4): Use cam_calc_geometry().

Also add a dependency on cam(4).

Taken-from: FreeBSD

20 months agohptiop(4): Add some more PCI IDs.
Sascha Wildner [Tue, 7 Aug 2012 01:03:31 +0000 (03:03 +0200)]
hptiop(4): Add some more PCI IDs.

The following adapters were added:

RocketRAID 4210
RocketRAID 4211
RocketRAID 4310
RocketRAID 4311
RocketRAID 3530
RocketRAID 3560

This commit also adds a cam(4) dependency.

Taken-from: FreeBSD

20 months agolibc/rpc: Remove redundant check.
Sascha Wildner [Mon, 6 Aug 2012 13:56:12 +0000 (15:56 +0200)]
libc/rpc: Remove redundant check.

20 months agokernel/x86_64: Fix kernel build without DDB.
Sascha Wildner [Mon, 6 Aug 2012 13:53:41 +0000 (15:53 +0200)]
kernel/x86_64: Fix kernel build without DDB.

Reported-by: nant
20 months agohammer2 - Flesh out span code, API cleanups
Matthew Dillon [Sat, 4 Aug 2012 22:11:40 +0000 (15:11 -0700)]
hammer2 - Flesh out span code, API cleanups

* Cleanup the transactional APIs and add a few functions to help with
  simple (error code only) message replies.

* Better message protocol layering for both the kernel and userland code.

* Kernel now opens a LNK_CONN transaction which will enable the SPAN
  protocol on the link and also serve to install a PFS filter (which is
  not yet implemented).

  Upon success the kernel then initiates the SPAN.

  Basically for the kernel:

send LNK_CONN
wait for streaming reply (transaction remains open on both sides)
send LNK_SPAN

TODO: Receive/track LNK_SPANs, each representing a virtual circuit.

TODO: Track LNK_SPANs that match our PFS.

TODO: Issue higher level protocol transaction messages over these
      circuits based on VNOPS, caching, mirroring, etc.
      (transactional failures can occur when the LNK_SPAN state
      changes, forcing a retry, etc).

* Userland now accepts the LNK_CONN and uses the open transaction to
  install tracking structures for those connections participating in
  the SPAN protocol.

* Userland now installs tracking structures for received SPAN messages.

* Start fleshing out the userland side of the SPAN relay/transmit code.
  This will involve yet more structures to track which SPANs are being
  relayed over each connection, so changes can be propagated (not yet
  implemented).

  For userland the TODO is very large so no point iterating it here.

* Kernel now accepts DBG_SHELL replies (basically debug output messages)
  and will kprintf() them.  DBG_SHELL commands not yet accepted by the
  kernel.

20 months agoMerge branches 'hammer2' and 'master' of ssh://crater.dragonflybsd.org/repository...
Matthew Dillon [Sat, 4 Aug 2012 22:06:57 +0000 (15:06 -0700)]
Merge branches 'hammer2' and 'master' of ssh://crater.dragonflybsd.org/repository/git/dragonfly into hammer2

20 months agoAnsify some function definitions that were previously overlooked.
Sascha Wildner [Sat, 4 Aug 2012 10:29:28 +0000 (12:29 +0200)]
Ansify some function definitions that were previously overlooked.

20 months agohptrr(4): Add a __printflike().
Sascha Wildner [Sat, 4 Aug 2012 09:11:21 +0000 (11:11 +0200)]
hptrr(4): Add a __printflike().

20 months agoMerge branches 'hammer2' and 'master' of ssh://crater.dragonflybsd.org/repository...
Matthew Dillon [Sat, 4 Aug 2012 02:57:58 +0000 (19:57 -0700)]
Merge branches 'hammer2' and 'master' of ssh://crater.dragonflybsd.org/repository/git/dragonfly into hammer2

20 months agoopen.2: Fix .Dv and combine lines.
Sascha Wildner [Fri, 3 Aug 2012 21:27:39 +0000 (23:27 +0200)]
open.2: Fix .Dv and combine lines.

20 months agomdoc.local: Add FreeBSD 7.3 and 8.1 which we are referencing.
Sascha Wildner [Fri, 3 Aug 2012 20:51:27 +0000 (22:51 +0200)]
mdoc.local: Add FreeBSD 7.3 and 8.1 which we are referencing.

20 months agohptrr.4: Move the tunable info into its own section and improve wording.
Sascha Wildner [Fri, 3 Aug 2012 20:29:02 +0000 (22:29 +0200)]
hptrr.4: Move the tunable info into its own section and improve wording.

20 months agoamr.4: Add missing .Bd
Sascha Wildner [Fri, 3 Aug 2012 20:28:24 +0000 (22:28 +0200)]
amr.4: Add missing .Bd

20 months agodisklabel32/64: Add support for 'T' size specifier.
Sascha Wildner [Fri, 3 Aug 2012 19:45:49 +0000 (21:45 +0200)]
disklabel32/64: Add support for 'T' size specifier.

20 months agoSync zoneinfo database with tzdata2012e from ftp://ftp.iana.org/tz/releases
Sascha Wildner [Fri, 3 Aug 2012 10:20:15 +0000 (12:20 +0200)]
Sync zoneinfo database with tzdata2012e from ftp://ftp.iana.org/tz/releases

* australasia (Pacific/Fakaofo): Tokelau is UTC+13, not UTC+14.
    (Thanks to Steffen Thorsen.)

20 months agokernel: add a flags argument to LOCK_SYSINIT
François Tigeot [Fri, 3 Aug 2012 09:23:11 +0000 (11:23 +0200)]
kernel: add a flags argument to LOCK_SYSINIT

We may not want to use LK_CAN_RECURSE in all situations

20 months agobnx: Remove unused code
Sepherosa Ziehau [Fri, 3 Aug 2012 07:57:43 +0000 (15:57 +0800)]
bnx: Remove unused code

20 months agokernel: add a LOCK_SYSINIT helper macro
François Tigeot [Fri, 22 Jun 2012 13:55:49 +0000 (15:55 +0200)]
kernel: add a LOCK_SYSINIT helper macro

* Inspired from FreeBSD's MTX_SYSINIT

* This will help with driver porting

20 months agokernel: Fix kernel build when compiled without INVARIANTS.
Nuno Antunes [Fri, 3 Aug 2012 06:27:52 +0000 (07:27 +0100)]
kernel: Fix kernel build when compiled without INVARIANTS.

20 months agoAdd the hptrr(4) driver for HighPoint RocketRAID 17xx, 22xx, 23xx and 25xx.
Sascha Wildner [Fri, 3 Aug 2012 00:18:34 +0000 (02:18 +0200)]
Add the hptrr(4) driver for HighPoint RocketRAID 17xx, 22xx, 23xx and 25xx.

The manual page mentions the following adapters to be supported:

* RocketRAID 172x series
* RocketRAID 174x series
* RocketRAID 2210
* RocketRAID 222x series
* RocketRAID 2240
* RocketRAID 230x series
* RocketRAID 231x series
* RocketRAID 232x series
* RocketRAID 2340
* RocketRAID 2522

I have tested it with a RocketRAID 2300.

Taken-from: FreeBSD

20 months agohptmv(4): Reduce si_iosize_max to 64KB.
Sascha Wildner [Thu, 2 Aug 2012 22:42:39 +0000 (00:42 +0200)]
hptmv(4): Reduce si_iosize_max to 64KB.

This fixes busdma panics we were getting with it.

busdma-clue-by: sephe

20 months agokernel/cam: Make si_iosize_max overridable by drivers.
Sascha Wildner [Thu, 2 Aug 2012 22:14:28 +0000 (00:14 +0200)]
kernel/cam: Make si_iosize_max overridable by drivers.

20 months agohptmv.4: Improve wording and s/amd64/x86_64/
Sascha Wildner [Fri, 3 Aug 2012 00:28:19 +0000 (02:28 +0200)]
hptmv.4: Improve wording and s/amd64/x86_64/

20 months agocustomcc: Fix the setup of the /usr/include path to use.
Sascha Wildner [Thu, 2 Aug 2012 17:16:08 +0000 (19:16 +0200)]
customcc: Fix the setup of the /usr/include path to use.

With the recent O_DIRECTORY addition, this apparent bug in the script was
exposed. Using -isysroot/-isystem doesn't seem to cut it for what we want
here (which is to completely override the /usr/include path).

I didn't verify in 100% detail, but all evidence looks like the reason is
that when -I is present on the command line, the paths of the headers
which are included by headers from this directory are not prefixed with
-isysroot's argument.

So for now, use -iprefix and -iwithbeforeprefix for /usr/include, which
seem to do what we want.

While here, add our copyright.

Reported-by: marino