From owner-freebsd-current Sun Jan 31 02:27:48 1999 Return-Path: Received: (from majordom@localhost) by hub.freebsd.org (8.8.8/8.8.8) id CAA07335 for freebsd-current-outgoing; Sun, 31 Jan 1999 02:27:48 -0800 (PST) (envelope-from owner-freebsd-current@FreeBSD.ORG) Received: from hda.hda.com (hda-bicnet.bicnet.net [209.244.238.132] (may be forged)) by hub.freebsd.org (8.8.8/8.8.8) with ESMTP id CAA07330 for ; Sun, 31 Jan 1999 02:27:46 -0800 (PST) (envelope-from dufault@hda.hda.com) Received: (from dufault@localhost) by hda.hda.com (8.8.5/8.8.5) id FAA21322; Sun, 31 Jan 1999 05:22:03 -0500 (EST) From: Peter Dufault Message-Id: <199901311022.FAA21322@hda.hda.com> Subject: more about yield() versus sched_yield() To: current@FreeBSD.ORG Date: Sun, 31 Jan 1999 05:22:03 -0500 (EST) Cc: bde@zeta.org.au X-Mailer: ELM [version 2.4ME+ PL25 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-freebsd-current@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG > I've got a synch_yield() in kern_synch and a call into it from yield() > in kern_thread that duplicates the yield() behavior for the non-RTPRIO, > non-sched_yield() condition. synch_yield() also KASSERTS > that p == curproc since nothing else makes sense. While we're discussing yield here's a question. The difference between yield() and sched_yield() is that yield unconditionally yields while sched_yield() won't if you are the highest priority process and the only process in your run queue. Does anyone know the reuirements on yield() and would it continue to function for us if it worked the same as sched_yield()? Peter -- Peter Dufault (dufault@hda.com) Realtime development, Machine control, HD Associates, Inc. Safety critical systems, Agency approval To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message