From 1340df05aa8e23e4fc162f9010c32567f66b385f Mon Sep 17 00:00:00 2001 From: Jan Kara Date: Tue, 8 May 2007 00:35:18 -0700 Subject: [PATCH] --- yaml --- r: 54815 b: refs/heads/master c: 948b9b2c967c3bec6136b2dbb9e1c12f62e03efa h: refs/heads/master i: 54813: a97a6904f2a776da0278b23fd1a9a5e3990ddf3f 54811: d3f5ec04b1b154ed031d6327db8e830e2a54eb23 54807: 34414351c5879095fe42bad86394d059d9fc6701 54799: b316644344b3a9b289ffe6a174a0376edc724efb 54783: 0f9f331f48e2740dee12ca32115d95c7d008b369 v: v3 --- [refs] | 2 +- trunk/fs/udf/truncate.c | 4 +++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/[refs] b/[refs] index 4972d7eb0a48..d4752391b2be 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 3bf25cb40d899eeb5a471f497e56ddfe2c96c019 +refs/heads/master: 948b9b2c967c3bec6136b2dbb9e1c12f62e03efa diff --git a/trunk/fs/udf/truncate.c b/trunk/fs/udf/truncate.c index 0449b2216e71..0e328cdc9a45 100644 --- a/trunk/fs/udf/truncate.c +++ b/trunk/fs/udf/truncate.c @@ -88,8 +88,9 @@ void udf_discard_prealloc(struct inode * inode) { etype = netype; lbcount += elen; - if (lbcount > inode->i_size && lbcount - inode->i_size < inode->i_sb->s_blocksize) + if (lbcount > inode->i_size && lbcount - elen < inode->i_size) { + WARN_ON(lbcount - inode->i_size >= inode->i_sb->s_blocksize); nelen = elen - (lbcount - inode->i_size); epos.offset -= adsize; extent_trunc(inode, &epos, eloc, etype, elen, nelen); @@ -119,6 +120,7 @@ void udf_discard_prealloc(struct inode * inode) } UDF_I_LENEXTENTS(inode) = lbcount; + WARN_ON(lbcount != inode->i_size); brelse(epos.bh); }