Page MenuHomeFreeBSD
Feed Advanced Search

Oct 15 2021

mhorne accepted D32493: Add userland boot profiling to TSLOG.
Oct 15 2021, 8:22 PM
mhorne added a comment to D32493: Add userland boot profiling to TSLOG.

Thanks, I love the simplicity of this.

Oct 15 2021, 4:48 PM
mhorne added inline comments to D29959: xen/devices: purge uses of intr_machdep.h.
Oct 15 2021, 4:10 PM
mhorne committed rGaa794b82ef88: arm, arm64, riscv: adjust top-level nexus comment (authored by mhorne).
arm, arm64, riscv: adjust top-level nexus comment
Oct 15 2021, 3:27 PM
mhorne committed rGd925085dcdbd: riscv: fix VM_MAXUSER_ADDRESS checks in asm routines (authored by mhorne).
riscv: fix VM_MAXUSER_ADDRESS checks in asm routines
Oct 15 2021, 3:27 PM
mhorne committed rG43f5da70cc96: riscv: handle page faults in the unmappable region (authored by mhorne).
riscv: handle page faults in the unmappable region
Oct 15 2021, 3:27 PM
mhorne committed rG89f1b82a859f: libpmc: fix the 'cycles' event alias on x86 (authored by mhorne).
libpmc: fix the 'cycles' event alias on x86
Oct 15 2021, 3:27 PM
mhorne committed rG3c01f7415067: libpmc: add some AMD pmu counter aliases (authored by mhorne).
libpmc: add some AMD pmu counter aliases
Oct 15 2021, 3:27 PM
mhorne committed rGfc7febf483a4: minidump: De-duplicate the progress bar (authored by mhorne).
minidump: De-duplicate the progress bar
Oct 15 2021, 3:27 PM
mhorne committed rG5794f8c75ef1: minidump: De-duplicate is_dumpable() (authored by mhorne).
minidump: De-duplicate is_dumpable()
Oct 15 2021, 3:26 PM

Oct 13 2021

mhorne added a comment to D32321: Add support of ARM CMN-600 controller, PMU access functions only. Add support of PMU counters of ARM CMN-600 controller..

A few minor comments, I've looked mainly at hwpmc_cmn600.c so far.

Oct 13 2021, 7:53 PM
mhorne added a comment to D32320: Allocate event for DMC-620 and CMN-600 controllers PMU. Add events supported by DMC-620 and CMN-600 controllers PMU..

Is there a review for a dmc620 driver still to come?

Oct 13 2021, 7:29 PM
mhorne added inline comments to D32477: kenv: allow static hints to disable loader hints.
Oct 13 2021, 6:07 PM
mhorne added a comment to D32477: kenv: allow static hints to disable loader hints.

Seems good to me. One thing missing is loader_hints.disabled needs an entry in the config(5) man page.

Oct 13 2021, 6:01 PM

Oct 12 2021

mhorne accepted D32445: riscv: Implement pmap_mapdev_attr.
Oct 12 2021, 1:48 PM
mhorne accepted D29959: xen/devices: purge uses of intr_machdep.h.

This seems fine, these drivers use the xen_intr_ interfaces rather than anything contained in the header. Just one question about pcifront.c.

Oct 12 2021, 1:19 AM

Oct 11 2021

mhorne updated the diff for D31929: boottrace(1): small wrapper utility.

Log events as BOOTTRACE rather than RUNTTRACE. We will use the switch to multi-user mode as the mark between boot and run-time tracing.

Oct 11 2021, 3:45 PM
mhorne added a comment to D30187: boottrace: trace annotations for startup and shutdown.

Hi Colin, thanks for the comments and apologies that it has taken some time for me to update this patch.

Oct 11 2021, 3:12 PM
mhorne updated the diff for D30187: boottrace: trace annotations for startup and shutdown.

Simplify the trace calls somewhat with the BOOTTRACE() macro. Now, printf-like arguments are supported.

Oct 11 2021, 3:04 PM
mhorne updated the diff for D30184: boottrace: a simple boot and shutdown-time tracing facility.

Rebase and update after a few rounds of cleanups and testing.

