diff options
Diffstat (limited to 'fs/affs')
-rw-r--r-- | fs/affs/Kconfig | 21 | ||||
-rw-r--r-- | fs/affs/file.c | 2 | ||||
-rw-r--r-- | fs/affs/inode.c | 3 |
3 files changed, 23 insertions, 3 deletions
diff --git a/fs/affs/Kconfig b/fs/affs/Kconfig new file mode 100644 index 000000000000..cfad9afb4762 --- /dev/null +++ b/fs/affs/Kconfig | |||
@@ -0,0 +1,21 @@ | |||
1 | config AFFS_FS | ||
2 | tristate "Amiga FFS file system support (EXPERIMENTAL)" | ||
3 | depends on BLOCK && EXPERIMENTAL | ||
4 | help | ||
5 | The Fast File System (FFS) is the common file system used on hard | ||
6 | disks by Amiga(tm) systems since AmigaOS Version 1.3 (34.20). Say Y | ||
7 | if you want to be able to read and write files from and to an Amiga | ||
8 | FFS partition on your hard drive. Amiga floppies however cannot be | ||
9 | read with this driver due to an incompatibility of the floppy | ||
10 | controller used in an Amiga and the standard floppy controller in | ||
11 | PCs and workstations. Read <file:Documentation/filesystems/affs.txt> | ||
12 | and <file:fs/affs/Changes>. | ||
13 | |||
14 | With this driver you can also mount disk files used by Bernd | ||
15 | Schmidt's Un*X Amiga Emulator | ||
16 | (<http://www.freiburg.linux.de/~uae/>). | ||
17 | If you want to do this, you will also need to say Y or M to "Loop | ||
18 | device support", above. | ||
19 | |||
20 | To compile this file system support as a module, choose M here: the | ||
21 | module will be called affs. If unsure, say N. | ||
diff --git a/fs/affs/file.c b/fs/affs/file.c index 1377b1240b6e..9246cb4aa018 100644 --- a/fs/affs/file.c +++ b/fs/affs/file.c | |||
@@ -628,7 +628,7 @@ static int affs_write_begin_ofs(struct file *file, struct address_space *mapping | |||
628 | } | 628 | } |
629 | 629 | ||
630 | index = pos >> PAGE_CACHE_SHIFT; | 630 | index = pos >> PAGE_CACHE_SHIFT; |
631 | page = __grab_cache_page(mapping, index); | 631 | page = grab_cache_page_write_begin(mapping, index, flags); |
632 | if (!page) | 632 | if (!page) |
633 | return -ENOMEM; | 633 | return -ENOMEM; |
634 | *pagep = page; | 634 | *pagep = page; |
diff --git a/fs/affs/inode.c b/fs/affs/inode.c index 415d9c67ac16..3c4ec7d864c4 100644 --- a/fs/affs/inode.c +++ b/fs/affs/inode.c | |||
@@ -119,8 +119,7 @@ struct inode *affs_iget(struct super_block *sb, unsigned long ino) | |||
119 | goto bad_inode; | 119 | goto bad_inode; |
120 | #else | 120 | #else |
121 | inode->i_mode |= S_IFDIR; | 121 | inode->i_mode |= S_IFDIR; |
122 | inode->i_op = NULL; | 122 | /* ... and leave ->i_op and ->i_fop pointing to empty */ |
123 | inode->i_fop = NULL; | ||
124 | break; | 123 | break; |
125 | #endif | 124 | #endif |
126 | case ST_LINKFILE: | 125 | case ST_LINKFILE: |