Linux Kernel
3.7.1
Main Page
Related Pages
Modules
Namespaces
Data Structures
Files
File List
Globals
All
Data Structures
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Groups
Pages
fs
ramfs
file-mmu.c
Go to the documentation of this file.
1
/* file-mmu.c: ramfs MMU-based file operations
2
*
3
* Resizable simple ram filesystem for Linux.
4
*
5
* Copyright (C) 2000 Linus Torvalds.
6
* 2000 Transmeta Corp.
7
*
8
* Usage limits added by David Gibson, Linuxcare Australia.
9
* This file is released under the GPL.
10
*/
11
12
/*
13
* NOTE! This filesystem is probably most useful
14
* not as a real filesystem, but as an example of
15
* how virtual filesystems can be written.
16
*
17
* It doesn't get much simpler than this. Consider
18
* that this file implements the full semantics of
19
* a POSIX-compliant read-write filesystem.
20
*
21
* Note in particular how the filesystem does not
22
* need to implement any data structures of its own
23
* to keep track of the virtual data: using the VFS
24
* caches is sufficient.
25
*/
26
27
#include <linux/fs.h>
28
#include <
linux/mm.h
>
29
#include <
linux/ramfs.h
>
30
31
#include "
internal.h
"
32
33
const
struct
address_space_operations
ramfs_aops
= {
34
.readpage =
simple_readpage
,
35
.write_begin =
simple_write_begin
,
36
.write_end =
simple_write_end
,
37
.set_page_dirty =
__set_page_dirty_no_writeback
,
38
};
39
40
const
struct
file_operations
ramfs_file_operations
= {
41
.read =
do_sync_read
,
42
.aio_read =
generic_file_aio_read
,
43
.write =
do_sync_write
,
44
.aio_write =
generic_file_aio_write
,
45
.mmap =
generic_file_mmap
,
46
.fsync =
noop_fsync
,
47
.splice_read =
generic_file_splice_read
,
48
.splice_write =
generic_file_splice_write
,
49
.llseek =
generic_file_llseek
,
50
};
51
52
const
struct
inode_operations
ramfs_file_inode_operations
= {
53
.setattr =
simple_setattr
,
54
.getattr =
simple_getattr
,
55
};
Generated on Thu Jan 10 2013 14:49:54 for Linux Kernel by
1.8.2