<feed xmlns='http://www.w3.org/2005/Atom'>
<title>src/sys/amd64/include, branch main</title>
<subtitle>FreeBSD source tree</subtitle>
<id>https://cgit-dev.freebsd.org/src/atom?h=main</id>
<link rel='self' href='https://cgit-dev.freebsd.org/src/atom?h=main'/>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/'/>
<updated>2026-03-20T22:48:42Z</updated>
<entry>
<title>amd64: add prototype for ia32_syscall()</title>
<updated>2026-03-20T22:48:42Z</updated>
<author>
<name>Konstantin Belousov</name>
<email>kib@FreeBSD.org</email>
</author>
<published>2026-02-26T00:55:59Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=23dc4850fbc9e7abfc54f0ce11f343e4677fd0fb'/>
<id>urn:sha1:23dc4850fbc9e7abfc54f0ce11f343e4677fd0fb</id>
<content type='text'>
Sponsored by:	The FreeBSD Foundation
MFC after:	1 week
</content>
</entry>
<entry>
<title>amd64: Make start_all_aps() static</title>
<updated>2026-03-12T04:24:59Z</updated>
<author>
<name>Zhenlei Huang</name>
<email>zlei@FreeBSD.org</email>
</author>
<published>2026-03-12T04:24:59Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=5f0ab9d9e965225c4af0c6ed481e01eee0ffab8f'/>
<id>urn:sha1:5f0ab9d9e965225c4af0c6ed481e01eee0ffab8f</id>
<content type='text'>
It is not used elsewhere since the change [1].

[1] ac3ede5371af x86/xen: remove PVHv1 code

MFC after:	1 week
Differential Revision:	https://reviews.freebsd.org/D55668
</content>
</entry>
<entry>
<title>hwpmc: Remove left over k7, xscale and p4 references pmc</title>
<updated>2026-03-07T15:17:43Z</updated>
<author>
<name>Ali Mashtizadeh</name>
<email>mashti@uwaterloo.ca</email>
</author>
<published>2026-02-20T21:05:41Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=e409e51f83963beaeb95eec82c5f43e44545d6b9'/>
<id>urn:sha1:e409e51f83963beaeb95eec82c5f43e44545d6b9</id>
<content type='text'>
Support for these processors was removed a few years ago, but a few
references remain that should be removed.

Sponsored by: Netflix
Reviewed by: imp
Pull Request: https://github.com/freebsd/freebsd-src/pull/2039
</content>
</entry>
<entry>
<title>hwpmc: Initial support for AMD IBS</title>
<updated>2026-02-27T21:22:16Z</updated>
<author>
<name>Ali Mashtizadeh</name>
<email>ali@mashtizadeh.com</email>
</author>
<published>2026-01-30T09:12:17Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=e51ef8ae490fc9f73191f33e7ad388c2511c454a'/>
<id>urn:sha1:e51ef8ae490fc9f73191f33e7ad388c2511c454a</id>
<content type='text'>
This patch adds support for AMD IBS.  It adds a new class of performance
counter that cotains two events: ibs-fetch and ibs-op events. Unlike
most existing sampled events, IBS events provide a number of values
containing extra information regarding the sample.  To support this we
use the existing callchain event, and introduce a new flag for multipart
payloads.  The first 8 bytes of the pc_sample contains a header that
defines up to four payloads.

Sponsored by: Netflix

Reviewed by: imp,mhorne
Pull Request: https://github.com/freebsd/freebsd-src/pull/2022
</content>
</entry>
<entry>
<title>i386,amd64: Explicitly set ECX=0 in do_cpuid() to be future-proof</title>
<updated>2026-02-20T15:26:20Z</updated>
<author>
<name>Aaron LI</name>
<email>aly@aaronly.me</email>
</author>
<published>2026-02-16T04:00:12Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=89d7b30c652c98ea12abc5eb9424464cbfb45953'/>
<id>urn:sha1:89d7b30c652c98ea12abc5eb9424464cbfb45953</id>
<content type='text'>
In principle, do_cpuid() should only be used for CPUID leaves without
sub-leaves.  Even accessing sub-leaf zero (ECX=0), one must use
cpuid_count(ax, 0) rather than cpuid(ax).

However, one might assume do_cpuid(ax) is equivalent to
cpuid_count(ax, 0), but the old do_cpuid() did not initialize ECX before
executing the CPUID instruction.  If ECX contained a non-zero value, the
instruction could return unexpected results, potentially leading to
subtle and hard-to-debug issues, especially in ported code.

To be future-proof and to help port code, adjust do_cpuid(ax) to be
cpuid_count(ax, 0) to explicitly set ECX=0.

It's believed that this change does not fix any real bugs in FreeBSD.

