[PATCH -next] KVM: PPC: Fix error return code in kvm_vm_ioctl_create_spapr_tce()
Paul Mackerras
paulus at ozlabs.org
Wed Feb 8 20:48:06 AEDT 2017
On Tue, Feb 07, 2017 at 03:34:07PM +0000, Wei Yongjun wrote:
> From: Wei Yongjun <weiyongjun1 at huawei.com>
>
> Fix to return error code -ENOMEM from the memory alloc error handling
> case instead of 0, as done elsewhere in this function.
>
> Signed-off-by: Wei Yongjun <weiyongjun1 at huawei.com>
> ---
> arch/powerpc/kvm/book3s_64_vio.c | 8 ++++++--
> 1 file changed, 6 insertions(+), 2 deletions(-)
>
> diff --git a/arch/powerpc/kvm/book3s_64_vio.c b/arch/powerpc/kvm/book3s_64_vio.c
> index d71f872..8a4a3f0 100644
> --- a/arch/powerpc/kvm/book3s_64_vio.c
> +++ b/arch/powerpc/kvm/book3s_64_vio.c
> @@ -173,8 +173,10 @@ long kvm_vm_ioctl_create_spapr_tce(struct kvm *kvm,
>
> stt = kzalloc(sizeof(*stt) + npages * sizeof(struct page *),
> GFP_KERNEL);
> - if (!stt)
> + if (!stt) {
> + ret = -ENOMEM;
> goto fail;
I think it would be better to set ret unconditionally to -ENOMEM
before the if; that would save you one line here and make the second
hunk unnecessary.
> + }
>
> stt->liobn = args->liobn;
> stt->page_shift = args->page_shift;
> @@ -184,8 +186,10 @@ long kvm_vm_ioctl_create_spapr_tce(struct kvm *kvm,
>
> for (i = 0; i < npages; i++) {
> stt->pages[i] = alloc_page(GFP_KERNEL | __GFP_ZERO);
> - if (!stt->pages[i])
> + if (!stt->pages[i]) {
> + ret = -ENOMEM;
> goto fail;
> + }
> }
>
> kvm_get_kvm(kvm);
Paul.
More information about the Linuxppc-dev
mailing list