linux-next.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* linux-next: manual merge of the xfs tree with Linus' tree
@ 2011-03-28  1:21 Stephen Rothwell
  2011-03-28 10:47 ` [xfs-masters] " Christoph Hellwig
  0 siblings, 1 reply; 8+ messages in thread
From: Stephen Rothwell @ 2011-03-28  1:21 UTC (permalink / raw)
  To: David Chinner, xfs-masters; +Cc: linux-next, linux-kernel, Jens Axboe

[-- Attachment #1: Type: text/plain, Size: 824 bytes --]

Hi all,

Today's linux-next merge of the xfs tree got a conflict in
fs/xfs/linux-2.6/xfs_buf.c between commit 7eaceaccab5f ("block: remove
per-queue plugging") from Linus' tree and commit 0e6e847ffe37 ("xfs: stop
using the page cache to back the buffer cache") from the xfs tree.

I assume that these changes (on both sides) were discussed somewhere, but
maybe not clearly enough?

I have no idea how to fix this, so I tried to just use the xfs tree
version for today.  That failed like this:

fs/xfs/linux-2.6/xfs_buf.c: In function 'xfs_buf_lock':
fs/xfs/linux-2.6/xfs_buf.c:923: error: implicit declaration of function 'blk_run_backing_dev'

So I used the xfs tree from next-20110325 for today.

-- 
Cheers,
Stephen Rothwell                    sfr@canb.auug.org.au
http://www.canb.auug.org.au/~sfr/

[-- Attachment #2: Type: application/pgp-signature, Size: 490 bytes --]

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [xfs-masters] linux-next: manual merge of the xfs tree with Linus' tree
  2011-03-28  1:21 linux-next: manual merge of the xfs tree with Linus' tree Stephen Rothwell
@ 2011-03-28 10:47 ` Christoph Hellwig
  2011-03-28 10:53   ` Christoph Hellwig
  2011-03-28 13:37   ` Stephen Rothwell
  0 siblings, 2 replies; 8+ messages in thread
From: Christoph Hellwig @ 2011-03-28 10:47 UTC (permalink / raw)
  To: Stephen Rothwell
  Cc: David Chinner, xfs-masters, Jens Axboe, linux-next, linux-kernel

