Roy Marples [Mon, 28 Dec 2020 14:10:28 +0000 (14:10 +0000)]
dhcpcd: update README.DRAGONFLY
Roy Marples [Mon, 28 Dec 2020 14:08:41 +0000 (14:08 +0000)]
Merge branch 'vendor/DHCPCD'
Roy Marples [Mon, 28 Dec 2020 14:06:21 +0000 (14:06 +0000)]
Update to dhcpcd-9.4.0 with the following changes:
* DHCP: For anonymous, just use a generic ClientID
* link: Split hardware address randomisation out of anonymous option
* link: Only report hardware changes for active interfaces
* link: Report errors obtaining recv buffer size on overflow
* hooks: Add NOCARRIER_ROAMING reason
* hooks: interface_order now reflects priorities again
Sascha Wildner [Mon, 28 Dec 2020 00:28:17 +0000 (01:28 +0100)]
Sync zoneinfo database with tzdata2020e from ftp://ftp.iana.org/tz/releases
* Volgograd switched to Moscow time on 2020-12-27 at 02:00.
* Correct many pre-1986 transitions.
For a detailed list of changes, see share/zoneinfo/NEWS.
Roy Marples [Sun, 27 Dec 2020 18:49:30 +0000 (18:49 +0000)]
openresolv: update README.DRAGONFLY
Roy Marples [Sun, 27 Dec 2020 18:47:52 +0000 (18:47 +0000)]
openresolv: build avahi-daemon and mdnsd subscribers
Roy Marples [Sun, 27 Dec 2020 18:45:53 +0000 (18:45 +0000)]
Merge branch 'vendor/OPENRESOLV'
Roy Marples [Sun, 27 Dec 2020 18:43:42 +0000 (18:43 +0000)]
openresolv: Update to version 3.12.0 with the following changes:
* Default support for WireGuard interfaces
* Add allow_interfaces and deny_interfaces configuration knobs
* notify avahi-daemon of resolv.conf being changed
* notify mdsnd of resolv.conf being changed
* Allow configurations to be marked as Deprecated and Acivtated
* Harden resolvconf lock detection
Aaron LI [Sun, 27 Dec 2020 12:46:48 +0000 (20:46 +0800)]
devname.3: Update man page to align wht the code
Aaron LI [Sun, 27 Dec 2020 10:07:51 +0000 (18:07 +0800)]
Add nsmb.conf.5 man page
Obtained-from: FreeBSD
Aaron LI [Sun, 27 Dec 2020 10:02:02 +0000 (18:02 +0800)]
etc/Makefile: Minor style tweaks
Aaron LI [Sun, 27 Dec 2020 09:59:23 +0000 (17:59 +0800)]
etc/Makefile: No need to try to install 'group' file
Similar to the 'master.passwd', no need to try to install the 'group'
file, because its update has already been handled by the 'pw-update.sh'
script.
Aaron LI [Sun, 27 Dec 2020 09:35:13 +0000 (17:35 +0800)]
etc/Makefile: Use 'pw-update.sh' to add users and groups
After this change, if we want to add a new user/group, just add it to
the 'master.passwd' and/or 'group' files. No need to add ad-hoc pw(8)
commands in this Makefile.
Aaron LI [Sun, 27 Dec 2020 09:21:01 +0000 (17:21 +0800)]
tools: Add pw-update.sh to add new users and groups
This script is derived my 'dfly-update' tool [1], and will be used in
'make upgrade' to help add new users and groups.
[1] https://github.com/liweitianux/dfly-update
Aaron LI [Sun, 27 Dec 2020 03:40:11 +0000 (11:40 +0800)]
tools: Update commit-msg script a bit
Matthew Dillon [Sat, 26 Dec 2020 19:25:21 +0000 (11:25 -0800)]
kernel - Fix callout structural corruption bug
* _callout_cancel_quick() was not properly testing whether
the callout being canceled matched sc->next, resulting
it occassional kernel panics under certain circumstances.
* Could be triggered during dsynth runs.
* Fixed by adding the proper test.
Reported-by: zrj
Tomohiro Kusumi [Fri, 25 Dec 2020 16:36:00 +0000 (01:36 +0900)]
sys/vfs/hammer2: Add initial multi-volumes support for HAMMER2
This commit adds initial multi-volumes support for HAMMER2. Maximum
supported volumes is 64. The feature and implementation is similar to
multi-volumes support in HAMMER1.
1. ondisk changes
=================
This commit bumps volume header version from 1 to 2, and adds four new
volume header fields using reserved fields in version 1. Other ondisk
structures are unchanged.
* "volu_id" - volume id from 0 to 63, where 0 represents root volume.
* "nvolumes" - number of volumes. All volumes have same the same value.
* "total_size" - sum of "volu_size" in volumes. All volumes have the
same value.
* "volu_loff[HAMMER2_MAX_VOLUMES]" - A 512 bytes table which contains
start offset of max 64 volumes within "total_size". All volumes have
the same value.
Version 1 volume header has 0 for above fields, so HAMMER2 internally
treats "nvolumes" as 1, and "total_size" as "volu_size" to be able to
handle version 1 and 2 transparently.
All volumes have 4 headers, but only root volume ones are relevant.
Non-root volume headers have their own unique "volu_id" and "volu_size",
but other fields are unimportant and never used. Non-root volume headers
have sroot blockset[i] whose type is HAMMER2_BREF_TYPE_INVALID. Non-root
volume headers don't have boot/aux area, so freemap area start from
offset 0. Non-root volume headers are readonly and never updated after
creation. This means non-root volumes are just extra storage to extend
fs size and internally make up a single virtual volume whose size is
"total_size".
It currently doesn't automatically upgrade an existing version 1 fs to
version 2. Only newly created fs becomes version 2 for now.
2. volumes layout
=================
Basically similar to HAMMER1. A first block device argument provided for
newfs_hammer2(8) becomes the root volume, and if specified remaining
devices extend "total_size" as non-root volumes. All volumes except for
the last one have 1GiB (freemap level1) aligned "volu_size".
This means each volume's start offset within "total_size" is also 1GiB
(freemap level1) aligned. The start offsets of volumes are stored in
volu_loff[HAMMER2_MAX_VOLUMES]. Each volu_loff[n] (0 <= n < nvolumes)
represents start offset of volume n within "total_size". Unused volumes
have -1 for volu_loff[n].
e.g. If a fs consists of 1 volume, volu_loff[0] has 0 and rests have -1.
e.g. If a fs consists of 3 volumes, x GiB root volume, y GiB volume,
and z GiB volume, volu_loff[0] has 0, volu_loff[1] has x, volu_loff[2]
has x+y, and rests have -1.
Low level I/O function in HAMMER2 uses this linear offsets table to
determine a device vnode to use and relative offset within the device
vnode, for a given blockref's "data_off". This is different from HAMMER1
where logical offset had embedded volume id bits (i.e. there were holes
in logical address space). HAMMER2 needs this table to support multi-
volumes without changing current logical offset mechanism.
Unless all volumes are specified and mountable, mount_hammer2(8) fails
like it failed in HAMMER1. This also applies to other userspace commands
which require volumes specification, except for fstyp(8).
3. userspace commands
=====================
Basically same as or similar to HAMMER1.
* newfs_hammer2(8) takes a list of block device paths as argv[].
* mount_hammer2(8) takes block device paths or names in "a:b:c:..."
format.
* hammer2(8) takes block device paths or names in "a:b:c:..." format for
directives which require volumes specification. This commit also adds
"volume-list" directive and an ioctl command HAMMER2IOC_VOLUME_LIST,
which are similar to the one in HAMMER1.
* fsck_hammer2(8) takes device paths or names in "a:b:c:..." format.
* fstyp(8) takes device paths in "path1:path2:path3:..." format.
4. limitations
==============
* hammer2(8) "info" directive ignores multi-volumes block devices.
* hammer2(8) "growfs" directive doesn't support multi-volumes fs.
* fstyp(8) is unable to find PFS label via -l option if the PFS inode or
its parent indirect blocks are located beyond root volume.
* hammer2(8) doesn't support "volume-add" and "volume-del" directives
which existed in HAMMER1, and there is currently no plan to support.
Uglymotha [Thu, 24 Dec 2020 16:28:58 +0000 (17:28 +0100)]
net/ip_mroute: Fix 'struct igmpmsg' for x86_64
The `struct igmpmsg` currently uses `u_long` to define the unused fields
instead of `uint32_t`. This breaks the mroute API on 64 bit systems,
because `u_long` is 64bit there. The following code in `ip_mroute.c`
happily corrupts kernel upcall messages on 64bit systems as the fields
are incorrectly shifted 8bytes to the right, overwriting the destination
ip address in the packet.
```
/*
* Send message to routing daemon to install
* a route into the kernel table
*/
im = mtod(mm, struct igmpmsg *);
im->im_msgtype = IGMPMSG_NOCACHE;
im->im_mbz = 0;
im->im_vif = vifi;
```
Fix this issue by replacing `u_long` with `uint32_t` in `struct igmpmsg`.
This change has also been made in FreeBSD at:
https://github.com/freebsd/freebsd/commit/
3dd767ffd091fb1e586741a1aedfcd67884312a4
This fix is submitted by Uglymotha at GitHub:
https://github.com/DragonFlyBSD/DragonFlyBSD/pull/11
Sascha Wildner [Fri, 25 Dec 2020 10:03:11 +0000 (11:03 +0100)]
<netinet6/in6.h>: Revert one change that didn't improve anything.
Definitions with a leading underscore are not relevant for POSIX
and the code is more readable this way.
Sascha Wildner [Fri, 25 Dec 2020 09:18:41 +0000 (10:18 +0100)]
<netinet/in.h>: Clean up the POSIX namespace.
Thanks to zrj for testing it with a full dports bulk build.
Sascha Wildner [Mon, 21 Dec 2020 06:51:08 +0000 (07:51 +0100)]
<netinet/in6.h>/<sys/mount.h>: Use __BSD_VISIBLE where intended.
Only <sys/cdefs.h> should check the _POSIX_C_SOURCE and _XOPEN_SOURCE
definitions. The rest should always use *_VISIBLE.
Sascha Wildner [Sun, 20 Dec 2020 18:59:03 +0000 (19:59 +0100)]
<netinet/in.h>: Fix comment indent.
Tomohiro Kusumi [Sun, 20 Dec 2020 12:59:40 +0000 (21:59 +0900)]
sbin/newfs_hammer2: Minor cleanup
to make multi-volumes diff (which uses *vol for other purpose) clearer.
In HAMMER2 the volume header variable is basically always *voldata.
Tomohiro Kusumi [Sun, 20 Dec 2020 07:03:52 +0000 (16:03 +0900)]
sbin/fsck_hammer2: Don't print "exceeds volume size" in find_best_zone()
No need to print while seeking for a best zone.
François Tigeot [Sat, 19 Dec 2020 09:48:01 +0000 (10:48 +0100)]
drm/i915: Enable I915_PARAM_MMAP_VERSION
François Tigeot [Sat, 19 Dec 2020 09:47:32 +0000 (10:47 +0100)]
drm/i915: Update PCI IDs from Linux 5.8
This brings in support for new Coffee Lake, Amber Lake, Whiskey Lake
and Comet Lake GPUs.
François Tigeot [Sat, 19 Dec 2020 09:42:40 +0000 (10:42 +0100)]
drm: Update to Linux 4.15.18
* Create /dev/dri/renderD* devices
Generally handle /dev entries creation as close to Linux as possible.
* Add drm master support
Sync authentification code with Linux 4.15.18
* handle vm_mm->mmap_sem in ttm page fault operations
* Update dma-fence code from OpenBSD
* This commit contains sleep/wakeup and other changes
from Matthew Dillon <dillon@apollo.backplane.com>
Sascha Wildner [Fri, 18 Dec 2020 23:43:19 +0000 (00:43 +0100)]
Sync ACPICA with Intel's version
20201217.
* Fix exception code class checks.
* Better GCC 10 support.
* Some -Wimplicit-fallthrough fixes.
* Miscellaneous improvements in the tools.
For detailed list, please see sys/contrib/dev/acpica/changes.txt.
Matthew Dillon [Fri, 18 Dec 2020 19:12:43 +0000 (11:12 -0800)]
cpdup - Add support for lchmod(), lutimes(), and lchflags() (2)
* Fix bug in xlink, lchflags() was being called with the wrong
path after a link failure and so could not unlock schg files
to link to them.
Daniel Fojt [Thu, 17 Dec 2020 17:15:26 +0000 (18:15 +0100)]
sys/vfs/hammer: modify directory ctime when adding entry
In addition to mtime, update also ctime of a directory when adding
new entry there.
Related to issue: https://bugs.dragonflybsd.org/issues/3251
Reviewed by: Matthew Dillon
Daniel Fojt [Thu, 17 Dec 2020 17:10:39 +0000 (18:10 +0100)]
sys/vfs/hammer2: modify inode's ctime after link()ing it
After successfully hardlinking inode, update also its ctime.
In addition to mtime, update also ctime of destination directory.
Issue: https://bugs.dragonflybsd.org/issues/3251
Reviewed by: Matthew Dillon
Tomohiro Kusumi [Wed, 16 Dec 2020 17:33:48 +0000 (02:33 +0900)]
usr.sbin/fstyp: Minor HAMMER1 fixes
Tomohiro Kusumi [Wed, 16 Dec 2020 17:10:32 +0000 (02:10 +0900)]
usr.sbin/fstyp: Minor HAMMER2 fixes
Matthew Dillon [Wed, 16 Dec 2020 00:50:41 +0000 (16:50 -0800)]
build - Fix building new sources on older systems
* Fix compile errors when doing a new buildwolrd on an old
base system.
zrj [Wed, 16 Dec 2020 06:09:08 +0000 (08:09 +0200)]
Revert "sys.mk: Add the 's' modifier to our ARFLAGS."
This reverts commit
6bae3359fa1ec5d88e148046045c4d9eabcaef21.
To be investigated, few issues in static cc1plus.
zrj [Tue, 15 Dec 2020 07:00:45 +0000 (07:00 +0000)]
pthreads: Add pthread_is_threaded_np.3 manpage.
zrj [Tue, 15 Dec 2020 06:34:30 +0000 (06:34 +0000)]
pthreads: Add pthread_yield_np().
Same as non standard pthread_yield() but with correct '_np' suffix.
zrj [Tue, 15 Dec 2020 06:30:15 +0000 (06:30 +0000)]
pthreads: Use sticky version in pthread_is_threaded_np().
It was observed that several applications have undefined behaviour if
they become implicitly threaded at runtime (e.g. locale libraries).
This allows to check status to avoid issues in applications calling
sigprocmask() and fork() without immediate exec().
zrj [Tue, 15 Dec 2020 06:27:09 +0000 (06:27 +0000)]
world: Add <sys/single_threaded.h>
The __libc_single_threaded is publicly exported version of libc private
__isthreaded symbol that does not reset on fork in threaded programs.
Sascha Wildner [Tue, 15 Dec 2020 13:13:19 +0000 (14:13 +0100)]
Update the pciconf(8) database.
December 13, 2020 snapshot from https://pci-ids.ucw.cz
Antonio Huete Jimenez [Mon, 14 Dec 2020 00:29:15 +0000 (01:29 +0100)]
dsynth: Collect and present meta-node statistics.
- Do not display meta-node ports in 'built' since they are
not really built (although they are marked as successful).
- Create a new category called 'meta' where meta-nodes will
be represented.
- Curses mode does not show meta-nodes, the display is already
too tight.
Feature-request-by: @zrj
Antonio Huete Jimenez [Sun, 13 Dec 2020 10:16:03 +0000 (11:16 +0100)]
dsynth: Delete obsolete packages upon 'prepare-system'
- Remove old versions of packages when doing 'prepare-system'
thus avoiding duplicate dependencies due to old versions still
being present along with newer ones.
Sascha Wildner [Sun, 13 Dec 2020 07:50:32 +0000 (08:50 +0100)]
sys.mk: Add the 's' modifier to our ARFLAGS.
This allows us to remove most explicit executions of ranlib(1) and
lorder(1)/tsort(1) during buildworld, although not all.
Remaining are some 'ar -M' cases for static and profiling libstdc++
that still need ranlib(1). lorder(1)/tsort(1) are still used in the
linking of shared libraries.
Matthew Dillon [Sun, 13 Dec 2020 02:26:28 +0000 (18:26 -0800)]
top, vmstat, who, rwhod - Use CLOCK_UPTIME to calculate uptime
* Use CLOCK_UPTIME to calculate the system uptime instead of
subtracting current real time from boot real time, which could
get muffed up by setting the time.
Matthew Dillon [Sun, 13 Dec 2020 00:33:32 +0000 (16:33 -0800)]
uptime - Use CLOCK_UPTIME to calculate uptime
* Use CLOCK_UPTIME instead of subtracting the current realtime
from boottime.
* Fixes broken uptimes after time is set.
Reported-by: tuxillo, others
Sascha Wildner [Sat, 12 Dec 2020 20:41:27 +0000 (21:41 +0100)]
Remove local ar(1) operation code definitions and use ARFLAGS.
Remove 'l' from ARFLAGS (serves no purpose) and add 'c' to silence
archive creation warnings.
Note that we do not need to care about 'D' because our binutils were
configured with '--enable-deterministic-archives'.
To be done later: Adding 's' and stop running lorder/ranlib explicitly.
zrj [Sat, 12 Dec 2020 14:16:38 +0000 (14:16 +0000)]
pthreads: Add pthread_is_threaded_np() function.
zrj [Sat, 12 Dec 2020 14:13:50 +0000 (14:13 +0000)]
pthreads: Enhance pthread_sigprocmask() stub.
Some ports expect this function to work even before pthread_create().
zrj [Sat, 12 Dec 2020 14:12:00 +0000 (14:12 +0000)]
pthreads: Add pthread_getattr_np().
Adapted-from: NetBSD
zrj [Tue, 8 Dec 2020 11:45:40 +0000 (11:45 +0000)]
<pthread.h>: Provide pthread_*_np() prototypes too.
Based on review in DPorts what some of software packages expect.
zrj [Tue, 8 Dec 2020 11:45:20 +0000 (11:45 +0000)]
libstand: Exclude pthread types for loaders.
This effectively removes pthread types from loaders.
zrj [Tue, 8 Dec 2020 11:44:32 +0000 (11:44 +0000)]
<aio.h>: Only provide pthread types mandated by POSIX here.
zrj [Tue, 8 Dec 2020 11:43:54 +0000 (11:43 +0000)]
<signal.h>: Further reduce pthread namespace pollution.
Only provide types mandated by POSIX here.
zrj [Tue, 8 Dec 2020 11:11:06 +0000 (11:11 +0000)]
pthreads: Reimplement pthread types using non polluting types.
Use __ implementation specific namespace and adjust libthread_xu.
* The pthread_addr_t type was specific only to libc_r, remove it.
* The pthread_startroutine_t typedef was never used since initial fork.
* The mutex member in struct pthread_once was for libc_r only, rename
it to __sparelibc_r void pointer to keep ABI compatibility.
* Mangle struct names using __type_s scheme to avoid collisions with
user defined types in 3rd-party software packages.
* Adjust partly publicly visible struct pthread_once members too.
zrj [Tue, 8 Dec 2020 11:09:37 +0000 (11:09 +0000)]
pthreads: Use pthread_t type in libthread_xu.
Separated from upcoming work to allow easier differentiation between
non-pointers, single and double pointers. Inclusion of thr_private.h
already provides all needed information to dereference these types.
No functional change
zrj [Tue, 8 Dec 2020 10:36:12 +0000 (10:36 +0000)]
pthreads: Reduce pthread type namespace pollution.
This fully removes pthread types in kernel (except vkernel).
The vkernel bits first require <signal.h> exposure adjustments.
* Exclude type for sigev_notify_attributes for kernel, used only by the
lib/librt/aio.c. We could use void type unconditionally like NetBSD,
* Do not provide pthread_attr_t in <sys/aio.h> for kernel.
zrj [Tue, 8 Dec 2020 10:35:18 +0000 (10:35 +0000)]
pthreads: Remove <sys/signal.h> from <pthread.h>.
Seems to be legacy remnant for no longer required pthread_kill() and
pthread_sigmask(). Use lighter types header in <pthread_np.h>, because
size_t must be provided by <time.h> and <pthread.h> must include it.
zrj [Tue, 8 Dec 2020 10:34:41 +0000 (10:34 +0000)]
pthreads: Remove DragonFly tags referencing libc_r.
zrj [Tue, 8 Dec 2020 10:33:36 +0000 (10:33 +0000)]
libc: Reduce <pthread.h> exposure.
zrj [Tue, 8 Dec 2020 10:32:36 +0000 (10:32 +0000)]
libdevattr: Reduce <pthread.h> exposure.
zrj [Tue, 8 Dec 2020 10:31:50 +0000 (10:31 +0000)]
<machine/stdarg.h>: Make <stdarg.h> compatible with ports compilers.
We are now building with -Wsystem-headers for c++ and compilers provide
their own <stdarg.h> versions containing legacy compatibility
__va_copy() definition that was used in the draft proposal.
Treat it as reserved name. Only kernel code should use <sys/stdarg.h>
Matthew Dillon [Fri, 11 Dec 2020 17:21:34 +0000 (09:21 -0800)]
kernel - Callout corruption and subr_bus debugging
* Improve the debugging code to try to detect corrupt callouts
under more controller circumstances so a dump can be obtained.
* Try to catch a usb race in subr_bus.c
Daniel Fojt [Thu, 10 Dec 2020 19:16:54 +0000 (20:16 +0100)]
Upgrade libressl. 2/2
Update README.DRAGONFLY.
Daniel Fojt [Thu, 10 Dec 2020 19:16:14 +0000 (20:16 +0100)]
Upgrade libressl. 1/2
Merge branch 'vendor/LIBRESSL' into master.
Daniel Fojt [Thu, 10 Dec 2020 17:13:07 +0000 (18:13 +0100)]
vendor/libressl: upgrade from 3.2.2 to 3.2.3
Fixes ASN.1 vulnerability (aka CVE-2020-1971):
* Malformed ASN.1 in a certificate revocation list or a timestamp
response token can lead to a NULL pointer dereference
Tomohiro Kusumi [Thu, 10 Dec 2020 16:00:13 +0000 (01:00 +0900)]
sys/vfs/ext2fs: In ext2 BA_CLRBUF is used in ext2_balloc() not UFS_BALLOC()
from freebsd/freebsd@
262611483aad9f91d0450b5fc6b41a4075fc5ba4
Sascha Wildner [Thu, 10 Dec 2020 14:53:31 +0000 (15:53 +0100)]
vkernel: Add extra space.
Sascha Wildner [Wed, 9 Dec 2020 19:31:20 +0000 (20:31 +0100)]
kernel/mmap_single: Pass a_fp properly into the *_mmap_single dev op.
Follow-up to
8c530b23e3584f72dc8c660b3816187017eeeb6b which passed NULL
always.
Nothing is broken because of this at the moment but it will be useful
for drivers that want to access per-fp private data (with for example
devfs_get_cdevpriv()) from their blah_mmap_single() dev_ops function.
OK'd-by: dillon
Sascha Wildner [Wed, 9 Dec 2020 16:17:25 +0000 (17:17 +0100)]
edk2: Sync our TianoCore EDK II headers with the edk2-stable202011 tag.
Nothing of importance to us.
* Add ACPI's Interrupt Vector Flags
* Remove various prototypes of deprecated interfaces
* Bump block I/O protocol revision
* Add new EFI_MEMORY_ACCESS_MASK macro
Sascha Wildner [Tue, 8 Dec 2020 22:35:39 +0000 (23:35 +0100)]
inet6_opt_init.3: Use standard integer types in the SYNOPSIS.
Tomohiro Kusumi [Tue, 8 Dec 2020 19:17:17 +0000 (04:17 +0900)]
sbin/hammer2: Remove 0x prefix for blockref data_off/key in "show"
Other blockref fields don't have 0x prefix.
Quiet mode also doesn't have 0x prefix for data_off/key.
Tomohiro Kusumi [Tue, 8 Dec 2020 17:16:49 +0000 (02:16 +0900)]
usr.sbin/fstyp: Don't fail fsvtyp with err(3) on fopen failure
fsvtyp vectors (currently only for HAMMER1) need to open device(s),
but don't exit with err(3) on fopen failure. This behavior interferes
with fsvtyp for HAMMER2 when it gets supported in future.
Sepherosa Ziehau [Mon, 7 Dec 2020 15:16:53 +0000 (23:16 +0800)]
ip: Allow ip_mreqn support for IP_MULTICAST_IF,IP_{ADD,DROP}_MEMBERSHIP
- ip_mreqn.imr_ifindex takes precendence over ip_mreqn.imr_address,
if it's not 0. This strictly follows what Linux does.
- Allow ip_mreq for IP_MULTICAST_IF as what Linux does.
While I'm here, remove unnecessary critical section among
IP_MULTICAST_IF, IP_{ADD,DROP}_MEMBERSHIP.
Bump kernel version.
Requested-by: tuxillo
Tomohiro Kusumi [Mon, 7 Dec 2020 15:44:40 +0000 (00:44 +0900)]
sys/vfs/ext2fs: Document BA_CLRBUF flag used in ext2
from freebsd/freebsd@
137374ad40a464a4c47db068682a3cd0c724cdaf
Tomohiro Kusumi [Sat, 5 Dec 2020 19:02:56 +0000 (04:02 +0900)]
sys/vfs/hammer2: Minor kprintf fix
Tomohiro Kusumi [Fri, 4 Dec 2020 18:12:59 +0000 (03:12 +0900)]
Sepherosa Ziehau [Fri, 4 Dec 2020 12:45:25 +0000 (20:45 +0800)]
kern: Bump kernel version for IPPROTO_IP/IP_SENDSRCADDR,IP_TOS.
Sepherosa Ziehau [Fri, 4 Dec 2020 12:43:15 +0000 (20:43 +0800)]
udp: Port IPPROTO_IP/IP_TOS cmsg support from FreeBSD.
Sepherosa Ziehau [Fri, 4 Dec 2020 11:57:34 +0000 (19:57 +0800)]
inet: Port IPPROTO/IP_RECVTOS from FreeBSD.
Bump kernel version.
Requested-by: zrj
Sascha Wildner [Fri, 4 Dec 2020 11:49:03 +0000 (12:49 +0100)]
vkernel/vke: Add missing semicolon.
Sascha Wildner [Wed, 2 Dec 2020 19:35:27 +0000 (20:35 +0100)]
kernel/dup: Fix off-by-one in descriptor limit check.
Reported-by: zrj (found by gnulib's tests)
Sepherosa Ziehau [Wed, 2 Dec 2020 12:58:04 +0000 (20:58 +0800)]
ifmedia: Port SIOCGIFXMEDIA from FreeBSD
- Max # of media type is 255 on DragonFly; additional bit was used.
- Description of the media is changed to ###baseXX instead of
###Base-XX; it is more consistent with what we already have.
- Fix some media types in vke(4), e.g. 1000baseT <half-duplex>
is actually never deployed anywhere.
- Use ULL consistently in bce(4) for the if_baudrate.
- Setup if_baudrate properly for re(4).
- Fix typo in mii(4).
- Handle SIOCGIFXMEDIA in re(4) (for 2500baseT) and vke(4) (for
all newly added types).
- Bump kernel version.
Antonio Huete Jimenez [Mon, 30 Nov 2020 17:28:17 +0000 (18:28 +0100)]
libaura: More tests for dicts, duplicate handling
Antonio Huete Jimenez [Mon, 30 Nov 2020 14:42:11 +0000 (15:42 +0100)]
libaura: Add another test for dicts
Antonio Huete Jimenez [Mon, 30 Nov 2020 09:01:28 +0000 (10:01 +0100)]
libaura: Return NULL in some cases.
- Fail if there's not enough memory for allocating
num_buckets or if the method is unknown.
- Add test.
Antonio Huete Jimenez [Sat, 28 Nov 2020 07:37:20 +0000 (08:37 +0100)]
libaura: Staticize non-interface functions
Sepherosa Ziehau [Mon, 30 Nov 2020 14:36:31 +0000 (22:36 +0800)]
bce: Use IF_Mbps to avoid float number in kernel.
Reported-by: zrj
Sepherosa Ziehau [Wed, 4 Nov 2020 12:35:53 +0000 (20:35 +0800)]
re: Sync with Realtek's re-196.04; and fix re_start/re_tx_collect.
- Add several new chips' support, noticably RTL8125 support.
- Reorder chip related initializaton on the attach path a bit;
mainly to make sure ifnet is initialized.
- In re_start(), solely rely on the re_tx_free for the TX descriptor
setup loop. This avoids the fixup on the end of the loop. Add
assertion that the TX descriptor's corresponding mbuf is not setup
yet.
- On RTL8125, the EOF in the TX descriptor is no longer left uncleared
upon TX done, so simply rely on whether the TX descriptor's
corresponding mbuf is set or not to unload the busdma(9) and free the
TX mbuf. We actually should do this instead of rely on the EOF.
Tested-by: me (8101, 8111, 8168, 8125)
Romick <yellowrabbit2010 gmail.com> (8111)
Daniel Fojt <df neosystem.org> (8111)
Tomohiro Kusumi [Mon, 30 Nov 2020 15:06:34 +0000 (00:06 +0900)]
sys/vfs/hammer2: Make kprintf prefix consistent
Tomohiro Kusumi [Mon, 30 Nov 2020 15:07:40 +0000 (00:07 +0900)]
sys/vfs/hammer2: Don't ignore vn_isdisk() result on mount
Sascha Wildner [Sun, 29 Nov 2020 09:46:13 +0000 (10:46 +0100)]
nrelease: Define BUILDING_NRELEASE_DPORTS when building packages.
Requested by zrj to allow further optimization at the ports level.
Roy Marples [Sat, 28 Nov 2020 14:41:39 +0000 (14:41 +0000)]
Update dhcpcd README.DRAGONFLY
Roy Marples [Sat, 28 Nov 2020 14:38:03 +0000 (14:38 +0000)]
Merge branch 'vendor/DHCPCD'
Roy Marples [Sat, 28 Nov 2020 14:36:33 +0000 (14:36 +0000)]
Update to dhcpcd-9.3.4 with the following changes:
* DHCP: If error adding the address in oneshot, exit with failure
* DHCP: Only listen to the address if we successfully added it
* DHCP6: Fix segfault introduced in dhcpcd-9.3.3
* DHCP6: Abort in test mode when an error is returned by server
* options: allow --ia_na=1 and --ia_pd=2 on the command line
* options: Allow duid to take a value
Sascha Wildner [Sat, 28 Nov 2020 09:22:49 +0000 (10:22 +0100)]
<sys/sysproto.h>: Remove unneeded inclusion of <sys/sysmsg.h>.
After
80d831e1ad5c5886e45827bf13837cf84baba296, which removed the
struct sysmsg's in the *_args structures, this is no longer needed.
It also resolves circular #include issues because that commit at the
same time added #include <sys/sysproto.h> to <sys/sysmsg.h>.
Antonio Huete Jimenez [Fri, 27 Nov 2020 11:14:53 +0000 (12:14 +0100)]
sh(1) tests: dfregress support
Antonio Huete Jimenez [Fri, 27 Nov 2020 10:52:07 +0000 (11:52 +0100)]
dfregress: Add 'rc' option
- Allows to specify which return code will be considered success for the
test case being run. In the example below, a return code of '1' will
make the test PASS.
# Testcase type Options Args
builtins/alias.1 userland nobuild,rc=1 myarg1 myarg2
Antonio Huete Jimenez [Fri, 27 Nov 2020 10:09:31 +0000 (11:09 +0100)]
dfregress: Fix mistake in the previous commit
- We only return NULL on failure when fatal is false.
Antonio Huete Jimenez [Thu, 26 Nov 2020 22:40:00 +0000 (23:40 +0100)]
dfregress: Add 'interpreter' option
- Allows to specify the interpreter that will run the testcase file.
Some test cases just provide a file without execution permissions or no
shebang, etc. In some cases it is not desirable to modify the test case
files (i.e. contrib stuff).
Taking the example below, the previous behavior was to execvp() the file
'builtins/alias.0' but with 'interpreter' option, now you can specify
the shell you want to use to run it.
# Testcase type Options Args
builtins/alias.0 userland nobuild,interpreter=sh myarg1 myarg2
Sepherosa Ziehau [Thu, 26 Nov 2020 03:22:10 +0000 (11:22 +0800)]
udp: Port FreeBSD's IPPROTO_IP/IP_SENDSRCADDR.
Minor difference:
- Multicast src is not allowed.
- Always allow src, if it is same as inp_laddr and is not multicast.
While I'm here, fix datagram sending for multicast bound and connected
UDP socket.