Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 190071
b: refs/heads/master
c: b7af404
h: refs/heads/master
i:
  190069: 4e65fc0
  190067: f308ed5
  190063: 7d2b9c3
v: v3
  • Loading branch information
Takuya Yoshikawa authored and Avi Kivity committed Apr 20, 2010
1 parent 0f618f8 commit d0bfe15
Show file tree
Hide file tree
Showing 2 changed files with 16 additions and 11 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 7567cae105e435b53e5a3e778546dd3ec53e3204
refs/heads/master: b7af40433870aa0636932ad39b0c48a0cb319057
25 changes: 15 additions & 10 deletions trunk/arch/x86/kvm/svm.c
Original file line number Diff line number Diff line change
Expand Up @@ -706,29 +706,28 @@ static struct kvm_vcpu *svm_create_vcpu(struct kvm *kvm, unsigned int id)
if (err)
goto free_svm;

err = -ENOMEM;
page = alloc_page(GFP_KERNEL);
if (!page) {
err = -ENOMEM;
if (!page)
goto uninit;
}

err = -ENOMEM;
msrpm_pages = alloc_pages(GFP_KERNEL, MSRPM_ALLOC_ORDER);
if (!msrpm_pages)
goto uninit;
goto free_page1;

nested_msrpm_pages = alloc_pages(GFP_KERNEL, MSRPM_ALLOC_ORDER);
if (!nested_msrpm_pages)
goto uninit;

svm->msrpm = page_address(msrpm_pages);
svm_vcpu_init_msrpm(svm->msrpm);
goto free_page2;

hsave_page = alloc_page(GFP_KERNEL);
if (!hsave_page)
goto uninit;
goto free_page3;

svm->nested.hsave = page_address(hsave_page);

svm->msrpm = page_address(msrpm_pages);
svm_vcpu_init_msrpm(svm->msrpm);

svm->nested.msrpm = page_address(nested_msrpm_pages);

svm->vmcb = page_address(page);
Expand All @@ -744,6 +743,12 @@ static struct kvm_vcpu *svm_create_vcpu(struct kvm *kvm, unsigned int id)

return &svm->vcpu;

free_page3:
__free_pages(nested_msrpm_pages, MSRPM_ALLOC_ORDER);
free_page2:
__free_pages(msrpm_pages, MSRPM_ALLOC_ORDER);
free_page1:
__free_page(page);
uninit:
kvm_vcpu_uninit(&svm->vcpu);
free_svm:
Expand Down

0 comments on commit d0bfe15

Please sign in to comment.