nwhitehorn (Nathan Whitehorn)
User

Projects

User Details

User Since
Sep 10 2014, 9:01 PM (175 w, 8 h)

Recent Activity

Yesterday

nwhitehorn accepted D13949: KDB: restart only CPUs stopped by KDB.
Wed, Jan 17, 3:37 PM
nwhitehorn added a comment to D13948: PPC: machdep, zero BSS always but BookE.

I think this is fine. Have you tested on loader-using hardware (Apple, IBM paravirtualized)? I have some vague memory this was needed on Apple hardware.

Wed, Jan 17, 3:36 PM
nwhitehorn accepted D13947: PPC64: fix TOC behavior on process initialization.

Nice catch. Thanks!

Wed, Jan 17, 3:33 PM

Mon, Jan 15

nwhitehorn added a comment to D13916: Add big-endian support to NVMe.

I agree with Warner's comments -- if there is any other way to do the endian conversions at all, we should.

Mon, Jan 15, 4:48 PM
nwhitehorn committed rS328004: Install the SLB miss trap-handling code in the SLB-based MMU driver set up,.
Install the SLB miss trap-handling code in the SLB-based MMU driver set up,
Mon, Jan 15, 4:08 PM
nwhitehorn accepted D13857: PowerNV: XICS support for PowerNV/OPAL.

Looks good to me. Thanks!

Mon, Jan 15, 3:52 PM
nwhitehorn committed rS327992: Move the pmap-specific code in copyinout.c that gets pointers to userland.
Move the pmap-specific code in copyinout.c that gets pointers to userland
Mon, Jan 15, 6:46 AM

Sat, Jan 13

nwhitehorn committed rS327950: Document places we assume that physical memory is direct-mapped at zero by.
Document places we assume that physical memory is direct-mapped at zero by
Sat, Jan 13, 11:15 PM
nwhitehorn accepted D13893: libfdt: Update to 1.4.6, switch stand/fdt over to using libfdt for overlay support.

Works just fine on PowerPC.

Sat, Jan 13, 11:04 PM
nwhitehorn committed rS327908: Chase removal of FDT fixup code on PowerPC in r327907..
Chase removal of FDT fixup code on PowerPC in r327907.
Sat, Jan 13, 3:09 AM

Fri, Jan 12

nwhitehorn added a comment to D13857: PowerNV: XICS support for PowerNV/OPAL.

It would be good if we could add some #ifdef here such that it still builds without both PSERIES and POWERNV in the kernel (especially the latter, as committing this will break all custom PSERIES kernels as-is). Other than that, it looks good to me.

Fri, Jan 12, 4:03 PM

Tue, Jan 9

nwhitehorn committed rS327736: Add XHCI support to powerpc64 GENERIC. This is useful to get input devices.
Add XHCI support to powerpc64 GENERIC. This is useful to get input devices
Tue, Jan 9, 7:41 PM

Thu, Jan 4

nwhitehorn committed rS327566: Revert r327360, which can cause boot problems on high-CPU-count (>60).
Revert r327360, which can cause boot problems on high-CPU-count (>60)
Thu, Jan 4, 11:08 PM

Tue, Jan 2

nwhitehorn committed rS327487: Add installer support for PS3 and PowerNV systems, also laying the.
Add installer support for PS3 and PowerNV systems, also laying the
Tue, Jan 2, 5:27 AM
nwhitehorn committed rS327486: Skip errors from being unable to set modification and creation times. If.
Skip errors from being unable to set modification and creation times. If
Tue, Jan 2, 5:23 AM
nwhitehorn committed rS327484: Fix reversed endianness that crept in at some point. Blue is now blue.
Fix reversed endianness that crept in at some point. Blue is now blue
Tue, Jan 2, 4:00 AM

Mon, Jan 1

nwhitehorn committed rS327456: After removal of loader.ps3, change petitboot configuration in release media.
After removal of loader.ps3, change petitboot configuration in release media
Mon, Jan 1, 3:33 AM

