NetBSD Problem Report #38751

From martin@duskware.de  Sun May 25 22:34:16 2008
Return-Path: <martin@duskware.de>
Received: from mail.netbsd.org (mail.netbsd.org [204.152.190.11])
	by narn.NetBSD.org (Postfix) with ESMTP id 937B263BAB2
	for <gnats-bugs@gnats.netbsd.org>; Sun, 25 May 2008 22:34:16 +0000 (UTC)
Message-Id: <20080525221631.6791D63BA68@narn.NetBSD.org>
Date: Sun, 25 May 2008 22:16:31 +0000 (UTC)
From: ad@netbsd.org
Reply-To: ad@netbsd.org
To: netbsd-bugs-owner@NetBSD.org
Subject: sched_rr_get_interval() doesn't tell the truth
X-Send-Pr-Version: www-1.0

>Number:         38751
>Category:       kern
>Synopsis:       sched_rr_get_interval() doesn't tell the truth
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    kern-bug-people
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Sun May 25 22:35:00 +0000 2008
>Last-Modified:  Sun Oct 06 16:11:00 +0000 2019
>Originator:     Andrew Doran
>Release:        4.99.63
>Organization:
The NetBSD Project
>Environment:
n/a
>Description:
sched_rr_get_interval leans on sysconf:

int
sched_rr_get_interval(pid_t pid, struct timespec *interval)
{

        interval->tv_sec = 0;
        interval->tv_nsec = sysconf(_SC_SCHED_RT_TS) * 1000;
        return 0;
}
...
        case _SC_SCHED_RT_TS:
                if (sysctlgetmibinfo("kern.sched.rtts", ....

On my system:

$ sysctl kern.sched.rtts
kern.sched.rtts = 100

So we appear to be reporting timeslices of 100us, when the real
figure is probably closer to 62500us, because the preemption is
driven by sched_tick().

>How-To-Repeat:
Code inspection.
>Fix:
- Preempt SCHED_RR threads on every hardclock() tick.
- Ensure that we report the correct value to applications.


>Release-Note:

>Audit-Trail:

Responsible-Changed-From-To: kern-bug-people->rmind
Responsible-Changed-By: rmind@NetBSD.org
Responsible-Changed-When: Mon, 09 Nov 2009 06:35:11 +0000
Responsible-Changed-Why:
Take.


Responsible-Changed-From-To: rmind->kern-bug-people
Responsible-Changed-By: rmind@NetBSD.org
Responsible-Changed-When: Sun, 06 Oct 2019 16:11:00 +0000
Responsible-Changed-Why:


>Unformatted:

NetBSD Home
NetBSD PR Database Search

(Contact us) $NetBSD: query-full-pr,v 1.39 2013/11/01 18:47:49 spz Exp $
$NetBSD: gnats_config.sh,v 1.9 2014/08/02 14:16:04 spz Exp $
Copyright © 1994-2007 The NetBSD Foundation, Inc. ALL RIGHTS RESERVED.