Re: BIO request larger than our storage device supports in linux kernel 4.x

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 03/08/2017 11:08 AM, Umesh Patel wrote:
> 
> Yes. This is non-open driver for our Flash based PCI drive for enterprise storage solution.

Please don't top post.

> Some snippet of queue related code is below
> 
> struct request_queue *queue;
> 
> blk_queue_max_hw_sectors(dev->osdev.queue, (dev->aggr_max_size >> KERNEL_SECTOR_SHIFT));
> blk_queue_max_segments(dev->osdev.queue, BLK_MAX_SEGMENTS);
> blk_queue_bounce_limit(dev->osdev.queue, BLK_BOUNCE_ANY);
> blk_queue_logical_block_size(dev->osdev.queue, dev->hardsect_size);
> blk_queue_physical_block_size(dev->osdev.queue, dev->hardsect_size);
> 
> dev->osdev.queue = blk_alloc_queue(GFP_KERNEL);
> 
> blk_queue_make_request(dev->osdev.queue, fmm_bdev_make_request_wrapper);
> 
> Here queue is part of our internal structure struct fmm_bdev *dev

You are doing it wrong, you should be writing this as a blk-mq driver.
Not only would that fix your issue, it would also solve a host of other
issues that I'm sure your driver has since it hasn't even been
reviewed.

Generally, I have very little interest in providing support for non
open drivers. Scratch that, no interest.

-- 
Jens Axboe




[Index of Archives]     [Linux RAID]     [Linux SCSI]     [Linux ATA RAID]     [IDE]     [Linux Wireless]     [Linux Kernel]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Device Mapper]

  Powered by Linux