dragonfly.git
3 years agofirmware(9): Change type of data pointer
François Tigeot [Tue, 29 Nov 2016 21:23:16 +0000 (22:23 +0100)]
firmware(9): Change type of data pointer

* from const void * to const uint8_t *

* Avoiding tedious and error-prone void * conversions in Linux drivers

3 years agoexamples/rconfig: Fix CD/PXE check in two scripts.
Sascha Wildner [Tue, 29 Nov 2016 21:16:01 +0000 (22:16 +0100)]
examples/rconfig: Fix CD/PXE check in two scripts.

3 years agoFix manual pages for s/struct device */device_t/.
Sascha Wildner [Tue, 29 Nov 2016 18:54:01 +0000 (19:54 +0100)]
Fix manual pages for s/struct device */device_t/.

3 years agombuf.9: Adjust for removal of m_devget()'s 'copy' argument.
Sascha Wildner [Tue, 29 Nov 2016 18:23:19 +0000 (19:23 +0100)]
mbuf.9: Adjust for removal of m_devget()'s 'copy' argument.

3 years agosyscons - Add range check for color value in KDSBORDER ioctl.
Imre Vadász [Mon, 28 Nov 2016 23:31:08 +0000 (00:31 +0100)]
syscons - Add range check for color value in KDSBORDER ioctl.

* Only values 0..15 are handled correctly for scp->border at the moment.

3 years agosyscons - Add option for the default terminal border color to kernel config.
Imre Vadász [Mon, 28 Nov 2016 22:22:27 +0000 (23:22 +0100)]
syscons - Add option for the default terminal border color to kernel config.

* The default terminal border can be set to e.g. darkgrey by adding
  option SC_BORDER_COLOR="FG_DARKGREY"
  to the kernel configuration.

3 years agoefivar.3: Fix prototypes in the SYNOPSIS.
Sascha Wildner [Tue, 29 Nov 2016 13:07:47 +0000 (14:07 +0100)]
efivar.3: Fix prototypes in the SYNOPSIS.

3 years agoFix some typos in manual pages.
Sascha Wildner [Tue, 29 Nov 2016 12:52:06 +0000 (13:52 +0100)]
Fix some typos in manual pages.

3 years agoboot/efi: Add paging to the 'memmap' and 'configuration' commands.
Sascha Wildner [Mon, 28 Nov 2016 22:36:52 +0000 (23:36 +0100)]
boot/efi: Add paging to the 'memmap' and 'configuration' commands.

Taken-from: FreeBSD

3 years agoboot/efi: Add three new commands, efi-show, efi-set and efi-unset.
Sascha Wildner [Mon, 28 Nov 2016 22:35:25 +0000 (23:35 +0100)]
boot/efi: Add three new commands, efi-show, efi-set and efi-unset.

For accessing EFI variables. These replace the nvram command.

Taken-from: FreeBSD

3 years agolibstand: Add uuid_{from,to}_string() and uuid_create_nil() (from libc).
Sascha Wildner [Mon, 28 Nov 2016 22:34:44 +0000 (23:34 +0100)]
libstand: Add uuid_{from,to}_string() and uuid_create_nil() (from libc).

Taken-from: FreeBSD

3 years agohammer2 - Revamp flush and xopq mechanism, stabilization
Matthew Dillon [Mon, 28 Nov 2016 20:18:54 +0000 (12:18 -0800)]
hammer2 - Revamp flush and xopq mechanism, stabilization

* Originally the xopq mechanism was meant to allow multiple worker
  threads to share the same queue in a NxM configuration, but for
  all intents and purposes we changed to a one-queue-per-thread
  mechanic.  Formalize this by associating the queue directly with
  the thread structure.

* Separate out strategy-related XOPs from vnop-related XOPs, using half
  the worker threads for strategy XOPs and the other half for vnop XOPs.
  This fixes at least one deadlock which could occur if a strategy XOP
  was queued after a vnop on the same worker thread.  Since the
  buffers related to the strategy XOP were locked, it could prevent
  the vnop ahead of it from being able to execute.

* Cleanup the xopq sleep/wakeup mechanism and also fix a 30-60 second
  stall when a xop-xop dependency is present on the same queue.  The
  clearing of the older xop was not waking up the worker thread.

* Revamp the transaction code, putpages via UIO_NOCOPY vop_write's,
  and vop_strategy, to allow all buffer-cache-related I/Os to execute
  concurrent with a flush.  This fixes several deadlocks and long stalls
  that could occur during flushes.  Nominal modifying vnops will still
  interlock with flushes, for now.

* Remove the PREFLUSH flag, it is no longer relevant.

* NOTE - Flush code probably doesn't completely handle modifying races
  yet and needs more work.  However, such races should be restricted to
  buffer-cache-related I/Os only and thus it should be possible to
  interlock them on an inode-by-inode basis.

