kernel: refresh patches for kernel 3.18

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>

SVN-Revision: 43536
lede-17.01
Hauke Mehrtens 2014-12-07 16:12:44 +00:00
parent 8e738da02c
commit 563f963b1b
12 changed files with 45 additions and 83 deletions

View File

@ -13,8 +13,6 @@ Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
arch/arm/boot/dts/bcm5301x.dtsi | 1 + arch/arm/boot/dts/bcm5301x.dtsi | 1 +
2 files changed, 26 insertions(+) 2 files changed, 26 insertions(+)
diff --git a/arch/arm/boot/dts/bcm4708-netgear-r6250.dts b/arch/arm/boot/dts/bcm4708-netgear-r6250.dts
index 58d999d..4ed7de1 100644
--- a/arch/arm/boot/dts/bcm4708-netgear-r6250.dts --- a/arch/arm/boot/dts/bcm4708-netgear-r6250.dts
+++ b/arch/arm/boot/dts/bcm4708-netgear-r6250.dts +++ b/arch/arm/boot/dts/bcm4708-netgear-r6250.dts
@@ -66,4 +66,29 @@ @@ -66,4 +66,29 @@
@ -47,8 +45,6 @@ index 58d999d..4ed7de1 100644
+ }; + };
+ }; + };
}; };
diff --git a/arch/arm/boot/dts/bcm5301x.dtsi b/arch/arm/boot/dts/bcm5301x.dtsi
index b7c4e9e..78aec62 100644
--- a/arch/arm/boot/dts/bcm5301x.dtsi --- a/arch/arm/boot/dts/bcm5301x.dtsi
+++ b/arch/arm/boot/dts/bcm5301x.dtsi +++ b/arch/arm/boot/dts/bcm5301x.dtsi
@@ -9,6 +9,7 @@ @@ -9,6 +9,7 @@
@ -59,6 +55,3 @@ index b7c4e9e..78aec62 100644
#include <dt-bindings/interrupt-controller/irq.h> #include <dt-bindings/interrupt-controller/irq.h>
#include <dt-bindings/interrupt-controller/arm-gic.h> #include <dt-bindings/interrupt-controller/arm-gic.h>
#include "skeleton.dtsi" #include "skeleton.dtsi"
--
1.8.4.5

View File

@ -9,7 +9,7 @@ Subject: [PATCH 07/17] ARM: BCM5301X: register bcma bus
--- a/arch/arm/boot/dts/bcm5301x.dtsi --- a/arch/arm/boot/dts/bcm5301x.dtsi
+++ b/arch/arm/boot/dts/bcm5301x.dtsi +++ b/arch/arm/boot/dts/bcm5301x.dtsi
@@ -94,18 +94,102 @@ @@ -95,18 +95,102 @@
}; };
}; };

View File

