This backports this patch:
commit
f45f3c1f3f616ca1d1e1eb5e7a720ca63cb59550
Author: Johannes Berg <johannes.berg@intel.com>
Date: Wed Aug 18 17:15:18 2010 +0200
firmware_class: fix typo in error path
In the error path, _request_firmware sets
firmware_p to NULL rather than *firmware_p,
which leads to passing a freed firmware
struct to drivers when the firmware file
cannot be found. Fix this.
Broken by commit
f8a4bd3456b988fc73b2c.
Reported-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Acked-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Signed-off-by: Pekka Enberg <penberg@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
All kernels older than 2.6.33 would be affected by this.
Signed-off-by: Luis R. Rodriguez <lrodriguez@atheros.com>
out:
if (retval) {
release_firmware(firmware);
- firmware_p = NULL;
+ *firmware_p = NULL;
}
return retval;