From 6bacf3c99f2f1743328317812e3bee3d18b9b5f9 Mon Sep 17 00:00:00 2001 From: nbd Date: Tue, 21 Jul 2009 15:05:13 +0000 Subject: fix a >2 year old stack overflow in the mtd rootfs split patch which only caused issues on the orion platform on 2.6.30. also merge the squashfs4 fix into the rootfs split patch git-svn-id: svn://svn.openwrt.org/openwrt/trunk@16944 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- .../066-rootfs_split_squashfs4_fix.patch | 27 ---------------------- 1 file changed, 27 deletions(-) delete mode 100644 target/linux/generic-2.6/patches-2.6.30/066-rootfs_split_squashfs4_fix.patch (limited to 'target/linux/generic-2.6/patches-2.6.30/066-rootfs_split_squashfs4_fix.patch') diff --git a/target/linux/generic-2.6/patches-2.6.30/066-rootfs_split_squashfs4_fix.patch b/target/linux/generic-2.6/patches-2.6.30/066-rootfs_split_squashfs4_fix.patch deleted file mode 100644 index a968a57fa..000000000 --- a/target/linux/generic-2.6/patches-2.6.30/066-rootfs_split_squashfs4_fix.patch +++ /dev/null @@ -1,27 +0,0 @@ ---- a/drivers/mtd/mtdpart.c -+++ b/drivers/mtd/mtdpart.c -@@ -538,21 +538,21 @@ static int split_squashfs(struct mtd_inf - return -EINVAL; - } - -- if (*((u32 *) buf) != SQUASHFS_MAGIC) { -+ if (SQUASHFS_MAGIC != le32_to_cpu(sb->s_magic) ) { - printk(KERN_ALERT "split_squashfs: no squashfs found in \"%s\"\n", - master->name); - *split_offset = 0; - return 0; - } - -- if (sb->bytes_used <= 0) { -+ if (le64_to_cpu((sb->bytes_used)) <= 0) { - printk(KERN_ALERT "split_squashfs: squashfs is empty in \"%s\"\n", - master->name); - *split_offset = 0; - return 0; - } - -- len = (u32) sb->bytes_used; -+ len = (u32) le64_to_cpu(sb->bytes_used); - len += (offset & 0x000fffff); - len += (master->erasesize - 1); - len &= ~(master->erasesize - 1); -- cgit v1.2.3