[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#801259: linux-image-4.2.0-1-686-pae: Regression accessing `/dev/mem`



Package: src:linux
Version: 4.2.3-1
Severity: normal
Tags: upstream

Dear Debian folks,


the coreboot project [1] provides the utility cbmem [2] allowing to
read data from CBMEM (coreboot memory).

If I am not mistaken, it does this by mapping one 1 MB in `/dev/mem`
and then search for a signature.

Since Linux 4.2, this does not work anymore.

	x86/PAT: cbmem:3571 conflicting memory types bfe9c000-bff9c000 uncached-minus<->write-back

Quote [3]:

http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/drivers/firmware/dmi_scan.c?id=d7f96f97c4031fa4ffdb7801f9aae23e96170a6f

That patch added dmi_init() which maintains a persistent dmi mapping.
However, that code used ioremap() as it's mapping. Thus, we have an
uncached-minus PAT entry covering the DMI tables. I'm actually not
sure why they don't just maintain a copy of the tables -- maybe for
eventlog purposes? So that PAT entry will always cause issues w/ cbmem
trying to do brute force 1MiB mappings of /dev/mem.


Thanks,

Paul


[1] http://www.coreboot.org
[2] http://review.coreboot.org/gitweb?p=coreboot.git;a=tree;f=util/cbmem;h=e0a646aa20d57261afea291c2b31620ecfb29609;hb=HEAD
[3] http://coreboot.org/pipermail/coreboot/2015-October/080405.html

Attachment: signature.asc
Description: This is a digitally signed message part


Reply to: