[2.5.50] oops while read accessing to /proc/bus/pnp/escd

Ruslan U. Zakirov (cubic@wildrose.miee.ru)
Fri, 6 Dec 2002 15:39:33 +0300


cat /proc/bus/pnp/escd couses an oops.
oops caused while executing this func.
static int __pnp_bios_read_escd(char *data, u32 nvram_base)
{
u16 status;
if (!pnp_bios_present())
return ESCD_FUNCTION_NOT_SUPPORTED;
status = call_pnp_bios(PNP_READ_ESCD, 0, PNP_TS1, PNP_TS2, PNP_DS, 0, 0, 0,
data, 65536, (void *)nvram_base, 65536);
return status;
}
but i don't have access to my computer and can't send full oops.
I've tried to solve this problem myself, but couldn't.
I think that the problem is in nvram_base because we don't alocate
memory page for it. We get address from pnp_bios_escd_info, but in PnP
BIOS spec wrote that
"In this case, it is the responsibility of the caller to construct a
16-bit data segment descriptor with base = NVStorageBase, a limit
of 64K and read/write access."
I didn't find something like memory aloc between getting escd info and
calling this func.
Best regards.
Ruslan.
PS And please CC patch to me if it'll be fixed before I do it myself.
PS And last, any comments and explanations will be desirable.

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/