All of lore.kernel.org
 help / color / mirror / Atom feed
From: Neil Brown <neilb@suse.de>
To: Jens Axboe <jens.axboe@oracle.com>
Cc: Stephen Rothwell <sfr@canb.auug.org.au>,
	linux-next@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: linux-next: block tree build failure
Date: Fri, 26 Jun 2009 15:49:39 +1000	[thread overview]
Message-ID: <19012.24947.650584.93908@notabene.brown> (raw)
In-Reply-To: message from Jens Axboe on Friday June 26

On Friday June 26, jens.axboe@oracle.com wrote:
> On Fri, Jun 26 2009, NeilBrown wrote:
> > On Fri, June 26, 2009 12:53 pm, Stephen Rothwell wrote:
> > > Hi Jens,
> > >
> > > Today's linux-next build (powerpc ppc64_defconfig) failed like this:
> > >
> > > block/blk-core.c: In function '__make_request':
> > > block/blk-core.c:1179: error: expected ';' before 'return'
> > >
> > > Caused by commit 6cf2a6c8d01514e86a8d38e4eeed402378b635dc ("Restore
> > > barrier support for md and probably other virtual devices") which I have
> > > reverted for today.
> > 
> > Arg, that's my fault - sorry.
> > 
> > +               bio_endio(bio, -EOPNOTSUPP)
> > +                       return 0;
> > 
> > should of course be
> > 
> > +               bio_endio(bio, -EOPNOTSUPP);
> > +               return 0;
> 
> I was certain I ran it through a compile cycle, sorry about that
> Stephen. And Neil sending uncompiled patches, very uncool. Did you even
> test it? I've pulled it for now.

I tested this time.
Without the patch a 'mount -o journal=1 /dev/md0 /mnt'
followed by writing to /mnt/something produces

Jun 26 15:34:18 dell kernel: JBD: barrier-based sync failed on md0 - disabling barriers

in the kernel logs.
With the patch, it doesn't.

Comment updated slightly too.

NeilBrown

Author: NeilBrown <neilb@suse.de>
Date:   Fri Jun 26 15:41:35 2009 +1000

Restore barrier support for md and probably other virtual devices.

The next_ordered flag is only meaningful for devices that use __make_request.
So move the test against next_ordered out of generic code and in to
__make_request

Since this test was added, barriers have not worked on md or any
devices that don't use __make_request and so don't bother to set
next_ordered.  (dm explicitly sets something other than
QUEUE_ORDERED_NONE since
  commit 99360b4c18f7675b50d283301d46d755affe75fd
but notes in the comments that it is otherwise meaningless).

Cc: Ken Milmore <ken.milmore@googlemail.com>
Cc: stable@kernel.org
Signed-off-by: NeilBrown <neilb@suse.de>

diff --git a/block/blk-core.c b/block/blk-core.c
index b06cf5c..2283116 100644
--- a/block/blk-core.c
+++ b/block/blk-core.c
@@ -1172,6 +1172,11 @@ static int __make_request(struct request_queue *q, struct bio *bio)
 	const int unplug = bio_unplug(bio);
 	int rw_flags;
 
+	if (bio_barrier(bio) && bio_has_data(bio) &&
+	    (q->next_ordered == QUEUE_ORDERED_NONE)) {
+		bio_endio(bio, -EOPNOTSUPP);
+		return 0;
+	}
 	/*
 	 * low level driver can indicate that it wants pages above a
 	 * certain limit bounced to low memory (ie for highmem, or even
@@ -1472,11 +1477,6 @@ static inline void __generic_make_request(struct bio *bio)
 			err = -EOPNOTSUPP;
 			goto end_io;
 		}
-		if (bio_barrier(bio) && bio_has_data(bio) &&
-		    (q->next_ordered == QUEUE_ORDERED_NONE)) {
-			err = -EOPNOTSUPP;
-			goto end_io;
-		}
 
 		ret = q->make_request_fn(q, bio);
 	} while (ret);

  reply	other threads:[~2009-06-26  5:49 UTC|newest]

Thread overview: 93+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-06-26  2:53 linux-next: block tree build failure Stephen Rothwell
2009-06-26  4:34 ` NeilBrown
2009-06-26  4:39   ` Jens Axboe
2009-06-26  5:49     ` Neil Brown [this message]
2009-06-26  9:00       ` Jens Axboe
  -- strict thread matches above, loose matches on Subject: below --
2009-12-07  8:44 Stephen Rothwell
2009-12-07  8:49 ` Jens Axboe
2009-12-07  9:23   ` Stephen Rothwell
2009-12-07  9:28     ` Jens Axboe
2009-12-04  3:36 Stephen Rothwell
2009-12-04  7:43 ` Jens Axboe
2009-12-04 13:54   ` Jens Axboe
2009-12-04 22:49     ` Stephen Rothwell
2009-12-05  9:20       ` Jens Axboe
2009-10-27  3:34 Stephen Rothwell
2009-10-27  5:31 ` Jens Axboe
2009-10-27  5:50   ` Stephen Rothwell
2009-10-07  2:55 Stephen Rothwell
2009-10-07  2:55 ` Stephen Rothwell
     [not found] ` <20091007135505.df1f058c.sfr-3FnU+UHB4dNDw9hX6IcOSA@public.gmane.org>
2009-10-07  6:33   ` Jens Axboe
2009-10-07  6:33     ` Jens Axboe
2009-09-23  4:51 Stephen Rothwell
2009-09-23  4:51 ` Stephen Rothwell
2009-09-23  7:11 ` Lars Ellenberg
2009-09-23  7:32   ` Stephen Rothwell
     [not found]   ` <20090923071152.GA8000-pI6ZZpWkm2Ob3Om96lsyHpni2hclXnRB@public.gmane.org>
2009-09-23 11:12     ` Lars Ellenberg
2009-09-23 11:12       ` Lars Ellenberg
     [not found]       ` <20090923111225.GC8000-pI6ZZpWkm2Ob3Om96lsyHpni2hclXnRB@public.gmane.org>
2009-09-23 11:56         ` Stephen Rothwell
2009-09-23 11:56           ` Stephen Rothwell
2009-09-14  4:27 Stephen Rothwell
2009-09-14  6:25 ` Jens Axboe
2009-09-11  4:32 Stephen Rothwell
2009-09-11  5:30 ` Jens Axboe
2009-09-01  4:59 Stephen Rothwell
2009-09-01  5:30 ` Stephen Rothwell
2009-09-01  5:38   ` Jens Axboe
2009-09-01  8:13     ` Jens Axboe
2009-09-01  8:38       ` Stephen Rothwell
2009-07-07  3:49 Stephen Rothwell
2009-07-07  6:38 ` Jens Axboe
2009-07-07  6:45   ` Stephen Rothwell
2009-07-07 13:57   ` Christoph Hellwig
2009-07-07 14:31     ` Jens Axboe
2009-07-08  3:17   ` Stephen Rothwell
2009-07-08  6:55     ` Jens Axboe
2009-07-07 13:55 ` Christoph Hellwig
2009-07-08  0:41   ` Stephen Rothwell
2009-05-25  4:35 Stephen Rothwell
2009-05-25  5:38 ` Martin K. Petersen
2009-05-25  5:54   ` Stephen Rothwell
2009-05-13  4:04 Stephen Rothwell
2009-05-13  9:21 ` Tejun Heo
2009-05-13 12:07   ` James Bottomley
2009-05-15  0:45     ` Tejun Heo
2009-05-15  2:35       ` James Bottomley
2009-05-15  2:47         ` Tejun Heo
2009-05-15  3:24           ` James Bottomley
2009-05-15  3:38             ` Tejun Heo
2009-04-09  3:37 Stephen Rothwell
2009-04-14  2:35 ` Stephen Rothwell
2009-04-14  6:21   ` Jens Axboe
2009-04-14  6:26     ` Stephen Rothwell
2009-04-14  6:32       ` Jens Axboe
2008-11-26 10:29 Stephen Rothwell
2008-11-26 10:42 ` Ingo Molnar
2008-11-26 10:47   ` Jens Axboe
2008-11-26 11:16     ` Ingo Molnar
2008-11-26 11:20       ` Jens Axboe
2008-11-26 11:28         ` Ingo Molnar
2008-11-26 11:23       ` Mathieu Desnoyers
2008-11-26 11:25         ` Ingo Molnar
     [not found] <20081110145442.d60e57b7.sfr@canb.auug.org.au>
2008-11-10  4:13 ` malahal
2008-11-10  4:46 ` malahal
2008-11-10 12:12   ` Jens Axboe
2008-09-18  3:04 Stephen Rothwell
2008-09-18  4:31 ` Jens Axboe
2008-09-15  5:18 Stephen Rothwell
2008-09-15  5:38 ` Alex Dubov
2008-09-15 13:18   ` Jens Axboe
2008-09-03  6:15 Stephen Rothwell
2008-09-03  6:34 ` Jens Axboe
2008-09-03  7:04   ` Andrew Morton
2008-09-03  7:07     ` Jens Axboe
2008-09-03  8:50       ` Stephen Rothwell
2008-09-03 16:05       ` Andrew Morton
2008-09-03 16:27         ` Tejun Heo
2008-09-03 16:32           ` Andrew Morton
2008-09-03 17:29             ` Tejun Heo
2008-09-04  4:06               ` Andrew Morton
2008-08-29  5:07 Stephen Rothwell
2008-08-29  9:00 ` Jens Axboe
     [not found] <20080627165326.9222c841.sfr@canb.auug.org.au>
2008-06-27  7:00 ` Jens Axboe
2008-06-27  7:14   ` Jens Axboe

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=19012.24947.650584.93908@notabene.brown \
    --to=neilb@suse.de \
    --cc=jens.axboe@oracle.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-next@vger.kernel.org \
    --cc=sfr@canb.auug.org.au \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.