Messages in this thread Patch in this message | | | Date | Sat, 23 Aug 2008 15:36:43 +0200 | From | Ingo Molnar <> | Subject | Re: HPET regression in 2.6.26 versus 2.6.25 -- found another user with the same regression |
| |
David,
could you try the debug patch below ontop of latest tip/master:
http://people.redhat.com/mingo/tip.git/README
the patch forcibly ignores resource conflicts and reports them. This will likely break some system - but if your hpet troubles are due to resource conflicts then this patch would make the kernel boot up fine on your system by default, with a working hpet.
You should also be getting a printout and a warning in the dmesg in that case.
Ingo
------------> From 092990e259a462d39f1d8e9cd542898632b95fde Mon Sep 17 00:00:00 2001 From: Ingo Molnar <mingo@elte.hu> Date: Sat, 23 Aug 2008 15:33:51 +0200 Subject: [PATCH] debug hack: ignore resource conflicts
Signed-off-by: Ingo Molnar <mingo@elte.hu> --- kernel/resource.c | 5 ++++- 1 files changed, 4 insertions(+), 1 deletions(-)
diff --git a/kernel/resource.c b/kernel/resource.c index f5b518e..8419d56 100644 --- a/kernel/resource.c +++ b/kernel/resource.c @@ -156,6 +156,7 @@ static struct resource * __request_resource(struct resource *root, struct resour for (;;) { tmp = *p; if (!tmp || tmp->start > end) { +insert: new->sibling = tmp; *p = new; new->parent = root; @@ -164,7 +165,9 @@ static struct resource * __request_resource(struct resource *root, struct resour p = &tmp->sibling; if (tmp->end < start) continue; - return tmp; + printk("ignoring resource conflict between %s/{%p..%p} and %s/{%p..%p}\n", new->name, (void *)new->start, (void *)new->end, tmp->name, (void *)tmp->start, (void *)tmp->end); + WARN_ON(1); + goto insert; } }
| |