Re: [PATCH] libata: fix non-uniform ports handling
From: Andrew Morton
Date: Fri Sep 15 2006 - 18:30:12 EST
On Sat, 16 Sep 2006 03:04:15 +0900
Tejun Heo <htejun@xxxxxxxxx> wrote:
> @@ -5269,11 +5269,19 @@ void ata_port_init(struct ata_port *ap,
> ap->host = host;
> ap->dev = ent->dev;
> ap->port_no = port_no;
> - ap->pio_mask = ent->pio_mask;
> - ap->mwdma_mask = ent->mwdma_mask;
> - ap->udma_mask = ent->udma_mask;
> - ap->flags |= ent->port_flags;
> - ap->ops = ent->port_ops;
> + if (port_no == 1 && ent->pinfo2) {
> + ap->pio_mask = ent->pinfo2->pio_mask;
> + ap->mwdma_mask = ent->pinfo2->mwdma_mask;
> + ap->udma_mask = ent->pinfo2->udma_mask;
> + ap->flags |= ent->pinfo2->flags;
> + ap->ops = ent->pinfo2->port_ops;
> + } else {
> + ap->pio_mask = ent->pio_mask;
> + ap->mwdma_mask = ent->mwdma_mask;
> + ap->udma_mask = ent->udma_mask;
> + ap->flags |= ent->port_flags;
> + ap->ops = ent->port_ops;
> + }
Same problem: the git-libata-all which I pulled 30 seconds ago
has:
ap->flags |= ent->port_flags | ent->_port_flags[port_no];
and not
ap->flags |= ent->port_flags;
which is what your patch expects.
Oh well, hopefully Jeff will sort it out.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/