On 21-11-07 04:44, Talib Alim wrote:
Either that or somehow arrange that you'll never be passed a highmem page to
begin with as highmem pages by their nature of not being permanently mapped
do not _have_ a virtual address until after they're mapped.
How would you arrange so I am passed a higmem page ?
Assumed "not passed". Depends. As said, in the block layer it's a matter of
not telling anyone you know what highmem is. I don't know if/how other
subsystems provide for it.
On the other hand, in my logic I have to sleep. So I can do two things
1. kmap_atomic
copy all the data and
kumap_atomic
while (not all data send)
send data using my driver ...
or
2.
while (not all data send)
{
kmap_atomic
copy only needed amount of data
kunmap_atomic
send data using my driver
}
If 2 going to be slow because of mapping / unmapping multiple times ? (1 completes buffer free logic in my driver, that's why thinging about 2.)
You're going to have to decide this yourself with slow being a relative
term. The kmaps _themselves_ are not slow.
Rene.
--
To unsubscribe from this list: send an email with
"unsubscribe kernelnewbies" to ecartis@xxxxxxxxxxxx
Please read the FAQ at http://kernelnewbies.org/FAQ