Oct 11 2021, 3:02 PM
mhorne added a comment to D30006: xen/intr: adjust xen_intr_handle_upcall() to match interrupt filter.

@mhorne I think you got mixed up on the direction this is going.

Presently there are two paths which lead to xen_intr_handle_upcall():

  1. apic_vector.S (x86 assembly/raw interrupt vectors) => xen_intr.c/xen_intr_handle_upcall()
  2. xenpci.c/BUS_SETUP_INTR() => xenpci.c/xenpci_intr_filter() => xen_intr.c/xen_intr_handle_upcall()

I want to rearrange this sequence to add a third caller:

  1. apic_vector.S (interrupt) => x86/xen_arch_intr.c/xen_arch_intr_handle_upcall() => xen_intr.c/xen_intr_handle_upcall()
  2. xenpci.c/BUS_SETUP_INTR() => xen_intr.c/xen_intr_handle_upcall()
  3. arm64/xen_arch_intr.c/bus_setup_intr() (D29875) => xen_intr.c/xen_intr_handle_upcall()

There are two reasons for changing like this. First, some bits of x86-specific code are still in xen_intr_handle_upcall(); notably the interrupt counter increment, critical_enter()/critical_exit() calls and lapic_eoi() call. Second, in theory a device_filter_t function has the capability to report stray interrupts, but any such reporting is lost with the present signature of xen_intr_handle_upcall().

Oct 11 2021, 12:13 AM

Oct 10 2021

mhorne added a comment to D30006: xen/intr: adjust xen_intr_handle_upcall() to match interrupt filter.

Due to exploring elsewhere the issue of the struct trapframe has shown. I'm uncertain how to handle correctly. In its present form, this should behave identically to the previous version. Issue is there is a problem with the present form and I'm wondering whether the present form is correct.

The behavior of passing the trap frame as the argument is undocumented behavior for bus_setup_intr(). I've also encountered several mentions of peripheral interrupt controllers passing NULL trap frames.

Oct 10 2021, 6:27 PM

Oct 8 2021

mhorne committed rG17f790f49f58: arm, arm64, riscv: adjust top-level nexus comment (authored by mhorne).
arm, arm64, riscv: adjust top-level nexus comment
Oct 8 2021, 5:17 PM
mhorne closed D32358: arm,arm64,riscv: adjust top-level nexus comment.
Oct 8 2021, 5:17 PM
mhorne added a comment to D32346: sys: add trap frame compatibility macros.

Okay, let's take a step back here.

Oct 8 2021, 4:54 PM
mhorne added inline comments to D30554: ofwbus: remove handling of resources from ofwbus.
Oct 8 2021, 2:46 PM

Oct 7 2021

mhorne closed D31209: riscv: fix VM_MAXUSER_ADDRESS checks in asm routines.
Oct 7 2021, 9:19 PM
mhorne committed rG8babb5582eed: riscv: fix VM_MAXUSER_ADDRESS checks in asm routines (authored by mhorne).
riscv: fix VM_MAXUSER_ADDRESS checks in asm routines
Oct 7 2021, 9:19 PM
mhorne closed D31208: riscv: handle page faults in the unmappable region.
Oct 7 2021, 9:19 PM
mhorne committed rG4a9f2f8b07c2: riscv: handle page faults in the unmappable region (authored by mhorne).
riscv: handle page faults in the unmappable region
Oct 7 2021, 9:19 PM
mhorne updated the diff for D31208: riscv: handle page faults in the unmappable region.

Add the hex prefix.

Oct 7 2021, 7:17 PM
mhorne added inline comments to D31208: riscv: handle page faults in the unmappable region.
Oct 7 2021, 7:15 PM
mhorne updated the diff for D31208: riscv: handle page faults in the unmappable region.

Handle !VIRT_IS_VALID for the usermode case.

Oct 7 2021, 7:13 PM
mhorne added a comment to D31209: riscv: fix VM_MAXUSER_ADDRESS checks in asm routines.

Add a test case to kern_copyin.c.

Thanks.

It seems the hang cannot be triggered with a call to write(2), so use fcntl(2) as is done in the PR.

Any idea why?

