packages: kernel/kernel-tuxonice.patch, kernel/kernel.spec http://www.tuxon...
arekm
arekm at pld-linux.org
Sun Sep 13 09:10:46 CEST 2009
Author: arekm Date: Sun Sep 13 07:10:46 2009 GMT
Module: packages Tag: HEAD
---- Log message:
http://www.tuxonice.net/downloads/all/current-tuxonice-for-2.6.31.patch-20090911-v1.bz2
---- Files affected:
packages/kernel:
kernel-tuxonice.patch (1.5 -> 1.6) , kernel.spec (1.704 -> 1.705)
---- Diffs:
================================================================
Index: packages/kernel/kernel-tuxonice.patch
diff -u packages/kernel/kernel-tuxonice.patch:1.5 packages/kernel/kernel-tuxonice.patch:1.6
--- packages/kernel/kernel-tuxonice.patch:1.5 Mon Jul 20 14:57:26 2009
+++ packages/kernel/kernel-tuxonice.patch Sun Sep 13 09:10:40 2009
@@ -483,7 +483,7 @@
+
diff --git a/Documentation/power/tuxonice.txt b/Documentation/power/tuxonice.txt
new file mode 100644
-index 0000000..8900b45
+index 0000000..3bf0575
--- /dev/null
+++ b/Documentation/power/tuxonice.txt
@@ -0,0 +1,948 @@
@@ -613,7 +613,7 @@
+ something along the lines of:
+
+ echo "TuxOnIce" > /hibernation-file
-+ dd if=/dev/zero bs=1M count=512 >> hibernation-file
++ dd if=/dev/zero bs=1M count=512 >> /hibernation-file
+
+ This will create a 512MB file called /hibernation-file. To get TuxOnIce to use
+ it:
@@ -1436,10 +1436,10 @@
+ testing. His efforts have contributed as much to TuxOnIce as any of the
+ names above.
diff --git a/MAINTAINERS b/MAINTAINERS
-index cf4abdd..979b923 100644
+index 8dca9d8..14c7e10 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
-@@ -5655,6 +5655,13 @@ S: Maintained
+@@ -5038,6 +5038,13 @@ S: Maintained
F: drivers/tc/
F: include/linux/tc.h
@@ -1451,8 +1451,8 @@
+S: Maintained
+
U14-34F SCSI DRIVER
- P: Dario Ballabio
- M: ballabio_dario at emc.com
+ M: Dario Ballabio <ballabio_dario at emc.com>
+ L: linux-scsi at vger.kernel.org
diff --git a/arch/powerpc/mm/pgtable_32.c b/arch/powerpc/mm/pgtable_32.c
index 5422169..33be4fa 100644
--- a/arch/powerpc/mm/pgtable_32.c
@@ -1466,10 +1466,10 @@
static int fixmaps;
diff --git a/arch/x86/kernel/reboot.c b/arch/x86/kernel/reboot.c
-index 667188e..8113e78 100644
+index a06e8d1..9a1fe4b 100644
--- a/arch/x86/kernel/reboot.c
+++ b/arch/x86/kernel/reboot.c
-@@ -620,6 +620,7 @@ void machine_restart(char *cmd)
+@@ -677,6 +677,7 @@ void machine_restart(char *cmd)
{
machine_ops.restart(cmd);
}
@@ -1478,10 +1478,10 @@
void machine_halt(void)
{
diff --git a/arch/x86/mm/pageattr.c b/arch/x86/mm/pageattr.c
-index e17efed..5d0b4d2 100644
+index 7e600c1..418725a 100644
--- a/arch/x86/mm/pageattr.c
+++ b/arch/x86/mm/pageattr.c
-@@ -1268,6 +1268,7 @@ void kernel_map_pages(struct page *page, int numpages, int enable)
+@@ -1284,6 +1284,7 @@ void kernel_map_pages(struct page *page, int numpages, int enable)
*/
__flush_tlb_all();
}
@@ -1489,7 +1489,7 @@
#ifdef CONFIG_HIBERNATION
-@@ -1282,7 +1283,7 @@ bool kernel_page_present(struct page *page)
+@@ -1298,7 +1299,7 @@ bool kernel_page_present(struct page *page)
pte = lookup_address((unsigned long)page_address(page), &level);
return (pte_val(*pte) & _PAGE_PRESENT);
}
@@ -1498,23 +1498,17 @@
#endif /* CONFIG_HIBERNATION */
#endif /* CONFIG_DEBUG_PAGEALLOC */
-diff --git a/arch/x86/power/cpu_64.c b/arch/x86/power/cpu_64.c
-index 5343540..d2d55bd 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>
-@@ -77,6 +78,7 @@ void save_processor_state(void)
+diff --git a/arch/x86/power/cpu.c b/arch/x86/power/cpu.c
+index b3d20b9..cb13f39 100644
+--- a/arch/x86/power/cpu.c
++++ b/arch/x86/power/cpu.c
+@@ -111,9 +111,7 @@ void save_processor_state(void)
{
__save_processor_state(&saved_context);
}
-+EXPORT_SYMBOL_GPL(save_processor_state);
+-#ifdef CONFIG_X86_32
+ EXPORT_SYMBOL(save_processor_state);
+-#endif
static void do_fpu_end(void)
{
@@ -1564,7 +1558,7 @@
}
+EXPORT_SYMBOL_GPL(arch_hibernation_header_restore);
diff --git a/drivers/base/power/main.c b/drivers/base/power/main.c
-index 3e4bc69..80612e3 100644
+index 58a3e57..4b0c6cf 100644
--- a/drivers/base/power/main.c
+++ b/drivers/base/power/main.c
@@ -55,6 +55,7 @@ void device_pm_lock(void)
@@ -1584,10 +1578,10 @@
/**
* device_pm_add - add a device to the list of active devices
diff --git a/drivers/char/vt.c b/drivers/char/vt.c
-index 08151d4..7377d98 100644
+index 404f4c1..0988ad0 100644
--- a/drivers/char/vt.c
+++ b/drivers/char/vt.c
-@@ -187,6 +187,7 @@ int fg_console;
+@@ -188,6 +188,7 @@ int fg_console;
int last_console;
int want_console = -1;
int kmsg_redirect;
@@ -1596,24 +1590,24 @@
/*
* For each existing display, we have a pointer to console currently visible
diff --git a/drivers/gpu/drm/drm_gem.c b/drivers/gpu/drm/drm_gem.c
-index 4984aa8..c69b548 100644
+index ffe8f43..5e7dca6 100644
--- a/drivers/gpu/drm/drm_gem.c
+++ b/drivers/gpu/drm/drm_gem.c
-@@ -136,7 +136,8 @@ drm_gem_object_alloc(struct drm_device *dev, size_t size)
- obj = kcalloc(1, sizeof(*obj), GFP_KERNEL);
+@@ -138,7 +138,8 @@ drm_gem_object_alloc(struct drm_device *dev, size_t size)
+ goto free;
obj->dev = dev;
- obj->filp = shmem_file_setup("drm mm object", size, VM_NORESERVE);
+ obj->filp = shmem_file_setup("drm mm object", size,
+ VM_NORESERVE | VM_ATOMIC_COPY);
- if (IS_ERR(obj->filp)) {
- kfree(obj);
- return NULL;
+ if (IS_ERR(obj->filp))
+ goto free;
+
diff --git a/drivers/md/md.c b/drivers/md/md.c
-index 641b211..73ccc45 100644
+index 9dd8720..88dc120 100644
--- a/drivers/md/md.c
+++ b/drivers/md/md.c
-@@ -6251,6 +6251,9 @@ void md_do_sync(mddev_t *mddev)
+@@ -6245,6 +6245,9 @@ void md_do_sync(mddev_t *mddev)
mddev->curr_resync = 2;
try_again:
@@ -1623,7 +1617,7 @@
if (kthread_should_stop()) {
set_bit(MD_RECOVERY_INTR, &mddev->recovery);
goto skip;
-@@ -6272,6 +6275,10 @@ void md_do_sync(mddev_t *mddev)
+@@ -6266,6 +6269,10 @@ void md_do_sync(mddev_t *mddev)
* time 'round when curr_resync == 2
*/
continue;
@@ -1634,7 +1628,7 @@
/* We need to wait 'interruptible' so as not to
* contribute to the load average, and not to
* be caught by 'softlockup'
-@@ -6284,6 +6291,7 @@ void md_do_sync(mddev_t *mddev)
+@@ -6278,6 +6285,7 @@ void md_do_sync(mddev_t *mddev)
" share one or more physical units)\n",
desc, mdname(mddev), mdname(mddev2));
mddev_put(mddev2);
@@ -1643,8 +1637,8 @@
flush_signals(current);
schedule();
@@ -6384,6 +6392,9 @@ void md_do_sync(mddev_t *mddev)
- mddev->resync_max > j
- || kthread_should_stop());
+ || kthread_should_stop());
+ }
+ while (freezer_is_on())
+ yield();
@@ -1663,10 +1657,10 @@
if (kthread_should_stop())
goto interrupted;
diff --git a/fs/block_dev.c b/fs/block_dev.c
-index f45dbc1..52a7869 100644
+index 94dfda2..8c1b98e 100644
--- a/fs/block_dev.c
+++ b/fs/block_dev.c
-@@ -321,6 +321,93 @@ int thaw_bdev(struct block_device *bdev, struct super_block *sb)
+@@ -327,6 +327,93 @@ int thaw_bdev(struct block_device *bdev, struct super_block *sb)
}
EXPORT_SYMBOL(thaw_bdev);
@@ -1761,7 +1755,7 @@
{
return block_write_full_page(page, blkdev_get_block, wbc);
diff --git a/fs/drop_caches.c b/fs/drop_caches.c
-index b6a719a..30ef3f3 100644
+index a2edb79..1d0444e 100644
--- a/fs/drop_caches.c
+++ b/fs/drop_caches.c
@@ -8,6 +8,7 @@
@@ -1802,7 +1796,7 @@
.kill_sb = fuse_ctl_kill_sb,
};
diff --git a/fs/fuse/dev.c b/fs/fuse/dev.c
-index ba76b68..e9942d4 100644
+index 6484eb7..5251799 100644
--- a/fs/fuse/dev.c
+++ b/fs/fuse/dev.c
@@ -7,6 +7,7 @@
@@ -1821,7 +1815,7 @@
MODULE_ALIAS_MISCDEV(FUSE_MINOR);
-@@ -752,6 +754,8 @@ static ssize_t fuse_dev_read(struct kiocb *iocb, const struct iovec *iov,
+@@ -758,6 +760,8 @@ static ssize_t fuse_dev_read(struct kiocb *iocb, const struct iovec *iov,
if (!fc)
return -EPERM;
@@ -1830,7 +1824,7 @@
restart:
spin_lock(&fc->lock);
err = -EAGAIN;
-@@ -912,6 +916,9 @@ static ssize_t fuse_dev_write(struct kiocb *iocb, const struct iovec *iov,
+@@ -999,6 +1003,9 @@ static ssize_t fuse_dev_write(struct kiocb *iocb, const struct iovec *iov,
if (!fc)
return -EPERM;
@@ -1841,7 +1835,7 @@
if (nbytes < sizeof(struct fuse_out_header))
return -EINVAL;
diff --git a/fs/fuse/dir.c b/fs/fuse/dir.c
-index 8b8eebc..31cda20 100644
+index e703654..bfb0500 100644
--- a/fs/fuse/dir.c
+++ b/fs/fuse/dir.c
@@ -7,12 +7,14 @@
@@ -1887,7 +1881,7 @@
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,
+@@ -389,6 +398,8 @@ static int fuse_create_open(struct inode *dir, struct dentry *entry, int mode,
if (IS_ERR(forget_req))
return PTR_ERR(forget_req);
@@ -1896,7 +1890,7 @@
req = fuse_get_req(fc);
err = PTR_ERR(req);
if (IS_ERR(req))
-@@ -488,6 +499,8 @@ static int create_new_entry(struct fuse_conn *fc, struct fuse_req *req,
+@@ -482,6 +493,8 @@ static int create_new_entry(struct fuse_conn *fc, struct fuse_req *req,
int err;
struct fuse_req *forget_req;
@@ -1905,7 +1899,7 @@
forget_req = fuse_get_req(fc);
if (IS_ERR(forget_req)) {
fuse_put_request(fc, req);
-@@ -585,7 +598,11 @@ static int fuse_mkdir(struct inode *dir, struct dentry *entry, int mode)
+@@ -584,7 +597,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);
@@ -1918,7 +1912,7 @@
if (IS_ERR(req))
return PTR_ERR(req);
-@@ -605,7 +622,11 @@ static int fuse_symlink(struct inode *dir, struct dentry *entry,
+@@ -608,7 +625,11 @@ static int fuse_symlink(struct inode *dir, struct dentry *entry,
{
struct fuse_conn *fc = get_fuse_conn(dir);
unsigned len = strlen(link) + 1;
@@ -1931,7 +1925,7 @@
if (IS_ERR(req))
return PTR_ERR(req);
-@@ -622,7 +643,11 @@ static int fuse_unlink(struct inode *dir, struct dentry *entry)
+@@ -625,7 +646,11 @@ static int fuse_unlink(struct inode *dir, struct dentry *entry)
{
int err;
struct fuse_conn *fc = get_fuse_conn(dir);
@@ -1944,7 +1938,7 @@
if (IS_ERR(req))
return PTR_ERR(req);
-@@ -655,7 +680,11 @@ static int fuse_rmdir(struct inode *dir, struct dentry *entry)
+@@ -658,7 +683,11 @@ static int fuse_rmdir(struct inode *dir, struct dentry *entry)
{
int err;
struct fuse_conn *fc = get_fuse_conn(dir);
@@ -1958,7 +1952,7 @@
return PTR_ERR(req);
diff --git a/fs/fuse/file.c b/fs/fuse/file.c
-index 06f30e9..80ad032 100644
+index cbc4640..b99aa5c 100644
--- a/fs/fuse/file.c
+++ b/fs/fuse/file.c
@@ -7,11 +7,13 @@
@@ -1972,19 +1966,19 @@
#include <linux/kernel.h>
#include <linux/sched.h>
+#include <linux/freezer.h>
+ #include <linux/module.h>
static const struct file_operations fuse_direct_io_file_operations;
-
-@@ -23,6 +25,8 @@ static int fuse_send_open(struct inode *inode, struct file *file, int isdir,
- struct fuse_req *req;
+@@ -109,6 +111,8 @@ int fuse_do_open(struct fuse_conn *fc, u64 nodeid, struct file *file,
int err;
+ int opcode = isdir ? FUSE_OPENDIR : FUSE_OPEN;
-+ FUSE_MIGHT_FREEZE(inode->i_sb, "fuse_send_open");
++ FUSE_MIGHT_FREEZE(file->f_path.dentry->d_inode->i_sb, "fuse_send_open");
+
- req = fuse_get_req(fc);
- if (IS_ERR(req))
- return PTR_ERR(req);
-@@ -279,6 +283,8 @@ static int fuse_flush(struct file *file, fl_owner_t id)
+ ff = fuse_file_alloc(fc);
+ if (!ff)
+ return -ENOMEM;
+@@ -316,6 +320,8 @@ static int fuse_flush(struct file *file, fl_owner_t id)
if (fc->no_flush)
return 0;
@@ -1993,7 +1987,7 @@
req = fuse_get_req_nofail(fc, file);
memset(&inarg, 0, sizeof(inarg));
inarg.fh = ff->fh;
-@@ -330,6 +336,8 @@ int fuse_fsync_common(struct file *file, struct dentry *de, int datasync,
+@@ -367,6 +373,8 @@ int fuse_fsync_common(struct file *file, struct dentry *de, int datasync,
if ((!isdir && fc->no_fsync) || (isdir && fc->no_fsyncdir))
return 0;
@@ -2002,7 +1996,7 @@
/*
* Start writeback against all dirty pages of the inode, then
* wait for all outstanding writes, before sending the FSYNC
-@@ -437,6 +445,8 @@ static int fuse_readpage(struct file *file, struct page *page)
+@@ -474,6 +482,8 @@ static int fuse_readpage(struct file *file, struct page *page)
if (is_bad_inode(inode))
goto out;
@@ -2011,7 +2005,7 @@
/*
* Page writeback can extend beyond the liftime of the
* page-cache page, so make sure we read a properly synced
-@@ -540,6 +550,9 @@ static int fuse_readpages_fill(void *_data, struct page *page)
+@@ -576,6 +586,9 @@ static int fuse_readpages_fill(void *_data, struct page *page)
struct inode *inode = data->inode;
struct fuse_conn *fc = get_fuse_conn(inode);
@@ -2021,7 +2015,7 @@
fuse_wait_on_page_writeback(inode, page->index);
if (req->num_pages &&
-@@ -570,6 +583,8 @@ static int fuse_readpages(struct file *file, struct address_space *mapping,
+@@ -606,6 +619,8 @@ static int fuse_readpages(struct file *file, struct address_space *mapping,
if (is_bad_inode(inode))
goto out;
@@ -2030,7 +2024,7 @@
data.file = file;
data.inode = inode;
data.req = fuse_get_req(fc);
-@@ -686,6 +701,8 @@ static int fuse_buffered_write(struct file *file, struct inode *inode,
+@@ -719,6 +734,8 @@ static int fuse_buffered_write(struct file *file, struct inode *inode,
if (is_bad_inode(inode))
return -EIO;
@@ -2039,7 +2033,7 @@
/*
* Make sure writepages on the same page are not mixed up with
* plain writes.
-@@ -842,6 +859,8 @@ static ssize_t fuse_perform_write(struct file *file,
+@@ -875,6 +892,8 @@ static ssize_t fuse_perform_write(struct file *file,
struct fuse_req *req;
ssize_t count;
@@ -2048,16 +2042,16 @@
req = fuse_get_req(fc);
if (IS_ERR(req)) {
err = PTR_ERR(req);
-@@ -992,6 +1011,8 @@ static ssize_t fuse_direct_io(struct file *file, const char __user *buf,
- if (is_bad_inode(inode))
- return -EIO;
+@@ -1022,6 +1041,8 @@ ssize_t fuse_direct_io(struct file *file, const char __user *buf,
+ ssize_t res = 0;
+ struct fuse_req *req;
+ FUSE_MIGHT_FREEZE(file->f_mapping->host->i_sb, "fuse_direct_io");
+
req = fuse_get_req(fc);
if (IS_ERR(req))
return PTR_ERR(req);
-@@ -1360,6 +1381,8 @@ static int fuse_getlk(struct file *file, struct file_lock *fl)
+@@ -1408,6 +1429,8 @@ static int fuse_getlk(struct file *file, struct file_lock *fl)
struct fuse_lk_out outarg;
int err;
@@ -2066,7 +2060,7 @@
req = fuse_get_req(fc);
if (IS_ERR(req))
return PTR_ERR(req);
-@@ -1395,6 +1418,8 @@ static int fuse_setlk(struct file *file, struct file_lock *fl, int flock)
+@@ -1443,6 +1466,8 @@ static int fuse_setlk(struct file *file, struct file_lock *fl, int flock)
if (fl->fl_flags & FL_CLOSE)
return 0;
@@ -2075,7 +2069,7 @@
req = fuse_get_req(fc);
if (IS_ERR(req))
return PTR_ERR(req);
-@@ -1461,6 +1486,8 @@ static sector_t fuse_bmap(struct address_space *mapping, sector_t block)
+@@ -1509,6 +1534,8 @@ static sector_t fuse_bmap(struct address_space *mapping, sector_t block)
if (!inode->i_sb->s_bdev || fc->no_bmap)
return 0;
@@ -2104,32 +2098,32 @@
+ } \
+} while (0)
diff --git a/fs/fuse/inode.c b/fs/fuse/inode.c
-index 91f7c85..cb18b16 100644
+index f91ccc4..8de2966 100644
--- a/fs/fuse/inode.c
+++ b/fs/fuse/inode.c
-@@ -929,7 +929,7 @@ static int fuse_get_sb(struct file_system_type *fs_type,
+@@ -991,7 +991,7 @@ static void fuse_kill_sb_anon(struct super_block *sb)
static struct file_system_type fuse_fs_type = {
.owner = THIS_MODULE,
.name = "fuse",
- .fs_flags = FS_HAS_SUBTYPE,
+ .fs_flags = FS_HAS_SUBTYPE | FS_IS_FUSE,
.get_sb = fuse_get_sb,
- .kill_sb = kill_anon_super,
+ .kill_sb = fuse_kill_sb_anon,
};
-@@ -948,7 +948,7 @@ static struct file_system_type fuseblk_fs_type = {
+@@ -1023,7 +1023,7 @@ static struct file_system_type fuseblk_fs_type = {
.name = "fuseblk",
.get_sb = fuse_get_sb_blk,
- .kill_sb = kill_block_super,
+ .kill_sb = fuse_kill_sb_blk,
- .fs_flags = FS_REQUIRES_DEV | FS_HAS_SUBTYPE,
+ .fs_flags = FS_REQUIRES_DEV | FS_HAS_SUBTYPE | FS_IS_FUSE,
};
static inline int register_fuseblk(void)
diff --git a/fs/namei.c b/fs/namei.c
-index 967c3db..bffeb61 100644
+index 1f13751..96fcd99 100644
--- a/fs/namei.c
+++ b/fs/namei.c
-@@ -2220,6 +2220,8 @@ int vfs_unlink(struct inode *dir, struct dentry *dentry)
+@@ -2271,6 +2271,8 @@ int vfs_unlink(struct inode *dir, struct dentry *dentry)
if (!dir->i_op->unlink)
return -EPERM;
@@ -2139,10 +2133,10 @@
mutex_lock(&dentry->d_inode->i_mutex);
diff --git a/fs/super.c b/fs/super.c
-index 1943fdf..0ad40de 100644
+index 2761d3e..6892dab 100644
--- a/fs/super.c
+++ b/fs/super.c
-@@ -44,6 +44,8 @@
+@@ -42,6 +42,8 @@
LIST_HEAD(super_blocks);
@@ -2152,10 +2146,10 @@
/**
diff --git a/include/linux/Kbuild b/include/linux/Kbuild
-index 3f0eaa3..40e2a83 100644
+index 334a359..c53ebd5 100644
--- a/include/linux/Kbuild
+++ b/include/linux/Kbuild
-@@ -209,6 +209,7 @@ unifdef-y += filter.h
+@@ -211,6 +211,7 @@ unifdef-y += filter.h
unifdef-y += flat.h
unifdef-y += futex.h
unifdef-y += fs.h
@@ -2201,18 +2195,10 @@
static inline void freezer_do_not_count(void) {}
static inline void freezer_count(void) {}
diff --git a/include/linux/fs.h b/include/linux/fs.h
-index 3b534e5..46dc165 100644
+index 73e9b64..78b2ef3 100644
--- a/include/linux/fs.h
+++ b/include/linux/fs.h
-@@ -8,6 +8,7 @@
-
- #include <linux/limits.h>
- #include <linux/ioctl.h>
-+#include <linux/freezer.h>
-
- /*
- * It's silly to have NR_OPEN bigger than NR_FILE, but you can change
-@@ -172,6 +173,7 @@ struct inodes_stat_t {
+@@ -172,6 +172,7 @@ struct inodes_stat_t {
#define FS_REQUIRES_DEV 1
#define FS_BINARY_MOUNTDATA 2
#define FS_HAS_SUBTYPE 4
@@ -2220,7 +2206,7 @@
#define FS_REVAL_DOT 16384 /* Check the paths ".", ".." for staleness */
#define FS_RENAME_DOES_D_MOVE 32768 /* FS will handle d_move()
* during rename() internally.
-@@ -205,6 +207,7 @@ struct inodes_stat_t {
+@@ -205,6 +206,7 @@ struct inodes_stat_t {
#define MS_KERNMOUNT (1<<22) /* this is a kern_mount call */
#define MS_I_VERSION (1<<23) /* Update inode I_version field */
#define MS_STRICTATIME (1<<24) /* Always perform atime updates */
@@ -2228,7 +2214,7 @@
#define MS_ACTIVE (1<<30)
#define MS_NOUSER (1<<31)
-@@ -231,6 +234,8 @@ struct inodes_stat_t {
+@@ -231,6 +233,8 @@ struct inodes_stat_t {
#define S_NOCMTIME 128 /* Do not update file c/mtime */
#define S_SWAPFILE 256 /* Do not truncate: swapon got its bmaps */
#define S_PRIVATE 512 /* Inode is fs-internal */
@@ -2237,7 +2223,15 @@
/*
* Note that nosuid etc flags are inode-specific: setting some file-system
-@@ -1390,8 +1395,11 @@ enum {
+@@ -373,6 +377,7 @@ struct inodes_stat_t {
+ #include <linux/capability.h>
+ #include <linux/semaphore.h>
+ #include <linux/fiemap.h>
++#include <linux/freezer.h>
+
+ #include <asm/atomic.h>
+ #include <asm/byteorder.h>
+@@ -1392,8 +1397,11 @@ enum {
SB_FREEZE_TRANS = 2,
};
@@ -2251,10 +2245,12 @@
#define get_fs_excl() atomic_inc(¤t->fs_excl)
#define put_fs_excl() atomic_dec(¤t->fs_excl)
-@@ -1949,6 +1957,11 @@ extern int thaw_bdev(struct block_device *bdev, struct super_block *sb);
+@@ -1957,6 +1965,13 @@ extern struct super_block *freeze_bdev(struct block_device *);
+ extern void emergency_thaw_all(void);
+ extern int thaw_bdev(struct block_device *bdev, struct super_block *sb);
extern int fsync_bdev(struct block_device *);
- extern int fsync_super(struct super_block *);
- extern int fsync_no_super(struct block_device *);
++extern int fsync_super(struct super_block *);
++extern int fsync_no_super(struct block_device *);
+#define FS_FREEZER_FUSE 1
+#define FS_FREEZER_NORMAL 2
+#define FS_FREEZER_ALL (FS_FREEZER_FUSE | FS_FREEZER_NORMAL)
@@ -2264,10 +2260,10 @@
static inline void bd_forget(struct inode *inode) {}
static inline int sync_blockdev(struct block_device *bdev) { return 0; }
diff --git a/include/linux/mm.h b/include/linux/mm.h
-index bff1f0d..c4199cd 100644
+index 9a72cc7..ec0431d 100644
--- a/include/linux/mm.h
+++ b/include/linux/mm.h
-@@ -105,6 +105,7 @@ extern unsigned int kobjsize(const void *objp);
+@@ -103,6 +103,7 @@ extern unsigned int kobjsize(const void *objp);
#define VM_MIXEDMAP 0x10000000 /* Can contain "struct page" and pure PFN pages */
#define VM_SAO 0x20000000 /* Strong Access Ordering (powerpc) */
#define VM_PFN_AT_MMAP 0x40000000 /* PFNMAP vma that is fully mapped at mmap time */
@@ -2275,7 +2271,7 @@
#ifndef VM_STACK_DEFAULT_FLAGS /* arch can override this */
#define VM_STACK_DEFAULT_FLAGS VM_DATA_DEFAULT_FLAGS
-@@ -1297,6 +1298,7 @@ int drop_caches_sysctl_handler(struct ctl_table *, int, struct file *,
+@@ -1278,6 +1279,7 @@ int drop_caches_sysctl_handler(struct ctl_table *, int, struct file *,
<<Diff was trimmed, longer than 597 lines>>
---- CVS-web:
http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/kernel/kernel-tuxonice.patch?r1=1.5&r2=1.6&f=u
http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/kernel/kernel.spec?r1=1.704&r2=1.705&f=u
More information about the pld-cvs-commit
mailing list