Page MenuHomeFreeBSD

jhibbits (Justin Hibbits)
User

Projects

User Details

User Since
May 16 2014, 7:29 PM (593 w, 6 d)

Recent Activity

Tue, Sep 30

jhibbits updated the diff for D51623: amd64: Add kexec support.

Address feedback. I hope I got it all now.

Tue, Sep 30, 8:01 PM

Thu, Sep 25

jhibbits added inline comments to D52731: sys/netinet6: Replace use atomic(9) for dad_faulires counter.
Thu, Sep 25, 3:16 PM
jhibbits committed rG904ac13eed05: watchdog: Update man page for new API (authored by jhibbits).
watchdog: Update man page for new API
Thu, Sep 25, 1:54 PM
jhibbits closed D52479: watchdog: Update man page for new API.
Thu, Sep 25, 1:54 PM

Wed, Sep 24

jhibbits updated the diff for D52479: watchdog: Update man page for new API.

Address feedback on ioctl list.

Wed, Sep 24, 8:56 PM

Mon, Sep 22

jhibbits updated the diff for D51621: kexec: Introduce basic arm64 support.

Address feedback. I think I got it all.

Mon, Sep 22, 7:54 PM

Wed, Sep 17

jhibbits updated the diff for D42982: powerpc: Add first Linuxulator support (ELFv1, BE, powerpc64).

Further updates. vdso maps correctly.

Wed, Sep 17, 2:01 AM

Wed, Sep 10

jhibbits requested review of D52479: watchdog: Update man page for new API.
Wed, Sep 10, 8:55 PM

Mon, Sep 8

jhibbits updated the diff for D51619: kern: Introduce kexec system feature (MI).

Address feedback from @kib and @brooks.

Mon, Sep 8, 2:11 PM
jhibbits added inline comments to D51619: kern: Introduce kexec system feature (MI).
Mon, Sep 8, 2:08 PM

Wed, Sep 3

jhibbits accepted D52362: IfAPI: fix LINT-NOIP build.
Wed, Sep 3, 6:27 PM

Aug 29 2025

jhibbits committed rGe2f492a9ac65: TPM: Add hint check to skip TPM IRQ configuration (authored by amitgu_juniper.net).
TPM: Add hint check to skip TPM IRQ configuration
Aug 29 2025, 5:57 PM
jhibbits closed D52048: TPM: Add hint check to skip TPM IRQ configuration.
Aug 29 2025, 5:57 PM

Aug 25 2025

jhibbits updated the diff for D51619: kern: Introduce kexec system feature (MI).

Address feedback. I think I got it all.

Aug 25 2025, 5:15 PM
jhibbits added inline comments to D51619: kern: Introduce kexec system feature (MI).
Aug 25 2025, 5:13 PM

Aug 20 2025

jhibbits added reviewers for D52048: TPM: Add hint check to skip TPM IRQ configuration: kd, mw.
Aug 20 2025, 3:31 PM

Aug 14 2025

jhibbits committed rG69f7d6912a24: watchdog: Add a new "Control" ioctl (authored by jhibbits).
watchdog: Add a new "Control" ioctl
Aug 14 2025, 7:03 PM
jhibbits committed rG26d6617f3e54: watchdog: Convert to using sbintime_t format (authored by jhibbits).
watchdog: Convert to using sbintime_t format
Aug 14 2025, 7:03 PM
jhibbits closed D49183: watchdog: Convert to using sbintime_t format.
Aug 14 2025, 7:03 PM
jhibbits closed D49182: watchdog: Add a new "Control" ioctl.
Aug 14 2025, 7:03 PM

Aug 13 2025

jhibbits committed rGa685a263b803: uart: Add ns8250 ACPI entry for SPCR rev 2 (authored by jhibbits).
uart: Add ns8250 ACPI entry for SPCR rev 2
Aug 13 2025, 2:03 PM
jhibbits closed D51771: uart: Add ns8250 ACPI entry for SPCR rev 2.
Aug 13 2025, 2:02 PM
jhibbits updated the diff for D51771: uart: Add ns8250 ACPI entry for SPCR rev 2.

