lkml.org 
[lkml]   [2007]   [Feb]   [24]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    SubjectRe: SATA ahci Bug in 2.6.19.x
    Manuel Metz wrote:
    > Tejun Heo wrote:
    >> Does it work if you give 'irqpoll' kernel parameter?
    >>
    >
    > Yes this works with "irqpoll". But as you can see in the attached dmesg
    > output, now I get a bunch of APIC errors ... ?

    Manuel, Stefan, please try the attached patch over 2.6.20 and report the
    result.

    --
    tejun
    diff --git a/drivers/ata/ahci.c b/drivers/ata/ahci.c
    index 48616c6..882b205 100644
    --- a/drivers/ata/ahci.c
    +++ b/drivers/ata/ahci.c
    @@ -209,6 +209,10 @@ struct ahci_port_priv {
    unsigned int ncq_saw_dmas:1;
    };

    +static int msi;
    +module_param(msi, int, 0444);
    +MODULE_PARM_DESC(msi, "Enable use of PCI MSI (0=off, 1=on)");
    +
    static u32 ahci_scr_read (struct ata_port *ap, unsigned int sc_reg);
    static void ahci_scr_write (struct ata_port *ap, unsigned int sc_reg, u32 val);
    static int ahci_init_one (struct pci_dev *pdev, const struct pci_device_id *ent);
    @@ -1706,11 +1710,13 @@ static int ahci_init_one (struct pci_dev *pdev, const struct pci_device_id *ent)
    goto err_out;
    }

    - if (pci_enable_msi(pdev) == 0)
    - have_msi = 1;
    - else {
    - pci_intx(pdev, 1);
    - have_msi = 0;
    + if (msi) {
    + if (pci_enable_msi(pdev) == 0)
    + have_msi = 1;
    + else {
    + pci_intx(pdev, 1);
    + have_msi = 0;
    + }
    }

    probe_ent = kmalloc(sizeof(*probe_ent), GFP_KERNEL);
    \
     
     \ /
      Last update: 2007-02-24 07:27    [W:9.469 / U:0.316 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site