3 years agofsstress - Fix compiler warning
Matthew Dillon [Mon, 28 Nov 2016 18:47:17 +0000 (10:47 -0800)]
fsstress - Fix compiler warning

* Remove annoying compiler warning.

3 years agokernel - Remove buffer flush debug message
Matthew Dillon [Mon, 28 Nov 2016 18:45:54 +0000 (10:45 -0800)]
kernel - Remove buffer flush debug message

* Remove the "dirty bufs left after final pass" debug message.  This case
  can occur normally during heavy I/O, particularly with the concurrency
  DragonFly now allows.

3 years agokernel - Fix deadlock in vm_page_repurpose()
Matthew Dillon [Mon, 28 Nov 2016 18:41:53 +0000 (10:41 -0800)]
kernel - Fix deadlock in vm_page_repurpose()

* vm_page_repurpose() was hard+soft busying the underlying VM page,
  which can deadlock against putpages or other I/O.

* Only hard-busy the page, then add an SBUSY test to the failure case
  (we don't want to repurpose a page undergoing I/O after all!).

3 years agokernel/ath: Limit check index variables before using them.
Sascha Wildner [Mon, 28 Nov 2016 17:46:11 +0000 (18:46 +0100)]
kernel/ath: Limit check index variables before using them.

3 years agoboot/efi: Use strtoul().
Sascha Wildner [Mon, 28 Nov 2016 14:49:05 +0000 (15:49 +0100)]
boot/efi: Use strtoul().

Reduces diffs with FreeBSD.

3 years agolibstand: Add strtoul().
Sascha Wildner [Mon, 28 Nov 2016 14:47:18 +0000 (15:47 +0100)]
libstand: Add strtoul().

Taken-from: FreeBSD

3 years ago<machine/limits.h>: Add some i386 limits which libstand's strtol() needs.
Sascha Wildner [Mon, 28 Nov 2016 14:40:02 +0000 (15:40 +0100)]
<machine/limits.h>: Add some i386 limits which libstand's strtol() needs.

3 years agoSync zoneinfo database with tzdata2016j from ftp://ftp.iana.org/tz/releases
Sascha Wildner [Mon, 28 Nov 2016 07:45:51 +0000 (08:45 +0100)]
Sync zoneinfo database with tzdata2016j from ftp://ftp.iana.org/tz/releases

* Saratov, Russia switches from +03 to +04 on 2016-12-04 at 02:00.
    This hives off a new zone Europe/Saratov from Europe/Volgograd.
    (Thanks to Yuri Konotopov and Stepan Golosunov.)

* The new zone Asia/Atyrau for Atyraū Region, Kazakhstan, is like
    Asia/Aqtau except it switched from +04/+05 to +05/+06 in spring
    1999, not fall 1994.  (Thanks to Stepan Golosunov.)

* Asia/Gaza and Asia/Hebron now use "EEST", not "EET", to denote
    summer time before 1948.  The old use of "EET" was a typo.

* The 'Theory' file now documents UT.

* iso3166.tab now accents "Curaçao", and commentary now mentions
    the names "Cabo Verde" and "Czechia".  (Thanks to Jiří Boháč.)

3 years agosyscons - Clean up log messages for KMS console.
Imre Vadász [Mon, 21 Nov 2016 22:12:05 +0000 (23:12 +0100)]
syscons - Clean up log messages for KMS console.

* This was printing two lines of kernel messages for every virtual terminal
  that was switched to a new KMS framebuffer configuration.
  Instead only print the display resolution when the framebuffer is
  registered with syscons, and print the font scaling information for
  each VT only when debugging is enabled in syscons.

3 years agodrm: Improve integration with syscons. Move taskqueue handling to syscons.
Imre Vadász [Sun, 20 Nov 2016 21:01:40 +0000 (22:01 +0100)]
drm: Improve integration with syscons. Move taskqueue handling to syscons.

* Adds asynctd_lk to syscons' softc to synchronize unregister_framebuffer
  code with the asynchronous screen refresh threads.

* Use a generation counter in syscons to check if sc_update_render() needs
  to update the VT resolution/mode. Remove struct fb_info *fbi pointer
  from scr_stat, and always check the struct fb_info *fbi pointer in the
  softc struct instead.

* Use videio_in_progress flag to make initial fb_set_par call a bit safer.

* Moves driver callbacks from struct fb_info itself into struct fb_ops,
  and adds fb_blank and fb_debug_enter callbacks which will be wired up
  in future commits.

* Add unregister_framebuffer() function to syscons, which is needed for
  cleanly detaching a drm graphics driver which is used as framebuffer
  console. The screen will turn off, blank or display a frozen screen,
  after the graphics driver has detached.

* Use drm_fb_helper_unregister_framebuffer() and drm_fb_helper_release_fbi()
  functions in radeon and i915, which are needed for cleanly detaching the
  drivers.

* With radeonkms detaching and re-attaching is working very reliably
  on an AMD G-T44R APU (i.e. HD6250 graphics).

* Detaching i915 on a Haswell notebook barely worked with several errors,
  and trying to re-attach i915 caused the machine to hang.

3 years agosyscons - Make sure we draw the terminal border during syscons startup.
Imre Vadász [Sun, 27 Nov 2016 22:01:30 +0000 (23:01 +0100)]
syscons - Make sure we draw the terminal border during syscons startup.

* Try drawing the border first in scinit. If we use the UEFI framebuffer,
  and efi_fb_info.vaddr is still NULL, we call sc_set_border again in
  scmeminit() when efi_fb_info.vaddr will be definitely non-NULL.

* This makes sure that we clear any garbage left from the UEFI bootloader
  stage on the screen, after ae88e4ee083dbf5a51e10cae2cdf213e2a7c5225.

3 years agosigpause.3: Add missing comma.
Sascha Wildner [Mon, 28 Nov 2016 00:06:51 +0000 (01:06 +0100)]
sigpause.3: Add missing comma.

3 years agoefivar.{3,8}: Fix some mdoc issues.
Sascha Wildner [Mon, 28 Nov 2016 00:04:54 +0000 (01:04 +0100)]
efivar.{3,8}: Fix some mdoc issues.

efivar.3: Remove extra semicolons, fix section ordering, add SEE ALSO.

efivar.8: Fix wrong .El, add SEE ALSO, add parentheses.

3 years agolibefivar: Remove unneeded WARNS setting (lib/Makefile.inc has it).
Sascha Wildner [Sun, 27 Nov 2016 23:51:45 +0000 (00:51 +0100)]
libefivar: Remove unneeded WARNS setting (lib/Makefile.inc has it).

3 years agomdoc.local: Add definition for '.Lb libefivar'.
Sascha Wildner [Sun, 27 Nov 2016 23:51:18 +0000 (00:51 +0100)]
mdoc.local: Add definition for '.Lb libefivar'.

3 years agokernel/efirt: Make efirt compilable into the kernel and add to LINT64.
Sascha Wildner [Sun, 27 Nov 2016 23:36:28 +0000 (00:36 +0100)]
kernel/efirt: Make efirt compilable into the kernel and add to LINT64.

3 years agokernel/efirt: Hook efirt.ko into the build.
Sascha Wildner [Sun, 27 Nov 2016 23:35:40 +0000 (00:35 +0100)]
kernel/efirt: Hook efirt.ko into the build.

3 years agoMove efirt.ko's source to sys/dev/misc/efirt.
Sascha Wildner [Sun, 27 Nov 2016 23:35:00 +0000 (00:35 +0100)]
Move efirt.ko's source to sys/dev/misc/efirt.

3 years agorc.subr: Add ${name}_env and ${name}_prepend.
Michael Neumann [Sun, 27 Nov 2016 21:51:40 +0000 (22:51 +0100)]
rc.subr: Add ${name}_env and ${name}_prepend.

${name}_env is an argument list which will be passed to env(1).
${name}_prepend is simply prepended to the command line for $command.

This fixes issues I had with starting up www/h2o as described [here][1].

Taken-From: FreeBSD (commit 77616d41a2ce3744b35e68b8a3c12e562283a322)

[1]: https://github.com/DragonFlyBSD/DeltaPorts/issues/663

3 years agosys/dev/disk/dm: Make init/destroy handlers optional
Tomohiro Kusumi [Sun, 27 Nov 2016 05:35:27 +0000 (14:35 +0900)]
sys/dev/disk/dm: Make init/destroy handlers optional

Some targets don't need to do anything in init/destroy handler,
as there is no private data to init/cleanup, so make them optional.

table_en->target_config can be set to NULL regardless of destroy
handler or its result.

3 years agosys/dev/disk/dm: Remove dm_table_init_target() call with NULL
Tomohiro Kusumi [Sun, 27 Nov 2016 05:21:11 +0000 (14:21 +0900)]
sys/dev/disk/dm: Remove dm_table_init_target() call with NULL

These can be removed after 41a68322.

3 years agosyscons - Fix syscons with UEFI fb when drm fb is registered during boot.
Imre Vadász [Sat, 26 Nov 2016 22:49:01 +0000 (23:49 +0100)]
syscons - Fix syscons with UEFI fb when drm fb is registered during boot.

* Fix sc->fbi related checks in register_framebuffer() and scinit(), to
  patch up the case where the drm framebuffer is registered before
  syscons' late initialization (i.e. the actual syscons attach function)
  runs.

* Change some of the SC_EFI_FB checks in scinit() to check instead for
  sc->fbi != NULL.

3 years agokernel/pc64: Don't fill uefi framebuffer with 0x77 during early boot.
Imre Vadász [Sun, 27 Nov 2016 00:43:19 +0000 (01:43 +0100)]
kernel/pc64: Don't fill uefi framebuffer with 0x77 during early boot.

* This memset was only meant for debugging uefi boot, and just produces an
  annoying flick or a short delay during UEFI boot now.

3 years agosys/dev/disk/dm: Remove obvious/redundant/disabled kprintfs
Tomohiro Kusumi [Sat, 26 Nov 2016 10:21:01 +0000 (19:21 +0900)]
sys/dev/disk/dm: Remove obvious/redundant/disabled kprintfs

3 years agosys/dev/disk/dm: Cleanups
Tomohiro Kusumi [Sat, 26 Nov 2016 05:58:26 +0000 (14:58 +0900)]
sys/dev/disk/dm: Cleanups

This part is unclear for no reason.

3 years agosys/dev/disk/dm: Remove dm_dev::dev_type
Tomohiro Kusumi [Sat, 26 Nov 2016 05:17:43 +0000 (14:17 +0900)]
sys/dev/disk/dm: Remove dm_dev::dev_type

This is unused, and also not necessary.

dm core shouldn't need to be aware of target driver type.
Target dependent actions are handled by target dependent handlers.
dm targets have oop-like structure, so we don't want/need
dm core to be able to do things like below.

Also see d471f1f9 and 49784e7d.

switch (dev->dev_type) {
case DM_LINEAR_DEV:
    do_something_specific_to_linear(); break;
case DM_STRIPE_DEV:
    do_something_specific_to_striped(); break;
case ...:
    ...; break;
}

3 years agosys/dev/disk/dm: Remove dm/targets/ directory and move its entries to dm/
Tomohiro Kusumi [Sat, 26 Nov 2016 03:46:41 +0000 (12:46 +0900)]
sys/dev/disk/dm: Remove dm/targets/ directory and move its entries to dm/

Device mapper targets' path
sys/dev/disk/dm/targets/<name>/dm_target_<name>.c
are too deep for no reason.

This commit removes targets/ directory which isn't necessary at all,
assuming userspace has no dependencies on this (and it shouldn't either).

Neither NetBSD (sys/dev/dm/dm_target_*.c) nor Linux kernel (drivers/md/dm*.c)
has a directory tree like this, which is better.

3 years agolibc: Fix up compat-43 a bit.
Sascha Wildner [Sat, 26 Nov 2016 15:55:19 +0000 (16:55 +0100)]
libc: Fix up compat-43 a bit.

* Functions in libc/compat-43 aren't syscalls so move their manual
  pages to section 3.

* Move the stuff that is still POSIX to libc/gen: creat, gethostid,
  getwd, killpg. compat-43 isn't the right place for them.

* While here, a non-existant .PATH in compat-43/Makefile.inc.

3 years agoipfw3: 'or' supports more filters
Bill Yuan [Sat, 26 Nov 2016 11:51:21 +0000 (11:51 +0000)]
ipfw3: 'or' supports more filters

3 years agosyscons - Remove unneeded NULL check from register_framebuffer().
Imre Vadász [Sat, 26 Nov 2016 00:25:56 +0000 (01:25 +0100)]
syscons - Remove unneeded NULL check from register_framebuffer().

* While there use tabs for indenting register_framebuffer() to reduce
  diff of a following change.

3 years agosyscons - Handle kms framebuffer activation better when not in text mode.
Imre Vadász [Fri, 25 Nov 2016 00:26:32 +0000 (01:26 +0100)]
syscons - Handle kms framebuffer activation better when not in text mode.

* We shouldn't just silently remove the GRAPHICS_MODE or UNKNOWN_MODE flags,
  instead try to handle those cases a bit more graceful.

* This avoid's Xorg's VT being silently switched back from UNKNOWN_MODE
  to text mode, when the drm driver module is automatically loaded while
  Xorg is starting.

3 years agodrm/radeon: restore the fbdev mode in lastclose
Imre Vadász [Sat, 19 Nov 2016 20:33:54 +0000 (21:33 +0100)]
drm/radeon: restore the fbdev mode in lastclose

restore the fbdev state if a drm app like X is killed.

Taken-From: Linux git 8c70e1cda04b966b50ddfefafbd0ea376ed8edd5

3 years agoiwm - Reduce gratuitous differences with Linux iwlwifi in struct naming.
Imre Vadász [Fri, 25 Nov 2016 22:13:42 +0000 (23:13 +0100)]
iwm - Reduce gratuitous differences with Linux iwlwifi in struct naming.

* Rename some structs and struct members for firmware handling.

3 years agodrm/linux: add circ_buf.h needed for guc client bits
zrj [Fri, 25 Nov 2016 10:41:12 +0000 (11:41 +0100)]
drm/linux: add circ_buf.h needed for guc client bits

Found on github implemented by mattmacy@ FreeBSD repo

3 years agodrm/linux: Add request_firmware_nowait()
François Tigeot [Fri, 25 Nov 2016 09:07:48 +0000 (10:07 +0100)]
drm/linux: Add request_firmware_nowait()

3 years agodrm/linux: Improve request_firmware() compatibility
François Tigeot [Fri, 25 Nov 2016 08:06:16 +0000 (09:06 +0100)]
drm/linux: Improve request_firmware() compatibility

request_firmware() takes a pointer to a Linux struct device as
third parameter.

3 years agobinutils227: Symlink liblto_plugin.so from default base gcc compiler too.
zrj [Sun, 20 Nov 2016 14:06:25 +0000 (16:06 +0200)]
binutils227: Symlink liblto_plugin.so from default base gcc compiler too.

Now that alternative binutils are updated, further work towards making
binutils 2.27 as default can continue.
Also documment bfd-plugins/ directory in hier(7).

3 years agortld: Fix handling of DT_TEXTREL for object with multiple read-only segments.
zrj [Fri, 16 Sep 2016 04:47:19 +0000 (07:47 +0300)]
rtld: Fix handling of DT_TEXTREL for object with multiple read-only segments.

Taken-from: FreeBSD (r296319)

3 years agoRetire the binutils-2.24.
zrj [Sun, 20 Nov 2016 13:47:14 +0000 (15:47 +0200)]
Retire the binutils-2.24.

Remove contrib sources and build Makefiles.

3 years agoReplace binutils 2.24 with latest binutils 2.27.
zrj [Sat, 19 Nov 2016 18:52:45 +0000 (20:52 +0200)]
Replace binutils 2.24 with latest binutils 2.27.

3 years agobinutils227: Add build dirs.
zrj [Sat, 19 Nov 2016 18:50:38 +0000 (20:50 +0200)]
binutils227: Add build dirs.

It is unclear weather -Wl,z,relro should be on by default in ld.gold.

3 years agobinutil227: Add DF README's and local modifications.
zrj [Sat, 19 Nov 2016 17:46:44 +0000 (19:46 +0200)]
binutil227: Add DF README's and local modifications.

3 years agoMerge remote-tracking branch 'origin/vendor/BINUTILS227'
zrj [Thu, 24 Nov 2016 15:28:14 +0000 (17:28 +0200)]
Merge remote-tracking branch 'origin/vendor/BINUTILS227'

3 years agoInitial import of binutils 2.27 on vendor branch vendor/BINUTILS227
zrj [Thu, 24 Nov 2016 07:20:38 +0000 (09:20 +0200)]
Initial import of binutils 2.27 on vendor branch

3 years agoSync ACPICA with Intel's version 20161117.
Sascha Wildner [Wed, 23 Nov 2016 20:04:50 +0000 (21:04 +0100)]
Sync ACPICA with Intel's version 20161117.

* Fixed regression introduced in 20160729 in the table manager. Also,
  add a new public interface, AcpiPutTable().

* Fix a problem where runtime implicit conversion as incorrectly
  disabled for some ASL operators.

* Various fixes and improvements for iasl(8).

* In acpixtract(8), add handling for both LF and CR/LF line
  termination to accept acpidump output from any system.

* In acpibin(8), add new -a and -o options.

For a more detailed list, please see sys/contrib/dev/acpica/changes.txt.

3 years agoUpdate the pciconf(8) database.
Sascha Wildner [Wed, 23 Nov 2016 19:03:05 +0000 (20:03 +0100)]
Update the pciconf(8) database.

October 29, 2016 snapshot from http://pciids.sourceforge.net/

3 years agokernel/if_re: Adjust permissions.
Sascha Wildner [Wed, 23 Nov 2016 17:46:53 +0000 (18:46 +0100)]
kernel/if_re: Adjust permissions.

3 years agore: Leverage Realtek driver's chip/PHY initialization/reset.
Sepherosa Ziehau [Thu, 3 Nov 2016 06:16:26 +0000 (14:16 +0800)]
re: Leverage Realtek driver's chip/PHY initialization/reset.

It is mainly used to solve all kinds of weirdness, e.g. hanging after
watchdog timeout, and PHY read failure, we have encountered so far on
these chips.

The DEVMETHODs, ifnet setup, and data path are still ours.  miibus(4)
is no longer used, ifmedia(4) is used directly.

NOTE: This change drops the 8139C+ and 8169 w/ external PHY support,
which are deemed to be too old.

Realtek's driver is taken from their website: version 1.92 (2016/10/25).

Tested-by: dillon, zrj
3 years agoefi - Add EFI run-time ABI support (3)
Matthew Dillon [Wed, 23 Nov 2016 02:07:25 +0000 (18:07 -0800)]
efi - Add EFI run-time ABI support (3)

* Cleanup debugging code that is no longer needed.

3 years agoefi - Add EFI run-time ABI support (2)
Matthew Dillon [Tue, 22 Nov 2016 23:12:34 +0000 (15:12 -0800)]
efi - Add EFI run-time ABI support (2)

* Files forgotten in last commit.  Fix ABI (microsoft call ABI is used
  for EFI direct calls).

3 years agoefi - Add EFI run-time ABI support
Matthew Dillon [Tue, 22 Nov 2016 22:53:50 +0000 (14:53 -0800)]
efi - Add EFI run-time ABI support

* Add EFI run-time ABI support, ability to query and set the time,
  scan EFI BIOS variables, etc.

* Port from FreeBSD.  Use our vmspace management functions to handle
  the specialized pmap requirements instead of rerolling the page
  table.  Make adjustments for differences in the device API.  etc.

Ported-by: swildner, dillon
Ported-from: FreeBSD, Warner Losh

3 years agosys/dev/disk/dm: Sync with Linux changes in flakey read behavior
Tomohiro Kusumi [Tue, 22 Nov 2016 14:50:01 +0000 (23:50 +0900)]
sys/dev/disk/dm: Sync with Linux changes in flakey read behavior

Synw with the following Linux kernel commits.
99f3c90d0d85708e7401a81ce3314e50bf7f2819
299f6230bc6d0ccd5f95bb0fb865d80a9c7d5ccc

Note that above commits and this commit change read behavior.
It seems the existing read behavior was not what dm-flakey was
originally designed to be.

DragonFly's dm-flakey basically just does what Linux dm-flakey
does, so this commit just syncs with above changes.

3 years agoudp: Don't propagate connect error, as long as the inpcb has local port.
Sepherosa Ziehau [Tue, 22 Nov 2016 02:57:13 +0000 (10:57 +0800)]
udp: Don't propagate connect error, as long as the inpcb has local port.

This fixes the UDP socket disconnect->[read/write] support; before this
fix, the immediate read/write after disconnect will get EAFNOTSUPPORT.

3 years agotest/udp: Add echo test for connected->disconnected socket.
Sepherosa Ziehau [Tue, 22 Nov 2016 02:56:22 +0000 (10:56 +0800)]
test/udp: Add echo test for connected->disconnected socket.

3 years agogcc50: Activate workaround for libgcc_pic.a.
zrj [Mon, 21 Nov 2016 14:24:01 +0000 (16:24 +0200)]
gcc50: Activate workaround for libgcc_pic.a.

For now to ease up dports compilations (affects only c++ -pthread -shared).

In-discussion-with: marino

3 years agosvc(8): Link as static.
zrj [Mon, 21 Nov 2016 11:14:08 +0000 (13:14 +0200)]
svc(8): Link as static.

Depends on libpthread.so that is in /usr/lib and symlink.
Avoids problems on split / and /usr layout installations.

3 years agolibsmb: Install .so.2 into /lib to unbreak mount_smbfs(8).
zrj [Mon, 21 Nov 2016 11:28:20 +0000 (13:28 +0200)]
libsmb: Install .so.2 into /lib to unbreak mount_smbfs(8).

Fixes issue for /sbin/mount_smbfs on split / and /usr layout installations.

3 years agolibdevstat: Install .so.3 into /lib to unbreak vinum(8).
zrj [Mon, 21 Nov 2016 11:17:15 +0000 (13:17 +0200)]
libdevstat: Install .so.3 into /lib to unbreak vinum(8).

Fixes issue for /sbin/vinum on split / and /usr layout installations.

Reported-by: Stefan Unterweger
3 years agodrm: Use struct fb_info * as arg for syscons fb restore helper function.
Imre Vadász [Tue, 15 Nov 2016 23:34:04 +0000 (00:34 +0100)]
drm: Use struct fb_info * as arg for syscons fb restore helper function.

* This makes the framebuffer api handling in drm slightly nicer, and
  reduces the diffs in drm/radeonkms/i915 a bit.

* Renames the cookie element in struct fb_info to par, to avoid diffs
  in drm, radeonkms and i915.

* While there, use drm_fb_helper_alloc_fbi() in drm/radeon as well for
  allocating the struct fb_info, and uncomment drm_fb_helper_release_fbi(),
  which is needed in an error handler there.

3 years agoRemove /usr/include/readline from mtree too.
Sascha Wildner [Sat, 19 Nov 2016 11:19:09 +0000 (12:19 +0100)]
Remove /usr/include/readline from mtree too.

3 years agoi386 removal, part 61/x: Adjust some further #ifdefs.
Sascha Wildner [Sat, 19 Nov 2016 10:09:06 +0000 (11:09 +0100)]
i386 removal, part 61/x: Adjust some further #ifdefs.

3 years agoi386 removal, part 60/x: Generalize a buildkernel error message a bit.
Sascha Wildner [Sat, 19 Nov 2016 09:41:08 +0000 (10:41 +0100)]
i386 removal, part 60/x: Generalize a buildkernel error message a bit.

Pointed-out-by: zrj
3 years agoi386 removal, part 59/x: Revert a i386 specific local change in dma(8).
Sascha Wildner [Sat, 19 Nov 2016 09:38:44 +0000 (10:38 +0100)]
i386 removal, part 59/x: Revert a i386 specific local change in dma(8).

3 years agoRemove some old architecture handling.
Sascha Wildner [Sat, 19 Nov 2016 09:34:53 +0000 (10:34 +0100)]
Remove some old architecture handling.

Affected #ifdefs:

__arm__
hp300
__ia64__
__mips__
__powerpc__
__sparc64__

3 years agoi386 removal, part 58/x: Remove <sys/link_aout.h>.
Sascha Wildner [Sat, 19 Nov 2016 09:08:12 +0000 (10:08 +0100)]
i386 removal, part 58/x: Remove <sys/link_aout.h>.

Its last user was removed in aeaecd482b46e655e59bf281f04e91d0bb4f773b.

3 years agodrm - Fix lock order reversal
Matthew Dillon [Sat, 19 Nov 2016 05:55:50 +0000 (21:55 -0800)]
drm - Fix lock order reversal

* Lock order reversal caused by holding dev_pager_mtx() across
  the object->un_pager.devp.ops->cdev_pg_dtor() call.  devpgr -> drmslk.

* Move the lock from before to after the call.  Holding the mutex shouldn't
  be necessary across the call.  This also fixes the reversal as devpgr is
  no longer held across the call.

* Fixes a lock order reversal against drm_ioctl() which obtains drmslk first
  and recurses into a device pager operation which gets devpgr.

* Fix a few other incidental bugs that would normally not be triggered by
  the DRM code due to outer locks held by the DRM code.  Plus some formatting
  fixes.

3 years agokernel - Fix swap warning message when swap is full
Matthew Dillon [Fri, 18 Nov 2016 23:24:45 +0000 (15:24 -0800)]
kernel - Fix swap warning message when swap is full

* Wrong variable tested caused confusing warning to be output.  Output
  swap full warning instead of 'no swap space configured' warning when
  swap is full and swap space has been configured.

Reported-by: tuxillo
3 years agoLIBPRIV: Add private includes for dfuife_curses.
zrj [Fri, 18 Nov 2016 17:02:10 +0000 (19:02 +0200)]
LIBPRIV: Add private includes for dfuife_curses.

installer(1) is only built during make release or WANT_INSTALLER=yes.

3 years agoRelocate readline and ncurses headers to /usr/include/priv
John Marino [Thu, 17 Nov 2016 20:46:24 +0000 (14:46 -0600)]
Relocate readline and ncurses headers to /usr/include/priv

Having public headers for private libraries can cause confusion for
software that assumes the presence of headers leads to the availability
of the libraries.

Discussed-with: dillon

3 years agosys/vfs/hammer: Fix wrong comment
Tomohiro Kusumi [Fri, 18 Nov 2016 08:40:27 +0000 (17:40 +0900)]
sys/vfs/hammer: Fix wrong comment

7f1e2b68 should have had 4TB, not 4GB.

3 years agowlan - Don't check bgscanidle setting in net80211 for full-offload scan.
Imre Vadász [Thu, 17 Nov 2016 22:06:29 +0000 (23:06 +0100)]
wlan - Don't check bgscanidle setting in net80211 for full-offload scan.

* If full-offload scan is used, the NIC driver (or rather the firmware of
  the NIC) should take care of interrupting and continuing the background
  scan. So net80211 should ignore the vap->iv_bgscanidle setting then,
  instead the NIC driver might look at this setting and pass it on to the
  firmware in some way if possible.

* Since full-offload scans won't be explicitly interrupted by net80211, it
  also doesn't really make sense to check the vap->iv_bgscanidle condition
  in that case, before starting a background scan. If the NIC driver
  advertises background scan support and full-offload scanning, the firmware
  should be able to execute that scan without interfering too much with our
  data traffic.

Taken-From: FreeBSD (svn r308785)

3 years agodrm/linux: add sg_pcopy_{from/to}_buffer()
zrj [Thu, 17 Nov 2016 18:40:57 +0000 (20:40 +0200)]
drm/linux: add sg_pcopy_{from/to}_buffer()

Needed for i915 guc fw loading.

Found on github implemented by mattmacy@ FreeBSD repo

3 years agodrm/linux: Add ida_simple_get()
François Tigeot [Thu, 17 Nov 2016 16:39:10 +0000 (17:39 +0100)]
drm/linux: Add ida_simple_get()

Inspired-by: NetBSD
3 years agodrm/linux: add few ida_* functions.
zrj [Thu, 17 Nov 2016 16:05:38 +0000 (17:05 +0100)]
drm/linux: add few ida_* functions.

Needed for i915 guc submission.

zRJ-note: technically should be in idr(9) but for now will do.

Found on github implemented by mattmacy@ FreeBSD repo

3 years agodrm/linux: Add cache_line_size()
François Tigeot [Tue, 15 Nov 2016 20:38:53 +0000 (21:38 +0100)]
drm/linux: Add cache_line_size()

3 years agodrm/linux: add atomic64_cmpxchg()
zrj [Tue, 15 Nov 2016 19:19:33 +0000 (20:19 +0100)]
drm/linux: add atomic64_cmpxchg()

Found on github implemented by mattmacy@ FreeBSD repo

3 years agodrm/i915/trace: Add missing include files
François Tigeot [Tue, 15 Nov 2016 16:16:37 +0000 (17:16 +0100)]
drm/i915/trace: Add missing include files

3 years agodrm/linux: MODULE_FIRMWARE is defined in linux/module.h
François Tigeot [Tue, 15 Nov 2016 16:12:59 +0000 (17:12 +0100)]
drm/linux: MODULE_FIRMWARE is defined in linux/module.h

3 years agodrm/linux: implement div64_u64_rem() helper in math64.h
zrj [Tue, 15 Nov 2016 12:08:26 +0000 (13:08 +0100)]
drm/linux: implement div64_u64_rem() helper in math64.h

3 years agodntpd: Fix typo.
Sascha Wildner [Mon, 14 Nov 2016 17:35:02 +0000 (18:35 +0100)]
dntpd: Fix typo.

3 years agogcc50: Add alternative variant of pthread presence checking.
zrj [Mon, 14 Nov 2016 08:47:36 +0000 (10:47 +0200)]
gcc50: Add alternative variant of pthread presence checking.

There are few issues that ld.gold is having with DragonFly libgcc_pic.a.
This alternative variant is less strict when linking c++ projects.

3 years agoLINT64: Fix buildkernel with WANT_HAMMER2=yes.
zrj [Sun, 13 Nov 2016 17:52:15 +0000 (19:52 +0200)]
LINT64: Fix buildkernel with WANT_HAMMER2=yes.

Mostly #if DEBUG paths, also use panic() in z_error() for kernel.

3 years agonvi: Convert catalog creation to use hostprog.
zrj [Fri, 11 Nov 2016 12:51:43 +0000 (14:51 +0200)]
nvi: Convert catalog creation to use hostprog.

nvi dump utility is not part of btools, so just split vidump as hostprog.
There were few issues:
 * build races like dump and say spanish get created twice (and raced)
 * buildworld failures, from time to time i hit ./dump linking race (rare)
 * ./dump being used as target program (problems on crosscompilations)
 * missing env LANG=C for sort, minor issues in awk script and SHAREDIR.

Now even "cd usr.bin/vi && make -j9 depend all" should be race free.

3 years agogcc47: Remove bits/ handling.
zrj [Thu, 10 Nov 2016 18:43:24 +0000 (20:43 +0200)]
gcc47: Remove bits/ handling.

Not used by any active sources.
Now quickworld should not delete libstdcxx .depend on no source changes.

3 years agogcc50: Fix logic in cxx hostlib.
zrj [Thu, 10 Nov 2016 18:41:54 +0000 (20:41 +0200)]
gcc50: Fix logic in cxx hostlib.

Now quickworld should not delete libstdcxx .depend on no source changes.

3 years agoinstaller - Fix a bug in survey_storage()
Antonio Huete Jimenez [Thu, 10 Nov 2016 22:59:50 +0000 (23:59 +0100)]
installer - Fix a bug in survey_storage()

- survey_storage() issues DIOCGPART on every disk present in
  kern.disks in order to retrieve information about it.
  The problem was that a failure to get that information from
  any disk in the list caused the whole storage survey to be
  marked as failed. This happens, for example, with some card
  readers that present the disk devices even though there is no
  media inserted on the corresponding slot.

- Fix the logic in the installer and allow to check all disks
  in the system.

3 years agoinstaller - Allow to specify cmdnames file path
Antonio Huete Jimenez [Thu, 10 Nov 2016 22:26:45 +0000 (23:26 +0100)]
installer - Allow to specify cmdnames file path

3 years agoif_iwm - Check sc->sc_attached flag in suspend/resume callbacks.
Imre Vadász [Sun, 13 Nov 2016 21:36:16 +0000 (22:36 +0100)]
if_iwm - Check sc->sc_attached flag in suspend/resume callbacks.

* There is (almost) nothing to do in suspend/resume if if_iwm has failed
  during initialization (e.g. because of firmware load failure) and was
  already uninitialized by iwm_detach_local().