Update after latest probe changes.

Aug 13 2025, 1:46 PM
jhibbits retitled D51771: uart: Add ns8250 ACPI entry for SPCR rev 2 from uart: Add dummy ns8250 ACPI entry for SPCR rev 2 to uart: Add ns8250 ACPI entry for SPCR rev 2.
Aug 13 2025, 1:45 PM

Aug 12 2025

jhibbits added inline comments to D51623: amd64: Add kexec support.
Aug 12 2025, 8:31 PM
jhibbits updated the diff for D51624: x86/intr: Handle case of disabling MSI after release.

Address @kib's feedback.

Aug 12 2025, 7:06 PM
jhibbits accepted D51879: uart: Remove the unused cd_port_subtype.
Aug 12 2025, 6:56 PM
jhibbits accepted D51878: uart: Add UART_ACPI_SPCR_CLASS.

If it builds, it ships!

Aug 12 2025, 6:55 PM
jhibbits accepted D51877: uart: Remove UART_ACPI_CLASS.
Aug 12 2025, 6:42 PM
jhibbits updated the diff for D51771: uart: Add ns8250 ACPI entry for SPCR rev 2.

Address feedback. Added comment noting empty strings, and changed naked 0x12 to
the right constant.

Aug 12 2025, 2:37 PM

Aug 11 2025

jhibbits added inline comments to D51619: kern: Introduce kexec system feature (MI).
Aug 11 2025, 9:07 PM

Aug 7 2025

jhibbits added a comment to D51771: uart: Add ns8250 ACPI entry for SPCR rev 2.
In D51771#1182947, @imp wrote:

Weird, all the other devices that attach via SPCR don't need this entry. Are you sure it's still needed? I reworked things a bit ago...
Or is 0x12 some super magical thing...

Aug 7 2025, 1:06 PM

Aug 6 2025

jhibbits added a comment to D51771: uart: Add ns8250 ACPI entry for SPCR rev 2.
In D51771#1182758, @imp wrote:

Where / how is this used?

Aug 6 2025, 10:54 PM
jhibbits updated the diff for D51623: amd64: Add kexec support.

Address feedback.

Aug 6 2025, 9:03 PM
jhibbits updated the diff for D51621: kexec: Introduce basic arm64 support.

Address feedback

Aug 6 2025, 9:02 PM
jhibbits updated the diff for D51619: kern: Introduce kexec system feature (MI).

Address feedback. The change to vm_radix_insert, etc, is untested still (will
test in my VM shortly).

Aug 6 2025, 9:02 PM
jhibbits added a reviewer for D51771: uart: Add ns8250 ACPI entry for SPCR rev 2: imp.
Aug 6 2025, 8:51 PM
jhibbits requested review of D51771: uart: Add ns8250 ACPI entry for SPCR rev 2.
Aug 6 2025, 8:50 PM
jhibbits updated the diff for D49183: watchdog: Convert to using sbintime_t format.

Address feedback.

Aug 6 2025, 8:40 PM
jhibbits updated the diff for D49182: watchdog: Add a new "Control" ioctl.

Address @jhb's feedback.

Aug 6 2025, 8:39 PM
jhibbits added inline comments to D51619: kern: Introduce kexec system feature (MI).
Aug 6 2025, 3:33 PM
jhibbits added inline comments to D51619: kern: Introduce kexec system feature (MI).
Aug 6 2025, 3:04 PM
jhibbits updated subscribers of D51623: amd64: Add kexec support.
In D51623#1181603, @kib wrote:
In D51623#1181601, @kib wrote:

One global question I have, most likely you must execute the handoff and start executing the new kernel on AP, not BSPs. In other words. the reboot must migrate to AP if it not already did it.

Do you mean it needs to migrate to the BSP, and not run on the APs? kern_reboot() already binds to CPU_FIRST().

