{"thread":{"id":"64971","subject":"Re: [PATCH v2] futex_waitv.2: new page","startedAt":"2026-02-10T14:31:03Z","lastAt":"2026-02-11T15:43:57Z","messageCount":9,"participants":["Alejandro Colomar","Kristoffer Haugsbakk","Junio C Hamano","Jeff King"],"isPatch":true,"patchVersion":2,"patchTotal":null},"messages":[{"id":"535680","messageId":"aYtAknObJpjszCaj@devuan","threadId":"64971","inReplyTo":"rqshygydxwpfs2mi5cwxl3wvztgctj3nvu3y5bpo5s32owucna@tarta.nabijaczleweli.xyz","subject":"Re: [PATCH v2] futex_waitv.2: new page","fromName":"Alejandro Colomar","fromEmail":"alx@kernel.org","sentAt":"2026-02-10T14:30:59Z","receivedAt":"2026-02-10T14:31:03Z","isPatch":true,"sender":{"key":"alx@kernel.org","avatar":null},"body":"Hi!\n\nOn 2026-02-10T15:17:55+0100, наб wrote:\n> Hi!\n> \n> On Mon, Feb 09, 2026 at 11:35:53PM +0100, Alejandro Colomar wrote:\n> > On 2026-02-07T23:00:49+0100, наб wrote:\n> > > Signed-off-by: Ahelenia Ziemiańska <nabijaczleweli@nabijaczleweli.xyz>\n> > \n> > For some reason, the patch doesn't want to apply.  I don't see anything\n> > obviously wrong, so it may be an issue in my side?\n> > \n> > \tApplying: futex_waitv.2: new page\n> > \terror: affected file 'man2/futex_waitv.2' is beyond a symbolic link\n> > \terror: man7/futex.7: does not exist in index\n> > \tPatch failed at 0001 futex_waitv.2: new page\n> > \thint: Use 'git am --show-current-patch=diff' to see the failed patch\n> > \thint: When you have resolved this problem, run \"git am --continue\".\n> > \thint: If you prefer to skip this patch, run \"git am --skip\" instead.\n> > \thint: To restore the original branch and stop patching, run \"git am --abort\".\n> > \thint: Disable this message with \"git config set advice.mergeConflict false\"\n> > \tPress any key to continue...\n> \n> Hm, I did recently set\n>   $ git config diff.noprefix\n>   true\n> I didn't expect this to affect format-patch diffs\n> (since it doesn't affect diffs shown by git add -p),\n> or, if it did, I expected the designated consumer of format-patch\n> diffs (am) to understand this. perhaps not;\n> maybe -p0 to git am?\n> \n> A quick search yields\n>   https://lore.kernel.org/git/xmqqy1o5op1i.fsf@gitster.g/t/#eaa0323ec4eed441b37caf96e1b136529b298dbac\n> where you're in the thread and the maintainer says \"queued\" for a patch\n> that would ignore noprefix for format-patch for this reason precisely.\n> But clearly not, since my patches were with noprefix=true and came out -p0.\n\nOh, that bites again!\n\nJunio, do you still have this queued?\n<https://lore.kernel.org/git/xmqqy1o5op1i.fsf@gitster.g/t/#m6f42ff4f0cb2d6dd1d68f12a533d04c822b68a80>\n\n\nHave a lovely day!\nAlex\n\n> \n> Best,\n\n\n\n-- \n<https://www.alejandro-colomar.es>\n"},{"id":"535686","messageId":"55bd6ad3-cd19-4839-a808-eceae802d3c8@app.fastmail.com","threadId":"64971","inReplyTo":"aYtAknObJpjszCaj@devuan","subject":"Re: [PATCH v2] futex_waitv.2: new page","fromName":"Kristoffer Haugsbakk","fromEmail":"kristofferhaugsbakk@fastmail.com","sentAt":"2026-02-10T15:54:02Z","receivedAt":"2026-02-10T15:54:23Z","isPatch":true,"sender":{"key":"kristofferhaugsbakk@fastmail.com","avatar":null},"body":"On Tue, Feb 10, 2026, at 15:30, Alejandro Colomar wrote:\n> Hi!\n>\n> On 2026-02-10T15:17:55+0100, наб wrote:\n>> Hi!\n>>\n>> On Mon, Feb 09, 2026 at 11:35:53PM +0100, Alejandro Colomar wrote:\n>> > On 2026-02-07T23:00:49+0100, наб wrote:\n>> > > Signed-off-by: Ahelenia Ziemiańska <nabijaczleweli@nabijaczleweli.xyz>\n>> >\n>> > For some reason, the patch doesn't want to apply.  I don't see anything\n>> > obviously wrong, so it may be an issue in my side?\n>> >\n>> > \tApplying: futex_waitv.2: new page\n>> > \terror: affected file 'man2/futex_waitv.2' is beyond a symbolic link\n>> > \terror: man7/futex.7: does not exist in index\n>> > \tPatch failed at 0001 futex_waitv.2: new page\n>> > \thint: Use 'git am --show-current-patch=diff' to see the failed patch\n>> > \thint: When you have resolved this problem, run \"git am --continue\".\n>> > \thint: If you prefer to skip this patch, run \"git am --skip\" instead.\n>> > \thint: To restore the original branch and stop patching, run \"git am --abort\".\n>> > \thint: Disable this message with \"git config set advice.mergeConflict false\"\n>> > \tPress any key to continue...\n>>\n>> Hm, I did recently set\n>>   $ git config diff.noprefix\n>>   true\n>> I didn't expect this to affect format-patch diffs\n>> (since it doesn't affect diffs shown by git add -p),\n>> or, if it did, I expected the designated consumer of format-patch\n>> diffs (am) to understand this. perhaps not;\n>> maybe -p0 to git am?\n>>\n>> A quick search yields\n>>   https://lore.kernel.org/git/xmqqy1o5op1i.fsf@gitster.g/t/#eaa0323ec4eed441b37caf96e1b136529b298dbac\n>> where you're in the thread and the maintainer says \"queued\" for a patch\n>> that would ignore noprefix for format-patch for this reason precisely.\n>> But clearly not, since my patches were with noprefix=true and came out -p0.\n>\n> Oh, that bites again!\n>\n> Junio, do you still have this queued?\n> <https://lore.kernel.org/git/xmqqy1o5op1i.fsf@gitster.g/t/#m6f42ff4f0cb2d6dd1d68f12a533d04c822b68a80>\n\nSee 15108de2 (Merge branch 'jk/format-patch-ignore-noprefix',\n2023-03-21).\n\nAn aside but `format.noprefix` is not a boolean like `diff.noprefix`.\nIt will be enabled with any value.\n\nIs it standard to indicate this with the existing “If set,”, perhaps? Or\nshould it say “enabled with any value”?\n\n(+Cc Peff)\n\n    format.noprefix::\n            If set, do not show any source or destination prefix in patches.\n            This is equivalent to the `diff.noprefix` option used by `git\n            diff` (but which is not respected by `format-patch`). Note that\n            by setting this, the receiver of any patches you generate will\n            have to apply them using the `-p0` option.\n"},{"id":"535690","messageId":"xmqqtsvozgi2.fsf@gitster.g","threadId":"64971","inReplyTo":"aYtAknObJpjszCaj@devuan","subject":"Re: [PATCH v2] futex_waitv.2: new page","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2026-02-10T16:54:13Z","receivedAt":"2026-02-10T16:54:16Z","isPatch":true,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Alejandro Colomar <alx@kernel.org> writes:\n\n> Junio, do you still have this queued?\n> <https://lore.kernel.org/git/xmqqy1o5op1i.fsf@gitster.g/t/#m6f42ff4f0cb2d6dd1d68f12a533d04c822b68a80>\n\nStill queued??  Not very likely.\n\nIt is a topic from almost 3 years ago, so it is either in an ancient\nreleased version, or it was discarded long time ago for some issues.\nGiven that it is from Peff, it is very likely the former.\n\nhttps://git.kernel.org/pub/scm/git/git.git/commit/?h=15108de2fa0&id=15108de2fa0cd8f002a0551d14c84505a853071c    \n\nThat's v2.41.0-rc0~141 if my \"git describe --contains\" is counting\ncorrectly.\n\nMy secretary will bill you for 30 minutes of my time and for making\nme miss a meeting with external folks with this ;-).\n"},{"id":"535691","messageId":"cf92ae10-7435-4130-a866-e1b30bf2b428@app.fastmail.com","threadId":"64971","inReplyTo":"xmqqtsvozgi2.fsf@gitster.g","subject":"Re: [PATCH v2] futex_waitv.2: new page","fromName":"Kristoffer Haugsbakk","fromEmail":"kristofferhaugsbakk@fastmail.com","sentAt":"2026-02-10T17:11:50Z","receivedAt":"2026-02-10T17:12:12Z","isPatch":true,"sender":{"key":"kristofferhaugsbakk@fastmail.com","avatar":null},"body":"On Tue, Feb 10, 2026, at 17:54, Junio C Hamano wrote:\n> Alejandro Colomar <alx@kernel.org> writes:\n>\n>> Junio, do you still have this queued?\n>> <https://lore.kernel.org/git/xmqqy1o5op1i.fsf@gitster.g/t/#m6f42ff4f0cb2d6dd1d68f12a533d04c822b68a80>\n>\n> Still queued??  Not very likely.\n>\n> It is a topic from almost 3 years ago, so it is either in an ancient\n> released version, or it was discarded long time ago for some issues.\n> Given that it is from Peff, it is very likely the former.\n>\n> https://git.kernel.org/pub/scm/git/git.git/commit/?h=15108de2fa0&id=15108de2fa0cd8f002a0551d14c84505a853071c\n>\n>\n> That's v2.41.0-rc0~141 if my \"git describe --contains\" is counting\n> correctly.\n>\n> My secretary will bill you for 30 minutes of my time and for making\n> me miss a meeting with external folks with this ;-).\n\nThe email with the patch[1] seems to say Git 2.39.5 in the signature line.\n\n    @@ -107,6 +111,7 @@ .SH NOTES\n     .SH SEE ALSO\n     .BR clone (2),\n     .BR futex (2),\n    +.BR futex_waitv (2),\n     .BR get_robust_list (2),\n     .BR set_robust_list (2),\n     .BR set_tid_address (2),\n    --\n    2.39.5\n\nThat topic is not in any 2.39.* release.\n\n† 1: https://lore.kernel.org/all/se6hm5gnd7cyjsby5q6pctkrws5ecp5gpnfjuy3zh2shd2abyj@tarta.nabijaczleweli.xyz/\n"},{"id":"535699","messageId":"aYt5-PaPvKGPjI27@devuan","threadId":"64971","inReplyTo":"55bd6ad3-cd19-4839-a808-eceae802d3c8@app.fastmail.com","subject":"Re: [PATCH v2] futex_waitv.2: new page","fromName":"Alejandro Colomar","fromEmail":"alx@kernel.org","sentAt":"2026-02-10T18:39:58Z","receivedAt":"2026-02-10T18:40:02Z","isPatch":true,"sender":{"key":"alx@kernel.org","avatar":null},"body":"Hi Kristoffer, наб,\n\nOn 2026-02-10T16:54:02+0100, Kristoffer Haugsbakk wrote:\n> On Tue, Feb 10, 2026, at 15:30, Alejandro Colomar wrote:\n> > Hi!\n> >\n> > On 2026-02-10T15:17:55+0100, наб wrote:\n> >> Hi!\n> >>\n> >> On Mon, Feb 09, 2026 at 11:35:53PM +0100, Alejandro Colomar wrote:\n> >> > On 2026-02-07T23:00:49+0100, наб wrote:\n> >> > > Signed-off-by: Ahelenia Ziemiańska <nabijaczleweli@nabijaczleweli.xyz>\n> >> >\n> >> > For some reason, the patch doesn't want to apply.  I don't see anything\n> >> > obviously wrong, so it may be an issue in my side?\n> >> >\n> >> > \tApplying: futex_waitv.2: new page\n> >> > \terror: affected file 'man2/futex_waitv.2' is beyond a symbolic link\n> >> > \terror: man7/futex.7: does not exist in index\n> >> > \tPatch failed at 0001 futex_waitv.2: new page\n> >> > \thint: Use 'git am --show-current-patch=diff' to see the failed patch\n> >> > \thint: When you have resolved this problem, run \"git am --continue\".\n> >> > \thint: If you prefer to skip this patch, run \"git am --skip\" instead.\n> >> > \thint: To restore the original branch and stop patching, run \"git am --abort\".\n> >> > \thint: Disable this message with \"git config set advice.mergeConflict false\"\n> >> > \tPress any key to continue...\n> >>\n> >> Hm, I did recently set\n> >>   $ git config diff.noprefix\n> >>   true\n> >> I didn't expect this to affect format-patch diffs\n> >> (since it doesn't affect diffs shown by git add -p),\n> >> or, if it did, I expected the designated consumer of format-patch\n> >> diffs (am) to understand this. perhaps not;\n> >> maybe -p0 to git am?\n> >>\n> >> A quick search yields\n> >>   https://lore.kernel.org/git/xmqqy1o5op1i.fsf@gitster.g/t/#eaa0323ec4eed441b37caf96e1b136529b298dbac\n> >> where you're in the thread and the maintainer says \"queued\" for a patch\n> >> that would ignore noprefix for format-patch for this reason precisely.\n> >> But clearly not, since my patches were with noprefix=true and came out -p0.\n> >\n> > Oh, that bites again!\n> >\n> > Junio, do you still have this queued?\n> > <https://lore.kernel.org/git/xmqqy1o5op1i.fsf@gitster.g/t/#m6f42ff4f0cb2d6dd1d68f12a533d04c822b68a80>\n> \n> See 15108de2 (Merge branch 'jk/format-patch-ignore-noprefix',\n> 2023-03-21).\n\nAhhh, it seems that the OP is using a too-old version of git.  I saw at\nthe bottom of the patch 2.39.5.  But the fix was part of 2.41.0.\n\n\t$ git describe --contains ab89575387c02ea024163256826ad1c6dd2e4247\n\tv2.41.0-rc0~141^2\n\nThis seems reasonable.  наб, would you mind not using that flag unless\nyou use a recent-enough git(1) (I suspect you're on an old Debian)?  :)\n\n\talx@devuan:~/src/linux/git/main$ git show v2.41.0 | grep ^Date\n\tDate:   2023-06-01 15:28:43 +0900\n\tDate:   2023-06-01 15:28:26 +0900\n\talx@devuan:~/src/linux/git/main$ git show v2.39.5 | grep ^Date\n\tDate:   2024-05-30 17:22:58 -0700\n\tDate:   2024-05-30 16:52:52 -0700\n\talx@devuan:~/src/linux/git/main$ git show v2.39.0 | grep ^Date\n\tDate:   2022-12-12 09:59:23 +0900\n\tDate:   2022-12-12 09:59:08 +0900\n\n\nHave a lovely night!\nAlex\n\n> An aside but `format.noprefix` is not a boolean like `diff.noprefix`.\n> It will be enabled with any value.\n> \n> Is it standard to indicate this with the existing “If set,”, perhaps? Or\n> should it say “enabled with any value”?\n> \n> (+Cc Peff)\n> \n>     format.noprefix::\n>             If set, do not show any source or destination prefix in patches.\n>             This is equivalent to the `diff.noprefix` option used by `git\n>             diff` (but which is not respected by `format-patch`). Note that\n>             by setting this, the receiver of any patches you generate will\n>             have to apply them using the `-p0` option.\n\n-- \n<https://www.alejandro-colomar.es>\n"},{"id":"535703","messageId":"aYt79QGo9u9KHvNd@devuan","threadId":"64971","inReplyTo":"xmqqtsvozgi2.fsf@gitster.g","subject":"Re: [PATCH v2] futex_waitv.2: new page","fromName":"Alejandro Colomar","fromEmail":"alx@kernel.org","sentAt":"2026-02-10T18:44:32Z","receivedAt":"2026-02-10T18:44:36Z","isPatch":true,"sender":{"key":"alx@kernel.org","avatar":null},"body":"Hi Junio,\n\nOn 2026-02-10T08:54:13-0800, Junio C Hamano wrote:\n> Alejandro Colomar <alx@kernel.org> writes:\n> \n> > Junio, do you still have this queued?\n> > <https://lore.kernel.org/git/xmqqy1o5op1i.fsf@gitster.g/t/#m6f42ff4f0cb2d6dd1d68f12a533d04c822b68a80>\n> \n> Still queued??  Not very likely.\n> \n> It is a topic from almost 3 years ago, so it is either in an ancient\n> released version, or it was discarded long time ago for some issues.\n> Given that it is from Peff, it is very likely the former.\n> \n> https://git.kernel.org/pub/scm/git/git.git/commit/?h=15108de2fa0&id=15108de2fa0cd8f002a0551d14c84505a853071c    \n> \n> That's v2.41.0-rc0~141 if my \"git describe --contains\" is counting\n> correctly.\n> \n> My secretary will bill you for 30 minutes of my time and for making\n> me miss a meeting with external folks with this ;-).\n\nOhh, sorry!  :)\n\nThe problem seems to be still alive in some stable branch, probably in\noldstable distros.  I guess I'll have to deal every now and then with\nthose, depending on how many people discover diff.noprefix while still\nusing old versions.\n\n\nCheers,\nAlex\n\n-- \n<https://www.alejandro-colomar.es>\n"},{"id":"535736","messageId":"20260211073553.GA1867915@coredump.intra.peff.net","threadId":"64971","inReplyTo":"55bd6ad3-cd19-4839-a808-eceae802d3c8@app.fastmail.com","subject":"Re: [PATCH v2] futex_waitv.2: new page","fromName":"Jeff King","fromEmail":"peff@peff.net","sentAt":"2026-02-11T07:35:53Z","receivedAt":"2026-02-11T07:36:03Z","isPatch":true,"sender":{"key":"peff@peff.net","avatar":"https://avatars.githubusercontent.com/u/45925?v=4"},"body":"On Tue, Feb 10, 2026 at 04:54:02PM +0100, Kristoffer Haugsbakk wrote:\n\n> An aside but `format.noprefix` is not a boolean like `diff.noprefix`.\n> It will be enabled with any value.\n\nHuh, that's weird. Indeed, the code is:\n\n          if (!strcmp(var, \"format.noprefix\")) {\n                  format_no_prefix = 1;\n                  return 0;\n          }\n\nwhich seems just wrong. I cannot think of any other case where the\n_existence_ of a config variable determines the outcome, rather than the\nassigned value. So I would be inclined to call this a bug and switch it\nto use git_config_bool().\n\nTechnically that is not backwards-compatible, but I really think the\nexisting behavior is just a bug. It was not something intended and is\ncontrary to how the rest of Git works. Presumably nobody noticed because\nwhy in the world would you set it to false in the first place?\n\n> Is it standard to indicate this with the existing “If set,”, perhaps? Or\n> should it say “enabled with any value”?\n> \n> (+Cc Peff)\n> \n>     format.noprefix::\n>             If set, do not show any source or destination prefix in patches.\n>             This is equivalent to the `diff.noprefix` option used by `git\n>             diff` (but which is not respected by `format-patch`). Note that\n>             by setting this, the receiver of any patches you generate will\n>             have to apply them using the `-p0` option.\n\nWe usually use \"if set\" in the config documentation to refer to options\nbeing set to the true value. So I think the documentation text is OK and\nwould match the code, once fixed.\n\nKristoffer, do you want to produce a patch to fix the code? I feel like\nfinding it was 99% of the work. ;)\n\n-Peff\n"},{"id":"535740","messageId":"a9602602-5fea-40c0-a505-34133ed4d58c@app.fastmail.com","threadId":"64971","inReplyTo":"20260211073553.GA1867915@coredump.intra.peff.net","subject":"Re: [PATCH v2] futex_waitv.2: new page","fromName":"Kristoffer Haugsbakk","fromEmail":"kristofferhaugsbakk@fastmail.com","sentAt":"2026-02-11T08:15:51Z","receivedAt":"2026-02-11T08:16:12Z","isPatch":true,"sender":{"key":"kristofferhaugsbakk@fastmail.com","avatar":null},"body":"On Wed, Feb 11, 2026, at 08:35, Jeff King wrote:\n>>[snip]\n>\n> Kristoffer, do you want to produce a patch to fix the code? I feel like\n> finding it was 99% of the work. ;)\n\nSure, I want to take a look at it. :)\n"},{"id":"535779","messageId":"xmqqecmrwais.fsf@gitster.g","threadId":"64971","inReplyTo":"20260211073553.GA1867915@coredump.intra.peff.net","subject":"Re: [PATCH v2] futex_waitv.2: new page","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2026-02-11T15:43:55Z","receivedAt":"2026-02-11T15:43:57Z","isPatch":true,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Jeff King <peff@peff.net> writes:\n\n> On Tue, Feb 10, 2026 at 04:54:02PM +0100, Kristoffer Haugsbakk wrote:\n>\n>> An aside but `format.noprefix` is not a boolean like `diff.noprefix`.\n>> It will be enabled with any value.\n>\n> Huh, that's weird. Indeed, the code is:\n>\n>           if (!strcmp(var, \"format.noprefix\")) {\n>                   format_no_prefix = 1;\n>                   return 0;\n>           }\n>\n> which seems just wrong. I cannot think of any other case where the\n> _existence_ of a config variable determines the outcome, rather than the\n> assigned value. So I would be inclined to call this a bug and switch it\n> to use git_config_bool().\n\nVery true.  It is surprising that nobody noticed it during the review.\n\n\n> Technically that is not backwards-compatible, but I really think the\n> existing behavior is just a bug. It was not something intended and is\n> contrary to how the rest of Git works. Presumably nobody noticed because\n> why in the world would you set it to false in the first place?\n>\n>> Is it standard to indicate this with the existing “If set,”, perhaps? Or\n>> should it say “enabled with any value”?\n>> \n>> (+Cc Peff)\n>> \n>>     format.noprefix::\n>>             If set, do not show any source or destination prefix in patches.\n>>             This is equivalent to the `diff.noprefix` option used by `git\n>>             diff` (but which is not respected by `format-patch`). Note that\n>>             by setting this, the receiver of any patches you generate will\n>>             have to apply them using the `-p0` option.\n>\n> We usually use \"if set\" in the config documentation to refer to options\n> being set to the true value. So I think the documentation text is OK and\n> would match the code, once fixed.\n>\n> Kristoffer, do you want to produce a patch to fix the code? I feel like\n> finding it was 99% of the work. ;)\n>\n> -Peff\n"}]}