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: <4981E7BD.3040507@nerdgrounds.com>
Date:	Thu, 29 Jan 2009 09:30:37 -0800
From:	Jonathan Campbell <jon@...dgrounds.com>
To:	"Peter W. Morreale" <pmorreale@...ell.com>
CC:	"H. Peter Anvin" <hpa@...or.com>, devel@...verdev.osuosl.org,
	Linux Kernel List <linux-kernel@...r.kernel.org>
Subject: Re: Vramfs: filesystem driver to utilize extra RAM on VGA devices

Every VGA device connected to the PCI bus has resources that are known 
to the Linux kernel. One of the memory resources is the video RAM 
(always the largest prefetchable resource listed), with the base and 
length known to the PCI subsystem. So, all vramfs needs on mount is the 
PCI device, and the mountpoint, and it can dole it out to userspace. 
Reading and writing is handled with ioremap(). mmap() is handled by 
directly mmaping() that VRAM into user-space (just like /dev/fb0). Files 
are recorded in system memory as a list of entities with a starting 
block and length, so no fragmentation is possible.

No communication with the GPU is needed to do this, it's possible to use 
VRAM this way even on devices that nobody in the system knows how to 
talk to.
> How do you accomplish that? 
>
> (I haven't yet looked at your code...)
>
> -PWM
>
>   

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