GNU bug report logs -
#11437
nice: tests: please disable on hurd-i386
Previous Next
To reply to this bug, email your comments to 11437 AT debbugs.gnu.org.
Toggle the display of automated, internal messages from the tracker.
Report forwarded
to
bug-coreutils <at> gnu.org
:
bug#11437
; Package
coreutils
.
(Tue, 08 May 2012 18:43:02 GMT)
Full text and
rfc822 format available.
Acknowledgement sent
to
Samuel Thibault <samuel.thibault <at> gnu.org>
:
New bug report received and forwarded. Copy sent to
bug-coreutils <at> gnu.org
.
(Tue, 08 May 2012 18:43:02 GMT)
Full text and
rfc822 format available.
Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
(From http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=670477 )
Hello,
The misc/nice test currently fails on hurd-i386 because the nice support
there is not precise enough: the Mach kernel, which handles scheduling
priorities, has only 32 priority levels, and not 40, so conversion is
used, but that becomes not precise enough for the misc/nice test. Apart
from that, the nice tool works fine. Could you disable that test on
hurd-i386?
Samuel
Information forwarded
to
bug-coreutils <at> gnu.org
:
bug#11437
; Package
coreutils
.
(Tue, 08 May 2012 18:57:02 GMT)
Full text and
rfc822 format available.
Message #8 received at 11437 <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
On 05/08/2012 12:39 PM, Samuel Thibault wrote:
> (From http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=670477 )
>
> Hello,
>
> The misc/nice test currently fails on hurd-i386 because the nice support
> there is not precise enough: the Mach kernel, which handles scheduling
> priorities, has only 32 priority levels, and not 40, so conversion is
> used, but that becomes not precise enough for the misc/nice test. Apart
> from that, the nice tool works fine. Could you disable that test on
> hurd-i386?
What is the mapping between the kernel's 32 levels and the
POSIX-mandated minimum of 40 niceness levels (that is, which niceness
levels are rounded to a neighbor)? Can we rewrite the test to use just
niceness levels provided by Hurd? Would it be any simpler if Hurd were
to define NZERO as 32, and provide only even niceness values? In fact,
if you could track 64 niceness levels, and just have every pair of
niceness levels map to the kernel priorities, then you would be
POSIX-compliant (POSIX doesn't require that niceness level 0 and 1 have
any difference in scheduling, only that you can have niceness levels
between 0 and 2*NZERO-1).
In other words, I'm proposing:
NZERO=32
Niceness Kernel priority
-32 0
-31 0
-30 1
-29 1
...
0 16
1 16
2 17
...
29 30
30 31
31 31
(assuming kernel priority is like niceness, where a lower number is
higher priority)
If you make that fix to Hurd, then the mapping will just work, and
coreutils will start passing the test.
--
Eric Blake eblake <at> redhat.com +1-919-301-3266
Libvirt virtualization library http://libvirt.org
[signature.asc (application/pgp-signature, attachment)]
Information forwarded
to
bug-coreutils <at> gnu.org
:
bug#11437
; Package
coreutils
.
(Sat, 12 May 2012 15:19:01 GMT)
Full text and
rfc822 format available.
Message #11 received at 11437 <at> debbugs.gnu.org (full text, mbox):
Eric Blake, le Tue 08 May 2012 12:54:08 -0600, a écrit :
> On 05/08/2012 12:39 PM, Samuel Thibault wrote:
> > The misc/nice test currently fails on hurd-i386 because the nice support
> > there is not precise enough: the Mach kernel, which handles scheduling
> > priorities, has only 32 priority levels, and not 40, so conversion is
> > used, but that becomes not precise enough for the misc/nice test. Apart
> > from that, the nice tool works fine. Could you disable that test on
> > hurd-i386?
>
> What is the mapping between the kernel's 32 levels and the
> POSIX-mandated minimum of 40 niceness levels (that is, which niceness
> levels are rounded to a neighbor)? Can we rewrite the test to use just
> niceness levels provided by Hurd?
It's a simple factor 2:
#define MACH_PRIORITY_TO_NICE(prio) (2 * ((prio) - 12))
#define NICE_TO_MACH_PRIORITY(nice) (12 + ((nice) / 2))
> In fact,
> if you could track 64 niceness levels, and just have every pair of
> niceness levels map to the kernel priorities, then you would be
> POSIX-compliant (POSIX doesn't require that niceness level 0 and 1 have
> any difference in scheduling, only that you can have niceness levels
> between 0 and 2*NZERO-1).
Right, but that'd means that libc has to remember all priorities, to
be able to return them, including other processes (it's not only about
nice, but also get/setpriority).
OTOH, we could as well extend mach's priorities to 40 levels and change
the mappping. The only issue with that is that when using a patched libc
(using >32 priority values) with a non-patched kernel (refusing them),
some nice values will be refused by kernel. Maybe we can consider it's
not a problem that people have to upgrade their kernel to fix it.
Samuel
Information forwarded
to
bug-coreutils <at> gnu.org
:
bug#11437
; Package
coreutils
.
(Mon, 15 Oct 2018 16:57:01 GMT)
Full text and
rfc822 format available.
Message #14 received at 11437 <at> debbugs.gnu.org (full text, mbox):
severity 11437 wishlist
retitle 11437 nice: tests: please disable on hurd-i386
stop
(triaging old bugs)
On 08/05/12 12:54 PM, Eric Blake wrote:
> On 05/08/2012 12:39 PM, Samuel Thibault wrote:
>>
>> The misc/nice test currently fails on hurd-i386 because the nice support
>> there is not precise enough
[...]
> If you make that fix to Hurd, then the mapping will just work, and
> coreutils will start passing the test.
Some years later, 'misc/nice' still fails on hurd:
https://lists.gnu.org/archive/html/coreutils/2016-11/msg00102.html
So marking this as a "wishlist" item.
-assaf
Severity set to 'wishlist' from 'normal'
Request was from
Assaf Gordon <assafgordon <at> gmail.com>
to
control <at> debbugs.gnu.org
.
(Mon, 15 Oct 2018 16:57:02 GMT)
Full text and
rfc822 format available.
Changed bug title to 'nice: tests: please disable on hurd-i386' from 'coreutils: Please disable misc/nice test on hurd-i386]'
Request was from
Assaf Gordon <assafgordon <at> gmail.com>
to
control <at> debbugs.gnu.org
.
(Mon, 15 Oct 2018 16:57:02 GMT)
Full text and
rfc822 format available.
This bug report was last modified 6 years and 327 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.