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-next>] [day] [month] [year] [list]
Message-ID: <48364469.5090400@aknet.ru>
Date:	Fri, 23 May 2008 08:13:29 +0400
From:	Stas Sergeev <stsp@...et.ru>
To:	Magosányi Árpád <m4gw4s@...il.com>
CC:	Thomas Gleixner <tglx@...utronix.de>,
	Linux kernel <linux-kernel@...r.kernel.org>
Subject: Re: hrtimer_get_res() problem (pcsp does not work)

Hello.

Magosányi Árpád wrote:
> code:
>         hrtimer_get_res(CLOCK_MONOTONIC, &tp);
> +      printk(KERN_INFO "PCSP: sec=%li, nsec=%linS\n",tp.tv_sec, tp.tv_nsec);
> 
> output:
> [   22.882520] PCSP: sec=0, nsec=1nS
> after an rmmod and modprobe:
> [  476.300571] PCSP: sec=0, nsec=1nS
> after an rmmod, changing clocksource to tsc, and insmod:
> [  669.124557] PCSP: sec=0, nsec=1nS
OK, thanks you.
In this case I suspect this is not an
snd-pcsp bug, but a hrtimer bug. Adding
more people to CC.

So what we have:
---
I have a PIIX4 chipset, the full dmesg is attached.
Note that it is an old 400Mhz pentium, and there is some problem with
the timer source I use:
[    0.822740] * Found PM-Timer Bug on the chipset. Due to workarounds
for a bug,
[    0.822750] * this clock source is slow. Consider trying other clock
sources
---
and (presumably) because of that PM-Timer
Bug, snd-pcsp produces only the noice.
dmesg said that the clock source is slow,
yet the hrtimer_get_res() claims the
resolution is 1nS. I think this is wrong,
hrtimer_get_res() might be broken.
Can someone please comment on that?
Is hrtimer_get_res() known to return 1nS
regardless of the real clock resolution?

timer_list looks like this:
---

Timer List Version: v0.3
HRTIMER_MAX_CLOCK_BASES: 2
now at 79874071159020 nsecs

cpu: 0
 clock 0:
  .index:      0
  .resolution: 1 nsecs
  .get_time:   ktime_get_real
  .offset:     1211322015091845449 nsecs
active timers:
 clock 1:
  .index:      1
  .resolution: 1 nsecs
  .get_time:   ktime_get
  .offset:     0 nsecs
active timers:
 #0: <c0961ee4>, pcsp_do_timer, S:01
 # expires at 79874071262305 nsecs [in 103285 nsecs]
 #1: <c0961ee4>, tick_sched_timer, S:01
 # expires at 79874072000000 nsecs [in 840980 nsecs]
 #2: <c0961ee4>, hrtick, S:01
 # expires at 79874085178046 nsecs [in 14019026 nsecs]
 #3: <c0961ee4>, hrtimer_wakeup, S:01
 # expires at 79874089149344 nsecs [in 17990324 nsecs]
 #4: <c0961ee4>, hrtimer_wakeup, S:01
 # expires at 79874092750344 nsecs [in 21591324 nsecs]
 #5: <c0961ee4>, hrtimer_wakeup, S:01
 # expires at 79874202526015 nsecs [in 131366995 nsecs]
 #6: <c0961ee4>, it_real_fn, S:01
 # expires at 79881608643657 nsecs [in 7537484637 nsecs]
 #7: <c0961ee4>, it_real_fn, S:01
 # expires at 79881608750640 nsecs [in 7537591620 nsecs]
 #8: <c0961ee4>, it_real_fn, S:01
 # expires at 79895660824942 nsecs [in 21589665922 nsecs]
 #9: <c0961ee4>, hrtimer_wakeup, S:01
 # expires at 79906270402875 nsecs [in 32199243855 nsecs]
 #10: <c0961ee4>, hrtimer_wakeup, S:01
 # expires at 82853302086673 nsecs [in 2979230927653 nsecs]
  .expires_next   : 79874071584133 nsecs
  .hres_active    : 1
  .nr_events      : 82831195
  .nohz_mode      : 0
  .idle_tick      : 0 nsecs
  .tick_stopped   : 0
  .idle_jiffies   : 0
  .idle_calls     : 0
  .idle_sleeps    : 0
  .idle_entrytime : 0 nsecs
  .idle_waketime  : 0 nsecs
  .idle_exittime  : 0 nsecs
  .idle_sleeptime : 0 nsecs
  .last_jiffies   : 0
  .next_jiffies   : 0
  .idle_expires   : 0 nsecs
jiffies: 79574071


Tick Device: mode:     1
Clock Event Device: <NULL>
tick_broadcast_mask: 00000000
tick_broadcast_oneshot_mask: 00000000


Tick Device: mode:     1
Clock Event Device: pit
 max_delta_ns:   27461866
 min_delta_ns:   12571
 mult:           5124677
 shift:          32
 mode:           3
 next_event:     79874071637771 nsecs
 set_next_event: pit_next_event
 set_mode:       init_pit_timer
 event_handler:  hrtimer_interrupt
---

> I attach my kernel config.

View attachment "config.txt" of type "text/plain" (48331 bytes)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