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-ide" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html