From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 05B13C001DE for ; Mon, 7 Aug 2023 23:20:19 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 7D3B36B0074; Mon, 7 Aug 2023 19:20:19 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 75CB98D0005; Mon, 7 Aug 2023 19:20:19 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 5D5D48D0002; Mon, 7 Aug 2023 19:20:19 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0015.hostedemail.com [216.40.44.15]) by kanga.kvack.org (Postfix) with ESMTP id 463386B0074 for ; Mon, 7 Aug 2023 19:20:19 -0400 (EDT) Received: from smtpin01.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id 106AF805E6 for ; Mon, 7 Aug 2023 23:20:19 +0000 (UTC) X-FDA: 81098879358.01.D4FA7D8 Received: from mail-yw1-f202.google.com (mail-yw1-f202.google.com [209.85.128.202]) by imf06.hostedemail.com (Postfix) with ESMTP id 5D0FA180014 for ; Mon, 7 Aug 2023 23:20:17 +0000 (UTC) Authentication-Results: imf06.hostedemail.com; dkim=pass header.d=google.com header.s=20221208 header.b=OnbGVA8I; dmarc=pass (policy=reject) header.from=google.com; spf=pass (imf06.hostedemail.com: domain of 3MHzRZAsKCJs57F9MG9TOIBBJJBG9.7JHGDIPS-HHFQ57F.JMB@flex--ackerleytng.bounces.google.com designates 209.85.128.202 as permitted sender) smtp.mailfrom=3MHzRZAsKCJs57F9MG9TOIBBJJBG9.7JHGDIPS-HHFQ57F.JMB@flex--ackerleytng.bounces.google.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1691450417; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type:content-transfer-encoding: in-reply-to:in-reply-to:references:dkim-signature; bh=1Ut/hDJ+qFMS0sDMssVLi/Qh1tossNoTViyk+Sv5I6I=; b=eyuVOpXp+JsoYyfD11LCEMiZ2KD5WzzOohJZG7ZQRSWIkDA+nRjePiNfM5wvfXtMe+kr+r +ho3+ZtWLxp0OLcdmIi9XHynAS9MuT2VJrN2V94/7JmG1n3OTyHGuA73yl2GwAgtx1UJRj thYbM9QHIggNyHHSu1yhFeR3CBvMawA= ARC-Authentication-Results: i=1; imf06.hostedemail.com; dkim=pass header.d=google.com header.s=20221208 header.b=OnbGVA8I; dmarc=pass (policy=reject) header.from=google.com; spf=pass (imf06.hostedemail.com: domain of 3MHzRZAsKCJs57F9MG9TOIBBJJBG9.7JHGDIPS-HHFQ57F.JMB@flex--ackerleytng.bounces.google.com designates 209.85.128.202 as permitted sender) smtp.mailfrom=3MHzRZAsKCJs57F9MG9TOIBBJJBG9.7JHGDIPS-HHFQ57F.JMB@flex--ackerleytng.bounces.google.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1691450417; a=rsa-sha256; cv=none; b=DMYt1roraOwPNvTv38uLyogmu+P+/m9fMyH1qnG6rhF89TdD0c+j6KVvK4oKTtjdehcWoT CQQCB6qSL2iK+ERpJmmhLANHj+MwNDPRDF7pm5CgNnuXtbMt2lpOek+55fCZWAyGS1LVEb 7KmJyQeHkDKE9ikbpk+wvfc2H46Ir2w= Received: by mail-yw1-f202.google.com with SMTP id 00721157ae682-585fb08172bso58815407b3.2 for ; Mon, 07 Aug 2023 16:20:17 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20221208; t=1691450416; x=1692055216; h=cc:to:from:subject:message-id:mime-version:in-reply-to:date:from:to :cc:subject:date:message-id:reply-to; bh=1Ut/hDJ+qFMS0sDMssVLi/Qh1tossNoTViyk+Sv5I6I=; b=OnbGVA8IPnrsdTREsUm581mRdehgXJT0uL+ALPcn3gfxErJrXCtKmSomsOKaQATGMh f0VvgjqMIW5HLukSt/TZqta9FHSpbW8xuPg/WJY9Y8dBtzBXk68FxKvGTf0SBMt/xuPE yb72/yaLEWHxd2i86q/oL/iyLDDk998ORMSoUHaZduqRHpQmcSBeRXdyojnyjv3Pm4Gp 0hyU2N4jgt9pJV3/SHK5m7Gafo6teeA6CAaXNJJ1Z5NngK3Yas1VVpJwsDY8b342oTWb +N+E2aHGEdoYFXjyTrvdzsHzrQ8RpCJH9Ba/1//rKN61ZJdF3SLJ42ybI7Ydk3RiGWfT qyWQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1691450416; x=1692055216; h=cc:to:from:subject:message-id:mime-version:in-reply-to:date :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=1Ut/hDJ+qFMS0sDMssVLi/Qh1tossNoTViyk+Sv5I6I=; b=O6Ie37ihPuAK0sBSuR8SmOzOxrAbPoRz/zB6/noo+hcJAgd3dI9+fjEYzTkKRM6yTr Rm3yNR/UqIq4NhzmiRqrnt2wZYWHExAeTzGChkBH+ukC+jbw9Ka2OS0U+dKaTlGPxR3j WMPtjhgDVboCF+Fne6znoGmp7XhzPV0wnLpwoiCvYCycJX4COsig11HGSLuBGK9W6z96 drHGeN/bTHaaPBVdxcfiO3j1dW1cWRV3QYPSHsYGSyrte/IRPVMhnvwavgUhEETq6NCt Ndarddfj2gTEdjzBomhJl46CxgFTK0QkO+TrVWZYtWhCDYF22qFWrDtqzjCpHo/BqhR1 K2Vg== X-Gm-Message-State: AOJu0YyDjlU07wKecyOEn7qQsE0rbUwulRAl4PR2lAV/DMN951Pvk7/v UhqfplTX5UL3cKyQaZdKebBk6xVADoDxJ94xhQ== X-Google-Smtp-Source: AGHT+IGdVk9oJYWbSpXuFj0KYecexGvmGzQrsUIUE7DdG+7VjOx16xy0jF3toasrtnWqbigopnLRYvJP03sO+CW+ag== X-Received: from ackerleytng-ctop.c.googlers.com ([fda3:e722:ac3:cc00:7f:e700:c0a8:13f8]) (user=ackerleytng job=sendgmr) by 2002:a81:af45:0:b0:581:7b58:5e70 with SMTP id x5-20020a81af45000000b005817b585e70mr85942ywj.5.1691450416406; Mon, 07 Aug 2023 16:20:16 -0700 (PDT) Date: Mon, 07 Aug 2023 23:20:15 +0000 In-Reply-To: <20230718234512.1690985-29-seanjc@google.com> (message from Sean Christopherson on Tue, 18 Jul 2023 16:45:11 -0700) Mime-Version: 1.0 Message-ID: Subject: Re: [RFC PATCH v11 28/29] KVM: selftests: Add basic selftest for guest_memfd() From: Ackerley Tng To: Sean Christopherson Cc: pbonzini@redhat.com, maz@kernel.org, oliver.upton@linux.dev, chenhuacai@kernel.org, mpe@ellerman.id.au, anup@brainfault.org, paul.walmsley@sifive.com, palmer@dabbelt.com, aou@eecs.berkeley.edu, seanjc@google.com, willy@infradead.org, akpm@linux-foundation.org, paul@paul-moore.com, jmorris@namei.org, serge@hallyn.com, kvm@vger.kernel.org, linux-arm-kernel@lists.infradead.org, kvmarm@lists.linux.dev, linux-mips@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, kvm-riscv@lists.infradead.org, linux-riscv@lists.infradead.org, linux-fsdevel@vger.kernel.org, linux-mm@kvack.org, linux-security-module@vger.kernel.org, linux-kernel@vger.kernel.org, chao.p.peng@linux.intel.com, tabba@google.com, jarkko@kernel.org, yu.c.zhang@linux.intel.com, vannapurve@google.com, mail@maciej.szmigiero.name, vbabka@suse.cz, david@redhat.com, qperret@google.com, michael.roth@amd.com, wei.w.wang@intel.com, liam.merwick@oracle.com, isaku.yamahata@gmail.com, kirill.shutemov@linux.intel.com Content-Type: text/plain; charset="UTF-8" X-Rspamd-Queue-Id: 5D0FA180014 X-Rspam-User: X-Rspamd-Server: rspam04 X-Stat-Signature: wk4emgpta3q3drhqk5yapwd3pw6st5px X-HE-Tag: 1691450417-354397 X-HE-Meta: U2FsdGVkX1/ttI4PPlgk/i5wSPNhWNMyXzyi6/H16Y374GTuAlCr9ZqESwIsQHbQdwjLDZFEA10Pkl792vuTh1Bx77MMROjcofXBaBuVCHHRn4fKugm4ZSfSaXick+0zFkHf4HD0aZyvzYhTppYH41sGzpTYwkUh27vJQJVSXwYisaYZ0yEHSnruVHmK2GPTfFdeEZOw40fLR6tuGwxCsRzZPoBsiI3/dZcSL0acPPfHqKvLmBZESG+tzeEMek7jBGr/OqF5nM9U097kd3C9XEhyTijp+eksGsFd7Cno4ttxubc5QUKO/Nx1uWc6ReXhENxzRG3ya2on9odwNhniWEb5nXZa7fE/XiL9CPebwixc0V4FCEp3QMvWXpmPh1GRerkXzr+fYsHZh95sisIzKEYge49eVA+M0bvSjTVhKO5TAFH8f3/dk82xQ8gjsJmmyFhvpnqMBIrZUc3hYfpokAzEKUVvAr8P1iqXdbY6XqdfLlrWxlJOaCUSnc/FmW/kIvEaD0qYTMkfUv+MLH/QIeDk668p/MzMFbXh7Nqx6d6UyrTMS77X4q/7bnxaadjTFZQC3iewtMAw9eFuQ7Jx6QGPxZsSOGbdfUrjzg+q04Sl69bcEjbMTqw7gVjeujiulZt+KivAxG0TF4sXybv7tpdDA/MPn0ViipcHCDNyBfCoPX1Yaa1XTS73Tk3ka0DP8YineSaOfhdi11rzPC0ZsBuW/pZnFi5dzaUw3RtWLHdB1Amav0ilYmlEflDewxiwqoxp8gnzNEBnQywT+AYsvagTZPeKx7WqgDdHS8gg9yWZ0UBcWOOkUZq+OQQtX7R/WSkKyerrVeRthyM+BeN1wRQ53fYnvYZbnUJjVvxp2Kah86325kk3grQH/gTxYlem6znh59ZAfUAa9MtU9O1V+8fCpoNg88dN/pLlmb+O8TugODbbOA7trGN/Gj5FWZwzFTBR2wUUcCamh7oMZdL c+8PyZNs ASNxgE98eT6R20e2qYoZqxphkvzoB+upksiv0geEdMLAfcfE5v8ESVG10bLfuqffgnSo5DNTxpnMdkDUNLIapI+rtcjKATjZJfnNHrniQLKg3O6Nu+572L1K00cTMnBEuKE7npFd4vYwlshGnGF5uzMudse4HFrpWQhFfdzhRigGBJvHvEZPuALENoR9NgTTZBVF28ywb9VdH1B0JSaXKLL1lN27HT1cPJ5rj/j8JletUm2PvbaatDlezRlmFiXnId2DedG1B3EtVghqbXcAraDyItuxGnBvhYwHJfAyrYdiBsR9MdsckKsZXsdPppv8nJDbRINvSSGhk9Ivoe6Dg7qwW0lf5oMbeZNV/tc75ci0y18gcRORmF1T3/xKiCT0yUm5cmfgyxwvREgZkMtg7z3sWFBkwguLyOHqfz0zB9C0UDTTusKYrEuSRdi1L7lhtVIbQSOHU7etfwq9lxDqogN99pKOsUTzXyetUZ8p54QdsnlmVN7i853OQJHMVsg09w/1d7R/Grg1Vcfx9eZNrrrQEyoJxuWkCiuXUJniL3bQd2UMEmnfKmjS5wVfQMmJ39YDFQY9M9voVJVyb73RvtWHlDspje4bMnggDK7CAFE4uppEdCoo4IZt1PuqR2wo8bPlW429OM5/23qZwNQBot43S2vMfkVOIhq/j2hHMsg/BCNlRFyc7ghoa9BgRSuWtNMDQHv9BZj3/H2NUuAJdfVzEuQ== X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: Sean Christopherson writes: > Add a selftest to verify the basic functionality of guest_memfd(): > > + file descriptor created with the guest_memfd() ioctl does not allow > read/write/mmap operations > + file size and block size as returned from fstat are as expected > + fallocate on the fd checks that offset/length on > fallocate(FALLOC_FL_PUNCH_HOLE) should be page aligned > > > + > +static void test_fallocate(int fd, size_t page_size, size_t total_size) > +{ > + int ret; > + > + ret = fallocate(fd, FALLOC_FL_KEEP_SIZE, 0, total_size); > + TEST_ASSERT(!ret, "fallocate with aligned offset and size should succeed"); > + > + ret = fallocate(fd, FALLOC_FL_KEEP_SIZE | FALLOC_FL_PUNCH_HOLE, > + page_size - 1, page_size); > + TEST_ASSERT(ret, "fallocate with unaligned offset should fail"); > + > + ret = fallocate(fd, FALLOC_FL_KEEP_SIZE, total_size, page_size); > + TEST_ASSERT(ret, "fallocate beginning at total_size should fail"); > + > + ret = fallocate(fd, FALLOC_FL_KEEP_SIZE, total_size + page_size, page_size); > + TEST_ASSERT(ret, "fallocate beginning at total_size should fail"); This should be TEST_ASSERT(ret, "fallocate beginning after total_size should fail"); > + > + ret = fallocate(fd, FALLOC_FL_KEEP_SIZE | FALLOC_FL_PUNCH_HOLE, > + total_size, page_size); > + TEST_ASSERT(!ret, "fallocate(PUNCH_HOLE) at total_size should succeed"); > + > + ret = fallocate(fd, FALLOC_FL_KEEP_SIZE | FALLOC_FL_PUNCH_HOLE, > + total_size + page_size, page_size); > + TEST_ASSERT(!ret, "fallocate(PUNCH_HOLE) after total_size should succeed"); > + > + ret = fallocate(fd, FALLOC_FL_KEEP_SIZE | FALLOC_FL_PUNCH_HOLE, > + page_size, page_size - 1); > + TEST_ASSERT(ret, "fallocate with unaligned size should fail"); > + > + ret = fallocate(fd, FALLOC_FL_KEEP_SIZE | FALLOC_FL_PUNCH_HOLE, > + page_size, page_size); > + TEST_ASSERT(!ret, "fallocate(PUNCH_HOLE) with aligned offset and size should succeed"); > + > + ret = fallocate(fd, FALLOC_FL_KEEP_SIZE, page_size, page_size); > + TEST_ASSERT(!ret, "fallocate to restore punched hole should succeed"); > +} >