Re: [nForce4] - Repeatable issues with nForce 4

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

 



On Mon, Dec 1, 2014 at 4:37 PM, Jacobo Pantoja <jacobopantoja@xxxxxxxxx> wrote:
>> Looks like it's doing a hardreset now (apparently successfully).
>> However the reason it still does a softreset anyway is this at the end
>> of nv_hardreset:
>>
>>         /* device signature acquisition is unreliable */
>>         return -EAGAIN;
>>
>> Try changing that to:
>>
>>         return 0;
>>
>> and see if that changes the behavior. That should make it skip the
>> soft-reset. Whether or not the device works or not after that, or if
>> it still locks up at some later point, we'll see.
>
> Ok, after changing -EAGAIN to 0, I cannot boot it completely (it
> cannot find the rootfs). Every 10s aprox. it stops, but after some 10
> tries, it gives up with a panic.
>
> I have made pictures but not processed yet (I will soon, but I doubt
> they are going to be useful).
>
> I guess that the only useful stuff I can do is booting from a USB.
> With my MoBo it is difficult, I will have to play with GRUB.
>
> I will be back.

OK, well obviously doing a hardreset unconditionally doesn't work
well. How about changing the code in that function to this -
basically, only skip hardreset for initial probing, otherwise use
hardreset and skip follow-up softreset:

    if (!(link->ap->pflags & ATA_PFLAG_LOADING))
        return sata_link_hardreset(link, sata_deb_timing_hotplug, deadline,
                    NULL, NULL);
    else {
        const unsigned long *timing = sata_ehc_deb_timing(ehc);
        int rc;

        if (!(ehc->i.flags & ATA_EHI_QUIET))
            ata_link_info(link,
                      "nv: skipping hardreset on occupied port\n");

        /* make sure the link is online */
        rc = sata_link_resume(link, timing, deadline);
        /* whine about phy resume failure but proceed */
        if (rc && rc != -EOPNOTSUPP)
            ata_link_warn(link, "failed to resume link (errno=%d)\n",
                      rc);
    }

    /* device signature acquisition is unreliable */
    return -EAGAIN;
--
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