TESTS: UNMAP/WRITESAME10/16 Check LBPRZ before we read the unmapped blocks and verify they are blank.
This commit is contained in:
@@ -1,4 +1,3 @@
|
|||||||
|
|
||||||
/*
|
/*
|
||||||
Copyright (C) 2013 Ronnie Sahlberg <ronniesahlberg@gmail.com>
|
Copyright (C) 2013 Ronnie Sahlberg <ronniesahlberg@gmail.com>
|
||||||
|
|
||||||
|
|||||||
@@ -54,14 +54,23 @@ test_writesame10_unmap(void)
|
|||||||
0, 1, 0, 0, NULL);
|
0, 1, 0, 0, NULL);
|
||||||
CU_ASSERT_EQUAL(ret, 0);
|
CU_ASSERT_EQUAL(ret, 0);
|
||||||
|
|
||||||
logging(LOG_VERBOSE, "Read %d blocks and verify they are now zero", i);
|
if (rc16->lbprz) {
|
||||||
ret = read10(iscsic, tgt_lun, 0,
|
logging(LOG_VERBOSE, "LBPRZ is set. Read the unmapped "
|
||||||
i * block_size, block_size,
|
"blocks back and verify they are all zero");
|
||||||
0, 0, 0, 0, 0, buf);
|
|
||||||
for (j = 0; j < block_size * i; j++) {
|
logging(LOG_VERBOSE, "Read %d blocks and verify they "
|
||||||
if (buf[j] != 0) {
|
"are now zero", i);
|
||||||
CU_ASSERT_EQUAL(buf[j], 0);
|
ret = read10(iscsic, tgt_lun, 0,
|
||||||
|
i * block_size, block_size,
|
||||||
|
0, 0, 0, 0, 0, buf);
|
||||||
|
for (j = 0; j < block_size * i; j++) {
|
||||||
|
if (buf[j] != 0) {
|
||||||
|
CU_ASSERT_EQUAL(buf[j], 0);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
} else {
|
||||||
|
logging(LOG_VERBOSE, "LBPRZ is clear. Skip the read "
|
||||||
|
"and verify zero test");
|
||||||
}
|
}
|
||||||
free(buf);
|
free(buf);
|
||||||
}
|
}
|
||||||
@@ -84,14 +93,23 @@ test_writesame10_unmap(void)
|
|||||||
0, 1, 0, 0, buf);
|
0, 1, 0, 0, buf);
|
||||||
CU_ASSERT_EQUAL(ret, 0);
|
CU_ASSERT_EQUAL(ret, 0);
|
||||||
|
|
||||||
logging(LOG_VERBOSE, "Read %d blocks and verify they are now zero", i);
|
if (rc16->lbprz) {
|
||||||
ret = read10(iscsic, tgt_lun, num_blocks - i,
|
logging(LOG_VERBOSE, "LBPRZ is set. Read the unmapped "
|
||||||
i * block_size, block_size,
|
"blocks back and verify they are all zero");
|
||||||
0, 0, 0, 0, 0, buf);
|
|
||||||
for (j = 0; j < block_size * i; j++) {
|
logging(LOG_VERBOSE, "Read %d blocks and verify they "
|
||||||
if (buf[j] != 0) {
|
"are now zero", i);
|
||||||
CU_ASSERT_EQUAL(buf[j], 0);
|
ret = read10(iscsic, tgt_lun, num_blocks - i,
|
||||||
|
i * block_size, block_size,
|
||||||
|
0, 0, 0, 0, 0, buf);
|
||||||
|
for (j = 0; j < block_size * i; j++) {
|
||||||
|
if (buf[j] != 0) {
|
||||||
|
CU_ASSERT_EQUAL(buf[j], 0);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
} else {
|
||||||
|
logging(LOG_VERBOSE, "LBPRZ is clear. Skip the read "
|
||||||
|
"and verify zero test");
|
||||||
}
|
}
|
||||||
free(buf);
|
free(buf);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,4 +1,3 @@
|
|||||||
|
|
||||||
/*
|
/*
|
||||||
Copyright (C) 2013 Ronnie Sahlberg <ronniesahlberg@gmail.com>
|
Copyright (C) 2013 Ronnie Sahlberg <ronniesahlberg@gmail.com>
|
||||||
|
|
||||||
|
|||||||
@@ -54,14 +54,23 @@ test_writesame10_unmap_until_end(void)
|
|||||||
0, 1, 0, 0, NULL);
|
0, 1, 0, 0, NULL);
|
||||||
CU_ASSERT_EQUAL(ret, 0);
|
CU_ASSERT_EQUAL(ret, 0);
|
||||||
|
|
||||||
logging(LOG_VERBOSE, "Read %d blocks and verify they are now zero", i);
|
if (rc16->lbprz) {
|
||||||
ret = read10(iscsic, tgt_lun, num_blocks - i,
|
logging(LOG_VERBOSE, "LBPRZ is set. Read the unmapped "
|
||||||
i * block_size, block_size,
|
"blocks back and verify they are all zero");
|
||||||
0, 0, 0, 0, 0, buf);
|
|
||||||
for (j = 0; j < block_size * i; j++) {
|
logging(LOG_VERBOSE, "Read %d blocks and verify they "
|
||||||
if (buf[j] != 0) {
|
"are now zero", i);
|
||||||
CU_ASSERT_EQUAL(buf[j], 0);
|
ret = read10(iscsic, tgt_lun, num_blocks - i,
|
||||||
|
i * block_size, block_size,
|
||||||
|
0, 0, 0, 0, 0, buf);
|
||||||
|
for (j = 0; j < block_size * i; j++) {
|
||||||
|
if (buf[j] != 0) {
|
||||||
|
CU_ASSERT_EQUAL(buf[j], 0);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
} else {
|
||||||
|
logging(LOG_VERBOSE, "LBPRZ is clear. Skip the read "
|
||||||
|
"and verify zero test");
|
||||||
}
|
}
|
||||||
free(buf);
|
free(buf);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -59,14 +59,22 @@ test_writesame16_unmap(void)
|
|||||||
}
|
}
|
||||||
CU_ASSERT_EQUAL(ret, 0);
|
CU_ASSERT_EQUAL(ret, 0);
|
||||||
|
|
||||||
logging(LOG_VERBOSE, "Read %d blocks and verify they are now zero", i);
|
if (rc16->lbprz) {
|
||||||
ret = read16(iscsic, tgt_lun, 0,
|
logging(LOG_VERBOSE, "LBPRZ is set. Read the unmapped "
|
||||||
i * block_size, block_size,
|
"blocks back and verify they are all zero");
|
||||||
0, 0, 0, 0, 0, buf);
|
logging(LOG_VERBOSE, "Read %d blocks and verify they "
|
||||||
for (j = 0; j < block_size * i; j++) {
|
"are now zero", i);
|
||||||
if (buf[j] != 0) {
|
ret = read16(iscsic, tgt_lun, 0,
|
||||||
CU_ASSERT_EQUAL(buf[j], 0);
|
i * block_size, block_size,
|
||||||
|
0, 0, 0, 0, 0, buf);
|
||||||
|
for (j = 0; j < block_size * i; j++) {
|
||||||
|
if (buf[j] != 0) {
|
||||||
|
CU_ASSERT_EQUAL(buf[j], 0);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
} else {
|
||||||
|
logging(LOG_VERBOSE, "LBPRZ is clear. Skip the read "
|
||||||
|
"and verify zero test");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -86,14 +94,22 @@ test_writesame16_unmap(void)
|
|||||||
0, 1, 0, 0, buf);
|
0, 1, 0, 0, buf);
|
||||||
CU_ASSERT_EQUAL(ret, 0);
|
CU_ASSERT_EQUAL(ret, 0);
|
||||||
|
|
||||||
logging(LOG_VERBOSE, "Read %d blocks and verify they are now zero", i);
|
if (rc16->lbprz) {
|
||||||
ret = read16(iscsic, tgt_lun, num_blocks - i,
|
logging(LOG_VERBOSE, "LBPRZ is set. Read the unmapped "
|
||||||
i * block_size, block_size,
|
"blocks back and verify they are all zero");
|
||||||
0, 0, 0, 0, 0, buf);
|
logging(LOG_VERBOSE, "Read %d blocks and verify they "
|
||||||
for (j = 0; j < block_size * i; j++) {
|
"are now zero", i);
|
||||||
if (buf[j] != 0) {
|
ret = read16(iscsic, tgt_lun, num_blocks - i,
|
||||||
CU_ASSERT_EQUAL(buf[j], 0);
|
i * block_size, block_size,
|
||||||
|
0, 0, 0, 0, 0, buf);
|
||||||
|
for (j = 0; j < block_size * i; j++) {
|
||||||
|
if (buf[j] != 0) {
|
||||||
|
CU_ASSERT_EQUAL(buf[j], 0);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
} else {
|
||||||
|
logging(LOG_VERBOSE, "LBPRZ is clear. Skip the read "
|
||||||
|
"and verify zero test");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -58,14 +58,23 @@ test_writesame16_unmap_until_end(void)
|
|||||||
}
|
}
|
||||||
CU_ASSERT_EQUAL(ret, 0);
|
CU_ASSERT_EQUAL(ret, 0);
|
||||||
|
|
||||||
logging(LOG_VERBOSE, "Read %d blocks and verify they are now zero", i);
|
if (rc16->lbprz) {
|
||||||
ret = read16(iscsic, tgt_lun, num_blocks - i,
|
logging(LOG_VERBOSE, "LBPRZ is set. Read the unmapped "
|
||||||
i * block_size, block_size,
|
"blocks back and verify they are all zero");
|
||||||
0, 0, 0, 0, 0, buf);
|
|
||||||
for (j = 0; j < block_size * i; j++) {
|
logging(LOG_VERBOSE, "Read %d blocks and verify they "
|
||||||
if (buf[j] != 0) {
|
"are now zero", i);
|
||||||
CU_ASSERT_EQUAL(buf[j], 0);
|
ret = read16(iscsic, tgt_lun, num_blocks - i,
|
||||||
|
i * block_size, block_size,
|
||||||
|
0, 0, 0, 0, 0, buf);
|
||||||
|
for (j = 0; j < block_size * i; j++) {
|
||||||
|
if (buf[j] != 0) {
|
||||||
|
CU_ASSERT_EQUAL(buf[j], 0);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
} else {
|
||||||
|
logging(LOG_VERBOSE, "LBPRZ is clear. Skip the read "
|
||||||
|
"and verify zero test");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user