Commit Graph

22286 Commits

Author SHA1 Message Date
Warner Losh
98d03dca9a universe: Demote armv6 to an extra architecture.
Per discussions over how to lighten the load of armv6, move it to an
extra arch. You can still build TARGET_ARCH=armv6 if you desire, but
it won't be built as part of 'make universe' without -DEXTRA_TARGETS.

Sponsored by:		Netflix
2023-07-27 22:30:41 -06:00
Val Packett
da6620e495 mk: fix unnecessary library relinking with incremental builds
Initial libs such as csu are always built (.PHONY), and their
installation to WORLDTMP was causing all the subsequent libraries to
be considered out-of-date even when in reality they were not. Use
install -C more consistently everywhere to avoid unnecessarily
updating the mtimes in WORLDTMP, fixing this problem.

This cut down my no-change buildworld time from 30 to 15 seconds.

Fixes: https://lists.freebsd.org/pipermail/freebsd-current/2016-May/061481.html
TODO.1

Reviewed by: sjg
Sponsored by: https://www.patreon.com/valpackett
Differential Revision:  https://reviews.freebsd.org/D39980
2023-07-27 14:55:16 -07:00
Domagoj Stolfa
4ae6991228 dtrace: Add WITH_DTRACE_ASAN
This option is a blanket for all the DTrace-related software. The option
when enabled passes in -fsanitize=address -fsanitize=undeifned, enabling
ASAN and UBSAN in the following components:

 - libdtrace
 - dtrace(1)
 - lockstat(1)
 - plockstat(1)

The option defaults to "no" and is intended as a developer aid.

Reviewed by:	markj
Differential Revision:	https://reviews.freebsd.org/D41157
2023-07-27 16:07:34 -04:00
Jose Luis Duran
81a7ce4404 src.conf.5: Regen
Regenerate makeman after enabling the building of lib32 on arm64.

Fixes: a1b6757313 ("arm64 lib32: enable building of lib32 on arm64")
Pull Request: https://github.com/freebsd/freebsd-src/pull/804
2023-07-27 14:02:14 -04:00
Jessica Clarke
87177389b7 bsd.lib.mk: Automatically generate libcompat TAGS
Note that the pattern for matching is made slightly more specific, so as
to permit libcompats where one is a prefix of another (e.g. CheriBSD has
lib64 and lib64c).

Reviewed by:	brooks, jhb, emaste
Differential Revision:	https://reviews.freebsd.org/D41185
2023-07-27 05:10:46 +01:00
Jessica Clarke
5d6cb793d0 bsd.compat.mk Extract _ALL_LIBCOMPATS and add related variables
Adding these to a new bsd.compat.pre.mk will allow other parts of the
tree to iterate over the set of possible libcompats (upper and/or lower)
rather than having to hard-code the list.

Reviewed by:	brooks, jhb, emaste
Differential Revision:	https://reviews.freebsd.org/D41178
2023-07-27 05:10:43 +01:00
Marius Strobl
4ef1c6f75d base: Remove support for the VTOC8 partitioning scheme
The removal of the sparc64 support in February 2020 obsoleted the
VTOC8 partitioning scheme as no other FreeBSD platform makes use
of it. Moreover, the code is bitrotting as nothing defines e. g.
LOADER_VTOC8_SUPPORT any more and, thus, should go now, too. With
this change, the following commits are reverted as far as VTOC8
is concerned and parts haven't already previously been deleted
along with prior sparc64 removals:
094fcb157d
a7d366e958
ba8d50d08b

The alignment example d9711c28ef
added to the VTOC8 section of gpart.8 is folded into the MBR one.

This should finally conclude the deorbit of sparc64-specific bits.

        We had joy, we had fun
        we ran Unix on a Sun.
        But that source and the song
        of FreeBSD have all gone.

Credits to Michael Bueker for the original "Unix on a Sun" and Rod
McKuen for the "Seasons in the Sun" lyrics.
2023-07-26 13:16:12 +02:00
Shivank Garg
215bab7924 mac_ipacl: new MAC policy module to limit jail/vnet IP configuration
The mac_ipacl policy module enables fine-grained control over IP address
configuration within VNET jails from the base system.
It allows the root user to define rules governing IP addresses for
jails and their interfaces using the sysctl interface.

Requested by:	multiple
Sponsored by:	Google, Inc. (GSoC 2019)
MFC after:	2 months
Reviewed by:	bz, dch (both earlier versions)
Differential Revision: https://reviews.freebsd.org/D20967
2023-07-26 00:07:57 +00:00
Mike Karels
a1b6757313 arm64 lib32: enable building of lib32 on arm64
Enable LIB32 option on aarch64, defaulting to YES; it had defaulted
to "broken".  Add required variables for how to compile lib32 on
arm.  Use /usr/include/arm for armv7 (32-bit) headers, analogous to
/usr/include/i386 on amd64.  Omit libomp from lib32; it is not
supported on armv7.

Reviewed by:	jrtc27
Differential Revision:	https://reviews.freebsd.org/D40945
2023-07-25 18:59:52 -05:00
Jessica Clarke
7f9318a022 bsd.linker.mk: Use :C not :S for regex
Whilst ^ and $ are supported with C, those are special cases, and
general regex syntax like groups and alternations are not. Use the
correct modifier so we get a version number out that's not 0 (which is
what happens when it can't be parsed by the later code).

