summaryrefslogtreecommitdiff
path: root/disk
diff options
context:
space:
mode:
authorAlexey Brodkin <Alexey.Brodkin@synopsys.com>2018-01-29 22:58:24 +0300
committerTom Rini <trini@konsulko.com>2018-02-07 22:06:17 -0500
commit8639e34d2c5e12cc2e45c95b1a2e97c22bf6a711 (patch)
tree5530c592a371ab178ce6ab64df813623bfbbd941 /disk
parent6808ef9ac2a66a261bf341a99c3edb1e69f1cbdd (diff)
part: Allocate only one legacy_mbr buffer
Commit ff98cb90514d ("part: extract MBR signature from partitions") blindly switched allocated by ALLOC_CACHE_ALIGN_BUFFER buffer type from "unsigned char" to "legacy_mbr" which caused allocation of size = (typeof(legacy_mbr) * dev_desc->blksize) instead of just space enough for "legacy_mbr" structure. Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com> Cc: Rob Clark <robdclark@gmail.com> Cc: Peter Jones <pjones@redhat.com> Cc: Alexander Graf <agraf@suse.de> Cc: Tom Rini <trini@konsulko.com>
Diffstat (limited to 'disk')
-rw-r--r--disk/part_dos.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/disk/part_dos.c b/disk/part_dos.c
index 046f9bbb3d..9dd086d3db 100644
--- a/disk/part_dos.c
+++ b/disk/part_dos.c
@@ -90,7 +90,7 @@ static int test_block_type(unsigned char *buffer)
static int part_test_dos(struct blk_desc *dev_desc)
{
#ifndef CONFIG_SPL_BUILD
- ALLOC_CACHE_ALIGN_BUFFER(legacy_mbr, mbr, dev_desc->blksz);
+ ALLOC_CACHE_ALIGN_BUFFER(legacy_mbr, mbr, 1);
if (blk_dread(dev_desc, 0, 1, (ulong *)mbr) != 1)
return -1;