aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/suspend.h
diff options
context:
space:
mode:
authorRafael J. Wysocki <rjw@sisk.pl>2007-05-06 17:50:42 -0400
committerLinus Torvalds <torvalds@woody.linux-foundation.org>2007-05-07 15:12:58 -0400
commit7be9823491ecbaf9700d7d3502cb4b4dd0ed868a (patch)
tree10f606c59837d851376823dae5d8faf50a51bde8 /include/linux/suspend.h
parent433ecb4ab312f873870b67ee374502e84f6dcf92 (diff)
swsusp: use inline functions for changing page flags
Replace direct invocations of SetPageNosave(), SetPageNosaveFree() etc. with calls to inline functions that can be changed in subsequent patches without modifying the code calling them. Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl> Acked-by: Pavel Machek <pavel@ucw.cz> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'include/linux/suspend.h')
-rw-r--r--include/linux/suspend.h33
1 files changed, 33 insertions, 0 deletions
diff --git a/include/linux/suspend.h b/include/linux/suspend.h
index bf99bd49f8ef..a45b9f514492 100644
--- a/include/linux/suspend.h
+++ b/include/linux/suspend.h
@@ -8,6 +8,7 @@
8#include <linux/notifier.h> 8#include <linux/notifier.h>
9#include <linux/init.h> 9#include <linux/init.h>
10#include <linux/pm.h> 10#include <linux/pm.h>
11#include <linux/mm.h>
11 12
12/* struct pbe is used for creating lists of pages that should be restored 13/* struct pbe is used for creating lists of pages that should be restored
13 * atomically during the resume from disk, because the page frames they have 14 * atomically during the resume from disk, because the page frames they have
@@ -49,6 +50,38 @@ void __save_processor_state(struct saved_context *ctxt);
49void __restore_processor_state(struct saved_context *ctxt); 50void __restore_processor_state(struct saved_context *ctxt);
50unsigned long get_safe_page(gfp_t gfp_mask); 51unsigned long get_safe_page(gfp_t gfp_mask);
51 52
53/* Page management functions for the software suspend (swsusp) */
54
55static inline void swsusp_set_page_forbidden(struct page *page)
56{
57 SetPageNosave(page);
58}
59
60static inline int swsusp_page_is_forbidden(struct page *page)
61{
62 return PageNosave(page);
63}
64
65static inline void swsusp_unset_page_forbidden(struct page *page)
66{
67 ClearPageNosave(page);
68}
69
70static inline void swsusp_set_page_free(struct page *page)
71{
72 SetPageNosaveFree(page);
73}
74
75static inline int swsusp_page_is_free(struct page *page)
76{
77 return PageNosaveFree(page);
78}
79
80static inline void swsusp_unset_page_free(struct page *page)
81{
82 ClearPageNosaveFree(page);
83}
84
52/* 85/*
53 * XXX: We try to keep some more pages free so that I/O operations succeed 86 * XXX: We try to keep some more pages free so that I/O operations succeed
54 * without paging. Might this be more? 87 * without paging. Might this be more?