SOURCES (LINUX_2_6): linux-2.6-suspend2.patch current-tuxonice-for-2.6.28.p...
baggins
baggins at pld-linux.org
Wed Dec 31 16:58:54 CET 2008
Author: baggins Date: Wed Dec 31 15:58:54 2008 GMT
Module: SOURCES Tag: LINUX_2_6
---- Log message:
current-tuxonice-for-2.6.28.patch.bz2 27-Dec-2008 08:25 113K
---- Files affected:
SOURCES:
linux-2.6-suspend2.patch (1.1.2.2.2.11 -> 1.1.2.2.2.12)
---- Diffs:
================================================================
Index: SOURCES/linux-2.6-suspend2.patch
diff -u SOURCES/linux-2.6-suspend2.patch:1.1.2.2.2.11 SOURCES/linux-2.6-suspend2.patch:1.1.2.2.2.12
--- SOURCES/linux-2.6-suspend2.patch:1.1.2.2.2.11 Thu Dec 25 22:50:51 2008
+++ SOURCES/linux-2.6-suspend2.patch Wed Dec 31 16:58:48 2008
@@ -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 fbc8fa5..b2b74f8 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
-@@ -4100,6 +4100,13 @@ P: Maciej W. Rozycki
+@@ -4233,6 +4233,13 @@ P: Maciej W. Rozycki
M: macro at linux-mips.org
S: Maintained
@@ -1252,13 +1252,90 @@
U14-34F SCSI DRIVER
P: Dario Ballabio
M: ballabio_dario at emc.com
+diff --git a/arch/x86/kernel/reboot.c b/arch/x86/kernel/reboot.c
+index cc5a254..1216ab3 100644
+--- a/arch/x86/kernel/reboot.c
++++ b/arch/x86/kernel/reboot.c
+@@ -511,6 +511,7 @@ void machine_restart(char *cmd)
+ {
+ machine_ops.restart(cmd);
+ }
++EXPORT_SYMBOL_GPL(machine_restart);
+
+ void machine_halt(void)
+ {
+diff --git a/arch/x86/power/cpu_64.c b/arch/x86/power/cpu_64.c
+index e3b6cf7..bdd74a8 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>
+@@ -76,6 +77,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 dc20a34..3d00017 100644
--- a/crypto/Kconfig
+++ b/crypto/Kconfig
-@@ -666,6 +666,14 @@ config CRYPTO_LZO
+@@ -287,6 +287,14 @@ config CRYPTO_MD5
help
- This is the LZO algorithm.
+ MD5 message digest algorithm (RFC1321).
+config CRYPTO_LZF
+ tristate "LZF compression algorithm"
@@ -1268,31 +1345,31 @@
+ 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
+index cd4a4ed..800eced 100644
--- a/crypto/Makefile
+++ b/crypto/Makefile
-@@ -67,6 +67,7 @@ obj-$(CONFIG_CRYPTO_SALSA20) += salsa20_generic.o
+@@ -71,6 +71,7 @@ obj-$(CONFIG_CRYPTO_SALSA20) += salsa20_generic.o
obj-$(CONFIG_CRYPTO_DEFLATE) += deflate.o
obj-$(CONFIG_CRYPTO_MICHAEL_MIC) += michael_mic.o
obj-$(CONFIG_CRYPTO_CRC32C) += crc32c.o
+obj-$(CONFIG_CRYPTO_LZF) += lzf.o
obj-$(CONFIG_CRYPTO_AUTHENC) += authenc.o
obj-$(CONFIG_CRYPTO_LZO) += lzo.o
-
+ obj-$(CONFIG_CRYPTO_RNG2) += rng.o
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 +1426,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 +1544,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,59 +1693,116 @@
+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 692c20b..a39a294 100644
--- a/drivers/base/power/main.c
+++ b/drivers/base/power/main.c
-@@ -54,6 +54,7 @@ void device_pm_lock(void)
+@@ -23,6 +23,7 @@
+ #include <linux/pm.h>
+ #include <linux/resume-trace.h>
+ #include <linux/rwsem.h>
++#include <linux/suspend.h>
+
+ #include "../base.h"
+ #include "power.h"
+@@ -54,6 +55,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
-@@ -62,6 +63,7 @@ void device_pm_unlock(void)
+@@ -62,6 +64,7 @@ void device_pm_unlock(void)
{
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 008176e..7d67569 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 1b1d326..84b843a 100644
--- a/drivers/md/md.c
+++ b/drivers/md/md.c
-@@ -5899,6 +5899,8 @@ void md_do_sync(mddev_t *mddev)
+@@ -5591,7 +5591,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
+@@ -5736,6 +5735,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;
+@@ -5757,6 +5759,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'
+@@ -5769,6 +5775,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();
+@@ -5852,6 +5859,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,
+@@ -5895,6 +5906,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 10179cf..e892125 100644
--- a/fs/buffer.c
+++ b/fs/buffer.c
-@@ -247,6 +247,91 @@ void thaw_bdev(struct block_device *bdev, struct super_block *sb)
+@@ -246,6 +246,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 +1813,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 +1836,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 +1860,7 @@
+
+/**
+ * thaw_filesystems - unlock all filesystems
++ * @which: What combination of fuse & non-fuse to thaw.
+ */
+void thaw_filesystems(int which)
+{
@@ -1757,10 +1893,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 +1913,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
@@ -1782,7 +1934,7 @@
.kill_sb = fuse_ctl_kill_sb,
};
diff --git a/fs/fuse/dev.c b/fs/fuse/dev.c
-index 87250b6..7246e3d 100644
+index b723614..ef5d259 100644
--- a/fs/fuse/dev.c
+++ b/fs/fuse/dev.c
@@ -7,6 +7,7 @@
@@ -1821,7 +1973,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 +2001,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 +2028,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 +2037,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 +2050,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 +2063,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 +2076,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 +2090,7 @@
return PTR_ERR(req);
diff --git a/fs/fuse/file.c b/fs/fuse/file.c
-index 2bada6b..2e4af49 100644
+index 34930a9..57414f5 100644
--- a/fs/fuse/file.c
+++ b/fs/fuse/file.c
@@ -7,11 +7,13 @@
@@ -1955,16 +2116,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,
+@@ -270,6 +274,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;
+@@ -321,6 +327,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
+@@ -429,6 +437,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
+@@ -529,6 +539,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 &&
+@@ -559,6 +572,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);
+@@ -676,6 +691,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,
+@@ -830,6 +847,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);
+@@ -964,6 +983,8 @@ static ssize_t fuse_direct_io(struct file *file, const char __user *buf,
if (is_bad_inode(inode))
return -EIO;
@@ -1973,7 +2189,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)
+@@ -1317,6 +1338,8 @@ static int fuse_getlk(struct file *file, struct file_lock *fl)
struct fuse_lk_out outarg;
int err;
@@ -1982,7 +2198,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)
+@@ -1352,6 +1375,8 @@ static int fuse_setlk(struct file *file, struct file_lock *fl, int flock)
if (fl->fl_flags & FL_CLOSE)
return 0;
@@ -1991,7 +2207,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)
+@@ -1418,6 +1443,8 @@ static sector_t fuse_bmap(struct address_space *mapping, sector_t block)
if (!inode->i_sb->s_bdev || fc->no_bmap)
return 0;
@@ -2020,10 +2236,10 @@
+ } \
+} while (0)
diff --git a/fs/fuse/inode.c b/fs/fuse/inode.c
-index d2249f1..04ae6cb 100644
+index 2e99f34..ad8d103 100644
--- a/fs/fuse/inode.c
+++ b/fs/fuse/inode.c
-@@ -914,7 +914,7 @@ static int fuse_get_sb(struct file_system_type *fs_type,
+@@ -908,7 +908,7 @@ static int fuse_get_sb(struct file_system_type *fs_type,
static struct file_system_type fuse_fs_type = {
.owner = THIS_MODULE,
.name = "fuse",
@@ -2032,7 +2248,7 @@
.get_sb = fuse_get_sb,
.kill_sb = kill_anon_super,
};
<<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.11&r2=1.1.2.2.2.12&f=u
More information about the pld-cvs-commit
mailing list