Revision tags: release/14.0.0 |
|
#
95ee2897 |
| 16-Aug-2023 |
Warner Losh <imp@FreeBSD.org> |
sys: Remove $FreeBSD$: two-line .h pattern
Remove /^\s*\*\n \*\s+\$FreeBSD\$$\n/
|
Revision tags: release/13.2.0, release/12.4.0, release/13.1.0, release/12.3.0, release/13.0.0 |
|
#
78599c32 |
| 05-Dec-2020 |
Conrad Meyer <cem@FreeBSD.org> |
Add CFI start/end proc directives to arm64, i386, and ppc
Follow-up to r353959 and r368070: do the same for other architectures.
arm32 already seems to use its own .fnstart/.fnend directives, which
Add CFI start/end proc directives to arm64, i386, and ppc
Follow-up to r353959 and r368070: do the same for other architectures.
arm32 already seems to use its own .fnstart/.fnend directives, which appear to be ARM-specific variants of the same thing. Likewise, MIPS uses .frame directives.
Reviewed by: arichardson Differential Revision: https://reviews.freebsd.org/D27387
show more ...
|
Revision tags: release/12.2.0, release/11.4.0 |
|
#
4160ed6f |
| 04-Dec-2019 |
Justin Hibbits <jhibbits@FreeBSD.org> |
powerpc/booke: Fix 32-bit Book-E SMP AP bringup
r354266 changed the type of bp_kernload to vm_paddr_t in platform_mpc85xx.c, but not the variable itself in locore.S. This caused the AP to not come
powerpc/booke: Fix 32-bit Book-E SMP AP bringup
r354266 changed the type of bp_kernload to vm_paddr_t in platform_mpc85xx.c, but not the variable itself in locore.S. This caused the AP to not come up, due to overwriting the following variable (bp_virtaddr). Also, properly load bp_kernload into MAS3 and MAS7. Prior to r354266, we required loading into the low 4GB, but now we can load from anywhere in memory that ubldr can access.
show more ...
|
#
ab3f2a38 |
| 02-Nov-2019 |
Brandon Bergren <bdragon@FreeBSD.org> |
Add support for building Book-E kernels with clang/lld.
This involved several changes:
* Since lld does not like text relocations, replace SMP boot page text relocs in booke/locore.S with position-
Add support for building Book-E kernels with clang/lld.
This involved several changes:
* Since lld does not like text relocations, replace SMP boot page text relocs in booke/locore.S with position-independent math, and track the virtual base in the SMP boot page header.
* As some SPRs are interpreted differently on clang due to the way it handles platform-specific SPRs, switch m*dear and m*esr mnemonics out for regular m*spr. Add both forms of SPR_DEAR to spr.h so the correct encoding is selected.
* Change some hardcoded 32 bit things in the boot page to be pointer-sized, and fix alignment.
* Fix 64-bit build of booke/pmap.c when enabling pmap debugging.
Additionally, I took the opportunity to document how the SMP boot page works.
Approved by: jhibbits (mentor) Differential Revision: https://reviews.freebsd.org/D21999
show more ...
|
Revision tags: release/12.1.0 |
|
#
1cf56858 |
| 20-Oct-2019 |
Justin Hibbits <jhibbits@FreeBSD.org> |
powerpc/booke: Don't zero MAS8, it's unnecessary
MAS8 is hypervisor privileged, defining the logical partition (VM) to operate on for TLB accesses. It's already guaranteed to be cleared when bootin
powerpc/booke: Don't zero MAS8, it's unnecessary
MAS8 is hypervisor privileged, defining the logical partition (VM) to operate on for TLB accesses. It's already guaranteed to be cleared when booting bare metal (bootloader needs it zeroed to work), and we can't touch it from a guest. Assume that if/when we eventually port bhyve to PowerPC (and Book-E) the hypervisor module will take care of managing MAS8. This saves several (tens) of clocks on each TLB miss.
MFC after: 2 weeks
show more ...
|
#
8b3bc70a |
| 08-Oct-2019 |
Dimitry Andric <dim@FreeBSD.org> |
Merge ^/head r352764 through r353315.
|
#
69cea06f |
| 28-Sep-2019 |
Justin Hibbits <jhibbits@FreeBSD.org> |
powerpc/booke64: Align initial stack setting to match that of aim64's
Clang9/LLD9 appears to get quite confused with the instruction stream used to obtain the tmpstack pointer, almost as though it t
powerpc/booke64: Align initial stack setting to match that of aim64's
Clang9/LLD9 appears to get quite confused with the instruction stream used to obtain the tmpstack pointer, almost as though it thinks this is a C function, so tries to optimize it. Since the AIM64 method doesn't use the TOC to obtain the tmpstack, just follow that model, and lld won't get confused.
Reported by: bdragon MFC after: 2 weeks
show more ...
|
Revision tags: release/11.3.0 |
|
#
7648bc9f |
| 13-May-2019 |
Alan Somers <asomers@FreeBSD.org> |
MFHead @347527
Sponsored by: The FreeBSD Foundation
|
#
0af5d6f7 |
| 30-Apr-2019 |
Justin Hibbits <jhibbits@FreeBSD.org> |
powerpc: Stop pretending we run on e500v1 cores
Unconditional writing to MAS7, which doesn't exist on the e500v1 core, in a TLB miss handler has been in the code for several years now. Since this h
powerpc: Stop pretending we run on e500v1 cores
Unconditional writing to MAS7, which doesn't exist on the e500v1 core, in a TLB miss handler has been in the code for several years now. Since this has gone unnoticed for so long, it's easily concluded that e500v1 is not in use with FreeBSD. Simplify the code path a bit, by unconditionally zeroing MAS7 instead of calling a subroutine to do it.
show more ...
|
#
415e34c4 |
| 29-Mar-2019 |
Alan Somers <asomers@FreeBSD.org> |
MFHead@r345677
|
#
0499e9c6 |
| 29-Mar-2019 |
Justin Hibbits <jhibbits@FreeBSD.org> |
powerpc64: Use medium code model in asm files for TOC references
Summary: With a sufficiently large TOC, it's possible to index out of range, as the immediate load instructions only permit 16-bit in
powerpc64: Use medium code model in asm files for TOC references
Summary: With a sufficiently large TOC, it's possible to index out of range, as the immediate load instructions only permit 16-bit indices, allowing up to 64kB range (signed) from the base pointer. Allow +/- 2GB range, with the medium code model TOC accesses in asm.
Patch originally by Brandon Bergren. The issue appears to impact ELFv2 more than ELFv1.
Reviewed by: luporl Differential Revision: https://reviews.freebsd.org/D19708
show more ...
|
#
2aaf9152 |
| 18-Mar-2019 |
Alan Somers <asomers@FreeBSD.org> |
MFHead@r345275
|
#
b18a4cca |
| 05-Mar-2019 |
Enji Cooper <ngie@FreeBSD.org> |
MFhead@r344786
|
#
844fc3e9 |
| 04-Mar-2019 |
Dimitry Andric <dim@FreeBSD.org> |
Merge ^/head r344549 through r344775.
|
#
5b4c63b7 |
| 02-Mar-2019 |
Justin Hibbits <jhibbits@FreeBSD.org> |
powerpc/booke: Depessimize MAS register updates even more
Remove isyncs between MAS register updates in the TLB miss handler, since it's only needed before the TLB update instructions.
|
#
893405b4 |
| 11-Dec-2018 |
Dimitry Andric <dim@FreeBSD.org> |
Merge ^/head r341764 through r341812.
|
#
9d720d45 |
| 11-Dec-2018 |
Justin Hibbits <jhibbits@FreeBSD.org> |
powerpc/booke: Don't get and use the load offset for TOC on APs
The code was a near exact copy of the code in startup, but it doesn't need the complexity since the kernel is already relocated. With
powerpc/booke: Don't get and use the load offset for TOC on APs
The code was a near exact copy of the code in startup, but it doesn't need the complexity since the kernel is already relocated. With VM_MIN_KERNEL_ADDRESS as currently set to KERNBASE, this doesn't cause a problem, because it's a zero offset. However, when KERNBASE is changed to a physical load address, it then has a non-zero offset, and ends up with an invalid stack pointer, causing the AP to hang.
show more ...
|
#
67350cb5 |
| 09-Dec-2018 |
Dimitry Andric <dim@FreeBSD.org> |
Merge ^/head r340918 through r341763.
|
Revision tags: release/12.0.0 |
|
#
ea32838a |
| 28-Nov-2018 |
Justin Hibbits <jhibbits@FreeBSD.org> |
powerpc: Prepare Book-E kernels for KERNBASE != run base
Book-E kernels really run at VM_MIN_KERNEL_ADDRESS, which currently happens to be the same as KERNBASE. KERNBASE is the linked address, whic
powerpc: Prepare Book-E kernels for KERNBASE != run base
Book-E kernels really run at VM_MIN_KERNEL_ADDRESS, which currently happens to be the same as KERNBASE. KERNBASE is the linked address, which the loader also takes to be the physical load address. Treat KERNBASE as a physical address, not a virtual, and change virtual address references for KERNBASE to use something more appropriate.
show more ...
|
Revision tags: release/11.2.0 |
|
#
971b5e4d |
| 01-May-2018 |
Justin Hibbits <jhibbits@FreeBSD.org> |
Remove dead errata fixup code
This code caused more problems than it should have fixed (boot failures) on the machines I tested, so has been commented out for a while now. Remove it, and assume the
Remove dead errata fixup code
This code caused more problems than it should have fixed (boot failures) on the machines I tested, so has been commented out for a while now. Remove it, and assume the errata fixups were done by the bootloader where they belong.
show more ...
|
#
fc2a8776 |
| 20-Mar-2018 |
Ed Maste <emaste@FreeBSD.org> |
Rename assym.s to assym.inc
assym is only to be included by other .s files, and should never actually be assembled by itself.
Reviewed by: imp, bdrewery (earlier) Sponsored by: The FreeBSD Foundati
Rename assym.s to assym.inc
assym is only to be included by other .s files, and should never actually be assembled by itself.
Reviewed by: imp, bdrewery (earlier) Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D14180
show more ...
|
#
4fc74049 |
| 29-Dec-2017 |
Dimitry Andric <dim@FreeBSD.org> |
Merge ^/head r327169 through r327340.
|
#
caa7e52f |
| 27-Dec-2017 |
Eitan Adler <eadler@FreeBSD.org> |
kernel: Fix several typos and minor errors
- duplicate words - typos - references to old versions of FreeBSD
Reviewed by: imp, benno
|
#
c2c014f2 |
| 07-Nov-2017 |
Hans Petter Selasky <hselasky@FreeBSD.org> |
Merge ^/head r323559 through r325504.
|
#
f6e116ee |
| 04-Nov-2017 |
Enji Cooper <ngie@FreeBSD.org> |
MFhead@r325383
|