[PATCH] Export tiny shmem_file_setup for DRM-GEM

From: Hugh Dickins
Date: Sun Oct 19 2008 - 07:53:28 EST

We're trying to keep the !CONFIG_SHMEM tiny-shmem.c (using ramfs without
swap) in synch with CONFIG_SHMEM shmem.c (and mpm is preparing patches
to combine them). I was glad to see EXPORT_SYMBOL_GPL(shmem_file_setup)
go into shmem.c, but why not support DRM-GEM when !CONFIG_SHMEM too?
But caution says still depend on MMU, since !CONFIG_MMU is.. different.

Signed-off-by: Hugh Dickins <hugh@xxxxxxxxxxx>
I should admit that I've not actually tested this patch,
but can't imagine why it would be a problem: if you gobble
up too much RAM, well, that's just life with tiny-shmem.

I did promise a patch to make read_mapping_page() return -EINVAL instead
of oopsing when the underlying filesystem doesn't support it. But that
was when people were trying to persuade GEM to map files on whatever fs:
I can't now see the point of such a patch while you're known to be on
tmpfs or ramfs, and intending later to use a new interface from Nick.

drivers/gpu/drm/Kconfig | 2 +-
mm/tiny-shmem.c | 1 +
2 files changed, 2 insertions(+), 1 deletion(-)

--- a/drivers/gpu/drm/Kconfig
+++ b/drivers/gpu/drm/Kconfig
@@ -6,7 +6,7 @@
menuconfig DRM
tristate "Direct Rendering Manager (XFree86 4.1.0 and higher DRI support)"
- depends on (AGP || AGP=n) && PCI && !EMULATED_CMPXCHG && SHMEM
+ depends on (AGP || AGP=n) && PCI && !EMULATED_CMPXCHG && MMU
Kernel-level support for the Direct Rendering Infrastructure (DRI)
introduced in XFree86 4.0. If you say Y here, you need to select
--- a/mm/tiny-shmem.c
+++ b/mm/tiny-shmem.c
@@ -95,6 +95,7 @@ put_dentry:
return ERR_PTR(error);

* shmem_zero_setup - setup a shared anonymous mapping
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/