* [Cluster-devel] [PATCH V5 26/30] gfs2: Convert aio_read/write ops to read/write_iter
[not found] <1357761525-22718-1-git-send-email-dave.kleikamp@oracle.com>
@ 2013-01-09 19:58 ` Dave Kleikamp
2013-01-10 10:10 ` Steven Whitehouse
0 siblings, 1 reply; 4+ messages in thread
From: Dave Kleikamp @ 2013-01-09 19:58 UTC (permalink / raw)
To: cluster-devel.redhat.com
Signed-off-by: Dave Kleikamp <dave.kleikamp@oracle.com>
Cc: Steven Whitehouse <swhiteho@redhat.com>
Cc: cluster-devel at redhat.com
---
fs/gfs2/file.c | 21 ++++++++++-----------
1 file changed, 10 insertions(+), 11 deletions(-)
diff --git a/fs/gfs2/file.c b/fs/gfs2/file.c
index 991ab2d..63af1a6 100644
--- a/fs/gfs2/file.c
+++ b/fs/gfs2/file.c
@@ -655,10 +655,9 @@ static int gfs2_fsync(struct file *file, loff_t start, loff_t end,
}
/**
- * gfs2_file_aio_write - Perform a write to a file
+ * gfs2_file_write_iter - Perform a write to a file
* @iocb: The io context
- * @iov: The data to write
- * @nr_segs: Number of @iov segments
+ * @iter: The data to write
* @pos: The file position
*
* We have to do a lock/unlock here to refresh the inode size for
@@ -668,11 +667,11 @@ static int gfs2_fsync(struct file *file, loff_t start, loff_t end,
*
*/
-static ssize_t gfs2_file_aio_write(struct kiocb *iocb, const struct iovec *iov,
- unsigned long nr_segs, loff_t pos)
+static ssize_t gfs2_file_write_iter(struct kiocb *iocb, struct iov_iter *iter,
+ loff_t pos)
{
struct file *file = iocb->ki_filp;
- size_t writesize = iov_length(iov, nr_segs);
+ size_t writesize = iov_iter_count(iter);
struct dentry *dentry = file->f_dentry;
struct gfs2_inode *ip = GFS2_I(dentry->d_inode);
int ret;
@@ -692,7 +691,7 @@ static ssize_t gfs2_file_aio_write(struct kiocb *iocb, const struct iovec *iov,
gfs2_glock_dq_uninit(&gh);
}
- return generic_file_aio_write(iocb, iov, nr_segs, pos);
+ return generic_file_write_iter(iocb, iter, pos);
}
static int fallocate_chunk(struct inode *inode, loff_t offset, loff_t len,
@@ -1021,9 +1020,9 @@ static int gfs2_flock(struct file *file, int cmd, struct file_lock *fl)
const struct file_operations gfs2_file_fops = {
.llseek = gfs2_llseek,
.read = do_sync_read,
- .aio_read = generic_file_aio_read,
+ .read_iter = generic_file_read_iter,
.write = do_sync_write,
- .aio_write = gfs2_file_aio_write,
+ .write_iter = gfs2_file_write_iter,
.unlocked_ioctl = gfs2_ioctl,
.mmap = gfs2_mmap,
.open = gfs2_open,
@@ -1053,9 +1052,9 @@ const struct file_operations gfs2_dir_fops = {
const struct file_operations gfs2_file_fops_nolock = {
.llseek = gfs2_llseek,
.read = do_sync_read,
- .aio_read = generic_file_aio_read,
+ .read_iter = generic_file_read_iter,
.write = do_sync_write,
- .aio_write = gfs2_file_aio_write,
+ .write_iter = gfs2_file_write_iter,
.unlocked_ioctl = gfs2_ioctl,
.mmap = gfs2_mmap,
.open = gfs2_open,
--
1.8.1
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [Cluster-devel] [PATCH V5 26/30] gfs2: Convert aio_read/write ops to read/write_iter
2013-01-09 19:58 ` [Cluster-devel] [PATCH V5 26/30] gfs2: Convert aio_read/write ops to read/write_iter Dave Kleikamp
@ 2013-01-10 10:10 ` Steven Whitehouse
2013-01-10 14:34 ` Dave Kleikamp
0 siblings, 1 reply; 4+ messages in thread
From: Steven Whitehouse @ 2013-01-10 10:10 UTC (permalink / raw)
To: cluster-devel.redhat.com
Hi,
On Wed, 2013-01-09 at 13:58 -0600, Dave Kleikamp wrote:
> Signed-off-by: Dave Kleikamp <dave.kleikamp@oracle.com>
> Cc: Steven Whitehouse <swhiteho@redhat.com>
> Cc: cluster-devel at redhat.com
> ---
> fs/gfs2/file.c | 21 ++++++++++-----------
> 1 file changed, 10 insertions(+), 11 deletions(-)
>
> diff --git a/fs/gfs2/file.c b/fs/gfs2/file.c
> index 991ab2d..63af1a6 100644
> --- a/fs/gfs2/file.c
> +++ b/fs/gfs2/file.c
> @@ -655,10 +655,9 @@ static int gfs2_fsync(struct file *file, loff_t start, loff_t end,
> }
>
> /**
> - * gfs2_file_aio_write - Perform a write to a file
> + * gfs2_file_write_iter - Perform a write to a file
> * @iocb: The io context
> - * @iov: The data to write
> - * @nr_segs: Number of @iov segments
> + * @iter: The data to write
> * @pos: The file position
> *
> * We have to do a lock/unlock here to refresh the inode size for
> @@ -668,11 +667,11 @@ static int gfs2_fsync(struct file *file, loff_t start, loff_t end,
> *
> */
>
> -static ssize_t gfs2_file_aio_write(struct kiocb *iocb, const struct iovec *iov,
> - unsigned long nr_segs, loff_t pos)
> +static ssize_t gfs2_file_write_iter(struct kiocb *iocb, struct iov_iter *iter,
> + loff_t pos)
> {
> struct file *file = iocb->ki_filp;
> - size_t writesize = iov_length(iov, nr_segs);
> + size_t writesize = iov_iter_count(iter);
Hmm, I had a vague memory that we'd agreed to call this iov_iter_length
rather than iov_iter_count in order to keep the existing naming and to
make it sound more like what it is (the length of the data) as opposed
to the number of individual buffers to be written.
Not that it is desperately important, but just to flag it up in case it
got forgotten at some stage,
Steve.
^ permalink raw reply [flat|nested] 4+ messages in thread
* [Cluster-devel] [PATCH V5 26/30] gfs2: Convert aio_read/write ops to read/write_iter
2013-01-10 10:10 ` Steven Whitehouse
@ 2013-01-10 14:34 ` Dave Kleikamp
2013-01-11 16:24 ` Steven Whitehouse
0 siblings, 1 reply; 4+ messages in thread
From: Dave Kleikamp @ 2013-01-10 14:34 UTC (permalink / raw)
To: cluster-devel.redhat.com
On 01/10/2013 04:10 AM, Steven Whitehouse wrote:
> Hi,
>
> On Wed, 2013-01-09 at 13:58 -0600, Dave Kleikamp wrote:
>> Signed-off-by: Dave Kleikamp <dave.kleikamp@oracle.com>
>> Cc: Steven Whitehouse <swhiteho@redhat.com>
>> Cc: cluster-devel at redhat.com
>> ---
>> fs/gfs2/file.c | 21 ++++++++++-----------
>> 1 file changed, 10 insertions(+), 11 deletions(-)
>>
>> diff --git a/fs/gfs2/file.c b/fs/gfs2/file.c
>> index 991ab2d..63af1a6 100644
>> --- a/fs/gfs2/file.c
>> +++ b/fs/gfs2/file.c
>> @@ -655,10 +655,9 @@ static int gfs2_fsync(struct file *file, loff_t start, loff_t end,
>> }
>>
>> /**
>> - * gfs2_file_aio_write - Perform a write to a file
>> + * gfs2_file_write_iter - Perform a write to a file
>> * @iocb: The io context
>> - * @iov: The data to write
>> - * @nr_segs: Number of @iov segments
>> + * @iter: The data to write
>> * @pos: The file position
>> *
>> * We have to do a lock/unlock here to refresh the inode size for
>> @@ -668,11 +667,11 @@ static int gfs2_fsync(struct file *file, loff_t start, loff_t end,
>> *
>> */
>>
>> -static ssize_t gfs2_file_aio_write(struct kiocb *iocb, const struct iovec *iov,
>> - unsigned long nr_segs, loff_t pos)
>> +static ssize_t gfs2_file_write_iter(struct kiocb *iocb, struct iov_iter *iter,
>> + loff_t pos)
>> {
>> struct file *file = iocb->ki_filp;
>> - size_t writesize = iov_length(iov, nr_segs);
>> + size_t writesize = iov_iter_count(iter);
>
> Hmm, I had a vague memory that we'd agreed to call this iov_iter_length
> rather than iov_iter_count in order to keep the existing naming and to
> make it sound more like what it is (the length of the data) as opposed
> to the number of individual buffers to be written.
I had originally agreed, thinking it would be a better name, but then I
realized that iov_iter_count() has been defined that way since 2.6.24
and I didn't want to introduce any more change in this patchset than
necessary since it's already pretty extensive.
> Not that it is desperately important, but just to flag it up in case it
> got forgotten at some stage,
>
> Steve.
>
>
^ permalink raw reply [flat|nested] 4+ messages in thread
* [Cluster-devel] [PATCH V5 26/30] gfs2: Convert aio_read/write ops to read/write_iter
2013-01-10 14:34 ` Dave Kleikamp
@ 2013-01-11 16:24 ` Steven Whitehouse
0 siblings, 0 replies; 4+ messages in thread
From: Steven Whitehouse @ 2013-01-11 16:24 UTC (permalink / raw)
To: cluster-devel.redhat.com
Hi,
On Thu, 2013-01-10 at 08:34 -0600, Dave Kleikamp wrote:
> On 01/10/2013 04:10 AM, Steven Whitehouse wrote:
> > Hi,
> >
> > On Wed, 2013-01-09 at 13:58 -0600, Dave Kleikamp wrote:
> >> Signed-off-by: Dave Kleikamp <dave.kleikamp@oracle.com>
> >> Cc: Steven Whitehouse <swhiteho@redhat.com>
> >> Cc: cluster-devel at redhat.com
> >> ---
> >> fs/gfs2/file.c | 21 ++++++++++-----------
> >> 1 file changed, 10 insertions(+), 11 deletions(-)
> >>
> >> diff --git a/fs/gfs2/file.c b/fs/gfs2/file.c
> >> index 991ab2d..63af1a6 100644
> >> --- a/fs/gfs2/file.c
> >> +++ b/fs/gfs2/file.c
> >> @@ -655,10 +655,9 @@ static int gfs2_fsync(struct file *file, loff_t start, loff_t end,
> >> }
> >>
> >> /**
> >> - * gfs2_file_aio_write - Perform a write to a file
> >> + * gfs2_file_write_iter - Perform a write to a file
> >> * @iocb: The io context
> >> - * @iov: The data to write
> >> - * @nr_segs: Number of @iov segments
> >> + * @iter: The data to write
> >> * @pos: The file position
> >> *
> >> * We have to do a lock/unlock here to refresh the inode size for
> >> @@ -668,11 +667,11 @@ static int gfs2_fsync(struct file *file, loff_t start, loff_t end,
> >> *
> >> */
> >>
> >> -static ssize_t gfs2_file_aio_write(struct kiocb *iocb, const struct iovec *iov,
> >> - unsigned long nr_segs, loff_t pos)
> >> +static ssize_t gfs2_file_write_iter(struct kiocb *iocb, struct iov_iter *iter,
> >> + loff_t pos)
> >> {
> >> struct file *file = iocb->ki_filp;
> >> - size_t writesize = iov_length(iov, nr_segs);
> >> + size_t writesize = iov_iter_count(iter);
> >
> > Hmm, I had a vague memory that we'd agreed to call this iov_iter_length
> > rather than iov_iter_count in order to keep the existing naming and to
> > make it sound more like what it is (the length of the data) as opposed
> > to the number of individual buffers to be written.
>
> I had originally agreed, thinking it would be a better name, but then I
> realized that iov_iter_count() has been defined that way since 2.6.24
> and I didn't want to introduce any more change in this patchset than
> necessary since it's already pretty extensive.
>
Ok, that makes sense to me,
Steve.
> > Not that it is desperately important, but just to flag it up in case it
> > got forgotten at some stage,
> >
> > Steve.
> >
> >
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2013-01-11 16:24 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <1357761525-22718-1-git-send-email-dave.kleikamp@oracle.com>
2013-01-09 19:58 ` [Cluster-devel] [PATCH V5 26/30] gfs2: Convert aio_read/write ops to read/write_iter Dave Kleikamp
2013-01-10 10:10 ` Steven Whitehouse
2013-01-10 14:34 ` Dave Kleikamp
2013-01-11 16:24 ` Steven Whitehouse
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).