Page MenuHomeFreeBSD

markmi_dsl-only.net (Mark Millard)
User

Projects

User does not belong to any projects.

User Details

User Since
Nov 19 2016, 6:23 AM (176 w, 2 d)

Recent Activity

Feb 28 2020

markmi_dsl-only.net added a comment to D15955: Discover cards on boot.

I have removed my prior comments: they traced to a different issue that, when worked around, got rid of the behavior that I had reported. Sorry for the noise.

Feb 28 2020, 7:21 PM

Feb 23 2020

markmi_dsl-only.net added a comment to D23376: Avoid having PowerMacs ending up with stuck-sleeping threads: force some boot-time TB value relationships across sockets/cores..

. . .
You can look in Linux's arch/powerpc/platform/powermac/smp.c, and arch/powerpc/kernel/smp-tbsync.c for how Linux does it. Their generic tbsync handshake is similar to yours.

Feb 23 2020, 9:25 PM · PowerPC
markmi_dsl-only.net added a comment to D23376: Avoid having PowerMacs ending up with stuck-sleeping threads: force some boot-time TB value relationships across sockets/cores..

. . .
I do intend to shortly (next few days) clean up the one additional platform_timebase_sync() user (cpu_sleep()) to not use it, and handle it directly, since the code in cpu_sleep() is actually mpc74xx-specific, it's not generic at all. So once that's made explicit, a proper rendezvous sync should be done in platform_powermac.c instead.
. . .

Feb 23 2020, 4:29 AM · PowerPC
markmi_dsl-only.net added inline comments to D23376: Avoid having PowerMacs ending up with stuck-sleeping threads: force some boot-time TB value relationships across sockets/cores..
Feb 23 2020, 12:40 AM · PowerPC

Feb 22 2020

markmi_dsl-only.net added inline comments to D23376: Avoid having PowerMacs ending up with stuck-sleeping threads: force some boot-time TB value relationships across sockets/cores..
Feb 22 2020, 10:56 PM · PowerPC
markmi_dsl-only.net added inline comments to D23376: Avoid having PowerMacs ending up with stuck-sleeping threads: force some boot-time TB value relationships across sockets/cores..
Feb 22 2020, 10:20 PM · PowerPC
markmi_dsl-only.net added a comment to D23376: Avoid having PowerMacs ending up with stuck-sleeping threads: force some boot-time TB value relationships across sockets/cores..

What we really want to achieve is a better timebase sync mechanism. This can only be achieved by disabling the timebase, rendezvousing, and re-enabling it. Adding a drift into the generic code for a specific platform is not the correct solution.

Feb 22 2020, 9:30 PM · PowerPC
markmi_dsl-only.net added inline comments to D23376: Avoid having PowerMacs ending up with stuck-sleeping threads: force some boot-time TB value relationships across sockets/cores..
Feb 22 2020, 6:35 PM · PowerPC

Feb 17 2020

markmi_dsl-only.net added a comment to D23729: powerpc: unconditionally mark SLB zones UMA_ZONE_CONTIG.

. . .> Ah, that clarifies things. I was looking for a problem in r357548.

Feb 17 2020, 9:30 PM
markmi_dsl-only.net added a comment to D23729: powerpc: unconditionally mark SLB zones UMA_ZONE_CONTIG.

Can you explain why this makes a difference, at least for slbt_zone? I think I am missing something.

Feb 17 2020, 7:10 PM

Feb 2 2020

markmi_dsl-only.net added a comment to D15955: Discover cards on boot.
Feb 2 2020, 4:39 AM

Feb 1 2020

markmi_dsl-only.net added a comment to D15955: Discover cards on boot.
Feb 1 2020, 10:59 PM

Jan 30 2020

markmi_dsl-only.net added inline comments to D23376: Avoid having PowerMacs ending up with stuck-sleeping threads: force some boot-time TB value relationships across sockets/cores..
Jan 30 2020, 7:44 PM · PowerPC
markmi_dsl-only.net added inline comments to D23376: Avoid having PowerMacs ending up with stuck-sleeping threads: force some boot-time TB value relationships across sockets/cores..
Jan 30 2020, 6:07 PM · PowerPC
markmi_dsl-only.net added a comment to D23376: Avoid having PowerMacs ending up with stuck-sleeping threads: force some boot-time TB value relationships across sockets/cores..

