summaryrefslogtreecommitdiffstats
path: root/drivers/char
diff options
context:
space:
mode:
authorAndrew Morton2006-02-01 12:05:02 +0100
committerLinus Torvalds2006-02-01 17:53:12 +0100
commit1c40f7d4f0a9d5242f19b02b00e3e5a8ee218a20 (patch)
tree3a6422d574bf033ef1c4c6f455c6e528ac3116c2 /drivers/char
parent[PATCH] tpm_bios: securityfs error checking fix (diff)
downloadkernel-qcow2-linux-1c40f7d4f0a9d5242f19b02b00e3e5a8ee218a20.tar.gz
kernel-qcow2-linux-1c40f7d4f0a9d5242f19b02b00e3e5a8ee218a20.tar.xz
kernel-qcow2-linux-1c40f7d4f0a9d5242f19b02b00e3e5a8ee218a20.zip
[PATCH] tpm_bios indexing fix
It generates warnings: drivers/char/tpm/tpm_bios.c: In function `get_event_name': drivers/char/tpm/tpm_bios.c:223: warning: cast from pointer to integer of different size drivers/char/tpm/tpm_bios.c:223: warning: cast from pointer to integer of different size drivers/char/tpm/tpm_bios.c:223: warning: cast from pointer to integer of different size drivers/char/tpm/tpm_bios.c:224: warning: cast from pointer to integer of different size drivers/char/tpm/tpm_bios.c:224: warning: cast from pointer to integer of different size drivers/char/tpm/tpm_bios.c:224: warning: cast from pointer to integer of different size and I'm not sure what the code is doing there, but it seems wrong. We're using the address of the buffer rather than the contents of it. The patch adds more nasty typecasting, but I think the whole arrangement could be done in a more typesafe manner. Cc: Kylene Jo Hall <kjhall@us.ibm.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'drivers/char')
-rw-r--r--drivers/char/tpm/tpm_bios.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/char/tpm/tpm_bios.c b/drivers/char/tpm/tpm_bios.c
index 9ffa5643e79d..1310189fd9f5 100644
--- a/drivers/char/tpm/tpm_bios.c
+++ b/drivers/char/tpm/tpm_bios.c
@@ -220,8 +220,8 @@ static int get_event_name(char *dest, struct tcpa_event *event,
}
break;
case EVENT_TAG:
- event_id = be32_to_cpu(event_entry);
- event_data_size = be32_to_cpu(&event_entry[4]);
+ event_id = be32_to_cpu(*((u32 *)event_entry));
+ event_data_size = be32_to_cpu(((u32 *)event_entry)[1]);
/* ToDo Row data -> Base64 */