attempt to access beyond end of device

From: Jan Niehusmann (jan@gondor.com)
Date: Thu Dec 07 2000 - 10:56:59 EST


ll_rw_blk.c: generic_make_request() contains the following code:

if (maxsector < count || maxsector - count < sector) {
        bh->b_state &= (1 << BH_Lock) | (1 << BH_Mapped);
        if (blk_size[major][MINOR(bh->b_rdev)]) {

                /* This may well happen - the kernel calls bread()
                   without checking the size of the device, e.g.,
                   when mounting a device. */
                printk(KERN_INFO
                       "attempt to access beyond end of device\n");
                printk(KERN_INFO "%s: rw=%d, want=%d, limit=%d\n",
                       kdevname(bh->b_rdev), rw,
                       (sector + count)>>1,
                       blk_size[major][MINOR(bh->b_rdev)]);
        }
        bh->b_end_io(bh, 0);
        return;
}

That means that if blk_size[major][MINOR(bh->b_rdev)] == 0, the request
is canceled but no message is printed. Shouldn't there be a warning message?

Jan

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Thu Dec 07 2000 - 21:00:17 EST