Re: PATCH: Fix broken PIO with libata

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

 



Alan Cox wrote:
> #2	The core sets ATA_DFLAG_PIO to indicate PIO commands should be used
> on this channel. This same information is available in dev->dma_mode but
> for some reason we get two sources of the info. The ATA_DFLAG_PIO is set
> once during setup and then cleared but not re-computed by the revalidate
> function. This causes DMA commands to be issued when PIO would be and
> usually an Oops or hang

Hmmm... I tried to fix this problem in the following commit.  With it,
ATA_DFLAG_PIO isn't cleared over ata_dev_configure().  Only
ata_dev_set_mode() is allowed to diddle with it and does about the same
thing as your patch does.

diff-tree ea1dd4e13010eb9dd5ffb4bfabbb472bc238bebb (from
198e0fed9e59461fc1890dd
Author: Tejun Heo <[email protected]>
Date:   Sun Apr 2 18:51:53 2006 +0900

    [PATCH] libata: clear only affected flags during ata_dev_configure()

    ata_dev_configure() should not clear dynamic device flags determined
    elsewhere.  Lower eight bits are reserved for feature flags, define
    ATA_DFLAG_CFG_MASK and clear only those bits before configuring
    device.  Without this patch, ATA_DFLAG_PIO gets turned off during
    revalidation making PIO mode unuseable.

    Signed-off-by: Tejun Heo <[email protected]>
    Signed-off-by: Jeff Garzik <[email protected]>

> Also contains a related bracketing fix

Is this agreed upon?  I tend to omit almost all unnecessary (by operator
precedence) parenthesis, so in new EH and all other stuff, the "a && b &
c" sort of lines are abundant.  If this is something that's agreed upon,
I can do a clean sweep over those.

-- 
tejun
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux