mmap on a device returns ENODEV

Reid Spencer (reid@unique2u.com)
Wed, 8 Dec 1999 00:19:19 -0800


Hi,

I couldn't find a specific maintainer to send this to, so the mail list
will have to do (mmap.c was written by "obz" .. whomever that is)

I have discovered in the usual way (looking at the code) that it seems
the 2.2 kernel doesn't support mmap on devices. In the do_mmap function
(mm/mmap.c:247), ENODEV is returned if the file doesn't support the mmap
operation. This seems to be the case for block devices. It would be very
useful if block devices would support mmap because it allows disk
geometry to be factored into applications requiring high speed disk
operations. I know that this capability exists on at least Solaris and
IRIX. So, before attempting to fix this myself, I thought I'd ask the
following questions:

A) Has this been implemented anytime after my kernel release 2.2.5-15?
B) Has anyone even thought about implementing this?
C) Is there a technical reason why block devices can't be mmap'd?
D) Would someone far more knowledgeable than me like to step up to
implementing it?
E) Would someone far more knowledgeable than me provide some tips on how
it might be implemented?

Thanks in advance for your help.

Reid Spencer
Chief Technologist, PSW Technologies, Inc.

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/