diff options
Diffstat (limited to 'fs/jffs2/writev.c')
| -rw-r--r-- | fs/jffs2/writev.c | 32 | 
1 files changed, 2 insertions, 30 deletions
diff --git a/fs/jffs2/writev.c b/fs/jffs2/writev.c index b9276b11bac..a1bda9dab3f 100644 --- a/fs/jffs2/writev.c +++ b/fs/jffs2/writev.c @@ -13,30 +13,6 @@  #include <linux/mtd/mtd.h>  #include "nodelist.h" -/* This ought to be in core MTD code. All registered MTD devices -   without writev should have this put in place. Bug the MTD -   maintainer */ -static inline int mtd_fake_writev(struct mtd_info *mtd, const struct kvec *vecs, -				  unsigned long count, loff_t to, size_t *retlen) -{ -	unsigned long i; -	size_t totlen = 0, thislen; -	int ret = 0; - -	for (i=0; i<count; i++) { -		if (!vecs[i].iov_len) -			continue; -		ret = mtd->write(mtd, to, vecs[i].iov_len, &thislen, vecs[i].iov_base); -		totlen += thislen; -		if (ret || thislen != vecs[i].iov_len) -			break; -		to += vecs[i].iov_len; -	} -	if (retlen) -		*retlen = totlen; -	return ret; -} -  int jffs2_flash_direct_writev(struct jffs2_sb_info *c, const struct kvec *vecs,  			      unsigned long count, loff_t to, size_t *retlen)  { @@ -50,18 +26,14 @@ int jffs2_flash_direct_writev(struct jffs2_sb_info *c, const struct kvec *vecs,  		}  	} -	if (c->mtd->writev) -		return c->mtd->writev(c->mtd, vecs, count, to, retlen); -	else { -		return mtd_fake_writev(c->mtd, vecs, count, to, retlen); -	} +	return mtd_writev(c->mtd, vecs, count, to, retlen);  }  int jffs2_flash_direct_write(struct jffs2_sb_info *c, loff_t ofs, size_t len,  			size_t *retlen, const u_char *buf)  {  	int ret; -	ret = c->mtd->write(c->mtd, ofs, len, retlen, buf); +	ret = mtd_write(c->mtd, ofs, len, retlen, buf);  	if (jffs2_sum_active()) {  		struct kvec vecs[1];  | 
