bug-hurd
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH mach v4 1/1] Integrate HPET so the functions used for getting


From: Guy-Fleury Iteriteka
Subject: Re: [PATCH mach v4 1/1] Integrate HPET so the functions used for getting time can have a higher accuracy
Date: Thu, 12 Jun 2025 19:13:29 +0200
User-agent: K-9 Mail for Android

Le 12 juin 2025 18:49:22 GMT+02:00, Michael Banck via Bug reports for the GNU 
Hurd <bug-hurd@gnu.org> a écrit :
>Hi,
>
>On Thu, Jun 12, 2025 at 09:54:22PM +0800, Zhaoming Luo wrote:
>> On Wed, Jun 11, 2025 at 09:07:10PM +0200, Michael Banck wrote:
>> > On Mon, Mar 24, 2025 at 12:25:51PM +0800, Zhaoming Luo wrote:
>> > > Integrate HPET so host_get_time, host_get_time64, and host_get_uptime64
>> > > are more precise. The highest precision can be 10ns when this patch is
>> > > applied.
>> > 
>> > Is there something else besides this patch that needs to be
>> > done/patched/configured to get higher resolution timers?
>> > 
>> > I am running the current gnumach Debian package which (to the best of my
>> > knowledge) includes this patch, but clock_getres() still reports
>> > 10000000 ns timer resolution and applications like PostgreSQL that rely
>> > on timing still have 10ms resolution.
>> > 
>> The current higher resolution depends on HPET, and the HPET will be
>> enabled when APIC is enabled[0]. Therefore, please try to compile a
>> gnumach kernel with --enable-apic in the ./configure stage.
>
>Alright, I tried that (rebuilding the current Debian unstable gnumach package),
>but (at least on i486) it hangs early on boot in KVM:

With which qemu command?

There is a bug when you use qemu -smp 2

Compile gnumach with --disable-linux-groups --enable-apic --enable-ncpus=4 or 8 
and in qemu use -smp 1 or 3 or 4 expect 2 

>
>|Loading GNU Mach ...
>|Loading the Hurd ...
>|ow:13148 high:21913
>|vm_page: HIGHMEM: pages: 301024 (1175M), free: 0 (0M)
>|vm_page: HIGHMEM: min:15051 low:18061 high:30102
>|ACPI v1.0
>|HPET at physical address 0xfed00000
>|ACPI:
>| rsdp = 0x47ffe1ac6
>| rsdt/xsdt = 0xf8e90ac6 (n = 4)
>|8 bit APIC ids
>|APIC entry=0xf8e92a1a end=0xf8e92a66
>|APIC entry=0xf8e92a1a end=0xf8e92a66
>|APIC entry=0xf8e92a22 end=0xf8e92a66
>|APIC entry=0xf8e92a2e end=0xf8e92a66
>|APIC entry=0xf8e92a38 end=0xf8e92a66
>|APIC entry=0xf8e92a42 end=0xf8e92a66
>|APIC entry=0xf8e92a4c end=0xf8e92a66
>|APIC entry=0xf8e92a56 end=0xf8e92a66
>|APIC entry=0xf8e92a60 end=0xf8e92a66
>|Unhandled APIC entry type 0x4
>|CPUS:
>| CPU 0 - APIC ID 0 - addr=0xf8e96000
>|IOAPICS:
>| IOAPIC 0 - APIC ID 0 - addr=0xf8e97000
>|IOAPIC version 0x11
>|IRQ override: pin=0 gsi=2 trigger=EDGE polarity=HIGH
>|IRQ override: pin=5 gsi=5 trigger=LEVEL polarity=HIGH
>|IRQ override: pin=9 gsi=9 trigger=LEVEL polarity=HIGH
>|IRQ override: pin=10 gsi=10 trigger=LEVEL polarity=HIGH
>|IRQ override: pin=11 gsi=11 trigger=LEVEL polarity=HIGH
>|IOAPIC 0 configured with GSI 0-23
>
>
>Michael
>

Hi,



reply via email to

[Prev in Thread] Current Thread [Next in Thread]