Re: sata_inic162x driver for 2.6.19 timeouts etc

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

 



--- Tejun Heo <htejun@xxxxxxxxx> wrote:

> The driver is seriously broken regarding LBA48 support.  The timeout
> goes away if max_sectors is decreased to ATA_MAX_SECTORS - 1, doh.

Tejun,

I should have commented on this earlier.  I still get occasional timeouts
regardless of the max_sectors settings.  Yes, it's much much lower with
some settings vs others, but they're still there.

I was just messing around and did this.  I still got the occasional timeouts.

#define BOBSEGS 64
static int inic_slave_config(struct scsi_device *sdev)
{
        /* This controller is braindamaged.  dma_boundary is 0xffff
         * like others but it will lock up the whole machine HARD if
         * 65536 byte PRD entry is fed.  Reduce maximum segment size.
         */
        struct ata_port *ap = ata_shost_to_port(sdev->host);
        ata_sas_slave_configure(sdev,ap);
        blk_queue_max_phys_segments(sdev->request_queue, BOBSEGS);
        blk_queue_max_hw_segments(sdev->request_queue, BOBSEGS);
        blk_queue_max_sectors(sdev->request_queue, BOBSEGS);
        blk_queue_max_segment_size(sdev->request_queue, BOBSEGS*512);
        return 0;
}


static struct scsi_host_template inic_sht = {
        .sg_tablesize           = BOBSEGS,
...

static void inic_dev_config(struct ata_port *ap, struct ata_device *dev)
{
        /* inic can only handle upto LBA28 max sectors */
        dev->max_sectors = BOBSEGS;


Sorry this isn't in diff format, but I think you can see what I did,
nonetheless.
Eventually, maybe I'll learn enough about something to be able to contribute.

Bob
-
To unsubscribe from this list: send the line "unsubscribe linux-ide" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Filesystems]     [Linux SCSI]     [Linux RAID]     [Git]     [Kernel Newbies]     [Linux Newbie]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Samba]     [Device Mapper]

  Powered by Linux