Sun, Dec 31

nwhitehorn committed rS327445: Remove PIR from PCPU data. It has an implementation-defined meaning that.
Remove PIR from PCPU data. It has an implementation-defined meaning that
Sun, Dec 31, 8:23 PM
nwhitehorn committed rS327443: Fix 32-bit build..
Fix 32-bit build.
Sun, Dec 31, 8:21 PM
nwhitehorn committed rS327442: Make newer binutils happy by using a bl-type branch instead of b, which.
Make newer binutils happy by using a bl-type branch instead of b, which
Sun, Dec 31, 8:10 PM
nwhitehorn committed rS327441: Provide relative, as well as absolute, addresses in trap panic panics. This.
Provide relative, as well as absolute, addresses in trap panic panics. This
Sun, Dec 31, 8:08 PM
nwhitehorn committed rS327418: Use data from the boot loader to pick the appropriate output graphics mode.
Use data from the boot loader to pick the appropriate output graphics mode
Sun, Dec 31, 6:10 AM
nwhitehorn committed rS327417: Make sure the first instruction of the low-memory spinloop is in the.
Make sure the first instruction of the low-memory spinloop is in the
Sun, Dec 31, 5:38 AM
nwhitehorn committed rS327405: Teach bsdinstall partedit/sade how to format FAT partitions on GPT, which.
Teach bsdinstall partedit/sade how to format FAT partitions on GPT, which
Sun, Dec 31, 3:14 AM

Sat, Dec 30

nwhitehorn committed rS327391: Avoid use of the fdt_get_property_*() API, which is intrinsically.
Avoid use of the fdt_get_property_*() API, which is intrinsically
Sat, Dec 30, 8:28 PM
nwhitehorn committed rS327390: Garbage-collect loader.ps3. It is currently disconnected from the build and.
Garbage-collect loader.ps3. It is currently disconnected from the build and
Sat, Dec 30, 8:27 PM
nwhitehorn committed rS327389: Remove logic for early console with loader.ps3 now that loader.ps3 is dead..
Remove logic for early console with loader.ps3 now that loader.ps3 is dead.
Sat, Dec 30, 8:25 PM
nwhitehorn committed rS327388: Change the way SMP startup works to match the new multi-AP features in.
Change the way SMP startup works to match the new multi-AP features in
Sat, Dec 30, 8:24 PM
nwhitehorn committed rS327387: Check more aggressively for whether the desired properties actually exist..
Check more aggressively for whether the desired properties actually exist.
Sat, Dec 30, 8:23 PM

Fri, Dec 29

nwhitehorn committed rS327363: IFC @ r327361.
IFC @ r327361
Fri, Dec 29, 10:13 PM
nwhitehorn committed rS327360: Enhance the CHRP/pSeries platform layer:.
Enhance the CHRP/pSeries platform layer:
Fri, Dec 29, 9:09 PM
nwhitehorn committed rS327358: Add support for 64-bit PowerPC kernels to be directly loaded by kexec, which.
Add support for 64-bit PowerPC kernels to be directly loaded by kexec, which
Fri, Dec 29, 8:30 PM
nwhitehorn committed rS327357: Maintain alignment of in-code 64-bit quantities by design rather than luck..
Maintain alignment of in-code 64-bit quantities by design rather than luck.
Fri, Dec 29, 8:25 PM

Thu, Dec 28

nwhitehorn committed rS327318: Remove ELF note for Open Firmware. It is marked optional in a single 1996.
Remove ELF note for Open Firmware. It is marked optional in a single 1996
Thu, Dec 28, 11:50 PM
nwhitehorn committed rS327258: Fix bug introduced in r326674, in which efi boot partitions created by.
Fix bug introduced in r326674, in which efi boot partitions created by
Thu, Dec 28, 1:21 AM

Tue, Dec 19

