|
@@ -407,6 +407,8 @@ static int pblk_core_init(struct pblk *pblk)
|
|
|
pblk->min_write_pgs = geo->ws_opt;
|
|
|
max_write_ppas = pblk->min_write_pgs * geo->all_luns;
|
|
|
pblk->max_write_pgs = min_t(int, max_write_ppas, NVM_MAX_VLBA);
|
|
|
+ pblk->max_write_pgs = min_t(int, pblk->max_write_pgs,
|
|
|
+ queue_max_hw_sectors(dev->q) / (geo->csecs >> SECTOR_SHIFT));
|
|
|
pblk_set_sec_per_write(pblk, pblk->min_write_pgs);
|
|
|
|
|
|
pblk->pad_dist = kcalloc(pblk->min_write_pgs - 1, sizeof(atomic64_t),
|