Messages in this thread | | | Date | Wed, 22 Aug 2012 15:22:44 +0300 | From | Avi Kivity <> | Subject | Re: [PATCH RESEND] kvm: Fix nonsense handling of compat ioctl |
| |
On 08/20/2012 05:43 PM, Alan Cox wrote: > From: Alan Cox <alan@linux.intel.com> > > KVM_SET_SIGNAL_MASK passed a NULL argument leaves the on stack signal > sets uninitialized. It then passes them through to > kvm_vcpu_ioctl_set_sigmask. > > We should be passing a NULL in this case not translated garbage. > > Signed-off-by: Alan Cox <alan@linux.intel.com> > --- > > virt/kvm/kvm_main.c | 7 ++++--- > 1 file changed, 4 insertions(+), 3 deletions(-) > > diff --git a/virt/kvm/kvm_main.c b/virt/kvm/kvm_main.c > index a2e85af..e47a7ca 100644 > --- a/virt/kvm/kvm_main.c > +++ b/virt/kvm/kvm_main.c > @@ -1975,9 +1975,10 @@ static long kvm_vcpu_compat_ioctl(struct file *filp, > if (copy_from_user(&csigset, sigmask_arg->sigset, > sizeof csigset)) > goto out; > - } > - sigset_from_compat(&sigset, &csigset); > - r = kvm_vcpu_ioctl_set_sigmask(vcpu, &sigset); > + sigset_from_compat(&sigset, &csigset); > + r = kvm_vcpu_ioctl_set_sigmask(vcpu, &sigset); > + } else > + kvm_vcpu_ioctl_set_sigmask(vcpu, NULL); > break; > }
Now r is uninitiali[sz]ed.
-- error compiling committee.c: too many arguments to function
| |