Re: Strange hang on ia64 with CONFIG_PRINTK_TIME=y

From: David Miller
Date: Wed Feb 13 2008 - 20:04:34 EST


From: "Tony Luck" <tony.luck@xxxxxxxxx>
Date: Wed, 13 Feb 2008 16:59:30 -0800

> > It is legal to access per-cpu data as early as you like,
> > it just evaluates to the static copy in the per-cpu section
> > of the kernel image until the per-cpu areas are setup.
>
> On ia64 per-cpu variables are mapped into the top 64K
> of the address space. Accessing them before the
> resources to handle the access to that virtual address
> have been set up would cause problems.

That's right. I thought you guys had something that would handle that
early on, but looking at how the trick works in the vmlinux.lds.S ia64
uses that isn't the case.

I guess we really can't do per-cpu accesses early on.

This is extremely fragile, we should find some way to formalize this
to make accidental early per-cpu references trap at build time or
similar.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/