Oct 7 2021, 6:28 PM
mhorne requested review of D32358: arm,arm64,riscv: adjust top-level nexus comment.
Oct 7 2021, 6:04 PM
mhorne added a reviewer for D30554: ofwbus: remove handling of resources from ofwbus: PowerPC.

Okay, I was able to boot this on a few devices for arm, arm64, and riscv.

Oct 7 2021, 5:59 PM
mhorne requested review of D32357: arm: add an interrupt rman to nexus.
Oct 7 2021, 5:58 PM
mhorne edited P518 devinfo -u on armv7.
Oct 7 2021, 5:49 PM
mhorne edited P518 devinfo -u on armv7.
Oct 7 2021, 5:48 PM
mhorne created P518 devinfo -u on armv7.
Oct 7 2021, 5:47 PM
mhorne created P517 devinfo -u on riscv.
Oct 7 2021, 4:47 PM
mhorne accepted D32345: sys: add uses of driver_filter_t where appropriate.

Seems fine to me. Is this exhaustive or is it just the drivers you encountered?

Oct 7 2021, 4:10 PM
mhorne requested changes to D32346: sys: add trap frame compatibility macros.

Overall, I don't like the idea of making changes to working code for the benefit of a feature that is incomplete and has never been enabled. IMO any action on INTR_SOLO requires a more thorough set of changes + testing to make it production ready. It would probably be equally fine to remove it at this point.

Oct 7 2021, 4:04 PM

Oct 6 2021

mhorne updated the test plan for D32343: physmem: add ram0 pseudo-driver.
Oct 6 2021, 8:10 PM
mhorne requested review of D32343: physmem: add ram0 pseudo-driver.
Oct 6 2021, 8:02 PM

Oct 5 2021

mhorne updated the diff for D31208: riscv: handle page faults in the unmappable region.

Handle jrtc27's suggestion, add VIRT_IS_VALID() to vmparam.h.

Oct 5 2021, 6:49 PM
mhorne retitled D31209: riscv: fix VM_MAXUSER_ADDRESS checks in asm routines from riscv: fix bounds checking in copyinout.S routines to riscv: fix VM_MAXUSER_ADDRESS checks in asm routines.
Oct 5 2021, 6:10 PM
mhorne updated the diff for D31209: riscv: fix VM_MAXUSER_ADDRESS checks in asm routines.

Apply the change to routines in support.S as well.

Oct 5 2021, 6:09 PM

Oct 4 2021

mhorne committed rGa3acb379bdea: rman: fix overflow in rman_reserve_resource_bound() (authored by ehem_freebsd_m5p.com).
rman: fix overflow in rman_reserve_resource_bound()
Oct 4 2021, 2:19 PM
mhorne committed rG26337c10f060: boot(9): update to match reality (authored by mhorne).
boot(9): update to match reality
Oct 4 2021, 2:19 PM
mhorne committed rG8e43767b3180: rman: fix overflow in rman_reserve_resource_bound() (authored by ehem_freebsd_m5p.com).
rman: fix overflow in rman_reserve_resource_bound()
Oct 4 2021, 2:13 PM
mhorne committed rG68628f462093: boot(9): update to match reality (authored by mhorne).
boot(9): update to match reality
Oct 4 2021, 2:13 PM

Sep 30 2021

mhorne committed rGa20c10893eb1: libpmc: add some AMD pmu counter aliases (authored by mhorne).
libpmc: add some AMD pmu counter aliases
Sep 30 2021, 2:17 PM
mhorne committed rG937539e0a32c: libpmc: fix the 'cycles' event alias on x86 (authored by mhorne).
libpmc: fix the 'cycles' event alias on x86
Sep 30 2021, 2:17 PM
mhorne closed D32162: libpmc: add some AMD pmu counter aliases.
Sep 30 2021, 2:17 PM
mhorne closed D32197: libpmc: fix the 'cycles' event alias on x86.
Sep 30 2021, 2:17 PM

Sep 29 2021

