This change allows for fine-grained capabilities per counter index. This
is particularly useful for AMD where subclasses are not exposed to the
general PMC code, but other architectures also have asymmetric behaviors
when it comes to specific counter indices.
A new PMC_OP_GETCAPS op is added to the hwpmc(4) ioctl interface.
Reviewed by: mhorne
Sponsored by: Netflix
Pull Request: https://github.com/freebsd/freebsd-src/pull/2058
This reverts commit 0bebad8d07.
It might be that all that's needed to fix this is to add
".include <bsd.compiler.mk>" to some Makefiles. I'll look into it soon
but for now let's unbreak HEAD.
Approved by: bnovkov (mentor)
Differential Revision: https://reviews.freebsd.org/D55869
Commit b946bedd09 ("Previous versions of bsd.own.mk [...]")
mentions that bsd.own.mk included bsd.compiler.mk as a temporary
workaround and was destined to be removed in FreeBSD 12. Do that now.
PR: 203540
Reviewed by: bnovkov, imp
Approved by: bnovkov (mentor)
Differential Revision: https://reviews.freebsd.org/D55867
Document the edns0, inet6, insecure1, insecure2, no-check-names,
and rotate options which are parsed by res_init(3) but were not
described in the resolver(5) man page.
MFC after: 1 week
Signed-off-by: Christos Longros <chris.longros@gmail.com>
Reviewed by: des
Differential Revision: https://reviews.freebsd.org/D55864
Add D-Link DGE-530(T) and Killer E2600 to the re(4) HARDWARE list.
Both are supported by the driver but were missing from the man page.
Also add cross-references between re(4) and rge(4) in SEE ALSO,
as both are Realtek NIC drivers.
Signed-off-by: Christos Longros <chris.longros@gmail.com>
Reviewed by: adrian
Differential Revision: https://reviews.freebsd.org/D55745
Refer to alloca() as a (builtin) function or macro, as it could be
defined as either depending on the compiler.
Paragraph about bug comes from Darwin's libc, and example added to
illustrate it.
Reviewed by: bnovkov
Approved by: bnovkov
MFC after: 3 days
Obtained from: https://github.com/apple-oss-distributions/libc (partially)
Sponsored by: Klara, Inc.
Differential Revision: https://reviews.freebsd.org/D55370
All supported stable branches use netlink(4) API to configure carp(4).
The deleted code also has kernel stack leak vulnerability, that requires
extra effort to fix.
Reviewed by: pouria, kp
Differential Revision: https://reviews.freebsd.org/D55804
ifuncs are now implemented for all architectures, so drop the caveat
statement.
Reviewed by: kib
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D55815
This exports bus information about bridges to userspace via the
less-privileged PCIOCGETCONF ioctl. Previously if userspace wished to
query this information, it had to use direct PCI config register
access which requires higher privilege.
Reviewed by: imp
Sponsored by: Chelsio Communications
Differential Revision: https://reviews.freebsd.org/D55771
This fixes an mdoc warning and also properly indents this list. While
here, update the quoted argument to be the longest tag in the list.
Also while here, correct the description of pd_numa_domain. NUMA
domains are a property of the device, not of the driver.
Reviewed by: ziaee, imp
Sponsored by: Chelsio Communications
Differential Revision: https://reviews.freebsd.org/D55770
This fixes recursed builds not having meta mode enabled for them which
disabled dependency and and command change tracking. We only want common
objects marked .NOMETA when recursing, not non-common objects. The
common code expects _PROGS_COMMON_SRCS does not contain the prog source
or else it will be marked .NOMETA.
Add comments explaining the intent and cases being covered.
Fixes: 4ea5e107b1 ("<bsd.progs.mk>: Allow using SRCS for common sources")
Differential Revision: https://reviews.freebsd.org/D55711
Reviewed by: vexeduxr, sjg
This is a nop as eventually these flags are passed to rman_reserve_resource
which unconditionally sets RF_ALLOCATED in the new flags for a region.
However, it's really a layering violation to use RF_ALLOCATED in relation
to struct resource objects outside of subr_rman.c as subr_rman.c uses
this flag to manage it's internal tracking of allocated vs free regions.
In addition, don't document this as a valid flag in the manual. I
think the intention here was that if a caller didn't want to pass
RF_ACTIVE or RF_SHAREABLE, they could pass RF_ALLOCATED instead of 0,
but given the layering violation, I think it's best to just pass 0
instead in that case.
NB: The bhnd bus uses RF_ALLOCATED (along with RF_ACTIVE) in a
separate API to manage resource regions that are not struct resource
objects (but a separate wrapper object). It would perhaps be cleaner
if the chipc_retain_region and chipc_release_region functions used
their own flag constants instead of reusing the rman(9) flags.
Reviewed by: imp, kib
Differential Revision: https://reviews.freebsd.org/D55683
The rule of allowing style changes when about half or more of a file (or
group of files), coupled with the advice of avoiding stylistic changes,
could be interpreted as forbidding most style changes, even in heavily
modified functions.
In order to rule out that interpretation and ease transition towards our
prescribed style:
1. Clarify that avoiding stylistic changes concerns only "standalone"
ones.
2. Actually encourage changing the style, and extend the cases where it
is explicitly allowed to do so to any single logical unit as little
as a function, keeping the existing "about half" of modified code as
a rule of thumb.
When point 2 above applies, encourage to commit pure style changes
separately, and to add style-only commits to '.git-blame-ignore-revs'.
Add a specific note ruling out "horizontal" style changes spanning
unrelated directories in the whole tree, which make the merge (MFC)
process more difficult.
While here, be slightly more stringent on new kernel code.
While here, regroup the paragraphs talking about style, and put them at
the end (before the recent C++ section).
While here, rephrase the requirement on third-party maintained code to
be slightly less stringent.
Reviewed by: jhb, imp
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D52885
GNU binutils 2.17.50 is the last GPLv2 version, and we retained support
in FreeBSD while it was part of the in-tree toolchain. The last parts
of binutils 2.17.50 were removed in commit 74e8d41e0a ("Retire
BINUTILS and BINUTILS_BOOTSTRAP options") and there is no longer a need
for the build infrastructure.
We retain build-id and ifunc in LINKER_FEATURES unconditionally for now,
as they may be tested by 3rd-party Makefiles. We can however stop
testing for them in the tree.
Reviewed by: imp
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D55674
Implement RFC 4861 Section 7.2.6 and RFC 9131, which is also
address one of the IPv6 deployment issues in RFC 9898 Section 3.9.
GRAND should be triggered by a change in link-layer address of interface
or by configuration of a new global ipv6 address after DAD completes.
Reviewed by: glebius
Differential Revision: https://reviews.freebsd.org/D55015
The LLVM_CXXFILT option was added when we used ELF Tool Chain tools by
default. ELF Tool Chain's c++filt failed to demangle some symbols, so
we added a special case to install LLVM's version and enabled it by
default.
The rest of the LLVM tools are now used by default, as of commit
9fa94e1c09 ("Turn on WITH_LLVM_CXXFILT by default"). Simplify the
build logic by removing a special case and just include llvm-cxxfilt
with the rest of the LLVM utilities.
Reviewed by: dim
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D55654
Prior to commit 6973701a00 ("1. Make the BSD version of cpio the
default [1]") GNU cpio was installed unconditionally. The BSD_CPIO
option was added when we introduced the BSD licensed, libarchive-based
cpio, to support installation of GNU cpio, libarchive cpio, or both.
GNU cpio was removed long ago and there is no longer a need for this
option. We can just install BSD cpio unconditionally.
Reviewed by: des
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D55467
We retired most obsolete 10 and 10/100 Ethernet NIC drivers in 2019 --
see commits following ebcf740a32 ("FCP-101: remove obsolete 10 and
10/100 Ethernet drivers.).
le(4) was retained with with the note "Emulated by QEMU, alternatives
don't yet work for mips64." MIPS has since been removed from the tree
and emulators and virtual machines offer many other, more suitable
devices.
Reviewed by: brooks
Relnotes: Yes
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D55516
virtio_pci uses two loader tunables that should be more visible.
This patch adds these loader tunables to sysctl and describes them
in the virtio(4) man page.
Reviewed by: imp (erlier version), tuexen
MFC after: 1 week
Differential Revision: https://reviews.freebsd.org/D55533
Remove incorrect advice. The first rule was no spaces padding pipes
when showing alternates. Almost universally we not do this, and third
party manuals do not either. The second was using Cm to mark up symbols.
This advice is in conflict with mdoc(7), and the extended documentation
on mdoc linked below, which is also linked at the bottom of mdoc(7).
Conflicting information in our docs is a natural result of documentation
proliferation. The most important thing we can do to reduce technical
debt in the documentation is reduce the amount of doc overlap. Excessive
technical debt and conflicting rules is a barrier to new contributors.
This type of work requires thorough expertise, is not glamorous at all,
and to add insult to injury, is socially unsafe. To get new contributors
to the docs project, we must deduplicate documentation.
We have the mdoc manual, examples/mdoc, style.mdoc, and the fdp chapter
on manual pages. With this many, they will inevitably come to contain
conflicting information, and people will learn not to read them or work
on them.
MFC after: 3 days
Ref: https://mandoc.bsd.lv/mdoc/style/commands.html
Differential Revision: https://reviews.freebsd.org/D55298
Previously, the mdoc linter warned against using Li as it was deprecated
upstream. However, upstream undeprecated it since last year. As usual
when it comes to style, the best thing to do is to follow the existing
style of the page. We have many manuals which prefer double quotes.
MFC after: 3 days
Citation: https://cvsweb.bsd.lv/mandoc/mdoc.7?rev=1.297
Differential Revision: https://reviews.freebsd.org/D55297
Update Mentor and Mentee Information to follow step
5 of the Committers Guide.
Reviewed by: osa, vvd (mentors)
Approved by: osa (mentor)
Differential Revision: https://reviews.freebsd.org/D55457
Add terse descriptions for the individual files that make up a port to
the FILES section of the ports reference manual.
MFC after: 3 days
Reviewed by: adamw
Differential Revision: https://reviews.freebsd.org/D55404
We added the option to build BSD diff3 in commit 2201f7c49f ("Build
BSD diff3 if GNU diff3 is disabled.") and made it the default in
4d5c434ed1 ("diff3: use bsd diff3 by default") after resolving
deficiencies relative to GNU diff3. Thus, we can now remove the GNU
diff3 build infrastructure and source.
Reviewed by: bapt, ziaee
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D46878
* Tag related directories with package=lp
* Make the examples/printing directory conditional on MK_LPR
* Make the hosts.lpd(5) manual page conditional on MK_LPR
MFC after: 3 days