file.c (8d6220d6a74a33552cf877bcea25503d7f6a59e6) file.c (2b4e30fbde425828b17f0e9c8f8e3fd3ecb2bc75)
1/* -*- mode: c; c-basic-offset: 8; -*-
2 * vim: noexpandtab sw=8 ts=8 sts=0:
3 *
4 * file.c
5 *
6 * File open, close, extend, truncate
7 *
8 * Copyright (C) 2002, 2004 Oracle. All rights reserved.

--- 171 unchanged lines hidden (view full) ---

180 mlog_entry("(0x%p, 0x%p, %d, '%.*s')\n", file, dentry, datasync,
181 dentry->d_name.len, dentry->d_name.name);
182
183 err = ocfs2_sync_inode(dentry->d_inode);
184 if (err)
185 goto bail;
186
187 journal = osb->journal->j_journal;
1/* -*- mode: c; c-basic-offset: 8; -*-
2 * vim: noexpandtab sw=8 ts=8 sts=0:
3 *
4 * file.c
5 *
6 * File open, close, extend, truncate
7 *
8 * Copyright (C) 2002, 2004 Oracle. All rights reserved.

--- 171 unchanged lines hidden (view full) ---

180 mlog_entry("(0x%p, 0x%p, %d, '%.*s')\n", file, dentry, datasync,
181 dentry->d_name.len, dentry->d_name.name);
182
183 err = ocfs2_sync_inode(dentry->d_inode);
184 if (err)
185 goto bail;
186
187 journal = osb->journal->j_journal;
188 err = journal_force_commit(journal);
188 err = jbd2_journal_force_commit(journal);
189
190bail:
191 mlog_exit(err);
192
193 return (err < 0) ? -EIO : 0;
194}
195
196int ocfs2_should_update_atime(struct inode *inode,

--- 739 unchanged lines hidden (view full) ---

936 }
937
938 if (size_change && attr->ia_size != i_size_read(inode)) {
939 if (attr->ia_size > sb->s_maxbytes) {
940 status = -EFBIG;
941 goto bail_unlock;
942 }
943
189
190bail:
191 mlog_exit(err);
192
193 return (err < 0) ? -EIO : 0;
194}
195
196int ocfs2_should_update_atime(struct inode *inode,

--- 739 unchanged lines hidden (view full) ---

936 }
937
938 if (size_change && attr->ia_size != i_size_read(inode)) {
939 if (attr->ia_size > sb->s_maxbytes) {
940 status = -EFBIG;
941 goto bail_unlock;
942 }
943
944 if (i_size_read(inode) > attr->ia_size)
944 if (i_size_read(inode) > attr->ia_size) {
945 if (ocfs2_should_order_data(inode)) {
946 status = ocfs2_begin_ordered_truncate(inode,
947 attr->ia_size);
948 if (status)
949 goto bail_unlock;
950 }
945 status = ocfs2_truncate_file(inode, bh, attr->ia_size);
951 status = ocfs2_truncate_file(inode, bh, attr->ia_size);
946 else
952 } else
947 status = ocfs2_extend_file(inode, bh, attr->ia_size);
948 if (status < 0) {
949 if (status != -ENOSPC)
950 mlog_errno(status);
951 status = -ENOSPC;
952 goto bail_unlock;
953 }
954 }

--- 928 unchanged lines hidden (view full) ---

1883 /*
1884 * The generic write paths have handled getting data
1885 * to disk, but since we don't make use of the dirty
1886 * inode list, a manual journal commit is necessary
1887 * here.
1888 */
1889 if (old_size != i_size_read(inode) ||
1890 old_clusters != OCFS2_I(inode)->ip_clusters) {
953 status = ocfs2_extend_file(inode, bh, attr->ia_size);
954 if (status < 0) {
955 if (status != -ENOSPC)
956 mlog_errno(status);
957 status = -ENOSPC;
958 goto bail_unlock;
959 }
960 }

--- 928 unchanged lines hidden (view full) ---

1889 /*
1890 * The generic write paths have handled getting data
1891 * to disk, but since we don't make use of the dirty
1892 * inode list, a manual journal commit is necessary
1893 * here.
1894 */
1895 if (old_size != i_size_read(inode) ||
1896 old_clusters != OCFS2_I(inode)->ip_clusters) {
1891 ret = journal_force_commit(osb->journal->j_journal);
1897 ret = jbd2_journal_force_commit(osb->journal->j_journal);
1892 if (ret < 0)
1893 written = ret;
1894 }
1895 }
1896
1897 /*
1898 * deep in g_f_a_w_n()->ocfs2_direct_IO we pass in a ocfs2_dio_end_io
1899 * function pointer which is called when o_direct io completes so that

--- 275 unchanged lines hidden ---
1898 if (ret < 0)
1899 written = ret;
1900 }
1901 }
1902
1903 /*
1904 * deep in g_f_a_w_n()->ocfs2_direct_IO we pass in a ocfs2_dio_end_io
1905 * function pointer which is called when o_direct io completes so that

--- 275 unchanged lines hidden ---