mhorne committed rG31991a5a4585: minidump: De-duplicate is_dumpable() (authored by mhorne).
minidump: De-duplicate is_dumpable()
Sep 29 2021, 7:43 PM
mhorne committed rGab4ed843a303: minidump: De-duplicate the progress bar (authored by mhorne).
minidump: De-duplicate the progress bar
Sep 29 2021, 7:43 PM
mhorne closed D31885: minidump: De-duplicate the progress bar.
Sep 29 2021, 7:43 PM
mhorne closed D31884: minidump: De-duplicate is_dumpable().
Sep 29 2021, 7:43 PM
mhorne closed D32213: freebsd-src-lsp: fix bear '--append' flag.
Sep 29 2021, 3:44 PM
mhorne committed R9:c85cbe1b3ff3: freebsd-src-lsp: fix bear '--append' flag (authored by mhorne).
freebsd-src-lsp: fix bear '--append' flag
Sep 29 2021, 3:44 PM
mhorne committed rG440c645b8f14: sdhci: add a missing newline (authored by mhorne).
sdhci: add a missing newline
Sep 29 2021, 2:40 PM

Sep 28 2021

mhorne requested review of D32213: freebsd-src-lsp: fix bear '--append' flag.
Sep 28 2021, 9:26 PM
mhorne closed D32085: boot(9): update to match reality.
Sep 28 2021, 2:39 PM
mhorne committed rG800e74955d4e: boot(9): update to match reality (authored by mhorne).
boot(9): update to match reality
Sep 28 2021, 2:39 PM
mhorne committed rG22e68eadc50d: bcm2835_sdhci: don't use DMA for kernel dumps (authored by mhorne).
bcm2835_sdhci: don't use DMA for kernel dumps
Sep 28 2021, 2:25 PM
mhorne committed rGa7a54bf8c33f: bcm2835_sdhci: don't use DMA for kernel dumps (authored by mhorne).
bcm2835_sdhci: don't use DMA for kernel dumps
Sep 28 2021, 2:23 PM
mhorne updated the diff for D32162: libpmc: add some AMD pmu counter aliases.

Drop non-functional 'cycles' alias in favor of D32197.

Sep 28 2021, 2:05 PM
mhorne requested review of D32197: libpmc: fix the 'cycles' event alias on x86.
Sep 28 2021, 2:04 PM
mhorne added inline comments to D32162: libpmc: add some AMD pmu counter aliases.
Sep 28 2021, 1:37 PM

Sep 27 2021

mhorne requested review of D32162: libpmc: add some AMD pmu counter aliases.
Sep 27 2021, 7:48 PM
mhorne added a comment to D31312: kern/rman: warn/KASSERT() on garbled reservations.

@ehem_freebsd_m5p.com I committed the KASSERT alongside D30280, so this can be closed (but you will need to do it).

Sep 27 2021, 5:42 PM
mhorne closed D30280: kern/rman: fix overflow in rman_reserve_resource_bound().
Sep 27 2021, 5:40 PM
mhorne committed rGbcddaadbef58: rman: fix overflow in rman_reserve_resource_bound() (authored by ehem_freebsd_m5p.com).
rman: fix overflow in rman_reserve_resource_bound()
Sep 27 2021, 5:40 PM

Sep 23 2021

mhorne closed D31494: developers-handbook: update the section on Remote GDB.
Sep 23 2021, 8:30 PM
mhorne committed R9:f978ca7e8e79: developers-handbook: update the section on Remote GDB (authored by mhorne).
developers-handbook: update the section on Remote GDB
Sep 23 2021, 8:30 PM
mhorne requested review of D32085: boot(9): update to match reality.
Sep 23 2021, 7:23 PM
mhorne added a comment to D31494: developers-handbook: update the section on Remote GDB.

Thanks for writing this up @mhorne, much appreciated! I've left a few comments from my experience of setting it up with QEMU + KVM today and the confusion I had while reading the existing documentation, as well as the confusion that I would probably have while reading this.

I wonder if it might make sense to explicitly state that the procedure for virtualization gdb stubs may be different depending on which hypervisor/emulator is being used, and then in follow-up commits (by you or anyone else really) document the procedure for each given hypervisor?

Sep 23 2021, 5:05 PM
mhorne updated the diff for D31494: developers-handbook: update the section on Remote GDB.
  • Change the flow of the example so that it doesn't require DDB
  • Mention that GDB is enabled in GENERIC on main
  • Add a tip about local vars and optimization levels
  • Other small wording/formatting improvements
