In D44868#1022920, @emaste wrote:Do we need to add support to e.g. ELF Tool Chain readelf and nm to decode these values?
- Queries
- All Stories
- Search
- Advanced Search
- Transactions
- Transaction Logs
Feed Advanced Search
Advanced Search
Advanced Search
Yesterday
Yesterday
A flag. https://github.com/ARM-software/abi-aa/blob/main/aaelf64/aaelf64.rst#st_other-values lists it under Processor specific st_other flags.
Fri, Apr 19
Fri, Apr 19
- Fix a comment
- Remove debugging
andrew retitled D44869: rtld: Add support for arm64 variant pcs from rtld: Add suport for arm64 variant pcs to rtld: Add support for arm64 variant pcs.
Given it's a single instruction being written we could just ignore DIC & IDC, I expect the overhead would be less than a system call & this is an uncommon operation. We wouldn't even need to read ctr_el0 as the smallest cacheline size is the same as the instruction size.
Thu, Apr 18
Thu, Apr 18
Add missing WITH/WITHOUT files
Rebase and disable until we can check all relavant toolchains support it
It's not very useful as a module as it provides infrastructure other devices need, e.g. their clock, or a reset line. If it was a module these drivers would fail to attach if they were built into the kernel.
Wed, Apr 17
Wed, Apr 17
We could look at that as a follow up, however I'm unlikely to have time to make such a change and have it ready and well tested for 14.1 given it's due to be branched in just over 2 weeks.
Tue, Apr 16
Tue, Apr 16
Functions that take an SVE register as an argument, or use one for the return value are marked with STO_AARCH64_VARIANT_PCS [1]. In glibc it looks like they avoid lazy resolution for all variant pcs functions. As there are more reasons than just SVE for a function to be marked as a variant, and more reasons could be added in the future I think it's the only safe option.
Rebase and check the SVE registers are only set once
Rework to not guarentee the SVE registers are saved over a syscall other than sigreturn.
The ABI doesn't require SVE registers to be saved on a function call so extend this to a system call.
As dropping the SVE state on all system calls could get expensive only do it on context switch when in one.
Rename to PHYS_IN_DMAP_RANGE
Mon, Apr 15
Mon, Apr 15
Fri, Apr 12
Fri, Apr 12
Support BTI in rtld
I don't think we need to store the SCE registers in getcontextx. It's a function call that doesn't take an SVE register as an argument so the ABI doesn't require the upper bits of SVE registers to be preserved. We could restore the SVE registers in setcontextx if they are in the list of registers.
arm64: Support hardware breakpoints
sys/gdb: Support hardware breakpoints
andrew committed rG076b64e83ac9: sys/ddb: Add hardware breakpoint support to ddb (authored by andrew).
sys/ddb: Add hardware breakpoint support to ddb
ddb: Start to generalise breakpoints
Thu, Apr 11
Thu, Apr 11
andrew committed rGe1c4c8dd8d2d: vtscmi: Add a virtio-scmi driver (authored by cristian.marussi_arm.com).
vtscmi: Add a virtio-scmi driver
andrew committed rGa87dd74125d2: scmi: Add an SCMI VirtIO transport driver (authored by cristian.marussi_arm.com).
scmi: Add an SCMI VirtIO transport driver
andrew committed rG3595f18fc78b: scmi: Add SCMI message tracking and centralize tx/rx logic (authored by cristian.marussi_arm.com).
scmi: Add SCMI message tracking and centralize tx/rx logic
andrew committed rG35f93203963f: scmi: Introduce a new SCMI API and port CLK SCMI driver to it (authored by cristian.marussi_arm.com).
scmi: Introduce a new SCMI API and port CLK SCMI driver to it
andrew committed rG403ca28c28bd: scmi: Add new SCMI interfaces for init and message processing (authored by cristian.marussi_arm.com).
scmi: Add new SCMI interfaces for init and message processing
andrew committed rGa0ba2a97fd19: scmi: Protect SCMI/SMT channels from concurrent transmissions (authored by cristian.marussi_arm.com).
scmi: Protect SCMI/SMT channels from concurrent transmissions
andrew committed rGcbcfdff05678: scmi: Fix SCMI mailbox polling mechanism (authored by cristian.marussi_arm.com).
scmi: Fix SCMI mailbox polling mechanism
andrew committed rGd220b1cf02ce: scmi: Extend and refactor SCMI shmem support (authored by cristian.marussi_arm.com).
scmi: Extend and refactor SCMI shmem support
andrew committed rGecd8cc84dcee: scmi: Implement scmi_clknode_recalc_freq method (authored by cristian.marussi_arm.com).
scmi: Implement scmi_clknode_recalc_freq method
andrew committed rGd46f01fd590e: scmi: Split out the SCMI mailbox to a new file (authored by andrew).
scmi: Split out the SCMI mailbox to a new file
scmi: Add an SCMI SMC transport driver
Wed, Apr 10
Wed, Apr 10
It looks like the icache handling is missing after writing the brk instruction. I think this could be done from userspace as VPIPT i-cache has been removed from the architecture [1].
Mon, Apr 8
Mon, Apr 8
andrew committed rG35f6b83049da: Update the Arm Optimized Routine library to v24.01 (authored by andrew).
Update the Arm Optimized Routine library to v24.01
Thu, Apr 4
Thu, Apr 4
Tue, Apr 2
Tue, Apr 2
I do, however, want to point out that a good portion of the reduction in buildworld time is coming from performing a smaller number of icache flushes when creating executable mappings.
Thu, Mar 28
Thu, Mar 28
This is dangerous to do. It is imlpementation defined if an SError is a precise or imprecise exception. If it is imprecise the instruction stream may be out of sync, e.g. instructions before ELR haven't executed and instructions after it have completed (see "Definition of a precise exception and imprecise exception" from the Arm Architecture Reference Manual for the full definition). Because we have to assume an SError is imprecise we can't handle them in do_serror.
Is there a reason to not have cpu_reset_hook = psci_reset by default so we can remove the NULL check?
Mar 21 2024
Mar 21 2024
Add missing HAS_HW_BREAKPOINT check
Rebase
Rebase on D44461
andrew committed rGc802b486ddfd: arm64: Add EL1 hardware breakpoint exceptions (authored by andrew).
arm64: Add EL1 hardware breakpoint exceptions
andrew committed rGd93b3a65f769: arm64: Use a switch to decide when to enable debug (authored by andrew).
arm64: Use a switch to decide when to enable debug
andrew committed rG2e2c983d5234: arm64: Always set the debug control and value regs (authored by andrew).
arm64: Always set the debug control and value regs
andrew committed rGed3c6cd76de8: arm64: Mask non-debug exceptions when single stepping (authored by andrew).
arm64: Mask non-debug exceptions when single stepping
andrew committed rG12257233e8fd: arm64: Split out a savectx version of vfp_save_state (authored by andrew).
arm64: Split out a savectx version of vfp_save_state
libc/aarch64: Add a non-trivial getcontextx
libc/aarch64: Copy the trivial getcontextx
andrew committed rG7e6437c08415: arm64: Support passing more registers to signals (authored by andrew).
arm64: Support passing more registers to signals
Mar 18 2024
Mar 18 2024
arm64: Return all registers to gdb when able
andrew committed rGa931b85a0966: uart: Add uart_cpu_acpi_setup to setup the uart (authored by andrew).
uart: Add uart_cpu_acpi_setup to setup the uart
andrew committed rG473c0b44ae8c: uart: Split out initilisation of the acpi devinfo (authored by andrew).
uart: Split out initilisation of the acpi devinfo
arm64: Rename drop_to_el1 to enter_kernel_el
Mar 14 2024
Mar 14 2024