Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 22 Sep 2012 20:46:13 +0300
From:      Andriy Gapon <avg@FreeBSD.org>
To:        freebsd-hackers <freebsd-hackers@FreeBSD.org>
Subject:   Re: cpu_spinwait in cngetc
Message-ID:  <505DF965.2020506@FreeBSD.org>
In-Reply-To: <50587635.8070007@FreeBSD.org>
References:  <50587635.8070007@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
on 18/09/2012 16:25 Andriy Gapon said the following:
> 
> (Why[*]) Would anyone object to a change like this?
> 
> diff --git a/sys/kern/kern_cons.c b/sys/kern/kern_cons.c
> index 5346bc3..d17846a 100644
> --- a/sys/kern/kern_cons.c
> +++ b/sys/kern/kern_cons.c
> @@ -384,7 +384,7 @@ cngetc(void)
>  	if (cn_mute)
>  		return (-1);
>  	while ((c = cncheckc()) == -1)
> -		;
> +		cpu_spinwait();
>  	if (c == '\r')
>  		c = '\n';		/* console input is always ICRNL */
>  	return (c);
> 
> [*] :-)
> 

I would to re-ping with this question.
Is there any architecture where a cpu_spinwait could cause a surprise?
Or is universally safe?

The most visible place which this change can affect is ddb prompt.


-- 
Andriy Gapon



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?505DF965.2020506>