See also the DragonFly commit:
https://github.com/DragonFlyBSD/DragonFlyBSD/commit/0087a1d163488a57787a9a6431dd94070b1988d4

Signed-off-by: Aaron LI &lt;aly@aaronly.me&gt;
Reviewed by: kib
Pull Request: https://github.com/freebsd/freebsd-src/pull/2027
</content>
</entry>
<entry>
<title>amd64: add LASS support</title>
<updated>2026-02-11T16:04:30Z</updated>
<author>
<name>Konstantin Belousov</name>
<email>kib@FreeBSD.org</email>
</author>
<published>2024-10-24T02:12:25Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=89589b6d3fbac43eb7c6b3cdbdd6f077888b2142'/>
<id>urn:sha1:89589b6d3fbac43eb7c6b3cdbdd6f077888b2142</id>
<content type='text'>
In short, LASS enforces all kernel memory accesses to have bit 63 set to
1, and all userspace accesses have bit 63 set to 0.  Violations of these
rules cause #GP. There are natural loopholes, like SMAP with rflags.AC=1
allows kernel to access userspace.

Enablement is simple, we need to set CR4.LASS bit on all CPUs.  There
are complications when kernel has to execute code at low addresses, e.g.
for la57 trampoline, or calling into EFI RT.  The patch turns CR4.LASS
off around these regions.

LASS is officially documented in SDM, since at least rev. 085, October
2024.  Tested in simics.

Reviewed by:	markj
Sponsored by:	The FreeBSD Foundation
MFC after:	1 week
Differential revision:	https://reviews.freebsd.org/D55218
</content>
</entry>
<entry>
<title>Revert "pcb.h: mark struct pcb to be preserved"</title>
<updated>2026-02-09T18:55:57Z</updated>
<author>
<name>Konstantin Belousov</name>
<email>kib@FreeBSD.org</email>
</author>
<published>2026-02-09T18:25:17Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=24038d696e5030f622e87d6651e9dab1cd7fcb2a'/>
<id>urn:sha1:24038d696e5030f622e87d6651e9dab1cd7fcb2a</id>
<content type='text'>
kgdb only uses the marked fields from dumppcb for initial frame
reconstruction.

This reverts commit 8f23665fed2fbaf4481359b4d2fcdd7b9feb40e3.
</content>
</entry>
<entry>
<title>amd64: define and use STACKALIGN and REDZONE_SZ</title>
<updated>2026-02-09T17:57:00Z</updated>
<author>
<name>Konstantin Belousov</name>
<email>kib@FreeBSD.org</email>
</author>
<published>2026-02-07T00:36:44Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=97ce8f7d2b8eff42460f60e8c49d9849b58b6e81'/>
<id>urn:sha1:97ce8f7d2b8eff42460f60e8c49d9849b58b6e81</id>
<content type='text'>
Reviewed by:	brooks, emaste, jhb
Sponsored by:	The FreeBSD Foundation
MFC after:	1 week
Differential revision:	https://reviews.freebsd.org/D55151
</content>
</entry>
<entry>
<title>pcb.h: mark struct pcb to be preserved</title>
<updated>2026-02-09T04:17:16Z</updated>
<author>
<name>Minsoo Choo</name>
<email>minsoochoo0122@proton.me</email>
</author>
<published>2026-02-06T20:03:53Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=8f23665fed2fbaf4481359b4d2fcdd7b9feb40e3'/>
<id>urn:sha1:8f23665fed2fbaf4481359b4d2fcdd7b9feb40e3</id>
<content type='text'>
There are programs that depend on this structure (e.g. kernel debuggers)
that breaks when the ABI changes.

Signed-off-by:	Minsoo Choo &lt;minsoochoo0122@proton.me&gt;
Reviewed by:	kib
MFC after:	1 week
Differential Revision:	https://reviews.freebsd.org/D55149
</content>
</entry>
<entry>
<title>amd64: Fix sys/pcpu.h usage in vmm_host.h and md_var.h</title>
<updated>2026-01-24T01:29:45Z</updated>
<author>
<name>Hans Rosenfeld</name>
<email>rosenfeld@grumpf.hope-2000.org</email>
</author>
<published>2026-01-24T01:29:00Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=202e3109a9d6699cf78e83f9047cefeb07659767'/>
<id>urn:sha1:202e3109a9d6699cf78e83f9047cefeb07659767</id>
<content type='text'>
Include sys/pcpu in vmm_host.h as its structs and functions are used
there, and add a forward declaration of struct pcpu to md_var.h as it
is used in some function prototypes.

Reviewed by:	corvink, markj
MFC after:	1 week
Differential Revision:	https://reviews.freebsd.org/D51550
</content>
</entry>
</feed>
