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]
Message-ID: <Pine.LNX.4.64.0702141321200.20368@woody.linux-foundation.org>
Date:	Wed, 14 Feb 2007 13:26:23 -0800 (PST)
From:	Linus Torvalds <torvalds@...ux-foundation.org>
To:	Ingo Molnar <mingo@...e.hu>
cc:	Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
	Arjan van de Ven <arjan@...radead.org>,
	Christoph Hellwig <hch@...radead.org>,
	Andrew Morton <akpm@....com.au>,
	Alan Cox <alan@...rguk.ukuu.org.uk>,
	Ulrich Drepper <drepper@...hat.com>,
	Zach Brown <zach.brown@...cle.com>,
	Evgeniy Polyakov <johnpol@....mipt.ru>,
	"David S. Miller" <davem@...emloft.net>,
	Benjamin LaHaise <bcrl@...ck.org>,
	Suparna Bhattacharya <suparna@...ibm.com>,
	Davide Libenzi <davidel@...ilserver.org>,
	Thomas Gleixner <tglx@...utronix.de>
Subject: Re: [patch 05/11] syslets: core code



On Wed, 14 Feb 2007, Ingo Molnar wrote:
> 
> hm, there must be some misunderstanding here. That mlock is /only/ once 
> per the lifetime of the whole 'head' - i.e. per sys_async_register(). 
> (And you can even forget i ever did it - it's 5 lines of code to turn 
> the completion ring into a swappable entity.)

But the whole point is that the notion of a "register" is wrong in the 
first place. It's wrong because:

 - it assumes we are going to make these complex state machines (which I 
   don't believe for a second that a real program will do)

 - it assumes that we're going to make many async system calls that go 
   together (which breaks the whole notion of having different libraries 
   using this for their own internal reasons - they may not even *know* 
   about other libraries that _also_ do async IO for *their* reasons)

 - it fundamentally is based on a broken notion that everything would use 
   this "AIO atom" in the first place, WHICH WE KNOW IS INCORRECT, since 
   current users use "aio_read()" that simply doesn't have that and 
   doesn't build up any such data structures.

So please answer my questions. The problem wasn't the mlock(), even though 
that was just STUPID. The problem was much deeper. This is not a "prepare 
to do a lot of very boutique linked list operations" problem. This is a 
"people already use 'aio_read()' and want to extend on it" problem.

You didn't at all react to that fundamental issue: you have an overly 
complex and clever thing that doesn't actually *match* what people do.

			Linus
-
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