Page MenuHomeFreeBSD
Feed Advanced Search

Feb 25 2021

andrew committed rG3fd63ddfdf35: Limit when we call DELAY from KCSAN on amd64 (authored by andrew).
Limit when we call DELAY from KCSAN on amd64
Feb 25 2021, 12:47 PM
andrew closed D28895: Limit when we call DELAY from KCSAN on amd64.
Feb 25 2021, 12:47 PM
andrew closed D28890: Use pmap_qenter in the N1SDP PCIe driver.
Feb 25 2021, 12:47 PM
andrew committed rG59f6ddb2bc9c: Use pmap_qenter in the N1SDP PCIe driver (authored by andrew).
Use pmap_qenter in the N1SDP PCIe driver
Feb 25 2021, 12:47 PM

Feb 23 2021

andrew added a comment to D28895: Limit when we call DELAY from KCSAN on amd64.

kcsan_access will be called from any memory access from a C file build with -fsanitize=thread unless the function has been marked as not to be sanitized. As long as we are far enough the boot (after SI_SUB_SMP, SI_ORDER_SECOND), kcsan_md_unsupported marks the address as valid to sanitize (always the case on amd64), and the kernel isn't in a panic we will check if the current memory access and any on the other CPUs in the system collide. If they do we report that as a possible race.

Feb 23 2021, 4:15 PM
andrew added a comment to D28895: Limit when we call DELAY from KCSAN on amd64.

The DELAY call is to wait for other CPUs to make memory accesses and check they are different from the one on the current CPU.

Feb 23 2021, 3:01 PM
andrew requested review of D28896: Align physmem to a 2MiB block on arm64.
Feb 23 2021, 2:44 PM
andrew requested review of D28895: Limit when we call DELAY from KCSAN on amd64.
Feb 23 2021, 2:31 PM
andrew requested review of D28890: Use pmap_qenter in the N1SDP PCIe driver.
Feb 23 2021, 1:46 PM
andrew added a comment to D28883: Shared library randomization.

How do you propose to fix the issue mentioned in the commit message in https://github.com/HardenedBSD/hardenedBSD/commit/1b291848bfbb8fe12b893d12c5163f74b84257aa?

Feb 23 2021, 11:46 AM

Feb 19 2021

andrew committed rGd765b211387c: Remove __XSCALE__ checks from the arm code (authored by andrew).
Remove __XSCALE__ checks from the arm code
Feb 19 2021, 3:42 PM
andrew accepted D28723: Reimplement dtrace_gethrtime() on arm64 to use the cycle counter..
Feb 19 2021, 3:31 PM

Feb 18 2021

andrew accepted D28723: Reimplement dtrace_gethrtime() on arm64 to use the cycle counter..

I'm happy with this, although the cyclecount name is a bit confusing as it's not related to the CPU clock so isn't CPU cycles.

Feb 18 2021, 2:46 PM

Feb 17 2021

andrew added a comment to D28723: Reimplement dtrace_gethrtime() on arm64 to use the cycle counter..

Is dtrace_gethrtime run while pinned to a single CPU? My readding of the spec is that it should be identical over all cores as it's based on the system counter, although it this is not the case it could lead to interesting results.

Feb 17 2021, 8:46 PM

Feb 16 2021

andrew added inline comments to D20974: Port sbsawdt (ARM SBSA generic watchdog) driver from NetBSD.
Feb 16 2021, 7:48 PM · arm64
andrew added inline comments to D28707: Fix attachment of IPMI driver on ARM64.
Feb 16 2021, 7:40 PM
andrew accepted D28340: gicv3_its: Don't restrict target CPUs based on SRAT.
Feb 16 2021, 6:23 PM
andrew accepted D28709: gicv3_its: Leave LPI interrupts enable during handling.

This driver only manages MSI/MSI-X interrupts.

Feb 16 2021, 6:21 PM
andrew added inline comments to D16260: Use memory locality info provided in the FDT..
Feb 16 2021, 6:15 PM

Feb 13 2021

andrew added a comment to D28579: arm64: Include NUMA locality info in the CPU topology.

On FDT there is the cpu-map we can use https://mjmwired.net/kernel/Documentation/devicetree/bindings/cpu.

Feb 13 2021, 6:01 PM

Feb 11 2021

andrew accepted D28415: arm64: extend struct db_reg to include watchpoint registers.

It would pay to bump __FreeBSD_version when you commit this.

