From mboxrd@z Thu Jan 1 00:00:00 1970 From: Dushyant Bansal Date: Tue, 05 Apr 2011 08:59:40 +0000 Subject: Patching guest kernel code for better performance from HOST Message-Id: <4D9AD9E7.20904@cse.iitd.ac.in> MIME-Version: 1 Content-Type: multipart/mixed; boundary="------------020806040400010400050204" List-Id: To: kvm-ppc@vger.kernel.org This is a multi-part message in MIME format. --------------020806040400010400050204 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Hi all, I understand that in order to improve performance by reducing vm exits, kvm uses one shared page between kvm and guest. Now, guest tells the host to map the magic page to '-4096'. How does kvm make sure that guest will not use this address ( -4096) for other purpose? Then, guest itself patches its kernel. I am trying to patch guest from host. So far, I have tried to patch MFMSR instruction. Patching is done when kvm tries to emulate MFMSR. Mechanism used to generate new instruction is same as used by guest in "arch/powerpc/kernel/kvm.c" --- a/arch/powerpc/kvm/book3s_emulate.c +++ b/arch/powerpc/kvm/book3s_emulate.c @@ -88,6 +88,23 @@ int kvmppc_core_emulate_op(struct kvm_run *run, struct kvm_vcpu *vcpu, case OP_31_XOP_MFMSR: kvmppc_set_gpr(vcpu, get_rt(inst), vcpu->arch.shared->msr); + + pc = kvmppc_get_pc(vcpu); + + //if pte.may_write==false then, kvmppc_st will not work + kvmppc_xlate(vcpu,pc,false, &pte); + pte.may_write=true; + + //Generate new instruction + addr= (-4096L) + offsetof(struct kvm_vcpu_arch_shared, msr); + u32 rt1 = inst & 0x03e00000; + u32 new_inst=0x80000000 | rt1 | ((addr + 4) & 0x0000fffc); + + //patch only if magic page is mapped; try patching only for 0x7c0000a6 inst + if (vcpu->arch.magic_page_pa==0xfffff000 && inst==0x7c0000a6) { + kvmppc_st(vcpu,&pc,sizeof(u32),&new_inst,true); + } + break; case OP_31_XOP_MTMSRD: { But, the problem is guest hangs during boot. I have attached the screenshot of the guest. I am not able to figure out the problem. Is there something wrong with the approach? I have checked that new_inst generated corresponding to 0x7c0000a6 instruction matches with the instruction that is generated when guest patches itself. Thanks, Dushyant --------------020806040400010400050204 Content-Type: image/png; name="Screenshot.png" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="Screenshot.png" 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 jt/HGvI/bGdopXn+mtOEOlaUKgqncJHa0tNX5NM9uurBjbipylnacKi5nUHT7Wlr0bku1f3w hXv593JOMrvoqmf10LQ+NLWKrlC8RehlhvRkB/VU5l6utyxNx6+ZSzrq+u1Y6TP7K1blK8y/ znnpZKl0GQDF4ay7AoXepPAuM4b7/SpqzheveQouVcXue6o/I7njA8Ooi626tgrHL0XVPy8t rotF10npfVtxGym9Xt4Lx+L+r3kpS+tbYWEqhpS4VB7r+0l1zRzCR5d6DZn0dV+VfekKv49h /iEt9Jpe043e6iY4xf1dUY0sWmVLI7YkD4o5l9Vrv8jScRl2o9goy6pRVbCLP/QbEY0WqVXs b3TF1cfVzE9pPTf9qqurlpe7hnt0pf89Tf5t2jVjmjeLLrbqrqPpdcnfB9T3GXU90bm+suvl t+tE/75ter1qi67c72+KR0D+ZNOPrXzvW1OLecvqm3s9lN1vrbt0K/o++r2vKuKB/HkNFc82 2cmnVzfTD5jq/8GX+T2RvvfJTlA9SDBJJ/991nxXwOiqy9K3e8RmykGx3aUFyPv+1uksXyad 0aa+sqSoD22IrnTOt9mxJtZPu4ryo/+szV93zV/zju8Yad63M9+F2upDI9FV6X3PPbpq8L7n 8b7ksR5m6pisvqnrYaXfR7/3VX3DOqOiKk6gsGhcYgXZoD/3a2AaU7u3iMry7+u8TNsmLdoy K02nhui/6hbvKs7Xona1QbPddu058cJMJs82zf3bVh+Moquq34tv6r7XIbL6pqiHlX4fm/r+ tnQeLM1+ltbe9WSv+NUZXfnNv8vHGdvr6/qaXpepuqe730+6/r0rTbxt32vH+7x1Btr2vWjb MuFeykcxFEQxYriK5773+6rnAKsrq8Qb5bPqm2Zh37Pfcq70uvi6F3coutIsz9ruzoX58Rhj +ao/fU2nNH2dA9n1+vkth3Q+HeuDzve6tvJ3OW4N3+KuPDe9l4+svmnWw0q/j77uq5oCWeer ztslisFYhbNM5e87+Y9Y/LJUpJPPQGmWSnvcS9/GKiwu/Y58nfR1/qQuh8LtpS8NKU4hPzRN lM3GqfmijfqFnUw6mm8zub/VojPxrDAZgC8b0WhxXeze9i39UriUs+ZXWL889a+7cBtTqLgu mvk3nUhW//qW3lcdJ2AU2mNWTK+X0XUp/V5oVkWP9zed8/JeDqb3E+E28abpW+TCbQJe9/pg +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 sjfsAAAAAElFTkSuQmCC --------------020806040400010400050204--