Re: [GIT PULL] Core block IO bits for 3.15-rc

From: Frederic Weisbecker
Date: Wed Apr 02 2014 - 10:00:22 EST


On Tue, Apr 01, 2014 at 07:43:08PM -0700, Linus Torvalds wrote:
> On Tue, Apr 1, 2014 at 12:05 PM, Jens Axboe <axboe@xxxxxx> wrote:
> >
> > - Cleanup of the IPI usage from the block layer, and associated helper
> > code. From Frederic Weisbecker and Jan Kara.
>
> So I absolutely *hate* how this was done.
>
> Why the hell was it mixed in with the block layer code? It's not even
> in some clean separate branch, it's just randomly in the middle of the
> block code, for no obvious reason.
>
> I'm pulling it this time, but quite frankly, next time I see this kind
> of ugly AND TOTALLY POINTLESS layering violation, I will just drop the
> stupid pull request.
>
> If you want to push me cleanups that are to generic code and are in no
> way specific to the block layer, fine. But I want a separate pull
> request that is not in any way mixed up with block code.
>
> In other words, this was NOT OK. This was stupid and wrong, and
> violated all sanity. I can see absolutely no reason why that
> smp_call_function_single_async() renaming and the other cleanups are
> in the block branch. They are totally separate in every single way.
>
> What the hell was going on here?

I think it's because we were worried that these smp cleanups had strong
conflicts against block changes.

Changes on core SMP APIs resulted in changes on these APIs users (ie: block
for the most part here). But then these changes in API users had to face
quite some conflicting changes in the block code.

So the mistake started with me: I did a branch with the smp changes on top of the
block core in order to resolve the conflict early.

Then Jens pulled it in the block tree. Then again it looked right to me as further
block changes would then have no risk of conflict, and Jens is the maintainer of
both parts.

So yeah that's because I was worried about strong conflicts. What kind of approach
do you prefer then to solve that kind of issue? Do you prefer that we create a seperate
branch and deal with non trivial nor small conflicts on merge window time?

Yeah now that I think about it, maybe when the conflicts are significant we should
have a seperate SMP branch which has the conflicts resolved once the block bits are pulled in.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/