Revision ac06c06770bb8761b1f1f9bdf2f5420fa6d3e9fa authored by Clemens Ladisch on 21 December 2009, 23:36:44 UTC, committed by Greg Kroah-Hartman on 23 December 2009, 19:34:11 UTC
While converting emi62 to use request_firmware(), the driver was also
changed to use the ihex helper functions.  However, this broke the loading
of the FPGA firmware because the code tries to access the addr field of
the EOF record which works with a plain array that has an empty last
record but not with the ihex helper functions where the end of the data is
signaled with a NULL record pointer, resulting in:

BUG: unable to handle kernel NULL pointer dereference at (null)
IP: [<f80d248c>] emi62_load_firmware+0x33c/0x740 [emi62]

This can be fixed by changing the loop condition to test the return value
of ihex_next_binrec() directly (like in emi26.c).

Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
Reported-and-tested-by: Der Mickster <retroeffective@gmail.com>
Acked-by: David Woodhouse <David.Woodhouse@intel.com>
Cc: stable <stable@kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

1 parent 27f1281
History
File Mode Size
Kconfig -rw-r--r-- 3.1 KB
Kconfig.iosched -rw-r--r-- 1.8 KB
Makefile -rw-r--r-- 582 bytes
blk-barrier.c -rw-r--r-- 10.6 KB
blk-cgroup.c -rw-r--r-- 9.1 KB
blk-cgroup.h -rw-r--r-- 3.6 KB
blk-core.c -rw-r--r-- 67.4 KB
blk-exec.c -rw-r--r-- 2.6 KB
blk-integrity.c -rw-r--r-- 9.9 KB
blk-ioc.c -rw-r--r-- 4.0 KB
blk-iopoll.c -rw-r--r-- 5.9 KB
blk-map.c -rw-r--r-- 8.1 KB
blk-merge.c -rw-r--r-- 10.8 KB
blk-settings.c -rw-r--r-- 23.5 KB
blk-softirq.c -rw-r--r-- 4.1 KB
blk-sysfs.c -rw-r--r-- 12.9 KB
blk-tag.c -rw-r--r-- 9.9 KB
blk-timeout.c -rw-r--r-- 5.7 KB
blk.h -rw-r--r-- 4.5 KB
bsg.c -rw-r--r-- 23.4 KB
cfq-iosched.c -rw-r--r-- 98.7 KB
compat_ioctl.c -rw-r--r-- 22.1 KB
deadline-iosched.c -rw-r--r-- 11.4 KB
elevator.c -rw-r--r-- 24.3 KB
genhd.c -rw-r--r-- 29.9 KB
ioctl.c -rw-r--r-- 8.2 KB
noop-iosched.c -rw-r--r-- 2.6 KB
scsi_ioctl.c -rw-r--r-- 18.0 KB

back to top