mm: fix warnings regarding enum migrate_mode
sparc64 allmodconfig: In file included from include/linux/compat.h:15, from /usr/src/25/arch/sparc/include/asm/siginfo.h:19, from include/linux/signal.h:5, from include/linux/sched.h:73, from arch/sparc/kernel/asm-offsets.c:13: include/linux/fs.h:618: warning: parameter has incomplete type It seems that my sparc64 compiler (gcc-3.4.5) doesn't like the forward declaration of enums. Fix this by moving the "enum migrate_mode" definition into its own header file. Acked-by: Mel Gorman <mgorman@suse.de> Cc: Rik van Riel <riel@redhat.com> Cc: Andrea Arcangeli <aarcange@redhat.com> Cc: Minchan Kim <minchan.kim@gmail.com> Cc: Dave Jones <davej@redhat.com> Cc: Jan Kara <jack@suse.cz> Cc: Andy Isaacson <adi@hexapodia.org> Cc: Nai Xia <nai.xia@gmail.com> Cc: Johannes Weiner <jweiner@redhat.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
committed by
Linus Torvalds
parent
dcd6c92267
commit
6536e3123e
@ -10,6 +10,7 @@
|
|||||||
#include <linux/ioctl.h>
|
#include <linux/ioctl.h>
|
||||||
#include <linux/blk_types.h>
|
#include <linux/blk_types.h>
|
||||||
#include <linux/types.h>
|
#include <linux/types.h>
|
||||||
|
#include <linux/migrate_mode.h>
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* It's silly to have NR_OPEN bigger than NR_FILE, but you can change
|
* It's silly to have NR_OPEN bigger than NR_FILE, but you can change
|
||||||
@ -526,7 +527,6 @@ enum positive_aop_returns {
|
|||||||
struct page;
|
struct page;
|
||||||
struct address_space;
|
struct address_space;
|
||||||
struct writeback_control;
|
struct writeback_control;
|
||||||
enum migrate_mode;
|
|
||||||
|
|
||||||
struct iov_iter {
|
struct iov_iter {
|
||||||
const struct iovec *iov;
|
const struct iovec *iov;
|
||||||
|
@ -3,22 +3,10 @@
|
|||||||
|
|
||||||
#include <linux/mm.h>
|
#include <linux/mm.h>
|
||||||
#include <linux/mempolicy.h>
|
#include <linux/mempolicy.h>
|
||||||
|
#include <linux/migrate_mode.h>
|
||||||
|
|
||||||
typedef struct page *new_page_t(struct page *, unsigned long private, int **);
|
typedef struct page *new_page_t(struct page *, unsigned long private, int **);
|
||||||
|
|
||||||
/*
|
|
||||||
* MIGRATE_ASYNC means never block
|
|
||||||
* MIGRATE_SYNC_LIGHT in the current implementation means to allow blocking
|
|
||||||
* on most operations but not ->writepage as the potential stall time
|
|
||||||
* is too significant
|
|
||||||
* MIGRATE_SYNC will block when migrating pages
|
|
||||||
*/
|
|
||||||
enum migrate_mode {
|
|
||||||
MIGRATE_ASYNC,
|
|
||||||
MIGRATE_SYNC_LIGHT,
|
|
||||||
MIGRATE_SYNC,
|
|
||||||
};
|
|
||||||
|
|
||||||
#ifdef CONFIG_MIGRATION
|
#ifdef CONFIG_MIGRATION
|
||||||
#define PAGE_MIGRATION 1
|
#define PAGE_MIGRATION 1
|
||||||
|
|
||||||
|
16
include/linux/migrate_mode.h
Normal file
16
include/linux/migrate_mode.h
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
#ifndef MIGRATE_MODE_H_INCLUDED
|
||||||
|
#define MIGRATE_MODE_H_INCLUDED
|
||||||
|
/*
|
||||||
|
* MIGRATE_ASYNC means never block
|
||||||
|
* MIGRATE_SYNC_LIGHT in the current implementation means to allow blocking
|
||||||
|
* on most operations but not ->writepage as the potential stall time
|
||||||
|
* is too significant
|
||||||
|
* MIGRATE_SYNC will block when migrating pages
|
||||||
|
*/
|
||||||
|
enum migrate_mode {
|
||||||
|
MIGRATE_ASYNC,
|
||||||
|
MIGRATE_SYNC_LIGHT,
|
||||||
|
MIGRATE_SYNC,
|
||||||
|
};
|
||||||
|
|
||||||
|
#endif /* MIGRATE_MODE_H_INCLUDED */
|
Reference in New Issue
Block a user