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 for Android: free password hash cracker in your pocket
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Mon, 29 Jun 2009 07:34:34 -0700 (PDT)
From:	Dan Magenheimer <dan.magenheimer@...cle.com>
To:	Pavel Machek <pavel@....cz>
Cc:	linux-kernel@...r.kernel.org, xen-devel@...ts.xensource.com,
	npiggin@...e.de, chris.mason@...cle.com, kurt.hackel@...cle.com,
	dave.mccracken@...cle.com, Avi Kivity <avi@...hat.com>,
	jeremy@...p.org, Rik van Riel <riel@...hat.com>,
	alan@...rguk.ukuu.org.uk, Rusty Russell <rusty@...tcorp.com.au>,
	Martin Schwidefsky <schwidefsky@...ibm.com>, akpm@...l.org,
	Marcelo Tosatti <mtosatti@...hat.com>,
	Balbir Singh <balbir@...ux.vnet.ibm.com>,
	tmem-devel@....oracle.com, sunil.mushran@...cle.com,
	linux-mm@...ck.org, Himanshu Raj <rhim@...rosoft.com>
Subject: RE: [RFC] transcendent memory for Linux

Hi Pavel --

Thanks for the feedback!

> This description (whole mail) needs to go into 
> Documentation/, somewhere. 

Good idea.  I'll do that for the next time I post the patches.

> > Normal memory is directly addressable by the kernel,
> > of a known normally-fixed size, synchronously accessible,
> > and persistent (though not across a reboot).
> ...
> > Transcendent memory, or "tmem" for short, provides a
> > well-defined API to access this unusual class of memory.
> > The basic operations are page-copy-based and use a flexible
> > object-oriented addressing mechanism.  Tmem assumes
> 
> Should this API be documented, somewhere? Is it in-kernel API or does
> userland see it?

It is documented currently at:

http://oss.oracle.com/projects/tmem/documentation/api/

(just noticed I still haven't posted version 0.0.2 which
has a few minor changes).

I will add a briefer description of this API in Documentation/

It is in-kernel only because some of the operations have
a parameter that is a physical page frame number.

> > "Preswap" IS persistent, but for various reasons may not always
> > be available for use, again due to factors that may not be
> > visible to the kernel (but, briefly, if the kernel is being
> > "good" and has shared its resources nicely, then it will be
> > able to use preswap, else it will not).  Once a page is put,
> > a get on the page will always succeed.  So when the kernel
> > finds itself in a situation where it needs to swap out a page,
> > it first attempts to use preswap.  If the put works, a disk
> > write and (usually) a disk read are avoided.  If it doesn't,
> > the page is written to swap as usual.  Unlike precache, whether
> 
> Ok, how much slower this gets in the worst case? Single hypercall to
> find out that preswap is unavailable? I guess that compared to disk
> access that's lost in the noise?

Yes, the overhead of one hypercall per swap page is lost in
the noise.

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