[Lustre-discuss] blk_rq_check_limits errors

Bernd Schubert bernd.schubert at fastmail.fm
Thu Sep 2 14:17:02 PDT 2010


On Thursday, September 02, 2010, Frank Heckes wrote:
> Hi all,
> 
> for some of our OSSes a massive amount of errors like:
> 
> Sep  2 20:28:15 jf61o02 kernel: blk_rq_check_limits: over max size
> limit.
> 
> appearing in /var/log/messages (and dmesg). Does anyone have got a clue
> how-to get of the root cause? Many thanks in advance.

linux/block/blk-core.c

int blk_rq_check_limits(struct request_queue *q, struct request *rq)
{
        if (rq->cmd_flags & REQ_DISCARD)
                return 0;

        if (blk_rq_sectors(rq) > queue_max_sectors(q) ||
            blk_rq_bytes(rq) > queue_max_hw_sectors(q) << 9) {
                printk(KERN_ERR "%s: over max size limit.\n", __func__);
                return -EIO;
        }


I haven't seen that before, but if I should guess, I would guess that dm-* has 
a larger queue than your underlying block device. If that is with your DDN 
storage, can you verify if all those devices are have max_sec_kb tuned to 
maximum?

Also, does that come up with 1.8.4 only? (I have SG_ALL in my mind which was 
increased from 255 to 256, which might not be supported by all scsi host 
adapters).


Cheers,
Bernd 



More information about the lustre-discuss mailing list