Skip to content

Commit 41fc56d

Browse files
author
Al Viro
committed
kill the 4th argument of __generic_file_aio_write()
It's always equal to &iocb->ki_pos, where iocb is the value of the 1st argument. Signed-off-by: Al Viro <[email protected]>
1 parent b2f42cf commit 41fc56d

File tree

5 files changed

+10
-12
lines changed

5 files changed

+10
-12
lines changed

fs/block_dev.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1518,7 +1518,7 @@ ssize_t blkdev_aio_write(struct kiocb *iocb, const struct iovec *iov,
15181518
BUG_ON(iocb->ki_pos != pos);
15191519

15201520
blk_start_plug(&plug);
1521-
ret = __generic_file_aio_write(iocb, iov, nr_segs, &iocb->ki_pos);
1521+
ret = __generic_file_aio_write(iocb, iov, nr_segs);
15221522
if (ret > 0) {
15231523
ssize_t err;
15241524

fs/ext4/file.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -146,7 +146,7 @@ ext4_file_dio_write(struct kiocb *iocb, const struct iovec *iov,
146146
overwrite = 1;
147147
}
148148

149-
ret = __generic_file_aio_write(iocb, iov, nr_segs, &iocb->ki_pos);
149+
ret = __generic_file_aio_write(iocb, iov, nr_segs);
150150
mutex_unlock(&inode->i_mutex);
151151

152152
if (ret > 0) {

fs/udf/file.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -171,7 +171,7 @@ static ssize_t udf_file_aio_write(struct kiocb *iocb, const struct iovec *iov,
171171
} else
172172
up_write(&iinfo->i_data_sem);
173173

174-
retval = __generic_file_aio_write(iocb, iov, nr_segs, &iocb->ki_pos);
174+
retval = __generic_file_aio_write(iocb, iov, nr_segs);
175175
mutex_unlock(&inode->i_mutex);
176176

177177
if (retval > 0) {

include/linux/fs.h

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2392,8 +2392,7 @@ extern int generic_file_remap_pages(struct vm_area_struct *, unsigned long addr,
23922392
unsigned long size, pgoff_t pgoff);
23932393
int generic_write_checks(struct file *file, loff_t *pos, size_t *count, int isblk);
23942394
extern ssize_t generic_file_aio_read(struct kiocb *, const struct iovec *, unsigned long, loff_t);
2395-
extern ssize_t __generic_file_aio_write(struct kiocb *, const struct iovec *, unsigned long,
2396-
loff_t *);
2395+
extern ssize_t __generic_file_aio_write(struct kiocb *, const struct iovec *, unsigned long);
23972396
extern ssize_t generic_file_aio_write(struct kiocb *, const struct iovec *, unsigned long, loff_t);
23982397
extern ssize_t generic_file_direct_write(struct kiocb *, const struct iovec *,
23992398
unsigned long *, loff_t, loff_t *, size_t, size_t);

mm/filemap.c

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2222,14 +2222,14 @@ EXPORT_SYMBOL(generic_file_buffered_write);
22222222
* avoid syncing under i_mutex.
22232223
*/
22242224
ssize_t __generic_file_aio_write(struct kiocb *iocb, const struct iovec *iov,
2225-
unsigned long nr_segs, loff_t *ppos)
2225+
unsigned long nr_segs)
22262226
{
22272227
struct file *file = iocb->ki_filp;
22282228
struct address_space * mapping = file->f_mapping;
22292229
size_t ocount; /* original count */
22302230
size_t count; /* after file limit checks */
22312231
struct inode *inode = mapping->host;
2232-
loff_t pos;
2232+
loff_t pos = iocb->ki_pos;
22332233
ssize_t written;
22342234
ssize_t err;
22352235

@@ -2239,7 +2239,6 @@ ssize_t __generic_file_aio_write(struct kiocb *iocb, const struct iovec *iov,
22392239
return err;
22402240

22412241
count = ocount;
2242-
pos = *ppos;
22432242

22442243
/* We can write back this queue in page reclaim */
22452244
current->backing_dev_info = mapping->backing_dev_info;
@@ -2266,7 +2265,7 @@ ssize_t __generic_file_aio_write(struct kiocb *iocb, const struct iovec *iov,
22662265
ssize_t written_buffered;
22672266

22682267
written = generic_file_direct_write(iocb, iov, &nr_segs, pos,
2269-
ppos, count, ocount);
2268+
&iocb->ki_pos, count, ocount);
22702269
if (written < 0 || written == count)
22712270
goto out;
22722271
/*
@@ -2276,7 +2275,7 @@ ssize_t __generic_file_aio_write(struct kiocb *iocb, const struct iovec *iov,
22762275
pos += written;
22772276
count -= written;
22782277
written_buffered = generic_file_buffered_write(iocb, iov,
2279-
nr_segs, pos, ppos, count,
2278+
nr_segs, pos, &iocb->ki_pos, count,
22802279
written);
22812280
/*
22822281
* If generic_file_buffered_write() retuned a synchronous error
@@ -2310,7 +2309,7 @@ ssize_t __generic_file_aio_write(struct kiocb *iocb, const struct iovec *iov,
23102309
}
23112310
} else {
23122311
written = generic_file_buffered_write(iocb, iov, nr_segs,
2313-
pos, ppos, count, written);
2312+
pos, &iocb->ki_pos, count, written);
23142313
}
23152314
out:
23162315
current->backing_dev_info = NULL;
@@ -2339,7 +2338,7 @@ ssize_t generic_file_aio_write(struct kiocb *iocb, const struct iovec *iov,
23392338
BUG_ON(iocb->ki_pos != pos);
23402339

23412340
mutex_lock(&inode->i_mutex);
2342-
ret = __generic_file_aio_write(iocb, iov, nr_segs, &iocb->ki_pos);
2341+
ret = __generic_file_aio_write(iocb, iov, nr_segs);
23432342
mutex_unlock(&inode->i_mutex);
23442343

23452344
if (ret > 0) {

0 commit comments

Comments
 (0)