Re: [PATCH 22/43] CacheFiles: Add a hook to write a single page of data to an inode [ver #46]

From: David Howells
Date: Fri Apr 03 2009 - 09:42:22 EST


David Howells <dhowells@xxxxxxxxxx> wrote:

> + data = kmap(page);
> + old_fs = get_fs();
> + set_fs(KERNEL_DS);
> + ret = file->f_op->write(
> + file, (const void __user *) data, PAGE_SIZE,
> + &pos);
> + set_fs(old_fs);
> + kunmap(page);

Hmmm... Now I've thought about it some more, I'm not sure this is a good
idea. Can this run a system out of kmap() resources? These are run by a
dynamic thread pool, where each thread in the pool can do a kmap and issue a
write, but the write may get delayed for a significant amount of time for a
number of reasons - such as block allocation, data fetching and memory
allocation.

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