lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <76366b180801161139o24599152obb01cd6e9cc6148@mail.gmail.com>
Date:	Wed, 16 Jan 2008 14:39:27 -0500
From:	"Andrew Paprocki" <andrew@...iboo.com>
To:	"Thomas Gleixner" <tglx@...utronix.de>
Cc:	"Dhaval Giani" <dhaval@...ux.vnet.ibm.com>,
	linux-kernel@...r.kernel.org, "Balaji Rao" <balajirrao@...il.com>,
	"Andrew Morton" <akpm@...ux-foundation.org>,
	"Ingo Molnar" <mingo@...e.hu>, clemens@...isch.de,
	venkatesh.pallipadi@...el.com, bob.picco@...com
Subject: Re: HPET timer broken using 2.6.23.13 / nanosleep() hangs

I applied the patch and I am still locking up after
Time: hpet clocksource has been installed.

I rebooted with "clocksource=tsc" to get the logs of the trace which
was added. I'm assuming the grep below gets all the interesting parts.
I enabled the HPET character device as mentioned before, which is why
the hpet0 lines appear now.

# dmesg | egrep -i "(hpet|time|clock)"
ACPI: HPET 37FE7400, 0038 (r1 RS690  AWRDACPI 42302E31 AWRD       98)
ATI board detected. Disabling timer routing over 8254.
ACPI: PM-Timer IO Port: 0x4008
ACPI: HPET id: 0x10b9a201 base: 0xfed00000
Kernel command line: vga=0x31a root=/dev/sda1 ro clocksource=tsc
HPET check: t1=5 t2=1139 s=56226339975 n=56226539985
hpet0: at MMIO 0xfed00000, IRQs 2, 8, 0, 0
hpet0: 4 32-bit timers, 14318180 Hz
Calibrating delay using timer specific routine.. 4927.58 BogoMIPS (lpj=9855168)
..TIMER: vector=0x31 apic1=0 pin1=2 apic2=-1 pin2=-1
Time: tsc clocksource has been installed.
PCI: Setting latency timer of device 0000:00:06.0 to 64
Real Time Clock Driver v1.12ac
hpet_resources: 0xfed00000 is busy
Clocksource tsc unstable (delta = 459979812 ns)
Software Watchdog Timer: 0.07 initialized. soft_noboot=0
soft_margin=60 sec (nowayout= 0)
PCI: Setting latency timer of device 0000:02:00.0 to 64

I ran a 'sleep 1', which hung as expected when I installed hpet as the
clocksource via /sys. I dumped the sysrq trace showing where it was
hung:

Jan 16 14:44:48 am2 kernel: sleep         S f582df68     0  2205   2155
Jan 16 14:44:48 am2 kernel:        f582df50 00000086 c1706e80 f582df68
c1706f04 c1706e78 00000000 c01371be
Jan 16 14:44:48 am2 kernel:        c17f8ab0 c17f8bf4 c1709a40 00000000
f7077200 00000286 c0137803 00000001
Jan 16 14:44:43 am2 kernel:        c1706e78 00000000 00000286 f582df68
00000000 f582c020 f582c000 c03ac8d3
Jan 16 14:44:43 am2 kernel: Call Trace:
Jan 16 14:44:48 am2 kernel:  [<c01371be>] enqueue_hrtimer+0xd7/0xe2
Jan 16 14:44:48 am2 kernel:  [<c0137803>] hrtimer_start+0xe8/0xf4
Jan 16 14:44:48 am2 kernel:  [<c03ac8d3>] do_nanosleep+0x48/0x73
Jan 16 14:44:48 am2 kernel:  [<c03ac932>] hrtimer_nanosleep_restart+0x34/0xa1
Jan 16 14:44:48 am2 kernel:  [<c013735d>] hrtimer_wakeup+0x0/0x18
Jan 16 14:44:48 am2 kernel:  [<c012e837>] sys_restart_syscall+0xe/0xf
Jan 16 14:44:48 am2 kernel:  [<c0103d0a>] sysenter_past_esp+0x5f/0x85

My 'cron' and 'atd' processes were also hung with this exact stack in
'enqueue_hrtimer'.

Thanks,
-Andrew

On Jan 16, 2008 10:21 AM, Thomas Gleixner <tglx@...utronix.de> wrote:
> > > The hint is in the original report:
> > >
> > > Clocksource tsc unstable (delta = 500013666 ns)
> > >
> > > That means, that the TSC was counting, but HPET not. So it looks like
> > > the HPET readout is stale. Which explains, why after switching to HPET
> > > clocksource the time system gets hosed.
> > >
> > > I wonder why the HPET counter works check did not catch this.
> > >
> > > Can you please apply the path below and provide the output ?
>
> This time against 2.6.23
>
> Thanks,
>         tglx
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