On Sun, 2013-06-23 at 15:54 +0800, Qiaowei Ren wrote:Well, I guess that I can use iomem related interface to fix these warnings caused by sparse.These logs come from tboot (Trusted Boot, an open source,[]
pre-kernel/VMM module that uses Intel TXT to perform a
measured and verified launch of an OS kernel/VMM.).
diff --git a/arch/x86/kernel/tboot.c b/arch/x86/kernel/tboot.c[]+static struct tboot_log *get_log(void)
+{
+ struct tboot_log *log;
+
+ log = (struct tboot_log *)ioremap_nocache(TBOOT_SERIAL_LOG_ADDR,
+ TBOOT_SERIAL_LOG_SIZE);
You might want to fix the sparse errors.
CHECK arch/x86/kernel/tboot.c
arch/x86/kernel/tboot.c:362:16: warning: cast removes address space of expression
arch/x86/kernel/tboot.c:368:25: warning: incorrect type in argument 1 (different address spaces)
arch/x86/kernel/tboot.c:368:25: expected void volatile [noderef] <asn:2>*addr
arch/x86/kernel/tboot.c:368:25: got struct tboot_log *[assigned] log
arch/x86/kernel/tboot.c:395:17: warning: incorrect type in argument 1 (different address spaces)
arch/x86/kernel/tboot.c:395:17: expected void volatile [noderef] <asn:2>*addr
arch/x86/kernel/tboot.c:395:17: got struct tboot_log *[assigned] log
arch/x86/kernel/tboot.c:479:16: warning: incorrect type in assignment (different address spaces)
arch/x86/kernel/tboot.c:479:16: expected void *config
arch/x86/kernel/tboot.c:479:16: got void [noderef] <asn:2>*
arch/x86/kernel/tboot.c:485:19: warning: incorrect type in assignment (different address spaces)
arch/x86/kernel/tboot.c:485:19: expected void *heap_base
arch/x86/kernel/tboot.c:485:19: got void [noderef] <asn:2>*
arch/x86/kernel/tboot.c:487:17: warning: incorrect type in argument 1 (different address spaces)
arch/x86/kernel/tboot.c:487:17: expected void volatile [noderef] <asn:2>*addr
arch/x86/kernel/tboot.c:487:17: got void *config