Add no flush internal suspend/resume flag.

This commit is contained in:
Ondrej Kozina
2019-03-14 15:28:08 +01:00
committed by Milan Broz
parent ea4b586c77
commit 379016fd78
2 changed files with 8 additions and 0 deletions

View File

@@ -911,6 +911,10 @@ static int _dm_simple(int task, const char *name, uint32_t dmflags)
(dmflags & DM_SUSPEND_SKIP_LOCKFS) && !dm_task_skip_lockfs(dmt))
goto out;
if (task == DM_DEVICE_SUSPEND &&
(dmflags & DM_SUSPEND_NOFLUSH) && !dm_task_no_flush(dmt))
goto out;
r = dm_task_run(dmt);
out:
dm_task_destroy(dmt);
@@ -1284,6 +1288,9 @@ static int _dm_resume_device(const char *name, uint32_t dmflags)
if ((dmflags & DM_SUSPEND_SKIP_LOCKFS) && !dm_task_skip_lockfs(dmt))
goto out;
if ((dmflags & DM_SUSPEND_NOFLUSH) && !dm_task_no_flush(dmt))
goto out;
if (_dm_use_udev() && !_dm_task_set_cookie(dmt, &cookie, udev_flags))
goto out;

View File

@@ -37,6 +37,7 @@ struct crypt_params_integrity;
#define DM_RESUME_PRIVATE (1 << 4) /* CRYPT_ACTIVATE_PRIVATE */
#define DM_SUSPEND_SKIP_LOCKFS (1 << 5)
#define DM_SUSPEND_WIPE_KEY (1 << 6)
#define DM_SUSPEND_NOFLUSH (1 << 7)
static inline uint32_t act2dmflags(uint32_t act_flags)
{