Thread (4 messages) 4 messages, 3 authors, 2012-05-08

Re: [RFC]md: using GFP_NOIO to allocate bio for flush request

From: Shaohua Li <shli@kernel.org>
Date: 2012-05-08 10:18:00

On Mon, Apr 16, 2012 at 01:32:06PM +0800, Shaohua Li wrote:
flush request is issued in transaction commit code path usually, so
looks using
GFP_KERNEL to allocate memory for flush request bio falls into the classic
deadlock issue. dm already gets it right.
ping!

quoted hunk ↗ jump to hunk
Signed-off-by: Shaohua Li <redacted>
---
 drivers/md/md.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Index: linux/drivers/md/md.c
===================================================================
--- linux.orig/drivers/md/md.c	2012-04-13 10:03:58.395497650 +0800
+++ linux/drivers/md/md.c	2012-04-13 10:04:37.445497882 +0800
@@ -450,7 +450,7 @@ static void submit_flushes(struct work_s
 			atomic_inc(&rdev->nr_pending);
 			atomic_inc(&rdev->nr_pending);
 			rcu_read_unlock();
-			bi = bio_alloc_mddev(GFP_KERNEL, 0, mddev);
+			bi = bio_alloc_mddev(GFP_NOIO, 0, mddev);
 			bi->bi_end_io = md_end_flush;
 			bi->bi_private = rdev;
 			bi->bi_bdev = rdev->bdev;
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help