4 years agokernel - Refactor the kernel message buffer code
Matthew Dillon [Tue, 3 Mar 2015 01:55:51 +0000 (17:55 -0800)]
kernel - Refactor the kernel message buffer code

* Add a separate tracking index for /dev/klog (syslog) so it does not eat
  the base index for the in-memory buffer.

* Change the way the FIFO indexes work.  The indexes are no longer stored
  as modulo size values.  Instead they are simply adjusted without a modulo,
  making calculations easier.

* When the FIFO is full we now add around ~1KB of slop to reduce instances
  where SMP collisions implode the buffer.  This also required adjusting
  the kern.msgbuf sysctl to avoid dumping the 'slop' area (it used to just
  dump the entire buffer).

* Adjust dmesg to operate more consistently, and to modulo the indices when
  making calculations.

* The dmesg -a option now dumps the <num> prefix for syslog / console output
  messages.  Before it tried to strip them out, which created problems in
  distinguishing kprintf()d output from syslog output.

* Adjust the console tty support thread (which copies the dmesg buffer to the
  console) as well as /dev/klog to use the new index methodology.

* It is now possible for the indexes to wrap the buffer multiple times
  (between e.g. bufl and bufx), and it obviously makes no sense to try to
  dump the overwritten data over and over again, so if indexes get totally
  out of whack we reset bufr and bufl as needed to the size of the buffer.

4 years agoifnet: Make rest of ifnet accessing MPSAFE
Sepherosa Ziehau [Mon, 2 Mar 2015 14:36:36 +0000 (22:36 +0800)]
ifnet: Make rest of ifnet accessing MPSAFE

4 years agoacpi/pstate: Ignore inconsistent PSS table
Sepherosa Ziehau [Mon, 2 Mar 2015 13:43:17 +0000 (21:43 +0800)]
acpi/pstate: Ignore inconsistent PSS table

Some BIOSes create different PSS tables; just trust the one from the
BSP and move on.

Tested-by: Markus Pfeiffer
4 years agosbin/hammer: Don't show irrelevant "BM" and "d" after root split
Tomohiro Kusumi [Mon, 2 Mar 2015 16:32:05 +0000 (01:32 +0900)]
sbin/hammer: Don't show irrelevant "BM" and "d" after root split

- Make hammer show command suppress irrelevant outputs
  "BM NODE ..." and "d tids ..." after splitting the root node.

- When splitting the root node HAMMER uses a copy of predefined special
  node element that has static member values (regardless of other nodes
  within the btree). After the split, this predefined special element
  will be elms[0] of the (new)root node that has a pointer to the old
  root node as its current child.

