* 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; 13+ 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] 13+ 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; 13+ 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] 13+ 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; 13+ 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] 13+ 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 0 siblings, 0 replies; 13+ 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] 13+ messages in thread
* Re: [xfs-masters] linux-next: manual merge of the xfs tree with Linus' tree @ 2011-03-28 10:58 ` Jens Axboe 0 siblings, 0 replies; 13+ 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] 13+ 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 -1 siblings, 0 replies; 13+ 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] 13+ 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-29 2:57 ` Alex Elder -1 siblings, 0 replies; 13+ 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] 13+ messages in thread
* Re: [xfs-masters] linux-next: manual merge of the xfs tree with Linus' tree @ 2011-03-29 2:57 ` Alex Elder 0 siblings, 0 replies; 13+ 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] 13+ messages in thread
* Re: [xfs-masters] linux-next: manual merge of the xfs tree with Linus' tree 2011-03-28 10:58 ` Jens Axboe ` (2 preceding siblings ...) (?) @ 2011-03-29 20:08 ` Christoph Hellwig 2011-03-30 11:43 ` Jens Axboe -1 siblings, 1 reply; 13+ messages in thread From: Christoph Hellwig @ 2011-03-29 20:08 UTC (permalink / raw) To: Jens Axboe; +Cc: linux-kernel FYI, the blk_flush_plug call in ufs_truncate also seem to be almost certainly incorrect as it's followed by a yield. That only leaves the RAID code as remaining modular users of it, and I suspect it really is something that shouldn't need to be exported. ^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [xfs-masters] linux-next: manual merge of the xfs tree with Linus' tree 2011-03-29 20:08 ` Christoph Hellwig @ 2011-03-30 11:43 ` Jens Axboe 2011-03-30 11:57 ` blk_flush_plug in the MD code, was " Christoph Hellwig 0 siblings, 1 reply; 13+ messages in thread From: Jens Axboe @ 2011-03-30 11:43 UTC (permalink / raw) To: Christoph Hellwig; +Cc: linux-kernel@vger.kernel.org On 2011-03-29 22:08, Christoph Hellwig wrote: > FYI, the blk_flush_plug call in ufs_truncate also seem to be almost > certainly incorrect as it's followed by a yield. > > That only leaves the RAID code as remaining modular users of it, and > I suspect it really is something that shouldn't need to be exported. Agree, once things have settled down we can reap the remaining and keep it internal. -- Jens Axboe ^ permalink raw reply [flat|nested] 13+ messages in thread
* blk_flush_plug in the MD code, was Re: [xfs-masters] linux-next: manual merge of the xfs tree with Linus' tree 2011-03-30 11:43 ` Jens Axboe @ 2011-03-30 11:57 ` Christoph Hellwig 0 siblings, 0 replies; 13+ messages in thread From: Christoph Hellwig @ 2011-03-30 11:57 UTC (permalink / raw) To: Jens Axboe; +Cc: linux-kernel, linux-raid, neilb On Wed, Mar 30, 2011 at 01:43:55PM +0200, Jens Axboe wrote: > On 2011-03-29 22:08, Christoph Hellwig wrote: > > FYI, the blk_flush_plug call in ufs_truncate also seem to be almost > > certainly incorrect as it's followed by a yield. > > > > That only leaves the RAID code as remaining modular users of it, and > > I suspect it really is something that shouldn't need to be exported. > > Agree, once things have settled down we can reap the remaining and keep > it internal. In fact I think the blk_flush_plug calls in the raid1/raid10 code can simply be removed without a replacement. They are in wait_even_loops which schedule before/after the call so we do get the implicit context switch plugs there. Even more they are generally called from the make_request handler, which for MD is in the loop around __generic_make_request and thus can't actually unplug in a sensible way. ^ permalink raw reply [flat|nested] 13+ 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; 13+ 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] 13+ 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; 13+ 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] 13+ messages in thread
end of thread, other threads:[~2011-03-30 11:57 UTC | newest] Thread overview: 13+ 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 10:58 ` Jens Axboe 2011-03-28 11:00 ` Christoph Hellwig 2011-03-29 2:57 ` Alex Elder 2011-03-29 2:57 ` Alex Elder 2011-03-29 20:08 ` Christoph Hellwig 2011-03-30 11:43 ` Jens Axboe 2011-03-30 11:57 ` blk_flush_plug in the MD code, was " Christoph Hellwig 2011-03-28 13:37 ` Stephen Rothwell 2011-03-28 13:44 ` Christoph Hellwig
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.