If you mean it should execute from an AP, is there a reason for that?

Yes, of course I mean 'kexec must occur on BSP'. Silly thinko.

I think the sched_bind(curthread, CPU_FIRST()) in kern_reboot() should suffice, then, but correct me if I'm wrong.

When we eventually add rescue support, to run from panic, that might need to change, but would likely be a different entry, too.

Generally CPU_FIRST() is not BSP, but it happen on amd64. On x86 we define BSP as cpuid == 0.

Aug 6 2025, 2:52 PM

Aug 4 2025

jhibbits added a comment to D51623: amd64: Add kexec support.
In D51623#1181601, @kib wrote:

One global question I have, most likely you must execute the handoff and start executing the new kernel on AP, not BSPs. In other words. the reboot must migrate to AP if it not already did it.

Do you mean it needs to migrate to the BSP, and not run on the APs? kern_reboot() already binds to CPU_FIRST().

If you mean it should execute from an AP, is there a reason for that?

Yes, of course I mean 'kexec must occur on BSP'. Silly thinko.

Aug 4 2025, 8:59 PM
jhibbits added inline comments to D51621: kexec: Introduce basic arm64 support.
Aug 4 2025, 6:36 PM
jhibbits added inline comments to D51621: kexec: Introduce basic arm64 support.
Aug 4 2025, 6:35 PM
jhibbits added a comment to D51623: amd64: Add kexec support.

One global question I have, most likely you must execute the handoff and start executing the new kernel on AP, not BSPs. In other words. the reboot must migrate to AP if it not already did it.

Aug 4 2025, 6:04 PM
jhibbits added a comment to D51620: syscalls: Regen after adding kexec_load syscall.
In D51620#1181458, @imp wrote:

You don't need to get this reviewed.

Aug 4 2025, 5:58 PM
jhibbits added inline comments to D51623: amd64: Add kexec support.
Aug 4 2025, 3:58 PM

Jul 31 2025

jhibbits added inline comments to D51619: kern: Introduce kexec system feature (MI).
Jul 31 2025, 12:29 PM
jhibbits added inline comments to D51619: kern: Introduce kexec system feature (MI).
Jul 31 2025, 3:18 AM

Jul 30 2025

jhibbits abandoned D47358: rescue: Implement a direct dumper for arm64 and amd64.

Abandoned in favor of the kexec stack.

Jul 30 2025, 7:50 PM
jhibbits added a comment to D51622: amd64: Add cpu_stop() support to go UP after SMP.
In D51622#1179455, @kib wrote:

In fact, I retract my proposal with the INIT IPI. If SMI is broadcasted, other CPUs would not enter the SMI handler, and the sending CPU most likely hang waiting for the reply.

So yes, the cli;hlt loop is the best, but it should be executed from the memory which is not overwritten during kexec.

Jul 30 2025, 7:19 PM
jhibbits added inline comments to D51621: kexec: Introduce basic arm64 support.
Jul 30 2025, 6:59 PM
jhibbits added a comment to D51622: amd64: Add cpu_stop() support to go UP after SMP.

I should add that this is sort of how Linux does it as well (synchronize, disable interrupts, go catatonic and hope for the best)

Jul 30 2025, 6:47 PM
jhibbits added a comment to D51622: amd64: Add cpu_stop() support to go UP after SMP.
In D51622#1179431, @kib wrote:
In D51622#1179429, @kib wrote:
In D51622#1179347, @kib wrote:

Why do we need this at all? Why cannot you use e.g. stop_cpus() or stop_cpus_hard() or even smp_rendezvous() to do that? It can be done in MI, and definitely does not require new IPI vector.

The purpose of this is to make the CPU go catatonic so that it requires a core reset to continue. The handler disables all interrupts before going catatonic, so it requires the LAPIC INIT sequence to restore. We don't want the CPU to execute any other instructions until reset because the memory may have been overwritten.

Then explain this, at least as a comment in the code.

