Email List: Xaustin-review-lX
[All Lists]

Re: Defect in XSH sched_yield

To: yyyyyyyyyyyyyyy@xxxxxxxxxxxxx
Subject: Re: Defect in XSH sched_yield
From: Joe Gwinn <yyyyy@xxxxxxxxxxxx>
Date: Mon, 16 Jan 2006 11:26:04 -0500
Cc: yyyyyyyyyyyyyyyyyyy@xxxxxxxx
References: <200601141844.SAA09338@xxxxxx>
At 01:44 PM 1/14/2006, yyy@xxxxxxxxx wrote:
Defect report from : Howard Chu , Symas Corp.

(Please direct followup comments direct to yyyyyyyyyyyyyy@xxxxxxxxxxxxx)

@ page 0 line 0 section sched_yield objection {1}

Problem:

Edition of Specification (Year): 2004

Defect code : 2. Omission

This function is marked as belonging to both the Processor Scheduling feature group and the Threads feature group. The Description of this function reads:

The sched_yield() function shall force the running thread to relinquish the processor until it again becomes the head of its thread list. It takes no arguments.

However, the concept of thread lists is only defined within the context of Process Scheduling, which is an optional group. If a system implements the Threads feature group without the Process Scheduling group, then the definition/description has no meaning.

Action:

Either the Process Scheduling feature is a required feature when Threads are implemented, or a definition of this function needs to be expressed independently of the "thread list" concept for cases where thread lists are not applicable.
Two places where threads are defined in the absence of processes are the smaller two profiles (PSE51 and PSE52) of 1003.13, where the whole computer is considered a single implicit process. So, to not interfere with these profiles, sched_yield belongs with Threads, but is optional in Process Sceduling.

Joe
<Prev in Thread] Current Thread [Next in Thread>