- User Since
- Jun 6 2018, 11:31 PM (75 w, 5 d)
Sun, Nov 17
Actually initialize uses_funcdesc properly.
Sat, Nov 16
Thu, Nov 14
Looks good to me too.
Wed, Nov 13
Fix the powerpcspe linker script as well.
Sat, Nov 9
Sun, Nov 3
Note to anyone confused about PPC_ABI being specific to ppc64: The powerpc and powerpcspe abi is NOT changing (only the compiler), as there is no such thing as 32 bit ELFv2 ABI.
Sat, Nov 2
Splitting the opcode dumping format character out to a separate diff.
Update patch to properly fix gcc / clang differences in warning flags.
Wed, Oct 23
Tested previously on GCC4 kernel on X5000.
Remove an unnecessary patch band.
updating inline comments
Addressing review comments.
Oct 16 2019
Needs rework for recent libcompat changes.
Needs reroll after the massive libcompat changes settle down.
Oct 15 2019
Tested on G4 in combination with D22041.
X5000: OK with one caveat -- I currently have to disable ehci.
G4 appears to be working now when using markj's patch on top of this.
ok, rebuilt with nooptions vt so the ofw console stays up.
screenshot of the backtrace at http://drop.rtk0.net/IMG_1255.JPG
G4: panic: vm_page_free_prep: mapping flags set in page 0xd032c9f8
X5000: Gets further, hangs with witness lock held too long on usbd_ctrl_lock during "sh /etc/rc autoboot" (Probably a separate issue)
RB800: Not tested yet
G4: Not tested yet
I don't see an actual change for flags -> pmap_flags in mmu_booke_enter_locked(), did you upload the right diff?
booke compile errors.
Oct 12 2019
Tested on X5000 w/ clang9 kernel.
Needs reroll due to recent changes in Makefile.libcompat. (Although lld ppc32 support is coming along which will render this moot anyway)
adding some misc. notes inline
Oct 11 2019
Oh, looks like it's on top of D21947.
Hmm, none of this is applying for me. Where did the aarch64 version come from? I'm not seeing it in svn.
Sep 28 2019
Sep 23 2019
re: the build.rs patch, perhaps use EXTRA_PATCHES inside a conditional in the Makefile?
Sep 14 2019
Sep 10 2019
Sep 9 2019
Sep 7 2019
Sep 6 2019
Hmm, calculations on powerpc64 seem to be offset incorrectly in both cases with the patched lld. Gonna meditate on a disassembly for a bit.
Sep 1 2019
Interesting thought. That seems to me like it should also help a lot with the logic in ld.bfd as well.
Aug 30 2019
Aug 17 2019
The new KERNBASE allows my RB800 to boot without having to modify it, so that's a definite improvement there.
Will check for regression on G4 / G5 / POWER9 (and maybe test the X5000, if I can finally get uboot loader set up on it so I don't have to futz with mkimg to build test kernels) tomorrow.
on MPC85XXSPE build:
Aug 8 2019
removing belt&suspenders bit.
Aug 7 2019
Jul 26 2019
ELFv1 and ELFv2 buildworld worked fine.
Boots on ELFv1 and ELFv2. Doing a buildworld to excercise it a bit.
Jul 25 2019
That's up to jhibbits.
Jul 24 2019
My patch seemed to fix things. I was able to buildworld and installworld (after rolling base back to a non crashy version).
Jul 23 2019
I'm going to try this and see if it works:
Actually, we might be able to determine what format the aux vector is by heuristics.
OK, with OLD_AT_COUNT dropped down to 27, it continues working (whether or not I use 32 or 27 in exec_copyout_strings(), so it looks like it will continue to work even if the normal AT_COUNT is incremented in the future.)
Jul 22 2019
Yep, that did it. exec_copyout_strings() needs to use the correct size for the aux vector or it will screw things up somehow.
I built a test program to examine auxv (or at least libc's idea of it): http://drop.rtk0.net/auxv.c
Yeah, I had bumped both of the sys/sys/param.h lines to 1300037.
Yeah, I had. Bumped both in sys/sys/param.h. Getting back into the machine to double check that I didn't do something silly with that now.
Jul 20 2019
Hmm, additionally, it looks like AT_EXECPATH is damaged, because I can't use /rescue/sh either, it just comes up with the usage.
elfv1, new kernel, old userland:
Jul 13 2019
Jul 7 2019
Makes sense to me. That's the same sort of thing that chrp_mem_regions() is doing to determine it for its own purposes.
Jul 1 2019
Not 100% sure, but I think you should skip the logic if either _NO_INCLUDE_COMPILERMK or _NO_INCLUDE_LINKERMK is defined. That appears to be what controls the variables not being defined.
Jun 28 2019
Looks like r344264 and r344798 have fixed this independently.
Jun 27 2019
Maybe move the EM_PPC: case down to right before the edesc = powerpc_eflags_desc; line and explicitly fall through there so that the e_flags code only runs on ppc64 and not ppc32, but both of them do the edesc?
Jun 25 2019
Will address comments and catch up with the latest API changes soon. Poking at it this evening.
Jun 24 2019
Current version tested on iBook G4, still works.
Current version also tested on rb800 (powerpcspe), works as well.
Jun 14 2019
I like the idea, it beats having to compile a custom kernel. This is also relevant on some of my macintoshes, where the keyboard works in OFW but not in the kernel debugger when I have an early crash.
Jun 13 2019
Over in powerpc land, we've been chasing crashes with dpcpu and vnet as well. Our current prospective fix is https://reviews.freebsd.org/D20461 but we don't understand why it seems to fix it.
Jun 12 2019
needs reroll, the backport of most of this landed with r349004.
Jun 11 2019
fix style(9) issue.