Skip to content

Commit 2170a0d

Browse files
davejiangdjbw
authored andcommitted
tools/testing/nvdimm: Retain security state after overwrite
Overwrite retains the security state after completion of operation. Fix nfit_test to reflect this so that the kernel can test the behavior it is more likely to see in practice. Fixes: 926f748 ("tools/testing/nvdimm: Add overwrite support for nfit_test") Signed-off-by: Dave Jiang <[email protected]> Signed-off-by: Dan Williams <[email protected]>
1 parent 9dc6488 commit 2170a0d

File tree

1 file changed

+4
-2
lines changed
  • tools/testing/nvdimm/test

1 file changed

+4
-2
lines changed

tools/testing/nvdimm/test/nfit.c

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -146,6 +146,7 @@ static int dimm_fail_cmd_code[ARRAY_SIZE(handle)];
146146
struct nfit_test_sec {
147147
u8 state;
148148
u8 ext_state;
149+
u8 old_state;
149150
u8 passphrase[32];
150151
u8 master_passphrase[32];
151152
u64 overwrite_end_time;
@@ -1100,7 +1101,7 @@ static int nd_intel_test_cmd_overwrite(struct nfit_test *t,
11001101
return 0;
11011102
}
11021103

1103-
memset(sec->passphrase, 0, ND_INTEL_PASSPHRASE_SIZE);
1104+
sec->old_state = sec->state;
11041105
sec->state = ND_INTEL_SEC_STATE_OVERWRITE;
11051106
dev_dbg(dev, "overwrite progressing.\n");
11061107
sec->overwrite_end_time = get_jiffies_64() + 5 * HZ;
@@ -1122,7 +1123,8 @@ static int nd_intel_test_cmd_query_overwrite(struct nfit_test *t,
11221123

11231124
if (time_is_before_jiffies64(sec->overwrite_end_time)) {
11241125
sec->overwrite_end_time = 0;
1125-
sec->state = 0;
1126+
sec->state = sec->old_state;
1127+
sec->old_state = 0;
11261128
sec->ext_state = ND_INTEL_SEC_ESTATE_ENABLED;
11271129
dev_dbg(dev, "overwrite is complete\n");
11281130
} else

0 commit comments

Comments
 (0)