Sascha Wildner [Mon, 21 Jan 2019 10:50:09 +0000 (11:50 +0100)]
efirt.9: Comment out a non-existant function.
François Tigeot [Sun, 20 Jan 2019 20:11:44 +0000 (21:11 +0100)]
drm: Fix excessive wired memory usage
* This is a partial revert of
7ca4ece0a85bea451332580015344d3f12333419:
"drm: Rename struct drm_gem_object.vm_obj to filp".
* That commit caused wired memory usage to become excessive over time.
François Tigeot [Sat, 19 Jan 2019 19:11:34 +0000 (20:11 +0100)]
drm/gem: de-inline the ref/unref functions
Reducing differences with Linux 4.7.10
François Tigeot [Wed, 16 Jan 2019 19:43:47 +0000 (20:43 +0100)]
drm/linux/workqueue: the internal function is named func
Some driver code expects to be able to access it.
Aaron LI [Wed, 16 Jan 2019 09:00:47 +0000 (17:00 +0800)]
fgetln.3: Recommend to use the safer POSIX getline()
Obtained-from: OpenBSD
Aaron LI [Wed, 16 Jan 2019 08:57:05 +0000 (16:57 +0800)]
fgetln.3: Add the CAVEATS section with an example
Add the CAVEATS section to warn about the behavior of fgetln(). An
example is included to demonstrate how to properly use it.
Obtained-from: NetBSD, with the ferror() check from OpenBSD
Aaron LI [Wed, 16 Jan 2019 08:51:41 +0000 (16:51 +0800)]
getline.3: Note to distinguish between error and EoF
Note that the getline() and getdelim() functions do not distinguish
between end-of-file and error, so the callers must use feof() or
ferror() to determine which occurred.
Update the example to check the error.
Obtained-from: OpenBSD
Matthew Dillon [Tue, 15 Jan 2019 22:17:26 +0000 (14:17 -0800)]
tmpfs - Fix periodic syncer cpu-bound stalls w/tmpfs on big-mem boxes
* A bug in tmpfs leaves dirty tmpfs vnodes (which is basically all
of them) on the syncer list, causing the syncer to scan the entire
list every few seconds. When a large number of vnodes are involved,
this can lead to noticable cpu-bound stalls on the cpu the syncer is
running on.
* Generally speaking this should significantly improve applications
which use tmpfs a lot, such as synth runs, but was probably not noticed
on machines with less than 32GB of ram due to the lower kern.maxvnodes
default.
* Solved by unconditionally removing the vnode from the syncer list
in tmpfs_fsync(), but otherwise leaving the vnode marked VISDIRTY and
usually also VOBJDIRTY. Tmpfs's reclaim code properly handles the
disconnect regardless of the syncer state of the vnode.
Removing the vnode ensures that only one syncer pass is performed on
it, instead of repeated passes every few seconds.
Sascha Wildner [Tue, 15 Jan 2019 06:37:48 +0000 (07:37 +0100)]
Update the pciconf(8) database.
January 9, 2019 snapshot from https://pci-ids.ucw.cz
Sascha Wildner [Tue, 15 Jan 2019 03:44:42 +0000 (04:44 +0100)]
kernel: Remove puffs(4), putter(9) and associated libs and utilities.
All of these were originally pushed and hooked into the build in non-
working condition so that they would not go stale break building. The
hope was that someone would pick up the work and fix the remaining
issues, which never materialized.
This has led to more harm than good, with people occasionally assuming
that this code is functional. Also, the existence of /usr/include/fuse.h
might lead configure checks into believing that we have a working
implementation.
Sascha Wildner [Mon, 14 Jan 2019 17:59:58 +0000 (18:59 +0100)]
kernel: Hide the sysctl.debug sysctl in the SYSCTL_DEBUG kernel option.
The output is quite excessive and was previously too easily triggered,
like with "sysctl name=value" (instead of just "name=value") in
/etc/sysctl.conf.
Taken-from: FreeBSD
Sascha Wildner [Sun, 13 Jan 2019 14:54:35 +0000 (15:54 +0100)]
libcrypto: Switch over to libc's reallocarray().
Tomohiro Kusumi [Sun, 13 Jan 2019 22:40:19 +0000 (14:40 -0800)]
sbin/hammer2: Silence -Wformat-truncation= warning on Linux (gcc 7.3)
filename[HAMMER2_INODE_MAXNAME] may not be sufficient if
snprintf source pfs.name string is large enough. To silence
the warning, filename[] needs another 16 bytes.
This doesn't make difference on runtime, because bytes beyond
sizeof(pfs.name) won't be used even if strlen(pfs.name) is
large enough that filename[] contents exceeds sizeof(pfs.name).
(i.e. end result of pfs.name may be incomplete with or without
this commit)
--
cmd_snapshot.c: In function 'cmd_pfs_snapshot':
cmd_snapshot.c:84:9: warning: '%04d' directive output may be truncated writing between 4 and 11 bytes into a region of size between 0 and 255 [-Wformat-truncation=]
"%s.%04d%02d%02d.%02d%02d%02d",
^~~~
cmd_snapshot.c:83:3: note: 'snprintf' output between 17 and 324 bytes into a destination of size 256
snprintf(filename, sizeof(filename),
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
"%s.%04d%02d%02d.%02d%02d%02d",
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
pfs.name,
~~~~~~~~~
tp->tm_year + 1900,
~~~~~~~~~~~~~~~~~~~
tp->tm_mon + 1,
~~~~~~~~~~~~~~~
tp->tm_mday,
~~~~~~~~~~~~
tp->tm_hour,
~~~~~~~~~~~~
tp->tm_min,
~~~~~~~~~~~
tp->tm_sec);
~~~~~~~~~~~
Sascha Wildner [Sun, 13 Jan 2019 03:34:23 +0000 (04:34 +0100)]
libc: Adjust Versions.def properly.
Sascha Wildner [Sun, 13 Jan 2019 00:07:03 +0000 (01:07 +0100)]
i386 removal, part 70/x: Remove some i386 specific bits in the kernel.
Sascha Wildner [Thu, 3 Jan 2019 22:25:39 +0000 (23:25 +0100)]
i386 removal, part 69/x: Clean up sys/dev/netif.
According to comments from sephe.
Sascha Wildner [Sat, 12 Jan 2019 22:39:00 +0000 (23:39 +0100)]
Make libssh and mandoc use reallocarray() from libc.
Sascha Wildner [Sat, 12 Jan 2019 22:37:36 +0000 (23:37 +0100)]
libc: Add reallocarray() from OpenBSD.
It is useful for dhcpcd, mandoc and libssh. Also some dports might pick
it up. A few other dports have workarounds which, once reallocarray() is
in release too, can be removed.
Taken-from: OpenBSD (manual page from FreeBSD)
Pointed-out-by: aly
François Tigeot [Sat, 12 Jan 2019 12:05:56 +0000 (13:05 +0100)]
drm/linux: Add struct device_driver
Sascha Wildner [Thu, 10 Jan 2019 18:55:49 +0000 (19:55 +0100)]
rc.subr: Fix breakage in the rcrun(8) scripts.
0e7badd402459228d38ddfb0e06224b5a3d9fdf8 added an early exit to
rc.subr to avoid sourcing it again. However, some DragonFly bits
in rc.conf are specific to the rc.d script that rc.subr is sourced
from, specifically the contents of the $provide_list variable. The
result was that the varsym variables that rcstart(8) et al. use to
track dependency states were not get set.
Put the setup of $provide_list before the early exit.
Michael Neumann [Wed, 9 Jan 2019 20:41:47 +0000 (21:41 +0100)]
Add work-around for bug #3167
"UEFI boot hangs right after initializing UEFI framebuffer."
It actually boots but the system console is not shown.
I had this issue on a TUXEDO InfinityBook Pro 14v4.
This commits allows me to boot by setting loader tunable
machdep.hack_efifb_probe_early=1.
This commit is not intended to be there forever.
It's there for people who experience the same issue and want
a quick and easy way to test if this fixes their booting issue.
Discussed-with: dillon
Sascha Wildner [Wed, 9 Jan 2019 09:18:50 +0000 (10:18 +0100)]
Sync ACPICA with Intel's version
20190108.
* New acpiexec(8) option -va to dump memory leak information.
* iasl(8)'s TPM2 table template adjusted for revision 4 of the table.
* Bumped copyrights.
Sascha Wildner [Tue, 8 Jan 2019 20:53:38 +0000 (21:53 +0100)]
Makefile_upgrade.inc: Add a missing file i forgot in
5a31d992307898
Sascha Wildner [Tue, 8 Jan 2019 20:21:07 +0000 (21:21 +0100)]
openssl(1): Remove a no longer existing .PATH from the Makefile.
Sascha Wildner [Mon, 7 Jan 2019 21:01:23 +0000 (22:01 +0100)]
kernel/Makefiles: Remove two empty lines I added by mistake.
François Tigeot [Mon, 7 Jan 2019 20:14:50 +0000 (21:14 +0100)]
drm/i915/gem: Really implement i915_gem_object_invalidate()
François Tigeot [Mon, 7 Jan 2019 19:44:57 +0000 (20:44 +0100)]
drm/linux: Add invalidate_mapping_pages()
Inspired-by: FreeBSD
François Tigeot [Mon, 7 Jan 2019 18:03:05 +0000 (19:03 +0100)]
drm/i915: Sync i915_drv.c a bit with Linux
Sascha Wildner [Mon, 7 Jan 2019 10:33:12 +0000 (11:33 +0100)]
kernel: Change CFLAGS -> KCFLAGS also in commented out Makefile lines.
Your Name [Mon, 7 Jan 2019 08:03:12 +0000 (08:03 +0000)]
ipfw3: insert the new rule in the beginning
"ipfw3 add" is still the same, while the "ipfw3 insert" is the new method
which will insert the new rule in the beginning of the rule list.
Sascha Wildner [Sun, 6 Jan 2019 18:16:25 +0000 (19:16 +0100)]
Remove some dead code.
François Tigeot [Sat, 5 Jan 2019 22:28:31 +0000 (23:28 +0100)]
drm: Add drm_prime.c
Increase dma-buf subsystem coverage.
François Tigeot [Sat, 5 Jan 2019 21:22:08 +0000 (22:22 +0100)]
drm/i915: Enable the I915_GEM_USERPTR ioctl
Start building some of the associated code
François Tigeot [Sat, 5 Jan 2019 20:56:07 +0000 (21:56 +0100)]
drm: Partially sync drm_mm.c with Linux 4.7.10
Sascha Wildner [Sat, 5 Jan 2019 20:43:50 +0000 (21:43 +0100)]
kernel: Remove two no longer used sysinit ids.
* SI_BOOT2_BIOS was used for longrun and other i386 specific stuff only.
The last usage was removed in
c292f53669b4862993224dcf5c489355215be50d.
* SI_SUB_CLIST was removed in the recent tty clist refactoring commit,
see
4725869b060b0e647b6c64480a0ce50f64ff23bb.
Sascha Wildner [Sat, 5 Jan 2019 18:58:04 +0000 (19:58 +0100)]
kernel: Remove unused *.h files from SRCS in kernel module Makefiles. (2)
Forgot two Makefiles.
Sascha Wildner [Sat, 5 Jan 2019 17:58:10 +0000 (18:58 +0100)]
kernel: Remove kernel profiling bits.
It was broken on i386, is even more broken on x86_64 and isn't
worth fixing.
Discussed-with: dillon
Sascha Wildner [Sat, 5 Jan 2019 13:25:45 +0000 (14:25 +0100)]
Clean up the USB driver directories, remove unbuilt source.
Remove old source that has not (yet) been ported. If any of these
drivers would get ported in the future, it would be from current
FreeBSD source anyway. Keeping the old source around just confuses
when grepping in /usr/src.
Sascha Wildner [Sat, 5 Jan 2019 13:19:33 +0000 (14:19 +0100)]
lib/libc: Remove a file that is not used in libc.
Sascha Wildner [Fri, 4 Jan 2019 20:38:57 +0000 (21:38 +0100)]
kernel: Remove unused *.h files from SRCS in kernel module Makefiles.
They were found by checking the preprocessed code of the files
in SRCS to see if the header was included at some point.
After removal, the preprocessed source of a build with the old
Makefiles was compared against one with the changes (for various
kernel configurations and when building just from /usr/src) to
verify that the commit leads to no functional change.
François Tigeot [Thu, 3 Jan 2019 20:50:43 +0000 (21:50 +0100)]
drm/i915: Add i915_gem_dmabuf.c
This just means we now build more dma-buf code, not that the
end result is usable.
François Tigeot [Thu, 3 Jan 2019 20:08:24 +0000 (21:08 +0100)]
drm: Rename struct drm_gem_object.vm_obj to filp
Synchronize a bunch of related code with Linux
François Tigeot [Wed, 2 Jan 2019 22:23:36 +0000 (23:23 +0100)]
drm/linux: Add linux/mmu_context.h
Sascha Wildner [Mon, 31 Dec 2018 23:15:51 +0000 (00:15 +0100)]
HAPPY NEW YEAR!
Sascha Wildner [Mon, 31 Dec 2018 19:24:33 +0000 (20:24 +0100)]
Sync zoneinfo database with tzdata2018i from ftp://ftp.iana.org/tz/releases
* Qyzylorda, Kazakhstan moved from +06 to +05 on 2018-12-21.
* New zone Asia/Qostanay because Qostanay, Kazakhstan didn't move.
* Metlakatla, Alaska observes PST this winter only.
* Guess Morocco will continue to adjust clocks around Ramadan.
* Add predictions for Iran from 2038 through 2090.
* São Tomé and Príncipe switches from +01 to +00 on 2019-01-01.
For a detailed list of changes, see share/zoneinfo/NEWS.
Sascha Wildner [Mon, 31 Dec 2018 12:00:43 +0000 (13:00 +0100)]
mkinitrd.sh: Fix comment typo.
Imre Vadász [Fri, 28 Dec 2018 14:50:31 +0000 (15:50 +0100)]
vkernel - Remove unneeded -T flag, that was added in
7b21e5e4a2ba4592a.
* Instead the -e hw.tsc_cputimer_enable=0 flag can be used, to set the
tunable that disables use of the TSC cputimer.
Pointed-out-by: swildner
Sascha Wildner [Fri, 28 Dec 2018 13:34:12 +0000 (14:34 +0100)]
kernel: Remove more duplicate includes.
Sascha Wildner [Fri, 28 Dec 2018 13:27:57 +0000 (14:27 +0100)]
kernel/ic: Remove an unneeded #ifdef _KERNEL and two duplicate includes.
Sascha Wildner [Fri, 28 Dec 2018 12:50:47 +0000 (13:50 +0100)]
Oops, fix lagg's type in LINT64.
Sascha Wildner [Fri, 28 Dec 2018 12:47:24 +0000 (13:47 +0100)]
Add lagg(4) to LINT64.
While here, adjust LINT64's ident and fix lagg's type in VKERNEL64.
Imre Vadász [Fri, 28 Dec 2018 10:50:57 +0000 (11:50 +0100)]
vkernel - Delete unused/ancient timer/rtc function declarations in clock.h.
* Also get rid of tsc_is_broken flag, that is completely unused.
Sascha Wildner [Fri, 28 Dec 2018 10:32:37 +0000 (11:32 +0100)]
bsd-family-tree: Sync with FreeBSD.
Sascha Wildner [Thu, 27 Dec 2018 23:23:14 +0000 (00:23 +0100)]
kernel/acpi: Bring in FreeBSD's r341632.
On specific machines (a Lenovo Ideapad 100-15IBD in this case) would fail
detecting the battery properly after
7bcb6caf98d72e1e5fd653428e604ea1.
See https://lists.freebsd.org/pipermail/svn-src-all/2018-December/173505.html
for further info.
Reported-by: mazocomp on #dragonflybsd.
Taken-from: FreeBSD
Imre Vadász [Thu, 27 Dec 2018 21:41:25 +0000 (22:41 +0100)]
net - Simplify net/altq TSC timer code, get rid of its TSC calibration code.
* There is no use for the custom TSC calibration code in the ALTQ code.
If our bootup TSC calibration would ever fail, we have bigger problems
than being a little bit slower in the ALTQ code.
Sascha Wildner [Thu, 27 Dec 2018 13:05:08 +0000 (14:05 +0100)]
bufcache.9: Fix bread() prototype.
Aaron LI [Thu, 27 Dec 2018 11:26:36 +0000 (19:26 +0800)]
vkernel.7: Fix a typo and bump date
Imre Vadász [Tue, 25 Dec 2018 15:02:38 +0000 (16:02 +0100)]
kernel - Factor out TSC cputimer into common x86_64 code, use for vkernel.
* This adds a command line flag -T to the vkernel, to force disable use of
the TSC cputimer.
* By default the TSC will be used as a cputimer for the vkernel when the
TSC is invariant and mpsync according to the hw.tsc_invariant and
hw.tsc_mpsync sysctl values of the host.
Matthew Dillon [Thu, 27 Dec 2018 03:33:23 +0000 (19:33 -0800)]
kernel - Throw a global lock around udev dictionary ops
* Throw a global lockmgr lock around accesses and adjustments to
dev->si_dict.
* Refactor functions that used to access dev->si_dict directly by
adding two helper functions, udev_get_dict() and udev_put_dict().
* Should fix occassional vn-related panics.
Matthew Dillon [Wed, 26 Dec 2018 06:17:25 +0000 (22:17 -0800)]
iwm - Fix possible null pointer indirection
* Fix possible null pointer indirection. No known cases for dfly but
I would speculate possibly something in the error path could
trigger a NULL field there.
* Provisional change, may be adjusted in the future. But harmless.
Taken-from: haiku
Requested-by: waddlespl
Sascha Wildner [Tue, 25 Dec 2018 10:05:18 +0000 (11:05 +0100)]
efirt.9: Yet another prototype fix.
Sascha Wildner [Sun, 23 Dec 2018 21:37:03 +0000 (22:37 +0100)]
iconvlist.3: Fix prototype in SYNOPSIS.
Sascha Wildner [Sun, 23 Dec 2018 21:25:59 +0000 (22:25 +0100)]
bus_space.9: Fix some protoypes in SYNOPSIS.
Sascha Wildner [Sun, 23 Dec 2018 20:39:46 +0000 (21:39 +0100)]
kernel: Add descriptions to the p1003_1b sysctls.
While here, clean up a bit.
Sascha Wildner [Sun, 23 Dec 2018 20:36:57 +0000 (21:36 +0100)]
kernel: Populate the p1003_1b sysctl tree a bit more.
Sascha Wildner [Sun, 23 Dec 2018 20:09:35 +0000 (21:09 +0100)]
sem_init.3: Mark up SEM_VALUE_MAX.
Sascha Wildner [Sun, 23 Dec 2018 08:13:58 +0000 (09:13 +0100)]
<utmpx.h>: Change struct utmpx's ut_type from uint16_t to short, per POSIX.
See https://pubs.opengroup.org/onlinepubs/
9699919799/basedefs/utmpx.h.html
Our valid ut_types are 0-8 currently, so there should not be any issues.
Also fix a no longer necessary cast in utmp_update.
Sascha Wildner [Sun, 23 Dec 2018 06:35:02 +0000 (07:35 +0100)]
kernel/mrsas: Fix a double assignment.
This code is in an ioctl path that is not used in DragonFly.
Taken-from: FreeBSD
Sascha Wildner [Fri, 21 Dec 2018 20:21:29 +0000 (21:21 +0100)]
rtadvctl(8): Add __printflike and fix warnings.
Sascha Wildner [Fri, 21 Dec 2018 14:18:00 +0000 (15:18 +0100)]
libc/sysvipc: Fix some style issues (no functional change).
Sascha Wildner [Fri, 21 Dec 2018 14:14:14 +0000 (15:14 +0100)]
libc/sysvipc: Mark two functions as printf-like and fix resulting errors.
Justin C. Sherrill [Thu, 20 Dec 2018 04:46:37 +0000 (23:46 -0500)]
Fix broken links.
http://bugs.dragonflybsd.org/issues/3161
Aaron LI [Thu, 13 Dec 2018 05:53:54 +0000 (13:53 +0800)]
rc.d/varsym: Rewrite following rc.d/sysctl
* Rewrite this script following the same logic and style of rc.d/sysctl.
The basic syntax is checked before setting it.
* Clarify the /etc/varsym.conf syntax in the man page.
Reviewed-by: swildner
Aaron LI [Thu, 13 Dec 2018 05:58:27 +0000 (13:58 +0800)]
rc.d/sysctl: Rewrite to be more robust and clean
* Check the validity of the sysctl config and warn about the invalid
syntax.
A common mistake is that users set 'sysctl <mib>=<val>' in
/etc/sysctl.conf, which generate huge amount of junk/mysterious
messages on the console. Now this will be warned.
* Reorganize the logic to be much cleaner.
* Do not bother to check whether the new value is different from the old
one.
* Rename the function for consistency.
Aaron LI [Fri, 14 Dec 2018 14:57:51 +0000 (22:57 +0800)]
rc.d/mountcritlocal: Clean up
Clean the code a bit and fix the style.
Sascha Wildner [Wed, 19 Dec 2018 09:04:36 +0000 (10:04 +0100)]
efirt.9: Fix prototype.
Matthew Dillon [Tue, 18 Dec 2018 16:31:56 +0000 (08:31 -0800)]
hammer2 - Cleanup 'info' command
* hammer2 info validates the partition info, but assumed that
the filesystem would be a disklabel. Add code to validate
against GPT slices too by checking the filesystem uuid.
Reported-by: ftigeot
Matthew Dillon [Mon, 17 Dec 2018 21:46:11 +0000 (13:46 -0800)]
hammer1 - Fix left-over /va/run/hammer.cleanup files
* Fix an incorrect API call by hammer1 to the pidfile_*() functions
in libutil. This caused hammer1 to leave its lock files sitting in
/var/run due to a use-after-free that reared its ugly head after
the version update.
Reported-by: JustinS
Sascha Wildner [Sun, 16 Dec 2018 23:15:54 +0000 (00:15 +0100)]
efirt.9: Add missing header to the SYNOPSIS.
Sascha Wildner [Sun, 16 Dec 2018 21:33:09 +0000 (22:33 +0100)]
Update the pciconf(8) database.
December 11, 2018 snapshot from https://pci-ids.ucw.cz
Sascha Wildner [Sun, 16 Dec 2018 21:29:41 +0000 (22:29 +0100)]
efirt.9: Use .Er for error return values.
Matthew Dillon [Sun, 16 Dec 2018 21:26:06 +0000 (13:26 -0800)]
atkbdc - Change default to still attach PS2 controller even if FADT says don't
* Temporary workaround, disable commit
131acb0380e93664 by default.
It can be enabled again with a tunable in /boot/loader.conf:
hw.acpi.fadt_8042_nolegacy=1
* Should work around several bug reports of the keyboard not working
in 5.4.
Sascha Wildner [Fri, 14 Dec 2018 23:56:19 +0000 (00:56 +0100)]
Add efidev.4 and efirt.9 manual pages from FreeBSD.
Sascha Wildner [Fri, 14 Dec 2018 23:04:38 +0000 (00:04 +0100)]
Sync ACPICA with Intel's version
20181213.
* Fix buffer length issues with the GenericSerialStatus.
* New object evaluation trace mechanism for control methods and data
objects (ACPI_LV_EVALUATION).
* _OSI strings sync.
* New options in iasl (-ww) and acpiexec (-eo).
* Various smaller fixes and additions.
For detailed list, please see sys/contrib/dev/acpica/changes.txt.
Sascha Wildner [Fri, 14 Dec 2018 21:34:59 +0000 (22:34 +0100)]
kernel/acpi: Fix the ACPI_LV_VERBOSITY1 level's value.
Aaron LI [Fri, 14 Dec 2018 14:08:26 +0000 (22:08 +0800)]
rc: Let dhcpcd(8) go to background immediately by default
Set the default value of "dhcpcd_flags" to be "-b", thus don't let
dhcpcd(8) block the boot, especially when there is no wireless
connection, with the default settings.
Aaron LI [Wed, 12 Dec 2018 04:06:17 +0000 (12:06 +0800)]
network.subr: Workaround race between wpa_supplicant and dhcpcd
Insert a 1-second delay after starting wpa_supplicant(8) to workaround
the race between it and dhcpcd(8), which can modify the interface's
state and break wpa_supplicant's ongoing SSID scan.
dhclient(8) doesn't have such an issue with wpa_supplicant.
Tested-by: me, Daniel Bilik <ddb@neosystem.org>
Aaron LI [Wed, 12 Dec 2018 14:53:00 +0000 (22:53 +0800)]
Allow optional "inet6" keyword in ipv6_ifconfig_<ifname>
Aaron LI [Wed, 12 Dec 2018 03:52:24 +0000 (11:52 +0800)]
rc.d/netif: Rework wlan interface configuration
* wlan interfaces are more similar to clonable interfaces rather than
vlan interfaces, so move the relevant code from childif_create() to
network.subr as wlan_up(), which will be called to create the wlan
interfaces before setting up them.
Now, list_net_interfaces() shouldn't list "net.wlan.devices".
* Add the wlan_down() function in network.subr to destroy the wlan
devices.
* Meanwhile, fix childif_destroy() to properly destroy the vlan
interfaces created by childif_create(). Also tweak the order of this
function in netif_stop().
* The 2-second delay in netif_start() doesn't apply anymore, since the
DHCP and WPA configurations are now handled in ifconfig_up() called by
ifn_start().
This patch is loosely based on FreeBSD's code. Thanks to them.
Aaron LI [Wed, 12 Dec 2018 03:29:10 +0000 (11:29 +0800)]
network.subr: Properly bring up/down interfaces
Now that the interface will be properly brought up in ifconfig_up(),
clean up the rc.d/wpa_supplicant script.
Aaron LI [Wed, 12 Dec 2018 03:16:05 +0000 (11:16 +0800)]
network.subr: Add IPv6 support to ifalias_{up,down}()
* Factor out the common parts of ifalias_{up,down}() to be
ifalias_common().
* Add IPv6 support to ifalias_common().
* Use ifalias_up() in network6_interface_setup().
Aaron LI [Tue, 11 Dec 2018 13:27:43 +0000 (21:27 +0800)]
rc.d/netif: Rename network_* to netif_* for consistency
Rename network_* subroutines to netif_* for better consistency. Also
set the rcvar and add netif_enable=YES to rc.conf.
Taken-from: FreeBSD (r272959, r278506)
Aaron LI [Tue, 11 Dec 2018 13:16:25 +0000 (21:16 +0800)]
network.subr: Clean up list_net_interfaces()
The rc.d/netif takes care of DHCP/non-DHCP interfaces appropriately, and
thus the interface type filter feature in list_net_interfaces() is no
longer needed since long ago.
Aaron LI [Tue, 11 Dec 2018 06:05:20 +0000 (14:05 +0800)]
network.subr: Cleanups and minor improvements
* Localize variables in all functions.
* Better name several variables (e.g., $i -> $_if).
* Simplify several test and case usages.
* Use the newly added "-n" option for ifconfig(8) in ifexists().
* Improve comments, debug messages, and styles.
* Print a message when calling rtsol(8) to auto configure an interface,
since it may take several seconds.
Aaron LI [Sun, 9 Dec 2018 02:55:55 +0000 (10:55 +0800)]
rc: Use SYSCTL{,_N,_W} variables
With minor cleanups to IO redirections.
Sascha Wildner [Tue, 11 Dec 2018 19:58:57 +0000 (20:58 +0100)]
kernel: Remove the FFS_ROOT option. It was a no-op since 4.9.
Matthew Dillon [Tue, 11 Dec 2018 17:26:19 +0000 (09:26 -0800)]
hammer2 - stabilization, fix delete-on-reclaim (2)
* Fix double-delete. When an inode is finally deleted, the
HAMMER2_INODE_ISUNLINKED flag must be cleared to avoid a
double delete later in reclaim.
François Tigeot [Tue, 11 Dec 2018 06:56:18 +0000 (07:56 +0100)]
drm: Add missing file uapi/linux/pci.h
Matthew Dillon [Mon, 10 Dec 2018 23:35:31 +0000 (15:35 -0800)]
hammer2 - stabilization, fix delete-on-reclaim
* Fix the delete-on-reclaim code which had been commented out
temporarily during the prior work. Restore and cleanup the
code.
This code handles deleting inodes for files which were unlinked
(nlinks count -> 0) but still had open descriptors.
* Fixes inode leak in df output and on the media.
François Tigeot [Mon, 10 Dec 2018 22:06:11 +0000 (23:06 +0100)]
drm: Add the DRM_IOCTL_GET_PCIINFO ioctl
* It provides an easy way to get PCI device information from
a /dev file descriptor
* The main user will be mesa/libdrm
Obtained-from: OpenBSD