default n
help
--- a/fs/squashfs/lzo_wrapper.c
-+++ b/fs/squashfs/lzo_wrapper.c
++++ /dev/null
@@ -1,136 +0,0 @@
-/*
- * Squashfs - a compressed read only filesystem for Linux
+#endif
--- a/lib/Kconfig
+++ b/lib/Kconfig
-@@ -121,6 +121,9 @@ config DECOMPRESS_LZO
+@@ -124,6 +124,9 @@ config DECOMPRESS_LZO
select LZO_DECOMPRESS
tristate
+CFLAGS_compr_lzma.o += -Iinclude/linux -Ilib/lzma
--- a/fs/jffs2/compr.c
+++ b/fs/jffs2/compr.c
-@@ -319,6 +319,9 @@ int __init jffs2_compressors_init(void)
+@@ -320,6 +320,9 @@ int __init jffs2_compressors_init(void)
#ifdef CONFIG_JFFS2_LZO
jffs2_lzo_init();
#endif
/* Setting default compression mode */
#ifdef CONFIG_JFFS2_CMODE_NONE
jffs2_compression_mode = JFFS2_COMPR_MODE_NONE;
-@@ -342,6 +345,9 @@ int __init jffs2_compressors_init(void)
+@@ -343,6 +346,9 @@ int __init jffs2_compressors_init(void)
int jffs2_compressors_exit(void)
{
/* Unregistering compressors */
#endif
--- a/fs/jffs2/compr.h
+++ b/fs/jffs2/compr.h
-@@ -28,9 +28,9 @@
+@@ -29,9 +29,9 @@
#define JFFS2_DYNRUBIN_PRIORITY 20
#define JFFS2_LZARI_PRIORITY 30
#define JFFS2_RTIME_PRIORITY 50
#define JFFS2_RUBINMIPS_DISABLED /* RUBINs will be used only */
#define JFFS2_DYNRUBIN_DISABLED /* for decompression */
-@@ -98,5 +98,9 @@ void jffs2_zlib_exit(void);
+@@ -99,5 +99,9 @@ void jffs2_zlib_exit(void);
int jffs2_lzo_init(void);
void jffs2_lzo_exit(void);
#endif
sizeof(struct jffs2_inode_info),
--- a/include/linux/jffs2.h
+++ b/include/linux/jffs2.h
-@@ -45,6 +45,7 @@
+@@ -46,6 +46,7 @@
#define JFFS2_COMPR_DYNRUBIN 0x05
#define JFFS2_COMPR_ZLIB 0x06
#define JFFS2_COMPR_LZO 0x07
+#endif
--- a/lib/Kconfig
+++ b/lib/Kconfig
-@@ -103,6 +103,12 @@ config LZO_COMPRESS
+@@ -106,6 +106,12 @@ config LZO_COMPRESS
config LZO_DECOMPRESS
tristate
--- a/Makefile
+++ b/Makefile
-@@ -532,7 +532,7 @@ all: vmlinux
+@@ -537,7 +537,7 @@ all: vmlinux
ifdef CONFIG_CC_OPTIMIZE_FOR_SIZE
KBUILD_CFLAGS += -Os
else
endif
include $(srctree)/arch/$(SRCARCH)/Makefile
-@@ -570,6 +570,9 @@ endif
+@@ -579,6 +579,9 @@ endif
NOSTDINC_FLAGS += -nostdinc -isystem $(shell $(CC) -print-file-name=include)
CHECKFLAGS += $(NOSTDINC_FLAGS)
+}
--- a/arch/mips/kernel/Makefile
+++ b/arch/mips/kernel/Makefile
-@@ -94,6 +94,7 @@ obj-$(CONFIG_GPIO_TXX9) += gpio_txx9.o
+@@ -95,6 +95,7 @@ obj-$(CONFIG_GPIO_TXX9) += gpio_txx9.o
obj-$(CONFIG_KEXEC) += machine_kexec.o relocate_kernel.o
obj-$(CONFIG_EARLY_PRINTK) += early_printk.o
obj-$(CONFIG_SPINLOCK_TEST) += spinlock_test.o
--- a/arch/mips/Kconfig
+++ b/arch/mips/Kconfig
-@@ -853,6 +853,9 @@ config MIPS_DISABLE_OBSOLETE_IDE
+@@ -874,6 +874,9 @@ config MIPS_DISABLE_OBSOLETE_IDE
config SYNC_R4K
bool
unsigned int vced_count, vcei_count;
-@@ -31,8 +32,12 @@ static int show_cpuinfo(struct seq_file
+@@ -31,8 +32,12 @@ static int show_cpuinfo(struct seq_file
/*
* For the first processor also print the system type
*/
--- a/arch/mips/Kconfig
+++ b/arch/mips/Kconfig
-@@ -856,6 +856,10 @@ config SYNC_R4K
+@@ -877,6 +877,10 @@ config SYNC_R4K
config MIPS_MACHINE
def_bool n
--
--- a/arch/mips/Kconfig
+++ b/arch/mips/Kconfig
-@@ -841,6 +841,17 @@ config I8259
+@@ -862,6 +862,17 @@ config I8259
config MIPS_BONITO64
bool
--- a/arch/mips/math-emu/Makefile
+++ b/arch/mips/math-emu/Makefile
-@@ -2,12 +2,14 @@
+@@ -2,11 +2,13 @@
# Makefile for the Linux/MIPS kernel FPU emulation.
#
- dp_sqrt.o sp_sqrt.o kernel_linkage.o dsemul.o
+ dp_sqrt.o sp_sqrt.o
- EXTRA_CFLAGS += -Werror
--- a/arch/mips/math-emu/cp1emu.c
+++ b/arch/mips/math-emu/cp1emu.c
@@ -58,7 +58,11 @@
#ifndef SYMBOL_PREFIX
#define VMLINUX_SYMBOL(sym) sym
#else
-@@ -268,35 +289,35 @@
+@@ -264,35 +285,35 @@
/* Kernel symbol table: Normal symbols */ \
__ksymtab : AT(ADDR(__ksymtab) - LOAD_OFFSET) { \
VMLINUX_SYMBOL(__start___ksymtab) = .; \
VMLINUX_SYMBOL(__stop___ksymtab_gpl_future) = .; \
} \
\
-@@ -337,7 +358,7 @@
+@@ -333,7 +354,7 @@
\
/* Kernel symbol table: strings */ \
__ksymtab_strings : AT(ADDR(__ksymtab_strings) - LOAD_OFFSET) { \
} \
\
/* __*init sections */ \
-@@ -652,6 +673,9 @@
+@@ -648,6 +669,9 @@
EXIT_TEXT \
EXIT_DATA \
EXIT_CALL \
+ SYMTAB_DISCARD_GPL \
+ SYMTAB_DISCARD_STR \
*(.discard) \
+ *(.discard.*) \
}
-
--- a/include/linux/module.h
+++ b/include/linux/module.h
@@ -202,16 +202,24 @@ struct module_use {
--- a/arch/arm/kernel/module.c
+++ b/arch/arm/kernel/module.c
-@@ -121,6 +121,10 @@ apply_relocate(Elf32_Shdr *sechdrs, cons
+@@ -123,6 +123,10 @@ apply_relocate(Elf32_Shdr *sechdrs, cons
return -ENOEXEC;
}
default y
--- a/drivers/pci/quirks.c
+++ b/drivers/pci/quirks.c
-@@ -91,6 +91,7 @@ static void __devinit quirk_resource_ali
+@@ -104,6 +104,7 @@ static void __devinit quirk_mmio_always_
}
- DECLARE_PCI_FIXUP_HEADER(PCI_ANY_ID, PCI_ANY_ID, quirk_resource_alignment);
+ DECLARE_PCI_FIXUP_EARLY(PCI_ANY_ID, PCI_ANY_ID, quirk_mmio_always_on);
+#ifndef CONFIG_PCI_DISABLE_COMMON_QUIRKS
/* The Mellanox Tavor device gives false positive parity errors
* Mark this device with a broken_parity_status, to allow
* PCI scanning code to "skip" this now blacklisted device.
-@@ -1904,7 +1905,9 @@ static void __devinit fixup_rev1_53c810(
+@@ -1923,7 +1924,9 @@ static void __devinit fixup_rev1_53c810(
}
}
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_NCR, PCI_DEVICE_ID_NCR_53C810, fixup_rev1_53c810);
/* Enable 1k I/O space granularity on the Intel P64H2 */
static void __devinit quirk_p64h2_1k_io(struct pci_dev *dev)
{
-@@ -2560,6 +2563,7 @@ DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_I
+@@ -2596,6 +2599,7 @@ DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_I
DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x1518, quirk_i82576_sriov);
#endif /* CONFIG_PCI_IOV */
--- a/arch/powerpc/kernel/misc_32.S
+++ b/arch/powerpc/kernel/misc_32.S
-@@ -822,3 +822,80 @@ relocate_new_kernel_end:
+@@ -825,3 +825,80 @@ relocate_new_kernel_end:
relocate_new_kernel_size:
.long relocate_new_kernel_end - relocate_new_kernel
#endif
+#endif
--- a/arch/powerpc/kernel/ppc_ksyms.c
+++ b/arch/powerpc/kernel/ppc_ksyms.c
-@@ -190,3 +190,114 @@ EXPORT_SYMBOL(__mtdcr);
+@@ -186,3 +186,114 @@ EXPORT_SYMBOL(__mtdcr);
EXPORT_SYMBOL(__mfdcr);
#endif
EXPORT_SYMBOL(empty_zero_page);
{
--- a/fs/partitions/check.c
+++ b/fs/partitions/check.c
-@@ -677,6 +677,7 @@ rescan:
+@@ -690,6 +690,7 @@ rescan:
kfree(state);
return 0;
}
ret = -ENOTTY;
--- a/include/linux/mtd/mtd.h
+++ b/include/linux/mtd/mtd.h
-@@ -98,6 +98,7 @@ struct mtd_oob_ops {
+@@ -110,6 +110,7 @@ struct mtd_oob_ops {
uint8_t *oobbuf;
};
struct mtd_info {
u_char type;
uint32_t flags;
-@@ -238,6 +239,9 @@ struct mtd_info {
+@@ -251,6 +252,9 @@ struct mtd_info {
struct device dev;
int usecount;
--- a/drivers/mtd/redboot.c
+++ b/drivers/mtd/redboot.c
-@@ -249,14 +249,21 @@ static int parse_redboot_partitions(stru
+@@ -267,14 +267,21 @@ static int parse_redboot_partitions(stru
#endif
names += strlen(names)+1;
--- a/drivers/mtd/redboot.c
+++ b/drivers/mtd/redboot.c
-@@ -11,6 +11,8 @@
+@@ -29,6 +29,8 @@
#include <linux/mtd/mtd.h>
#include <linux/mtd/partitions.h>
struct fis_image_desc {
unsigned char name[16]; // Null terminated name
uint32_t flash_base; // Address within FLASH of image
-@@ -41,6 +43,7 @@ static int parse_redboot_partitions(stru
+@@ -59,6 +61,7 @@ static int parse_redboot_partitions(stru
struct mtd_partition **pparts,
unsigned long fis_origin)
{
int nrparts = 0;
struct fis_image_desc *buf;
struct mtd_partition *parts;
-@@ -209,14 +212,14 @@ static int parse_redboot_partitions(stru
+@@ -227,14 +230,14 @@ static int parse_redboot_partitions(stru
}
}
#endif
#ifdef CONFIG_MTD_REDBOOT_PARTS_UNALLOCATED
if (nulllen > 0) {
strcpy(nullname, nullstring);
-@@ -235,6 +238,8 @@ static int parse_redboot_partitions(stru
+@@ -253,6 +256,8 @@ static int parse_redboot_partitions(stru
}
#endif
for ( ; i<nrparts; i++) {
parts[i].size = fl->img->size;
parts[i].offset = fl->img->flash_base;
parts[i].name = names;
-@@ -268,6 +273,14 @@ static int parse_redboot_partitions(stru
+@@ -286,6 +291,14 @@ static int parse_redboot_partitions(stru
fl = fl->next;
kfree(tmp_fl);
}
--- a/include/linux/mtd/nand.h
+++ b/include/linux/mtd/nand.h
-@@ -512,6 +512,7 @@ struct platform_nand_chip {
+@@ -510,6 +510,7 @@ struct platform_nand_chip {
int chip_delay;
unsigned int options;
const char **part_probe_types;
void *priv;
--- a/drivers/mtd/nand/plat_nand.c
+++ b/drivers/mtd/nand/plat_nand.c
-@@ -91,7 +91,18 @@ static int __devinit plat_nand_probe(str
+@@ -96,7 +96,18 @@ static int __devinit plat_nand_probe(str
}
/* Scan to find existance of the device */
--- a/net/netfilter/Kconfig
+++ b/net/netfilter/Kconfig
-@@ -921,6 +921,27 @@ config NETFILTER_XT_MATCH_STATE
+@@ -946,6 +946,27 @@ config NETFILTER_XT_MATCH_STATE
To compile it as a module, choose M here. If unsure, say N.
depends on NETFILTER_ADVANCED
--- a/net/netfilter/Makefile
+++ b/net/netfilter/Makefile
-@@ -91,6 +91,7 @@ obj-$(CONFIG_NETFILTER_XT_MATCH_RECENT)
+@@ -95,6 +95,7 @@ obj-$(CONFIG_NETFILTER_XT_MATCH_RECENT)
obj-$(CONFIG_NETFILTER_XT_MATCH_SCTP) += xt_sctp.o
obj-$(CONFIG_NETFILTER_XT_MATCH_SOCKET) += xt_socket.o
obj-$(CONFIG_NETFILTER_XT_MATCH_STATE) += xt_state.o
pr_debug("Entering %s(hook %u); sp at %u (UF %p)\n",
table->name, hook, origptr,
get_entry(table_base, private->underflow[hook]));
-@@ -970,6 +1010,7 @@ copy_entries_to_user(unsigned int total_
+@@ -974,6 +1014,7 @@ copy_entries_to_user(unsigned int total_
unsigned int i;
const struct ipt_entry_match *m;
const struct ipt_entry_target *t;
e = (struct ipt_entry *)(loc_cpu_entry + off);
if (copy_to_user(userptr + off
-@@ -980,6 +1021,14 @@ copy_entries_to_user(unsigned int total_
+@@ -983,6 +1024,14 @@ copy_entries_to_user(unsigned int total_
+ ret = -EFAULT;
goto free_counters;
}
-
++
+ flags = e->ip.flags & ~IPT_F_NO_DEF_MATCH;
+ if (copy_to_user(userptr + off
+ + offsetof(struct ipt_entry, ip.flags),
+ ret = -EFAULT;
+ goto free_counters;
+ }
-+
+
for (i = sizeof(struct ipt_entry);
i < e->target_offset;
- i += m->u.match_size) {
--- a/net/netfilter/Kconfig
+++ b/net/netfilter/Kconfig
-@@ -173,7 +173,6 @@ config NF_CONNTRACK_FTP
+@@ -152,7 +152,6 @@ config NF_CONNTRACK_FTP
config NF_CONNTRACK_H323
tristate "H.323 protocol support"
depends on NETFILTER_ADVANCED
help
H.323 is a VoIP signalling protocol from ITU-T. As one of the most
-@@ -550,7 +549,6 @@ config NETFILTER_XT_TARGET_SECMARK
+@@ -557,7 +556,6 @@ config NETFILTER_XT_TARGET_SECMARK
config NETFILTER_XT_TARGET_TCPMSS
tristate '"TCPMSS" target support'
obj-$(CONFIG_NF_NAT_SNMP_BASIC) += nf_nat_snmp_basic.o
--- a/net/netfilter/Kconfig
+++ b/net/netfilter/Kconfig
-@@ -280,6 +280,16 @@ config NF_CONNTRACK_TFTP
+@@ -259,6 +259,16 @@ config NF_CONNTRACK_TFTP
To compile it as a module, choose M here. If unsure, say N.
--- a/arch/mips/include/asm/string.h
+++ b/arch/mips/include/asm/string.h
-@@ -133,11 +133,44 @@ strncmp(__const__ char *__cs, __const__
+@@ -133,11 +133,44 @@ strncmp(__const__ char *__cs, __const__
#define __HAVE_ARCH_MEMSET
extern void *memset(void *__s, int __c, size_t __count);
--- a/include/linux/slab.h
+++ b/include/linux/slab.h
-@@ -130,8 +130,8 @@ int kmem_ptr_validate(struct kmem_cache
+@@ -130,8 +130,8 @@ int kmem_ptr_validate(struct kmem_cache
* to do various tricks to work around compiler limitations in order to
* ensure proper constant folding.
*/
--- a/fs/jffs2/build.c
+++ b/fs/jffs2/build.c
-@@ -111,6 +111,17 @@ static int jffs2_build_filesystem(struct
+@@ -112,6 +112,17 @@ static int jffs2_build_filesystem(struct
dbg_fsbuild("scanned flash completely\n");
jffs2_dbg_dump_block_lists_nolock(c);
+
--- /dev/null
+++ b/fs/mini_fo/super.c
-@@ -0,0 +1,285 @@
+@@ -0,0 +1,281 @@
+/*
+ * Copyright (c) 1997-2003 Erez Zadok
+ * Copyright (c) 2001-2003 Stony Brook University
+ struct dentry *hidden_d;
+
+ hidden_d = dtohd(d);
-+#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,36)
-+ err = statfs_by_dentry(hidden_d, buf);
-+#else
+ err = vfs_statfs(hidden_d, buf);
-+#endif
+#else
+ super_block_t *hidden_sb;
+
#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0)
extern int mini_fo_create(inode_t *dir, dentry_t *dentry, int mode, struct nameidata *nd);
-@@ -501,6 +505,29 @@ static inline void double_unlock(struct
+@@ -501,6 +505,29 @@ static inline void double_unlock(struct
#endif /* if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0) */
#endif /* __KERNEL__ */
#endif /* defined(FIST_DEBUG) || defined(FIST_FILTER_SCA) */
--- a/fs/mini_fo/aux.c
+++ b/fs/mini_fo/aux.c
-@@ -164,11 +164,11 @@ dentry_t *bpath_walk(super_block_t *sb,
+@@ -164,11 +164,11 @@ dentry_t *bpath_walk(super_block_t *sb,
err = vfs_path_lookup(mnt->mnt_root, mnt, bpath+1, 0, &nd);
/* validate */
--- a/fs/mini_fo/super.c
+++ b/fs/mini_fo/super.c
-@@ -84,6 +84,7 @@ mini_fo_write_inode(inode_t *inode, int
+@@ -84,6 +84,7 @@ mini_fo_write_inode(inode_t *inode, int
#endif /* defined(FIST_DEBUG) || defined(FIST_FILTER_SCA) */
--- a/drivers/mtd/mtdpart.c
+++ b/drivers/mtd/mtdpart.c
-@@ -21,6 +21,8 @@
+@@ -32,6 +32,8 @@
#include <linux/root_dev.h>
#include <linux/magic.h>
/* Our partition linked list */
static LIST_HEAD(mtd_partitions);
-@@ -226,13 +228,60 @@ static int part_erase(struct mtd_info *m
+@@ -237,13 +239,60 @@ static int part_erase(struct mtd_info *m
return -EROFS;
if (instr->addr >= mtd->size)
return -EINVAL;
return ret;
}
-@@ -240,7 +289,25 @@ void mtd_erase_callback(struct erase_inf
+@@ -251,7 +300,25 @@ void mtd_erase_callback(struct erase_inf
{
if (instr->mtd->erase == part_erase) {
struct mtd_part *part = PART(instr->mtd);
if (instr->fail_addr != MTD_FAIL_ADDR_UNKNOWN)
instr->fail_addr -= part->offset;
instr->addr -= part->offset;
-@@ -473,18 +540,24 @@ static struct mtd_part *add_one_partitio
+@@ -494,18 +561,24 @@ static struct mtd_part *add_one_partitio
if ((slave->mtd.flags & MTD_WRITEABLE) &&
mtd_mod_by_eb(slave->offset, &slave->mtd)) {
/* Doesn't start on a boundary of major erase size */
if (master->block_isbad) {
--- a/include/linux/mtd/mtd.h
+++ b/include/linux/mtd/mtd.h
-@@ -45,6 +45,10 @@ struct erase_info {
+@@ -57,6 +57,10 @@ struct erase_info {
u_long priv;
u_char state;
struct erase_info *next;
#else
static inline int kobject_uevent(struct kobject *kobj,
enum kobject_action action)
-@@ -229,6 +235,16 @@ static inline int add_uevent_var(struct
+@@ -229,6 +235,16 @@ static inline int add_uevent_var(struct
static inline int kobject_action_type(const char *buf, size_t count,
enum kobject_action *type)
{ return -EINVAL; }
unsigned int tp_packets;
--- a/net/packet/af_packet.c
+++ b/net/packet/af_packet.c
-@@ -203,6 +203,7 @@ struct packet_sock {
- unsigned int tp_reserve;
+@@ -205,6 +205,7 @@ struct packet_sock {
unsigned int tp_loss:1;
+ unsigned int tp_tstamp;
struct packet_type prot_hook ____cacheline_aligned_in_smp;
+ unsigned int pkt_type;
};
struct packet_skb_cb {
-@@ -339,6 +340,7 @@ static int packet_rcv_spkt(struct sk_buf
+@@ -341,6 +342,7 @@ static int packet_rcv_spkt(struct sk_buf
{
struct sock *sk;
struct sockaddr_pkt *spkt;
/*
* When we registered the protocol we saved the socket in the data
-@@ -346,6 +348,7 @@ static int packet_rcv_spkt(struct sk_buf
+@@ -348,6 +350,7 @@ static int packet_rcv_spkt(struct sk_buf
*/
sk = pt->af_packet_priv;
/*
* Yank back the headers [hope the device set this
-@@ -358,7 +361,7 @@ static int packet_rcv_spkt(struct sk_buf
+@@ -360,7 +363,7 @@ static int packet_rcv_spkt(struct sk_buf
* so that this procedure is noop.
*/
goto out;
if (!net_eq(dev_net(dev), sock_net(sk)))
-@@ -537,12 +540,12 @@ static int packet_rcv(struct sk_buff *sk
+@@ -539,12 +542,12 @@ static int packet_rcv(struct sk_buff *sk
int skb_len = skb->len;
unsigned int snaplen, res;
if (!net_eq(dev_net(dev), sock_net(sk)))
goto drop;
-@@ -657,12 +660,12 @@ static int tpacket_rcv(struct sk_buff *s
- struct timeval tv;
+@@ -660,12 +663,12 @@ static int tpacket_rcv(struct sk_buff *s
struct timespec ts;
+ struct skb_shared_hwtstamps *shhwtstamps = skb_hwtstamps(skb);
- if (skb->pkt_type == PACKET_LOOPBACK)
- goto drop;
if (!net_eq(dev_net(dev), sock_net(sk)))
goto drop;
-@@ -1473,6 +1476,7 @@ static int packet_create(struct net *net
+@@ -1488,6 +1491,7 @@ static int packet_create(struct net *net
spin_lock_init(&po->bind_lock);
mutex_init(&po->pg_vec_lock);
po->prot_hook.func = packet_rcv;
if (sock->type == SOCK_PACKET)
po->prot_hook.func = packet_rcv_spkt;
-@@ -2027,6 +2031,16 @@ packet_setsockopt(struct socket *sock, i
- po->has_vnet_hdr = !!val;
+@@ -2054,6 +2058,16 @@ packet_setsockopt(struct socket *sock, i
+ po->tp_tstamp = val;
return 0;
}
+ case PACKET_RECV_TYPE:
default:
return -ENOPROTOOPT;
}
-@@ -2084,6 +2098,13 @@ static int packet_getsockopt(struct sock
+@@ -2111,6 +2125,13 @@ static int packet_getsockopt(struct sock
data = &val;
break;
--- a/drivers/net/pppoe.c
+++ b/drivers/net/pppoe.c
-@@ -856,7 +856,7 @@ static int pppoe_sendmsg(struct kiocb *i
+@@ -855,7 +855,7 @@ static int pppoe_sendmsg(struct kiocb *i
goto end;
0, GFP_KERNEL);
if (!skb) {
error = -ENOMEM;
-@@ -864,7 +864,7 @@ static int pppoe_sendmsg(struct kiocb *i
+@@ -863,7 +863,7 @@ static int pppoe_sendmsg(struct kiocb *i
}
/* Reserve space for headers. */
--- a/crypto/Kconfig
+++ b/crypto/Kconfig
-@@ -104,6 +104,10 @@ config CRYPTO_MANAGER_TESTS
- Run cryptomanager's tests for the new crypto algorithms being
- registered.
+@@ -109,6 +109,10 @@ config CRYPTO_MANAGER_DISABLE_TESTS
+ Disable run-time self tests that normally take place at
+ algorithm registration.
+config CRYPTO_MANAGER_NO_TESTS
+ bool "Disable internal testsuite to save space"
+#endif /* CONFIG_CRYPTO_MANAGER_NO_TESTS */
}
- #endif /* CONFIG_CRYPTO_MANAGER_TESTS */
+ #endif /* CONFIG_CRYPTO_MANAGER_DISABLE_TESTS */
--- a/crypto/testmgr.h
+++ b/crypto/testmgr.h
@@ -20,6 +20,8 @@
--- a/drivers/leds/Kconfig
+++ b/drivers/leds/Kconfig
-@@ -371,4 +371,8 @@ endif # LEDS_TRIGGERS
+@@ -380,4 +380,8 @@ endif # LEDS_TRIGGERS
endif # LEDS_CLASS
endif # NEW_LEDS
--- a/drivers/leds/Makefile
+++ b/drivers/leds/Makefile
-@@ -48,3 +48,4 @@ obj-$(CONFIG_LEDS_TRIGGER_HEARTBEAT) +=
+@@ -49,3 +49,4 @@ obj-$(CONFIG_LEDS_TRIGGER_HEARTBEAT) +=
obj-$(CONFIG_LEDS_TRIGGER_BACKLIGHT) += ledtrig-backlight.o
obj-$(CONFIG_LEDS_TRIGGER_GPIO) += ledtrig-gpio.o
obj-$(CONFIG_LEDS_TRIGGER_DEFAULT_ON) += ledtrig-default-on.o
endif # NEW_LEDS
--- a/drivers/leds/Makefile
+++ b/drivers/leds/Makefile
-@@ -50,3 +50,4 @@ obj-$(CONFIG_LEDS_TRIGGER_BACKLIGHT) +=
+@@ -50,3 +50,4 @@ obj-$(CONFIG_LEDS_TRIGGER_BACKLIGHT) +=
obj-$(CONFIG_LEDS_TRIGGER_GPIO) += ledtrig-gpio.o
obj-$(CONFIG_LEDS_TRIGGER_DEFAULT_ON) += ledtrig-default-on.o
obj-$(CONFIG_LEDS_TRIGGER_MORSE) += ledtrig-morse.o
+obj-$(CONFIG_LEDS_TRIGGER_NETDEV) += ledtrig-netdev.o
--- a/drivers/leds/ledtrig-netdev.c
+++ b/drivers/leds/ledtrig-netdev.c
-@@ -307,8 +307,9 @@ done:
- static void netdev_trig_timer(unsigned long arg)
- {
+@@ -309,6 +309,7 @@ static void netdev_trig_timer(unsigned l
struct led_netdev_data *trigger_data = (struct led_netdev_data *)arg;
-- const struct net_device_stats *dev_stats;
-+ struct rtnl_link_stats64 *dev_stats;
+ const struct net_device_stats *dev_stats;
unsigned new_activity;
+ struct rtnl_link_stats64 temp;
--- a/drivers/input/misc/Kconfig
+++ b/drivers/input/misc/Kconfig
-@@ -390,4 +390,20 @@ config INPUT_PCAP
+@@ -438,4 +438,20 @@ config INPUT_ADXL34X_SPI
To compile this driver as a module, choose M here: the
- module will be called pcap_keys.
+ module will be called adxl34x-spi.
+config INPUT_GPIO_BUTTONS
+ tristate "Polled GPIO buttons interface"
endif
--- a/drivers/input/misc/Makefile
+++ b/drivers/input/misc/Makefile
-@@ -37,4 +37,5 @@ obj-$(CONFIG_INPUT_WINBOND_CIR) += winb
+@@ -41,4 +41,5 @@ obj-$(CONFIG_INPUT_WINBOND_CIR) += winb
obj-$(CONFIG_INPUT_WISTRON_BTNS) += wistron_btns.o
obj-$(CONFIG_INPUT_WM831X_ON) += wm831x-on.o
obj-$(CONFIG_INPUT_YEALINK) += yealink.o
depends on BLOCK
--- a/drivers/char/Makefile
+++ b/drivers/char/Makefile
-@@ -96,6 +96,7 @@ obj-$(CONFIG_SCx200_GPIO) += scx200_gpio
+@@ -98,6 +98,7 @@ obj-$(CONFIG_SCx200_GPIO) += scx200_gpio
obj-$(CONFIG_PC8736x_GPIO) += pc8736x_gpio.o
obj-$(CONFIG_NSC_GPIO) += nsc_gpio.o
obj-$(CONFIG_CS5535_GPIO) += cs5535_gpio.o
dev->checkpointBlockList[i] = -1;
}
-@@ -191,18 +185,17 @@ int yaffs_GetCheckpointSum(yaffs_Device
+@@ -191,18 +185,17 @@ int yaffs_GetCheckpointSum(yaffs_Device
static int yaffs_CheckpointFlushBuffer(yaffs_Device *dev)
{
{
unsigned char cDelta; /* column parity delta */
unsigned lDelta; /* line parity delta */
-@@ -294,8 +292,7 @@ int yaffs_ECCCorrectOther(unsigned char
+@@ -294,8 +292,7 @@ int yaffs_ECCCorrectOther(unsigned char
return 0; /* no error */
if (lDelta == ~lDeltaPrime &&
/* Single bit (recoverable) error in data */
bit = 0;
-@@ -307,7 +304,7 @@ int yaffs_ECCCorrectOther(unsigned char
+@@ -307,7 +304,7 @@ int yaffs_ECCCorrectOther(unsigned char
if (cDelta & 0x02)
bit |= 0x01;
return -1;
data[lDelta] ^= (1 << bit);
-@@ -316,7 +313,7 @@ int yaffs_ECCCorrectOther(unsigned char
+@@ -316,7 +313,7 @@ int yaffs_ECCCorrectOther(unsigned char
}
if ((yaffs_CountBits32(lDelta) + yaffs_CountBits32(lDeltaPrime) +
/* Reccoverable error in ecc */
*read_ecc = *test_ecc;
-@@ -326,6 +323,4 @@ int yaffs_ECCCorrectOther(unsigned char
+@@ -326,6 +323,4 @@ int yaffs_ECCCorrectOther(unsigned char
/* Unrecoverable error */
return -1;
{
unsigned char *alias;
int ret;
-@@ -329,7 +395,7 @@ static int yaffs_readlink(struct dentry
+@@ -329,7 +395,7 @@ static int yaffs_readlink(struct dentry
return ret;
}
static int yaffs_file_flush(struct file *file, fl_owner_t id)
#else
static int yaffs_file_flush(struct file *file)
-@@ -513,8 +579,8 @@ static int yaffs_file_flush(struct file
+@@ -513,8 +579,8 @@ static int yaffs_file_flush(struct file
yaffs_Device *dev = obj->myDev;
T(YAFFS_TRACE_OS,
yaffs_GrossLock(dev);
-@@ -535,15 +601,15 @@ static int yaffs_readpage_nolock(struct
+@@ -535,15 +601,15 @@ static int yaffs_readpage_nolock(struct
yaffs_Device *dev;
BUG_ON(!PageLocked(pg));
#else
if (!PageLocked(pg))
-@@ -555,9 +621,9 @@ static int yaffs_readpage_nolock(struct
+@@ -555,9 +621,9 @@ static int yaffs_readpage_nolock(struct
yaffs_GrossLock(dev);
yaffs_GrossUnlock(dev);
-@@ -575,7 +641,7 @@ static int yaffs_readpage_nolock(struct
+@@ -575,7 +641,7 @@ static int yaffs_readpage_nolock(struct
flush_dcache_page(pg);
kunmap(pg);
if (n < step) {
n++;
continue;
-@@ -2119,7 +2356,7 @@ static int yaffs_proc_write(struct file
+@@ -2119,7 +2356,7 @@ static int yaffs_proc_write(struct file
char *end;
char *mask_name;
const char *x;
int i;
int done = 0;
int add, len = 0;
-@@ -2129,9 +2366,8 @@ static int yaffs_proc_write(struct file
+@@ -2129,9 +2366,8 @@ static int yaffs_proc_write(struct file
while (!done && (pos < count)) {
done = 1;
switch (buf[pos]) {
case '+':
-@@ -2148,20 +2384,21 @@ static int yaffs_proc_write(struct file
+@@ -2148,20 +2384,21 @@ static int yaffs_proc_write(struct file
mask_name = NULL;
mask_bitfield = simple_strtoul(buf + pos, &end, 0);
mask_name = mask_flags[i].mask_name;
mask_bitfield = mask_flags[i].mask_bitfield;
done = 0;
-@@ -2172,7 +2409,7 @@ static int yaffs_proc_write(struct file
+@@ -2172,7 +2409,7 @@ static int yaffs_proc_write(struct file
if (mask_name != NULL) {
done = 0;
case '-':
rg &= ~mask_bitfield;
break;
-@@ -2191,13 +2428,13 @@ static int yaffs_proc_write(struct file
+@@ -2191,13 +2428,13 @@ static int yaffs_proc_write(struct file
yaffs_traceMask = rg | YAFFS_TRACE_ALWAYS;
{
/* Get the real object in case we were fed a hard link as an equivalent object */
equivalentObject = yaffs_GetEquivalentObject(equivalentObject);
-@@ -2363,33 +2396,31 @@ yaffs_Object *yaffs_Link(yaffs_Object *
+@@ -2363,33 +2396,31 @@ yaffs_Object *yaffs_Link(yaffs_Object *
}
int nToCopy;
int n = nBytes;
int nDone = 0;
-@@ -4600,27 +4665,26 @@ int yaffs_ReadDataFromFile(yaffs_Object
+@@ -4600,27 +4665,26 @@ int yaffs_ReadDataFromFile(yaffs_Object
dev = in->myDev;
while (n > 0) {
if (dev->nShortOpCaches > 0) {
/* If we can't find the data in the cache, then load it up. */
-@@ -4641,14 +4705,9 @@ int yaffs_ReadDataFromFile(yaffs_Object
+@@ -4641,14 +4705,9 @@ int yaffs_ReadDataFromFile(yaffs_Object
cache->locked = 1;
cache->locked = 0;
} else {
/* Read into the local buffer then copy..*/
-@@ -4657,41 +4716,19 @@ int yaffs_ReadDataFromFile(yaffs_Object
+@@ -4657,41 +4716,19 @@ int yaffs_ReadDataFromFile(yaffs_Object
yaffs_GetTempBuffer(dev, __LINE__);
yaffs_ReadChunkDataFromObject(in, chunk,
localBuffer);
}
n -= nToCopy;
-@@ -4704,28 +4741,37 @@ int yaffs_ReadDataFromFile(yaffs_Object
+@@ -4704,28 +4741,37 @@ int yaffs_ReadDataFromFile(yaffs_Object
return nDone;
}
int newFullChunks;
yaffs_Device *dev = in->myDev;
-@@ -4955,13 +4981,11 @@ int yaffs_ResizeFile(yaffs_Object * in,
+@@ -4955,13 +4981,11 @@ int yaffs_ResizeFile(yaffs_Object * in,
yaffs_CheckGarbageCollection(dev);
if (newSize < oldFileSize) {
-@@ -4994,21 +5018,20 @@ int yaffs_ResizeFile(yaffs_Object * in,
+@@ -4994,21 +5018,20 @@ int yaffs_ResizeFile(yaffs_Object * in,
}
{
obj = yaffs_GetEquivalentObject(obj);
-@@ -5024,7 +5047,7 @@ loff_t yaffs_GetFileSize(yaffs_Object *
+@@ -5024,7 +5047,7 @@ loff_t yaffs_GetFileSize(yaffs_Object *
{
int init_failed = 0;
unsigned x;
-@@ -7040,6 +7126,8 @@ int yaffs_GutsInitialise(yaffs_Device *
+@@ -7040,6 +7126,8 @@ int yaffs_GutsInitialise(yaffs_Device *
dev->chunkOffset = 0;
dev->nFreeChunks = 0;
if (dev->startBlock == 0) {
dev->internalStartBlock = dev->startBlock + 1;
dev->internalEndBlock = dev->endBlock + 1;
-@@ -7049,18 +7137,18 @@ int yaffs_GutsInitialise(yaffs_Device *
+@@ -7049,18 +7137,18 @@ int yaffs_GutsInitialise(yaffs_Device *
/* Check geometry parameters. */
return YAFFS_FAIL;
}
-@@ -7070,6 +7158,12 @@ int yaffs_GutsInitialise(yaffs_Device *
+@@ -7070,6 +7158,12 @@ int yaffs_GutsInitialise(yaffs_Device *
return YAFFS_FAIL;
}
/* Got the right mix of functions? */
if (!yaffs_CheckDevFunctions(dev)) {
/* Function missing */
-@@ -7097,31 +7191,18 @@ int yaffs_GutsInitialise(yaffs_Device *
+@@ -7097,31 +7191,18 @@ int yaffs_GutsInitialise(yaffs_Device *
dev->isMounted = 1;
/*
* Calculate chunkGroupBits.
-@@ -7133,16 +7214,15 @@ int yaffs_GutsInitialise(yaffs_Device *
+@@ -7133,16 +7214,15 @@ int yaffs_GutsInitialise(yaffs_Device *
bits = ShiftsGE(x);
/* Set up tnode width if wide tnodes are enabled. */
dev->tnodeWidth = 16;
dev->tnodeMask = (1<<dev->tnodeWidth)-1;
-@@ -7193,7 +7273,7 @@ int yaffs_GutsInitialise(yaffs_Device *
+@@ -7193,7 +7273,7 @@ int yaffs_GutsInitialise(yaffs_Device *
dev->hasPendingPrioritisedGCs = 1; /* Assume the worst for now, will get fixed on first GC */
/* Initialise temporary buffers and caches. */
init_failed = 1;
dev->srCache = NULL;
-@@ -7203,25 +7283,26 @@ int yaffs_GutsInitialise(yaffs_Device *
+@@ -7203,25 +7283,26 @@ int yaffs_GutsInitialise(yaffs_Device *
if (!init_failed &&
dev->nShortOpCaches > 0) {
int i;
init_failed = 1;
dev->srLastUse = 0;
-@@ -7229,29 +7310,30 @@ int yaffs_GutsInitialise(yaffs_Device *
+@@ -7229,29 +7310,30 @@ int yaffs_GutsInitialise(yaffs_Device *
dev->cacheHits = 0;
T(YAFFS_TRACE_ALWAYS,
(TSTR("yaffs: restored from checkpoint" TENDSTR)));
} else {
-@@ -7273,24 +7355,25 @@ int yaffs_GutsInitialise(yaffs_Device *
+@@ -7273,24 +7355,25 @@ int yaffs_GutsInitialise(yaffs_Device *
dev->nBackgroundDeletions = 0;
dev->oldestDirtySequence = 0;
/* Clean up the mess */
T(YAFFS_TRACE_TRACING,
(TSTR("yaffs: yaffs_GutsInitialise() aborted.\n" TENDSTR)));
-@@ -7318,7 +7401,7 @@ int yaffs_GutsInitialise(yaffs_Device *
+@@ -7318,7 +7401,7 @@ int yaffs_GutsInitialise(yaffs_Device *
}
{
if (etags) {
memset(etags, 0, sizeof(*etags));
-@@ -169,9 +169,9 @@ static int rettags(yaffs_ExtendedTags *
+@@ -169,9 +169,9 @@ static int rettags(yaffs_ExtendedTags *
* Returns YAFFS_OK or YAFFS_FAIL.
*/
int nandmtd1_ReadChunkWithTagsFromNAND(yaffs_Device *dev,
+ yaffs_UnpackTags2(tags, &pt);
+ }
+ }
-
-- if(tags && retval == -EBADMSG && tags->eccResult == YAFFS_ECC_RESULT_NO_ERROR)
-- tags->eccResult = YAFFS_ECC_RESULT_UNFIXED;
++
+ if (localData)
+ yaffs_ReleaseTempBuffer(dev, data, __LINE__);
+- if(tags && retval == -EBADMSG && tags->eccResult == YAFFS_ECC_RESULT_NO_ERROR)
+ if (tags && retval == -EBADMSG && tags->eccResult == YAFFS_ECC_RESULT_NO_ERROR)
-+ tags->eccResult = YAFFS_ECC_RESULT_UNFIXED;
+ tags->eccResult = YAFFS_ECC_RESULT_UNFIXED;
+-
if (retval == 0)
return YAFFS_OK;
else
-diff -Nrup a/fs/yaffs2/devextras.h b/fs/yaffs2/devextras.h
---- a/fs/yaffs2/devextras.h 2010-10-03 17:48:22.704000363 +0300
-+++ b/fs/yaffs2/devextras.h 2010-10-03 18:03:47.537000367 +0300
+--- a/fs/yaffs2/devextras.h
++++ b/fs/yaffs2/devextras.h
@@ -1,7 +1,7 @@
/*
* YAFFS: Yet another Flash File System . A NAND-flash specific file system.
#if !(defined __KERNEL__)
-diff -Nrup a/fs/yaffs2/Kconfig b/fs/yaffs2/Kconfig
---- a/fs/yaffs2/Kconfig 2010-10-03 17:48:22.704000363 +0300
-+++ b/fs/yaffs2/Kconfig 2010-10-03 18:03:47.461000368 +0300
+--- a/fs/yaffs2/Kconfig
++++ b/fs/yaffs2/Kconfig
@@ -90,23 +90,15 @@ config YAFFS_AUTO_YAFFS2
If unsure, say Y.
+ If unsure, say Y.
+
+
-diff -Nrup a/fs/yaffs2/Makefile b/fs/yaffs2/Makefile
---- a/fs/yaffs2/Makefile 2010-10-03 17:48:22.705000363 +0300
-+++ b/fs/yaffs2/Makefile 2010-10-03 18:03:47.460000369 +0300
+--- a/fs/yaffs2/Makefile
++++ b/fs/yaffs2/Makefile
@@ -4,7 +4,14 @@
obj-$(CONFIG_YAFFS_FS) += yaffs.o
+yaffs-y += yaffs_bitmap.o
+yaffs-y += yaffs_verify.o
+
-diff -Nrup a/fs/yaffs2/moduleconfig.h b/fs/yaffs2/moduleconfig.h
---- a/fs/yaffs2/moduleconfig.h 2010-10-03 17:48:22.705000363 +0300
-+++ b/fs/yaffs2/moduleconfig.h 2010-10-03 18:03:47.538000366 +0300
+--- a/fs/yaffs2/moduleconfig.h
++++ b/fs/yaffs2/moduleconfig.h
@@ -1,7 +1,7 @@
/*
* YAFFS: Yet another Flash File System . A NAND-flash specific file system.
/*
Older-style on-NAND data format has a "pageStatus" byte to record
-diff -Nrup a/fs/yaffs2/yaffs_allocator.c b/fs/yaffs2/yaffs_allocator.c
---- a/fs/yaffs2/yaffs_allocator.c 1970-01-01 02:00:00.000000000 +0200
-+++ b/fs/yaffs2/yaffs_allocator.c 2010-10-03 18:03:47.504000356 +0300
+--- /dev/null
++++ b/fs/yaffs2/yaffs_allocator.c
@@ -0,0 +1,409 @@
+/*
+ * YAFFS: Yet another Flash File System . A NAND-flash specific file system.
+
+
+#endif
-diff -Nrup a/fs/yaffs2/yaffs_allocator.h b/fs/yaffs2/yaffs_allocator.h
---- a/fs/yaffs2/yaffs_allocator.h 1970-01-01 02:00:00.000000000 +0200
-+++ b/fs/yaffs2/yaffs_allocator.h 2010-10-03 18:03:47.538000366 +0300
+--- /dev/null
++++ b/fs/yaffs2/yaffs_allocator.h
@@ -0,0 +1,30 @@
+/*
+ * YAFFS: Yet another Flash File System . A NAND-flash specific file system.
+void yaffs_FreeRawObject(yaffs_Device *dev, yaffs_Object *obj);
+
+#endif
-diff -Nrup a/fs/yaffs2/yaffs_bitmap.c b/fs/yaffs2/yaffs_bitmap.c
---- a/fs/yaffs2/yaffs_bitmap.c 1970-01-01 02:00:00.000000000 +0200
-+++ b/fs/yaffs2/yaffs_bitmap.c 2010-10-03 18:03:47.505000364 +0300
+--- /dev/null
++++ b/fs/yaffs2/yaffs_bitmap.c
@@ -0,0 +1,105 @@
+/*
+ * YAFFS: Yet Another Flash File System. A NAND-flash specific file system.
+ return n;
+}
+
-diff -Nrup a/fs/yaffs2/yaffs_bitmap.h b/fs/yaffs2/yaffs_bitmap.h
---- a/fs/yaffs2/yaffs_bitmap.h 1970-01-01 02:00:00.000000000 +0200
-+++ b/fs/yaffs2/yaffs_bitmap.h 2010-10-03 18:03:47.539000363 +0300
+--- /dev/null
++++ b/fs/yaffs2/yaffs_bitmap.h
@@ -0,0 +1,31 @@
+/*
+ * YAFFS: Yet Another Flash File System. A NAND-flash specific file system.
+int yaffs_CountChunkBits(yaffs_Device *dev, int blk);
+
+#endif
-diff -Nrup a/fs/yaffs2/yaffs_checkptrw.c b/fs/yaffs2/yaffs_checkptrw.c
---- a/fs/yaffs2/yaffs_checkptrw.c 2010-10-03 17:48:22.706000363 +0300
-+++ b/fs/yaffs2/yaffs_checkptrw.c 2010-10-03 18:03:47.505000364 +0300
+--- a/fs/yaffs2/yaffs_checkptrw.c
++++ b/fs/yaffs2/yaffs_checkptrw.c
@@ -1,7 +1,7 @@
/*
* YAFFS: Yet Another Flash File System. A NAND-flash specific file system.
}
-diff -Nrup a/fs/yaffs2/yaffs_checkptrw.h b/fs/yaffs2/yaffs_checkptrw.h
---- a/fs/yaffs2/yaffs_checkptrw.h 2010-10-03 17:48:22.706000363 +0300
-+++ b/fs/yaffs2/yaffs_checkptrw.h 2010-10-03 18:03:47.540000359 +0300
+--- a/fs/yaffs2/yaffs_checkptrw.h
++++ b/fs/yaffs2/yaffs_checkptrw.h
@@ -1,7 +1,7 @@
/*
* YAFFS: Yet another Flash File System . A NAND-flash specific file system.
#endif
-
-diff -Nrup a/fs/yaffs2/yaffs_ecc.c b/fs/yaffs2/yaffs_ecc.c
---- a/fs/yaffs2/yaffs_ecc.c 2010-10-03 17:48:22.706000363 +0300
-+++ b/fs/yaffs2/yaffs_ecc.c 2010-10-03 18:03:47.509000373 +0300
+--- a/fs/yaffs2/yaffs_ecc.c
++++ b/fs/yaffs2/yaffs_ecc.c
@@ -1,7 +1,7 @@
/*
* YAFFS: Yet Another Flash File System. A NAND-flash specific file system.
#include "yportenv.h"
#include "yaffs_ecc.h"
-diff -Nrup a/fs/yaffs2/yaffs_ecc.h b/fs/yaffs2/yaffs_ecc.h
---- a/fs/yaffs2/yaffs_ecc.h 2010-10-03 17:48:22.707000363 +0300
-+++ b/fs/yaffs2/yaffs_ecc.h 2010-10-03 18:03:47.541000359 +0300
+--- a/fs/yaffs2/yaffs_ecc.h
++++ b/fs/yaffs2/yaffs_ecc.h
@@ -1,7 +1,7 @@
/*
* YAFFS: Yet another Flash File System . A NAND-flash specific file system.
* for Toby Churchill Ltd and Brightstar Engineering
*
* Created by Charles Manning <charles@aleph1.co.uk>
-diff -Nrup a/fs/yaffs2/yaffs_fs.c b/fs/yaffs2/yaffs_fs.c
---- a/fs/yaffs2/yaffs_fs.c 2010-10-03 17:48:22.708000363 +0300
-+++ b/fs/yaffs2/yaffs_fs.c 1970-01-01 02:00:00.000000000 +0200
+--- a/fs/yaffs2/yaffs_fs.c
++++ /dev/null
@@ -1,2529 +0,0 @@
-/*
- * YAFFS: Yet Another Flash File System. A NAND-flash specific file system.
-MODULE_DESCRIPTION("YAFFS2 - a NAND specific flash file system");
-MODULE_AUTHOR("Charles Manning, Aleph One Ltd., 2002-2006");
-MODULE_LICENSE("GPL");
-diff -Nrup a/fs/yaffs2/yaffs_getblockinfo.h b/fs/yaffs2/yaffs_getblockinfo.h
---- a/fs/yaffs2/yaffs_getblockinfo.h 2010-10-03 17:48:22.710000363 +0300
-+++ b/fs/yaffs2/yaffs_getblockinfo.h 2010-10-03 18:03:47.542000362 +0300
+--- a/fs/yaffs2/yaffs_getblockinfo.h
++++ b/fs/yaffs2/yaffs_getblockinfo.h
@@ -1,7 +1,7 @@
/*
* YAFFS: Yet another Flash File System . A NAND-flash specific file system.
/* Function to manipulate block info */
static Y_INLINE yaffs_BlockInfo *yaffs_GetBlockInfo(yaffs_Device * dev, int blk)
-diff -Nrup a/fs/yaffs2/yaffs_guts.c b/fs/yaffs2/yaffs_guts.c
---- a/fs/yaffs2/yaffs_guts.c 2010-10-03 17:48:22.715000364 +0300
-+++ b/fs/yaffs2/yaffs_guts.c 2010-10-03 18:03:47.518000364 +0300
+--- a/fs/yaffs2/yaffs_guts.c
++++ b/fs/yaffs2/yaffs_guts.c
@@ -1,7 +1,7 @@
/*
* YAFFS: Yet Another Flash File System. A NAND-flash specific file system.
#ifndef CONFIG_YAFFS_WINCE
yaffs_CheckStruct(yaffs_ObjectHeader, 512, "yaffs_ObjectHeader");
#endif
-diff -Nrup a/fs/yaffs2/yaffs_guts.h b/fs/yaffs2/yaffs_guts.h
---- a/fs/yaffs2/yaffs_guts.h 2010-10-03 17:48:22.718000363 +0300
-+++ b/fs/yaffs2/yaffs_guts.h 2010-10-03 18:03:47.542000362 +0300
+--- a/fs/yaffs2/yaffs_guts.h
++++ b/fs/yaffs2/yaffs_guts.h
@@ -1,7 +1,7 @@
/*
* YAFFS: Yet another Flash File System . A NAND-flash specific file system.
+__u32 yaffs_GetChunkGroupBase(yaffs_Device *dev, yaffs_Tnode *tn, unsigned pos);
+
#endif
-diff -Nrup a/fs/yaffs2/yaffsinterface.h b/fs/yaffs2/yaffsinterface.h
---- a/fs/yaffs2/yaffsinterface.h 2010-10-03 17:29:32.916000361 +0300
-+++ b/fs/yaffs2/yaffsinterface.h 2010-10-03 18:03:47.543000365 +0300
+--- a/fs/yaffs2/yaffsinterface.h
++++ b/fs/yaffs2/yaffsinterface.h
@@ -1,7 +1,7 @@
/*
* YAFFS: Yet another Flash File System . A NAND-flash specific file system.
* for Toby Churchill Ltd and Brightstar Engineering
*
* Created by Charles Manning <charles@aleph1.co.uk>
-diff -Nrup a/fs/yaffs2/yaffs_linux_allocator.c b/fs/yaffs2/yaffs_linux_allocator.c
---- a/fs/yaffs2/yaffs_linux_allocator.c 1970-01-01 02:00:00.000000000 +0200
-+++ b/fs/yaffs2/yaffs_linux_allocator.c 2010-10-03 18:03:47.519000366 +0300
+--- /dev/null
++++ b/fs/yaffs2/yaffs_linux_allocator.c
@@ -0,0 +1,200 @@
+/*
+ * YAFFS: Yet another Flash File System . A NAND-flash specific file system.
+ yaffs_Allocator *allocator = dev->allocator;
+ kmem_cache_free(allocator->object_cache,obj);
+}
-diff -Nrup a/fs/yaffs2/yaffs_linux.h b/fs/yaffs2/yaffs_linux.h
---- a/fs/yaffs2/yaffs_linux.h 1970-01-01 02:00:00.000000000 +0200
-+++ b/fs/yaffs2/yaffs_linux.h 2010-10-03 18:03:47.544000367 +0300
+--- /dev/null
++++ b/fs/yaffs2/yaffs_linux.h
@@ -0,0 +1,43 @@
+/*
+ * YAFFS: Yet another Flash File System . A NAND-flash specific file system.
+
+#endif
+
-diff -Nrup a/fs/yaffs2/yaffs_list.h b/fs/yaffs2/yaffs_list.h
---- a/fs/yaffs2/yaffs_list.h 1970-01-01 02:00:00.000000000 +0200
-+++ b/fs/yaffs2/yaffs_list.h 2010-10-03 18:03:47.544000367 +0300
+--- /dev/null
++++ b/fs/yaffs2/yaffs_list.h
@@ -0,0 +1,127 @@
+/*
+ * YAFFS: Yet another Flash File System . A NAND-flash specific file system.
+
+
+#endif
-diff -Nrup a/fs/yaffs2/yaffs_mtdif1.c b/fs/yaffs2/yaffs_mtdif1.c
---- a/fs/yaffs2/yaffs_mtdif1.c 2010-10-03 17:48:22.719000363 +0300
-+++ b/fs/yaffs2/yaffs_mtdif1.c 2010-10-03 18:03:47.519000366 +0300
+--- a/fs/yaffs2/yaffs_mtdif1.c
++++ b/fs/yaffs2/yaffs_mtdif1.c
@@ -2,7 +2,7 @@
* YAFFS: Yet another FFS. A NAND-flash specific file system.
* yaffs_mtdif1.c NAND mtd interface functions for small-page NAND.
state = YAFFS_BLOCK_STATE_DEAD;
} else if (etags.eccResult != YAFFS_ECC_RESULT_NO_ERROR) {
/* bad tags, need to look more closely */
-diff -Nrup a/fs/yaffs2/yaffs_mtdif1-compat.c b/fs/yaffs2/yaffs_mtdif1-compat.c
---- a/fs/yaffs2/yaffs_mtdif1-compat.c 2010-10-03 17:29:32.916000361 +0300
-+++ b/fs/yaffs2/yaffs_mtdif1-compat.c 1970-01-01 02:00:00.000000000 +0200
+--- a/fs/yaffs2/yaffs_mtdif1-compat.c
++++ /dev/null
@@ -1,434 +0,0 @@
-From ian@brightstareng.com Fri May 18 15:06:49 2007
-From ian@brightstareng.com Fri May 18 15:08:21 2007
-
-
-
-diff -Nrup a/fs/yaffs2/yaffs_mtdif1.h b/fs/yaffs2/yaffs_mtdif1.h
---- a/fs/yaffs2/yaffs_mtdif1.h 2010-10-03 17:48:22.719000363 +0300
-+++ b/fs/yaffs2/yaffs_mtdif1.h 2010-10-03 18:03:47.545000367 +0300
+--- a/fs/yaffs2/yaffs_mtdif1.h
++++ b/fs/yaffs2/yaffs_mtdif1.h
@@ -1,7 +1,7 @@
/*
* YAFFS: Yet another Flash File System. A NAND-flash specific file system.
* for Toby Churchill Ltd and Brightstar Engineering
*
* This program is free software; you can redistribute it and/or modify
-diff -Nrup a/fs/yaffs2/yaffs_mtdif2.c b/fs/yaffs2/yaffs_mtdif2.c
---- a/fs/yaffs2/yaffs_mtdif2.c 2010-10-03 17:48:22.720000363 +0300
-+++ b/fs/yaffs2/yaffs_mtdif2.c 2010-10-03 18:03:47.520000367 +0300
+--- a/fs/yaffs2/yaffs_mtdif2.c
++++ b/fs/yaffs2/yaffs_mtdif2.c
@@ -1,7 +1,7 @@
/*
* YAFFS: Yet Another Flash File System. A NAND-flash specific file system.
&t);
if (t.chunkUsed) {
-diff -Nrup a/fs/yaffs2/yaffs_mtdif2.h b/fs/yaffs2/yaffs_mtdif2.h
---- a/fs/yaffs2/yaffs_mtdif2.h 2010-10-03 17:48:22.720000363 +0300
-+++ b/fs/yaffs2/yaffs_mtdif2.h 2010-10-03 18:03:47.545000367 +0300
+--- a/fs/yaffs2/yaffs_mtdif2.h
++++ b/fs/yaffs2/yaffs_mtdif2.h
@@ -1,7 +1,7 @@
/*
* YAFFS: Yet another Flash File System . A NAND-flash specific file system.
* for Toby Churchill Ltd and Brightstar Engineering
*
* Created by Charles Manning <charles@aleph1.co.uk>
-diff -Nrup a/fs/yaffs2/yaffs_mtdif.c b/fs/yaffs2/yaffs_mtdif.c
---- a/fs/yaffs2/yaffs_mtdif.c 2010-10-03 17:48:22.720000363 +0300
-+++ b/fs/yaffs2/yaffs_mtdif.c 2010-10-03 18:03:47.521000367 +0300
+--- a/fs/yaffs2/yaffs_mtdif.c
++++ b/fs/yaffs2/yaffs_mtdif.c
@@ -1,7 +1,7 @@
/*
* YAFFS: Yet Another Flash File System. A NAND-flash specific file system.
retval = mtd->erase(mtd, &ei);
if (retval == 0)
-diff -Nrup a/fs/yaffs2/yaffs_mtdif.h b/fs/yaffs2/yaffs_mtdif.h
---- a/fs/yaffs2/yaffs_mtdif.h 2010-10-03 17:48:22.721000363 +0300
-+++ b/fs/yaffs2/yaffs_mtdif.h 2010-10-03 18:03:47.546000366 +0300
+--- a/fs/yaffs2/yaffs_mtdif.h
++++ b/fs/yaffs2/yaffs_mtdif.h
@@ -1,7 +1,7 @@
/*
* YAFFS: Yet another Flash File System . A NAND-flash specific file system.
int nandmtd_EraseBlockInNAND(yaffs_Device *dev, int blockNumber);
int nandmtd_InitialiseNAND(yaffs_Device *dev);
#endif
-diff -Nrup a/fs/yaffs2/yaffs_nameval.c b/fs/yaffs2/yaffs_nameval.c
---- a/fs/yaffs2/yaffs_nameval.c 1970-01-01 02:00:00.000000000 +0200
-+++ b/fs/yaffs2/yaffs_nameval.c 2010-10-03 18:03:47.523000363 +0300
+--- /dev/null
++++ b/fs/yaffs2/yaffs_nameval.c
@@ -0,0 +1,197 @@
+/*
+ * YAFFS: Yet Another Flash File System. A NAND-flash specific file system.
+{
+ return nval_used(xb, xb_size) > 0;
+}
-diff -Nrup a/fs/yaffs2/yaffs_nameval.h b/fs/yaffs2/yaffs_nameval.h
---- a/fs/yaffs2/yaffs_nameval.h 1970-01-01 02:00:00.000000000 +0200
-+++ b/fs/yaffs2/yaffs_nameval.h 2010-10-03 18:03:47.546000366 +0300
+--- /dev/null
++++ b/fs/yaffs2/yaffs_nameval.h
@@ -0,0 +1,25 @@
+/*
+ * YAFFS: Yet another Flash File System . A NAND-flash specific file system.
+int nval_list(const char *xb, int xb_size, char *buf, int bsize);
+int nval_hasvalues(const char *xb, int xb_size);
+#endif
-diff -Nrup a/fs/yaffs2/yaffs_nand.c b/fs/yaffs2/yaffs_nand.c
---- a/fs/yaffs2/yaffs_nand.c 2010-10-03 17:48:22.721000363 +0300
-+++ b/fs/yaffs2/yaffs_nand.c 2010-10-03 18:03:47.524000359 +0300
+--- a/fs/yaffs2/yaffs_nand.c
++++ b/fs/yaffs2/yaffs_nand.c
@@ -1,7 +1,7 @@
/*
* YAFFS: Yet Another Flash File System. A NAND-flash specific file system.
}
-diff -Nrup a/fs/yaffs2/yaffs_nandemul2k.h b/fs/yaffs2/yaffs_nandemul2k.h
---- a/fs/yaffs2/yaffs_nandemul2k.h 2010-10-03 17:48:22.721000364 +0300
-+++ b/fs/yaffs2/yaffs_nandemul2k.h 2010-10-03 18:03:47.546000366 +0300
+--- a/fs/yaffs2/yaffs_nandemul2k.h
++++ b/fs/yaffs2/yaffs_nandemul2k.h
@@ -1,7 +1,7 @@
/*
* YAFFS: Yet another Flash File System . A NAND-flash specific file system.
* for Toby Churchill Ltd and Brightstar Engineering
*
* Created by Charles Manning <charles@aleph1.co.uk>
-diff -Nrup a/fs/yaffs2/yaffs_nand.h b/fs/yaffs2/yaffs_nand.h
---- a/fs/yaffs2/yaffs_nand.h 2010-10-03 17:48:22.721000364 +0300
-+++ b/fs/yaffs2/yaffs_nand.h 2010-10-03 18:03:47.547000363 +0300
+--- a/fs/yaffs2/yaffs_nand.h
++++ b/fs/yaffs2/yaffs_nand.h
@@ -1,7 +1,7 @@
/*
* YAFFS: Yet another Flash File System . A NAND-flash specific file system.
* for Toby Churchill Ltd and Brightstar Engineering
*
* Created by Charles Manning <charles@aleph1.co.uk>
-diff -Nrup a/fs/yaffs2/yaffs_packedtags1.c b/fs/yaffs2/yaffs_packedtags1.c
---- a/fs/yaffs2/yaffs_packedtags1.c 2010-10-03 17:48:22.721000364 +0300
-+++ b/fs/yaffs2/yaffs_packedtags1.c 2010-10-03 18:03:47.524000359 +0300
+--- a/fs/yaffs2/yaffs_packedtags1.c
++++ b/fs/yaffs2/yaffs_packedtags1.c
@@ -1,7 +1,7 @@
/*
* YAFFS: Yet Another Flash File System. A NAND-flash specific file system.
* for Toby Churchill Ltd and Brightstar Engineering
*
* Created by Charles Manning <charles@aleph1.co.uk>
-diff -Nrup a/fs/yaffs2/yaffs_packedtags1.h b/fs/yaffs2/yaffs_packedtags1.h
---- a/fs/yaffs2/yaffs_packedtags1.h 2010-10-03 17:48:22.721000364 +0300
-+++ b/fs/yaffs2/yaffs_packedtags1.h 2010-10-03 18:03:47.547000363 +0300
+--- a/fs/yaffs2/yaffs_packedtags1.h
++++ b/fs/yaffs2/yaffs_packedtags1.h
@@ -1,7 +1,7 @@
/*
* YAFFS: Yet another Flash File System . A NAND-flash specific file system.
* for Toby Churchill Ltd and Brightstar Engineering
*
* Created by Charles Manning <charles@aleph1.co.uk>
-diff -Nrup a/fs/yaffs2/yaffs_packedtags2.c b/fs/yaffs2/yaffs_packedtags2.c
---- a/fs/yaffs2/yaffs_packedtags2.c 2010-10-03 17:48:22.722000365 +0300
-+++ b/fs/yaffs2/yaffs_packedtags2.c 2010-10-03 18:03:47.524000359 +0300
+--- a/fs/yaffs2/yaffs_packedtags2.c
++++ b/fs/yaffs2/yaffs_packedtags2.c
@@ -1,7 +1,7 @@
/*
* YAFFS: Yet Another Flash File System. A NAND-flash specific file system.
-
}
-diff -Nrup a/fs/yaffs2/yaffs_packedtags2.h b/fs/yaffs2/yaffs_packedtags2.h
---- a/fs/yaffs2/yaffs_packedtags2.h 2010-10-03 17:48:22.722000365 +0300
-+++ b/fs/yaffs2/yaffs_packedtags2.h 2010-10-03 18:03:47.547000363 +0300
+--- a/fs/yaffs2/yaffs_packedtags2.h
++++ b/fs/yaffs2/yaffs_packedtags2.h
@@ -1,7 +1,7 @@
/*
* YAFFS: Yet another Flash File System . A NAND-flash specific file system.
/* Only the tags part (no ECC for use with inband tags */
void yaffs_PackTags2TagsPart(yaffs_PackedTags2TagsPart *pt, const yaffs_ExtendedTags *t);
-diff -Nrup a/fs/yaffs2/yaffs_qsort.h b/fs/yaffs2/yaffs_qsort.h
---- a/fs/yaffs2/yaffs_qsort.h 2010-10-03 17:48:22.724000363 +0300
-+++ b/fs/yaffs2/yaffs_qsort.h 2010-10-03 18:03:47.548000359 +0300
+--- a/fs/yaffs2/yaffs_qsort.h
++++ b/fs/yaffs2/yaffs_qsort.h
@@ -1,7 +1,7 @@
/*
* YAFFS: Yet another Flash File System . A NAND-flash specific file system.
#endif
+#endif
-diff -Nrup a/fs/yaffs2/yaffs_tagscompat.c b/fs/yaffs2/yaffs_tagscompat.c
---- a/fs/yaffs2/yaffs_tagscompat.c 2010-10-03 17:48:22.724000363 +0300
-+++ b/fs/yaffs2/yaffs_tagscompat.c 2010-10-03 18:03:47.525000359 +0300
+--- a/fs/yaffs2/yaffs_tagscompat.c
++++ b/fs/yaffs2/yaffs_tagscompat.c
@@ -1,7 +1,7 @@
/*
* YAFFS: Yet Another Flash File System. A NAND-flash specific file system.
&spare1, &dummy, 1);
if (yaffs_CountBits(spare0.blockStatus & spare1.blockStatus) < 7)
-diff -Nrup a/fs/yaffs2/yaffs_tagscompat.h b/fs/yaffs2/yaffs_tagscompat.h
---- a/fs/yaffs2/yaffs_tagscompat.h 2010-10-03 17:48:22.724000363 +0300
-+++ b/fs/yaffs2/yaffs_tagscompat.h 2010-10-03 18:03:47.548000359 +0300
+--- a/fs/yaffs2/yaffs_tagscompat.h
++++ b/fs/yaffs2/yaffs_tagscompat.h
@@ -1,7 +1,7 @@
/*
* YAFFS: Yet another Flash File System . A NAND-flash specific file system.
* for Toby Churchill Ltd and Brightstar Engineering
*
* Created by Charles Manning <charles@aleph1.co.uk>
-diff -Nrup a/fs/yaffs2/yaffs_tagsvalidity.c b/fs/yaffs2/yaffs_tagsvalidity.c
---- a/fs/yaffs2/yaffs_tagsvalidity.c 2010-10-03 17:48:22.725000363 +0300
-+++ b/fs/yaffs2/yaffs_tagsvalidity.c 2010-10-03 18:03:47.526000362 +0300
+--- a/fs/yaffs2/yaffs_tagsvalidity.c
++++ b/fs/yaffs2/yaffs_tagsvalidity.c
@@ -1,7 +1,7 @@
/*
* YAFFS: Yet Another Flash File System. A NAND-flash specific file system.
* for Toby Churchill Ltd and Brightstar Engineering
*
* Created by Charles Manning <charles@aleph1.co.uk>
-diff -Nrup a/fs/yaffs2/yaffs_tagsvalidity.h b/fs/yaffs2/yaffs_tagsvalidity.h
---- a/fs/yaffs2/yaffs_tagsvalidity.h 2010-10-03 17:48:22.725000363 +0300
-+++ b/fs/yaffs2/yaffs_tagsvalidity.h 2010-10-03 18:03:47.549000359 +0300
+--- a/fs/yaffs2/yaffs_tagsvalidity.h
++++ b/fs/yaffs2/yaffs_tagsvalidity.h
@@ -1,7 +1,7 @@
/*
* YAFFS: Yet another Flash File System . A NAND-flash specific file system.
* for Toby Churchill Ltd and Brightstar Engineering
*
* Created by Charles Manning <charles@aleph1.co.uk>
-diff -Nrup a/fs/yaffs2/yaffs_trace.h b/fs/yaffs2/yaffs_trace.h
---- a/fs/yaffs2/yaffs_trace.h 1970-01-01 02:00:00.000000000 +0200
-+++ b/fs/yaffs2/yaffs_trace.h 2010-10-03 18:03:47.550000362 +0300
+--- /dev/null
++++ b/fs/yaffs2/yaffs_trace.h
@@ -0,0 +1,60 @@
+/*
+ * YAFFS: Yet another Flash File System . A NAND-flash specific file system.
+#define T(mask, p) do { if ((mask) & (yaffs_traceMask | YAFFS_TRACE_ALWAYS)) TOUT(p); } while (0)
+
+#endif
-diff -Nrup a/fs/yaffs2/yaffs_verify.c b/fs/yaffs2/yaffs_verify.c
---- a/fs/yaffs2/yaffs_verify.c 1970-01-01 02:00:00.000000000 +0200
-+++ b/fs/yaffs2/yaffs_verify.c 2010-10-03 18:03:47.527000365 +0300
+--- /dev/null
++++ b/fs/yaffs2/yaffs_verify.c
@@ -0,0 +1,626 @@
+/*
+ * YAFFS: Yet Another Flash File System. A NAND-flash specific file system.
+ return YAFFS_OK;
+#endif
+}
-diff -Nrup a/fs/yaffs2/yaffs_verify.h b/fs/yaffs2/yaffs_verify.h
---- a/fs/yaffs2/yaffs_verify.h 1970-01-01 02:00:00.000000000 +0200
-+++ b/fs/yaffs2/yaffs_verify.h 2010-10-03 18:03:47.551000365 +0300
+--- /dev/null
++++ b/fs/yaffs2/yaffs_verify.h
@@ -0,0 +1,39 @@
+/*
+ * YAFFS: Yet Another Flash File System. A NAND-flash specific file system.
+
+#endif
+
-diff -Nrup a/fs/yaffs2/yaffs_vfs_glue.c b/fs/yaffs2/yaffs_vfs_glue.c
---- a/fs/yaffs2/yaffs_vfs_glue.c 1970-01-01 02:00:00.000000000 +0200
-+++ b/fs/yaffs2/yaffs_vfs_glue.c 2010-10-03 18:03:47.557000359 +0300
+--- /dev/null
++++ b/fs/yaffs2/yaffs_vfs_glue.c
@@ -0,0 +1,3577 @@
+/*
+ * YAFFS: Yet Another Flash File System. A NAND-flash specific file system.
+MODULE_DESCRIPTION("YAFFS2 - a NAND specific flash file system");
+MODULE_AUTHOR("Charles Manning, Aleph One Ltd., 2002-2010");
+MODULE_LICENSE("GPL");
-diff -Nrup a/fs/yaffs2/yaffs_yaffs1.c b/fs/yaffs2/yaffs_yaffs1.c
---- a/fs/yaffs2/yaffs_yaffs1.c 1970-01-01 02:00:00.000000000 +0200
-+++ b/fs/yaffs2/yaffs_yaffs1.c 2010-10-03 18:03:47.535000365 +0300
+--- /dev/null
++++ b/fs/yaffs2/yaffs_yaffs1.c
@@ -0,0 +1,465 @@
+/*
+ * YAFFS: Yet Another Flash File System. A NAND-flash specific file system.
+ return YAFFS_OK;
+}
+
-diff -Nrup a/fs/yaffs2/yaffs_yaffs1.h b/fs/yaffs2/yaffs_yaffs1.h
---- a/fs/yaffs2/yaffs_yaffs1.h 1970-01-01 02:00:00.000000000 +0200
-+++ b/fs/yaffs2/yaffs_yaffs1.h 2010-10-03 18:03:47.551000365 +0300
+--- /dev/null
++++ b/fs/yaffs2/yaffs_yaffs1.h
@@ -0,0 +1,22 @@
+/*
+ * YAFFS: Yet another Flash File System . A NAND-flash specific file system.
+int yaffs1_Scan(yaffs_Device *dev);
+
+#endif
-diff -Nrup a/fs/yaffs2/yaffs_yaffs2.c b/fs/yaffs2/yaffs_yaffs2.c
---- a/fs/yaffs2/yaffs_yaffs2.c 1970-01-01 02:00:00.000000000 +0200
-+++ b/fs/yaffs2/yaffs_yaffs2.c 2010-10-03 18:03:47.536000367 +0300
+--- /dev/null
++++ b/fs/yaffs2/yaffs_yaffs2.c
@@ -0,0 +1,1540 @@
+/*
+ * YAFFS: Yet Another Flash File System. A NAND-flash specific file system.
+
+ return YAFFS_OK;
+}
-diff -Nrup a/fs/yaffs2/yaffs_yaffs2.h b/fs/yaffs2/yaffs_yaffs2.h
---- a/fs/yaffs2/yaffs_yaffs2.h 1970-01-01 02:00:00.000000000 +0200
-+++ b/fs/yaffs2/yaffs_yaffs2.h 2010-10-03 18:03:47.552000367 +0300
+--- /dev/null
++++ b/fs/yaffs2/yaffs_yaffs2.h
@@ -0,0 +1,36 @@
+/*
+ * YAFFS: Yet Another Flash File System. A NAND-flash specific file system.
+int yaffs2_ScanBackwards(yaffs_Device *dev);
+
+#endif
-diff -Nrup a/fs/yaffs2/yportenv.h b/fs/yaffs2/yportenv.h
---- a/fs/yaffs2/yportenv.h 2010-10-03 17:48:22.725000364 +0300
-+++ b/fs/yaffs2/yportenv.h 2010-10-03 18:03:47.555000363 +0300
+--- a/fs/yaffs2/yportenv.h
++++ b/fs/yaffs2/yportenv.h
@@ -1,7 +1,7 @@
/*
* YAFFS: Yet another Flash File System . A NAND-flash specific file system.
/**
* phy_mii_ioctl - generic PHY MII ioctl interface
* @phydev: the phy_device struct
-@@ -351,7 +395,7 @@ int phy_mii_ioctl(struct phy_device *phy
+@@ -352,7 +396,7 @@ int phy_mii_ioctl(struct phy_device *phy
}
phy_write(phydev, mii_data->reg_num, val);
if (mii_data->reg_num == MII_BMCR &&
val & BMCR_RESET &&
phydev->drv->config_init) {
-@@ -465,7 +509,7 @@ static void phy_force_reduction(struct p
+@@ -471,7 +515,7 @@ static void phy_force_reduction(struct p
int idx;
idx = phy_find_setting(phydev->speed, phydev->duplex);
idx = phy_find_valid(idx, phydev->supported);
--- a/include/linux/phy.h
+++ b/include/linux/phy.h
-@@ -497,6 +497,7 @@ void phy_start_machine(struct phy_device
+@@ -519,6 +519,7 @@ void phy_start_machine(struct phy_device
void phy_stop_machine(struct phy_device *phydev);
int phy_ethtool_sset(struct phy_device *phydev, struct ethtool_cmd *cmd);
int phy_ethtool_gset(struct phy_device *phydev, struct ethtool_cmd *cmd);
+int phy_ethtool_ioctl(struct phy_device *phydev, void *useraddr);
int phy_mii_ioctl(struct phy_device *phydev,
- struct mii_ioctl_data *mii_data, int cmd);
+ struct ifreq *ifr, int cmd);
int phy_start_interrupts(struct phy_device *phydev);
--- a/include/linux/phy.h
+++ b/include/linux/phy.h
-@@ -384,9 +384,18 @@ struct phy_driver {
+@@ -386,9 +386,18 @@ struct phy_driver {
*/
int (*config_aneg)(struct phy_device *phydev);
--- a/drivers/net/phy/phy_device.c
+++ b/drivers/net/phy/phy_device.c
-@@ -710,6 +710,9 @@ int genphy_update_link(struct phy_device
+@@ -714,6 +714,9 @@ int genphy_update_link(struct phy_device
{
int status;
INIT_DELAYED_WORK(&dev->state_queue, phy_state_machine);
--- a/include/linux/phy.h
+++ b/include/linux/phy.h
-@@ -330,6 +330,20 @@ struct phy_device {
+@@ -332,6 +332,20 @@ struct phy_device {
void (*adjust_link)(struct net_device *dev);
void (*adjust_state)(struct net_device *dev);
--- a/include/linux/netdevice.h
+++ b/include/linux/netdevice.h
-@@ -932,6 +932,7 @@ struct net_device {
+@@ -949,6 +949,7 @@ struct net_device {
void *ax25_ptr; /* AX.25 specific data */
struct wireless_dev *ieee80211_ptr; /* IEEE 802.11 specific data,
assign before registering */
--- a/drivers/rtc/Kconfig
+++ b/drivers/rtc/Kconfig
-@@ -625,6 +625,15 @@ config RTC_DRV_NUC900
+@@ -654,6 +654,15 @@ config RTC_DRV_NUC900
If you say yes here you get support for the RTC subsystem of the
NUC910/NUC920 used in embedded systems.
config RTC_DRV_DAVINCI
--- a/drivers/rtc/Makefile
+++ b/drivers/rtc/Makefile
-@@ -76,6 +76,7 @@ obj-$(CONFIG_RTC_DRV_RP5C01) += rtc-rp5c
+@@ -80,6 +80,7 @@ obj-$(CONFIG_RTC_DRV_RP5C01) += rtc-rp5c
obj-$(CONFIG_RTC_DRV_RS5C313) += rtc-rs5c313.o
obj-$(CONFIG_RTC_DRV_RS5C348) += rtc-rs5c348.o
obj-$(CONFIG_RTC_DRV_RS5C372) += rtc-rs5c372.o
--- a/include/linux/fb.h
+++ b/include/linux/fb.h
-@@ -122,6 +122,7 @@
+@@ -125,6 +125,7 @@
#define FB_ACCEL_TRIDENT_BLADE3D 52 /* Trident Blade3D */
#define FB_ACCEL_TRIDENT_BLADEXP 53 /* Trident BladeXP */
#define FB_ACCEL_CIRRUS_ALPINE 53 /* Cirrus Logic 543x/544x/5480 */
static int debug;
/* initially all NULL */
static struct usb_serial *serial_table[SERIAL_TTY_MINORS];
-@@ -912,7 +913,7 @@ int usb_serial_probe(struct usb_interfac
+@@ -901,7 +902,7 @@ int usb_serial_probe(struct usb_interfac
}
buffer_size = serial->type->bulk_in_size;
if (!buffer_size)
port->bulk_in_size = buffer_size;
port->bulk_in_endpointAddress = endpoint->bEndpointAddress;
port->bulk_in_buffer = kmalloc(buffer_size, GFP_KERNEL);
-@@ -1382,3 +1383,5 @@ MODULE_LICENSE("GPL");
+@@ -1373,3 +1374,5 @@ MODULE_LICENSE("GPL");
module_param(debug, bool, S_IRUGO | S_IWUSR);
MODULE_PARM_DESC(debug, "Debug enabled or not");
--- a/init/main.c
+++ b/init/main.c
-@@ -903,7 +903,7 @@ static int __init kernel_init(void * unu
+@@ -894,7 +894,7 @@ static int __init kernel_init(void * unu
/* Open the /dev/console on the rootfs, this should never fail */
if (sys_open((const char __user *) "/dev/console", O_RDWR, 0) < 0)
#define ARRAY_SIZE(arr) (sizeof(arr) / sizeof(arr[0]))
--- a/scripts/kconfig/Makefile
+++ b/scripts/kconfig/Makefile
-@@ -144,6 +144,9 @@ check-lxdialog := $(srctree)/$(src)/lxd
+@@ -147,6 +147,9 @@ check-lxdialog := $(srctree)/$(src)/lxd
# we really need to do so. (Do not call gcc as part of make mrproper)
HOST_EXTRACFLAGS = $(shell $(CONFIG_SHELL) $(check-lxdialog) -ccflags)
HOST_LOADLIBES = $(shell $(CONFIG_SHELL) $(check-lxdialog) -ldflags $(HOSTCC))
--- a/drivers/net/wireless/hostap/hostap_ap.c
+++ b/drivers/net/wireless/hostap/hostap_ap.c
-@@ -2336,13 +2336,13 @@ int prism2_ap_get_sta_qual(local_info_t
+@@ -2335,13 +2335,13 @@ int prism2_ap_get_sta_qual(local_info_t
addr[count].sa_family = ARPHRD_ETHER;
memcpy(addr[count].sa_data, sta->addr, ETH_ALEN);
if (sta->last_rx_silence == 0)
qual[count].updated = sta->last_rx_updated;
sta->last_rx_updated = IW_QUAL_DBM;
-@@ -2408,13 +2408,13 @@ int prism2_ap_translate_scan(struct net_
+@@ -2407,13 +2407,13 @@ int prism2_ap_translate_scan(struct net_
memset(&iwe, 0, sizeof(iwe));
iwe.cmd = IWEVQUAL;
if (sta->last_rx_silence == 0)
+module_exit(gpiommc_modexit);
--- a/drivers/mmc/host/Kconfig
+++ b/drivers/mmc/host/Kconfig
-@@ -382,6 +382,31 @@ config MMC_TMIO
+@@ -392,6 +392,31 @@ config MMC_TMIO
This provides support for the SD/MMC cell found in TC6393XB,
T7L66XB and also HTC ASIC3
depends on PCI
--- a/drivers/mmc/host/Makefile
+++ b/drivers/mmc/host/Makefile
-@@ -34,6 +34,7 @@ obj-$(CONFIG_MMC_SDRICOH_CS) += sdricoh_
+@@ -33,6 +33,7 @@ obj-$(CONFIG_MMC_SDRICOH_CS) += sdricoh_
obj-$(CONFIG_MMC_TMIO) += tmio_mmc.o
obj-$(CONFIG_MMC_CB710) += cb710-mmc.o
obj-$(CONFIG_MMC_VIA_SDMMC) += via-sdmmc.o
+obj-$(CONFIG_GPIOMMC) += gpiommc.o
obj-$(CONFIG_SDH_BFIN) += bfin_sdh.o
obj-$(CONFIG_MMC_SH_MMCIF) += sh_mmcif.o
-
+ obj-$(CONFIG_MMC_JZ4740) += jz4740_mmc.o
--- /dev/null
+++ b/include/linux/mmc/gpiommc.h
@@ -0,0 +1,71 @@
+be done automatically.
--- a/MAINTAINERS
+++ b/MAINTAINERS
-@@ -2591,6 +2591,11 @@ T: git git://git.kernel.org/pub/scm/linu
+@@ -2662,6 +2662,11 @@ T: git git://git.kernel.org/pub/scm/linu
S: Maintained
F: drivers/media/video/gspca/
+S: Maintained
+
HARDWARE MONITORING
- L: lm-sensors@lm-sensors.org
- W: http://www.lm-sensors.org/
+ M: Jean Delvare <khali@linux-fr.org>
+ M: Guenter Roeck <guenter.roeck@ericsson.com>
#include <linux/ioport.h>
#include <linux/pci.h>
-@@ -48,6 +49,7 @@ static struct pci_device_id divil_pci[]
+@@ -48,6 +49,7 @@ static struct pci_device_id divil_pci[]
MODULE_DEVICE_TABLE(pci, divil_pci);
static struct cdev cs5535_gpio_cdev;
+#endif
--- a/init/Kconfig
+++ b/init/Kconfig
-@@ -749,6 +749,10 @@ config NET_NS
+@@ -753,6 +753,10 @@ config NET_NS
Allow user space to create what appear to be multiple instances
of the network stack.
depends on BROKEN || !FRV
--- a/kernel/Makefile
+++ b/kernel/Makefile
-@@ -105,6 +105,7 @@ obj-$(CONFIG_PERF_EVENTS) += perf_event.
+@@ -104,6 +104,7 @@ obj-$(CONFIG_PERF_EVENTS) += perf_event.
obj-$(CONFIG_HAVE_HW_BREAKPOINT) += hw_breakpoint.o
obj-$(CONFIG_USER_RETURN_NOTIFIER) += user-return-notifier.o
obj-$(CONFIG_PADATA) += padata.o
--- a/include/linux/netdevice.h
+++ b/include/linux/netdevice.h
-@@ -139,7 +139,7 @@ static inline bool dev_xmit_complete(int
+@@ -145,7 +145,7 @@ static inline bool dev_xmit_complete(int
*/
#if defined(CONFIG_WLAN) || defined(CONFIG_AX25) || defined(CONFIG_AX25_MODULE)
--- a/crypto/Kconfig
+++ b/crypto/Kconfig
-@@ -844,3 +844,6 @@ config CRYPTO_ANSI_CPRNG
+@@ -849,3 +849,6 @@ config CRYPTO_ANSI_CPRNG
source "drivers/crypto/Kconfig"
endif # if CRYPTO
* All of these routines try to estimate how many bits of randomness a
* particular randomness source. They do this by keeping track of the
* first and second order deltas of the event timings.
-@@ -715,6 +725,61 @@ void add_disk_randomness(struct gendisk
+@@ -715,6 +725,61 @@ void add_disk_randomness(struct gendisk
}
#endif
--- a/kernel/pid.c
+++ b/kernel/pid.c
-@@ -389,6 +389,7 @@ struct task_struct *find_task_by_vpid(pi
+@@ -423,6 +423,7 @@ struct task_struct *find_task_by_vpid(pi
{
return find_task_by_pid_ns(vnr, current->nsproxy->pid_ns);
}
--- a/lib/Kconfig
+++ b/lib/Kconfig
-@@ -158,16 +158,16 @@ config REED_SOLOMON_DEC16
+@@ -161,16 +161,16 @@ config REED_SOLOMON_DEC16
# Textsearch support is select'ed if needed
#
config TEXTSEARCH
--- a/mm/shmem.c
+++ b/mm/shmem.c
-@@ -29,6 +29,7 @@
- #include <linux/mm.h>
+@@ -30,6 +30,7 @@
#include <linux/module.h>
+ #include <linux/percpu_counter.h>
#include <linux/swap.h>
+#include <linux/ima.h>
static struct vfsmount *shm_mnt;
-@@ -2675,6 +2676,16 @@ out:
+@@ -2702,6 +2703,16 @@ out:
/* common code */
/**
* shmem_file_setup - get an unlinked file living in tmpfs
* @name: name for dentry (to be seen in /proc/<pid>/maps
-@@ -2752,9 +2763,6 @@ int shmem_zero_setup(struct vm_area_stru
+@@ -2779,9 +2790,6 @@ int shmem_zero_setup(struct vm_area_stru
if (IS_ERR(file))
return PTR_ERR(file);
}
--- a/fs/file.c
+++ b/fs/file.c
-@@ -271,6 +271,7 @@ int expand_files(struct files_struct *fi
+@@ -264,6 +264,7 @@ int expand_files(struct files_struct *fi
/* All good, so we try */
return expand_fdtable(files, nr);
}
* macro override instead of weak attribute alias, to workaround
--- a/kernel/sched.c
+++ b/kernel/sched.c
-@@ -4261,6 +4261,7 @@ int can_nice(const struct task_struct *p
+@@ -4446,6 +4446,7 @@ int can_nice(const struct task_struct *p
return (nice_rlim <= task_rlimit(p, RLIMIT_NICE) ||
capable(CAP_SYS_NICE));
}
--- a/mm/memory.c
+++ b/mm/memory.c
-@@ -1203,6 +1203,7 @@ unsigned long zap_page_range(struct vm_a
+@@ -1201,6 +1201,7 @@ unsigned long zap_page_range(struct vm_a
tlb_finish_mmu(tlb, address, end);
return end;
}
/**
* zap_vma_ptes - remove ptes mapping the vma
-@@ -2615,6 +2616,7 @@ int vmtruncate_range(struct inode *inode
+@@ -2612,6 +2613,7 @@ int vmtruncate_range(struct inode *inode
return 0;
}
* We enter with non-exclusive mmap_sem (to exclude vma changes,
--- a/mm/vmalloc.c
+++ b/mm/vmalloc.c
-@@ -1173,6 +1173,7 @@ void unmap_kernel_range(unsigned long ad
+@@ -1177,6 +1177,7 @@ void unmap_kernel_range(unsigned long ad
vunmap_page_range(addr, end);
flush_tlb_kernel_range(addr, end);
}
int map_vm_area(struct vm_struct *area, pgprot_t prot, struct page ***pages)
{
-@@ -1288,6 +1289,7 @@ struct vm_struct *get_vm_area(unsigned l
+@@ -1292,6 +1293,7 @@ struct vm_struct *get_vm_area(unsigned l
return __get_vm_area_node(size, 1, flags, VMALLOC_START, VMALLOC_END,
-1, GFP_KERNEL, __builtin_return_address(0));
}
void *caller)
--- a/include/linux/mm.h
+++ b/include/linux/mm.h
-@@ -732,6 +732,7 @@ extern void show_free_areas(void);
+@@ -736,6 +736,7 @@ extern void show_free_areas(void);
int shmem_lock(struct file *file, int lock, struct user_struct *user);
struct file *shmem_file_setup(const char *name, loff_t size, unsigned long flags);
--- a/scripts/Makefile.lib
+++ b/scripts/Makefile.lib
-@@ -238,7 +238,7 @@ cmd_bzip2 = (cat $(filter-out FORCE,$^)
+@@ -238,7 +238,7 @@ cmd_bzip2 = (cat $(filter-out FORCE,$^)
quiet_cmd_lzma = LZMA $@
cmd_lzma = (cat $(filter-out FORCE,$^) | \
--- a/init/main.c
+++ b/init/main.c
-@@ -854,10 +854,7 @@ static noinline int init_post(void)
+@@ -848,10 +848,7 @@ static noinline int init_post(void)
printk(KERN_WARNING "Failed to execute %s. Attempting "
"defaults...\n", execute_command);
}