Fixes:		c4177f5b41 ("bsd.linker.mk: Handle Xcode 15 linker identification")
MFC after:	1 week
2023-07-24 01:50:55 +01:00
Jessica Clarke
c4177f5b41 bsd.linker.mk: Handle Xcode 15 linker identification
The upcoming Xcode 15 introduces a new linker (called ld-prime or ld-new
in some documentation) to replace the classic ld64, which we need to
handle.

Previously, the linker would identify itself as:

  @(#)PROGRAM:ld  PROJECT:ld64-<version>

Now, there are two cases. When the classic ld64 is in use, it identifies
itself as:

  @(#)PROGRAM:ld-classic  PROJECT:ld64-<version>

When the new linker is in use, it identifies itself as:

  @(#)PROGRAM:ld  PROJECT:dyld-<version>

Thus, tweak the detection to allow a -classic suffix in the PROGRAM
string and to allow a dyld- prefix instead of an ld64- prefix on the
version number in the PROJECT string.

MFC after:	1 week
2023-07-24 01:34:17 +01:00
Kristof Provost
47d0c1fe7d pf.conf.5: document SCTP support
Mention SCTP in the pf.conf.5

Reviewed by:	tuexen
MFC after:	3 weeks
Sponsored by:	Orange Business Services
Differential Revision:	https://reviews.freebsd.org/D40870
2023-07-21 12:32:19 +02:00
John Baldwin
92053e4f8a share/mk: Pass -znoexecstack to ld.bfd when linking libraries and programs.
lld assumes -znoexecstack by default whereas ld.bfd still defaults to
-zexecstack in the absence of .note.GNU-stack annotations.  Adding the
flags centrally avoids having to patch various libraries in the tree
as one-offs (e.g. OpenSSL 3 is the current thing generating new
warnings with ld.bfd).

Reviewed by:	emaste
Differential Revision:	https://reviews.freebsd.org/D41120
2023-07-20 16:37:46 -07:00
Minsoo Choo
0c3eaa06b3 Remove perforce tools and references
Perforce has been retired since 2019 (commit feea78990c), so there is
no need anymore to keep perforce tools.  Plus, there is no need to
mention perforce admin.

Reviewed by:	emaste, Olivier Certner
Differential Revision:	https://reviews.freebsd.org/D41106
2023-07-20 13:33:39 -04:00
Mateusz Piotrowski
9e850513da style.Makefile.5: Wordsmith .PATH description
MFC after:	3 days
Fixes:	1ac5586c6d style.Makefile.5: Do not require $FreeBSD$ SCM IDs
2023-07-17 15:06:02 +02:00
Mateusz Piotrowski
22faf70d7e style.Makefile.5: Remove $FreeBSD$ from examples
MFC after:	3 days
2023-07-17 15:01:52 +02:00
Mateusz Piotrowski
73fb7a7a73 style.Makefile.5: Stop documenting NO_MAN
NO_MAN has been an error since 2020 according to UPDATING.

PR:		231357
MFC after:	3 days
2023-07-17 14:52:28 +02:00
Doug Rabson
5ac2a874d0 /etc/rc.subr: rename sysctl.conf.d to sysctl.kld.d
This better reflects the intent that this directory is indexed by kld
name and removes a conflict with D32128 which aims to split sysctl.conf.

Reviewed by:	kevans imp
MFC after:	2 weeks
Differential Revision: https://reviews.freebsd.org/D41043
2023-07-15 14:16:08 +01:00
Doug Rabson
09267cc152 /etc/rc.subr: add support for kld sysctl variables
For kernel modules loaded by scripts in /etc/rc.d and
/usr/local/etc/rc.d, if there is a file in /etc/sysctl.conf.d named <kld
name>.conf, then this will be loaded using the sysctl(8) utility. For
instance, sysctl variable changes for the pf kernel module would be
placed in the file /etc/sysctl.conf.d/pf.conf.

PR:		272129
Reviewed by:	imp freebsd_igalic.co
MFC after:	2 weeks
Differential Revision: https://reviews.freebsd.org/D40886
2023-07-14 10:49:47 +01:00
Dmitry Chagin
c3f58005d9 signal: Remove gsignal references from manuals
Reported by:		Mina Galić, mhorne
Reviewed by:		Mina Galić, mhorne
Differential Revision:	https://reviews.freebsd.org/D41020
MFC after:		1 week
2023-07-14 00:15:47 +03:00
Konstantin Belousov
7cd7a32041 Document fdescfs mount option "rdlnk"
Reviewed by:	dchagin
Sponsored by:	The FreeBSD Foundation
MFC after:	1 week
Differential revision:	https://reviews.freebsd.org/D40969
2023-07-13 04:14:29 +03:00
Kristof Provost
df56c8069a pf: fix error descriptions in the man page
PR:		272459
Submitted by:	alex@inferiorhumanorgans.com
MFC after:	1 week
2023-07-12 13:17:14 +02:00
Kristof Provost
64b30b7aeb pf: fix pfi_kif definition in the man page
PR:		272455
Submitted by:	alex@inferiorhumanorgans.com
MFC after:	1 week
2023-07-12 11:43:43 +02:00
Mitchell Horne
89240e0ab6 hwpmc(4): update DEBUGGING section details
The examples I wrote previously do not work. We parse the flags using
explicit names, not the shortened flag suffix. Fix the list of major
flags, and add a compact list of minor flags. Fix the examples, and
tweak some wording for clarity.

Reviewed by:	jkoshy, emaste
MFC after:	1 week
Sponsored by:	The FreeBSD Foundation
Fixes:		5fc97cc325 ("hwpmc(4): document debugging options")
Differential Revision:	https://reviews.freebsd.org/D40913
2023-07-09 16:03:54 -03:00
Jessica Clarke
1840dc06e1 bsd.compat.mk: Remove obsolete COMPAT_32BIT now it's unused
See commit 8fad2cda93 ("bsd.compat.mk: Provide new CPP and sub-make
variables") for the context behind this change.

Reviewed by:	emaste, brooks, jhb
Differential Revision:	https://reviews.freebsd.org/D40932
2023-07-09 18:50:03 +01:00
Jessica Clarke
8fad2cda93 bsd.compat.mk: Provide new CPP and sub-make variables
Currently the only way to detect for a libcompat build is to consult
whether COMPAT_32BIT is defined (or equivalent, for downstreams with
other libcompats or past releases with libsoft as COMPAT_SOFTFP). There
are two issues with this:

1. COMPAT_32BIT is a new naming scheme that doesn't match the libcompat
   name, which is unnecessary deviation.
2. When multiple libcompats exist, everywhere that needs to detect a
   libcompat must check each variable in turn, despite the fact that it
   normally just wants to know if this is a libcompat build and perhaps
   what ${LIBCOMPAT} and/or ${libcompat} are for it.

As a result, far too many places in the tree need to know about the set
of possible libcompats.

Instead, introduce two new CPP and sub-make variables, COMPAT_LIBCOMPAT
and COMPAT_libcompat, which give the values for ${LIBCOMPAT} and
${libcompat} respectively, so that uses can be made parameterised. For
when code really does need to know the specific libcompat, Makefiles can
perform a string comparison, but the C preprocessor cannot, so introduce
an additional CPP-only COMPAT_LIB${LIBCOMPAT} which is intended to
replace the inconsistently-named COMPAT_32BIT (which will be removed in
future). Uses of this new variable should still be kept to a minimum,
however, given the code duplication needed for new libcompats.

Reviewed by:	emaste, brooks, jhb
Differential Revision:	https://reviews.freebsd.org/D40922
2023-07-09 18:47:42 +01:00
Christian Brueffer
acb3e99faa superio.4: mdoc cleanup 2023-07-09 12:51:16 +02:00
Christian Brueffer
d32210ef16 ath10k.4: mdoc cleanup 2023-07-09 12:25:57 +02:00
Mateusz Guzik
70c00442d2 vfs: clean up unused NDF_NO* macros
The manpage is touched up to not mention them, but still desperately
needs help.
2023-07-08 19:45:46 +00:00
Jens Schweikhardt
5fee12e189 Correct grammo. This one has spread. Should be the last. 2023-07-08 14:35:41 +02:00
Jens Schweikhardt
2c2a04984c Correct a grammo. 2023-07-08 11:55:54 +02:00
Graham Perrin
666c54d12e hwpmc(4): instead of manual edition, use sysrc(8)
Exemplifying safe use of sysrc(8) has become commonplace in
documentation such as the FreeBSD Handbook. Encourage its use.

Consistency: 'the driver' (not 'this driver').

Co-authored-by: Mina Galić <me+github@igalic.co>
Reviewed-by:    imp, Mina Galić <me+github@igalic.co>
Approved by:    imp
MFC after:      3 days
Pull-request:   https://github.com/freebsd/freebsd-src/pull/785
2023-07-08 07:30:52 +01:00
Joerg Pulz
233ab94cfd ispfw(4): Reword to be more specific
Make clear what "included" means, as suggested by imp@

PR: 271062
Reviewed by: imp, mav
Sponsored by: Technical University of Munich
Pull Request: https://github.com/freebsd/freebsd-src/pull/726
2023-07-07 15:45:30 -06:00
Joerg Pulz
0c5f23d2f7 ispfw(4): Add BUGS section with note about bundled firmware
Note that only firmware for 24xx and 25xx based HBAs is bundled with ispfw(4).
Those get the bundled firmware loaded into the HBAs memory and executed.
All other HBAs will use the firmware from flash.

PR: 271062
Reviewed by: imp, mav
Sponsored by: Technical University of Munich
Pull Request: https://github.com/freebsd/freebsd-src/pull/726
2023-07-07 15:45:29 -06:00
Joerg Pulz
2b4ccfbbc6 isp(4): Document support for new devices
Add 28xx based HBAs to manpage.

PR: 271062
Reviewed by: imp, mav
Sponsored by: Technical University of Munich
Pull Request: https://github.com/freebsd/freebsd-src/pull/726
2023-07-07 15:45:29 -06:00
Jessica Clarke
aa8567656e bsd.compat.mk: Fix indentation for alignment
Fixes:	91d7edd549 ("Generalise libcompat to be a list rather than a single option")
2023-07-07 20:17:19 +01:00
Konstantin Belousov
97f14168f2 src.conf.5: regen 2023-07-07 04:45:34 +03:00
Greg Becker
642cd51102 libthr: Add src.conf variable WITHOUT_PTHREADS_ASSERTIONS
This patch fixes a bug which prevents building libthr without
_PTHREADS_INVARIANTS defined. The default remains to build libthr
with -D_PTHREADS_INVARIANTS. However, with this patch, if one builds
libthr with WITHOUT_PTHREADS_ASSERTIONS=true then the latency to
acquire+release a default pthread mutex is reduced by roughly 5%, and a
robust mutex by roughly 18% (as measured by a simple synthetic test on a
Xeon E5-2697a based machine).

Reviewed by:	jhb, kib, mjg
MFC after:	1 week
Differential revision:	https://reviews.freebsd.org/D40900
2023-07-07 04:45:09 +03:00
Mitchell Horne
5e7308a7bc hier(7): remove entry for non-existent /usr/compat
This is historical (?), but today /compat is the default according to
linux(4). The only remaining reference to /usr/compat in the src tree is
under tools/test/stress2.

Add a next-level entry for /compat/linux.

PR:		261349
Reviewed by:	grahamperrin, karels, dchagin
MFC after:	3 days
Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D40876
2023-07-06 11:26:21 -03:00
John Baldwin
884eaacd24 ddb: Rework macros to make it easier to add new command tables.
- Add new DB_DEFINE_TABLE and DB_DECLARE_TABLE macros to define new
  command tables.  DB_DECLARE_TABLE is intended for use in headers
  similar to MALLOC_DECLARE and SYSCTL_DECL.

  DB_DEFINE_TABLE takes three arguments, the name of the parent table,
  the command name, and the name of the table itself, e.g.
  DB_DEFINE_TABLE(show, foo, show_foo) defines a new "show foo" table.

- DB_TABLE_COMMAND, DB_TABLE_COMMAND_FLAGS, DB_TABLE_ALIAS, and
  DB_ALIAS_FLAGS allow new commands and aliases to be defined.  These
  are similar to the existing DB_COMMAND, etc. except that they take
  an initial argument giving the name of the parent table, e.g.:

  DB_TABLE_COMMAND(show_foo, bar, db_show_foo_bar)

  defines a new "show foo bar" command.

This provides a cleaner interface than the ad-hoc use of internal
macros like _DB_SET that was required previously (e.g. in cxgbe(4)).

This retires DB_FUNC macro as well as the internal _DB_FUNC macro.

Reviewed by:	melifaro, kib, markj
Differential Revision:	https://reviews.freebsd.org/D40819
2023-07-05 16:02:01 -07:00
Baptiste Daroussin
3743f3d020 pci_vendors: update to 2023-06-19 2023-07-05 08:31:37 +02:00
Michael Tuexen
2176c9ab71 dtrace: improve siftr probe
Improve consistency of the field names with tcpsinfo_t:
* Use mss instead of max_seg_size.
* Use lport and rport instead of tcp_localport and tcp_foreignport.

Use t_flags instead of flags to improve consistency with t_flags2.

Add laddr and raddr, since the addresses were missing when compared
to the output of siftr.

Reviewed by:		cc
Sponsored by:		Netflix, Inc.
Differential Revision:	https://reviews.freebsd.org/D40834
2023-07-02 03:08:51 +02:00
Stéphane Rochoy
350b7c3570 superio+ncthwm: Add hardware monitoring support
Add support for the following chips:
- Nuvoton NCT6779D
- Nuvoton NCT6796D-E

Reviewed by: imp
Pull Request: https://github.com/freebsd/freebsd-src/pull/719
2023-07-01 11:19:53 -06:00
Stéphane Rochoy
8e6ea10c31 superio+nctgpio: Add support for new (weird) chips
Add support for the following chips:
- Nuvoton NCT5585D
- Nuvoton NCT6796D-E
- Nuvoton NCT6779
- Nuvoton NCT6116D
- and Winbond 83627DHG

Reviewed by: imp
Pull Request: https://github.com/freebsd/freebsd-src/pull/719
2023-07-01 11:19:52 -06:00
Stéphane Rochoy
c94b4d460e sysctl: Document formats for uint8_t and uint16_t in sysctl(9)
Was missing from c3220d0b6d.

Reviewed by: imp
Pull Request: https://github.com/freebsd/freebsd-src/pull/719
2023-07-01 11:19:50 -06:00
Stéphane Rochoy
93f899bed5 nctgpio(4): Document supported Nuvoton chips
Reviewed by: imp
Pull Request: https://github.com/freebsd/freebsd-src/pull/719
2023-07-01 11:19:48 -06:00
Stéphane Rochoy
32c3d315ed superio(4): Document supported Nuvoton and Winbond chips
Reviewed by: imp
Pull Request: https://github.com/freebsd/freebsd-src/pull/719
2023-07-01 11:19:48 -06:00
Michael Tuexen
f85b82daf1 dtrace: third update to the siftr probe
This adds the changes corresponding to
https://cgit.freebsd.org/src/commit/?id=60167184abd54ca12c6bf7ab60f2a08b41342f84
to the siftr probe.
This concludes the series up updates.

Reviewed by:		rscheff
Sponsored by:		Netflix, Inc.
Differential Revision:	https://reviews.freebsd.org/D40825
2023-07-01 09:30:34 +02:00
Michael Tuexen
643d067119 dtrace: another update of the siftr probe
This adds the changes corresponding to
https://cgit.freebsd.org/src/commit/?id=d090464ecd4af5cd400ef5cbbfe8409d019eac34
to the siftr probe.

Reviewed by:		rscheff
Sponsored by:		Netflix, Inc.
Differential Revision:	https://reviews.freebsd.org/D40824
2023-07-01 02:45:16 +02:00
Michael Tuexen
cade9a8e37 dtrace: update siftr probe
This adds the changes corresponding to
https://cgit.freebsd.org/src/commit/?id=1241e8e7aed5d709a6cf62024e9ae750981c03ae
to the siftr probe.

Reviewed by:		rscheff
Sponsored by:		Netflix, Inc.
Differential Revision:	https://reviews.freebsd.org/D40823
2023-07-01 02:26:52 +02:00
Michael Tuexen
0631830a7a siftr: document siftr probe to man page of the tcp provider
This man page documents what is currently implemented in siftr.d.
It doesn't work right now in head, but in stable/13. Follow-up
commits will fix it for head.

Reviewed by:		cc, pauamma_gundo.com
MFC after:		3 days
Sponsored by:		Netflix, Inc.
Differential Revision:	https://reviews.freebsd.org/D40809
2023-07-01 00:18:15 +02:00
Simon J. Gerraty
84c84ae15b BOOT_MACHINE_DIR should be stand not boot
Reviewed by:	stevek
2023-06-29 12:02:27 -07:00
Mitchell Horne
529f11385c tcp(4): fix a misnomer
This is almost certainly not the meaning of PCB used here.

Reviewed by:	markj
MFC after:	3 days
Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D40786
2023-06-29 15:25:54 -03:00
Mitchell Horne
651d1efd96 hier(7): adjust overlays/ subdirectory
Device tree overlays are installed in /boot/dtb/overlays by default.
Adjust the comment to mention fdt_overlays and loader.conf, but do not
repeat what is said in the parent directory's description.

PR:		261349
Reviewed by:	grahamperrin, kevans
MFC after:	3 days
Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D40785
2023-06-29 13:55:17 -03:00
Michael Tuexen
81b4bf0895 man: improve man pages for dtrace_sctp and dtrace_tcp
Reviewed by:		manpages
MFC after:		3 days
Sponsored by:		Netflix, Inc.
Differential Revision:	https://reviews.freebsd.org/D40796
2023-06-29 14:59:51 +02:00
John Baldwin
d036adc4e9 bsd.sys.mk: Re-enable -Wunused-but-set-variable for clang 13+.
Reviewed by:	dim, emaste
Differential Revision:	https://reviews.freebsd.org/D40674
2023-06-28 12:27:43 -07:00
John Baldwin
39240ddf85 bsd.sys.mk: Stop muting -Wunused-but-set-variable for GCC.
Reviewed by:	emaste
Differential Revision:	https://reviews.freebsd.org/D40662
2023-06-28 11:13:58 -07:00
Mitchell Horne
acdf666147 hier(7): tweak /media description
It comes as an empty directory by default. While here, use a serial
(Oxford) comma, per the FDP Primer.

PR:		261349
Reported by:	karels
Reviewed by:	grahamperrin, karels
Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D40774
2023-06-28 13:22:30 -03:00
Jessica Clarke
91d7edd549 Generalise libcompat to be a list rather than a single option
Whilst the kernel can support any number of COMPAT_FOO, world can only
build a single libfoo. Upstream this isn't such an issue, since the only
option is lib32 anyway, but downstreams, such as CheriBSD, may wish to
support multiple at the same time. Thus, adjust the top-level Makefiles
to turn _LIBCOMPAT into a _LIBCOMPATS list that gets iterated over, and
adjust bsd.compat.mk to support this use-case.

For the normal NEED_COMPAT/WANT_COMPAT case, LIBCOMPATFOO remain set and
refer to the requested compat's, preserving the current interface. For
the top-level Makefiles those variables are no longer set (since there
is no longer "the" compat) and only the per-compat ones are available.

Reviewed by:	brooks, jhb, imp
Differential Revision:	https://reviews.freebsd.org/D40571
2023-06-28 00:10:49 +01:00
Gabriele Laganà
d3a83456e1 Add vendor id for Quectel USB modem and align with quectel marketing names.
Reviewed by: imp
Pull Request: https://github.com/freebsd/freebsd-src/pull/750
2023-06-27 16:35:20 -06:00
Graham Perrin
b374a3921d hier(7): fix inline markup for a variable
I mistakenly preceded macro  Va  with macro  It  in
8ff26f2cb5

https://bugs.freebsd.org/261349

PR:                      261349
Approved by:             emaste, imp, mhorne
Fixes: 6469f9c hier(7): improvement, modernisation
2023-06-27 20:22:32 +01:00
Ed Maste
b2dcde7e9e Assemble .s to .o using cc, not as
As of commit fd71da37d4 we no longer have an `as` in the default
toolchain.  Although we do not make use of this rule in the base system
some ports or downstream projects might.  Use `cc -x assembler` instead
of as.

Reviewed by:	arichardson
Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D35859
2023-06-25 22:03:19 -04:00
Piotr Kubaj
5581cf903f share/mk/bsd.cpu.mk: drop -mno-powerpc64
Clang doesn't have -mno-powerpc64.

Differential revision:	https://reviews.freebsd.org/D40589
Approved by:	jhibbits
2023-06-24 22:01:47 +02:00
Brooks Davis
b95d2237af le(4): deprecate and mark for removal before 15.0
We kept le(4) in the pre-12.0 purge because it was needed for Qemu/MIPS
(virtio networking didn't work) but the MIPS port has been removed.

Reviewed by:	emaste
MFC after:	3 days
Differential Revision:	https://reviews.freebsd.org/D40683
2023-06-22 00:52:12 +01:00
Michael Tuexen
133b132bc1 sctp: fix man page for socket option controlling delayed acks
The SCTP_DELAYED_ACK_TIME socket option was replaced by the
SCTP_DELAYED_SACK in the socket API specification in
draft-ietf-tsvwg-sctpsocket-14.
The code was updated in r170056, but the man page was not.

PR:		272124
MFC after:	3 days
2023-06-21 09:18:05 +02:00
Colin Percival
824b64a2f1 Warn about nonfunctional WITHOUT options
Print a warning if we try to WITHOUT_ an option which is marked as
"required" (and forced on).

Suggested by:	emaste, imp
Reviewed by:	emaste, imp
Differential Revision:	https://reviews.freebsd.org/D40613
2023-06-20 13:58:58 -07:00
Ed Maste
4bc148c30e bfe: add unmaintained / deprecation notice
The bfe (Broadcom BCM4401 10/100 Ethernet) driver has known bugs and no
active maintenance.  There have been no changes other than sweeping tree
changes, typo corrections etc. since 2008 a far as I can tell.  Add a
note in the man page so that users expectations are correctly set, and
indicate that it may be removed in the future.

I did not add a gone_in() call in the driver itself as there is no
specific target version for removal, and this driver has evidence of
recent use (dmesg, PRs).

PR:		201947, 213751
Reviewed by:	brooks
Sponsored by:	The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D40625
2023-06-20 16:42:34 -04:00
John Baldwin
ad79b018dc bsd.sys.mk: Add NO_WUNUSED_BUT_SET_VARIABLE helper variable.
This is already present in sys/conf/kern.mk and can be used to
selectively disable -Wunused-but-set-variable.

Reviewed by:	emaste
Differential Revision:	https://reviews.freebsd.org/D40663
2023-06-20 12:36:15 -07:00
Ed Maste
2e65cfd3ad Restore dummy WITHOUT_{CAPSICUM,CASPER} descriptions
The makeman CI job ensures that all options have description files.

Bring the CI job back to green by adding back WITHOUT_CAPSICUM and
WITHOUT_CASPER description files (that now state the assoicated options
have no effect).

Fixes: c24c117b96 ("Remove WITHOUT_{CAPSICUM,CASPER} options")
Sponsored by:	The FreeBSD Foundation
2023-06-19 23:20:49 -04:00
Colin Percival
c24c117b96 Remove WITHOUT_{CAPSICUM,CASPER} options
At this point CAPSICUM and CASPER are merely forced on via the newly
added __REQUIRED_OPTIONS list; after stable/14 branches I'll sweep
the tree for MK_{CAPSICUM,CASPER}.

This change will not be MFCed.

Discussed on:	freebsd-arch
Differential Revision:	https://reviews.freebsd.org/D40592
2023-06-19 17:23:09 -07:00
Colin Percival
b908f6c45e bsd.mkopt.mk: Add REQUIRED_OPTIONS list
Options on this list will be forced to 'yes'.  This is intended for use
as a transitional measure when an option is ceasing to be optional,
before all of the associated make logic is removed.

Differential Revision:	https://reviews.freebsd.org/D40590
2023-06-19 17:23:09 -07:00
Maxim Konovalov
ab3e6234ab examples/kld/syscall: unbreak compilation
modfind(9)/modstat(9) need sys/param.h.
2023-06-18 05:52:01 +00:00
Piotr Kubaj
2c7279bae7 share/mk/bsd.cpu.mk: handle the default case when CPUTYPE is not specified on powerpc*
Approved by:	imp
Differential Revision: https://reviews.freebsd.org/D40576
2023-06-16 21:15:03 +02:00
Mitchell Horne
5fc97cc325 hwpmc(4): document debugging options
The debug options for hwpmc are not documented in detail anywhere, and
setting it up was error-prone the first time I had to figure it out (and
each time I've had to remember it). Add some explanation of the required
options and describe the kern.hwpmc.debugflags sysctl format.

Reviewed by:	emaste
MFC after:	1 week
Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D40545
2023-06-16 13:44:54 -03:00
Mitchell Horne
3977781b98 pmc: clarify and strengthen statements about API/ABI
- Make it clear that applications are not only encouraged to use the
  pmc(3) library, but use of the hwpmc(4) interface directly is a
  use-case we do not support
- Move the COMPATIBILITY section above PROGRAMMING API in hwpmc(4)
- Drop statements about the driver and library being "under development"

Reviewed by:	jkoshy, emaste
MFC after:	1 week
Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D40543
2023-06-16 13:44:54 -03:00
Mitchell Horne
0a1a48148c hwpmc(4): more detailed SYNOPSYS
Include some boilerplate similar to other section 4 man pages,
describing how to load the module at boot-time or include it in the
kernel.

Reviewed by:	jkoshy, emaste
MFC after:	1 week
Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D40542
2023-06-16 13:44:54 -03:00
Mitchell Horne
0a0c599ab9 hwpmc(4): remove paragraph about Pentium Pro handling
Support for these CPUs was removed in 2018 (e92a1350b5).

Reviewed by:	jkoshy, emaste
MFC after:	1 week
Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D40541
2023-06-16 13:44:53 -03:00
Ka Ho Ng
9f135336f5 SYSCALL_MODULE(9): fix references to modfind(2) and modstat(2)
Sponsored by:	Juniper Networks, Inc.
Reviewed by:	delphij
MFC after:	1 week
2023-06-15 15:39:53 -04:00
Brooks Davis
4591322980 oce(4): deprecate
The Emulex OneConnect NIC driver hasn't seen any commits other than ioctl
bug fixes (some severe) and sweeping commits since 2016.  There is no
indication of new parts since 2014 or earlier.  As such, deprecate the
driver with the aim of removing it prior to FreeBSD 15.

Reviewed by:	emaste
Differential Revision:	https://reviews.freebsd.org/D40531
2023-06-15 17:35:12 +01:00
Warner Losh
e27c618e20 mpi3mr: Add bare-bones manual
The mpi3mr driver is written by Broadcom for the 9600 Series 24G PCIe
4.0 Tri-Mode RAID Adapters and eHBAs boards. This is 3rd-Generation
Tri-Mode x8 and x16 NVMe/SAS/SATA (although Broadcom/Avago did muddy the
waters by having multiple 2nd generations cards and referring to them
inconsistently).

Sponsored by:		Netflix
2023-06-15 09:03:41 -06:00
Dag-Erling Smørgrav
21850106fd libtacplus: Allow additional AV pairs to be configured.
* Replace hand-rolled input tokenizer with openpam_readlinev() which supports line continuations and has better quoting and escaping.
* Simplify string handling by merging struct clnt_str and struct srvr_str into just struct tac_str.
* Each server entry in the configuration file can now have up to 255 AV pairs which will be appended to the ones returned by the server in response to a successful authorization request.

This allows nss_tacplus(8) to be used with servers which do not provide identity information beyond confirming the existence of the user.

This adds a dependency on libpam, however libtacplus is currently only used by pam_tacplus(8) (which is already always used with libpam) and the very recently added nss_tacplus(8) (which is extremely niche).  In the longer term it might be a good idea to split this out into a separate library.

MFC after:	1 week
Sponsored by:	Klara, Inc.
Reviewed by:	pauamma_gundo.com, markj
Differential Revision:	https://reviews.freebsd.org/D40285
Relnotes:	yes
2023-06-13 16:08:08 +00:00
Mitchell Horne
0449bc249b mac(9): update SEE ALSO
Rather than maintaining an incomplete list of MAC modules references,
just reference mac(4), where such a list can be found.

Reviewed by:	Mina Galić <freebsd@igalic.co>
Reviewed by:	Pau Amma <pauamma@gundo.com>
MFC after:	3 days
Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D40485
2023-06-12 17:31:09 -03:00
Mitchell Horne
e2cb720101 mac(4): update the references to MAC modules
Add entries for mac_ntpd(4) and mac_priority(4) to the table of MAC
modules.

Drop the entry for mac_none(4) from the list, but retain the
cross-reference in SEE ALSO. This module has no functional impact and is
of minimal interest to users. Add a new cross-reference to the similar
mac_stub(4), limited to SEE ALSO for the same reasoning.

Reviewed by:	Pau Amma <pauamma@gundo.com>
MFC after:	3 days
Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D40483
2023-06-12 17:31:09 -03:00
Ed Maste
1dd6f95bb9 wg(4): add Matt Macy back to AUTHORS section
Matt did the initial in-kernel FreeBSD driver port.  The driver would
not exist without that work and some of it remains, even if the driver
was largely rewritten and reworked before being added back to the tree.

Authors remain in alphabetical order by surname.

Sponsored by:	The FreeBSD Foundation
2023-06-12 14:36:34 -04:00
Krzysztof Zdziarski
266b0663c5 qat: Add Intel® 4xxx Series VF driver support
Overview:
Intel(R) QuickAssist Technology (Intel(R) QAT) provides hardware
acceleration for offloading security, authentication and compression
services from the CPU, thus significantly increasing the performance and
efficiency of standard platform solutions.

This commit introduces:
- Intel® 4xxx Series VF driver support.
- Device configurability via sysctls.
- UIO support for Intel® 4xxx Series devices.

Patch co-authored by: Krzysztof Zdziarski <krzysztofx.zdziarski@intel.com>
Patch co-authored by: Michal Gulbicki <michalx.gulbicki@intel.com>
Patch co-authored by: Julian Grajkowski <julianx.grajkowski@intel.com>
Patch co-authored by: Piotr Kasierski <piotrx.kasierski@intel.com>
Patch co-authored by: Lukasz Kolodzinski <lukaszx.kolodzinski@intel.com>
Patch co-authored by: Karol Grzadziel <karolx.grzadziel@intel.com>

Sponsored by:	Intel Corporation
Differential Revision: https://reviews.freebsd.org/D39850
2023-06-12 13:44:01 -04:00
Graham Perrin
5ca7f02946 hier(7): typo (critial)
https://bugs.freebsd.org/261349

PR:                      261349
Reported by:             Mike Karels <mike@karels.net>
Fixes: 6469f9c595 hier(7): improvement, modernisation
2023-06-10 14:08:35 +01:00
Graham Perrin
6469f9c595 hier(7): improvement, modernisation
Consistent use of lowercase, spacing between sections, etc.

Cease mentioning floppy disks.

De-list /usr/share/misc/fonts/, which has been ??? (without a
description) for twenty-seven years.

Change zpool to pool. (zpool is a command.)

Uppercase PPP for Point-to-Point Protocol.

A few other changes to wording, including avoidance of the phrase
pre-fab.

Update the descriptions of:

* /tmp/
* /usr/share/misc/
* /var/preserve/
* /var/tmp/
* /var/tmp/vi.recover/.

Refer to vi(1) instead of ex(1).

https://bugs.freebsd.org/261349

PR:                      261349
Reviewed by:             mhorne
Approved by:             mhorne
Pull request:            https://github.com/freebsd/freebsd-src/pull/763
2023-06-10 09:41:35 +01:00
Jessica Clarke
7a706aad83 hwpmc: Update manpage date
Fixes:	8e63e787ab ("pmc: Initialise and check the pm_flags field for CONFIGURELOG")
2023-06-07 15:24:29 +01:00
Richard Scheffenegger
43b117f88f tcp: make the maximum number of retransmissions tunable per VNET
Both Windows (TcpMaxDataRetransmissions) and Linux (tcp_retries2)
allow to restrict the maximum number of consecutive timer based
retransmissions. Add that same capability on a per-VNet basis to
FreeBSD.

Reviewed By:		cc, tuexen, #transport
Sponsored by:		NetApp, Inc.
Differential Revision:	https://reviews.freebsd.org/D40424
2023-06-06 22:58:54 +02:00
Xin LI
4d779448ad gve: Fix build on i386 and enable LINT builds.
Reviewed-by:	imp
Differential Revision: https://reviews.freebsd.org/D40419
2023-06-04 16:35:00 -07:00
Shailend Chand
54dfc97b0b Add gve, the driver for Google Virtual NIC (gVNIC)
gVNIC is a virtual network interface designed specifically for
Google Compute Engine (GCE). It is required to support per-VM Tier_1
networking performance, and for using certain VM shapes on GCE.

The NIC supports TSO, Rx and Tx checksum offloads, and RSS.
It does not currently do hardware LRO, and thus the software-LRO
in the host is used instead. It also supports jumbo frames.

For each queue, the driver negotiates a set of pages with the NIC to
serve as a fixed bounce buffer, this precludes the use of iflib.

Reviewed-by: 		markj
MFC-after:		2 weeks
Differential Revision: https://reviews.freebsd.org/D39873
2023-06-02 14:31:54 -07:00
Mina Galić
0981275c75 rc(8): document how to reload rc's configuration
The fact that rc(8) only reads its configuration once is in the man
page, but how to trigger a reload is only in the code.

Discovered while trying to make cloud-init disable and stop syslogd.

Thanks to RhodiumToad for providing the words.

Reviewed by:           debdrup, grahamperrin
Approved by:           grahamperrin, imp
MFC after:             1 week
Sponsored by:          The FreeBSD Foundation
Differential revision: https://reviews.freebsd.org/D40329
2023-06-02 19:27:37 +01:00
Mark Johnston
9b1d87286c ossl: Add a fallback AES-GCM implementation using AES-NI
This lets one use ossl(4) for AES-GCM operations on contemporary amd64
platforms.  A kernel benchmark indicates that this gives roughly
equivalent throughput to aesni(4) for various buffer sizes.

Bulk processing is done in aesni-gcm-x86_64.S, the rest is handled in a
C wrapper ported from OpenSSL's gcm128.c.

Sponsored by:	Stormshield
Sponsored by:	Klara, Inc.
Reviewed by:	jhb
MFC after:	3 months
Differential Revision:	https://reviews.freebsd.org/D39967
2023-06-02 12:17:11 -04:00
Olivier Certner
d0b0bc37a3 ports(7): '*-list' targets: Add/fix doc on whether they are recursive
Signed-off-by: Olivier Certner <olce.freebsd@certner.fr>
Reviewed-by: imp
Pull-request: https://github.com/freebsd/freebsd-src/pull/691
2023-06-01 20:38:16 -06:00
Jessica Clarke
8e63e787ab pmc: Initialise and check the pm_flags field for CONFIGURELOG
Whilst the former is not breaking, the latter is, and so this will be
followed by a bump to the pmc major version. This will allow the flags
to actually be usable in future, as otherwise we cannot distinguish
uninitialised stack junk from a deliberately-initialised value.

Reviewed by:	jhb, mhorne
Differential Revision:	https://reviews.freebsd.org/D40049
2023-05-31 00:15:24 +01:00
Graham Perrin
2071e54c22 hier(7): alphabetical order
Approved by:  mhorne
Pull request: https://github.com/freebsd/freebsd-src/pull/756
2023-05-30 20:34:18 +01:00
Baptiste Daroussin
153145efcd src.conf.5: regen after readd of NETLINK option 2023-05-30 13:36:43 +02:00
Baptiste Daroussin
cb1fc924d2 genl: add new command to list genetlink(4)
This commands list genetlink protocols and its operations and
capabilities

Name: nlctrl
	ID: 0x10, Version: 00, header size: 2, max attributes: 10
	supported operations:
	 - ID: 0x3, Capabilities: 0xe (can modify; can get/dump;
has policy)
	multicast groups:
	 - ID: 0x30, Name: notify
Name: carp
	ID: 0x11, Version: 00, header size: 2, max attributes: 2
	supported operations:
	 - ID: 0x1, Capabilities: 0xe (can modify; can get/dump;
has policy)
	 - ID: 0x2, Capabilities: 0xb (requires admin permission;
can modify; has policy)

Reviewed by:		melifaro
Differential Revision:	https://reviews.freebsd.org/D40330
2023-05-30 13:36:43 +02:00
Konstantin Belousov
ea95173dbb unr(9): document iterators
Reviewed by:	markj
Sponsored by:	The FreeBSD Foundation
MFC after:	1 week
Differential revision:	https://reviews.freebsd.org/D40089
2023-05-30 01:10:36 +03:00
Konstantin Belousov
f8c3708085 unr(9): document clean_unrhdr()
Reviewed by:	markj
Sponsored by:	The FreeBSD Foundation
MFC after:	1 week
Differential revision:	https://reviews.freebsd.org/D40089
2023-05-30 01:10:36 +03:00