[WATCHDOG] Fix declaration of struct smbios_entry_point in hpwdt
On my HP DL380 G5 system running a 64-bit kernel, loading the hpwdt driver causes a crash because the driver attempts to ioremap an invalid physical address. This is because the driver has an incorrect definition of the SMBIOS table entry point structure: the table address is only a 32-bit quantity, and making it a u64 means that the high-order 32 bits end up containing garbage. Correcting the structure definition fixes the driver so that it loads without any problems on my system. Signed-off-by: Roland Dreier <rolandd@cisco.com> Acked-by: Thomas Mingarelli <Thomas.Mingarelli@hp.com> Signed-off-by: Wim Van Sebroeck <wim@iguana.be> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
This commit is contained in:
parent
5e69960865
commit
103018aca2
|
@ -88,7 +88,7 @@ struct smbios_entry_point {
|
|||
u8 intermediate_anchor[5];
|
||||
u8 intermediate_checksum;
|
||||
u16 table_length;
|
||||
u64 table_address;
|
||||
u32 table_address;
|
||||
u16 table_num_structs;
|
||||
u8 bcd_revision;
|
||||
};
|
||||
|
|
Loading…
Reference in New Issue