lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Fri, 24 Oct 2008 15:18:55 -0700
From:	Mike Travis <travis@....com>
To:	Andi Kleen <andi@...stfloor.org>
CC:	Ingo Molnar <mingo@...e.hu>, Pavel Machek <pavel@...e.cz>,
	Rusty Russell <rusty@...tcorp.com.au>,
	Andrew Morton <akpm@...ux-foundation.org>,
	Thomas Gleixner <tglx@...utronix.de>,
	Jack Steiner <steiner@....com>,
	"H. Peter Anvin" <hpa@...or.com>,
	Richard Purdie <rpurdie@...ys.net>,
	LKML <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH 1/1] SGI X86 UV: Provide a System Activity Indicator	driver

Andi Kleen wrote:
> Mike Travis <travis@....com> writes:
>> I do use the timer mechanism (once per second) to update the scir state.
>> Unfortunately, the state is *always* not idle during the timer callback
>> (since we are actively executing), so I needed some way of knowing the
>> idle state prior to the timer callback.
> 
> The idle thread always has pid 0. So if the timer sees current->pid == 0
> it interrupted idle.
> 
> But sampling only once a second would be presumably not very accurate.
> You could just check the per cpu statistics the kernel keeps
> anyways in the timer.
> 
> I agree with Ingo that this doesn't belong in a idle notifier.
> 
> -Andi

Cool, thanks!  I rewrote the patch to use current->pid, removing the
idle callback.

On ia64 the activity indicator was kept up to date by modifying the
register state every time the cpu went into and out of idle.  Ingo
thought this was excessive I/O overhead and since then, I've learned
that the UV system has a FIFO for these registers.  So flipping the
bit every time we changed idle state would quickly fill the FIFO and
wouldn't be keeping in sync with the companion bit which indicates
that the cpu is interruptible.

So the hw group decided that having a once per second indicator, even
if it's only a very narrow (instant) sampling period, would meet their 
requirements.

Thanks!
Mike
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