SOURCES (LINUX_2_6_27): linux-2.6-suspend2.patch, kernel-suspend2-headers.p...
lmasko
lmasko at pld-linux.org
Sat Jan 17 10:10:11 CET 2009
Author: lmasko Date: Sat Jan 17 09:10:11 2009 GMT
Module: SOURCES Tag: LINUX_2_6_27
---- Log message:
- TuxOnIce up to 3.0-rc8.
---- Files affected:
SOURCES:
linux-2.6-suspend2.patch (1.1.2.2.2.10 -> 1.1.2.2.2.10.2.1) , kernel-suspend2-headers.patch (1.1.2.7 -> 1.1.2.7.4.1)
---- Diffs:
================================================================
Index: SOURCES/linux-2.6-suspend2.patch
diff -u SOURCES/linux-2.6-suspend2.patch:1.1.2.2.2.10 SOURCES/linux-2.6-suspend2.patch:1.1.2.2.2.10.2.1
--- SOURCES/linux-2.6-suspend2.patch:1.1.2.2.2.10 Thu Oct 23 20:01:56 2008
+++ SOURCES/linux-2.6-suspend2.patch Sat Jan 17 10:10:05 2009
@@ -1235,10 +1235,10 @@
+ testing. His efforts have contributed as much to TuxOnIce as any of the
+ names above.
diff --git a/MAINTAINERS b/MAINTAINERS
-index 3596d17..3e7e5ce 100644
+index ff24d01..251eb14 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
-@@ -4100,6 +4100,13 @@ P: Maciej W. Rozycki
+@@ -4099,6 +4099,13 @@ P: Maciej W. Rozycki
M: macro at linux-mips.org
S: Maintained
@@ -1252,13 +1252,123 @@
U14-34F SCSI DRIVER
P: Dario Ballabio
M: ballabio_dario at emc.com
+diff --git a/arch/powerpc/mm/pgtable_32.c b/arch/powerpc/mm/pgtable_32.c
+index 2001abd..78c6a4c 100644
+--- a/arch/powerpc/mm/pgtable_32.c
++++ b/arch/powerpc/mm/pgtable_32.c
+@@ -397,6 +397,7 @@ void kernel_map_pages(struct page *page, int numpages, int enable)
+
+ change_page_attr(page, numpages, enable ? PAGE_KERNEL : __pgprot(0));
+ }
++EXPORT_SYMBOL_GPL(kernel_map_pages);
+ #endif /* CONFIG_DEBUG_PAGEALLOC */
+
+ static int fixmaps;
+diff --git a/arch/x86/kernel/reboot.c b/arch/x86/kernel/reboot.c
+index 724adfc..a270c9e 100644
+--- a/arch/x86/kernel/reboot.c
++++ b/arch/x86/kernel/reboot.c
+@@ -502,6 +502,7 @@ void machine_restart(char *cmd)
+ {
+ machine_ops.restart(cmd);
+ }
++EXPORT_SYMBOL_GPL(machine_restart);
+
+ void machine_halt(void)
+ {
+diff --git a/arch/x86/mm/pageattr.c b/arch/x86/mm/pageattr.c
+index 43e2f84..5783f37 100644
+--- a/arch/x86/mm/pageattr.c
++++ b/arch/x86/mm/pageattr.c
+@@ -1031,6 +1031,7 @@ void kernel_map_pages(struct page *page, int numpages, int enable)
+ */
+ cpa_fill_pool(NULL);
+ }
++EXPORT_SYMBOL_GPL(kernel_map_pages);
+
+ #ifdef CONFIG_DEBUG_FS
+ static int dpa_show(struct seq_file *m, void *v)
+@@ -1084,7 +1085,7 @@ bool kernel_page_present(struct page *page)
+ pte = lookup_address((unsigned long)page_address(page), &level);
+ return (pte_val(*pte) & _PAGE_PRESENT);
+ }
+-
++EXPORT_SYMBOL_GPL(kernel_page_present);
+ #endif /* CONFIG_HIBERNATION */
+
+ #endif /* CONFIG_DEBUG_PAGEALLOC */
+diff --git a/arch/x86/power/cpu_64.c b/arch/x86/power/cpu_64.c
+index 66bdfb5..77aae90 100644
+--- a/arch/x86/power/cpu_64.c
++++ b/arch/x86/power/cpu_64.c
+@@ -10,6 +10,7 @@
+
+ #include <linux/smp.h>
+ #include <linux/suspend.h>
++#include <linux/module.h>
+ #include <asm/proto.h>
+ #include <asm/page.h>
+ #include <asm/pgtable.h>
+@@ -75,6 +76,7 @@ void save_processor_state(void)
+ {
+ __save_processor_state(&saved_context);
+ }
++EXPORT_SYMBOL_GPL(save_processor_state);
+
+ static void do_fpu_end(void)
+ {
+diff --git a/arch/x86/power/hibernate_32.c b/arch/x86/power/hibernate_32.c
+index 81197c6..ff7e534 100644
+--- a/arch/x86/power/hibernate_32.c
++++ b/arch/x86/power/hibernate_32.c
+@@ -8,6 +8,7 @@
+
+ #include <linux/suspend.h>
+ #include <linux/bootmem.h>
++#include <linux/module.h>
+
+ #include <asm/system.h>
+ #include <asm/page.h>
+@@ -163,6 +164,7 @@ int swsusp_arch_resume(void)
+ restore_image();
+ return 0;
+ }
++EXPORT_SYMBOL_GPL(swsusp_arch_resume);
+
+ /*
+ * pfn_is_nosave - check if given pfn is in the 'nosave' section
+diff --git a/arch/x86/power/hibernate_64.c b/arch/x86/power/hibernate_64.c
+index 6dd000d..b42e72a 100644
+--- a/arch/x86/power/hibernate_64.c
++++ b/arch/x86/power/hibernate_64.c
+@@ -10,6 +10,7 @@
+
+ #include <linux/smp.h>
+ #include <linux/suspend.h>
++#include <linux/module.h>
+ #include <asm/proto.h>
+ #include <asm/page.h>
+ #include <asm/pgtable.h>
+@@ -117,6 +118,7 @@ int swsusp_arch_resume(void)
+ restore_image();
+ return 0;
+ }
++EXPORT_SYMBOL_GPL(swsusp_arch_resume);
+
+ /*
+ * pfn_is_nosave - check if given pfn is in the 'nosave' section
+@@ -167,3 +169,4 @@ int arch_hibernation_header_restore(void *addr)
+ restore_cr3 = rdr->cr3;
+ return (rdr->magic == RESTORE_MAGIC) ? 0 : -EINVAL;
+ }
++EXPORT_SYMBOL_GPL(arch_hibernation_header_restore);
diff --git a/crypto/Kconfig b/crypto/Kconfig
-index d831859..59dbd07 100644
+index d831859..f71cb00 100644
--- a/crypto/Kconfig
+++ b/crypto/Kconfig
-@@ -666,6 +666,14 @@ config CRYPTO_LZO
+@@ -233,6 +233,14 @@ config CRYPTO_MD5
help
- This is the LZO algorithm.
+ MD5 message digest algorithm (RFC1321).
+config CRYPTO_LZF
+ tristate "LZF compression algorithm"
@@ -1268,9 +1378,9 @@
+ This is the LZF algorithm. It is especially useful for TuxOnIce,
+ because it achieves good compression quickly.
+
- source "drivers/crypto/Kconfig"
-
- endif # if CRYPTO
+ config CRYPTO_MICHAEL_MIC
+ tristate "Michael MIC keyed digest algorithm"
+ select CRYPTO_ALGAPI
diff --git a/crypto/Makefile b/crypto/Makefile
index d4f3ed8..fe05a9e 100644
--- a/crypto/Makefile
@@ -1285,14 +1395,14 @@
diff --git a/crypto/lzf.c b/crypto/lzf.c
new file mode 100644
-index 0000000..3e0aa8c
+index 0000000..ccaf83a
--- /dev/null
+++ b/crypto/lzf.c
@@ -0,0 +1,326 @@
+/*
+ * Cryptoapi LZF compression module.
+ *
-+ * Copyright (c) 2004-2005 Nigel Cunningham <nigel at tuxonice net>
++ * Copyright (c) 2004-2008 Nigel Cunningham <nigel at tuxonice net>
+ *
+ * based on the deflate.c file:
+ *
@@ -1349,7 +1459,7 @@
+#include <linux/crypto.h>
+#include <linux/err.h>
+#include <linux/vmalloc.h>
-+#include <asm/string.h>
++#include <linux/string.h>
+
+struct lzf_ctx {
+ void *hbuf;
@@ -1467,9 +1577,9 @@
+ unsigned int maxlen = in_end - ip - len;
+ maxlen = maxlen > max_ref ? max_ref : maxlen;
+
-+ do
++ do {
+ len++;
-+ while (len < maxlen && ref[len] == ip[len]);
++ } while (len < maxlen && ref[len] == ip[len]);
+
+ if (op + lit + 1 + 3 >= out_end) {
+ *out_len = PAGE_SIZE;
@@ -1616,14 +1726,14 @@
+MODULE_DESCRIPTION("LZF Compression Algorithm");
+MODULE_AUTHOR("Marc Alexander Lehmann & Nigel Cunningham");
diff --git a/drivers/base/power/main.c b/drivers/base/power/main.c
-index 273a944..37c1e9f 100644
+index 273a944..aee84df 100644
--- a/drivers/base/power/main.c
+++ b/drivers/base/power/main.c
@@ -54,6 +54,7 @@ void device_pm_lock(void)
{
mutex_lock(&dpm_list_mtx);
}
-+EXPORT_SYMBOL(device_pm_lock);
++EXPORT_SYMBOL_GPL(device_pm_lock);
/**
* device_pm_unlock - unlock the list of active devices used by the PM core
@@ -1631,44 +1741,93 @@
{
mutex_unlock(&dpm_list_mtx);
}
-+EXPORT_SYMBOL(device_pm_unlock);
++EXPORT_SYMBOL_GPL(device_pm_unlock);
/**
* device_pm_add - add a device to the list of active devices
-diff --git a/drivers/macintosh/via-pmu.c b/drivers/macintosh/via-pmu.c
-index d524dc2..681972e 100644
---- a/drivers/macintosh/via-pmu.c
-+++ b/drivers/macintosh/via-pmu.c
-@@ -40,7 +40,6 @@
- #include <linux/interrupt.h>
- #include <linux/device.h>
- #include <linux/sysdev.h>
--#include <linux/freezer.h>
- #include <linux/syscalls.h>
- #include <linux/suspend.h>
- #include <linux/cpu.h>
+diff --git a/drivers/char/vt.c b/drivers/char/vt.c
+index d429499..9603d96 100644
+--- a/drivers/char/vt.c
++++ b/drivers/char/vt.c
+@@ -187,6 +187,7 @@ int fg_console;
+ int last_console;
+ int want_console = -1;
+ int kmsg_redirect;
++EXPORT_SYMBOL_GPL(kmsg_redirect);
+
+ /*
+ * For each existing display, we have a pointer to console currently visible
diff --git a/drivers/md/md.c b/drivers/md/md.c
-index deeac4b..cbf1e49 100644
+index fe6eccd..3918848 100644
--- a/drivers/md/md.c
+++ b/drivers/md/md.c
-@@ -5899,6 +5899,8 @@ void md_do_sync(mddev_t *mddev)
+@@ -5593,7 +5593,6 @@ void md_done_sync(mddev_t *mddev, int blocks, int ok)
+ }
+ }
+
+-
+ /* md_write_start(mddev, bi)
+ * If we need to update some array metadata (e.g. 'active' flag
+ * in superblock) before writing, schedule a superblock update
+@@ -5738,6 +5737,9 @@ void md_do_sync(mddev_t *mddev)
+ mddev->curr_resync = 2;
+
+ try_again:
++ while (freezer_is_on())
++ yield();
++
+ if (kthread_should_stop()) {
+ set_bit(MD_RECOVERY_INTR, &mddev->recovery);
+ goto skip;
+@@ -5759,6 +5761,10 @@ void md_do_sync(mddev_t *mddev)
+ * time 'round when curr_resync == 2
+ */
+ continue;
++
++ while (freezer_is_on())
++ yield();
++
+ /* We need to wait 'interruptible' so as not to
+ * contribute to the load average, and not to
+ * be caught by 'softlockup'
+@@ -5771,6 +5777,7 @@ void md_do_sync(mddev_t *mddev)
+ " share one or more physical units)\n",
+ desc, mdname(mddev), mdname(mddev2));
+ mddev_put(mddev2);
++ try_to_freeze();
+ if (signal_pending(current))
+ flush_signals(current);
+ schedule();
+@@ -5854,6 +5861,10 @@ void md_do_sync(mddev_t *mddev)
+ mddev->resync_max > j
+ || kthread_should_stop());
+ }
++
++ while (freezer_is_on())
++ yield();
++
+ if (kthread_should_stop())
+ goto interrupted;
+ sectors = mddev->pers->sync_request(mddev, j, &skipped,
+@@ -5897,6 +5908,9 @@ void md_do_sync(mddev_t *mddev)
last_mark = next;
}
+ while (freezer_is_on())
+ yield();
++
if (kthread_should_stop())
goto interrupted;
diff --git a/fs/buffer.c b/fs/buffer.c
-index ac78d4c..3a927e2 100644
+index ac78d4c..7ae191b 100644
--- a/fs/buffer.c
+++ b/fs/buffer.c
-@@ -247,6 +247,91 @@ void thaw_bdev(struct block_device *bdev, struct super_block *sb)
+@@ -247,6 +247,93 @@ void thaw_bdev(struct block_device *bdev, struct super_block *sb)
}
EXPORT_SYMBOL(thaw_bdev);
-+#if 0
++#ifdef CONFIG_FS_FREEZER_DEBUG
+#define FS_PRINTK(fmt, args...) printk(fmt, ## args)
+#else
+#define FS_PRINTK(fmt, args...)
@@ -1679,6 +1838,7 @@
+/**
+ * freeze_filesystems - lock all filesystems and force them into a consistent
+ * state
++ * @which: What combination of fuse & non-fuse to freeze.
+ */
+void freeze_filesystems(int which)
+{
@@ -1701,7 +1861,7 @@
+ which & FS_FREEZER_FUSE) {
+ sb->s_frozen = SB_FREEZE_TRANS;
+ sb->s_flags |= MS_FROZEN;
-+ printk("Fuse filesystem done.\n");
++ FS_PRINTK("Fuse filesystem done.\n");
+ continue;
+ }
+
@@ -1725,6 +1885,7 @@
+
+/**
+ * thaw_filesystems - unlock all filesystems
++ * @which: What combination of fuse & non-fuse to thaw.
+ */
+void thaw_filesystems(int which)
+{
@@ -1757,10 +1918,18 @@
* Various filesystems appear to want __find_get_block to be non-blocking.
* But it's the page lock which protects the buffers. To get around this,
diff --git a/fs/drop_caches.c b/fs/drop_caches.c
-index 3e5637f..0d4c88e 100644
+index 3e5637f..f3c5cd6 100644
--- a/fs/drop_caches.c
+++ b/fs/drop_caches.c
-@@ -33,7 +33,7 @@ static void drop_pagecache_sb(struct super_block *sb)
+@@ -8,6 +8,7 @@
+ #include <linux/writeback.h>
+ #include <linux/sysctl.h>
+ #include <linux/gfp.h>
++#include <linux/module.h>
+
+ /* A global variable is a bit ugly, but it keeps the code simple */
+ int sysctl_drop_caches;
+@@ -33,7 +34,7 @@ static void drop_pagecache_sb(struct super_block *sb)
iput(toput_inode);
}
@@ -1769,6 +1938,14 @@
{
struct super_block *sb;
+@@ -61,6 +62,7 @@ static void drop_slab(void)
+ nr_objects = shrink_slab(1000, GFP_KERNEL, 1000);
+ } while (nr_objects > 10);
+ }
++EXPORT_SYMBOL_GPL(drop_pagecache);
+
+ int drop_caches_sysctl_handler(ctl_table *table, int write,
+ struct file *file, void __user *buffer, size_t *length, loff_t *ppos)
diff --git a/fs/fuse/control.c b/fs/fuse/control.c
index 4f3cab3..f15b0c5 100644
--- a/fs/fuse/control.c
@@ -1821,7 +1998,7 @@
if (nbytes < sizeof(struct fuse_out_header))
return -EINVAL;
diff --git a/fs/fuse/dir.c b/fs/fuse/dir.c
-index fd03330..347e054 100644
+index fd03330..85fec3a 100644
--- a/fs/fuse/dir.c
+++ b/fs/fuse/dir.c
@@ -7,12 +7,14 @@
@@ -1849,16 +2026,25 @@
req = fuse_get_req(fc);
if (IS_ERR(req))
return 0;
-@@ -273,6 +278,8 @@ int fuse_lookup_name(struct super_block *sb, u64 nodeid, struct qstr *name,
- if (IS_ERR(req))
+@@ -268,6 +273,8 @@ int fuse_lookup_name(struct super_block *sb, u64 nodeid, struct qstr *name,
+ if (name->len > FUSE_NAME_MAX)
goto out;
-+ FUSE_MIGHT_FREEZE(sb, "fuse_lookup");
++ FUSE_MIGHT_FREEZE(sb, "fuse_lookup_name");
+
- forget_req = fuse_get_req(fc);
- err = PTR_ERR(forget_req);
- if (IS_ERR(forget_req)) {
-@@ -402,6 +409,8 @@ static int fuse_create_open(struct inode *dir, struct dentry *entry, int mode,
+ req = fuse_get_req(fc);
+ err = PTR_ERR(req);
+ if (IS_ERR(req))
+@@ -331,6 +338,8 @@ static struct dentry *fuse_lookup(struct inode *dir, struct dentry *entry,
+ if (err)
+ goto out_err;
+
++ FUSE_MIGHT_FREEZE(dir->i_sb, "fuse_lookup");
++
+ err = -EIO;
+ if (inode && get_node_id(inode) == FUSE_ROOT_ID)
+ goto out_iput;
+@@ -402,6 +411,8 @@ static int fuse_create_open(struct inode *dir, struct dentry *entry, int mode,
if (IS_ERR(forget_req))
return PTR_ERR(forget_req);
@@ -1867,7 +2053,7 @@
req = fuse_get_req(fc);
err = PTR_ERR(req);
if (IS_ERR(req))
-@@ -488,6 +497,8 @@ static int create_new_entry(struct fuse_conn *fc, struct fuse_req *req,
+@@ -488,6 +499,8 @@ static int create_new_entry(struct fuse_conn *fc, struct fuse_req *req,
int err;
struct fuse_req *forget_req;
@@ -1876,7 +2062,7 @@
forget_req = fuse_get_req(fc);
if (IS_ERR(forget_req)) {
fuse_put_request(fc, req);
-@@ -585,7 +596,11 @@ static int fuse_mkdir(struct inode *dir, struct dentry *entry, int mode)
+@@ -585,7 +598,11 @@ static int fuse_mkdir(struct inode *dir, struct dentry *entry, int mode)
{
struct fuse_mkdir_in inarg;
struct fuse_conn *fc = get_fuse_conn(dir);
@@ -1889,7 +2075,7 @@
if (IS_ERR(req))
return PTR_ERR(req);
-@@ -605,7 +620,11 @@ static int fuse_symlink(struct inode *dir, struct dentry *entry,
+@@ -605,7 +622,11 @@ static int fuse_symlink(struct inode *dir, struct dentry *entry,
{
struct fuse_conn *fc = get_fuse_conn(dir);
unsigned len = strlen(link) + 1;
@@ -1902,7 +2088,7 @@
if (IS_ERR(req))
return PTR_ERR(req);
-@@ -622,7 +641,11 @@ static int fuse_unlink(struct inode *dir, struct dentry *entry)
+@@ -622,7 +643,11 @@ static int fuse_unlink(struct inode *dir, struct dentry *entry)
{
int err;
struct fuse_conn *fc = get_fuse_conn(dir);
@@ -1915,7 +2101,7 @@
if (IS_ERR(req))
return PTR_ERR(req);
-@@ -653,7 +676,11 @@ static int fuse_rmdir(struct inode *dir, struct dentry *entry)
+@@ -653,7 +678,11 @@ static int fuse_rmdir(struct inode *dir, struct dentry *entry)
{
int err;
struct fuse_conn *fc = get_fuse_conn(dir);
@@ -1929,7 +2115,7 @@
return PTR_ERR(req);
diff --git a/fs/fuse/file.c b/fs/fuse/file.c
-index 2bada6b..2e4af49 100644
+index 2bada6b..a2081c4 100644
--- a/fs/fuse/file.c
+++ b/fs/fuse/file.c
@@ -7,11 +7,13 @@
@@ -1955,16 +2141,71 @@
req = fuse_get_req(fc);
if (IS_ERR(req))
return PTR_ERR(req);
-@@ -674,6 +678,8 @@ static int fuse_buffered_write(struct file *file, struct inode *inode,
+@@ -268,6 +272,8 @@ static int fuse_flush(struct file *file, fl_owner_t id)
+ if (fc->no_flush)
+ return 0;
+
++ FUSE_MIGHT_FREEZE(inode->i_sb, "fuse_flush");
++
+ req = fuse_get_req_nofail(fc, file);
+ memset(&inarg, 0, sizeof(inarg));
+ inarg.fh = ff->fh;
+@@ -319,6 +325,8 @@ int fuse_fsync_common(struct file *file, struct dentry *de, int datasync,
+ if ((!isdir && fc->no_fsync) || (isdir && fc->no_fsyncdir))
+ return 0;
+
++ FUSE_MIGHT_FREEZE(inode->i_sb, "fuse_fsync_common");
++
+ /*
+ * Start writeback against all dirty pages of the inode, then
+ * wait for all outstanding writes, before sending the FSYNC
+@@ -427,6 +435,8 @@ static int fuse_readpage(struct file *file, struct page *page)
+ if (is_bad_inode(inode))
+ goto out;
+
++ FUSE_MIGHT_FREEZE(file->f_mapping->host->i_sb, "fuse_readpage");
++
+ /*
+ * Page writeback can extend beyond the liftime of the
+ * page-cache page, so make sure we read a properly synced
+@@ -527,6 +537,9 @@ static int fuse_readpages_fill(void *_data, struct page *page)
+ struct inode *inode = data->inode;
+ struct fuse_conn *fc = get_fuse_conn(inode);
+
++ FUSE_MIGHT_FREEZE(data->file->f_mapping->host->i_sb,
++ "fuse_readpages_fill");
++
+ fuse_wait_on_page_writeback(inode, page->index);
+
+ if (req->num_pages &&
+@@ -557,6 +570,8 @@ static int fuse_readpages(struct file *file, struct address_space *mapping,
+ if (is_bad_inode(inode))
+ goto out;
+
++ FUSE_MIGHT_FREEZE(inode->i_sb, "fuse_readpages");
++
+ data.file = file;
+ data.inode = inode;
+ data.req = fuse_get_req(fc);
+@@ -674,6 +689,8 @@ static int fuse_buffered_write(struct file *file, struct inode *inode,
if (is_bad_inode(inode))
return -EIO;
-+ FUSE_MIGHT_FREEZE(inode->i_sb, "fuse_commit_write");
++ FUSE_MIGHT_FREEZE(inode->i_sb, "fuse_buffered_write");
+
/*
* Make sure writepages on the same page are not mixed up with
* plain writes.
-@@ -962,6 +968,8 @@ static ssize_t fuse_direct_io(struct file *file, const char __user *buf,
+@@ -828,6 +845,8 @@ static ssize_t fuse_perform_write(struct file *file,
+ struct fuse_req *req;
+ ssize_t count;
+
++ FUSE_MIGHT_FREEZE(inode->i_sb, "fuse_perform_write");
++
+ req = fuse_get_req(fc);
+ if (IS_ERR(req)) {
+ err = PTR_ERR(req);
+@@ -962,6 +981,8 @@ static ssize_t fuse_direct_io(struct file *file, const char __user *buf,
if (is_bad_inode(inode))
return -EIO;
@@ -1973,7 +2214,7 @@
req = fuse_get_req(fc);
if (IS_ERR(req))
return PTR_ERR(req);
-@@ -1315,6 +1323,8 @@ static int fuse_getlk(struct file *file, struct file_lock *fl)
+@@ -1315,6 +1336,8 @@ static int fuse_getlk(struct file *file, struct file_lock *fl)
struct fuse_lk_out outarg;
int err;
@@ -1982,7 +2223,7 @@
req = fuse_get_req(fc);
if (IS_ERR(req))
return PTR_ERR(req);
-@@ -1350,6 +1360,8 @@ static int fuse_setlk(struct file *file, struct file_lock *fl, int flock)
+@@ -1350,6 +1373,8 @@ static int fuse_setlk(struct file *file, struct file_lock *fl, int flock)
if (fl->fl_flags & FL_CLOSE)
return 0;
@@ -1991,7 +2232,7 @@
req = fuse_get_req(fc);
if (IS_ERR(req))
return PTR_ERR(req);
-@@ -1416,6 +1428,8 @@ static sector_t fuse_bmap(struct address_space *mapping, sector_t block)
+@@ -1416,6 +1441,8 @@ static sector_t fuse_bmap(struct address_space *mapping, sector_t block)
if (!inode->i_sb->s_bdev || fc->no_bmap)
return 0;
@@ -2041,15 +2282,6 @@
};
static inline int register_fuseblk(void)
-diff --git a/fs/ioctl.c b/fs/ioctl.c
-index 7db32b3..be49ee9 100644
---- a/fs/ioctl.c
-+++ b/fs/ioctl.c
-@@ -211,3 +211,4 @@ asmlinkage long sys_ioctl(unsigned int fd, unsigned int cmd, unsigned long arg)
- out:
- return error;
- }
-+EXPORT_SYMBOL(sys_ioctl);
<<Diff was trimmed, longer than 597 lines>>
---- CVS-web:
http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/SOURCES/linux-2.6-suspend2.patch?r1=1.1.2.2.2.10&r2=1.1.2.2.2.10.2.1&f=u
http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/SOURCES/kernel-suspend2-headers.patch?r1=1.1.2.7&r2=1.1.2.7.4.1&f=u
More information about the pld-cvs-commit
mailing list