On Tue, 13 Jul 2010 10:16:39 +0900
Yusuke Goda <[email protected]> wrote:
> Hi Andrew
>
> Thank you for your comment.
>
> >> #define ack_mmc_irqs(host, i) \
> >> do { \
> >> - u32 mask;\
> >> - mask = sd_ctrl_read32((host), CTL_STATUS); \
> >> - mask &= ~((i) & TMIO_MASK_IRQ); \
> >> - sd_ctrl_write32((host), CTL_STATUS, mask); \
> >> + sd_ctrl_write32((host), CTL_STATUS, ~(i)); \
> >> } while (0)
> >
> > Can we have a better changelog please?
> >
> > What was wrong with the old code?
> >
> > How does the patch fix it?
> >
> > What are the user-visible runtime effects of the bug?
> >
> > (It looks like that was a pretty gross bug - how did it pass testing??)
> Example
> - CMD53(Single block read / Received data size : 64Byte)
>
> 1) Send CMD53
> 2) Receive "CMD53 response"
> 3) Call tmio_mmc_cmd_irq(host, status);
> -- original code ----------------------------------------------------
> #define ack_mmc_irqs(host, i) \
> do { \
> u32 mask;\
> mask = sd_ctrl_read32((host), CTL_STATUS); \
> < case 1 >
> mask &= ~((i) & TMIO_MASK_IRQ); \
> < case 2 >
> sd_ctrl_write32((host), CTL_STATUS, mask); \
> } while (0)
> ---------------------------------------------------------------------
>
> TMIO_STAT_RXRDY status will be cleared by "sd_ctrl_write32((host),
> CTL_STATUS, mask);"
> if TMIO_STAT_RXRDY becomes effective between "< case 1 >" and "< case 2 >".
>
> This causes the phenomenon that a TMIO_STAT_RXRDY interrupt does not occur.
> When received data are small, it rarely occurs.
>
OK..
But with both this patch and "tmio_mmc-revise-limit-on-data-size.patch"
the changelogs fail to describe the impact of the bug upon our users.
So when I sit here trying to work out whether the patches should be
applied to 2.6.35 and whether they should be backported into -stable, I
don't have enough information.
What are your thoughts on this?
--
To unsubscribe from this list: send the line "unsubscribe linux-mmc" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html