dragonfly.git
5 months agonrelease/Makefile: Fix 'pkg_${PKG}' to 'PKG_${PKG}' in a message
Aaron LI [Tue, 12 May 2020 14:08:57 +0000 (22:08 +0800)]
nrelease/Makefile: Fix 'pkg_${PKG}' to 'PKG_${PKG}' in a message

5 months agoinstaller: Allow special characters in passwords
Aaron LI [Sun, 10 May 2020 02:53:20 +0000 (10:53 +0800)]
installer: Allow special characters in passwords

Store the password in an environment variable and pass it to the pw(8)
command.  This way of passing passwords allows special characters in the
password.  Actually, adduser(8) uses the same method to deal with the
password.  So this closes the old bug #3027.

In addition, this prevents the plaintext password from appearing on the
command line or in the installation log file.  Although the installer
will print every executed command to the install.log (located at
'/var/log/install.log' with mode 0600 though), the root password setting
and new user creation steps belong to the 'configuration' stage rather
than the 'installation', so currently the plaintext passwords won't go
to the install.log.

Credit to pikrzyszt (Krzysztof Piecuch) for submitting the initial patch
in bug #3027.

5 months agoinstaller/dfuibe_installer: Clean up fn_root_passwd()
Aaron LI [Fri, 8 May 2020 14:54:39 +0000 (22:54 +0800)]
installer/dfuibe_installer: Clean up fn_root_passwd()

Improve the logic of fn_root_passwd() by referring to fn_add_user().

5 months agonrelease/Makefile: Display help text when no target specified
Aaron LI [Sun, 10 May 2020 04:46:48 +0000 (12:46 +0800)]
nrelease/Makefile: Display help text when no target specified

Make the 'help' target the default, so that the help text is shown when
no target is specified.  Before this change, a bare 'make' would give
message: `gui' is up to date.

5 months agoadduser(8): Honor uidstart in adduser.conf when showing in the prompt
Aaron LI [Fri, 8 May 2020 05:52:19 +0000 (13:52 +0800)]
adduser(8): Honor uidstart in adduser.conf when showing in the prompt

When using 'uidstart' in /etc/adduser.conf, get the next available user
ID and show it in the 'Uid [xxx]' prompt.

Obtained-from: FreeBSD (revision 232146)

5 months agoadduser(8): Allow standard IFS characters in passwords
Aaron LI [Fri, 8 May 2020 05:40:32 +0000 (13:40 +0800)]
adduser(8): Allow standard IFS characters in passwords

Notably, the default IFS contains space/tab, thus any leading/trailing
whitespace characters tend to be removed.

Set IFS= for just the read lines to mitigate this, allowing the user to
be less surprised when their leading/trailing spaces weren't actually
captured in the password as they are with other means of setting a
user's password.

Obtained-from: FreeBSD (revision 359642)

5 months agofile(1): Re-add README.D{ELETED,RAGONFLY} on master.
Sascha Wildner [Mon, 11 May 2020 09:41:30 +0000 (11:41 +0200)]
file(1): Re-add README.D{ELETED,RAGONFLY} on 

5 months agoMerge branch 'vendor/FILE'
Sascha Wildner [Mon, 11 May 2020 09:35:46 +0000 (11:35 +0200)]
Merge branch 'vendor/FILE'

5 months agovendor/file: Small file mode fix.
Sascha Wildner [Mon, 11 May 2020 09:29:43 +0000 (11:29 +0200)]
vendor/file: Small file mode fix.

5 months agovendor/file: upgrade from 5.32 to 5.38
Sascha Wildner [Mon, 11 May 2020 09:16:45 +0000 (11:16 +0200)]
vendor/file: upgrade from 5.32 to 5.38

[I forgot to push the vendor branch previously.]

Submitted-by: Daniel Fojt <df@neosystem.org>
5 months agodaemon(8): Make daemon aware of log rotation
Peeter Must [Sun, 10 May 2020 08:49:05 +0000 (11:49 +0300)]
daemon(8): Make daemon aware of log rotation

* Make daemon listen to SIGUSR1 so that when newsyslog
  has finished log rotation, it can send SIGUSR1 to
  daemon, who can then reopen the log file specified by
  the '-o' option.

* Failure to open the log file will be logged through
  syslog with LOG_NOTICE. The next attempt to reopen
  the log file will be made upon receiving signal SIGUSR1.

Reviewed-by: swildner, tuxillo, dillon, aly
5 months agodrm/linux/tasklets: Factor out common code
François Tigeot [Fri, 8 May 2020 14:58:07 +0000 (16:58 +0200)]
drm/linux/tasklets: Factor out common code

Use a common macro for tasklet_schedule() and tasklet_hi_schedule()

5 months agofile(1): Adapt build to vendor update.
Daniel Fojt [Thu, 7 May 2020 11:37:20 +0000 (13:37 +0200)]
file(1): Adapt build to vendor update.

Add README.DRAGONFLY and README.DELETED on master.

5 months agoMerge branch 'vendor/FILE'
Sascha Wildner [Fri, 8 May 2020 11:34:35 +0000 (13:34 +0200)]
Merge branch 'vendor/FILE'

5 months agovendor/file: upgrade from 5.32 to 5.38
Sascha Wildner [Fri, 8 May 2020 11:33:55 +0000 (13:33 +0200)]
vendor/file: upgrade from 5.32 to 5.38

Submitted-by: Daniel Fojt <df@neosystem.org>
5 months agodrm/linux: Add tasklet enable and disable functions
François Tigeot [Thu, 7 May 2020 12:27:30 +0000 (14:27 +0200)]
drm/linux: Add tasklet enable and disable functions

Remove a debug message in passing

5 months agodrm/linux: Add xchg()
François Tigeot [Thu, 7 May 2020 08:38:27 +0000 (10:38 +0200)]
drm/linux: Add xchg()

5 months agoVOP_GETPAGES.9: Improve a tiny bit.
Sascha Wildner [Wed, 6 May 2020 14:48:53 +0000 (16:48 +0200)]
VOP_GETPAGES.9: Improve a tiny bit.

5 months agokernel/vm: Rename *_putpages()'s 'sync' argument to 'flags'.
Sascha Wildner [Tue, 5 May 2020 08:41:38 +0000 (10:41 +0200)]
kernel/vm: Rename *_putpages()'s 'sync' argument to 'flags'.

It used to be a boolean but has now become a general flags argument
(for OBJPC_*).

5 months agokernel/vm: Rename VM_PAGER_PUT_* to OBJPC_*.
Sascha Wildner [Tue, 5 May 2020 08:39:14 +0000 (10:39 +0200)]
kernel/vm: Rename VM_PAGER_PUT_* to OBJPC_*.

While here, rename the rest of the VM_PAGER_* flags too.

Suggested-by: dillon
5 months agokernel/vm_pager: Add some pagerops typedefs to improve readability.
Sascha Wildner [Mon, 4 May 2020 19:21:07 +0000 (21:21 +0200)]
kernel/vm_pager: Add some pagerops typedefs to improve readability.

I've left the swap pager alone for now because some of its ops are
global functions.

5 months agoSome little cleanup after the tcplay upgrade.
Sascha Wildner [Sat, 2 May 2020 06:51:34 +0000 (08:51 +0200)]
Some little cleanup after the tcplay upgrade.

* Remove old lib via 'make upgrade'. I don't think libtcplay is used
  by anything in dports.

* Remove two references to kpartx in libtcplay's manual page.

5 months agokernel/vinum: Fix panic when vinum was loaded twice.
Sascha Wildner [Fri, 1 May 2020 16:13:26 +0000 (18:13 +0200)]
kernel/vinum: Fix panic when vinum was loaded twice.

Occurred when it was both compiled into the kernel and in loader.conf
at the same time.

Reported-by: CuteLarva (on IRC)
5 months agodsynth - Automatically run at nice 10 by default
Matthew Dillon [Fri, 1 May 2020 01:56:30 +0000 (18:56 -0700)]
dsynth - Automatically run at nice 10 by default

* dsynth now automatically nices sub-processes to +10.  This is a
  good middle-of-the-road nice to ensure that dsynth does not interfere
  with other system tasks too much (beyond the massive amount of memory
  and cpu these builds burn normally).

  We don't want to nice it too high or the scheduler won't have enough
  room for its normal dynamic priority management.

* This feature may be disabled via -N.

5 months agoSync ACPICA with Intel's version 20200430.
Sascha Wildner [Thu, 30 Apr 2020 20:40:41 +0000 (22:40 +0200)]
Sync ACPICA with Intel's version 20200430.

* Various bug fixes and cleanups.

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

5 months ago__realpath.2: Small mdoc correction.
Sascha Wildner [Thu, 30 Apr 2020 16:46:52 +0000 (18:46 +0200)]
__realpath.2: Small mdoc correction.

5 months agotest/debug: Remove duplicate #include <vm/vm_page.h>
Sascha Wildner [Thu, 30 Apr 2020 16:02:31 +0000 (18:02 +0200)]
test/debug: Remove duplicate #include <vm/vm_page.h>

5 months agotcplay.3: Add missing .Pp
Sascha Wildner [Thu, 30 Apr 2020 15:35:25 +0000 (17:35 +0200)]
tcplay.3: Add missing .Pp

5 months agoUpdate tcplay(8) manpage.
Daniel Fojt [Thu, 30 Apr 2020 04:42:46 +0000 (06:42 +0200)]
Update tcplay(8) manpage.

- bump date
- move '--fde' option to correct place in synopsis
- remove kpartx and Linux references
- use valid ciphers combination for volume creation example
- add missing '--device' option to several example commands
- adapt examples to Dragonfly context

5 months agoUpdate tcplay from 2.0 to 3.3
Daniel Fojt [Tue, 28 Apr 2020 11:50:53 +0000 (13:50 +0200)]
Update tcplay from 2.0 to 3.3

5 months agolibc - Fix a serious memory leak in the nmalloc code
Matthew Dillon [Thu, 30 Apr 2020 08:39:05 +0000 (01:39 -0700)]
libc - Fix a serious memory leak in the nmalloc code

* Fix a bug where mtmagazine_free() would assign mt->newmag without
  re-checking its contents, potentially overwriting an assignment
  made by _slaballoc(), causing a memory leak.

* This bug generally rears its ugly head in heavily pthreaded programs,
  but it can occur under other conditions too.

Reported-by: hsw (irc)
5 months agotmpfs - Fix bug in page-free bypass path
Matthew Dillon [Thu, 30 Apr 2020 03:05:13 +0000 (20:05 -0700)]
tmpfs - Fix bug in page-free bypass path

* tmpfs moves pages between two objects in order to allow data to
  be paged to swap.  Tmpfs makes an optimization to evict pages
  that are already backed by swap when reclaiming a vnode.

  Fix a bug in this code which can sometimes attempt to free a VM
  page which is still flagged PG_MAPPED, causing an assertion and
  panic.  The page is not mapped at this point in time but the meaning
  of the flag has changed somewhat and the flag can still be left
  set by the time the page gets to this bit of code.

5 months agocpdup(1): Drop old compatible code for other OSes
Aaron LI [Wed, 29 Apr 2020 13:52:20 +0000 (21:52 +0800)]
cpdup(1): Drop old compatible code for other OSes

The compatible code of cpdup(1) for Linux and other BSDs has been better
maintained in its standalone repository:
https://github.com/DragonFlyBSD/cpdup

So let's drop the old and unmaintained compatible code here.

5 months agorc.d: Add mounttmpfs to support tmpfs at /var/run and /tmp
Aaron LI [Wed, 29 Apr 2020 04:47:23 +0000 (12:47 +0800)]
rc.d: Add mounttmpfs to support tmpfs at /var/run and /tmp

We are already mounting a tmpfs at /var/run/shm to support shm_open()
etc functions.  However, this makes it harder for a user to make
/var/run on a tmpfs.  Actually, using a tmpfs for /var/run is a good
idea, though the deamons/system need to create necessary folders, and
Linux has adopted such a model for /run (symlink to /var/run) for years.

Introduce the 'mounttmpfs' rc script to support mounting tmpfs at
/var/run and /tmp, which is enabled by setting 'tmpfs_var_run=YES'
and 'tmpfs_tmp=YES' in /etc/rc.conf, respectively.  The default values
for these two new configurations are both 'NO'.

The new 'mounttmpfs' rc script is ordered *after* 'mountcritremote', so
that NFS-mounted /var is also properly handled, although I think
NFS-mounted /var is not a good idea and I don't know anyone really need
to do so.

Also move the tmpfs mounting at /var/run/shm from 'mountcritlocal' to
the new 'mounttmpfs' script.

Reviewed-by: tuxillo
5 months agosbin/fsck_msdosfs: Do not overflow when calculating file system size
Tomohiro Kusumi [Tue, 28 Apr 2020 18:10:08 +0000 (03:10 +0900)]
sbin/fsck_msdosfs: Do not overflow when calculating file system size

from freebsd/freebsd@2ccadef77b81e7f18dd6bc4380357d6c6a797c5a

5 months agoFix various grammatical issues in our messages, documentation etc. (2)
Sascha Wildner [Tue, 28 Apr 2020 16:24:50 +0000 (18:24 +0200)]
Fix various grammatical issues in our messages, documentation etc. (2)

5 months ago<sys/flame_graph.h>: Include <sys/types.h> for some used types.
Sascha Wildner [Tue, 28 Apr 2020 15:49:07 +0000 (17:49 +0200)]
<sys/flame_graph.h>: Include <sys/types.h> for some used types.

While here, add a copyright header.

5 months ago<sys/namecache.h>: Include <sys/lock.h> for nc_lock.
Sascha Wildner [Tue, 28 Apr 2020 15:48:31 +0000 (17:48 +0200)]
<sys/namecache.h>: Include <sys/lock.h> for nc_lock.

While here, remove <sys/thread.h> which is no longer needed.

5 months agolibc/setproctitle(): Add missing va_end()s in error paths.
Sascha Wildner [Sat, 25 Apr 2020 06:39:15 +0000 (08:39 +0200)]
libc/setproctitle(): Add missing va_end()s in error paths.

5 months agolibc/strcoll_l(): Remove bogus checks.
Sascha Wildner [Fri, 24 Apr 2020 18:41:38 +0000 (20:41 +0200)]
libc/strcoll_l(): Remove bogus checks.

t1 and t2 are guaranteed to be non-NULL at this point.

5 months ago<sys/sglist.h>: Adjust the type of struct sglist's sg_refs to unsigned.
Sascha Wildner [Fri, 24 Apr 2020 18:09:46 +0000 (20:09 +0200)]
<sys/sglist.h>: Adjust the type of struct sglist's sg_refs to unsigned.

To match the refcount API which is used under the hood.

5 months agoFix various grammatical issues in our messages, documentation etc.
Sascha Wildner [Tue, 28 Apr 2020 15:40:46 +0000 (17:40 +0200)]
Fix various grammatical issues in our messages, documentation etc.

5 months agoinet6: nd6_na_input() now considers ln_state <= ND6_LLINFO_INCOMPLETE
Roy Marples [Tue, 28 Apr 2020 11:46:59 +0000 (11:46 +0000)]
inet6: nd6_na_input() now considers ln_state <= ND6_LLINFO_INCOMPLETE

Otherwise if ln_state != ND6_LLINFO_INCOMPLETE and the is no lladdr
and this message was solicited then ln_state is set to ND6_LLINFO_REACHABLE
which then causes confusion elsewhere in the stack.
If ln_state > ND6_LLINFO_INCOMPLETE then it's assumed we have a lladdr.

Depending on the timing, it's technically possible to receive such
a message after the llentry is created with ND6_LLINFO_NOSTATE.

Taken from NetBSD.

5 months agosbin/fsck_msdosfs: Fix a bug with dirty file system handling
Tomohiro Kusumi [Mon, 27 Apr 2020 16:40:53 +0000 (01:40 +0900)]
sbin/fsck_msdosfs: Fix a bug with dirty file system handling

r356313 broke handling of dirty file system because we have restricted
the correction of "odd" byte sequences to checkfat(), and as a result
the dirty bit is never cleared.  The old fsck_msdosfs code would write
FAT twice to fix the dirty bit, which is also not ideal.

Fix this by introducing a new rountine, cleardirty() which will perform
the set of clean bit only, and use it in checkfilesys() if we thought
the file system was dirty.

https://svnweb.freebsd.org/base?view=revision&revision=356313

from freebsd/freebsd@ffa396196c4c0fcf8a6bf4d1dd88ffb9ce531ccc

6 months agoroute.4: Fix date
Aaron LI [Sat, 25 Apr 2020 10:50:19 +0000 (18:50 +0800)]
route.4: Fix date

Fix date for commit ced8848230553786e51dc0d08f17ccc302f556d1.

6 months agodrm/linux: Add for_each_clear_bit()
François Tigeot [Sat, 25 Apr 2020 09:58:12 +0000 (11:58 +0200)]
drm/linux: Add for_each_clear_bit()

Obtained-from: FreeBSD

6 months agodrm/linux: Add BIT_ULL() and GENMASK_ULL()
François Tigeot [Sat, 25 Apr 2020 08:06:36 +0000 (10:06 +0200)]
drm/linux: Add BIT_ULL() and GENMASK_ULL()

6 months agokernel - Detune memory slab allocator pcpu caching a little
Matthew Dillon [Fri, 24 Apr 2020 17:02:28 +0000 (10:02 -0700)]
kernel - Detune memory slab allocator pcpu caching a little

* The kernel tries to cache a lot of slab zones on a pcpu basis
  due to the high overhead of mapping and unmapping kernel memory.
  However, this can burn an excessive amount of physical memory on
  high-core-count cpus.

* Reduce the pcpu cache hysteresis on systems with more than 32 cpu
  threads.  So on a 128-thread TR with 256GB of ram, this reduces
  the slab cache from a ridiculous 30GB to a more reasonable 10GB.

6 months agosbin/fsck_hammer2: Refactor print_blockref_verbose()
Tomohiro Kusumi [Fri, 24 Apr 2020 15:12:05 +0000 (00:12 +0900)]
sbin/fsck_hammer2: Refactor print_blockref_verbose()

6 months agokernel - Remove CACHE_VREF: RACED debugging output
Matthew Dillon [Fri, 24 Apr 2020 04:19:06 +0000 (21:19 -0700)]
kernel - Remove CACHE_VREF: RACED debugging output

* Remove 'CACHE_VREF: RACED' debugging output after verifying
  that the race can occur and is properly handled.

6 months agohammer2 - Fix serious de-duplication bug and a few other things (2)
Matthew Dillon [Fri, 24 Apr 2020 01:06:03 +0000 (18:06 -0700)]
hammer2 - Fix serious de-duplication bug and a few other things (2)

* Remove debugging kprintf()

6 months agohammer2 - Fix serious de-duplication bug and a few other things
Matthew Dillon [Fri, 24 Apr 2020 00:38:10 +0000 (17:38 -0700)]
hammer2 - Fix serious de-duplication bug and a few other things

* Fix a serious de-duplication bug.  When small files <= 512
  bytes are extended with write()s to being larger than 512 bytes,
  it triggers a de-duplication bug in the first block of the file
  if that block can be de-duplicated from other sources.

  A mishandled skip condition combined with modest buffer cache
  flush loads can cause this first block can wind up getting
  zero'd out and cause a CHECK failure (I/O error) on the file.

  The fixes for this are primarily in hammer2_chain_modify().

* Replace HAMMER2_BREF_FLAG_ZERO in the bref.flags with
  HAMMER2_CHAIN_NOTTESTED in the chain structure and deprecate
  the flag.  This flag could sometimes accidentally be flushed
  to the media.

* Clear HAMMER2_CHAIN_INITIAL in two strategy write paths
  that are not typically hit.  The flag is probably already
  clear at this point since hammer2_chain_modify() has likely
  already been called, but be sure.

6 months agokernel - Fix excessive VM pageout flushes (2)
Matthew Dillon [Fri, 24 Apr 2020 00:37:10 +0000 (17:37 -0700)]
kernel - Fix excessive VM pageout flushes (2)

* Add a couple of missing page-rebusy tests in the vnode/putpages
  path for the pageout daemon.

6 months agobuild - Add a few things in test/debug
Matthew Dillon [Thu, 23 Apr 2020 06:15:47 +0000 (23:15 -0700)]
build - Add a few things in test/debug

* Add a few more kernel probing utilities.

6 months agosbin/fsck_hammer2: Support regular file
Tomohiro Kusumi [Thu, 23 Apr 2020 18:27:40 +0000 (03:27 +0900)]
sbin/fsck_hammer2: Support regular file

6 months agosbin/fsck_hammer2: Adjust indentations for error messages
Tomohiro Kusumi [Thu, 23 Apr 2020 17:34:05 +0000 (02:34 +0900)]
sbin/fsck_hammer2: Adjust indentations for error messages

6 months agodsynth - Revert PkgDepMemoryTarget default
Matthew Dillon [Thu, 23 Apr 2020 02:41:04 +0000 (19:41 -0700)]
dsynth - Revert PkgDepMemoryTarget default

* The issues observed were actually not the fault of dsynth, but
  instead due to paging behavior by the kernel.  Changing this value
  did not actually fix anything, but fixes to the kernel did.

  Revert the calculation back to divide-by-3.

6 months agokernel - Fix excessive VM pageout flushes
Matthew Dillon [Thu, 23 Apr 2020 02:39:37 +0000 (19:39 -0700)]
kernel - Fix excessive VM pageout flushes

* The VM pageout code was calculating the laundering limit improperly.
  We were trying to calculate a per-pass limit within each queue list
  but were not taking into account the fact that the number of queues
  have greatly increased in the last few years AND also that the paging
  scans only check 1/10 of each queue for each scan.

  These fixes allow the pageout scan to pick-up many more clean pages
  before beginning to stall-out on dirty pages.

* vm_max_launder is now calculated as 1/256 of physical memory at startup
  instead of hardwired.

* local max_launder calculations now take into account the number of
  queues and the fact that only 1/10 of each queue is checked in each
  pass.

  In addition, the local max_launder calculation is increased by the
  pass number divided by 10 so as to only increase for each full queue
  scan.

* the 'pass' variable passed down into helper functions is now divided
  by 10 because we do not want it to 'increment' and trigger stronger
  behavior until after the entire inactive queue has been scanned.

6 months agotmpfs - Change paging behavior, fix two directory-entry races
Matthew Dillon [Thu, 23 Apr 2020 02:24:13 +0000 (19:24 -0700)]
tmpfs - Change paging behavior, fix two directory-entry races

* Change the paging behavior for vfs.tmpfs.bufcache_mode.

  These changes try to reduce unnecessary tmpfs flushes to swap when
  the pageout daemon is able to locate sufficient clean VM pages.
  The pageout daemon can still page tmpfs data to swap via its normal
  operation, but tmpfs itself will not force write()s to pipeline to
  swap unless memory pressure is severe.

  0 tmpfs write()s are pipelined to swap via the buffer cache only
if the VM system is below the minimum free page count.

(this is the new default)

  1 tmpfs write()s are pipelined to swap via the buffer cache when
the VM system is paging.

  2 Same as (1) but be more aggressive about releasing buffer cache
buffers.

  3 tmpfs_write()s are always pipelined to swap via the buffer cache,
regardless.

* Fix tmpfs file creation, hard-linking, and rename to ensure that the
  new file is not created in a deleted directory.  We must lock the
  directory node around existing tests and add checks that were missing.

  Also remove a few unnecessary recursive locks.

6 months agotmpfs - Too aggressive during paging
Matthew Dillon [Wed, 22 Apr 2020 21:27:17 +0000 (14:27 -0700)]
tmpfs - Too aggressive during paging

* tmpfs was being a bit too aggressive during paging.  We were trying to
  bypass all the way to PQ_CACHE as well as unconditionally age the
  buffers.  This caused the pageout daemon to thrash on any underlying
  tmpfs pages that were being re-referenced quickly.

* Change the defaults to (1) Not try to flush all the way to PQ_CACHE
  unless the system is in an extreme low memory condition.  And (2) to
  only B_AGE the buffer when the system is paging and otherwise allow
  it to cycle normally.

6 months agokernel - Double LRU dirty pages by default
Matthew Dillon [Wed, 22 Apr 2020 21:05:12 +0000 (14:05 -0700)]
kernel - Double LRU dirty pages by default

* The pageout daemon was supposed to double-LRU dirty pages in the inactive
  queue by default and it wasn't.  This was causing dirty tmpfs pages to
  have too much priority in the inactive queue.

  Theoretically since tmpfs now issues direct writes to backing store in
  low-memory situations, we should be able to allow its dirty pages to
  cycle normally in all other situations.

6 months agosbin/fsck_hammer2: Consider device size with less than 4 zones
Tomohiro Kusumi [Wed, 22 Apr 2020 17:28:05 +0000 (02:28 +0900)]
sbin/fsck_hammer2: Consider device size with less than 4 zones

Unlike HAMMER1 which had volume size requirement, HAMMER2 allows
creation of small filesystem without having 4 zones for volume headers.
Make fsck_hammer2 also consider that, otherwise segfaults if the
device has less than 4 zones.

6 months agocpdup - Fix type-o in help output
Matthew Dillon [Wed, 22 Apr 2020 07:35:56 +0000 (00:35 -0700)]
cpdup - Fix type-o in help output

* Fix 'patch' -> 'path'

Reported-by: bdrewery
6 months agodsynth - Reduce the pkg dependency memory target heuristic
Matthew Dillon [Wed, 22 Apr 2020 06:40:47 +0000 (23:40 -0700)]
dsynth - Reduce the pkg dependency memory target heuristic

* Reducing the memory target will cause dsynth to clamp down on
  the number of builders a bit more when they enough of them
  have large pkg dependency footprints.  These dependencies
  are stored in tmpfs filesystems and having too many builders
  installing pkg ddpenencies at the same time can cause excessive
  paging to swap.

  Reduced from PhysMem / 3 to PhysMem / 4.

* When CCache is enabled, reduce the memory target even further
  to PhysMem / 5.

6 months agodsynth - Enable ccache support
Matthew Dillon [Wed, 22 Apr 2020 00:23:08 +0000 (17:23 -0700)]
dsynth - Enable ccache support

* Get ccache support working

Tested-by: kworr, dillon
6 months agosys/vfs/autofs: Silence down a warning which should really be a debug message
Tomohiro Kusumi [Tue, 21 Apr 2020 14:16:11 +0000 (23:16 +0900)]
sys/vfs/autofs: Silence down a warning which should really be a debug message

from freebsd/freebsd@7327b4d738a20b6af545efb195cea68fd14ff96a

6 months agoFix build for dhcpcd-9.0.2
Roy Marples [Tue, 21 Apr 2020 10:09:15 +0000 (10:09 +0000)]
Fix build for dhcpcd-9.0.2

6 months agoNote import of dhcpcd-9.0.2
Roy Marples [Tue, 21 Apr 2020 10:06:56 +0000 (10:06 +0000)]
Note import of dhcpcd-9.0.2

6 months agoMerge branch 'vendor/DHCPCD'
Roy Marples [Tue, 21 Apr 2020 10:05:02 +0000 (10:05 +0000)]
Merge branch 'vendor/DHCPCD'

6 months agoImport dhcpcd-9.0.2 with the following changes:
Roy Marples [Tue, 21 Apr 2020 10:03:27 +0000 (10:03 +0000)]
Import dhcpcd-9.0.2 with the following changes:

 * Control sockets are not opened in test mode
 * privsep: no longer aborts if protocol not available
 * inet6: Don't regen temporary addresses without a state
 * inet6: Reduce RA log spam
 * dhcp6: Don't log when things consitently fail
 * inet6: Add temporary directive to slaac option [1]
 * Ensure current interface flags persist when setting a flag
 * DHCP via BPF is now aligned correctly
 * CMSG buffers are now aligned correctly
 * hostnames are no longer clobbered when being forced and a RA is recieved

[1] dhcpcd no longer looks at any possible kernel settings when deciding to
manage IPv6 temporary addresses or not. You now instruct dhcpcd to do this
in dhcpcd.conf. Playing whack-a-mole with various kernel knobs wasn't fun
and some OS's have or are removing RA and thus temporary address managemnt
from the kernel so said knobs are no longer there.

6 months agosbin/fsck_hammer2: Make debug mode more verbose on failure
Tomohiro Kusumi [Mon, 20 Apr 2020 12:36:06 +0000 (21:36 +0900)]
sbin/fsck_hammer2: Make debug mode more verbose on failure

Make failed bref visually clear within radix tree if DebugOpt>1.

6 months agosbin/fsck_hammer2: Add debug mode for DebugOpt>1
Tomohiro Kusumi [Sat, 18 Apr 2020 15:52:39 +0000 (00:52 +0900)]
sbin/fsck_hammer2: Add debug mode for DebugOpt>1

6 months agosbin/fsck_hammer2: Make debug mode more verbose
Tomohiro Kusumi [Sat, 18 Apr 2020 14:12:06 +0000 (23:12 +0900)]
sbin/fsck_hammer2: Make debug mode more verbose

6 months agorc.conf.5: Small markup fix.
Sascha Wildner [Sun, 19 Apr 2020 05:25:48 +0000 (07:25 +0200)]
rc.conf.5: Small markup fix.

6 months agodrm/linux: Really implement irqs_disabled()
François Tigeot [Sat, 18 Apr 2020 14:17:52 +0000 (16:17 +0200)]
drm/linux: Really implement irqs_disabled()

6 months agodrm/linux: Add add_taint()
François Tigeot [Sat, 18 Apr 2020 14:07:27 +0000 (16:07 +0200)]
drm/linux: Add add_taint()

6 months agosbin/fsck_hammer2: Fix delta stats bug (-c option)
Tomohiro Kusumi [Fri, 17 Apr 2020 11:32:23 +0000 (20:32 +0900)]
sbin/fsck_hammer2: Fix delta stats bug (-c option)

It's possible that a cached delta is a part of another delta(s) to be
cached. When this happens, the parent delta needs to include stats
from the child delta, otherwise remaining zone scanning results could
be incorrect.

6 months agorc.conf.5: Describe dhcpcd_chrootdir.
Sascha Wildner [Thu, 16 Apr 2020 13:19:14 +0000 (15:19 +0200)]
rc.conf.5: Describe dhcpcd_chrootdir.

6 months agomtree/BSD.var.dist: Indent with spaces.
Sascha Wildner [Thu, 16 Apr 2020 13:18:58 +0000 (15:18 +0200)]
mtree/BSD.var.dist: Indent with spaces.

6 months agoUpdate the pciconf(8) database.
Sascha Wildner [Thu, 16 Apr 2020 13:20:32 +0000 (15:20 +0200)]
Update the pciconf(8) database.

April 13, 2020 snapshot from https://pci-ids.ucw.cz

6 months agoupgrade: Move dhcpcd files from the old db dir to the relative chroot
Roy Marples [Wed, 15 Apr 2020 14:50:48 +0000 (14:50 +0000)]
upgrade: Move dhcpcd files from the old db dir to the relative chroot

This allows the user to get the same address upon upgrading.

6 months agodhcpcd: Remove dependency on netifs
Roy Marples [Tue, 14 Apr 2020 14:14:48 +0000 (14:14 +0000)]
dhcpcd: Remove dependency on netifs

dhcpcd currently depends on being able to bind to the
unspecified address on the BOOTPC port and DHCPv6-client port
as well as listen to ICMP6.
This means that some routes need to be established first and
the rc.d infrastructure relies on netif being started before that.

We need to document not to configure an interface to start DHCP,
but rather just to start dhcpcd and if any extra configuration is
needed to limit the scope of interfaces it should be done in
dhcpcd.conf instead. However, the default should be fine.

6 months agodrm/i915: Enable stolen memory support
François Tigeot [Tue, 14 Apr 2020 08:27:28 +0000 (10:27 +0200)]
drm/i915: Enable stolen memory support

6 months agodrm/linux: Add uapi/asm/byteorder.h
François Tigeot [Tue, 14 Apr 2020 08:24:29 +0000 (10:24 +0200)]
drm/linux: Add uapi/asm/byteorder.h

6 months agodsynth - Add skip count for ignored and other failure conditions
Matthew Dillon [Tue, 14 Apr 2020 04:49:27 +0000 (21:49 -0700)]
dsynth - Add skip count for ignored and other failure conditions

* Improve implementation for the skip count in the logs and HTML
  interfaces.

Requested-by: tuxillo
6 months agokernel - Streamline refcount API
Matthew Dillon [Tue, 14 Apr 2020 04:47:43 +0000 (21:47 -0700)]
kernel - Streamline refcount API

* Streamline the refcount API, with a few provisios, to improve SMP
  performance.

6 months agomtree: Support dhcpcd chroot
Roy Marples [Mon, 13 Apr 2020 16:46:24 +0000 (16:46 +0000)]
mtree: Support dhcpcd chroot

6 months agodhcpcd: 02-dump is no longer supplied
Roy Marples [Mon, 13 Apr 2020 16:46:03 +0000 (16:46 +0000)]
dhcpcd: 02-dump is no longer supplied

6 months agodhcpcd: Add syslog chroot support
Roy Marples [Mon, 13 Apr 2020 16:45:33 +0000 (16:45 +0000)]
dhcpcd: Add syslog chroot support

6 months agodhcpcd: Build support for Privilege Separation, using the _dhcp user
Roy Marples [Mon, 13 Apr 2020 16:44:49 +0000 (16:44 +0000)]
dhcpcd: Build support for Privilege Separation, using the _dhcp user

6 months agodhcpcd: Note import of new version
Roy Marples [Mon, 13 Apr 2020 16:44:20 +0000 (16:44 +0000)]
dhcpcd: Note import of new version

6 months agoMerge branch 'vendor/DHCPCD'
Roy Marples [Mon, 13 Apr 2020 16:39:54 +0000 (16:39 +0000)]
Merge branch 'vendor/DHCPCD'

6 months agoupgrade: Update _dhcp home dir to /var/chroot/dhcp if empty
Roy Marples [Mon, 13 Apr 2020 16:38:03 +0000 (16:38 +0000)]
upgrade: Update _dhcp home dir to /var/chroot/dhcp if empty

6 months agopasswd: Give _dhcp a homedirectory of /var/chroot/dhcp
Roy Marples [Mon, 13 Apr 2020 16:35:45 +0000 (16:35 +0000)]
passwd: Give _dhcp a homedirectory of /var/chroot/dhcp

6 months agoUpdate to dhcpcd-9.0.1 with the following changes:
Roy Marples [Mon, 13 Apr 2020 16:30:52 +0000 (16:30 +0000)]
Update to dhcpcd-9.0.1 with the following changes:

* privsep: Improve error when we don't have permission to write lease
* privsep: Fix hooks restarting other daemons

6 months agokernel: GC a few old system calls which are libc functions in DragonFly.
Sascha Wildner [Mon, 13 Apr 2020 10:22:31 +0000 (12:22 +0200)]
kernel: GC a few old system calls which are libc functions in DragonFly.

Namely, getdomainname, setdomainname, and uname, all of which were
deprecated in early FreeBSD but never really phased out. They were
likely never used (as system calls) in DragonFly at all.

For more information on the FreeBSD history, see FreeBSD's r184789.

6 months agoifconfig(8): Do not wrongly use 'create' as hostname
Aaron LI [Sun, 12 Apr 2020 14:12:14 +0000 (22:12 +0800)]
ifconfig(8): Do not wrongly use 'create' as hostname

Do not allow to use the 'create' keyword as a hostname when ifconfig(8)
is invoked for an already existing interface.

Without this commit, ifconfig(8) assumes the 'create' keyword as a
hostname and tries to resolve it when 'ifconfig ifname create' invoked
for an already existing interface.  This can produce some misleading
error messages (e.g., 'create: bad value') or even unexpected results
(e.g., when the hostname resolving succeeds).

With this commit, when an interface is already exists and the 'create'
is the only argument, return an error message.  But when there are some
other arguments, just ignore the 'create' keyword and carry on.

Obtained from FreeBSD:
https://github.com/freebsd/freebsd/commit/e383c28ab5b8d0bdc15281e7522c368d56ac1a76
https://reviews.freebsd.org/D17171

6 months agokernel/sysmouse: Add evdev support
Peeter Must [Sun, 12 Apr 2020 10:07:01 +0000 (13:07 +0300)]
kernel/sysmouse: Add evdev support

Obtained-from: FreeBSD

6 months agodrm/linux: Add put_page()
François Tigeot [Fri, 10 Apr 2020 12:38:08 +0000 (14:38 +0200)]
drm/linux: Add put_page()

6 months agobsd-family-tree: Sync with FreeBSD.
Sascha Wildner [Wed, 8 Apr 2020 16:38:15 +0000 (18:38 +0200)]
bsd-family-tree: Sync with FreeBSD.