lightnvm: pblk: decouple read/erase mempools
Since read and erase paths offer different guarantees for inflight I/Os, separate the mempools to set the right min_nr for each on creation. Reported-by: Jens Axboe <axboe@kernel.dk> Signed-off-by: Javier González <javier@cnexlabs.com> Signed-off-by: Matias Bjørling <m@bjorling.me> Signed-off-by: Jens Axboe <axboe@kernel.dk>
This commit is contained in:

committed by
Jens Axboe

szülő
b84ae4a8b8
commit
0d880398cb
@@ -41,7 +41,6 @@
|
||||
#define PBLK_MAX_REQ_ADDRS_PW (6)
|
||||
|
||||
#define PBLK_META_POOL_SIZE (128)
|
||||
#define PBLK_READ_REQ_POOL_SIZE (1024)
|
||||
|
||||
#define PBLK_NR_CLOSE_JOBS (4)
|
||||
|
||||
@@ -60,6 +59,7 @@
|
||||
|
||||
#define ERASE 2 /* READ = 0, WRITE = 1 */
|
||||
|
||||
/* Static pool sizes */
|
||||
#define PBLK_GEN_WS_POOL_SIZE (2)
|
||||
|
||||
enum {
|
||||
@@ -624,8 +624,9 @@ struct pblk {
|
||||
mempool_t *page_bio_pool;
|
||||
mempool_t *gen_ws_pool;
|
||||
mempool_t *rec_pool;
|
||||
mempool_t *g_rq_pool;
|
||||
mempool_t *r_rq_pool;
|
||||
mempool_t *w_rq_pool;
|
||||
mempool_t *e_rq_pool;
|
||||
mempool_t *line_meta_pool;
|
||||
|
||||
struct workqueue_struct *close_wq;
|
||||
|
Reference in New Issue
Block a user