Feb 11 2021, 6:17 PM
andrew added a comment to D28579: arm64: Include NUMA locality info in the CPU topology.

Should we include big.LITTLE cluster info in the topo info returned from cpu_topo (in a future patch)? The each cluster will most likely share an L2 cache, although I'm not sure if this is required.

Feb 11 2021, 6:14 PM

Feb 9 2021

andrew added a comment to D28415: arm64: extend struct db_reg to include watchpoint registers.

That's because extract_user_id_field returns a default value of 0 for the watchpoint count field.

Feb 9 2021, 5:15 PM
andrew accepted D28535: Increase SMMU timeout.
Feb 9 2021, 1:59 PM

Feb 5 2021

andrew committed rG13ec5a6da04b: Add support for arm64 nGnRE device memory (authored by andrew).
Add support for arm64 nGnRE device memory
Feb 5 2021, 2:05 PM

Feb 4 2021

andrew accepted D28340: gicv3_its: Don't restrict target CPUs based on SRAT.
Feb 4 2021, 3:50 PM

Feb 3 2021

andrew requested review of D28468: Invalidate pagetable memory from the arm64 d-cache.
Feb 3 2021, 10:07 AM

Feb 2 2021

andrew updated the diff for D26083: Add support to switch the arm64 EL2 vector after boot.

Remove an unneeded instruction

Feb 2 2021, 3:33 PM
andrew added inline comments to D26083: Add support to switch the arm64 EL2 vector after boot.
Feb 2 2021, 3:15 PM
andrew updated the diff for D26083: Add support to switch the arm64 EL2 vector after boot.

Rebase after locore.S changes

Feb 2 2021, 11:24 AM

Jan 28 2021

andrew committed rG4e76e4c301c7: Remove obsolete code gated on _ARM_ARCH_* (authored by andrew).
Remove obsolete code gated on _ARM_ARCH_*
Jan 28 2021, 10:52 AM
andrew committed rG4d2ff2330f51: Remove the old ARMv4 memcpy (authored by andrew).
Remove the old ARMv4 memcpy
Jan 28 2021, 10:52 AM
andrew closed D28314: Remove obsolete code gated on _ARM_ARCH_*.
Jan 28 2021, 10:52 AM
andrew closed D28313: Remove the old ARMv4 memcpy.
Jan 28 2021, 10:51 AM
andrew closed D28312: Remove leftover big-endian arm support from libc.
Jan 28 2021, 10:41 AM
andrew committed rGe09c8c9ad90d: Remove leftover big-endian arm support (authored by andrew).
Remove leftover big-endian arm support
Jan 28 2021, 10:41 AM

Jan 27 2021

andrew committed rGdd6c1c2a6c0d: Remove redundantcy from the arm GIC softc (authored by andrew).
Remove redundantcy from the arm GIC softc
Jan 27 2021, 7:10 PM
andrew closed D28339: Remove redundantcy from the arm GIC softc.
Jan 27 2021, 7:10 PM
andrew committed rG2be9ff2d65e9: Remove old Marvell drivers (authored by andrew).
Remove old Marvell drivers
Jan 27 2021, 10:36 AM
andrew closed D28366: Remove old Marvell drivers.
Jan 27 2021, 10:36 AM
andrew committed rG042ef1f11550: Remove DTS files for arm boards we don't support (authored by andrew).
Remove DTS files for arm boards we don't support
Jan 27 2021, 10:36 AM
andrew closed D28365: Remove DTS files for arm boards we don't support.
Jan 27 2021, 10:36 AM

Jan 26 2021

andrew requested review of D28366: Remove old Marvell drivers.
Jan 26 2021, 10:07 PM
andrew requested review of D28365: Remove DTS files for arm boards we don't support.
Jan 26 2021, 9:20 PM

Jan 25 2021

andrew added a comment to D28340: gicv3_its: Don't restrict target CPUs based on SRAT.

We need to limit which CPUs we send these interrupts to on the original dual socket ThunderX as it is unable to forward them between the two sockets.

Jan 25 2021, 8:31 PM
andrew requested review of D28339: Remove redundantcy from the arm GIC softc.
Jan 25 2021, 8:14 PM
andrew committed rG35ebd8d33ad2: gic_v3: add message based interrupts support (authored by cyprien_cypou.net).
gic_v3: add message based interrupts support
Jan 25 2021, 10:18 AM
andrew committed rG46ca0b903cad: gic_v3: Use 64-bit writes to GICD_IROUTERn (authored by cyprien_cypou.net).
gic_v3: Use 64-bit writes to GICD_IROUTERn
Jan 25 2021, 10:17 AM

