lkml.org 
[lkml]   [2011]   [Jan]   [13]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [RFC PATCH] x86: Add safe_udelay() and safe_msleep()
On Thu, 13 Jan 2011, Yinghai Lu wrote:

> >
> > What the hell is the root problem ?
>
> for patch
>
> x86: usb handoff in early_quirk
>
> some systems keep getting
> APIC calibration not consistent with PM-Timer: 139ms instead of 100ms
> APIC delta adjusted to PM-Timer: 831249 (1163736)
>
> USB legacy SMI handler is not disabled at that time.
>
> According to Thomas:
> | http://lkml.indiana.edu/hypermail/linux/kernel/0703.2/0420.html
> |
> | The wrong calibration values are probably caused by SMM code trying to
> | emulate a PS/2 keyboard from a (maybe connected or not) USB keyboard.
> | This prohibits the accurate delivery of PIT interrupts, which are used
> | to calibrate the local APIC timer. Unfortunately we have no way to
> | disable this BIOS misfeature in the early boot process.
>
> Try to disable USB legacy support early with this patch.
> So later APIC Timer calibration don't get messed up by USB legacy support SMI handler.
> After this patch, that warning never show up for 100 reboot tests.
>
> reuse code from drivers/usb/host/pci-quirks.c
>
>
> but pci-quirks.c is using udelay and msleep ...
>
> And BenH does't want
> 1. if (early)...
> 2. include .c
> 3. new API new about safe_udelay/safe_msleep...
>
> just want to keep the old udelay/mdelay.

NAK. That's the total wrong thing to do.

Do we have any indication that we miscalibrate? If no, then were is
the point of this ? If yes, then I it's way easier to fix that than
doing all this ugly churn.

We deal with that SMI crap in the TSC calibration as well and I'd
rather see a combined TSC/APIC calibration than all this fugliness.

Thanks,

tglx


\
 
 \ /
  Last update: 2011-01-14 00:35    [W:0.101 / U:0.252 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site