mirror of
https://github.com/torvalds/linux.git
synced 2026-07-27 09:36:22 +02:00
mtd: maps: vmu-flash: fix fault in unaligned fixup
Use kzalloc_obj() / kzalloc_objs() to allocate the memcard structs,
instead of kmalloc_obj() / kmalloc_objs() to prevent access to
uninitialized data.
Fixes runtime error: Fault in unaligned fixup: 0000 [#1] at
mtd_get_fact_prot_info.
Fixes: 47a72688fa ("mtd: flash mapping support for Dreamcast VMU.")
Cc: stable@vger.kernel.org
Signed-off-by: Florian Fuchs <fuchsfl@gmail.com>
Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
This commit is contained in:
parent
f4aeb151b8
commit
79d1661502
|
|
@ -609,7 +609,7 @@ static int vmu_connect(struct maple_device *mdev)
|
|||
|
||||
basic_flash_data = be32_to_cpu(mdev->devinfo.function_data[c - 1]);
|
||||
|
||||
card = kmalloc_obj(struct memcard);
|
||||
card = kzalloc_obj(struct memcard);
|
||||
if (!card) {
|
||||
error = -ENOMEM;
|
||||
goto fail_nomem;
|
||||
|
|
@ -627,13 +627,13 @@ static int vmu_connect(struct maple_device *mdev)
|
|||
* Not sure there are actually any multi-partition devices in the
|
||||
* real world, but the hardware supports them, so, so will we
|
||||
*/
|
||||
card->parts = kmalloc_objs(struct vmupart, card->partitions);
|
||||
card->parts = kzalloc_objs(struct vmupart, card->partitions);
|
||||
if (!card->parts) {
|
||||
error = -ENOMEM;
|
||||
goto fail_partitions;
|
||||
}
|
||||
|
||||
card->mtd = kmalloc_objs(struct mtd_info, card->partitions);
|
||||
card->mtd = kzalloc_objs(struct mtd_info, card->partitions);
|
||||
if (!card->mtd) {
|
||||
error = -ENOMEM;
|
||||
goto fail_mtd_info;
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user