[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: mac99 SMP
From: |
Andrew Randrianasulu |
Subject: |
Re: mac99 SMP |
Date: |
Mon, 31 Mar 2025 15:56:54 +0300 |
On Mon, Mar 31, 2025 at 3:50 PM Andrew Randrianasulu
<randrianasulu@gmail.com> wrote:
>
> Oh, I see some discussion at
>
> https://lists.nongnu.org/archive/html/qemu-ppc/2025-03/msg01179.html
>
> Huh, Discord ;)
>
> Anyway, I tried 9.2.2 and not sure if Final Cut Pro 2.x (yeah, prehistoric)
> was able to do any smp with 4 cpu, yet it was going slightly above 100%
> (host) on -smp 2.
>
>
> Leopard (10.5, not updated) was hanging with stop symbol on -smp 4 but worked
> on -smp 2
>
> Void Linux (ppc32, 5.13 and 4. something kernels) was finding all four cpus,
> same for modern Debian on vmlinux-6.12.16-powerpc-smp . Sound was unhappy on
> this kernel, but worked at least for terminal bell on Void installer.
> Interestingly Debian kernel does spread device interrupts (as seen in
> /proc/interrupts) over all cpu cores.
>
>
> BSDs (NetBSD 10.0 and FreeBSD 14.2) were still only working with -smp 1.
>
> 64 bit Debian was only able to use
> one cpu (970FX), others were stuck. FreeBSD powerpc64 was no boot for me,
> 10.4.11/10.5 OSX still no boot on qemu-emulated 970 (FX or just 970).
>
> I'll hang my patch here and on forums (it was not final one, just something
> working on top of earlier patches)
>
>
> (I sometimes answer both from my Android tablet and desktop, both logged to
> same gmail, some lists more strict on non-accepting html emails I can't turn
> off in mobile application, it seems)
Here it is. Note, it DOES NOT incorporate latest findings!
still based on top of 10.0-rc0 (I'll try to rebase on top of rc1 with
official NetBSD fix)
>
> пн, 31 мар. 2025 г., 00:16 Andrew Randrianasulu <randrianasulu@gmail.com>:
>>
>> On Sun, Mar 30, 2025 at 7:27 AM Andrew Randrianasulu
>> <randrianasulu@gmail.com> wrote:
>> >
>> >
>> >
>> > сб, 29 мар. 2025 г., 17:55 Andrew Randrianasulu <randrianasulu@gmail.com>:
>> >>
>> >>
>> >>
>> >> сб, 29 мар. 2025 г., 17:37 Jd Lyons <lyons_dj@yahoo.com>:
>> >>>
>> >>> Throwing 4 cores at Mac OS 9 seems to fix the freezing issues with SMP.
>> >>
>> >>
>> >> I guess only macos 9 compatible macs with 4 cpus were those PowerSurge
>> >> boards with 604e cores?
>> >
>> >
>> > sorry, I mixed up PowerSurge machines (logic board name?) with Daystar
>> > Millennium:
>> >
>> > https://68kmla.org/bb/index.php?threads/the-holy-grail-of-pci-macs-daystar-millennium-quad-604.31811/
>> >
>> >
>>
>> wow, it works in my megapile (screamer + spd patch + oldworld rom
>> loading patch)!
>>
>> https://ibb.co/BHn6SV8M
>> https://ibb.co/n84RL0rB
>> https://ibb.co/WW52nxyz
>> https://ibb.co/9H6w8TG8
>>
>> Newer thought I'll see 4 * G4 cpu in macos X !
>>
>>
>>
>>
>> >
>> >>
>> >> out of curiosity, did you just upped max smp from 2 to 4? I tried this
>> >> and OSX 10.4.11 stopped booting, so I reverted it back to two .....
>> >>
>> >>
>> >>>
>> >>> On Mar 23, 2025, at 1:01 PM, BALATON Zoltan <balaton@eik.bme.hu> wrote:
>> >>>
>> >>> On Sun, 23 Mar 2025, Jd Lyons wrote:
>> >>>
>> >>> The Darwin source are vast and I have no idea what I am searching for:
>> >>>
>> >>>
>> >>> Then keep searching and reading until you understand it more. You can
>> >>> try to search for the property names to see where they are queried. The
>> >>> device tree is used to build the IO registry so it probably ends up
>> >>> there then something might look it up from there. Then see how it's used.
>> >>>
>> >>> cpu_sync_timebase(
>> >>> void)
>> >>> {
>> >>> natural_t tbu, tbl;
>> >>> boolean_t intr;
>> >>> struct SIGtimebase syncClkSpot;
>> >>>
>> >>> intr = ml_set_interrupts_enabled(FALSE); /* No interruptions in here */
>> >>>
>> >>> syncClkSpot.avail = FALSE;
>> >>> syncClkSpot.ready = FALSE;
>> >>> syncClkSpot.done = FALSE;
>> >>>
>> >>> while (cpu_signal(master_cpu, SIGPcpureq, CPRQtimebase,
>> >>> (unsigned int)&syncClkSpot) != KERN_SUCCESS)
>> >>> continue;
>> >>>
>> >>> while (*(volatile int *)&(syncClkSpot.avail) == FALSE)
>> >>> continue;
>> >>>
>> >>> isync();
>> >>>
>> >>>
>> >>> This is the beginning of a function without context so I have no idea
>> >>> what this is but maybe look for where it's called from and that's
>> >>> probably the place you should look more or understand what this function
>> >>> does. If there's something in it you don't know then search for that and
>> >>> so on. If you don't even understand C then first learn that, there are
>> >>> free tutorials online, it should not be too difficult.
>> >>>
>> >>> Regrads,
>> >>> BALATON Zoltan
>> >>>
>> >>>
0022-Great-4-cpu-hack-for-mac99.patch
Description: Text Data
0001-mac_newworld-mac99-experimental-smp-2-cpu-support.patch
Description: Text Data
0005-Add-0.5-sec-delay-for-mac_newworld-kick_cpu-fixes-Li.patch
Description: Text Data
- Re: mac99 SMP, (continued)
- Re: mac99 SMP, Andrew Randrianasulu, 2025/03/30
- Re: mac99 SMP, Andrew Randrianasulu, 2025/03/30
- Re: mac99 SMP, Jd Lyons, 2025/03/31
- Re: mac99 SMP, Howard Spoelstra, 2025/03/31
- Message not available
- Re: mac99 SMP, Jd Lyons, 2025/03/31
- Re: mac99 SMP, BALATON Zoltan, 2025/03/31
- Re: mac99 SMP, Andrew Randrianasulu, 2025/03/31
- Re: mac99 SMP,
Andrew Randrianasulu <=
- Re: mac99 SMP, Jd Lyons, 2025/03/31
- Re: mac99 SMP, Andrew Randrianasulu, 2025/03/31
- Re: mac99 SMP, Jd Lyons, 2025/03/31
- Re: mac99 SMP, Andrew Randrianasulu, 2025/03/31
- Re: mac99 SMP, Andrew Randrianasulu, 2025/03/31
- Re: mac99 SMP, Jd Lyons, 2025/03/31
- Re: mac99 SMP, Andrew Randrianasulu, 2025/03/31
- Re: mac99 SMP, BALATON Zoltan, 2025/03/31
- Re: mac99 SMP, Andrew Randrianasulu, 2025/03/31
- Re: mac99 SMP, BALATON Zoltan, 2025/03/31