* Re: [PATCH] getpriority: Only getpriority translation the priority values
[not found] <20220510220821.1481801-1-tbodt@google.com>
@ 2022-05-14 14:37 ` Alejandro Colomar
2022-05-14 15:00 ` Alejandro Colomar
2022-05-14 18:43 ` Martin Ågren
0 siblings, 2 replies; 6+ messages in thread
From: Alejandro Colomar @ 2022-05-14 14:37 UTC (permalink / raw)
To: Theodore Dubois; +Cc: linux-man, mtk.manpages, git
Hi Theodore,
On 5/11/22 00:08, Theodore Dubois wrote:
> The translation is needed to avoid returning a negative number from a
> successful syscall, and this requirement doesn't apply to setpriority.
> See the implementation of getpriority in kernel/sys.c.
>
> Signed-off-by: Theodore Dubois <tbodt@google.com>
Patch applied.
BTW, I had to manually edit the patch.
It's the second time I see this (I can't find the other one), your patch
didn't apply for the following reason: the a/ and b/ prefixes in the
file paths are missing. Did you use git-format-patch(1) to produce the
patch? Can you reproduce this?
I CCd the git mailing list in case they know what's going on.
Thanks,
Alex
> ---
> man2/getpriority.2 | 17 ++++-------------
> 1 file changed, 4 insertions(+), 13 deletions(-)
>
> diff --git man2/getpriority.2 man2/getpriority.2
Should have been:
diff --git a/man2/getpriority.2 b/man2/getpriority.2
> index 3e1be3e6c..24c1b7f11 100644
> --- man2/getpriority.2
> +++ man2/getpriority.2
Should have been:
--- a/man2/getpriority.2
+++ b/man2/getpriority.2
> @@ -206,20 +206,11 @@ All BSD-like systems (SunOS 4.1.3, Ultrix 4.2,
> manner as Linux 2.6.12 and later.
> .\"
> .SS C library/kernel differences
> -Within the kernel, nice values are actually represented
> -using the range 40..1
> -(since negative numbers are error codes) and these are the values
> -employed by the
> -.BR setpriority ()
> -and
> -.BR getpriority ()
> -system calls.
> -The glibc wrapper functions for these system calls handle the
> -translations between the user-land and kernel representations
> -of the nice value according to the formula
> +The getpriority system call returns nice values translated to the range 40..1,
> +since a negative return value would be interpreted as an error.
> +The glibc wrapper function for getpriority translates the value back according to the formula
> .IR "unice\ =\ 20\ \-\ knice" .
> -(Thus, the kernel's 40..1 range corresponds to the
> -range \-20..19 as seen by user space.)
> +(Thus, the 40..1 range returned by the kernel corresponds to the range \-20..19 as seen by user space.)
> .SH BUGS
> According to POSIX, the nice value is a per-process setting.
> However, under the current Linux/NPTL implementation of POSIX threads,
--
Alejandro Colomar
Linux man-pages comaintainer; https://www.kernel.org/doc/man-pages/
http://www.alejandro-colomar.es/
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH] getpriority: Only getpriority translation the priority values
2022-05-14 14:37 ` [PATCH] getpriority: Only getpriority translation the priority values Alejandro Colomar
@ 2022-05-14 15:00 ` Alejandro Colomar
2022-05-14 18:43 ` Martin Ågren
1 sibling, 0 replies; 6+ messages in thread
From: Alejandro Colomar @ 2022-05-14 15:00 UTC (permalink / raw)
To: Theodore Dubois; +Cc: linux-man, mtk.manpages, git, nick black
[CC += nick]
On 5/14/22 16:37, Alejandro Colomar wrote:
> Hi Theodore,
>
> On 5/11/22 00:08, Theodore Dubois wrote:
>> The translation is needed to avoid returning a negative number from a
>> successful syscall, and this requirement doesn't apply to setpriority.
>> See the implementation of getpriority in kernel/sys.c.
>>
>> Signed-off-by: Theodore Dubois <tbodt@google.com>
>
> Patch applied.
>
> BTW, I had to manually edit the patch.
> It's the second time I see this (I can't find the other one), your patch
The other one:
<https://lore.kernel.org/linux-man/809c40c4-068b-8296-57d9-024e6623362d@gmail.com/T/#u>
nick, I finally found it again!
> didn't apply for the following reason: the a/ and b/ prefixes in the
> file paths are missing. Did you use git-format-patch(1) to produce the
> patch? Can you reproduce this?
>
> I CCd the git mailing list in case they know what's going on.
>
> Thanks,
>
> Alex
>
>> ---
>> man2/getpriority.2 | 17 ++++-------------
>> 1 file changed, 4 insertions(+), 13 deletions(-)
>>
>> diff --git man2/getpriority.2 man2/getpriority.2
>
> Should have been:
> diff --git a/man2/getpriority.2 b/man2/getpriority.2
>
>> index 3e1be3e6c..24c1b7f11 100644
>> --- man2/getpriority.2
>> +++ man2/getpriority.2
>
> Should have been:
>
> --- a/man2/getpriority.2
> +++ b/man2/getpriority.2
>
>
>> @@ -206,20 +206,11 @@ All BSD-like systems (SunOS 4.1.3, Ultrix 4.2,
>> manner as Linux 2.6.12 and later.
>> .\"
>> .SS C library/kernel differences
>> -Within the kernel, nice values are actually represented
>> -using the range 40..1
>> -(since negative numbers are error codes) and these are the values
>> -employed by the
>> -.BR setpriority ()
>> -and
>> -.BR getpriority ()
>> -system calls.
>> -The glibc wrapper functions for these system calls handle the
>> -translations between the user-land and kernel representations
>> -of the nice value according to the formula
>> +The getpriority system call returns nice values translated to the
>> range 40..1,
>> +since a negative return value would be interpreted as an error.
>> +The glibc wrapper function for getpriority translates the value back
>> according to the formula
>> .IR "unice\ =\ 20\ \-\ knice" .
>> -(Thus, the kernel's 40..1 range corresponds to the
>> -range \-20..19 as seen by user space.)
>> +(Thus, the 40..1 range returned by the kernel corresponds to the
>> range \-20..19 as seen by user space.)
>> .SH BUGS
>> According to POSIX, the nice value is a per-process setting.
>> However, under the current Linux/NPTL implementation of POSIX threads,
>
--
Alejandro Colomar
Linux man-pages comaintainer; https://www.kernel.org/doc/man-pages/
http://www.alejandro-colomar.es/
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH] getpriority: Only getpriority translation the priority values
2022-05-14 14:37 ` [PATCH] getpriority: Only getpriority translation the priority values Alejandro Colomar
2022-05-14 15:00 ` Alejandro Colomar
@ 2022-05-14 18:43 ` Martin Ågren
2022-05-14 21:18 ` Alejandro Colomar
2022-05-17 17:02 ` Theodore Dubois
1 sibling, 2 replies; 6+ messages in thread
From: Martin Ågren @ 2022-05-14 18:43 UTC (permalink / raw)
To: Alejandro Colomar
Cc: Theodore Dubois, linux-man, mtk.manpages, Git Mailing List
On Sat, 14 May 2022 at 17:11, Alejandro Colomar <alx.manpages@gmail.com> wrote:
>
> BTW, I had to manually edit the patch.
> It's the second time I see this (I can't find the other one), your patch
> didn't apply for the following reason: the a/ and b/ prefixes in the
> file paths are missing. Did you use git-format-patch(1) to produce the
> patch? Can you reproduce this?
>
> I CCd the git mailing list in case they know what's going on.
Sounds like `git format-patch --no-prefix` at play. Or more likely, that
the `diff.noprefix` config is on. I don't think it can be cancelled out
by a `--no-no-prefix`, unfortunately. If a script is involved in running
`git format-patch`, maybe it's not too tedious to make it do
git -c diff.noprefix=no format-patch ...
to cancel the config. (If that config really does want to be on, that
is.)
That said, something like
git am -p0 ...
should help on the receiving side, by way of skipping fewer path
components when applying the patch.
Martin
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH] getpriority: Only getpriority translation the priority values
2022-05-14 18:43 ` Martin Ågren
@ 2022-05-14 21:18 ` Alejandro Colomar
2022-05-17 17:02 ` Theodore Dubois
1 sibling, 0 replies; 6+ messages in thread
From: Alejandro Colomar @ 2022-05-14 21:18 UTC (permalink / raw)
To: Martin Ågren
Cc: Theodore Dubois, linux-man, mtk.manpages, Git Mailing List
Hi Martin,
On 5/14/22 20:43, Martin Ågren wrote:
> That said, something like
>
> git am -p0 ...
>
> should help on the receiving side, by way of skipping fewer path
> components when applying the patch.
That works for me.
Thanks!
Alex
--
Alejandro Colomar
Linux man-pages comaintainer; https://www.kernel.org/doc/man-pages/
http://www.alejandro-colomar.es/
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH] getpriority: Only getpriority translation the priority values
2022-05-14 18:43 ` Martin Ågren
2022-05-14 21:18 ` Alejandro Colomar
@ 2022-05-17 17:02 ` Theodore Dubois
2022-05-18 17:21 ` Perhaps we want {diff,log,format}.noprefix and friends? Junio C Hamano
1 sibling, 1 reply; 6+ messages in thread
From: Theodore Dubois @ 2022-05-17 17:02 UTC (permalink / raw)
To: Martin Ågren
Cc: Alejandro Colomar, linux-man, mtk.manpages, Git Mailing List
Yep, I have diff.noprefix on.
~Theodore
On Sat, May 14, 2022 at 11:43 AM Martin Ågren <martin.agren@gmail.com> wrote:
>
> On Sat, 14 May 2022 at 17:11, Alejandro Colomar <alx.manpages@gmail.com> wrote:
> >
> > BTW, I had to manually edit the patch.
> > It's the second time I see this (I can't find the other one), your patch
> > didn't apply for the following reason: the a/ and b/ prefixes in the
> > file paths are missing. Did you use git-format-patch(1) to produce the
> > patch? Can you reproduce this?
> >
> > I CCd the git mailing list in case they know what's going on.
>
> Sounds like `git format-patch --no-prefix` at play. Or more likely, that
> the `diff.noprefix` config is on. I don't think it can be cancelled out
> by a `--no-no-prefix`, unfortunately. If a script is involved in running
> `git format-patch`, maybe it's not too tedious to make it do
>
> git -c diff.noprefix=no format-patch ...
>
> to cancel the config. (If that config really does want to be on, that
> is.)
>
> That said, something like
>
> git am -p0 ...
>
> should help on the receiving side, by way of skipping fewer path
> components when applying the patch.
>
> Martin
^ permalink raw reply [flat|nested] 6+ messages in thread
* Perhaps we want {diff,log,format}.noprefix and friends?
2022-05-17 17:02 ` Theodore Dubois
@ 2022-05-18 17:21 ` Junio C Hamano
0 siblings, 0 replies; 6+ messages in thread
From: Junio C Hamano @ 2022-05-18 17:21 UTC (permalink / raw)
To: git
>> git -c diff.noprefix=no format-patch ...
>>
>> to cancel the config. (If that config really does want to be on, that
>> is.)
>>
>> That said, something like
>>
>> git am -p0 ...
>>
>> should help on the receiving side, by way of skipping fewer path
>> components when applying the patch.
While it is very reasonable for end-users to make the output of
their local "git diff" output to their taste by setting the
diff.noprefix and other configuration options in the diff.*
namespace, it is wrong to inflict such a personal preference on
other project participants by sending such a no-prefix patch via
"git format-patch", when the convention at the receiving project is
to use "git am -p1" to accept them.
We would need to tweak the configuration system so that we can more
easily introduce "format.noprefix" that overrides "diff.noprefix"
only when the command being run is "git format-patch", perhaps?
As things stand, we could teach builtin/log.c::git_format_config()
about "format.noprefix" and make "git format-patch" pay attention to
that in addition to "diff.noprefix" fairly easily, but such an
approach poorly scales. When a new configuration gets introduced in
diff.c::git_diff_ui_config(), builtin/log.c::git_format_config()
would also need to be updated.
I initially started writing this with "left over bits" mark, but it
seems it is a bit larger in scope than that.
I also noticed that some format.* configuration variables are parsed
in git_log_config(), not git_format_config(), so "git log" would end
up honoring format.pretty and format.subjectprefix, etc., which look
wrong but probably is way too late to "fix".
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2022-05-18 17:32 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
[not found] <20220510220821.1481801-1-tbodt@google.com>
2022-05-14 14:37 ` [PATCH] getpriority: Only getpriority translation the priority values Alejandro Colomar
2022-05-14 15:00 ` Alejandro Colomar
2022-05-14 18:43 ` Martin Ågren
2022-05-14 21:18 ` Alejandro Colomar
2022-05-17 17:02 ` Theodore Dubois
2022-05-18 17:21 ` Perhaps we want {diff,log,format}.noprefix and friends? Junio C Hamano
Code repositories for project(s) associated with this public inbox
https://80x24.org/mirrors/git.git
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 read-only IMAP folder(s) and NNTP newsgroup(s).