[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <498cdd0d-1f9b-4a58-e789-9a9dfe2880fe@redhat.com>
Date: Tue, 9 May 2017 11:46:19 +0200
From: Paolo Bonzini <pbonzini@...hat.com>
To: Geliang Tang <geliangtang@...il.com>,
Radim Krčmář <rkrcmar@...hat.com>
Cc: kvm@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH] KVM: set no_llseek in stat_fops_per_vm
On 06/05/2017 17:37, Geliang Tang wrote:
> In vm_stat_get_per_vm_fops and vcpu_stat_get_per_vm_fops, since we
> use nonseekable_open() to open, we should use no_llseek() to seek,
> not generic_file_llseek().
>
> Signed-off-by: Geliang Tang <geliangtang@...il.com>
This is not strictly necessary, nonseekable_open bypasses f_op->llseek
due to this code in vfs_llseek:
fn = no_llseek;
if (file->f_mode & FMODE_LSEEK) {
if (file->f_op->llseek)
fn = file->f_op->llseek;
}
return fn(file, offset, whence);
But it's a good thing to do anyway, so I'm applying it.
Paolo
> ---
> virt/kvm/kvm_main.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/virt/kvm/kvm_main.c b/virt/kvm/kvm_main.c
> index c2bb6ab..798f567 100644
> --- a/virt/kvm/kvm_main.c
> +++ b/virt/kvm/kvm_main.c
> @@ -3689,7 +3689,7 @@ static const struct file_operations vm_stat_get_per_vm_fops = {
> .release = kvm_debugfs_release,
> .read = simple_attr_read,
> .write = simple_attr_write,
> - .llseek = generic_file_llseek,
> + .llseek = no_llseek,
> };
>
> static int vcpu_stat_get_per_vm(void *data, u64 *val)
> @@ -3734,7 +3734,7 @@ static const struct file_operations vcpu_stat_get_per_vm_fops = {
> .release = kvm_debugfs_release,
> .read = simple_attr_read,
> .write = simple_attr_write,
> - .llseek = generic_file_llseek,
> + .llseek = no_llseek,
> };
>
> static const struct file_operations *stat_fops_per_vm[] = {
>
Powered by blists - more mailing lists