Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 577107e8 authored by Linus Torvalds's avatar Linus Torvalds
Browse files
* 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mfasheh/ocfs2:
  ocfs2: Fix calculation of i_blocks during truncate
  [PATCH] ocfs2: Fix a wrong cluster calculation.
  [PATCH] ocfs2: fix mount option parsing
  ocfs2: update docs for new features
parents 7111de76 e535e2ef
Loading
Loading
Loading
Loading
+9 −4
Original line number Diff line number Diff line
@@ -28,11 +28,7 @@ Manish Singh <manish.singh@oracle.com>
Caveats
=======
Features which OCFS2 does not support yet:
	- sparse files
	- extended attributes
	- shared writable mmap
	- loopback is supported, but data written will not
	  be cluster coherent.
	- quotas
	- cluster aware flock
	- cluster aware lockf
@@ -57,3 +53,12 @@ nointr Do not allow signals to interrupt cluster
atime_quantum=60(*)	OCFS2 will not update atime unless this number
			of seconds has passed since the last update.
			Set to zero to always update atime.
data=ordered	(*)	All data are forced directly out to the main file
			system prior to its metadata being committed to the
			journal.
data=writeback		Data ordering is not preserved, data may be written
			into the main file system after its metadata has been
			committed to the journal.
preferred_slot=0(*)	During mount, try to use this filesystem slot first. If
			it is in use by another node, the first empty one found
			will be chosen. Invalid values will be ignored.
+0 −3
Original line number Diff line number Diff line
@@ -441,9 +441,6 @@ config OCFS2_FS

	  Note: Features which OCFS2 does not support yet:
	          - extended attributes
		  - shared writeable mmap
	          - loopback is supported, but data written will not
	            be cluster coherent.
	          - quotas
	          - cluster aware flock
	          - Directory change notification (F_NOTIFY)
+1 −0
Original line number Diff line number Diff line
@@ -5602,6 +5602,7 @@ static int ocfs2_do_truncate(struct ocfs2_super *osb,
				      clusters_to_del;
	spin_unlock(&OCFS2_I(inode)->ip_lock);
	le32_add_cpu(&fe->i_clusters, -clusters_to_del);
	inode->i_blocks = ocfs2_inode_sector_count(inode);

	status = ocfs2_trim_tree(inode, path, handle, tc,
				 clusters_to_del, &delete_blk);
+3 −1
Original line number Diff line number Diff line
@@ -855,6 +855,7 @@ static int ocfs2_alloc_write_ctxt(struct ocfs2_write_ctxt **wcp,
				  struct ocfs2_super *osb, loff_t pos,
				  unsigned len, struct buffer_head *di_bh)
{
	u32 cend;
	struct ocfs2_write_ctxt *wc;

	wc = kzalloc(sizeof(struct ocfs2_write_ctxt), GFP_NOFS);
@@ -862,7 +863,8 @@ static int ocfs2_alloc_write_ctxt(struct ocfs2_write_ctxt **wcp,
		return -ENOMEM;

	wc->w_cpos = pos >> osb->s_clustersize_bits;
	wc->w_clen = ocfs2_clusters_for_bytes(osb->sb, len);
	cend = (pos + len - 1) >> osb->s_clustersize_bits;
	wc->w_clen = cend - wc->w_cpos + 1;
	get_bh(di_bh);
	wc->w_di_bh = di_bh;

+0 −1
Original line number Diff line number Diff line
@@ -314,7 +314,6 @@ static int ocfs2_orphan_for_truncate(struct ocfs2_super *osb,
	}

	i_size_write(inode, new_i_size);
	inode->i_blocks = ocfs2_align_bytes_to_sectors(new_i_size);
	inode->i_ctime = inode->i_mtime = CURRENT_TIME;

	di = (struct ocfs2_dinode *) fe_bh->b_data;
Loading