@ -17,8 +17,6 @@ Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
arch/arm/boot/dts/bcm47081-buffalo-wzr-600dhp2.dts | 2 +- arch/arm/boot/dts/bcm47081-buffalo-wzr-600dhp2.dts | 2 +-
5 files changed, 5 insertions(+), 5 deletions(-) 5 files changed, 5 insertions(+), 5 deletions(-)
diff --git a/arch/arm/boot/dts/bcm4708-buffalo-wzr-1750dhp.dts b/arch/arm/boot/dts/bcm4708-buffalo-wzr-1750dhp.dts
index 5fc0fae..583720e 100644
--- a/arch/arm/boot/dts/bcm4708-buffalo-wzr-1750dhp.dts --- a/arch/arm/boot/dts/bcm4708-buffalo-wzr-1750dhp.dts
+++ b/arch/arm/boot/dts/bcm4708-buffalo-wzr-1750dhp.dts +++ b/arch/arm/boot/dts/bcm4708-buffalo-wzr-1750dhp.dts
@@ -24,7 +24,7 @@ @@ -24,7 +24,7 @@
@ -30,8 +28,6 @@ index 5fc0fae..583720e 100644
#address-cells = <1>; #address-cells = <1>;
#size-cells = <0>; #size-cells = <0>;
poll-interval = <200>; poll-interval = <200>;
diff --git a/arch/arm/boot/dts/bcm4708-netgear-r6250.dts b/arch/arm/boot/dts/bcm4708-netgear-r6250.dts
index 05e80b1..70a1093 100644
--- a/arch/arm/boot/dts/bcm4708-netgear-r6250.dts --- a/arch/arm/boot/dts/bcm4708-netgear-r6250.dts
+++ b/arch/arm/boot/dts/bcm4708-netgear-r6250.dts +++ b/arch/arm/boot/dts/bcm4708-netgear-r6250.dts
@@ -68,7 +68,7 @@ @@ -68,7 +68,7 @@
@ -43,8 +39,6 @@ index 05e80b1..70a1093 100644
#address-cells = <1>; #address-cells = <1>;
#size-cells = <0>; #size-cells = <0>;
poll-interval = <200>; poll-interval = <200>;
diff --git a/arch/arm/boot/dts/bcm4708-netgear-r6300-v2.dts b/arch/arm/boot/dts/bcm4708-netgear-r6300-v2.dts
index 12fc2a0..ac299a2 100644
--- a/arch/arm/boot/dts/bcm4708-netgear-r6300-v2.dts --- a/arch/arm/boot/dts/bcm4708-netgear-r6300-v2.dts
+++ b/arch/arm/boot/dts/bcm4708-netgear-r6300-v2.dts +++ b/arch/arm/boot/dts/bcm4708-netgear-r6300-v2.dts
@@ -58,7 +58,7 @@ @@ -58,7 +58,7 @@
@ -56,8 +50,6 @@ index 12fc2a0..ac299a2 100644
#address-cells = <1>; #address-cells = <1>;
#size-cells = <0>; #size-cells = <0>;
poll-interval = <200>; poll-interval = <200>;
diff --git a/arch/arm/boot/dts/bcm47081-asus-rt-n18u.dts b/arch/arm/boot/dts/bcm47081-asus-rt-n18u.dts
index fb76378..934b244 100644
--- a/arch/arm/boot/dts/bcm47081-asus-rt-n18u.dts --- a/arch/arm/boot/dts/bcm47081-asus-rt-n18u.dts
+++ b/arch/arm/boot/dts/bcm47081-asus-rt-n18u.dts +++ b/arch/arm/boot/dts/bcm47081-asus-rt-n18u.dts
@@ -58,7 +58,7 @@ @@ -58,7 +58,7 @@
@ -69,8 +61,6 @@ index fb76378..934b244 100644
#address-cells = <1>; #address-cells = <1>;
#size-cells = <0>; #size-cells = <0>;
poll-interval = <200>; poll-interval = <200>;
diff --git a/arch/arm/boot/dts/bcm47081-buffalo-wzr-600dhp2.dts b/arch/arm/boot/dts/bcm47081-buffalo-wzr-600dhp2.dts
index bbb414f..d2aefef 100644
--- a/arch/arm/boot/dts/bcm47081-buffalo-wzr-600dhp2.dts --- a/arch/arm/boot/dts/bcm47081-buffalo-wzr-600dhp2.dts
+++ b/arch/arm/boot/dts/bcm47081-buffalo-wzr-600dhp2.dts +++ b/arch/arm/boot/dts/bcm47081-buffalo-wzr-600dhp2.dts
@@ -24,7 +24,7 @@ @@ -24,7 +24,7 @@
@ -82,6 +72,3 @@ index bbb414f..d2aefef 100644
#address-cells = <1>; #address-cells = <1>;
#size-cells = <0>; #size-cells = <0>;
poll-interval = <200>; poll-interval = <200>;
--
1.8.4.5

View File

