hc
2024-11-01 2f529f9b558ca1c1bd74be7437a84e4711743404
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
/* SPDX-License-Identifier: GPL-2.0 */
#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
 * MIGRATE_SYNC_NO_COPY will block when migrating pages but will not copy pages
 *    with the CPU. Instead, page copy happens outside the migratepage()
 *    callback and is likely using a DMA engine. See migrate_vma() and HMM
 *    (mm/hmm.c) for users of this mode.
 */
enum migrate_mode {
   MIGRATE_ASYNC,
   MIGRATE_SYNC_LIGHT,
   MIGRATE_SYNC,
   MIGRATE_SYNC_NO_COPY,
};
 
#endif        /* MIGRATE_MODE_H_INCLUDED */