Jul 30 2025, 6:39 PM
jhibbits added a comment to D51622: amd64: Add cpu_stop() support to go UP after SMP.
In D51622#1179347, @kib wrote:

Why do we need this at all? Why cannot you use e.g. stop_cpus() or stop_cpus_hard() or even smp_rendezvous() to do that? It can be done in MI, and definitely does not require new IPI vector.

Jul 30 2025, 5:17 PM
jhibbits added inline comments to D51619: kern: Introduce kexec system feature (MI).
Jul 30 2025, 5:15 PM
jhibbits added inline comments to D51625: kexec: Add dummy headers for powerpc, arm, and riscv.
Jul 30 2025, 2:35 PM
jhibbits added inline comments to D51621: kexec: Introduce basic arm64 support.
Jul 30 2025, 1:54 PM

Jul 29 2025

jhibbits requested review of D51625: kexec: Add dummy headers for powerpc, arm, and riscv.
Jul 29 2025, 6:56 PM
jhibbits requested review of D51624: x86/intr: Handle case of disabling MSI after release.
Jul 29 2025, 6:56 PM
jhibbits requested review of D51623: amd64: Add kexec support.
Jul 29 2025, 6:56 PM
jhibbits requested review of D51622: amd64: Add cpu_stop() support to go UP after SMP.
Jul 29 2025, 6:56 PM
jhibbits requested review of D51621: kexec: Introduce basic arm64 support.
Jul 29 2025, 6:55 PM
jhibbits requested review of D51620: syscalls: Regen after adding kexec_load syscall.
Jul 29 2025, 6:55 PM
jhibbits requested review of D51619: kern: Introduce kexec system feature (MI).
Jul 29 2025, 6:55 PM

Jul 21 2025

jhibbits committed rG6e211ff4902a: libc/powerpc64: Fix swapcontext(3) (authored by tpearson_raptorengineering.com).
libc/powerpc64: Fix swapcontext(3)
Jul 21 2025, 3:05 AM
jhibbits committed rG90a9ce456740: powerpc: Fix multiple issues with FP/VSX save/restore (authored by tpearson_raptorengineering.com).
powerpc: Fix multiple issues with FP/VSX save/restore
Jul 21 2025, 3:05 AM
jhibbits committed rGe04d629d5394: powerpc: Reserve correct scratch region size below stack (authored by tpearson_raptorengineering.com).
powerpc: Reserve correct scratch region size below stack
Jul 21 2025, 3:05 AM

Jul 13 2025

jhibbits committed rG8efa35fea384: libc/powerpc64: Fix swapcontext(3) (authored by tpearson_raptorengineering.com).
libc/powerpc64: Fix swapcontext(3)
Jul 13 2025, 6:03 PM
jhibbits committed rG077e30e61d7e: powerpc: Fix multiple issues with FP/VSX save/restore (authored by tpearson_raptorengineering.com).
powerpc: Fix multiple issues with FP/VSX save/restore
Jul 13 2025, 6:03 PM
jhibbits committed rG645bb3efc320: powerpc: Reserve correct scratch region size below stack (authored by tpearson_raptorengineering.com).
powerpc: Reserve correct scratch region size below stack
Jul 13 2025, 6:02 PM

Jul 11 2025

jhibbits added inline comments to D44274: ossl: Add GCM support on powerpc64/powerpc64le (POWER8+).
Jul 11 2025, 6:46 PM

Jun 25 2025

jhibbits committed rG0d7abc6e1f78: IfAPI: Finish etherswitch driver conversions (authored by jhibbits).
IfAPI: Finish etherswitch driver conversions
Jun 25 2025, 8:02 PM
jhibbits committed rG564df56098e0: nexus: Add device_shutdown where missing (authored by jhibbits).
nexus: Add device_shutdown where missing
Jun 25 2025, 8:02 PM

Jun 2 2025

jhibbits added a comment to D44274: ossl: Add GCM support on powerpc64/powerpc64le (POWER8+).

Is there anything blocking this now?

Jun 2 2025, 6:42 PM

