Prechádzať zdrojové kódy

Merge git://git.kernel.org/pub/scm/linux/kernel/git/steve/gfs2-2.6-fixes

* git://git.kernel.org/pub/scm/linux/kernel/git/steve/gfs2-2.6-fixes:
  GFS2: Fix typo in gfs_page_mkwrite()
  GFS2: LSF and LBD are now one and the same
  GFS2: Set GFP_NOFS when allocating page on write
Linus Torvalds 16 rokov pred
rodič
commit
0d6326a100
3 zmenil súbory, kde vykonal 3 pridanie a 2 odobranie
  1. 1 1
      fs/gfs2/Kconfig
  2. 1 0
      fs/gfs2/ops_address.c
  3. 1 1
      fs/gfs2/ops_file.c

+ 1 - 1
fs/gfs2/Kconfig

@@ -1,6 +1,6 @@
 config GFS2_FS
 	tristate "GFS2 file system support"
-	depends on EXPERIMENTAL && (64BIT || (LSF && LBD))
+	depends on EXPERIMENTAL && (64BIT || LBD)
 	select FS_POSIX_ACL
 	select CRC32
 	help

+ 1 - 0
fs/gfs2/ops_address.c

@@ -675,6 +675,7 @@ static int gfs2_write_begin(struct file *file, struct address_space *mapping,
 		goto out_trans_fail;
 
 	error = -ENOMEM;
+	flags |= AOP_FLAG_NOFS;
 	page = grab_cache_page_write_begin(mapping, index, flags);
 	*pagep = page;
 	if (unlikely(!page))

+ 1 - 1
fs/gfs2/ops_file.c

@@ -342,7 +342,7 @@ static int gfs2_page_mkwrite(struct vm_area_struct *vma, struct page *page)
 	struct gfs2_inode *ip = GFS2_I(inode);
 	struct gfs2_sbd *sdp = GFS2_SB(inode);
 	unsigned long last_index;
-	u64 pos = page->index << (PAGE_CACHE_SIZE - inode->i_blkbits);
+	u64 pos = page->index << PAGE_CACHE_SHIFT;
 	unsigned int data_blocks, ind_blocks, rblocks;
 	int alloc_required = 0;
 	struct gfs2_holder gh;