On Mon, Mar 28, 2011 at 12:21:48PM +1100, Stephen Rothwell wrote:
> Hi all,
> 
> Today's linux-next merge of the xfs tree got a conflict in
> fs/xfs/linux-2.6/xfs_buf.c between commit 7eaceaccab5f ("block: remove
> per-queue plugging") from Linus' tree and commit 0e6e847ffe37 ("xfs: stop
> using the page cache to back the buffer cache") from the xfs tree.
> 
> I assume that these changes (on both sides) were discussed somewhere, but
> maybe not clearly enough?
> 
> I have no idea how to fix this, so I tried to just use the xfs tree
> version for today.  That failed like this:
> 
> fs/xfs/linux-2.6/xfs_buf.c: In function 'xfs_buf_lock':
> fs/xfs/linux-2.6/xfs_buf.c:923: error: implicit declaration of function 'blk_run_backing_dev'
> 
> So I used the xfs tree from next-20110325 for today.

What XFS does is to replace blk_run_address_space, which was a wrapper
around blk_run_backing_dev with a direct call to blk_run_backing_dev,
as there change means we don't have the address_space around anymore.

Jens' tree removes both these functions, and introduces blk_flush_plug
as a sort-of replacement.  Sticking to the variant from Jens' tree / mainline
with blk_flush_plug is the correct thing here for this case.

Where there more conflicts than just this?

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [xfs-masters] linux-next: manual merge of the xfs tree with Linus' tree
  2011-03-28 10:47 ` [xfs-masters] " Christoph Hellwig
@ 2011-03-28 10:53   ` Christoph Hellwig
  2011-03-28 10:58     ` Jens Axboe
  2011-03-28 13:37   ` Stephen Rothwell
  1 sibling, 1 reply; 8+ messages in thread
From: Christoph Hellwig @ 2011-03-28 10:53 UTC (permalink / raw)
  To: Stephen Rothwell
  Cc: David Chinner, xfs-masters, Jens Axboe, linux-next, linux-kernel

On Mon, Mar 28, 2011 at 12:47:53PM +0200, Christoph Hellwig wrote:
> What XFS does is to replace blk_run_address_space, which was a wrapper
> around blk_run_backing_dev with a direct call to blk_run_backing_dev,
> as there change means we don't have the address_space around anymore.
> 
> Jens' tree removes both these functions, and introduces blk_flush_plug
> as a sort-of replacement.  Sticking to the variant from Jens' tree / mainline
> with blk_flush_plug is the correct thing here for this case.
> 
> Where there more conflicts than just this?

Actually I think we can remove some calls alltogether:  the on-stack
plugging already flushes the plug queue when context switching,
which we'll always do in xfs_buf_wait_unpin, and if we get the lock
without blocking in xfs_buf_lock we don't need to unplug either.

Anyway, that's something to take care off in the XFS tree once it's
merged after the next pull for Linus, no need to keep a fixup that
complicated in linux-next.

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [xfs-masters] linux-next: manual merge of the xfs tree with Linus' tree
  2011-03-28 10:53   ` Christoph Hellwig
@ 2011-03-28 10:58     ` Jens Axboe
  2011-03-28 11:00       ` Christoph Hellwig
  2011-03-29  2:57       ` Alex Elder
  0 siblings, 2 replies; 8+ messages in thread
From: Jens Axboe @ 2011-03-28 10:58 UTC (permalink / raw)
  To: Christoph Hellwig
  Cc: Stephen Rothwell, David Chinner, xfs-masters@oss.sgi.com,
	linux-next@vger.kernel.org, linux-kernel@vger.kernel.org

On 2011-03-28 12:53, Christoph Hellwig wrote:
> On Mon, Mar 28, 2011 at 12:47:53PM +0200, Christoph Hellwig wrote:
>> What XFS does is to replace blk_run_address_space, which was a wrapper
>> around blk_run_backing_dev with a direct call to blk_run_backing_dev,
>> as there change means we don't have the address_space around anymore.
>>
>> Jens' tree removes both these functions, and introduces blk_flush_plug
>> as a sort-of replacement.  Sticking to the variant from Jens' tree / mainline
>> with blk_flush_plug is the correct thing here for this case.
>>
>> Where there more conflicts than just this?
> 
> Actually I think we can remove some calls alltogether:  the on-stack
> plugging already flushes the plug queue when context switching,
> which we'll always do in xfs_buf_wait_unpin, and if we get the lock
> without blocking in xfs_buf_lock we don't need to unplug either.

Yes, in fact all of the blk_flush_plug() calls in XFS can just go away
now. I tried to keep them for clarity, but they are primarily there
since XFS was the first conversion/testing I did back when it was hacked
up.

-- 
Jens Axboe

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [xfs-masters] linux-next: manual merge of the xfs tree with Linus' tree
  2011-03-28 10:58     ` Jens Axboe
@ 2011-03-28 11:00       ` Christoph Hellwig
  2011-03-29  2:57       ` Alex Elder
  1 sibling, 0 replies; 8+ messages in thread
From: Christoph Hellwig @ 2011-03-28 11:00 UTC (permalink / raw)
  To: Jens Axboe
  Cc: Christoph Hellwig, Stephen Rothwell, David Chinner,
	xfs-masters@oss.sgi.com, linux-next@vger.kernel.org,
	linux-kernel@vger.kernel.org

On Mon, Mar 28, 2011 at 12:58:09PM +0200, Jens Axboe wrote:
> Yes, in fact all of the blk_flush_plug() calls in XFS can just go away
> now. I tried to keep them for clarity, but they are primarily there
> since XFS was the first conversion/testing I did back when it was hacked
> up.

It seems like the xfsbufd can go away, too indeed.  If we have more
work to do it makes sense not to plug, and if we don't have more
work we are going to sleep.

I think the one in xfs_flush_buftarg actually does make sense to
keep - we really want to flush out all pending I/O before waiting for
it.  But I guess for both of these we just want to add an explicit
plug/unlug pair to optimize the I/O dispatch.

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [xfs-masters] linux-next: manual merge of the xfs tree with Linus' tree
  2011-03-28 10:47 ` [xfs-masters] " Christoph Hellwig
  2011-03-28 10:53   ` Christoph Hellwig
@ 2011-03-28 13:37   ` Stephen Rothwell
  2011-03-28 13:44     ` Christoph Hellwig
  1 sibling, 1 reply; 8+ messages in thread
From: Stephen Rothwell @ 2011-03-28 13:37 UTC (permalink / raw)
  To: Christoph Hellwig
  Cc: David Chinner, xfs-masters, Jens Axboe, linux-next, linux-kernel

[-- Attachment #1: Type: text/plain, Size: 2020 bytes --]

Hi Christoph,

On Mon, 28 Mar 2011 12:47:53 +0200 Christoph Hellwig <hch@lst.de> wrote:
>
> On Mon, Mar 28, 2011 at 12:21:48PM +1100, Stephen Rothwell wrote:
> > 
> > Today's linux-next merge of the xfs tree got a conflict in
> > fs/xfs/linux-2.6/xfs_buf.c between commit 7eaceaccab5f ("block: remove
> > per-queue plugging") from Linus' tree and commit 0e6e847ffe37 ("xfs: stop
> > using the page cache to back the buffer cache") from the xfs tree.
> > 
> > I assume that these changes (on both sides) were discussed somewhere, but
> > maybe not clearly enough?
> > 
> > I have no idea how to fix this, so I tried to just use the xfs tree
> > version for today.  That failed like this:
> > 
> > fs/xfs/linux-2.6/xfs_buf.c: In function 'xfs_buf_lock':
> > fs/xfs/linux-2.6/xfs_buf.c:923: error: implicit declaration of function 'blk_run_backing_dev'
> > 
> > So I used the xfs tree from next-20110325 for today.
> 
> What XFS does is to replace blk_run_address_space, which was a wrapper
> around blk_run_backing_dev with a direct call to blk_run_backing_dev,
> as there change means we don't have the address_space around anymore.
> 
> Jens' tree removes both these functions, and introduces blk_flush_plug
> as a sort-of replacement.  Sticking to the variant from Jens' tree / mainline
> with blk_flush_plug is the correct thing here for this case.

So does that mean that the whole xfs tree commit can be removed/ignored?
That is a bit of a pain to do in a merge (especially considering that
there is another commit in the xfs tree that changes that file.  If the
whole commit is no longer needed, maybe it could be dropped from the xfs
tree or reverted.

> Where there more conflicts than just this?

No, the only conflicts (I am pretty sure) were on the lines with the
changed calls.  There was, of course, quite a few other changes in that
commit in the xfs tree.

-- 
Cheers,
Stephen Rothwell                    sfr@canb.auug.org.au
http://www.canb.auug.org.au/~sfr/

[-- Attachment #2: Type: application/pgp-signature, Size: 490 bytes --]

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [xfs-masters] linux-next: manual merge of the xfs tree with Linus' tree
  2011-03-28 13:37   ` Stephen Rothwell
@ 2011-03-28 13:44     ` Christoph Hellwig
  0 siblings, 0 replies; 8+ messages in thread
From: Christoph Hellwig @ 2011-03-28 13:44 UTC (permalink / raw)
  To: Stephen Rothwell
  Cc: Christoph Hellwig, David Chinner, xfs-masters, Jens Axboe,
	linux-next, linux-kernel

On Tue, Mar 29, 2011 at 12:37:25AM +1100, Stephen Rothwell wrote:
> So does that mean that the whole xfs tree commit can be removed/ignored?
> That is a bit of a pain to do in a merge (especially considering that
> there is another commit in the xfs tree that changes that file.  If the
> whole commit is no longer needed, maybe it could be dropped from the xfs
> tree or reverted.

No, that change is just a small part of the commit.

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [xfs-masters] linux-next: manual merge of the xfs tree with Linus' tree
  2011-03-28 10:58     ` Jens Axboe
  2011-03-28 11:00       ` Christoph Hellwig
@ 2011-03-29  2:57       ` Alex Elder
  1 sibling, 0 replies; 8+ messages in thread
From: Alex Elder @ 2011-03-29  2:57 UTC (permalink / raw)
  To: Jens Axboe
  Cc: Christoph Hellwig, Stephen Rothwell, David Chinner,
	xfs-masters@oss.sgi.com, linux-next@vger.kernel.org,
	linux-kernel@vger.kernel.org

On Mon, 2011-03-28 at 12:58 +0200, Jens Axboe wrote:
> On 2011-03-28 12:53, Christoph Hellwig wrote:
> > On Mon, Mar 28, 2011 at 12:47:53PM +0200, Christoph Hellwig wrote:
> >> What XFS does is to replace blk_run_address_space, which was a wrapper
> >> around blk_run_backing_dev with a direct call to blk_run_backing_dev,
> >> as there change means we don't have the address_space around anymore.
> >>
> >> Jens' tree removes both these functions, and introduces blk_flush_plug
> >> as a sort-of replacement.  Sticking to the variant from Jens' tree / mainline
> >> with blk_flush_plug is the correct thing here for this case.
> >>
> >> Where there more conflicts than just this?
> > 
> > Actually I think we can remove some calls alltogether:  the on-stack
> > plugging already flushes the plug queue when context switching,
> > which we'll always do in xfs_buf_wait_unpin, and if we get the lock
> > without blocking in xfs_buf_lock we don't need to unplug either.
> 
> Yes, in fact all of the blk_flush_plug() calls in XFS can just go away
> now. I tried to keep them for clarity, but they are primarily there
> since XFS was the first conversion/testing I did back when it was hacked
> up.
> 

I sent a fix to Linus but he must not have pulled it in
time for the March 29 build.  He has pulled it now though.
Ought to be fixed tomorrow.

(To be clear, I just did the simple conflict resolution,
I didn't remove the calls--that'll wait.)

					-Alex

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2011-03-29  3:06 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-03-28  1:21 linux-next: manual merge of the xfs tree with Linus' tree Stephen Rothwell
2011-03-28 10:47 ` [xfs-masters] " Christoph Hellwig
2011-03-28 10:53   ` Christoph Hellwig
2011-03-28 10:58     ` Jens Axboe
2011-03-28 11:00       ` Christoph Hellwig
2011-03-29  2:57       ` Alex Elder
2011-03-28 13:37   ` Stephen Rothwell
2011-03-28 13:44     ` Christoph Hellwig

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).