- However this elms[0] always has 0 for internal.mirror_tid and 1 for
  base.delete_tid (till it's updated) which results hammer show command
  showing unnecessary "BM" and "d". This commit suppress "BM" that
  doesn't actually indicate invalid mirror tid, and suppress "d" that
  doesn't indicate actual delete as following diff of two results shows.

<         d tids 0000000000000001:0000000000000001 suboff=8000000020800000 mirror 0000000000000000
>           tids 0000000000000001:0000000000000001 suboff=8000000020800000 mirror 0000000000000000
< BM   NODE 8000000020800000 cnt=43 p=8000000020801000 type=L depth=1 mirror 0000000100098160 fill=z8:65=1% {
>      NODE 8000000020800000 cnt=43 p=8000000020801000 type=L depth=1 mirror 0000000100098160 fill=z8:65=1% {

4 years agosbin/hammer - Change verbose level for showing data records.
Antonio Huete Jimenez [Mon, 2 Mar 2015 16:03:31 +0000 (17:03 +0100)]
sbin/hammer - Change verbose level for showing data records.

- Also fix missing braces.

Suggested-by: tkusumi
4 years agosbin/hammer - Hex data dump for misc & data records
Antonio Huete Jimenez [Mon, 2 Mar 2015 15:46:30 +0000 (16:46 +0100)]
sbin/hammer - Hex data dump for misc & data records

- Under request of very verbose output, provide an hex
  dump for data, db and ext records.
- This is very useful for debugging.

4 years agosbin/hammer - Properly indent config text on 'show' output
Antonio Huete Jimenez [Mon, 2 Mar 2015 14:52:57 +0000 (15:52 +0100)]
sbin/hammer - Properly indent config text on 'show' output

4 years agodma(8): install default conf files with installworld
John Marino [Mon, 2 Mar 2015 13:45:55 +0000 (14:45 +0100)]
dma(8): install default conf files with installworld

Previously dma configure files were only installed with the
"make distribution" command.  Additionally, the user was expected to
modify them as opposed to copies of them.  This is probably why there
were part of distribution, in order to avoid overwriting the dma.conf
and auth.conf.

The negative side to this approach is that updated *.conf sample files
would never be installed.  Since the dma.conf is actually completely
commented out, and since it doesn't fail in the absence of dma.conf,
these files aren't actually needed.

This commit installs /etc/dma/dma.conf.sample and /etc/dma/auth.conf.sample
files during installworld instead.  Future updates to the *.conf.sample
files will overwrite them, but obviously /etc/dma/*.conf will not be
touched. Some of the sendfile conf files are provided as .sample, so the
concept is not new for DragonFly.

4 years agodma(8): remove unused virtusetable
John Marino [Mon, 2 Mar 2015 12:50:47 +0000 (13:50 +0100)]
dma(8): remove unused virtusetable

This was intended to be template file for the VIRTUAL option in dma,
but it appears this option was never implemented, nor was this file
ever installed.  Remove it.

4 years agodma(8): Sync with upstream (22 SEP 2014)
John Marino [Mon, 2 Mar 2015 10:44:02 +0000 (11:44 +0100)]
dma(8): Sync with upstream (22 SEP 2014)

There is only one substantial change: improving mail input format error
message.  The remain changes are email address, copyright years, etc.

While here, document which files have local modifications by adding a

4 years agoifnet: Make blocking operation in if_addrheads iteration MPSAFE
Sepherosa Ziehau [Wed, 18 Feb 2015 13:01:15 +0000 (21:01 +0800)]
ifnet: Make blocking operation in if_addrheads iteration MPSAFE

Two methods are used:
- Dispatch blocking operation in if_addrheads iteration to netisr0
  to run for functions which do not copy data into user space.
- Use ifaddr marker to make sure that the ifaddr list is not broken
  if the ifaddr list is changed during the blocking operation.  And
  reference the ifaddr being used so it will not be destroyed during
  the blocking operation.

4 years agodmesg - Add -n dumpnr option
Matthew Dillon [Mon, 2 Mar 2015 01:01:22 +0000 (17:01 -0800)]
dmesg - Add -n dumpnr option

* Add the -n option to specify a kernel core dump number, similar to
  how kgdb works, as a convenience so you don't have to write out the
  long -M and -N options.

4 years agohammer2 - Fix DIO_INPROG race.
Matthew Dillon [Sun, 1 Mar 2015 19:46:12 +0000 (11:46 -0800)]
hammer2 - Fix DIO_INPROG race.

* It is possible when a chained DIO_INPROG is present for the DIO to become
  GOOD and for the dio->refs ref to be release, but not yet have finished
  its INPROG processing due to the chaining.

  In this situation, a temporary user of the DIO will get/put it and hit
  an important sanity assertion in putblk.

* Fix by disallowing the DIO_GOOD shortcut in hammer2_io_getblk() if the
  DIO is still DIO_INPROG.

4 years agoxdisk - Flesh out support
Matthew Dillon [Sun, 1 Mar 2015 19:44:35 +0000 (11:44 -0800)]
xdisk - Flesh out support

* Add libdevstat support so 'xa' devices can report meaningful
  data in systat -vm.

* Add sysctls to track active requests.

4 years agokernel - work on dmsg disk exports
Matthew Dillon [Sun, 1 Mar 2015 19:41:41 +0000 (11:41 -0800)]
kernel - work on dmsg disk exports

* Refactor and clean up the kdmsg thread cleanup code.

* Add a workaround for a possible tx/rx race which can occur due to the
  transmit side not retiring the kdmsg until after writing it.  This can
  potentially block and allow a received response to be processed before the
  related transmitted kdmsg is cleaned up.

* Add sysctls to track operations in progress.

* Code documentation.

4 years agolibdevstat - add "xa"
Matthew Dillon [Sun, 1 Mar 2015 19:40:13 +0000 (11:40 -0800)]
libdevstat - add "xa"

* Add a match line for "xa" (xdisk) devices.

4 years agolibdmsg - Fix incomplete write bug
Matthew Dillon [Sun, 1 Mar 2015 19:37:53 +0000 (11:37 -0800)]
libdmsg - Fix incomplete write bug

* Fix a bug where a partial non-blocking write of encrypted data does not
  properly set the WREQ flag if the related dmsg has been disposed of.
  This could cause random stalls of the link.

* Fix an errno-handling bug.

* Cleanup and debugging.

4 years agoRevert "drm/i915: Sync i915_gem_pwrite_ioctl() with Linux 3.11"
François Tigeot [Sun, 1 Mar 2015 17:36:41 +0000 (18:36 +0100)]
Revert "drm/i915: Sync i915_gem_pwrite_ioctl() with Linux 3.11"

This reverts commit 005b6ef6b6adc0554079d13443c56f48766e8afc.

It breaks Ironlake.

4 years agolibedit: Add bapt patches to improve unicode
John Marino [Sun, 1 Mar 2015 15:14:24 +0000 (16:14 +0100)]
libedit: Add bapt patches to improve unicode

On Jan 9, bapt synced FreeBSD-current with the latest libedit from NetBSD.
After that, he added local patches to fix line reading in a unicode
environment.  Specifically it allowed sh(1) to work in UTF-8 environment.
I appreciate that bapt took the time to identify those patches for the
benefit of DragonFly.  Thanks!

4 years agokernel/radeon: Remove an unused GPLv2 only file.
Sascha Wildner [Sun, 1 Mar 2015 11:37:15 +0000 (12:37 +0100)]
kernel/radeon: Remove an unused GPLv2 only file.

Its contents are not used by our current radeon code (the functions
end up being defined as empty inlines in radeon_drv.c) and seems to
be the only file in Linux' radeon driver that is not MIT licensed.

So remove it.

In-discussion-with: ftigeot

4 years agodrm/i915: Sync i915_gem_pwrite_ioctl() with Linux 3.11
François Tigeot [Sun, 1 Mar 2015 10:46:09 +0000 (11:46 +0100)]
drm/i915: Sync i915_gem_pwrite_ioctl() with Linux 3.11

4 years agodrm/i915: i915_gem_pager_fault() is i915_gem_fault()
François Tigeot [Sun, 1 Mar 2015 10:19:57 +0000 (11:19 +0100)]
drm/i915: i915_gem_pager_fault() is i915_gem_fault()

4 years agodrm: Implement linux/io-mapping.h
François Tigeot [Sun, 1 Mar 2015 10:13:52 +0000 (11:13 +0100)]
drm: Implement linux/io-mapping.h

4 years agosbin/hammer: Don't show FLAG_BADMIRRORTID for root node in certain corner case situation
Tomohiro Kusumi [Sat, 28 Feb 2015 20:06:01 +0000 (05:06 +0900)]
sbin/hammer: Don't show FLAG_BADMIRRORTID for root node in certain corner case situation

- Make hammer show command stop showwing an error flag regarding
  mirror tid that isn't actually an error.

- newfs_hammer initializes the root node's mirror_tid with 0 along
  with its first two elements, but this mirror_tid is not updated
  till the third element is allocated (by creating a file, etc).
  Following result shows this situation.

- In this situation the root node's node->mirror_tid (==0) being
  smaller than elm->base.create_tid or elm->base.delete_tid is not
  an error. This only happens on the root node because all the other
  nodes get updated when they split from existing ones.

     NODE 8000000020800000 cnt=02 p=0000000000000000 type=L depth=0 mirror 0000000000000000 fill=z8:65=1% {
B-----M ELM  0 R lo=00000001 obj=0000000000000001 rt=01 key=0000000000000000 ot=01
         tids 0000000100000001:0000000000000000
B-----M ELM  1 R lo=00000002 obj=0000000000000001 rt=15 key=0000000000000000 ot=00
         tids 0000000100000001:0000000000000000

4 years agosbin/hammer: Rename static function print_elm_flags() to get_elm_flags()
Tomohiro Kusumi [Fri, 27 Feb 2015 11:45:22 +0000 (20:45 +0900)]
sbin/hammer: Rename static function print_elm_flags() to get_elm_flags()

- print_elm_flags() doesn't print anything.

4 years agokernel: Mark sigexit() and cpu_halt() as not returning.
Sascha Wildner [Sat, 28 Feb 2015 20:31:02 +0000 (21:31 +0100)]
kernel: Mark sigexit() and cpu_halt() as not returning.

4 years agokernel/netinet6: Remove some bogus checks for KERNEL (use just _KERNEL).
Sascha Wildner [Sat, 28 Feb 2015 19:59:36 +0000 (20:59 +0100)]
kernel/netinet6: Remove some bogus checks for KERNEL (use just _KERNEL).

4 years agokernel/scsi: Fix sense information printing in bootverbose.
Sascha Wildner [Sat, 28 Feb 2015 19:55:30 +0000 (20:55 +0100)]
kernel/scsi: Fix sense information printing in bootverbose.

4 years agodrm/i915: Sync i915_gem.c with Linux 3.11
François Tigeot [Sat, 28 Feb 2015 10:48:43 +0000 (11:48 +0100)]
drm/i915: Sync i915_gem.c with Linux 3.11

* Make the GEM code more similar to Linux

* Replace i915_gem_shmem_pread() by the OpenBSD implementation
  (i915_gem.c revision 1.85)

* The rest of the changed code is based on Linux 3.11

4 years agohammer2 - Add extra debugging
Matthew Dillon [Sat, 28 Feb 2015 18:06:14 +0000 (10:06 -0800)]
hammer2 - Add extra debugging

* Enable DMsgDebugOpt if -d is specified twice.

4 years agolibdmsg - Fix memory leak
Matthew Dillon [Sat, 28 Feb 2015 18:04:54 +0000 (10:04 -0800)]
libdmsg - Fix memory leak

* Fix a memory leak in the message relay code.  When relaying a message
  we just transfer the aux_data pointer to the relay message.  The
  allocation of the relay message was also allocate aux_data space which
  was getting thrown away and not freed.

4 years agohammer2 / kern_dmsg - Fix bugs
Matthew Dillon [Sat, 28 Feb 2015 16:13:49 +0000 (08:13 -0800)]
hammer2 / kern_dmsg - Fix bugs

* Fix header size limt check.

* Do not free the message data out from under a running I/O.
  Introduce an API for detaching aux_data from a msg.

* Increase DMSG_AUX_MAX to 1MB to ensure that xdisk (remote disks)
  work with any filesystem.

  Theoretically we can break up READ and WRITE messages into pieces
  in order to allow DMSG_AUX_MAX to be made smaller (which is easier
  to manage in-kernel), but for now the implementation just uses a
  single message transaction.

* Adjust some comments.

4 years agolibdmsg - Fix buffer indexing bug in crypted path
Matthew Dillon [Sat, 28 Feb 2015 16:11:33 +0000 (08:11 -0800)]
libdmsg - Fix buffer indexing bug in crypted path

* Fix a buffering index bug in the crypted path which causes a buffer
  overrun and/or implodes the connection on a protocol error.

4 years agokernel: Remove unused xwait headers.
Sascha Wildner [Sat, 28 Feb 2015 11:53:03 +0000 (12:53 +0100)]
kernel: Remove unused xwait headers.

xsleep/xwakeup were added to DragonFly in 2003 to replace asleep/awakeup
from FreeBSD 4.x. tsleep & wakeup sleep on untyped identifiers; the sleep
routines do not store through the identifiers and treat them as opaque.
xsleep/xwakeup in contrast slept on explicit sleep structures,
'struct xwait'.

xsleep / xwakeup were never used; they were born #if-0ed out and were
removed by 2004. This commit removes a legacy declaration and associated

Submitted-by: vsrinivas
Dragonfly-bug: <https://bugs.dragonflybsd.org/issues/2786>

4 years agokernel: Remove unused hogticks global from kern_synch.c.
Sascha Wildner [Sat, 28 Feb 2015 11:33:07 +0000 (12:33 +0100)]
kernel: Remove unused hogticks global from kern_synch.c.

hogticks was a global definition used in kern_synch.c:should_yield().
A thread that had remained running for more than hogticks would
return true for should_yield(). DragonFly has not used this global
for a long time.

Submitted-by: vsrinivas
Dragonfly-bug: <https://bugs.dragonflybsd.org/issues/2787>

4 years agodrm: Add asm/uaccess.h functions
François Tigeot [Sat, 28 Feb 2015 08:46:22 +0000 (09:46 +0100)]
drm: Add asm/uaccess.h functions

* __copy_to_user() and __copy_from_user(), obtained from OpenBSD

* __copy_to_user_inatomic() and __copy_from_user_inatomic_nocache(),
  obtained from FreeBSD

4 years agodrm: Import drm_memory.h from Linux 3.11
François Tigeot [Sat, 28 Feb 2015 08:05:56 +0000 (09:05 +0100)]
drm: Import drm_memory.h from Linux 3.11

4 years agodrm: Add drm_clflush_virt_range()
François Tigeot [Sat, 28 Feb 2015 07:57:43 +0000 (08:57 +0100)]
drm: Add drm_clflush_virt_range()

Obtained-from: Linux 3.11

4 years agodrm: linux/mm.h: Add offset_in_page()
François Tigeot [Sat, 28 Feb 2015 07:50:44 +0000 (08:50 +0100)]
drm: linux/mm.h: Add offset_in_page()

Obtained-from: OpenBSD

4 years agoxdisk - disk_setdiskinfo() must be assynchronous
Matthew Dillon [Sat, 28 Feb 2015 07:28:42 +0000 (23:28 -0800)]
xdisk - disk_setdiskinfo() must be assynchronous

* Allow CMD_BUF_READ operations without the device having to be open.
  This allows disk probes to occur.

* Use disk_setdiskinfo(), which is asynchronous, to avoid an I/O deadlock
  because the call is made from the rxmsg loop.  If it were to issue I/O
  synchronously we would deadlock and never process the reply.

4 years agolibdmsg - add safeties
Matthew Dillon [Sat, 28 Feb 2015 05:03:06 +0000 (21:03 -0800)]
libdmsg - add safeties

* Preinitialize return counters to 0 as a safety.  Not required for proper

4 years agolibdmsg - Fix buffer overrun
Matthew Dillon [Sat, 28 Feb 2015 05:00:36 +0000 (21:00 -0800)]
libdmsg - Fix buffer overrun

* Large messages (generally large data payloads) could overrun the FIFO
  buffer.  e.g. dd if=/dev/xa<blah> of=/dev/null bs=32k

* Fix by chunking up large payloads.

4 years agoacpi_video(4): Fix detach panic.
Imre Vadasz [Fri, 27 Feb 2015 23:51:27 +0000 (00:51 +0100)]
acpi_video(4): Fix detach panic.

* The "if ((adr & DOD_DEVID_MASK_FULL) == DOD_DEVID_LCD)" test from
  acpi_video_vo_init was missing in acpi_video_vo_destroy. This meant
  that on some machines we ended up calling STAILQ_REMOVE with an element
  not contained in the list, which causes a panic since STAILQ_REMOVE
  doesn't check for the end of the list.

4 years agonet/if_lagg: Fix double-free issue
Markus Pfeiffer [Thu, 26 Feb 2015 15:24:45 +0000 (15:24 +0000)]
net/if_lagg: Fix double-free issue

4 years agogcc50: Update to 27 Feb 2015 snapshot (SVN 221044)
John Marino [Fri, 27 Feb 2015 08:05:01 +0000 (09:05 +0100)]
gcc50: Update to 27 Feb 2015 snapshot (SVN 221044)

4 years agoMerge branch 'vendor/GCC50'
John Marino [Fri, 27 Feb 2015 10:13:33 +0000 (11:13 +0100)]
Merge branch 'vendor/GCC50'

4 years agoUpdate gcc-50 to SVN version 221044
John Marino [Fri, 27 Feb 2015 08:01:52 +0000 (09:01 +0100)]
Update gcc-50 to SVN version 221044

Last Changed Date: 2015-02-27 09:37:51 +0100 (Fri, 27 Feb 2015)

4 years agoacpi/pstate: Allow user to force package level P-state domain
Sepherosa Ziehau [Thu, 26 Feb 2015 12:23:56 +0000 (20:23 +0800)]
acpi/pstate: Allow user to force package level P-state domain

Some CPUs only have package P-states, but some BIOSes put each
hyperthread to its own P-state domain; allow user to override.
It is not enabled by default.

4 years agosbin/newfs_hammer: Properly set ondisk localization value
Tomohiro Kusumi [Thu, 26 Feb 2015 11:36:42 +0000 (20:36 +0900)]
sbin/newfs_hammer: Properly set ondisk localization value

- Make hammer_newfs properly set ondisk localization for the first
  two elements (for root inode and PFS) of the root node.

- HAMMER does cursor lookup using sum of onmemory ip(inode) localization
  and localization type, so in this case hammer_newfs needs to write
  ondisk bits using (HAMMER_DEF_LOCALIZATION + type) instead of just
  a type (see hammer_get_inode() and hammer_load_pseudofs() for details).

- It makes no binary difference since HAMMER_DEF_LOCALIZATION is 0,
  however it should be fixed for the consistency (e.g. if the macro
  happens to be defined differently, although it is not likely as it
  forces ondisk layout change).

4 years agosys/vfs/hammer: Fix and add comments on root inode
Tomohiro Kusumi [Thu, 26 Feb 2015 11:25:59 +0000 (20:25 +0900)]
sys/vfs/hammer: Fix and add comments on root inode

- hunk1 - The root inode uses HAMMER_DEF_LOCALIZATION for its
  onmemory ip(inode) localization, however the purpose of this macro
  is not documented anywhere. Make it clear by adding this comment.

- hunk2 - Show HAMMER_OBJID_ROOT is the root inode # for both real
  root inode and PFS root inodes.

- hunk3-4 - Change "stored in the root inode" to "associated with
  the root inode". PFS records are not embedded within the ondisk
  inode structure, but associated with the root inode by id.
  Commit ea434b6f uses "associated with" in its commit message.

4 years agoNuke /usr/share/examples/cvsup.
Sascha Wildner [Thu, 26 Feb 2015 12:40:51 +0000 (13:40 +0100)]
Nuke /usr/share/examples/cvsup.

Now that i386 is no longer supported we can't even run an old FreeBSD
cvsup binary anymore, so all this has become completely pointless.

FreeBSD has since switched to SVN, NetBSD's repository can be
rsync'ed, about OpenBSD I am not sure though. There are git repos
of various BSDs too.

4 years agonetif/if_lagg: Fix panic on MOD_UNLOAD
Markus Pfeiffer [Thu, 26 Feb 2015 12:39:16 +0000 (12:39 +0000)]
netif/if_lagg: Fix panic on MOD_UNLOAD

Remove one instance of if_clone_detach being called.

Reported-By: bycn82 <bycn82@gmail.com>
4 years agodevd(8): Add -Wno-unused-local-typedefs to CFLAGS for now.
Sascha Wildner [Thu, 26 Feb 2015 10:47:05 +0000 (11:47 +0100)]
devd(8): Add -Wno-unused-local-typedefs to CFLAGS for now.

The issue is that with -Wunused-local-typedefs, our GCC 5.0 warns about
unused local typedefs in its own headers, in this case stl_algo.h which
comes in via <algorithm>, which devd(8) includes.


c++ [...] -Werror -Wall [...] -c devd.cc
In file included from /usr/include/c++/5.0/bits/stl_algo.h:61:0,
                 from /usr/include/c++/5.0/algorithm:62,
                 from devd.cc:93:
/usr/include/c++/5.0/bits/stl_heap.h: In function 'void std::pop_heap(_RAIter, _RAIter)':
/usr/include/c++/5.0/bits/stl_heap.h:266:2: error: typedef '_ValueType' locally defined but not used [-Werror=unused-local-typedefs]

More typedefs are warned about, _InputValueType, _OutputValueType, and

4 years agobmake.1: Add missing newline.
Sascha Wildner [Thu, 26 Feb 2015 10:16:54 +0000 (11:16 +0100)]
bmake.1: Add missing newline.

4 years agoFix 'make upgrade'.
Sascha Wildner [Wed, 25 Feb 2015 21:13:42 +0000 (22:13 +0100)]
Fix 'make upgrade'.

Seems sys.mk is pulled in for 'make upgrade' too and CCVER isn't defined
at this point.

Reported-by: Robin Hahling <robin.hahling@gw-computing.net>
4 years agocoretemp(4): Add MODULE_VERSION.
Sascha Wildner [Wed, 25 Feb 2015 21:03:34 +0000 (22:03 +0100)]
coretemp(4): Add MODULE_VERSION.

4 years agosys/vfs/hammer: conform to style(9)
Tomohiro Kusumi [Wed, 25 Feb 2015 10:18:06 +0000 (19:18 +0900)]
sys/vfs/hammer: conform to style(9)

- Remove #include <sys/types.h>

- Kernel include files (i.e. sys/*.h) come first;
  normally, include <sys/types.h> OR <sys/param.h>, but not both.

- Spotted-by: sephe

4 years agodevd(8): Raise WARNS back to 5.
Sascha Wildner [Wed, 25 Feb 2015 03:55:49 +0000 (04:55 +0100)]
devd(8): Raise WARNS back to 5.

4 years agogcc50: Exclude -Wunused-local-typedefs from C++ flags for now.
Sascha Wildner [Wed, 25 Feb 2015 03:55:09 +0000 (04:55 +0100)]
gcc50: Exclude -Wunused-local-typedefs from C++ flags for now.

At least GCC 5.0 is warning on its own C++ includes (stl_algo.h,
via <algorithm>) if -Wextra is set, breaking the build of programs
which do nothing wrong themselves (such as devd(8)).

When this gets fixed, we can revert this commit again.

Note that I didn't check with GCC 4.8 or 4.9.

4 years agoudp: Disable direct detach only if multicast options are to be set.
Sepherosa Ziehau [Wed, 25 Feb 2015 03:26:52 +0000 (11:26 +0800)]
udp: Disable direct detach only if multicast options are to be set.

4 years agoudp: Disable direct detach, if multicast options are set.
Sepherosa Ziehau [Wed, 25 Feb 2015 03:17:35 +0000 (11:17 +0800)]
udp: Disable direct detach, if multicast options are set.

Add additional comment about disabling direct detach when setting
multicast options.

Submitted-by: Romick
DragonFly-bug: http://bugs.dragonflybsd.org/issues/2792

4 years agodevd(8): Sync with FreeBSD.
Sascha Wildner [Wed, 25 Feb 2015 02:42:41 +0000 (03:42 +0100)]
devd(8): Sync with FreeBSD.

4 years agoacpi_hp(4): Fix detaching, by adding the missing sysctl_ctx_free call.
Imre Vadasz [Tue, 24 Feb 2015 22:57:11 +0000 (23:57 +0100)]
acpi_hp(4): Fix detaching, by adding the missing sysctl_ctx_free call.

4 years agosys/vfs/hammer: Remove duplicate calculation of localization
Tomohiro Kusumi [Tue, 24 Feb 2015 11:52:34 +0000 (20:52 +0900)]
sys/vfs/hammer: Remove duplicate calculation of localization

- No need to calculate localization twice.

4 years agosys/vfs/hammer: Fix comments on record initialization
Tomohiro Kusumi [Tue, 24 Feb 2015 10:57:14 +0000 (19:57 +0900)]
sys/vfs/hammer: Fix comments on record initialization

- hunk1 - Add description of manual data allocation.

- hunk2 - Make description of hammer_ip_add_record() up-to-date with code.

4 years agosys/vfs/hammer: Fix comments on btree record data
Tomohiro Kusumi [Tue, 24 Feb 2015 10:54:45 +0000 (19:54 +0900)]
sys/vfs/hammer: Fix comments on btree record data

- hunk1 - Make comments up-to-date with code.

- hunk2 - Show this member is to be dynamically allocated
  with >HAMMER_INODE_BASESYMLEN bytes length.

4 years agosys/vfs/hammer: Add comments on PFS ioctls
Tomohiro Kusumi [Tue, 24 Feb 2015 10:53:34 +0000 (19:53 +0900)]
sys/vfs/hammer: Add comments on PFS ioctls

- Add another line regarding inodes for these ioctls.

4 years agodrm/radeon: Bring in new firmware
Michael Neumann [Tue, 24 Feb 2015 12:35:19 +0000 (13:35 +0100)]
drm/radeon: Bring in new firmware

Obtained-From: git://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git

4 years agokernel/drm: Fix building with 'device drm' in the config.
Sascha Wildner [Tue, 24 Feb 2015 12:21:24 +0000 (13:21 +0100)]
kernel/drm: Fix building with 'device drm' in the config.

4 years agodrm/radeon: Update to Linux 3.9
Michael Neumann [Tue, 24 Feb 2015 10:59:55 +0000 (11:59 +0100)]
drm/radeon: Update to Linux 3.9

* Add support for Oland chip family
* Add support for Richland APUs
* Misc refactoring (e.g. CS parsing)
* Misc stabilization work (e.g. GPU resetting)

4 years agodrm: Add Linux compatibility macros
Michael Neumann [Tue, 24 Feb 2015 10:46:12 +0000 (11:46 +0100)]
drm: Add Linux compatibility macros

4 years agodrm: Add drm_hdmi_avi_infoframe_from_display_mode()
Michael Neumann [Tue, 24 Feb 2015 10:44:54 +0000 (11:44 +0100)]
drm: Add drm_hdmi_avi_infoframe_from_display_mode()

Obtained-From: Linux

4 years agodrm: Bring in HDMI code from Linux
Michael Neumann [Tue, 24 Feb 2015 10:42:00 +0000 (11:42 +0100)]
drm: Bring in HDMI code from Linux

Obtained-From: Linux

4 years agogcc50: Fix include path.
Sascha Wildner [Tue, 24 Feb 2015 11:02:29 +0000 (12:02 +0100)]
gcc50: Fix include path.

This fixes 49 of the 51 -Wmissing-include-dirs warnings it is giving.

4 years agoieee80211_vap.9: Fix manual page prototype.
Sascha Wildner [Tue, 24 Feb 2015 10:50:51 +0000 (11:50 +0100)]
ieee80211_vap.9: Fix manual page prototype.

4 years agosbin/hammer: Add printf for remaining btree records
Tomohiro Kusumi [Mon, 23 Feb 2015 16:00:28 +0000 (01:00 +0900)]
sbin/hammer: Add printf for remaining btree records

- Add printf for UNKNOWN/PFS/SNAPSHOT/CONFIG records that was
  missing in hammer show command.

- Useful for debugging.

4 years agosbin/hammer: Call free(3) after uuid_to_string(3)
Tomohiro Kusumi [Mon, 23 Feb 2015 15:18:39 +0000 (00:18 +0900)]
sbin/hammer: Call free(3) after uuid_to_string(3)

- Add missing free().

4 years agosys/vfs/hammer: Add missing header include
Tomohiro Kusumi [Mon, 23 Feb 2015 12:21:20 +0000 (21:21 +0900)]
sys/vfs/hammer: Add missing header include

- #include <sys/param.h> to avoid following error. This happens when
  hammer_ioctl.h is included without including other hammer headers.

  /usr/include/vfs/hammer/hammer_ioctl.h:351:21: error: 'MAXPATHLEN'
  undeclared here (not in a function)

4 years agosys/vfs/hammer: Fix comment on PFS
Tomohiro Kusumi [Mon, 23 Feb 2015 12:17:01 +0000 (21:17 +0900)]
sys/vfs/hammer: Fix comment on PFS

  cursor to lookup PFS data. It uses HAMMER_RECTYPE_PFS for record type
  and localization id for a key.

4 years agodrm/radeon: Correct PAGE_MASK usage in radeon_vm_map_gart().
Imre Vadasz [Mon, 23 Feb 2015 10:00:33 +0000 (11:00 +0100)]
drm/radeon: Correct PAGE_MASK usage in radeon_vm_map_gart().

* Linux defines PAGE_MASK to be (~(PAGE_SIZE - 1)), whereas our kernel
  defines it as (PAGE_SIZE - 1).

Taken-from: OpenBSD

4 years agokernel/usb4bsd, kernel/sound: Fix detach panic
Markus Pfeiffer [Sun, 22 Feb 2015 21:59:59 +0000 (21:59 +0000)]
kernel/usb4bsd, kernel/sound: Fix detach panic

The kernel paniced when unplugging a USB sound device. This was
due to a NULL td_proc pointer being dereferenced.

4 years agokernel/usb4bsd: Apply FreeBSD r278503
Markus Pfeiffer [Sun, 22 Feb 2015 20:51:21 +0000 (20:51 +0000)]
kernel/usb4bsd: Apply FreeBSD r278503

This updates the original patch r274918, which had the following

Don't use the synchronization endpoint unless referenced by the
isochronous endpoint descriptor used for the data transfers, hence the
synchronization feature might not be supposed to be supported [yet].
This makes seamless playback synced with the USB HOST clock work with
the DN32-USB module for Midas audio systems and possibly other similar
products from Klark Teknik.

4 years agokernel/usb4bsd: Update uaudio driver to FreeBSD r276701
Sascha Wildner [Fri, 9 Jan 2015 17:18:21 +0000 (18:18 +0100)]
kernel/usb4bsd: Update uaudio driver to FreeBSD r276701

4 years agokernel/lwkt_serialize: Take serializer bookkeeping out of INVARIANTS.
Sascha Wildner [Sun, 22 Feb 2015 21:16:27 +0000 (22:16 +0100)]
kernel/lwkt_serialize: Take serializer bookkeeping out of INVARIANTS.

IS_SERIALIZED() is no longer only used in [K]KASSERT(), which disrupts
compiling without INVARIANTS rather regularly.

This commit makes the needed bits available without INVARIANTS too.

4 years agolibhammer.3: Fix unknown reference.
Sascha Wildner [Sun, 22 Feb 2015 20:55:55 +0000 (21:55 +0100)]
libhammer.3: Fix unknown reference.

4 years agoRemove parallel port support from our default config.
Sascha Wildner [Sun, 22 Feb 2015 20:52:38 +0000 (21:52 +0100)]
Remove parallel port support from our default config.

4 years agokernel/drm: Fix spelling in comments.
Sascha Wildner [Sun, 22 Feb 2015 20:49:26 +0000 (21:49 +0100)]
kernel/drm: Fix spelling in comments.

4 years agosys/vfs/hammer: remove comment on atime
Tomohiro Kusumi [Sun, 22 Feb 2015 17:51:35 +0000 (02:51 +0900)]
sys/vfs/hammer: remove comment on atime

- Remove a comment regarding where atime is stored. It's a parf of inode,
  but not btree element. This comment was added in 11ad5ade when atime
  became a part of btree element, but never removed when bcac4bbb moved
  it back to inode.

4 years agodrm/i915: Restore gcc 5.0 fixes
François Tigeot [Sun, 22 Feb 2015 16:01:15 +0000 (17:01 +0100)]
drm/i915: Restore gcc 5.0 fixes

They were originally added by John Marino in
eecf6c3c3b6f7127edd8b8f8c2a83e2f882ed0da and overwritten
by the Linux 3.11 update.

Noticed-by: Rolinh
4 years agosys/vfs/hammer: remove obsolete comments on btree, etc
Tomohiro Kusumi [Sat, 21 Feb 2015 20:14:50 +0000 (05:14 +0900)]
sys/vfs/hammer: remove obsolete comments on btree, etc

- hunk1: Use 'type' instead of 'subtype'. subtype was a different
  idea from type originally which no longer exist.

- hunk2: There is no longer a distiction of normal/meta btree node.
  It's either internal or leaf node, plus record elements within leaf.

- hunk3: Remove comments on subtype field that no longer exist,
  and add a comment on node size with 63-way btree.

- hunk4: These macros were only used in very early stage of hammer

- hunk5-6: Minor cleanups.

4 years agosbin/hammer: remove obsolete comments
Tomohiro Kusumi [Sat, 21 Feb 2015 18:28:22 +0000 (03:28 +0900)]
sbin/hammer: remove obsolete comments

- Remove comments of a no longer existing function.

4 years agokernel/usb4bsd: Apply FreeBSD r277417
Markus Pfeiffer [Sun, 22 Feb 2015 01:05:00 +0000 (01:05 +0000)]
kernel/usb4bsd: Apply FreeBSD r277417

Fix returned data for the USB_GET_DEV_PORT_PATH IOCTL in particular
the value returned in the "udp_port_level" field.

4 years agokernel/usb4bsd: Cleanup usb_ethernet
Markus Pfeiffer [Sun, 22 Feb 2015 00:53:56 +0000 (00:53 +0000)]
kernel/usb4bsd: Cleanup usb_ethernet

4 years agokernel/usb4bsd: Update revision tag on if_axge.
Markus Pfeiffer [Sun, 22 Feb 2015 00:47:27 +0000 (00:47 +0000)]
kernel/usb4bsd: Update revision tag on if_axge.

No updates of functionality.

4 years agokernel/usb4bsd: Update pci drivers for HCIs
Markus Pfeiffer [Sun, 22 Feb 2015 00:28:57 +0000 (00:28 +0000)]
kernel/usb4bsd: Update pci drivers for HCIs

This adds support for 64bit DMA for chips that support it. This needs
further testing.

4 years agokernel/usb4bsd: Update uhci and ohci drivers
Markus Pfeiffer [Sun, 22 Feb 2015 00:07:18 +0000 (00:07 +0000)]
kernel/usb4bsd: Update uhci and ohci drivers

4 years agokernel/usb4bsd: Add file ID to ehci.c
Markus Pfeiffer [Sun, 22 Feb 2015 00:04:51 +0000 (00:04 +0000)]
kernel/usb4bsd: Add file ID to ehci.c

Note that ehci.c was heavily modified by Matt Dillon.

4 years agokernel/usb4bsd: Update xhci to r278477
Markus Pfeiffer [Sat, 21 Feb 2015 23:43:47 +0000 (23:43 +0000)]
kernel/usb4bsd: Update xhci to r278477

4 years agodrm/i915: Update to Linux 3.11
François Tigeot [Sat, 21 Feb 2015 16:35:50 +0000 (17:35 +0100)]
drm/i915: Update to Linux 3.11

* Valleyview/Baytrail support improvements. Baytrail support is
  no longer considered experimental.

* VECS engine support on Haswell. The Video Enhancement Command
  Streamer is used by libva for some post-processing tasks.

* Power management improvements, especially on Haswell.

* Hotplug improvements.

* Output and modeset improvements. Using 30bpp modes is now possible.

* Various bugfixes and Stability improvements, including memory
  corruption and GPU hang fixes after a suspend/resume sequence.

v2: i915_irq.c lock ordering fix, reported by zrj@

v3: backlight spinlock fixes from Romick

4 years agodrm: Add a new implementation of drm_sysfs.c
François Tigeot [Sat, 21 Feb 2015 08:10:32 +0000 (09:10 +0100)]
drm: Add a new implementation of drm_sysfs.c

We can't directly use the Linux version of this file due to
restrictive license terms.