}
#define FSFILT_OP_UNLINK 1
-#define FSFILT_OP_RMDIR 2
-#define FSFILT_OP_RENAME 3
-#define FSFILT_OP_CREATE 4
-#define FSFILT_OP_MKDIR 5
-#define FSFILT_OP_SYMLINK 6
-#define FSFILT_OP_MKNOD 7
-#define FSFILT_OP_SETATTR 8
-#define FSFILT_OP_LINK 9
#define FSFILT_OP_CANCEL_UNLINK 10
#define __fsfilt_check_slow(obd, start, msg) \
}
switch(op) {
- case FSFILT_OP_RMDIR:
case FSFILT_OP_UNLINK:
/* delete one file + create/update logs for each stripe */
nblocks += EXT3_DELETE_TRANS_BLOCKS(inode->i_sb);
nblocks += (EXT3_INDEX_EXTRA_TRANS_BLOCKS +
FSFILT_SINGLEDATA_TRANS_BLOCKS(inode->i_sb)) * logs;
break;
- case FSFILT_OP_RENAME:
- /* modify additional directory */
- nblocks += FSFILT_SINGLEDATA_TRANS_BLOCKS(inode->i_sb);
- /* no break */
- case FSFILT_OP_SYMLINK:
- /* additional block + block bitmap + GDT for long symlink */
- nblocks += 3;
- /* no break */
- case FSFILT_OP_CREATE: {
- /* no break */
- }
- case FSFILT_OP_MKDIR:
- case FSFILT_OP_MKNOD:
- /* modify one inode + block bitmap + GDT */
- nblocks += 3;
- /* no break */
- case FSFILT_OP_LINK:
- /* modify parent directory */
- nblocks += EXT3_INDEX_EXTRA_TRANS_BLOCKS +
- EXT3_DATA_TRANS_BLOCKS(inode->i_sb);
- /* create/update logs for each stripe */
- nblocks += (EXT3_INDEX_EXTRA_TRANS_BLOCKS +
- FSFILT_SINGLEDATA_TRANS_BLOCKS(inode->i_sb)) * logs;
- break;
- case FSFILT_OP_SETATTR:
- /* Setattr on inode */
- nblocks += 1;
- nblocks += EXT3_INDEX_EXTRA_TRANS_BLOCKS +
- EXT3_DATA_TRANS_BLOCKS(inode->i_sb);
- /* quota chown log for each stripe */
- nblocks += (EXT3_INDEX_EXTRA_TRANS_BLOCKS +
- FSFILT_SINGLEDATA_TRANS_BLOCKS(inode->i_sb)) * logs;
- break;
case FSFILT_OP_CANCEL_UNLINK:
LASSERT(logs == 1);