May 30 2025

jhibbits added inline comments to D50590: stand: Add mod_align_size variable.
May 30 2025, 4:04 PM
jhibbits added inline comments to D50590: stand: Add mod_align_size variable.
May 30 2025, 3:41 PM
jhibbits accepted D50587: stand: Retire arch_loadaddr, pending its replacement.

Math checks out. Haven't tested, but looks correct to me. I'll test it later, and won't hold it up.

May 30 2025, 2:56 PM

May 29 2025

jhibbits accepted D50585: stand: Introduce md_align.
May 29 2025, 12:58 PM
jhibbits accepted D50588: style: Use static consistently.
May 29 2025, 12:57 PM

May 27 2025

jhibbits accepted D50445: convert_ifapi: handle the special case of getting interface name.
May 27 2025, 3:32 PM

May 15 2025

jhibbits committed rGac1943f97c01: powerpc: Always use BE tag in nexus_map_resource (authored by jhibbits).
powerpc: Always use BE tag in nexus_map_resource
May 15 2025, 1:08 PM
jhibbits committed rG45d585ab7f22: powerpc: Always use BE tag in nexus_map_resource (authored by jhibbits).
powerpc: Always use BE tag in nexus_map_resource
May 15 2025, 1:50 AM

May 14 2025

jhibbits added a reverting change for rG86d20eaadfd1: powernv: Add RF_BIGENDIAN resource flag: rGbf2166bd72ad: Revert "powernv: Add RF_BIGENDIAN resource flag".
May 14 2025, 1:50 PM
jhibbits committed rGbf2166bd72ad: Revert "powernv: Add RF_BIGENDIAN resource flag" (authored by jhibbits).
Revert "powernv: Add RF_BIGENDIAN resource flag"
May 14 2025, 1:50 PM

May 13 2025

jhibbits committed rG86d20eaadfd1: powernv: Add RF_BIGENDIAN resource flag (authored by jhibbits).
powernv: Add RF_BIGENDIAN resource flag
May 13 2025, 10:47 PM
jhibbits added inline comments to D48482: sound: Simplify locking during device creation.
May 13 2025, 5:03 PM
jhibbits committed rGc4921a0faaf1: powerpc: Always use BE tag in nexus_map_resource (authored by jhibbits).
powerpc: Always use BE tag in nexus_map_resource
May 13 2025, 2:29 AM

May 12 2025

jhibbits updated the diff for D42982: powerpc: Add first Linuxulator support (ELFv1, BE, powerpc64).

Eliminate (most of) the ifdef soup in linux_ioctl.h by following @imp's suggestion.

May 12 2025, 2:50 AM

May 9 2025

jhibbits requested changes to D50264: wtap build error - missing header file.
May 9 2025, 4:57 PM · wireless
jhibbits added a comment to D50264: wtap build error - missing header file.

I'm not sure why this was never connected to the build, I would have fixed it during my IfAPI work if it were connected then.

May 9 2025, 4:57 PM · wireless

Apr 29 2025

jhibbits added inline comments to D49182: watchdog: Add a new "Control" ioctl.
Apr 29 2025, 3:13 AM

Apr 17 2025

jhibbits accepted D49868: kboot: Implement data_from_kernel to read kernel variables.
Apr 17 2025, 6:11 PM
jhibbits accepted D49866: kboot/amd64: Use segs framework to find kernel location.
Apr 17 2025, 4:00 PM
jhibbits accepted D49867: kboot/amd64: Use efi_bi_loadsmap in bi_loadsmap.
Apr 17 2025, 4:00 PM
jhibbits accepted D49864: kboot/amd64: Use common routines for memory map parsing.
Apr 17 2025, 3:09 PM
jhibbits accepted D49863: kboot: Move common EFI stuff from aarch64 to libkboot.
Apr 17 2025, 3:02 PM
jhibbits accepted D49862: kboot: Method to populate the avail array from EFI map.
Apr 17 2025, 1:44 PM