The patch titled Build failure on ppc64 drivers/ata/pata_scc.c has been added to the -mm tree. Its filename is build-failure-on-ppc64-drivers-ata-pata_sccc.patch *** Remember to use Documentation/SubmitChecklist when testing your code *** See http://www.zip.com.au/~akpm/linux/patches/stuff/added-to-mm.txt to find out what to do about this ------------------------------------------------------ Subject: Build failure on ppc64 drivers/ata/pata_scc.c From: Satyam Sharma <satyam@xxxxxxxxxxxxx> Hi, On Thu, 20 Sep 2007, Alan Cox wrote: > > On Thu, 20 Sep 2007 14:13:15 +0100 > mel@xxxxxxxxx (Mel Gorman) wrote: > > > PPC64 building allmodconfig fails to compile drivers/ata/pata_scc.c . It > > doesn't show up on other arches because this driver is specific to the > > architecture. > > > > drivers/ata/pata_scc.c: In function `scc_bmdma_status' > > Its not been updated to match the libata core changes. Try something like > this. Whoever is maintaining it should also remove the prereset cable handling > code and use the proper cable detect method. It appears you forgot to fix scc_std_softreset() and one of its callsites in scc_bdma_stop(). A complete patch is attempted below -- please review. [PATCH -mm] pata_scc: Keep up with libata core API changes Little fixlets, that the build started erroring / warning about: drivers/ata/pata_scc.c: In function 'scc_bmdma_status': drivers/ata/pata_scc.c:734: error: structure has no member named 'active_tag' drivers/ata/pata_scc.c: In function 'scc_pata_prereset': drivers/ata/pata_scc.c:866: warning: passing arg 1 of 'ata_std_prereset' from incompatible pointer type drivers/ata/pata_scc.c: In function 'scc_error_handler': drivers/ata/pata_scc.c:908: warning: passing arg 2 of 'ata_bmdma_drive_eh' from incompatible pointer type drivers/ata/pata_scc.c:908: warning: passing arg 3 of 'ata_bmdma_drive_eh' from incompatible pointer type drivers/ata/pata_scc.c:908: warning: passing arg 5 of 'ata_bmdma_drive_eh' from incompatible pointer type make[2]: *** [drivers/ata/pata_scc.o] Error 1 Signed-off-by: Satyam Sharma <satyam@xxxxxxxxxxxxx> Cc: Alan Cox <alan@xxxxxxxxxx> Cc: Mel Gorman <mel@xxxxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> --- drivers/ata/pata_scc.c | 21 ++++++++++++--------- 1 files changed, 12 insertions(+), 9 deletions(-) diff -puN drivers/ata/pata_scc.c~build-failure-on-ppc64-drivers-ata-pata_sccc drivers/ata/pata_scc.c --- a/drivers/ata/pata_scc.c~build-failure-on-ppc64-drivers-ata-pata_sccc +++ a/drivers/ata/pata_scc.c @@ -594,16 +594,17 @@ static unsigned int scc_bus_softreset(st * Note: Original code is ata_std_softreset(). */ -static int scc_std_softreset (struct ata_port *ap, unsigned int *classes, - unsigned long deadline) +static int scc_std_softreset(struct ata_link *link, unsigned int *classes, + unsigned long deadline) { + struct ata_port *ap = link->ap; unsigned int slave_possible = ap->flags & ATA_FLAG_SLAVE_POSS; unsigned int devmask = 0, err_mask; u8 err; DPRINTK("ENTER\n"); - if (ata_link_offline(&ap->link)) { + if (ata_link_offline(link)) { classes[0] = ATA_DEV_NONE; goto out; } @@ -694,7 +695,7 @@ static void scc_bmdma_stop (struct ata_q printk(KERN_WARNING "%s: Internal Bus Error\n", DRV_NAME); out_be32(bmid_base + SCC_DMA_INTST, INTSTS_BMSINT); /* TBD: SW reset */ - scc_std_softreset(ap, &classes, deadline); + scc_std_softreset(&ap->link, &classes, deadline); continue; } @@ -733,7 +734,7 @@ static u8 scc_bmdma_status (struct ata_p void __iomem *mmio = ap->ioaddr.bmdma_addr; u8 host_stat = in_be32(mmio + SCC_DMA_STATUS); u32 int_status = in_be32(mmio + SCC_DMA_INTST); - struct ata_queued_cmd *qc = ata_qc_from_tag(ap, ap->active_tag); + struct ata_queued_cmd *qc = ata_qc_from_tag(ap, ap->link.active_tag); static int retry = 0; /* return if IOS_SS is cleared */ @@ -862,10 +863,10 @@ static void scc_bmdma_freeze (struct ata * @deadline: deadline jiffies for the operation */ -static int scc_pata_prereset(struct ata_port *ap, unsigned long deadline) +static int scc_pata_prereset(struct ata_link *link, unsigned long deadline) { - ap->cbl = ATA_CBL_PATA80; - return ata_std_prereset(ap, deadline); + link->ap->cbl = ATA_CBL_PATA80; + return ata_std_prereset(link, deadline); } /** @@ -876,8 +877,10 @@ static int scc_pata_prereset(struct ata_ * Note: Original code is ata_std_postreset(). */ -static void scc_std_postreset (struct ata_port *ap, unsigned int *classes) +static void scc_std_postreset(struct ata_link *link, unsigned int *classes) { + struct ata_port *ap = link->ap; + DPRINTK("ENTER\n"); /* is double-select really necessary? */ _ Patches currently in -mm which might be from satyam@xxxxxxxxxxxxx are cpufreq-mark-hotplug-notifier-callback-as-__cpuinit.patch cpufreq-implement-config_cpu_freq-stub-for.patch cpufreq_stats-misc-cpuinit-section-annotations.patch git-hwmon.patch ia64-tree-wide-misc-__cpuinitdata-init-exit.patch ia64-perfmon-remove-exit_pfm_fs.patch git-ieee1394.patch ehca_irq-misc-cpuinit-section-annotations-and-ifdef-cleanups.patch build-failure-on-ppc64-drivers-ata-pata_sccc.patch git-net.patch git-net-fix-spidernet-build.patch spider_net_ethtool-keep-up-with-recent-netdev-stats-changes.patch pasemi_mac-build-fix-after-recent-netdev-stats.patch git-s390.patch sched-use-show_regs-to-improve-__schedule_bug-output.patch git-scsi-misc.patch mpt-fusion-shut-up-uninitialized-variable.patch git-block.patch git-watchdog.patch intel_cacheinfo-misc-section-annotation-fixes.patch intel_cacheinfo-call-cache_add_dev-from-cache_sysfs_init.patch slub-slob-use-unlikely-for-kfreezero_or_null_ptr-check.patch softlockup-improve-debug-output-fix.patch argv_split-allow-argv_split-to-handle-null-pointer-in-argcp-parameter-gracefully.patch ufs-fix-sun-state-fix-mount-check-in-ufs_fill_super.patch i2o-fix-defined-but-not-used-build-warnings.patch i2o-fix-defined-but-not-used-build-warnings-fix.patch make-the-pr_-family-of-macros-in-kernelh-complete.patch unify-dma_bit_mask-definitions-v31.patch redefine-unregister_hotcpu_notifier-hotplug_cpu-stubs.patch x86-msr-driver-misc-cpuinit-annotations.patch i386-cpuid-misc-cpuinit-annotations.patch - To unsubscribe from this list: send the line "unsubscribe mm-commits" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html