Jan 23 2021

andrew requested review of D28314: Remove obsolete code gated on _ARM_ARCH_*.
Jan 23 2021, 8:35 PM
andrew requested review of D28313: Remove the old ARMv4 memcpy.
Jan 23 2021, 8:31 PM
andrew requested review of D28312: Remove leftover big-endian arm support from libc.
Jan 23 2021, 8:25 PM

Jan 20 2021

andrew committed rG8e67b9389df1: Handle arm64 undefied instructions on msr exceptions (authored by andrew).
Handle arm64 undefied instructions on msr exceptions
Jan 20 2021, 6:33 PM
andrew committed rGf6f0b849fb26: Reuse the amd64 loader relocation code on arm64 (authored by andrew).
Reuse the amd64 loader relocation code on arm64
Jan 20 2021, 6:33 PM
andrew closed D28213: Reuse the amd64 loader relocation code on arm64.
Jan 20 2021, 6:33 PM

Jan 17 2021

andrew requested review of D28213: Reuse the amd64 loader relocation code on arm64.
Jan 17 2021, 6:22 PM

Jan 16 2021

andrew accepted D28091: Add -NODEBUG variant of GENERIC-MMCCAM kernel configuration..
Jan 16 2021, 1:48 PM

Jan 15 2021

andrew committed rGf64329bcdc4f: Extract the logic from pmap_kextract (authored by andrew).
Extract the logic from pmap_kextract
Jan 15 2021, 7:14 PM
andrew closed D27621: Extract the logic from pmap_kextract.
Jan 15 2021, 7:14 PM
andrew updated the diff for D27621: Extract the logic from pmap_kextract.

Update based on feedback from markj

Jan 15 2021, 4:13 PM
andrew added a comment to D27621: Extract the logic from pmap_kextract.

I expect we could do something similar in pmap_extract. We would need to limit it to stage 1 pmaps (i.e. non-hypervisor pmaps), and need to check if it's a userspace or kernel pmap.

Jan 15 2021, 3:26 PM
andrew updated the diff for D27621: Extract the logic from pmap_kextract.

Add a comment explaining why interrupts are disabled

Jan 15 2021, 3:10 PM
andrew added inline comments to D27621: Extract the logic from pmap_kextract.
Jan 15 2021, 11:42 AM
andrew updated the diff for D27621: Extract the logic from pmap_kextract.

Use an AT instruction with a fallback on walking the page table.

Jan 15 2021, 11:22 AM
andrew updated the diff for D27621: Extract the logic from pmap_kextract.

Fix the build and boot tested on N1SDP

Jan 15 2021, 10:13 AM
andrew added reviewers for D27621: Extract the logic from pmap_kextract: arm64, markj, kib.
Jan 15 2021, 10:12 AM
andrew accepted D28147: Add malloc_domainset_aligned(9) and use it in x86 busdma bounce..
Jan 15 2021, 9:48 AM
andrew closed D28156: Add missing no-ctfconvert to C generation rules.
Jan 15 2021, 9:48 AM
andrew committed rG94611a838866: Add missing no-ctfconvert to C generation rules (authored by andrew).
Add missing no-ctfconvert to C generation rules
Jan 15 2021, 9:48 AM
andrew added a comment to D28156: Add missing no-ctfconvert to C generation rules.

It fixes warning similar to the following. This is because it's running ctfconvert on the .c file rather than a .o file.

Jan 15 2021, 9:44 AM
andrew added inline comments to D28147: Add malloc_domainset_aligned(9) and use it in x86 busdma bounce..
Jan 15 2021, 9:11 AM

Jan 14 2021

andrew added a comment to D28091: Add -NODEBUG variant of GENERIC-MMCCAM kernel configuration..

After R10:6eebda3bbad9 you can replace this with:

include GENERIC-MMCCAP
include "../../conf/std.nodebug"
Jan 14 2021, 5:08 PM
andrew committed rG6eebda3bbad9: Split out the NODEBUG options to a common file (authored by andrew).
Split out the NODEBUG options to a common file
Jan 14 2021, 5:04 PM
andrew closed D28152: Split out the NODEBUG options to a common file.
Jan 14 2021, 5:04 PM
andrew requested review of D28156: Add missing no-ctfconvert to C generation rules.
Jan 14 2021, 3:42 PM
andrew changed the repository for D28152: Split out the NODEBUG options to a common file from rS FreeBSD src repository - subversion to rG FreeBSD src repository.
Jan 14 2021, 11:08 AM
andrew added a comment to D28091: Add -NODEBUG variant of GENERIC-MMCCAM kernel configuration..

