Nick Piggin 4b19de6d1c mm: tiny-shmem nommu fix
The previous patch db203d53d474aa068984e409d807628f5841da1b ("mm:
tiny-shmem fix lock ordering: mmap_sem vs i_mutex") to fix the lock
ordering in tiny-shmem breaks shared anonymous and IPC memory on NOMMU
architectures because it was using the expanding truncate to signal ramfs
to allocate a physically contiguous RAM backing the inode (otherwise it is
unusable for "memory mapping" it to userspace).

However do_truncate is what caused the lock ordering error, due to it
taking i_mutex.  In this case, we can actually just call ramfs directly to
allocate memory for the mapping, rather than go via truncate.

Acked-by: David Howells <dhowells@redhat.com>
Acked-by: Hugh Dickins <hugh@veritas.com>
Signed-off-by: Nick Piggin <npiggin@suse.de>
Cc: Matt Mackall <mpm@selenic.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2008-10-02 15:53:13 -07:00
..
2008-08-04 21:31:34 -07:00
2008-09-13 14:41:51 -07:00
2008-08-20 15:40:32 -07:00
2008-08-01 11:25:29 -04:00
2008-08-13 12:47:36 -05:00
2008-08-25 01:18:04 -04:00
2008-04-29 08:06:00 -07:00
2008-07-26 20:53:40 -04:00
2008-07-26 20:53:40 -04:00
2008-07-25 10:53:34 -07:00
2008-09-02 19:21:37 -07:00
2008-09-10 01:44:08 -07:00
2008-10-02 15:53:13 -07:00
2008-07-26 12:00:07 -07:00
2008-09-18 09:57:57 +03:00
2008-09-08 20:31:04 +02:00
2008-07-25 10:53:34 -07:00
2008-07-26 20:53:40 -04:00
2008-07-26 12:00:08 -07:00
2008-07-26 12:00:08 -07:00
2008-07-26 12:00:08 -07:00
2008-07-26 12:00:06 -07:00
2008-05-01 13:08:16 -04:00
2008-08-01 11:25:24 -04:00
2008-07-26 20:53:40 -04:00
2008-07-14 19:10:52 +03:00
2008-04-29 08:06:00 -07:00
2008-07-28 18:10:28 +09:00
2008-07-26 12:00:05 -07:00
2008-07-25 10:53:35 -07:00
2008-07-02 15:06:27 -06:00
2008-08-04 21:31:34 -07:00