Index: sys/arch/arm/fdt/arm_simplefb.c =================================================================== RCS file: /cvsroot/src/sys/arch/arm/fdt/arm_simplefb.c,v retrieving revision 1.9 diff -u -p -r1.9 arm_simplefb.c --- sys/arch/arm/fdt/arm_simplefb.c 2 Mar 2021 07:02:05 -0000 1.9 +++ sys/arch/arm/fdt/arm_simplefb.c 2 Mar 2021 13:22:35 -0000 @@ -237,7 +237,11 @@ arm_simplefb_preattach(void) return; } - if (size < width * height * depth) + if (stride < width * depth) { + return; + } + + if (size < stride * height) return; if (bus_space_map(bst, addr, size, Index: sys/dev/fdt/simplefb.c =================================================================== RCS file: /cvsroot/src/sys/dev/fdt/simplefb.c,v retrieving revision 1.13 diff -u -p -r1.13 simplefb.c --- sys/dev/fdt/simplefb.c 2 Mar 2021 07:02:06 -0000 1.13 +++ sys/dev/fdt/simplefb.c 2 Mar 2021 13:22:35 -0000 @@ -169,7 +169,12 @@ simplefb_attach_genfb(struct simplefb_so return ENXIO; } - if (size < width * height * depth) { + if (stride < width * depth) { + aprint_error(": incorrect stride\n"); + return ENXIO; + } + + if (size < stride * height) { aprint_error(": incorrect size\n"); return ENXIO; }