@@ -165,7 +165,7 @@ static int nsblk_do_bvec(struct nd_namespace_blk *nsblk,
165
165
static blk_qc_t nd_blk_make_request (struct request_queue * q , struct bio * bio )
166
166
{
167
167
struct bio_integrity_payload * bip ;
168
- struct nd_namespace_blk * nsblk ;
168
+ struct nd_namespace_blk * nsblk = bio -> bi_disk -> private_data ;
169
169
struct bvec_iter iter ;
170
170
unsigned long start ;
171
171
struct bio_vec bvec ;
@@ -176,7 +176,6 @@ static blk_qc_t nd_blk_make_request(struct request_queue *q, struct bio *bio)
176
176
return BLK_QC_T_NONE ;
177
177
178
178
bip = bio_integrity (bio );
179
- nsblk = q -> queuedata ;
180
179
rw = bio_data_dir (bio );
181
180
do_acct = nd_iostat_start (bio , & start );
182
181
bio_for_each_segment (bvec , bio , iter ) {
@@ -258,7 +257,6 @@ static int nsblk_attach_disk(struct nd_namespace_blk *nsblk)
258
257
blk_queue_max_hw_sectors (q , UINT_MAX );
259
258
blk_queue_logical_block_size (q , nsblk_sector_size (nsblk ));
260
259
blk_queue_flag_set (QUEUE_FLAG_NONROT , q );
261
- q -> queuedata = nsblk ;
262
260
263
261
disk = alloc_disk (0 );
264
262
if (!disk )
@@ -268,6 +266,7 @@ static int nsblk_attach_disk(struct nd_namespace_blk *nsblk)
268
266
disk -> fops = & nd_blk_fops ;
269
267
disk -> queue = q ;
270
268
disk -> flags = GENHD_FL_EXT_DEVT ;
269
+ disk -> private_data = nsblk ;
271
270
nvdimm_namespace_disk_name (& nsblk -> common , disk -> disk_name );
272
271
273
272
if (devm_add_action_or_reset (dev , nd_blk_release_disk , disk ))
0 commit comments