nwhitehorn committed rS326981: The highest-order bit of the bootloader cookie is 1, with the result that.
The highest-order bit of the bootloader cookie is 1, with the result that
Tue, Dec 19, 4:45 PM
nwhitehorn committed rS326978: Make __startkernel line up with KERNBASE, so that the math to compute the.
Make __startkernel line up with KERNBASE, so that the math to compute the
Tue, Dec 19, 3:51 PM

Dec 8 2017

nwhitehorn committed rS326674: Support mounted boot partitions in the installer. This allows the platform.
Support mounted boot partitions in the installer. This allows the platform
Dec 8 2017, 12:57 AM

Nov 28 2017

nwhitehorn committed rS326310: Back out OF module installation in the event of failure. PS3 firmware gives.
Back out OF module installation in the event of failure. PS3 firmware gives
Nov 28 2017, 6:31 AM
nwhitehorn committed rS326308: Remove assertion that a CPU be present before returning a PCPU for it. It.
Remove assertion that a CPU be present before returning a PCPU for it. It
Nov 28 2017, 5:40 AM

Nov 26 2017

nwhitehorn committed rS326222: Remove another extern int n_slbs made redundant by declaring this in.
Remove another extern int n_slbs made redundant by declaring this in
Nov 26 2017, 4:34 AM
nwhitehorn committed rS326221: IFC @ r326220.
IFC @ r326220
Nov 26 2017, 4:20 AM
nwhitehorn committed rS326220: Use the cookie now set by loader to determine whether the value passed to.
Use the cookie now set by loader to determine whether the value passed to
Nov 26 2017, 3:53 AM

Nov 25 2017

