Re: [PATCH] raid5: panic() on dma_wait_for_async_tx() error
From: NeilBrown <hidden>
Date: 2012-11-19 01:06:51
Also in:
lkml
Hi Dan, could you comment on this please? Would it make sense to arrange for errors to propagate up? Or should we arrange to do a software-fallback in the dma engine is a problem? What sort of things can cause error here anyway? Thanks, NeilBrown On Thu, 08 Nov 2012 12:20:55 +0100 Bartlomiej Zolnierkiewicz [off-list ref] wrote:
On Thursday 08 November 2012 12:15:26 Alan Cox wrote:quoted
On Thu, 08 Nov 2012 11:06:29 +0100 Bartlomiej Zolnierkiewicz [off-list ref] wrote:quoted
From: Bartlomiej Zolnierkiewicz <redacted> Subject: [PATCH] raid5: panic() on dma_wait_for_async_tx() error There is not much we can do on dma_wait_for_async_tx() error so just panic() for now. Cc: Neil Brown <redacted> Cc: Vinod Koul <redacted> Cc: Dan Williams <redacted> Cc: Tomasz Figa <redacted> Signed-off-by: Bartlomiej Zolnierkiewicz <redacted> Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com> --- drivers/md/raid5.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) Index: b/drivers/md/raid5.c ===================================================================--- a/drivers/md/raid5.c 2012-11-07 16:25:19.480876012 +0100 +++ b/drivers/md/raid5.c 2012-11-07 16:27:46.244875992 +0100@@ -3223,7 +3223,9 @@ static void handle_stripe_expansion(stru /* done submitting copies, wait for them to complete */ if (tx) { async_tx_ack(tx); - dma_wait_for_async_tx(tx); + if (dma_wait_for_async_tx(tx) != DMA_SUCCESS) + panic("%s: DMA error waiting for transaction\n", + __func__);Thats a really horrible place to panic.Still it seems better thing to do than silently ignoring errors and trying to continue operations with inconsistent data. Unfortunately higher-layers don't support error conditions and fixing them seems to be non-trivial task. Best regards, -- Bartlomiej Zolnierkiewicz Samsung Poland R&D Center -- To unsubscribe from this list: send the line "unsubscribe linux-raid" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Attachments
- signature.asc [application/pgp-signature] 828 bytes