diff options
author | Mel Gorman <mgorman@suse.de> | 2012-07-31 19:44:57 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2012-07-31 21:42:47 -0400 |
commit | a509bc1a9e487d952d9404318f7f990166ab57a7 (patch) | |
tree | 40a8f8a20877da8a5b855cfbc3813c0874605093 /include/linux/fs.h | |
parent | 62c230bc1790923a1b35da03596a68a6c9b5b100 (diff) |
mm: swap: implement generic handler for swap_activate
The version of swap_activate introduced is sufficient for swap-over-NFS
but would not provide enough information to implement a generic handler.
This patch shuffles things slightly to ensure the same information is
available for aops->swap_activate() as is available to the core.
No functionality change.
Signed-off-by: Mel Gorman <mgorman@suse.de>
Acked-by: Rik van Riel <riel@redhat.com>
Cc: Christoph Hellwig <hch@infradead.org>
Cc: David S. Miller <davem@davemloft.net>
Cc: Eric B Munson <emunson@mgebm.net>
Cc: Eric Paris <eparis@redhat.com>
Cc: James Morris <jmorris@namei.org>
Cc: Mel Gorman <mgorman@suse.de>
Cc: Mike Christie <michaelc@cs.wisc.edu>
Cc: Neil Brown <neilb@suse.de>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Sebastian Andrzej Siewior <sebastian@breakpoint.cc>
Cc: Trond Myklebust <Trond.Myklebust@netapp.com>
Cc: Xiaotian Feng <dfeng@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'include/linux/fs.h')
-rw-r--r-- | include/linux/fs.h | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/include/linux/fs.h b/include/linux/fs.h index 38356ab827c9..c8667f8b5358 100644 --- a/include/linux/fs.h +++ b/include/linux/fs.h | |||
@@ -429,6 +429,7 @@ struct kstatfs; | |||
429 | struct vm_area_struct; | 429 | struct vm_area_struct; |
430 | struct vfsmount; | 430 | struct vfsmount; |
431 | struct cred; | 431 | struct cred; |
432 | struct swap_info_struct; | ||
432 | 433 | ||
433 | extern void __init inode_init(void); | 434 | extern void __init inode_init(void); |
434 | extern void __init inode_init_early(void); | 435 | extern void __init inode_init_early(void); |
@@ -640,8 +641,9 @@ struct address_space_operations { | |||
640 | int (*error_remove_page)(struct address_space *, struct page *); | 641 | int (*error_remove_page)(struct address_space *, struct page *); |
641 | 642 | ||
642 | /* swapfile support */ | 643 | /* swapfile support */ |
643 | int (*swap_activate)(struct file *file); | 644 | int (*swap_activate)(struct swap_info_struct *sis, struct file *file, |
644 | int (*swap_deactivate)(struct file *file); | 645 | sector_t *span); |
646 | void (*swap_deactivate)(struct file *file); | ||
645 | }; | 647 | }; |
646 | 648 | ||
647 | extern const struct address_space_operations empty_aops; | 649 | extern const struct address_space_operations empty_aops; |