Hi all,
Today's linux-next merge of the block tree got a conflict in:
fs/pipe.c
between commit:
2b10649c2316 ("pipe: enable handling of IOCB_NOWAIT")
from the vfs-idmapping tree and commit:
3f6ded8dd89d ("pipe: check for IOCB_NOWAIT alongside O_NONBLOCK")
from the block tree.
The former added
const bool nonblock = iocb->ki_flags & IOCB_NOWAIT;
and then did
- if (filp->f_flags & O_NONBLOCK) {
+ if (filp->f_flags & O_NONBLOCK || nonblock) {
while the latter just did
- if (filp->f_flags & O_NONBLOCK) {
+ if (filp->f_flags & O_NONBLOCK || iocb->ki_flags & IOCB_NOWAIT) {
so I just used the former though I suspect that the former may be a
previous version of these changes?).
I fixed it up (see above) and can carry the fix as necessary. This
is now fixed as far as linux-next is concerned, but any non trivial
conflicts should be mentioned to your upstream maintainer when your tree
is submitted for merging. You may also want to consider cooperating
with the maintainer of the conflicting tree to minimise any particularly
complex conflicts.
--
Cheers,
Stephen Rothwell
On 5/9/23 6:55 PM, Stephen Rothwell wrote:
> Hi all,
>
> Today's linux-next merge of the block tree got a conflict in:
>
> fs/pipe.c
>
> between commit:
>
> 2b10649c2316 ("pipe: enable handling of IOCB_NOWAIT")
>
> from the vfs-idmapping tree and commit:
>
> 3f6ded8dd89d ("pipe: check for IOCB_NOWAIT alongside O_NONBLOCK")
>
> from the block tree.
>
> The former added
>
> const bool nonblock = iocb->ki_flags & IOCB_NOWAIT;
>
> and then did
>
> - if (filp->f_flags & O_NONBLOCK) {
> + if (filp->f_flags & O_NONBLOCK || nonblock) {
>
> while the latter just did
>
> - if (filp->f_flags & O_NONBLOCK) {
> + if (filp->f_flags & O_NONBLOCK || iocb->ki_flags & IOCB_NOWAIT) {
>
> so I just used the former though I suspect that the former may be a
> previous version of these changes?).
>
> I fixed it up (see above) and can carry the fix as necessary. This
> is now fixed as far as linux-next is concerned, but any non trivial
> conflicts should be mentioned to your upstream maintainer when your tree
> is submitted for merging. You may also want to consider cooperating
> with the maintainer of the conflicting tree to minimise any particularly
> complex conflicts.
Yes, since Linus didn't like the original approach, it was redone
and that particular patch was originally forgotten and then redone
without the 'nonblock' variable. So you should just ignore the
old version, and Christian should just drop that branch from his
for-next tree as it's dead.
--
Jens Axboe
Hi Jens,
On Wed, 10 May 2023 06:48:39 -0600 Jens Axboe <[email protected]> wrote:
>
> Yes, since Linus didn't like the original approach, it was redone
> and that particular patch was originally forgotten and then redone
> without the 'nonblock' variable. So you should just ignore the
> old version, and Christian should just drop that branch from his
> for-next tree as it's dead.
That appears to have been done now, thanks.
--
Cheers,
Stephen Rothwell
On Thu, May 11, 2023 at 11:07:50AM +1000, Stephen Rothwell wrote:
> Hi Jens,
>
> On Wed, 10 May 2023 06:48:39 -0600 Jens Axboe <[email protected]> wrote:
> >
> > Yes, since Linus didn't like the original approach, it was redone
> > and that particular patch was originally forgotten and then redone
> > without the 'nonblock' variable. So you should just ignore the
> > old version, and Christian should just drop that branch from his
> > for-next tree as it's dead.
>
> That appears to have been done now, thanks.
Yeah, sorry. LSFMM makes it a bit hard to be consistent about my
replies and after my first reply I only had rolled vfs/for-next rolled
forward but not vfs-idmapping/for-next. The latter repo will likely go
away soonish and then only vfs/* will be left.
Christian