X-Git-Url: https://git.karo-electronics.de/?a=blobdiff_plain;f=mm%2Ftruncate.c;h=937571b8b23370afdcb607ae27a3a897464e46bb;hb=93c43f2561f18b50e3376be968d0688315afc44c;hp=f42675a3615d81ab59e722cc3e3d18b1e1e0525f;hpb=7bd9db83087aecef8279c0b8b9dfef4db4a8fc3c;p=mv-sheeva.git diff --git a/mm/truncate.c b/mm/truncate.c index f42675a3615..937571b8b23 100644 --- a/mm/truncate.c +++ b/mm/truncate.c @@ -548,18 +548,18 @@ EXPORT_SYMBOL(truncate_pagecache); * NOTE! We have to be ready to update the memory sharing * between the file and the memory map for a potential last * incomplete page. Ugly, but necessary. + * + * This function is deprecated and simple_setsize or truncate_pagecache + * should be used instead. */ int vmtruncate(struct inode *inode, loff_t offset) { - loff_t oldsize; int error; - error = inode_newsize_ok(inode, offset); + error = simple_setsize(inode, offset); if (error) return error; - oldsize = inode->i_size; - i_size_write(inode, offset); - truncate_pagecache(inode, oldsize, offset); + if (inode->i_op->truncate) inode->i_op->truncate(inode);