diff options
author | Jan Beulich <jbeulich@novell.com> | 2008-07-18 13:35:37 +0100 |
---|---|---|
committer | H. Peter Anvin <hpa@zytor.com> | 2008-07-18 14:33:17 -0700 |
commit | f2ba93929fdb91fd806be20e959a50f7db82790e (patch) | |
tree | ca3518a85672e3da4e36884139707ae6577939d5 /arch/x86/boot | |
parent | ffaa152efd02849c0c36947f533f2ee3ee55369a (diff) | |
download | lwn-f2ba93929fdb91fd806be20e959a50f7db82790e.tar.gz lwn-f2ba93929fdb91fd806be20e959a50f7db82790e.zip |
x86: check function status in EDD boot code
Without checking the return value of get_edd_info() and adding the
entry only in the success case, 6 devices show up under
/sys/firmware/edd/, no matter how many devices are actually present.
Signed-off-by: Jan Beulich <jbeulich@novell.com>
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
Diffstat (limited to 'arch/x86/boot')
-rw-r--r-- | arch/x86/boot/edd.c | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/arch/x86/boot/edd.c b/arch/x86/boot/edd.c index 03399d64013b..d93cbc6464d0 100644 --- a/arch/x86/boot/edd.c +++ b/arch/x86/boot/edd.c @@ -167,9 +167,8 @@ void query_edd(void) * Scan the BIOS-supported hard disks and query EDD * information... */ - get_edd_info(devno, &ei); - - if (boot_params.eddbuf_entries < EDDMAXNR) { + if (!get_edd_info(devno, &ei) + && boot_params.eddbuf_entries < EDDMAXNR) { memcpy(edp, &ei, sizeof ei); edp++; boot_params.eddbuf_entries++; |