From patchwork Thu May 9 20:05:55 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Nadav Amit X-Patchwork-Id: 10938169 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 381021398 for ; Fri, 10 May 2019 03:26:12 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 282C528C02 for ; Fri, 10 May 2019 03:26:12 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 1C1CF28C0B; Fri, 10 May 2019 03:26:12 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-6.5 required=2.0 tests=BAYES_00,DATE_IN_PAST_06_12, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FROM,MAILING_LIST_MULTI, RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 3C32E28C02 for ; Fri, 10 May 2019 03:26:10 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726975AbfEJD0J (ORCPT ); Thu, 9 May 2019 23:26:09 -0400 Received: from mail-pg1-f195.google.com ([209.85.215.195]:35446 "EHLO mail-pg1-f195.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726907AbfEJD0J (ORCPT ); Thu, 9 May 2019 23:26:09 -0400 Received: by mail-pg1-f195.google.com with SMTP id h1so2279250pgs.2 for ; Thu, 09 May 2019 20:26:08 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=kzx7YrBzs7ftXeZ/NY4Tra2B+q74lGAghkq7vLf8vvo=; b=oRAxgTCw2qiLTOEf7hRiu+o6Sr7D7S7L0nuCQ2YwxSZGzO1uDFIq+ydYp0ckL/K+6L fqX8I0lIDtKy2vB7VOeCgWqLfuI1F/yCw9O1MWQ+ZTzNTUTgOBPC5LVVgFGGRb4bVEZZ +ahfqFMNCOFJ6ktFD5FG0QWw15D3sGU74zKCXSAvHoy4gRP1l2uZKs1ppOHSd/UmzxXm oky0BmZVvGC/6TPo4K+8Ft37DHYC9utVahrSnAK1og56Hm0fCjz1N+FuA/YA/OmJutwL w8VP3eXHCNWlbAPuPLXlpISXGsTEb3YVZonBkd/qT+dJwerWgbPHx4YHiqGyp4LhnQSn kGgA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=kzx7YrBzs7ftXeZ/NY4Tra2B+q74lGAghkq7vLf8vvo=; b=WcbMbMjs7TwyljgJeXA0Cb5sNksc0GLn6vflDB3hIZIECKIpO8ThttWDUXrlKB2YGM FMIZd7+8vlOzcwEP7Uu30K/JWLfKeeCyYfVRNHBc2QJ+1WKRfWLD6332xm5QD7XjQqCG JfUe4H/RLBibgP4IrxMpP2thyIyKMzmn7LPyaPZxgiWGBVpJWWjfyzRah6gm5Xq6w2AF 0shtqMYvHDe3ngm8Q5H4dAuchBKO11jdKZTGr1a9vz5ZcxDsMSjY8fXnkDJM7V4Bnfc6 tGCpwqcew7GGFzpO9V9jhewCHXyUCRiaBFl+M50KnQSOnbWQb0UMl1zkCi+d8HPto9tD Hg0w== X-Gm-Message-State: APjAAAUUsHyFwoDrBtGLM4eMTq+zv5J5w7mUXVhXcy5uX1+gutikMxU0 qU2O2oXYtJdRgWAXdSno8A0= X-Google-Smtp-Source: APXvYqwYCzHzT+XnyCsv1kLacuUIgayHEB+R93LIoc3LlB+KUQ1YKJrokZ76/PMMuWmNkxitPvNt0A== X-Received: by 2002:a63:560d:: with SMTP id k13mr10726794pgb.124.1557458768180; Thu, 09 May 2019 20:26:08 -0700 (PDT) Received: from sc2-haas01-esx0118.eng.vmware.com ([66.170.99.1]) by smtp.gmail.com with ESMTPSA id z66sm5225592pfz.83.2019.05.09.20.26.06 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 09 May 2019 20:26:06 -0700 (PDT) From: Nadav Amit To: Paolo Bonzini Cc: kvm@vger.kernel.org, Krish Sadhukhan , Andrew Jones , Alexandru Elisei , Nadav Amit Subject: [kvm-unit-tests PATCH v3 1/4] lib/alloc_page: Zero allocated pages Date: Thu, 9 May 2019 13:05:55 -0700 Message-Id: <20190509200558.12347-2-nadav.amit@gmail.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20190509200558.12347-1-nadav.amit@gmail.com> References: <20190509200558.12347-1-nadav.amit@gmail.com> Sender: kvm-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: kvm@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP One of the most important properties of tests is reproducibility. For tests to be reproducible, the same environment should be set on each test invocation. When it comes to memory content, this is not exactly the case in kvm-unit-tests. The tests might, mistakenly or intentionally, assume that memory is zeroed (by the BIOS or KVM). However, failures might not be reproducible if this assumption is broken. As an example, consider x86 do_iret(), which mistakenly does not push SS:RSP onto the stack on 64-bit mode, although they are popped unconditionally on iret. Do not assume that memory is zeroed. Clear it once it is allocated to allow tests to easily be reproduced. Reviewed-by: Krish Sadhukhan Signed-off-by: Nadav Amit Reviewed-by: Andrew Jones --- lib/alloc_page.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/lib/alloc_page.c b/lib/alloc_page.c index 730f2b5..97d1339 100644 --- a/lib/alloc_page.c +++ b/lib/alloc_page.c @@ -65,6 +65,8 @@ void *alloc_page() freelist = *(void **)freelist; spin_unlock(&lock); + if (p) + memset(p, 0, PAGE_SIZE); return p; } @@ -126,6 +128,8 @@ void *alloc_pages(unsigned long order) } } spin_unlock(&lock); + if (run_start) + memset(run_start, 0, n * PAGE_SIZE); return run_start; } From patchwork Thu May 9 20:05:56 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Nadav Amit X-Patchwork-Id: 10938171 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 8EADB14DB for ; Fri, 10 May 2019 03:26:12 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 7E31028C02 for ; Fri, 10 May 2019 03:26:12 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 72FE028C09; Fri, 10 May 2019 03:26:12 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-6.5 required=2.0 tests=BAYES_00,DATE_IN_PAST_06_12, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FROM,MAILING_LIST_MULTI, RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id C1A5328C03 for ; Fri, 10 May 2019 03:26:11 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726996AbfEJD0L (ORCPT ); Thu, 9 May 2019 23:26:11 -0400 Received: from mail-pg1-f194.google.com ([209.85.215.194]:39939 "EHLO mail-pg1-f194.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726907AbfEJD0K (ORCPT ); Thu, 9 May 2019 23:26:10 -0400 Received: by mail-pg1-f194.google.com with SMTP id d31so2269101pgl.7 for ; Thu, 09 May 2019 20:26:10 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=U2uVpmRk96wJlhxFMhGGmnUcggR0ktIHeFn8tAOrUXA=; b=Pxm7ttlaicaukRNDpFbuVn63aTM1/BNGX982Rz/JvNlVQTKBXN8A+zsN53KYfWzt/r UA2ZbxqJElI7c8rkVRJCVno19XBnsY7Ucyr5Eqyg89Q/yqFMEKPj+NFIKSe+/iTziFyu Ghz0WcWlr8QzvoAQkaQ35LGn3B/rTak6IMdOd9y/W3mhJiDBeBRAzumv4xnQqCbHVgwE by5LwUyPAkeUsKrJiMzKoD8SIFxsbvS9Lp2hFWCIt6AdhqiOhSloOppv5nlptrM9USgH jVn6nbwZqdgMKyeD3R6EfOlaGee9askj9lm0s2lHqHxfP0LYOl5vWSIlkIgTVAW55z6s COSg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=U2uVpmRk96wJlhxFMhGGmnUcggR0ktIHeFn8tAOrUXA=; b=Wtbyq0t5HSvww5Dw+S6ltFeK4Q9dRfp03slseZJVMqCFmHQACBaVp128Y6NZ69eh6u 6T2Wadu4YkMIHYj0T1D4kallTb2WCJoE4EB+geGogV3Ka5fUNu1URjL6up+3d3rm3z7b 1S6NxfjJL3Ywz5i9OjCRWCL3JIGWZCvh5j4+CgZjKl7bHGSBp8/aNffTZGiaw5hbf72b SzZxK5Tx3JubOpJQ9V+Jh/vBtzyvkEA/2h0Tx4YUJmFY7oAkgbNxixXqJxnVt7xvCVqu yk+ISxaCtj3LbH9WeJFUOsEKDAwQlIZfT5xTDrE/xcCsQTRV+nb4mvZVtVRTMc2bfSQI NlHQ== X-Gm-Message-State: APjAAAVS0EdcIyAFRI68u+xSI4r43RsOCtCCK436av+qSo1PXs7oI3JB 7H0/w7nSXBZ7cGtY+pOpWiE= X-Google-Smtp-Source: APXvYqxMkJe9SO8GyICE5pCKPdPFKSrFu4DJ7odik7XCPHZahKiPXT556xqHnhuGGPwmYR5R0Xss/Q== X-Received: by 2002:aa7:8296:: with SMTP id s22mr10969001pfm.52.1557458769491; Thu, 09 May 2019 20:26:09 -0700 (PDT) Received: from sc2-haas01-esx0118.eng.vmware.com ([66.170.99.1]) by smtp.gmail.com with ESMTPSA id z66sm5225592pfz.83.2019.05.09.20.26.08 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 09 May 2019 20:26:08 -0700 (PDT) From: Nadav Amit To: Paolo Bonzini Cc: kvm@vger.kernel.org, Krish Sadhukhan , Andrew Jones , Alexandru Elisei , Nadav Amit Subject: [kvm-unit-tests PATCH v3 2/4] x86: Remove redundant page zeroing Date: Thu, 9 May 2019 13:05:56 -0700 Message-Id: <20190509200558.12347-3-nadav.amit@gmail.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20190509200558.12347-1-nadav.amit@gmail.com> References: <20190509200558.12347-1-nadav.amit@gmail.com> Sender: kvm-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: kvm@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP Now that alloc_page() zeros the page, remove the redundant page zeroing. Reviewed-by: Krish Sadhukhan Suggested-by: Andrew Jones Signed-off-by: Nadav Amit --- lib/x86/intel-iommu.c | 5 ----- x86/eventinj.c | 1 - x86/hyperv_connections.c | 4 ---- x86/vmx.c | 10 ---------- x86/vmx_tests.c | 11 ----------- 5 files changed, 31 deletions(-) diff --git a/lib/x86/intel-iommu.c b/lib/x86/intel-iommu.c index 3f3f211..c811ba5 100644 --- a/lib/x86/intel-iommu.c +++ b/lib/x86/intel-iommu.c @@ -125,7 +125,6 @@ static void vtd_setup_root_table(void) { void *root = alloc_page(); - memset(root, 0, PAGE_SIZE); vtd_writeq(DMAR_RTADDR_REG, virt_to_phys(root)); vtd_gcmd_or(VTD_GCMD_ROOT); printf("DMAR table address: %#018lx\n", vtd_root_table()); @@ -135,7 +134,6 @@ static void vtd_setup_ir_table(void) { void *root = alloc_page(); - memset(root, 0, PAGE_SIZE); /* 0xf stands for table size (2^(0xf+1) == 65536) */ vtd_writeq(DMAR_IRTA_REG, virt_to_phys(root) | 0xf); vtd_gcmd_or(VTD_GCMD_IR_TABLE); @@ -153,7 +151,6 @@ static void vtd_install_pte(vtd_pte_t *root, iova_t iova, offset = PGDIR_OFFSET(iova, level); if (!(root[offset] & VTD_PTE_RW)) { page = alloc_page(); - memset(page, 0, PAGE_SIZE); root[offset] = virt_to_phys(page) | VTD_PTE_RW; } root = (uint64_t *)(phys_to_virt(root[offset] & @@ -195,7 +192,6 @@ void vtd_map_range(uint16_t sid, iova_t iova, phys_addr_t pa, size_t size) if (!re->present) { ce = alloc_page(); - memset(ce, 0, PAGE_SIZE); memset(re, 0, sizeof(*re)); re->context_table_p = virt_to_phys(ce) >> VTD_PAGE_SHIFT; re->present = 1; @@ -209,7 +205,6 @@ void vtd_map_range(uint16_t sid, iova_t iova, phys_addr_t pa, size_t size) if (!ce->present) { slptptr = alloc_page(); - memset(slptptr, 0, PAGE_SIZE); memset(ce, 0, sizeof(*ce)); /* To make it simple, domain ID is the same as SID */ ce->domain_id = sid; diff --git a/x86/eventinj.c b/x86/eventinj.c index 8064eb9..d2dfc40 100644 --- a/x86/eventinj.c +++ b/x86/eventinj.c @@ -398,7 +398,6 @@ int main(void) pt = alloc_page(); cr3 = (void*)read_cr3(); - memset(pt, 0, 4096); /* use shadowed stack during interrupt delivery */ for (i = 0; i < 4096/sizeof(ulong); i++) { if (!cr3[i]) { diff --git a/x86/hyperv_connections.c b/x86/hyperv_connections.c index 5d541c9..8eade41 100644 --- a/x86/hyperv_connections.c +++ b/x86/hyperv_connections.c @@ -47,7 +47,6 @@ static void setup_hypercall(void) hypercall_page = alloc_page(); if (!hypercall_page) report_abort("failed to allocate hypercall page"); - memset(hypercall_page, 0, PAGE_SIZE); wrmsr(HV_X64_MSR_GUEST_OS_ID, guestid); @@ -105,9 +104,6 @@ static void setup_cpu(void *ctx) hv->post_msg = alloc_page(); if (!hv->msg_page || !hv->evt_page || !hv->post_msg) report_abort("failed to allocate synic pages for vcpu"); - memset(hv->msg_page, 0, sizeof(*hv->msg_page)); - memset(hv->evt_page, 0, sizeof(*hv->evt_page)); - memset(hv->post_msg, 0, sizeof(*hv->post_msg)); hv->msg_conn = MSG_CONN_BASE + vcpu; hv->evt_conn = EVT_CONN_BASE + vcpu; diff --git a/x86/vmx.c b/x86/vmx.c index be47800..962ec0f 100644 --- a/x86/vmx.c +++ b/x86/vmx.c @@ -353,7 +353,6 @@ static void test_vmwrite_vmread(void) struct vmcs *vmcs = alloc_page(); u32 vmcs_enum_max, max_index = 0; - memset(vmcs, 0, PAGE_SIZE); vmcs->hdr.revision_id = basic.revision; assert(!vmcs_clear(vmcs)); assert(!make_vmcs_current(vmcs)); @@ -373,7 +372,6 @@ static void test_vmcs_high(void) { struct vmcs *vmcs = alloc_page(); - memset(vmcs, 0, PAGE_SIZE); vmcs->hdr.revision_id = basic.revision; assert(!vmcs_clear(vmcs)); assert(!make_vmcs_current(vmcs)); @@ -400,7 +398,6 @@ static void test_vmcs_lifecycle(void) for (i = 0; i < ARRAY_SIZE(vmcs); i++) { vmcs[i] = alloc_page(); - memset(vmcs[i], 0, PAGE_SIZE); vmcs[i]->hdr.revision_id = basic.revision; } @@ -647,7 +644,6 @@ static void test_vmclear_flushing(void) for (i = 0; i < ARRAY_SIZE(vmcs); i++) { vmcs[i] = alloc_page(); - memset(vmcs[i], 0, PAGE_SIZE); } vmcs[0]->hdr.revision_id = basic.revision; @@ -745,7 +741,6 @@ static void split_large_ept_entry(unsigned long *ptep, int level) new_pt = alloc_page(); assert(new_pt); - memset(new_pt, 0, PAGE_SIZE); prototype = pte & ~EPT_ADDR_MASK; if (level == 2) @@ -1220,7 +1215,6 @@ static void init_vmcs_guest(void) static int init_vmcs(struct vmcs **vmcs) { *vmcs = alloc_page(); - memset(*vmcs, 0, PAGE_SIZE); (*vmcs)->hdr.revision_id = basic.revision; /* vmclear first to init vmcs */ if (vmcs_clear(*vmcs)) { @@ -1259,7 +1253,6 @@ static void init_vmx(void) ulong fix_cr4_set, fix_cr4_clr; vmxon_region = alloc_page(); - memset(vmxon_region, 0, PAGE_SIZE); vmcs_root = alloc_page(); @@ -1291,9 +1284,7 @@ static void init_vmx(void) *vmxon_region = basic.revision; guest_stack = alloc_page(); - memset(guest_stack, 0, PAGE_SIZE); guest_syscall_stack = alloc_page(); - memset(guest_syscall_stack, 0, PAGE_SIZE); } static void do_vmxon_off(void *data) @@ -1420,7 +1411,6 @@ static void test_vmptrst(void) struct vmcs *vmcs1, *vmcs2; vmcs1 = alloc_page(); - memset(vmcs1, 0, PAGE_SIZE); init_vmcs(&vmcs1); ret = vmcs_save(&vmcs2); report("test vmptrst", (!ret) && (vmcs1 == vmcs2)); diff --git a/x86/vmx_tests.c b/x86/vmx_tests.c index 2d6b12d..c52ebc6 100644 --- a/x86/vmx_tests.c +++ b/x86/vmx_tests.c @@ -253,7 +253,6 @@ static void msr_bmp_init(void) u32 ctrl_cpu0; msr_bitmap = alloc_page(); - memset(msr_bitmap, 0x0, PAGE_SIZE); ctrl_cpu0 = vmcs_read(CPU_EXEC_CTRL0); ctrl_cpu0 |= CPU_MSR_BITMAP; vmcs_write(CPU_EXEC_CTRL0, ctrl_cpu0); @@ -627,8 +626,6 @@ static int iobmp_init(struct vmcs *vmcs) io_bitmap_a = alloc_page(); io_bitmap_b = alloc_page(); - memset(io_bitmap_a, 0x0, PAGE_SIZE); - memset(io_bitmap_b, 0x0, PAGE_SIZE); ctrl_cpu0 = vmcs_read(CPU_EXEC_CTRL0); ctrl_cpu0 |= CPU_IO_BITMAP; ctrl_cpu0 &= (~CPU_IO); @@ -1062,8 +1059,6 @@ static int setup_ept(bool enable_ad) if (__setup_ept(virt_to_phys(pml4), enable_ad)) return 1; - memset(pml4, 0, PAGE_SIZE); - end_of_memory = fwcfg_get_u64(FW_CFG_RAM_SIZE); if (end_of_memory < (1ul << 32)) end_of_memory = (1ul << 32); @@ -1135,8 +1130,6 @@ static int ept_init_common(bool have_ad) return VMX_TEST_EXIT; data_page1 = alloc_page(); data_page2 = alloc_page(); - memset(data_page1, 0x0, PAGE_SIZE); - memset(data_page2, 0x0, PAGE_SIZE); *((u32 *)data_page1) = MAGIC_VAL_1; *((u32 *)data_page2) = MAGIC_VAL_2; install_ept(pml4, (unsigned long)data_page1, (unsigned long)data_page2, @@ -1483,7 +1476,6 @@ static int pml_init(struct vmcs *vmcs) } pml_log = alloc_page(); - memset(pml_log, 0x0, PAGE_SIZE); vmcs_write(PMLADDR, (u64)pml_log); vmcs_write(GUEST_PML_INDEX, PML_INDEX - 1); @@ -1908,9 +1900,6 @@ static int msr_switch_init(struct vmcs *vmcs) exit_msr_store = alloc_page(); exit_msr_load = alloc_page(); entry_msr_load = alloc_page(); - memset(exit_msr_store, 0, PAGE_SIZE); - memset(exit_msr_load, 0, PAGE_SIZE); - memset(entry_msr_load, 0, PAGE_SIZE); entry_msr_load[0].index = MSR_KERNEL_GS_BASE; entry_msr_load[0].value = MSR_MAGIC; From patchwork Thu May 9 20:05:57 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Nadav Amit X-Patchwork-Id: 10938173 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id BFB1A1398 for ; Fri, 10 May 2019 03:26:13 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id B02ED28C02 for ; Fri, 10 May 2019 03:26:13 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id A502E28C09; Fri, 10 May 2019 03:26:13 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-6.5 required=2.0 tests=BAYES_00,DATE_IN_PAST_06_12, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FROM,MAILING_LIST_MULTI, RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 4F51428C02 for ; Fri, 10 May 2019 03:26:13 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727001AbfEJD0M (ORCPT ); Thu, 9 May 2019 23:26:12 -0400 Received: from mail-pf1-f196.google.com ([209.85.210.196]:46456 "EHLO mail-pf1-f196.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726907AbfEJD0M (ORCPT ); Thu, 9 May 2019 23:26:12 -0400 Received: by mail-pf1-f196.google.com with SMTP id y11so2393637pfm.13 for ; Thu, 09 May 2019 20:26:11 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=tl7VjzHdgtJTQ15zG/VNPKyp4z4cERyhkkjo6X/eOYs=; b=sCzF6jmJ8Vi+ecAUksZR948sBlZlHTmqTK2syYl4+wPW+Q0RyRNSnMGpWZkqL2RtZS k5RFOeapXVURDI2KVPzOnX8V8xUg2tEuv8xgV0m1yhYvWnnQfUVSdAJUYenbfG0zlq8d hF8C9sv6ZdAsFPgX0aPrH469mbsPVXp0SFuhoYrMqNhvlbPRhpQDcEYljdL81c/t/a9E rXkFvrEahrrA3aVt84EVdxbLmyyKRJQT5u20W14KQHvKBmJff+p8HC47sV0hMmhBqq6u Mpgn5xH1dcSpq6GB4uU3M4+yNYl7vjN5f/VFSAOSg2dFI3mvXQTYQaeVME5hTnTBeJVc 6DqQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=tl7VjzHdgtJTQ15zG/VNPKyp4z4cERyhkkjo6X/eOYs=; b=b34YMMHzWIfqpoPhjCK964SF3pOgr1kIXnL+BRZ2nQ/ue/F44j07plLYb27axPOUjM ZD6m9u5hC+2+Xc8mMZRjxOZSbv7eENKVLOE5moCVNS71D6U3sWLNjhQC/7UPvubbD5iJ aZqGGUiVWxulfBwpAu9mTdT8RW/rD9VI7cbAaDanMp7WPQbtDY9oA3xECwLTU/6B2kNb 1UoE7+wMWr9ZouazFsLpS1V4V55YSN83x5+LnLKM9GuPKX4cdU06gjjAdUA8dwzKR1IA TTs+h9jEFJn41OLBv0m5/qdRlQ1Rq3MNG9ihM8xa/7ji0Xvm0iLzqYp3jjSpGiO4VkMO vDLw== X-Gm-Message-State: APjAAAXilZS/hwzUVv3iR7Orh0tz+2M7nEAPV3KgoV6+t64CtSCm7Go9 cqdbOq/DNwhbWsWYA1DRwt4= X-Google-Smtp-Source: APXvYqzx6NoI1ZVWKBueAT9NzcVcWFE1CuKa1zz62WOp+tiwzPDeeRiW3nxP8rKWvchcLlNasTZUqQ== X-Received: by 2002:a62:7793:: with SMTP id s141mr10742057pfc.21.1557458771341; Thu, 09 May 2019 20:26:11 -0700 (PDT) Received: from sc2-haas01-esx0118.eng.vmware.com ([66.170.99.1]) by smtp.gmail.com with ESMTPSA id z66sm5225592pfz.83.2019.05.09.20.26.09 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 09 May 2019 20:26:09 -0700 (PDT) From: Nadav Amit To: Paolo Bonzini Cc: kvm@vger.kernel.org, Krish Sadhukhan , Andrew Jones , Alexandru Elisei , Nadav Amit Subject: [kvm-unit-tests PATCH v3 3/4] lib: Remove redundant page zeroing Date: Thu, 9 May 2019 13:05:57 -0700 Message-Id: <20190509200558.12347-4-nadav.amit@gmail.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20190509200558.12347-1-nadav.amit@gmail.com> References: <20190509200558.12347-1-nadav.amit@gmail.com> Sender: kvm-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: kvm@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP Now that alloc_page() zeros the page, remove the redundant page zeroing. Reviewed-by: Krish Sadhukhan Suggested-by: Andrew Jones Signed-off-by: Nadav Amit Reviewed-by: Andrew Jones --- lib/virtio-mmio.c | 1 - 1 file changed, 1 deletion(-) diff --git a/lib/virtio-mmio.c b/lib/virtio-mmio.c index 57fe78e..e5e8f66 100644 --- a/lib/virtio-mmio.c +++ b/lib/virtio-mmio.c @@ -56,7 +56,6 @@ static struct virtqueue *vm_setup_vq(struct virtio_device *vdev, vq = calloc(1, sizeof(*vq)); assert(VIRTIO_MMIO_QUEUE_SIZE_MIN <= 2*PAGE_SIZE); queue = alloc_pages(1); - memset(queue, 0, 2*PAGE_SIZE); assert(vq && queue); writel(index, vm_dev->base + VIRTIO_MMIO_QUEUE_SEL); From patchwork Thu May 9 20:05:58 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Nadav Amit X-Patchwork-Id: 10938175 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id CB72513AD for ; Fri, 10 May 2019 03:26:15 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id BA43D28C02 for ; Fri, 10 May 2019 03:26:15 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id AF00F28C09; Fri, 10 May 2019 03:26:15 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-6.5 required=2.0 tests=BAYES_00,DATE_IN_PAST_06_12, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FROM,MAILING_LIST_MULTI, RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 3943A28C02 for ; Fri, 10 May 2019 03:26:15 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727016AbfEJD0O (ORCPT ); Thu, 9 May 2019 23:26:14 -0400 Received: from mail-pg1-f193.google.com ([209.85.215.193]:39944 "EHLO mail-pg1-f193.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726907AbfEJD0N (ORCPT ); Thu, 9 May 2019 23:26:13 -0400 Received: by mail-pg1-f193.google.com with SMTP id d31so2269170pgl.7 for ; Thu, 09 May 2019 20:26:13 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=q7h5Qs9EG/wncRXZ7Hbvuyl3Ay6PMSDz6cuLAx/xGP0=; b=gQsOEZ+tPYhV+OgzrB1nvGIL/Uy32KUMnCGLs4xZATGSP3kGjgrjSq6YVeRPBFgDsz QBybmG6nAvPaFhV4Ka1leg1suyeiOYGr66xnJLCF80BBnkGvW7s7LlaH7yZkzK6EAa+b zbNeSyUr0F4g+F7a7AZbi3GZtZ98/6xWTccujIDA4TlviwnXGLtLg3O0c3gbykfrJZnt I/PK+VVoyfzxGH/4wPh2gnICg8aQuE8nkuLgloc7Pt0mGJGbwzd7Hfj7Ot+zmAt95M0Y Iud9OmdWqHBLwZFzuB9CXp2yPrtjqQStI5L4NHUO0ryKTcImzoU7HBTy6RaawO1/ZndW 2isA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=q7h5Qs9EG/wncRXZ7Hbvuyl3Ay6PMSDz6cuLAx/xGP0=; b=n/7YrXQKl1FNXP/zOn2cO95sWoX0wCjQ7wcZzLThqQYY2PtVFccYlh1ccb8/p6WYgf tu2+2Wb0aSbJXK61Xr/NI68ZVLFiKJGA9BWNjW/2NpT3CmyKFHi8v8QpcRNccyVLl4HU YzRc0MIFz0TTqzH5Dnd6m0ElDgjGdn7qM826FHpbh9dcvtCwPFtMWRpHGXwq6anOIG3D IbN3OHj3KlrpofSuFnQxGxyIqmTcxud2wFHhxTtFDcefoyNV9Tg88tuwTi6CBIHZWhbU LePo6QQMWWAK2NJpoAZ6potOwdReMklkLbN/ZN1skOOw6hhe34A/OaKJzniUVoOKiPJt dvKA== X-Gm-Message-State: APjAAAXCDMeeRjVdx99oqyPDRpYggG4yB5B65buIxs6XNN2wVYDEJ6Hf MHx24krBUWIeHSuBHj2KLf68XCiXbfE= X-Google-Smtp-Source: APXvYqxqdZZKbbq6A/dVk0NLTdhtIkbQk5X6Skp6BQw3AQF2zNLp7eGrbQIED+lgSiSD7ZST0i2ETA== X-Received: by 2002:a63:f806:: with SMTP id n6mr10702834pgh.242.1557458772705; Thu, 09 May 2019 20:26:12 -0700 (PDT) Received: from sc2-haas01-esx0118.eng.vmware.com ([66.170.99.1]) by smtp.gmail.com with ESMTPSA id z66sm5225592pfz.83.2019.05.09.20.26.11 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 09 May 2019 20:26:11 -0700 (PDT) From: Nadav Amit To: Paolo Bonzini Cc: kvm@vger.kernel.org, Krish Sadhukhan , Andrew Jones , Alexandru Elisei , Nadav Amit Subject: [kvm-unit-tests PATCH v3 4/4] arm: Remove redundant page zeroing Date: Thu, 9 May 2019 13:05:58 -0700 Message-Id: <20190509200558.12347-5-nadav.amit@gmail.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20190509200558.12347-1-nadav.amit@gmail.com> References: <20190509200558.12347-1-nadav.amit@gmail.com> Sender: kvm-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: kvm@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP Now that alloc_page() zeros the page, remove the redundant page zeroing. Reviewed-by: Alexandru Elisei Suggested-by: Andrew Jones Signed-off-by: Nadav Amit Reviewed-by: Andrew Jones --- lib/arm/asm/pgtable.h | 2 -- lib/arm/mmu.c | 1 - lib/arm64/asm/pgtable.h | 1 - 3 files changed, 4 deletions(-) diff --git a/lib/arm/asm/pgtable.h b/lib/arm/asm/pgtable.h index b614bce..241dff6 100644 --- a/lib/arm/asm/pgtable.h +++ b/lib/arm/asm/pgtable.h @@ -53,7 +53,6 @@ static inline pmd_t *pmd_alloc_one(void) { assert(PTRS_PER_PMD * sizeof(pmd_t) == PAGE_SIZE); pmd_t *pmd = alloc_page(); - memset(pmd, 0, PTRS_PER_PMD * sizeof(pmd_t)); return pmd; } static inline pmd_t *pmd_alloc(pgd_t *pgd, unsigned long addr) @@ -80,7 +79,6 @@ static inline pte_t *pte_alloc_one(void) { assert(PTRS_PER_PTE * sizeof(pte_t) == PAGE_SIZE); pte_t *pte = alloc_page(); - memset(pte, 0, PTRS_PER_PTE * sizeof(pte_t)); return pte; } static inline pte_t *pte_alloc(pmd_t *pmd, unsigned long addr) diff --git a/lib/arm/mmu.c b/lib/arm/mmu.c index 03f6622..3d38c83 100644 --- a/lib/arm/mmu.c +++ b/lib/arm/mmu.c @@ -166,7 +166,6 @@ void *setup_mmu(phys_addr_t phys_end) #endif mmu_idmap = alloc_page(); - memset(mmu_idmap, 0, PAGE_SIZE); /* * mach-virt I/O regions: diff --git a/lib/arm64/asm/pgtable.h b/lib/arm64/asm/pgtable.h index 5860abe..ee0a2c8 100644 --- a/lib/arm64/asm/pgtable.h +++ b/lib/arm64/asm/pgtable.h @@ -61,7 +61,6 @@ static inline pte_t *pte_alloc_one(void) { assert(PTRS_PER_PTE * sizeof(pte_t) == PAGE_SIZE); pte_t *pte = alloc_page(); - memset(pte, 0, PTRS_PER_PTE * sizeof(pte_t)); return pte; } static inline pte_t *pte_alloc(pmd_t *pmd, unsigned long addr)