Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 21 Jan 2000 08:08:26 -0500 (EST)
From:      Michael Bacarella <mbac@nyct.net>
To:        Seigo Tanimura <tanimura@r.dl.itc.u-tokyo.ac.jp>
Cc:        smp@FreeBSD.ORG, hackers@FreeBSD.ORG
Subject:   Re: Using spinning time efficiently?
Message-ID:  <Pine.BSF.4.05.10001210801110.5728-100000@bsd1.nyct.net>
In-Reply-To: <14472.10247.374655.13283E@rina.r.dl.itc.u-tokyo.ac.jp>

next in thread | previous in thread | raw e-mail | index | archive | help

> I once thought something might be wrong, and then found
> (ALT)SYSCALL_LOCK spinning to wait for the lock to be released. Now I
> am wondering if we can contribute spinning time to anything else, say
> running another process, before the lock gets released. Is is possible
> to do so?

I'm the last person who you'd speak to for an authoritative answer to a
FreeBSD question, but I'll try fielding it.

What version of FreeBSD?

Your kernel might be spinlocking other processes out because the kernel
isn't totally re-entrant. Yet. Version number here might be significant.

At least, this is the only reason I can think of for spinlocking away at
syscall entry.

In such a case, recognizing this situation and then just deciding to run
another process instead of spinning away helplessly wouldn't do much good.
To run another process, it'd need to enter the kernel and select one.
That's still the same problem.

-MB



To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-smp" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.BSF.4.05.10001210801110.5728-100000>