Sep 23 2021, 5:03 PM

Sep 22 2021

mhorne accepted D31962: linux: For better compatibility, provide compatible endian.h.

Seems straightforward. Are there any manpages that need updating? Should FreeBSD sources still prefer sys/endian.h going forward, and is that mentioned anywhere?

Sep 22 2021, 5:01 PM
mhorne accepted D32055: pmc: intr pmc.soft(3) update.

Thank you for handling this. One small note which you can fix before commit. Don't forget to bump .Dd, of course :)

Sep 22 2021, 2:33 PM

Sep 21 2021

mhorne added a comment to D32053: Allow ddb and dtrace use the DMAP region on arm64.

Why should the DMAP alias be writable? Its protections are supposed to be kept in sync with the corresponding KVA page. You add a comment to this effect in D32026, but I think pmap_change_props_locked() is still missing the code that actually updates the DMAP protections (at least I don't see it).

Sep 21 2021, 7:27 PM
mhorne updated the diff for D31993: Allow minidumps to be performed on the live system.

Fix the assertions, first cut at a more detailed block comment.

Sep 21 2021, 6:57 PM
mhorne updated the diff for D31992: minidump: Use the provided dump bitset.

Add helpers to eliminate code churn outside of minidump_machdep.c.

Sep 21 2021, 6:56 PM
mhorne updated the diff for D31989: minidump: Parameterize minidumpsys().

Make the state pointer const.

Sep 21 2021, 6:54 PM
mhorne updated the diff for D31884: minidump: De-duplicate is_dumpable().

Move function to vm_phys.c, rename it to vm_phys_is_dumpable().

Sep 21 2021, 6:53 PM
mhorne added a comment to D32026: Add pmap_change_prot on arm64.

Enabling this will limit the ability to set breakpoints or fbt probes on preloaded modules. On amd64 there is a global write-protect bit that is disabled before these operations, but on arm64 we will need something more fine-grained. Do you have plans to handle this?

Sep 21 2021, 2:33 PM
mhorne committed rG806ebc9eba2a: bcm2835_sdhci: don't use DMA for kernel dumps (authored by mhorne).
bcm2835_sdhci: don't use DMA for kernel dumps
Sep 21 2021, 1:10 PM
mhorne closed D31893: bcm2835_sdhci: don't use DMA for kernel dumps.
Sep 21 2021, 1:10 PM

Sep 20 2021

mhorne added a comment to D31893: bcm2835_sdhci: don't use DMA for kernel dumps.

Gentle ping.

Sep 20 2021, 7:45 PM

Sep 17 2021

mhorne accepted D31995: xen/intr: add check for intr_register_source() errors.

Looks fine to me. I would suggest keeping the KASSERT though, it is free and makes the point of failure more obvious if this condition did occur.

Sep 17 2021, 12:27 PM

Sep 16 2021

mhorne added inline comments to D31993: Allow minidumps to be performed on the live system.
Sep 16 2021, 7:30 PM
mhorne added inline comments to D31990: minidump: reduce the amount direct accesses to page tables.
Sep 16 2021, 6:59 PM
mhorne added a reviewer for D31992: minidump: Use the provided dump bitset: luporl.

This is mostly mechanical. state->dump_bitset should be used inside each minidump_machdep.c, and vm_page_dump everywhere else. The one exception to this is powerpc's dumpsys_scan_pmap() method, which is extended to also accept a bitset argument.

Sep 16 2021, 6:51 PM
mhorne updated the test plan for D31990: minidump: reduce the amount direct accesses to page tables.
Sep 16 2021, 6:47 PM
mhorne added reviewers for D31993: Allow minidumps to be performed on the live system: markj, kib, jhb, stevek.
Sep 16 2021, 6:45 PM
mhorne added reviewers for D31992: minidump: Use the provided dump bitset: markj, kib, jhb, stevek.
Sep 16 2021, 6:44 PM
mhorne added reviewers for D31991: minidump: Use provided msgbuf pointer: markj, kib, jhb, stevek.
Sep 16 2021, 6:43 PM
mhorne added reviewers for D31990: minidump: reduce the amount direct accesses to page tables: markj, kib, jhb, stevek.
Sep 16 2021, 6:42 PM