Yeah, I used to see this too (on either power9 or amigaone x5000, can't remember which.) IIRC, the problem is that if the tb is significantly unsynced, the callwheel algorithm falls over and misses wakeups for things.

Jan 30 2020, 5:37 PM · PowerPC

Jan 29 2020

markmi_dsl-only.net added a comment to D23376: Avoid having PowerMacs ending up with stuck-sleeping threads: force some boot-time TB value relationships across sockets/cores..

If there are non-PowerMac powerpc platforms that get the threads-stuck-sleeping
problem, then this type of solution may be insufficient for it to generalize for the specific
problem. For example, it is not obvious how accurate such would end up for a context
where NUMA can be relevant. I do not have a context for investigating anything that
modern.

Jan 29 2020, 6:36 AM · PowerPC

Jan 26 2020

markmi_dsl-only.net added a comment to D23376: Avoid having PowerMacs ending up with stuck-sleeping threads: force some boot-time TB value relationships across sockets/cores..

Note: I was not (and am not) style(9) literate when I did the investigation that eventually stabilized on this code. My information-handling capacity was limited. I fully expect this will need to be dealt with at some point. But I'd prefer to first have the technique(s) used be thought to be stable before focusing on the other type of knowledge.

Jan 26 2020, 11:13 PM · PowerPC
markmi_dsl-only.net created D23376: Avoid having PowerMacs ending up with stuck-sleeping threads: force some boot-time TB value relationships across sockets/cores..
Jan 26 2020, 11:04 PM · PowerPC

Jul 10 2019

markmi_dsl-only.net updated subscribers of D20598: powerpc: Transition to Secure-PLT, like most other OSs.

FYI: The addition to CFLAGS.powerpc did not add -msecure-plt to the cc for linking libc.so.7.full :

Jul 10 2019, 1:44 AM
markmi_dsl-only.net added a comment to D20598: powerpc: Transition to Secure-PLT, like most other OSs.

Using -msecure-plt did no good with system-clang. Despite the -msecure-plt as shown below:

Jul 10 2019, 12:58 AM

Jul 9 2019

markmi_dsl-only.net added a comment to D20598: powerpc: Transition to Secure-PLT, like most other OSs.

FYI: I was using devel/powerpc64-binutils with system clang (8.0.0 or now 8.0.1), not gcc.
Changes to gcc will not change the behavior for what I was doing.

Jul 9 2019, 5:34 PM
markmi_dsl-only.net added a comment to D20598: powerpc: Transition to Secure-PLT, like most other OSs.

Justin wrote "Secure-PLT is fully compatible with BSS-PLT, so there's no issue with compatibility".

Jul 9 2019, 6:57 AM

Apr 25 2019

markmi_dsl-only.net added a comment to D18658: top: fix PID sorting after r340742; add process birth time sorting.

In order to keep the thread order stable for process-birth-time,
I ended up also using:

Apr 25 2019, 10:54 AM

Mar 24 2019

markmi_dsl-only.net added a comment to D19588: Add a new efi-update-loader script and associated man page.

I frequently cross-build amd64->aarch64 and amd64->armv7 and also do
installworld's of the aarch64 and armv7 worlds into directories trees on the
amd64 machine ( same file system as the amd64 world is on, but in something
like, for example, /usr/obj/DESTDIRs/clang-cortexA53-installworld-poud ).
(Later such are used via qemu-user-static and poudriere-devel , for example.)

Mar 24 2019, 8:08 AM

Mar 3 2019

markmi_dsl-only.net added a comment to D18547: Fix llvm-tblgen self-bootstrap.

FYI: In attempting a devel/powerpc64-xtoolchain-gcc based build of head -r334018
on a powerpc64 I just had to make these two changes in order to avoid the problem
reported here: otherwise unable to build llvm-tblgen .

Mar 3 2019, 9:34 AM

Jan 25 2019

markmi_dsl-only.net added a comment to D17930: clang: default to DWARF 4 as of FreeBSD 12.

What of using libexec/gdb ? WITH_GDB is still the default except on aarch64 and riscv64* .

libexec/gdb is only intended for crashinfo(8) and the kernel is built with an explicit -gdwarf2 flag so will not be affected by this change. In any case libexec/gdb is probably going away in 13.0 (@jhb can comment).

Jan 25 2019, 8:54 PM

Jan 13 2019

markmi_dsl-only.net added a comment to D17930: clang: default to DWARF 4 as of FreeBSD 12.

What of using libexec/gdb ? WITH_GDB is still the default except on aarch64 and riscv64* . There are architectures for which modern gdb from ports fails ( by running into bugs in C++ thrown-exception support in the system libgc_s ): powerpc families. (I experiment with using more modern compilers. clang has issues of its own but devel/powerpc64-gcc for powerpc64 targeting is useful for buildworld buildkernel and more. I have a patched libgcc_s that I reported on the lists but most folks do not have.)

Jan 13 2019, 7:49 AM

Jul 4 2017

markmi_dsl-only.net added a comment to D11475: Zero initialize all fields of socket structure.

This change addresses the direct, observed consequences for switching from
the first anonymous struct to the second one: it avoids interpreting old
"first struct" material as upcall information.

Jul 4 2017, 9:15 AM

Jul 1 2017

markmi_dsl-only.net added a comment to D9770: Listening sockets revamp try #2..

Again for future reference for folks that might look at this:

Jul 1 2017, 4:17 PM
markmi_dsl-only.net added a comment to D9770: Listening sockets revamp try #2..

In essence some notes from bugzilla 220404 for
future reference to folks that might look here.

Jul 1 2017, 2:30 AM

Jun 28 2017

markmi_dsl-only.net added a comment to rS317835: arch(7): add a table of per-arch initial/final FreeBSD version.

If this page or a variant is to be used for 11.1 then
pc98 should be covered rather than only being listed
for the initial/final releases. (I'm less sure for history
like alpha or ia64.)

Jun 28 2017, 9:23 PM

Apr 28 2017

markmi_dsl-only.net added a comment to D10537: Make sure <arch-gcc> come with consistent content.

I should note that when devel/*-binutils went to
2.28 which failed I reverted to devel/*binutils
-r436731 (2.27) in order for things to work. I still
have that configuration and it was used in the
test builds that I did.

Apr 28 2017, 9:29 PM
markmi_dsl-only.net added a comment to D10537: Make sure <arch-gcc> come with consistent content.

FYI: prior to this change a self-hosted/native build of
devel/aarch64-gcc or devel/powerpc64-gcc would
fail for not finding 6 files listed in pkg-plist .
devel/arm64-gcc did not list the 6 files there and so
did not install them but the self-hosted/native build
would complete.

Apr 28 2017, 7:51 PM
markmi_dsl-only.net accepted D10537: Make sure <arch-gcc> come with consistent content.

I built examples based on patching:

Apr 28 2017, 7:31 PM

Mar 6 2017

markmi_dsl-only.net added a comment to D9869: Return EINVAL for userland CCBs with CAM_UNLOCKED set.

-r314624 prevented a PowerMac G5 so-called "Quad Core" from competing
its boot (of -r314687): CAM status: Command timeout's. Reverting the two
files fixed it. See, e.g.,

Mar 6 2017, 10:49 AM

Feb 17 2017

markmi_dsl-only.net added a comment to D9593: Load the new sp_el0 with interrupts disabled in fork_trampoline.

Note: The "truncated" sp/fp line for "panic() at . . ."
is from the serial console tending to drop text.

Feb 17 2017, 10:23 PM
markmi_dsl-only.net added a comment to D9593: Load the new sp_el0 with interrupts disabled in fork_trampoline.

I got a panic that involved fork_trampoline in the back trace.
I've no clue if it is related.

Feb 17 2017, 9:59 PM

Feb 15 2017

markmi_dsl-only.net added a comment to D9593: Load the new sp_el0 with interrupts disabled in fork_trampoline.

That last buildworld buildkernel completed just
fine (really only building the kernel since world
had completed before).

Feb 15 2017, 3:02 AM
markmi_dsl-only.net added a comment to D9593: Load the new sp_el0 with interrupts disabled in fork_trampoline.

The core files did not suggest a stack corruption
to me, nor was fork active. My test code
recorded its before and after fork stack address
examples and they were equal as they should be.

Feb 15 2017, 2:06 AM

Feb 14 2017

markmi_dsl-only.net added a comment to D9593: Load the new sp_el0 with interrupts disabled in fork_trampoline.

Drat: buildworld got a different failure in sh (see below).

Feb 14 2017, 11:05 PM
markmi_dsl-only.net added a comment to D9593: Load the new sp_el0 with interrupts disabled in fork_trampoline.

Test status update at ~3 hours 40 minutes in:

Feb 14 2017, 9:17 PM
markmi_dsl-only.net added a comment to D9593: Load the new sp_el0 with interrupts disabled in fork_trampoline.

One minor point:

Feb 14 2017, 5:17 PM