@ -14,8 +14,6 @@ Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
arch/arm/boot/dts/bcm47081-buffalo-wzr-600dhp2.dts | 10 ++++++++++ arch/arm/boot/dts/bcm47081-buffalo-wzr-600dhp2.dts | 10 ++++++++++
4 files changed, 40 insertions(+) 4 files changed, 40 insertions(+)
diff --git a/arch/arm/boot/dts/bcm4708-buffalo-wzr-1750dhp.dts b/arch/arm/boot/dts/bcm4708-buffalo-wzr-1750dhp.dts
index 583720e..d472c36 100644
--- a/arch/arm/boot/dts/bcm4708-buffalo-wzr-1750dhp.dts --- a/arch/arm/boot/dts/bcm4708-buffalo-wzr-1750dhp.dts
+++ b/arch/arm/boot/dts/bcm4708-buffalo-wzr-1750dhp.dts +++ b/arch/arm/boot/dts/bcm4708-buffalo-wzr-1750dhp.dts
@@ -23,6 +23,16 @@ @@ -23,6 +23,16 @@
@ -35,8 +33,6 @@ index 583720e..d472c36 100644
gpio-keys { gpio-keys {
compatible = "gpio-keys-polled"; compatible = "gpio-keys-polled";
#address-cells = <1>; #address-cells = <1>;
diff --git a/arch/arm/boot/dts/bcm4708-netgear-r6300-v2.dts b/arch/arm/boot/dts/bcm4708-netgear-r6300-v2.dts
index ac299a2..257d6da 100644
--- a/arch/arm/boot/dts/bcm4708-netgear-r6300-v2.dts --- a/arch/arm/boot/dts/bcm4708-netgear-r6300-v2.dts
+++ b/arch/arm/boot/dts/bcm4708-netgear-r6300-v2.dts +++ b/arch/arm/boot/dts/bcm4708-netgear-r6300-v2.dts
@@ -23,6 +23,16 @@ @@ -23,6 +23,16 @@
@ -56,8 +52,6 @@ index ac299a2..257d6da 100644
leds { leds {
compatible = "gpio-leds"; compatible = "gpio-leds";
diff --git a/arch/arm/boot/dts/bcm47081-asus-rt-n18u.dts b/arch/arm/boot/dts/bcm47081-asus-rt-n18u.dts
index 934b244..cad0e85 100644
--- a/arch/arm/boot/dts/bcm47081-asus-rt-n18u.dts --- a/arch/arm/boot/dts/bcm47081-asus-rt-n18u.dts
+++ b/arch/arm/boot/dts/bcm47081-asus-rt-n18u.dts +++ b/arch/arm/boot/dts/bcm47081-asus-rt-n18u.dts
@@ -23,6 +23,16 @@ @@ -23,6 +23,16 @@
@ -77,8 +71,6 @@ index 934b244..cad0e85 100644
leds { leds {
compatible = "gpio-leds"; compatible = "gpio-leds";
diff --git a/arch/arm/boot/dts/bcm47081-buffalo-wzr-600dhp2.dts b/arch/arm/boot/dts/bcm47081-buffalo-wzr-600dhp2.dts
index d2aefef..f3a0326 100644
--- a/arch/arm/boot/dts/bcm47081-buffalo-wzr-600dhp2.dts --- a/arch/arm/boot/dts/bcm47081-buffalo-wzr-600dhp2.dts
+++ b/arch/arm/boot/dts/bcm47081-buffalo-wzr-600dhp2.dts +++ b/arch/arm/boot/dts/bcm47081-buffalo-wzr-600dhp2.dts
@@ -23,6 +23,16 @@ @@ -23,6 +23,16 @@
@ -98,6 +90,3 @@ index d2aefef..f3a0326 100644
gpio-keys { gpio-keys {
compatible = "gpio-keys-polled"; compatible = "gpio-keys-polled";
#address-cells = <1>; #address-cells = <1>;
--
1.8.4.5

View File

@ -14,7 +14,7 @@ Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
--- a/arch/arm/mach-bcm/bcm_5301x.c --- a/arch/arm/mach-bcm/bcm_5301x.c
+++ b/arch/arm/mach-bcm/bcm_5301x.c +++ b/arch/arm/mach-bcm/bcm_5301x.c
@@ -80,7 +80,10 @@ static const char __initconst *bcm5301x_ @@ -79,7 +79,10 @@ static const char __initconst *bcm5301x_
}; };
DT_MACHINE_START(BCM5301X, "BCM5301X") DT_MACHINE_START(BCM5301X, "BCM5301X")

View File

@ -58,10 +58,10 @@
static inline void protected_writeback_dcache_line(unsigned long addr) static inline void protected_writeback_dcache_line(unsigned long addr)
{ {
+ BCM4710_DUMMY_RREG(); + BCM4710_DUMMY_RREG();
protected_cache_op(Hit_Writeback_Inv_D, addr); #ifdef CONFIG_EVA
} protected_cachee_op(Hit_Writeback_Inv_D, addr);
#else
@@ -462,8 +481,51 @@ static inline void invalidate_tcache_pag @@ -466,8 +485,51 @@ static inline void invalidate_tcache_pag
: "r" (base), \ : "r" (base), \
"i" (op)); "i" (op));
@ -114,7 +114,7 @@
static inline void extra##blast_##pfx##cache##lsize(void) \ static inline void extra##blast_##pfx##cache##lsize(void) \
{ \ { \
unsigned long start = INDEX_BASE; \ unsigned long start = INDEX_BASE; \
@@ -475,6 +537,7 @@ static inline void extra##blast_##pfx##c @@ -479,6 +541,7 @@ static inline void extra##blast_##pfx##c
\ \
__##pfx##flush_prologue \ __##pfx##flush_prologue \
\ \
@ -122,7 +122,7 @@
for (ws = 0; ws < ws_end; ws += ws_inc) \ for (ws = 0; ws < ws_end; ws += ws_inc) \
for (addr = start; addr < end; addr += lsize * 32) \ for (addr = start; addr < end; addr += lsize * 32) \
cache##lsize##_unroll32(addr|ws, indexop); \ cache##lsize##_unroll32(addr|ws, indexop); \
@@ -489,6 +552,7 @@ static inline void extra##blast_##pfx##c @@ -493,6 +556,7 @@ static inline void extra##blast_##pfx##c
\ \
__##pfx##flush_prologue \ __##pfx##flush_prologue \
\ \
@ -130,7 +130,7 @@
do { \ do { \
cache##lsize##_unroll32(start, hitop); \ cache##lsize##_unroll32(start, hitop); \
start += lsize * 32; \ start += lsize * 32; \
@@ -507,6 +571,8 @@ static inline void extra##blast_##pfx##c @@ -511,6 +575,8 @@ static inline void extra##blast_##pfx##c
current_cpu_data.desc.waybit; \ current_cpu_data.desc.waybit; \
unsigned long ws, addr; \ unsigned long ws, addr; \
\ \
@ -139,7 +139,7 @@
__##pfx##flush_prologue \ __##pfx##flush_prologue \
\ \
for (ws = 0; ws < ws_end; ws += ws_inc) \ for (ws = 0; ws < ws_end; ws += ws_inc) \
@@ -516,26 +582,26 @@ static inline void extra##blast_##pfx##c @@ -520,26 +586,26 @@ static inline void extra##blast_##pfx##c
__##pfx##flush_epilogue \ __##pfx##flush_epilogue \
} }
@ -186,7 +186,7 @@
#define __BUILD_BLAST_USER_CACHE(pfx, desc, indexop, hitop, lsize) \ #define __BUILD_BLAST_USER_CACHE(pfx, desc, indexop, hitop, lsize) \
static inline void blast_##pfx##cache##lsize##_user_page(unsigned long page) \ static inline void blast_##pfx##cache##lsize##_user_page(unsigned long page) \
@@ -564,17 +630,19 @@ __BUILD_BLAST_USER_CACHE(d, dcache, Inde @@ -568,17 +634,19 @@ __BUILD_BLAST_USER_CACHE(d, dcache, Inde
__BUILD_BLAST_USER_CACHE(i, icache, Index_Invalidate_I, Hit_Invalidate_I, 64) __BUILD_BLAST_USER_CACHE(i, icache, Index_Invalidate_I, Hit_Invalidate_I, 64)
/* build blast_xxx_range, protected_blast_xxx_range */ /* build blast_xxx_range, protected_blast_xxx_range */
@ -207,7 +207,7 @@
prot##cache_op(hitop, addr); \ prot##cache_op(hitop, addr); \
if (addr == aend) \ if (addr == aend) \
break; \ break; \
@@ -586,8 +654,8 @@ static inline void prot##extra##blast_## @@ -590,8 +658,8 @@ static inline void prot##extra##blast_##
#ifndef CONFIG_EVA #ifndef CONFIG_EVA
@ -218,7 +218,7 @@
#else #else
@@ -624,14 +692,14 @@ __BUILD_PROT_BLAST_CACHE_RANGE(d, dcache @@ -628,14 +696,14 @@ __BUILD_PROT_BLAST_CACHE_RANGE(d, dcache
__BUILD_PROT_BLAST_CACHE_RANGE(i, icache, Hit_Invalidate_I) __BUILD_PROT_BLAST_CACHE_RANGE(i, icache, Hit_Invalidate_I)
#endif #endif

View File

@ -19,11 +19,9 @@ Any objections?
drivers/mtd/bcm47xxpart.c | 8 ++++++-- drivers/mtd/bcm47xxpart.c | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-) 1 file changed, 6 insertions(+), 2 deletions(-)
diff --git a/drivers/mtd/bcm47xxpart.c b/drivers/mtd/bcm47xxpart.c
index dfd57a0..948f535 100644
--- a/drivers/mtd/bcm47xxpart.c --- a/drivers/mtd/bcm47xxpart.c
+++ b/drivers/mtd/bcm47xxpart.c +++ b/drivers/mtd/bcm47xxpart.c
@@ -95,8 +95,12 @@ static int bcm47xxpart_parse(struct mtd_info *master, @@ -95,8 +95,12 @@ static int bcm47xxpart_parse(struct mtd_
int possible_nvram_sizes[] = { 0x8000, 0xF000, 0x10000, }; int possible_nvram_sizes[] = { 0x8000, 0xF000, 0x10000, };
bool found_nvram = false; bool found_nvram = false;
@ -38,6 +36,3 @@ index dfd57a0..948f535 100644
/* Alloc */ /* Alloc */
parts = kzalloc(sizeof(struct mtd_partition) * BCM47XXPART_MAX_PARTS, parts = kzalloc(sizeof(struct mtd_partition) * BCM47XXPART_MAX_PARTS,
--
1.8.4.5

View File

@ -11,8 +11,6 @@ Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
drivers/bcma/driver_chipcommon_sflash.c | 29 +++++++++++++++++++++++++++++ drivers/bcma/driver_chipcommon_sflash.c | 29 +++++++++++++++++++++++++++++
1 file changed, 29 insertions(+) 1 file changed, 29 insertions(+)
diff --git a/drivers/bcma/driver_chipcommon_sflash.c b/drivers/bcma/driver_chipcommon_sflash.c
index 7e11ef4..25d9e17 100644
--- a/drivers/bcma/driver_chipcommon_sflash.c --- a/drivers/bcma/driver_chipcommon_sflash.c
+++ b/drivers/bcma/driver_chipcommon_sflash.c +++ b/drivers/bcma/driver_chipcommon_sflash.c
@@ -9,6 +9,7 @@ @@ -9,6 +9,7 @@
@ -23,7 +21,7 @@ index 7e11ef4..25d9e17 100644
static struct resource bcma_sflash_resource = { static struct resource bcma_sflash_resource = {
.name = "bcma_sflash", .name = "bcma_sflash",
@@ -41,6 +42,13 @@ static const struct bcma_sflash_tbl_e bcma_sflash_st_tbl[] = { @@ -41,6 +42,13 @@ static const struct bcma_sflash_tbl_e bc
{ NULL }, { NULL },
}; };
@ -37,7 +35,7 @@ index 7e11ef4..25d9e17 100644
static const struct bcma_sflash_tbl_e bcma_sflash_sst_tbl[] = { static const struct bcma_sflash_tbl_e bcma_sflash_sst_tbl[] = {
{ "SST25WF512", 1, 0x1000, 16, }, { "SST25WF512", 1, 0x1000, 16, },
{ "SST25VF512", 0x48, 0x1000, 16, }, { "SST25VF512", 0x48, 0x1000, 16, },
@@ -84,6 +92,23 @@ static void bcma_sflash_cmd(struct bcma_drv_cc *cc, u32 opcode) @@ -84,6 +92,23 @@ static void bcma_sflash_cmd(struct bcma_
bcma_err(cc->core->bus, "SFLASH control command failed (timeout)!\n"); bcma_err(cc->core->bus, "SFLASH control command failed (timeout)!\n");
} }
@ -61,7 +59,7 @@ index 7e11ef4..25d9e17 100644
/* Initialize serial flash access */ /* Initialize serial flash access */
int bcma_sflash_init(struct bcma_drv_cc *cc) int bcma_sflash_init(struct bcma_drv_cc *cc)
{ {
@@ -114,6 +139,10 @@ int bcma_sflash_init(struct bcma_drv_cc *cc) @@ -114,6 +139,10 @@ int bcma_sflash_init(struct bcma_drv_cc
case 0x13: case 0x13:
return -ENOTSUPP; return -ENOTSUPP;
default: default:
@ -72,6 +70,3 @@ index 7e11ef4..25d9e17 100644
for (e = bcma_sflash_st_tbl; e->name; e++) { for (e = bcma_sflash_st_tbl; e->name; e++) {
if (e->id == id) if (e->id == id)
break; break;
--
1.8.4.5

View File

@ -86,7 +86,7 @@
build_get_pgde32(p, wr.r1, wr.r2); /* get pgd in ptr */ build_get_pgde32(p, wr.r1, wr.r2); /* get pgd in ptr */
#endif #endif
@@ -1894,6 +1900,9 @@ build_r4000_tlbchange_handler_tail(u32 * @@ -1902,6 +1908,9 @@ build_r4000_tlbchange_handler_tail(u32 *
build_tlb_write_entry(p, l, r, tlb_indexed); build_tlb_write_entry(p, l, r, tlb_indexed);
uasm_l_leave(l, *p); uasm_l_leave(l, *p);
build_restore_work_registers(p); build_restore_work_registers(p);

View File

@ -11,7 +11,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
--- a/drivers/mtd/ubi/build.c --- a/drivers/mtd/ubi/build.c
+++ b/drivers/mtd/ubi/build.c +++ b/drivers/mtd/ubi/build.c
@@ -1209,6 +1209,48 @@ @@ -1209,6 +1209,48 @@ static struct mtd_info * __init open_mtd
return mtd; return mtd;
} }
@ -60,7 +60,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
static int __init ubi_init(void) static int __init ubi_init(void)
{ {
int err, i, k; int err, i, k;
@@ -1298,6 +1340,12 @@ @@ -1298,6 +1340,12 @@ static int __init ubi_init(void)
} }
} }

View File

@ -124,7 +124,7 @@
/* LzmaDecode /* LzmaDecode
--- a/lib/lzma/LzmaDec.c --- a/lib/lzma/LzmaDec.c
+++ b/lib/lzma/LzmaDec.c +++ b/lib/lzma/LzmaDec.c
@@ -682,7 +682,7 @@ static void LzmaDec_InitRc(CLzmaDec *p, @@ -682,7 +682,7 @@ static void LzmaDec_InitRc(CLzmaDec *p,
p->needFlush = 0; p->needFlush = 0;
} }
@ -219,26 +219,26 @@
{ {
UInt32 dicSize; UInt32 dicSize;
Byte d; Byte d;
@@ -935,33 +883,11 @@ static SRes LzmaDec_AllocateProbs2(CLzma @@ -935,7 +883,7 @@ static SRes LzmaDec_AllocateProbs2(CLzma
return SZ_OK; return SZ_OK;
} }
-SRes LzmaDec_AllocateProbs(CLzmaDec *p, const Byte *props, unsigned propsSize, ISzAlloc *alloc) -SRes LzmaDec_AllocateProbs(CLzmaDec *p, const Byte *props, unsigned propsSize, ISzAlloc *alloc)
-{
- CLzmaProps propNew;
- RINOK(LzmaProps_Decode(&propNew, props, propsSize));
- RINOK(LzmaDec_AllocateProbs2(p, &propNew, alloc));
- p->prop = propNew;
- return SZ_OK;
-}
-
-SRes LzmaDec_Allocate(CLzmaDec *p, const Byte *props, unsigned propsSize, ISzAlloc *alloc)
+static SRes LzmaDec_AllocateProbs(CLzmaDec *p, const Byte *props, unsigned propsSize, ISzAlloc *alloc) +static SRes LzmaDec_AllocateProbs(CLzmaDec *p, const Byte *props, unsigned propsSize, ISzAlloc *alloc)
{ {
CLzmaProps propNew; CLzmaProps propNew;
- SizeT dicBufSize;
RINOK(LzmaProps_Decode(&propNew, props, propsSize)); RINOK(LzmaProps_Decode(&propNew, props, propsSize));
RINOK(LzmaDec_AllocateProbs2(p, &propNew, alloc)); @@ -943,28 +891,6 @@ SRes LzmaDec_AllocateProbs(CLzmaDec *p,
p->prop = propNew;
return SZ_OK;
}
-
-SRes LzmaDec_Allocate(CLzmaDec *p, const Byte *props, unsigned propsSize, ISzAlloc *alloc)
-{
- CLzmaProps propNew;
- SizeT dicBufSize;
- RINOK(LzmaProps_Decode(&propNew, props, propsSize));
- RINOK(LzmaDec_AllocateProbs2(p, &propNew, alloc));
- dicBufSize = propNew.dicSize; - dicBufSize = propNew.dicSize;
- if (p->dic == 0 || dicBufSize != p->dicBufSize) - if (p->dic == 0 || dicBufSize != p->dicBufSize)
- { - {
@ -251,9 +251,12 @@
- } - }
- } - }
- p->dicBufSize = dicBufSize; - p->dicBufSize = dicBufSize;
p->prop = propNew; - p->prop = propNew;
return SZ_OK; - return SZ_OK;
} -}
SRes LzmaDecode(Byte *dest, SizeT *destLen, const Byte *src, SizeT *srcLen,
const Byte *propData, unsigned propSize, ELzmaFinishMode finishMode,
--- a/include/linux/lzma/LzmaEnc.h --- a/include/linux/lzma/LzmaEnc.h
+++ b/include/linux/lzma/LzmaEnc.h +++ b/include/linux/lzma/LzmaEnc.h
@@ -31,9 +31,6 @@ typedef struct _CLzmaEncProps @@ -31,9 +31,6 @@ typedef struct _CLzmaEncProps
@ -597,7 +600,7 @@
void MatchFinder_Construct(CMatchFinder *p); void MatchFinder_Construct(CMatchFinder *p);
/* Conditions: /* Conditions:
@@ -70,12 +65,6 @@ int MatchFinder_Create(CMatchFinder *p, @@ -70,12 +65,6 @@ int MatchFinder_Create(CMatchFinder *p,
UInt32 keepAddBufferBefore, UInt32 matchMaxLen, UInt32 keepAddBufferAfter, UInt32 keepAddBufferBefore, UInt32 matchMaxLen, UInt32 keepAddBufferAfter,
ISzAlloc *alloc); ISzAlloc *alloc);
void MatchFinder_Free(CMatchFinder *p, ISzAlloc *alloc); void MatchFinder_Free(CMatchFinder *p, ISzAlloc *alloc);
@ -686,7 +689,7 @@
{ {
memmove(p->bufferBase, memmove(p->bufferBase,
p->buffer - p->keepSizeBefore, p->buffer - p->keepSizeBefore,
@@ -97,22 +103,14 @@ void MatchFinder_MoveBlock(CMatchFinder @@ -97,22 +103,14 @@ void MatchFinder_MoveBlock(CMatchFinder
p->buffer = p->bufferBase + p->keepSizeBefore; p->buffer = p->bufferBase + p->keepSizeBefore;
} }

View File

@ -76,10 +76,11 @@
counters = alloc_counters(table); counters = alloc_counters(table);
if (IS_ERR(counters)) if (IS_ERR(counters))
@@ -966,6 +995,14 @@ copy_entries_to_user(unsigned int total_ @@ -965,6 +994,14 @@ copy_entries_to_user(unsigned int total_
ret = -EFAULT;
goto free_counters; goto free_counters;
} }
+
+ flags = e->ip.flags & IPT_F_MASK; + flags = e->ip.flags & IPT_F_MASK;
+ if (copy_to_user(userptr + off + if (copy_to_user(userptr + off
+ + offsetof(struct ipt_entry, ip.flags), + + offsetof(struct ipt_entry, ip.flags),
@ -87,7 +88,6 @@
+ ret = -EFAULT; + ret = -EFAULT;
+ goto free_counters; + goto free_counters;
+ } + }
+
for (i = sizeof(struct ipt_entry); for (i = sizeof(struct ipt_entry);
i < e->target_offset; i < e->target_offset;
i += m->u.match_size) {