Re: need for mmap?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, 2007-03-21 at 09:37 +0530, Daniel Rodrick wrote:
> Hi list,
> 
> I'm a newbie, and I just read about the mmap system call. I have a
> very basic confusion regarding why would a driver ever want to
> implement mmap.
> 
> 1) The purpose of mmap is to map the device memory to user space
> programs, right? Isn't that alreay available via /dev/mem?

no /dev/mem doesn't allow convenient access to scatter-gather memory etc
while your own mmap can make the memory look linear


> 2) Is it that mmapping /dev/mem works only for memory (RAM)? Are all
> physical addresses not available via /dev/mem?

 /dev/mem is a HORRIBLE interface, and it won't work in the future or
even today on some machines.
The reason for this is that this interface doesn't tell the kernel what
device you want to talk to, so there is no way the kernel can set up the
IOMMU correctly to allow access to the memory. Today only high end
machines have an IOMMU, but I suspect that within a few years all PCs
will have one as well....

-- 
if you want to mail me at work (you don't), use arjan (at) linux.intel.com
Test the interaction between Linux and your BIOS via http://www.linuxfirmwarekit.org


--
To unsubscribe from this list: send an email with
"unsubscribe kernelnewbies" to ecartis@xxxxxxxxxxxx
Please read the FAQ at http://kernelnewbies.org/FAQ


[Index of Archives]     [Newbies FAQ]     [Linux Kernel Mentors]     [Linux Kernel Development]     [IETF Annouce]     [Git]     [Networking]     [Security]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux SCSI]     [Linux ACPI]
  Powered by Linux