Something like D28152

Jan 14 2021, 11:08 AM
andrew added a comment to D28152: Split out the NODEBUG options to a common file.

I've tested on arm64, I still need to run through universe.

Jan 14 2021, 11:08 AM
andrew requested review of D28152: Split out the NODEBUG options to a common file.
Jan 14 2021, 11:06 AM
andrew added a comment to D28091: Add -NODEBUG variant of GENERIC-MMCCAM kernel configuration..

We could split out the -NODEBUG options to std.nodebug then include that from both here and GENERIC-NODEBUG

Jan 14 2021, 10:25 AM
andrew added inline comments to D28147: Add malloc_domainset_aligned(9) and use it in x86 busdma bounce..
Jan 14 2021, 10:11 AM

Jan 13 2021

andrew committed rG594389d1de64: Create a stack frame when needed in the arm64 kernel (authored by andrew).
Create a stack frame when needed in the arm64 kernel
Jan 13 2021, 4:43 PM
andrew committed rG63c858a04d56: Switch the arm64 pcpu to a global register variable (authored by andrew).
Switch the arm64 pcpu to a global register variable
Jan 13 2021, 4:43 PM
andrew closed D26971: Switch the arm64 pcpu to a global register variable.
Jan 13 2021, 4:43 PM
andrew added a comment to D28132: Handle functions that use a nop in the arm64 fbt.

Tested with dtrace -n ":::". This will trigger on memcpy as called by dtrace_getnanouptime, however it seems to be inlined by the in tree clang.

Jan 13 2021, 11:31 AM
andrew requested review of D28132: Handle functions that use a nop in the arm64 fbt.
Jan 13 2021, 11:22 AM

Jan 12 2021

andrew committed rGc00ec4dab276: Handle using a sub instruction in the arm64 fbt (authored by andrew).
Handle using a sub instruction in the arm64 fbt
Jan 12 2021, 12:49 PM
andrew committed rGd0df1a2d54dc: Only allow a store through sp in the arm64 fbt (authored by andrew).
Only allow a store through sp in the arm64 fbt
Jan 12 2021, 12:49 PM

Jan 11 2021

andrew accepted D27766: Various changes to DTrace FBT to avoid crashed on FreeBSD/arm64..
Jan 11 2021, 1:32 PM · arm64, DTrace

Jan 9 2021

andrew added a comment to D27945: Improvements to HWPMC support on FreeBSD/arm64 to handle counter wraparound.

I think we now handle this with my recent commits.

Jan 9 2021, 9:03 AM · arm64

Jan 8 2021

andrew committed rG90a6e9ef6320: Update hwpmc on armv7 to handle overflow better (authored by andrew).
Update hwpmc on armv7 to handle overflow better
Jan 8 2021, 2:30 PM
andrew committed rG6815909abdaa: Move the PMC overflow count to make it per-CPU (authored by andrew).
Move the PMC overflow count to make it per-CPU
Jan 8 2021, 2:30 PM
andrew closed D27973: Move the PMC overflow count to make it per-CPU.
Jan 8 2021, 2:30 PM
andrew closed D27969: Update hwpmc on armv7 to handle overflow better.
Jan 8 2021, 2:30 PM

Jan 7 2021

andrew added inline comments to D27727: arm64: gdb(4) stub.
Jan 7 2021, 1:46 PM
andrew added inline comments to D28009: WIP: arm64: enable the ipmi module.
Jan 7 2021, 12:52 PM

Jan 5 2021

andrew added inline comments to D27719: arm64: don't pass user trapframe to kdb_trap().
Jan 5 2021, 3:13 PM
andrew set the repository for D27973: Move the PMC overflow count to make it per-CPU to rG FreeBSD src repository.
Jan 5 2021, 12:41 PM
andrew requested review of D27973: Move the PMC overflow count to make it per-CPU.
Jan 5 2021, 11:55 AM
andrew updated the diff for D27969: Update hwpmc on armv7 to handle overflow better.

Set the overflow when restoring register values. Start is just to start the counters counting.

Jan 5 2021, 11:31 AM
andrew set the repository for D27969: Update hwpmc on armv7 to handle overflow better to rG FreeBSD src repository.
Jan 5 2021, 11:00 AM