test72: fix premature block size update
Updating the current block size before flushing the cache, which still contained blocks with the old block size, resulted in triggering an assert on position alignment.
This commit is contained in:
parent
fab582bdeb
commit
8c8e497d76
|
|
@ -274,6 +274,7 @@ int vm_clear_cache(dev_t dev)
|
|||
int
|
||||
main(int argc, char *argv[])
|
||||
{
|
||||
size_t newblocksize;
|
||||
int wss, cs, n = 0, p;
|
||||
|
||||
#define ITER 3
|
||||
|
|
@ -286,8 +287,10 @@ main(int argc, char *argv[])
|
|||
/* Can the cache handle differently sized blocks? */
|
||||
|
||||
for(p = 1; p <= 3; p++) {
|
||||
curblocksize = PAGE_SIZE*p;
|
||||
lmfs_set_blocksize(curblocksize, MYMAJOR);
|
||||
/* Do not update curblocksize until the cache is flushed. */
|
||||
newblocksize = PAGE_SIZE*p;
|
||||
lmfs_set_blocksize(newblocksize, MYMAJOR);
|
||||
curblocksize = newblocksize; /* now it's safe to update */
|
||||
lmfs_buf_pool(BLOCKS);
|
||||
if(dotest(curblocksize, BLOCKS, ITER)) e(n);
|
||||
n++;
|
||||
|
|
@ -299,8 +302,8 @@ main(int argc, char *argv[])
|
|||
for(wss = 2; wss <= 3; wss++) {
|
||||
int wsblocks = 10*wss*wss*wss*wss*wss;
|
||||
for(cs = wsblocks/4; cs <= wsblocks*3; cs *= 1.5) {
|
||||
curblocksize = PAGE_SIZE;
|
||||
lmfs_set_blocksize(curblocksize, MYMAJOR);
|
||||
lmfs_set_blocksize(PAGE_SIZE, MYMAJOR);
|
||||
curblocksize = PAGE_SIZE; /* same as above */
|
||||
lmfs_buf_pool(cs);
|
||||
if(dotest(curblocksize, wsblocks, ITER)) e(n);
|
||||
n++;
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user