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:	Mon, 05 Mar 2007 11:02:43 +0000
From:	Pádraig Brady <P@...igBrady.com>
To:	Andrew Morton <akpm@...ux-foundation.org>
CC:	linux-kernel@...r.kernel.org
Subject: Re: userspace pagecache management tool

Andrew Morton wrote:
> I've uploaded to http://userweb.kernel.org/~akpm/pagecache-management/ a
> little tool which permits the management of the pagecache usage of
> arbitrary applications.  Effectively it prevents the targetted application
> from using any pagecache at all.

Cool, Kinda like noca?
http://kernel.umbrella.ro/vm/
Though I could easily read your code,
but couldn't immediately figure out what noca was doing.

I used posix_fadvise in an app I did recently:
http://www.pixelbeat.org/programs/dvd-vr/
There is a stream_data() func there that does:

read(src)
write(dst)
posix_fadvise(src)
posix_fadvise(dst)

for performance I found I needed to do it in that order
so that any readahead done with the read(src)
was not thrown away by the posix_fadvise(src).
In addition to the order, one must be careful
to throw away only what you've actually written.

I'm not sure your lib gives enough control over this,
as you essentially do:

posix_fadvise(src)
read(src)
posix_fadvise(dst)
write(dst)

cheers,
Pádraig.
-
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