nwhitehorn committed rS326218: Remove some, but not all, assumptions that the BSP is CPU 0 and that CPUs.
Remove some, but not all, assumptions that the BSP is CPU 0 and that CPUs
Nov 25 2017, 11:41 PM
nwhitehorn committed rS326217: Avoid assumptions about the BSP being CPU 0..
Avoid assumptions about the BSP being CPU 0.
Nov 25 2017, 11:23 PM
nwhitehorn committed rS326216: On AIM systems, it is not actually possible to stop the CPU timer, so we.
On AIM systems, it is not actually possible to stop the CPU timer, so we
Nov 25 2017, 10:44 PM
nwhitehorn committed rS326215: Return base IRQ of PIC when added and massively increase the number of.
Return base IRQ of PIC when added and massively increase the number of
Nov 25 2017, 10:42 PM
nwhitehorn committed rS326214: Missed gate on __powerpc64__ for setting LPCR in r326207..
Missed gate on __powerpc64__ for setting LPCR in r326207.
Nov 25 2017, 10:16 PM
nwhitehorn committed rS326213: When booting from an FDT, make sure the FDT itself isn't included the range.
When booting from an FDT, make sure the FDT itself isn't included the range
Nov 25 2017, 10:14 PM
nwhitehorn committed rS326212: Allow platform modules to set the size of large pizes, as potentially.
Allow platform modules to set the size of large pizes, as potentially
Nov 25 2017, 10:13 PM
nwhitehorn committed rS326211: Invalidate TLB at boot using the correct IS settings on newer-than-POWER5.
Invalidate TLB at boot using the correct IS settings on newer-than-POWER5
Nov 25 2017, 10:10 PM
nwhitehorn committed rS326210: Definitions for registers and trap types found on new POWER CPUs..
Definitions for registers and trap types found on new POWER CPUs.
Nov 25 2017, 10:08 PM
nwhitehorn committed rS326209: Missed platform_smp_timebase_sync() in r326205..
Missed platform_smp_timebase_sync() in r326205.
Nov 25 2017, 10:07 PM
nwhitehorn committed rS326208: Make n_slbs public in a more straightforward way. Some platforms (like.
Make n_slbs public in a more straightforward way. Some platforms (like
Nov 25 2017, 10:05 PM
nwhitehorn committed rS326207: Preserve the LPCR on new-ish (POWER7 and POWER8) CPUs, preventing exceptions.
Preserve the LPCR on new-ish (POWER7 and POWER8) CPUs, preventing exceptions
Nov 25 2017, 10:03 PM
nwhitehorn committed rS326206: Yield while spinning on APs and avoid announcing all CPUs unless bootverbose.
Yield while spinning on APs and avoid announcing all CPUs unless bootverbose
Nov 25 2017, 10:02 PM
nwhitehorn committed rS326205: Whether you can use mttb() or not is more complicated than whether PSL_HV.
Whether you can use mttb() or not is more complicated than whether PSL_HV
Nov 25 2017, 10:00 PM
nwhitehorn committed rS326204: Do not bind to CPUs with SMT, which use a different CPU numbering convention.
Do not bind to CPUs with SMT, which use a different CPU numbering convention
Nov 25 2017, 9:47 PM
nwhitehorn committed rS326203: Avoid emitting a PT_INTERP section for powerpc64 kernels and arrange for.
Avoid emitting a PT_INTERP section for powerpc64 kernels and arrange for
Nov 25 2017, 9:46 PM
nwhitehorn committed rS326202: Automatically use the ELFv2 ABI on powerpc64 if supported by the compiler..
Automatically use the ELFv2 ABI on powerpc64 if supported by the compiler.
Nov 25 2017, 9:44 PM
nwhitehorn committed rS326201: IFC @ r326200.
IFC @ r326200
Nov 25 2017, 9:31 PM

Nov 24 2017

nwhitehorn committed rS326182: Modify all FreeBSD bootloaders on PowerPC AIM (Book-S) systems to pass a.
Modify all FreeBSD bootloaders on PowerPC AIM (Book-S) systems to pass a
Nov 24 2017, 11:41 PM
nwhitehorn committed rS326171: Switch the default firmware for npe(4) from the QOS_VLAN one to the.
Switch the default firmware for npe(4) from the QOS_VLAN one to the
Nov 24 2017, 3:48 PM

Sep 29 2017

nwhitehorn accepted D12540: PPC: increase MAX_PICS to 32.

Looks good to me. A better, longer-term, change would be to replace this list entirely with a dynamically allocated linked list or something. It isn't used in early boot (before malloc), or from assembly, or from anywhere performance-critical, so there's really no reason to keep it like this.

Sep 29 2017, 2:53 PM

Sep 22 2017

nwhitehorn accepted D12421: Compile loader as Little-Endian on PPC64/POWER8.
In D12421#258230, @wma wrote:

Oh, I indeed forgot to add -U9999 to the format-patch, sorry.

As for the installation of fbsd on P8, I have a plan to investigate what can be done to make the petitboot running the freebsd kernel or loader netively.
I see two solutions - just ideas, I didn't check their feasibility yet:

  1. Modify kexec+petitboot to understand freebsd kernel. Right now it finds that the ELF is relocatable and refuses to go further. Most likely it would require porting loader.kboot into petitboot.
Sep 22 2017, 8:28 PM

Sep 20 2017

nwhitehorn added a comment to D12421: Compile loader as Little-Endian on PPC64/POWER8.

OK. That's a pain to deal with. However, I'm not sure how we would make, say, ppc64 install media that include a usable loader.kboot in this configuration along with other cis-endian loaders. Maybe the answer is that we don't, that we use direct kexec() of our kernel (from the powernv branch) on install media, and leave a usable loader.kboot as an optional feature that people have to set up by hand?

Sep 20 2017, 3:20 PM
nwhitehorn added a comment to D12421: Compile loader as Little-Endian on PPC64/POWER8.

How does this interact with the libstand build, which also needs to be little-endian? Is there a way to make the build system create both loader.kbootbe and loader.kbootle (or the like) by default, rather than relying on a custom build flag?

Sep 20 2017, 2:13 PM

Sep 19 2017

nwhitehorn committed rS323773: Instead of relying on extra linker options present only in post-tree binutils,.
Instead of relying on extra linker options present only in post-tree binutils,
Sep 19 2017, 6:18 PM
nwhitehorn committed rS323771: Avoid going into an infinite decrementer interrupt loop if the kernel.
Avoid going into an infinite decrementer interrupt loop if the kernel
Sep 19 2017, 5:12 PM

Sep 18 2017

nwhitehorn committed rS323713: Work around yet another kexec-lite bug: no reserved entry is added for the.
Work around yet another kexec-lite bug: no reserved entry is added for the
Sep 18 2017, 6:44 PM
nwhitehorn committed rS323698: Work around odd behavior in kexec-lite: it requires that there be no INTERP.
Work around odd behavior in kexec-lite: it requires that there be no INTERP
Sep 18 2017, 6:00 AM

Sep 17 2017

nwhitehorn committed rS323688: Turn on ELFv2 kernels by default if we have a capable toolchain (GCC >= 4.9)..
Turn on ELFv2 kernels by default if we have a capable toolchain (GCC >= 4.9).
Sep 17 2017, 9:42 PM
nwhitehorn committed rS323686: Fix use of wrong (and unitialized) variable.
Fix use of wrong (and unitialized) variable
Sep 17 2017, 7:54 PM
nwhitehorn committed rS323685: Make sure to record the BSP's hwref. This previously worked by accident since.
Make sure to record the BSP's hwref. This previously worked by accident since
Sep 17 2017, 7:54 PM
nwhitehorn committed rS323682: IFC @ 323679. Continues to boot multiuser in QEMU..
IFC @ 323679. Continues to boot multiuser in QEMU.
Sep 17 2017, 7:12 PM

Aug 12 2017

nwhitehorn committed rS322443: Move NVME controller shutdown from being called as part of module unloading.
Move NVME controller shutdown from being called as part of module unloading
Aug 12 2017, 10:13 PM

Aug 9 2017

nwhitehorn accepted D11879: Enable OF_setprop API function to add property in FDT.

Yes, I think that's fine. Sorry for the delay. Insofar as we keep this API existing, it should work properly and this patch helps achieve that. Please be careful using it, and, if you have some spare cycles, it would be worth thinking about how to make it more reliable still.

Aug 9 2017, 2:42 PM · ARM

Aug 8 2017

nwhitehorn accepted D11876: Enable parsing simple-bus 'ranges' with multiple entries.

Looks good. We may need to think some more about the implementation of this function if we need to bump it again, but I cannot think of a better approach offhand.

Aug 8 2017, 3:11 PM · ARM
nwhitehorn accepted D11878: Add support for "compatible" parameter in ofw_fdt_fixup.

Aside from my general objections to the whole concept of "fixups", this looks good.

Aug 8 2017, 3:09 PM · ARM
nwhitehorn added a comment to D11879: Enable OF_setprop API function to add property in FDT.

Is this expected to actually work with FDT? I had thought the limitation was just that there is no free space in our FDTs, and we don't reallocate them, so that -- in general -- you can't add properties. You certainly can't on my hardware.

Aug 8 2017, 3:07 PM · ARM
nwhitehorn accepted D11880: Enable using ofw_bus_find_compatible in early platform code.

Looks good to me.

Aug 8 2017, 3:05 PM · ARM

Mar 8 2017

nwhitehorn added a comment to D9700: Add new option to bsdinstall hardening menu to disable insecure console and update stack guard option.

Related to Allan's point, nothing in the hardening menu should ever be turned on by default. If we want to change the system defaults, we should change the system defaults. Having the defaults be different depending on whether the installer is used to set up the system is a super bad idea and one I would object to vigorously.

Mar 8 2017, 11:11 PM

Sep 7 2016

nwhitehorn added inline comments to D7799: iflib: Use CPU_FFS correctly.
Sep 7 2016, 4:22 PM
nwhitehorn added inline comments to D7799: iflib: Use CPU_FFS correctly.
Sep 7 2016, 6:55 AM

Sep 5 2016

nwhitehorn added a comment to D7571: Support for PCIe on Annapurna Alpine.

it's able to enumerate devices which are present in DTS under the PCI-controller node, which are not PCI devices

I don't think that this is right. The nodes under PCI-controller node describes configuration for individual ports of PCIe root complex, these are part of PCIe-controller configuration.
These are not a independent devices at all so instantiation new newbus devices for them looks like pure nonsense.

Sep 5 2016, 10:16 AM
nwhitehorn added a comment to D7571: Support for PCIe on Annapurna Alpine.
In D7571#161529, @wma wrote:

In general, pci_generic contains one feature which ofw_pci lacks: it's able to enumerate devices which are present in DTS under the PCI-controller node, which are not PCI devices. I know this is a mess and does not comply with standard nor logic, but some arm64-vendors are using this type of DTSes and by now it is hard to convince them to fix DTS once it's already been put into production.

Sep 5 2016, 8:51 AM

Sep 2 2016

nwhitehorn committed rS305267: MFS11 r305250:.
MFS11 r305250:
Sep 2 2016, 1:42 AM
nwhitehorn committed rS305266: MFS11 r305249:.
MFS11 r305249:
Sep 2 2016, 12:46 AM

Sep 1 2016

nwhitehorn committed rS305250: MFC r305108,305109:.
MFC r305108,305109:
Sep 1 2016, 10:28 PM
nwhitehorn committed rS305249: MFC r305036:.
MFC r305036:
Sep 1 2016, 10:24 PM
nwhitehorn accepted D7692: MIPS: Fix cpu_establish_[hard|soft]intr() post r304459.
Sep 1 2016, 12:09 AM · MIPS
nwhitehorn added a comment to D7692: MIPS: Fix cpu_establish_[hard|soft]intr() post r304459.

This looks good to me.

Sep 1 2016, 12:08 AM · MIPS

Aug 31 2016

nwhitehorn committed rS305109: Back out misfired extra file in r305108..
Back out misfired extra file in r305108.
Aug 31 2016, 4:04 AM
nwhitehorn committed rS305108: Refix operation on sparse CPU mappings as in r302372, temporarily broken.
Refix operation on sparse CPU mappings as in r302372, temporarily broken
Aug 31 2016, 4:03 AM

Aug 30 2016

nwhitehorn committed rS305036: Some versions of SLOF do not append the partition number to the boot.
Some versions of SLOF do not append the partition number to the boot
Aug 30 2016, 12:47 AM

Aug 29 2016

nwhitehorn added a comment to D7663: Attach and LAW problems to fix.

Looks Ok to me. Any idea why things were set up this way to begin with?

Aug 29 2016, 7:06 PM · PowerPC

Aug 28 2016

nwhitehorn accepted D7676: Check all compatible strings on uart devices in powerpc.

Looks good. Thanks!

Aug 28 2016, 9:27 PM

Aug 26 2016

nwhitehorn added a comment to D7571: Support for PCIe on Annapurna Alpine.

Looks good. I had two remaining comments, neither of which should block merging:

  1. I think this would be better to inherit from ofwpci than pci_generic, since the code just works around all the things pci_generic adds to ofwpci.
  2. The DTS bindings being used don't match the vendor ones. Barring some compelling reason to diverge, I think we should use the vendor's device trees.
Aug 26 2016, 5:30 PM

Aug 24 2016

nwhitehorn committed rS304756: Close a race when making the CPU idle under pHyp. If an interrupt occurs.
Close a race when making the CPU idle under pHyp. If an interrupt occurs
Aug 24 2016, 4:49 PM
nwhitehorn committed rS304726: Fix some SMP issues:.
Fix some SMP issues:
Aug 24 2016, 3:44 AM