Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Sat, 10 Mar 2012 16:36:12 -0800
From: Linus Torvalds <>
To: Djalal Harouni <>
	Andrew Morton <>, Al Viro <>, 
	Alexey Dobriyan <>, "Eric W. Biederman" <>, 
	Vasiliy Kulikov <>, Kees Cook <>, 
	Solar Designer <>, WANG Cong <>, 
	James Morris <>, Oleg Nesterov <>,,, 
	Alan Cox <>, Greg KH <>, 
	Ingo Molnar <>, Stephen Wilson <>, "Jason A. Donenfeld" <>
Subject: Re: [PATCH 1/9] exec: add a global execve counter

On Sat, Mar 10, 2012 at 4:12 PM, Linus Torvalds
<> wrote:
> I wonder if we couldn't make something much cheaper, since we don't
> actually care about it being globally incrementing, we just care about
> it being globally unique.

Actually, we don't even need it to be "globally unique" afaik. It
really needs to be "relatively unique", since it's always compared
within the confines of a particular task.

So the problem with using the existing "self_exec_id" is that it's
trivially the same across tasks. But a  *tuple* of <struct
task_struct, thread-specific exec_id> doesn't have that issue, so as
far as I can tell we could easily make *that* the unique ID.

I wonder if the number part of exec_id would even have to be 64-bit. I
think I can do about 10000 execves per second if I make the program a
small static one - and that's on a fast CPU. And it's a per-thread
counter, so you can't scale it with lots of CPU's. So it would take
something like four days to wrap. Hmm..


Powered by blists - more mailing lists

Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.