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 13ECAC61DA4 for ; Wed, 22 Feb 2023 20:57:11 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 6E9066B0071; Wed, 22 Feb 2023 15:57:11 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 699A86B0072; Wed, 22 Feb 2023 15:57:11 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 560CE6B0073; Wed, 22 Feb 2023 15:57:11 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0011.hostedemail.com [216.40.44.11]) by kanga.kvack.org (Postfix) with ESMTP id 46C196B0071 for ; Wed, 22 Feb 2023 15:57:11 -0500 (EST) Received: from smtpin03.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay03.hostedemail.com (Postfix) with ESMTP id 09615A0A9F for ; Wed, 22 Feb 2023 20:57:11 +0000 (UTC) X-FDA: 80496137862.03.5E0D9DD Received: from mail-qk1-f169.google.com (mail-qk1-f169.google.com [209.85.222.169]) by imf17.hostedemail.com (Postfix) with ESMTP id AFA6E40004 for ; Wed, 22 Feb 2023 20:57:07 +0000 (UTC) Authentication-Results: imf17.hostedemail.com; dkim=pass header.d=soleen.com header.s=google header.b=AwODGJod; dmarc=none; spf=pass (imf17.hostedemail.com: domain of pasha.tatashin@soleen.com designates 209.85.222.169 as permitted sender) smtp.mailfrom=pasha.tatashin@soleen.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1677099427; 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:references:dkim-signature; bh=QU8hxDG35vUh6yYiBcOBiD/61TWxLE8MUXkfu6PCLUo=; b=69kVo+D4msHwWepvpv/vZmVrcbdtynf1V65+fOF4uKYQVEyuFelfyDIr5cTmBN5gTcCE4A djH0FJFG8N9TVxIjVMMl5CPSHRt+PLxd16azvhSuIamfTfcIFC4run2nqJAKAkNMHKu+Hy 7g1SB3LoRQNygPGQLaoEOkjQR3Sa5Oc= ARC-Authentication-Results: i=1; imf17.hostedemail.com; dkim=pass header.d=soleen.com header.s=google header.b=AwODGJod; dmarc=none; spf=pass (imf17.hostedemail.com: domain of pasha.tatashin@soleen.com designates 209.85.222.169 as permitted sender) smtp.mailfrom=pasha.tatashin@soleen.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1677099427; a=rsa-sha256; cv=none; b=LOjIZx/VqjHGkQp2zQKZCL0d6GOCd22pSrXZ/ibq+5gRK8euLWd7u2rhvpF/jA1uHvxA6u dvjvYYZtoP3behXsLY0El9enrlWLiPxPGxxsKdxgrD04uu4hrq4vW5rJbhPUAB+jfjyiqg IVqNLjMXtEq385/9uwtuMo3LefIuLCw= Received: by mail-qk1-f169.google.com with SMTP id f20so1659012qka.7 for ; Wed, 22 Feb 2023 12:57:07 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=soleen.com; s=google; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=QU8hxDG35vUh6yYiBcOBiD/61TWxLE8MUXkfu6PCLUo=; b=AwODGJodfUE71a99Z8KDyCI9K5kK6AOl6XrtzZCSrWJnd5NCpeJoYYWl9cU2VSbfpk NdWLBiKTaEWl3q8g7hI/l3mCYTTxU4xQDWqjeIjIKGdlH5gWMlcu69Im0opmNVm53gub gd8dLYL1vgK49B4A3fB5cVshUxITv+uaurmt2hlujq+ZDeKJ3EQfro6uILJTvQ+rZXQ2 EGf86CLXfNzkZWvhSbGVnbFcqYJTPxOdBFhktGGga3PFzzS0hqpesNlrstz34sSWO91g tFbv9lxlLUSJkztk+T8cDMT+YEo/F/qn9kCwPwE3XTb5fiOzyuUNevxqiMrqlRokj78g UTnw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=QU8hxDG35vUh6yYiBcOBiD/61TWxLE8MUXkfu6PCLUo=; b=1Q+oBG9uEQgHcYjxDeb3u5rIAFLc1SzGfls+/dH8yhf7YZDLtcN89Gb1TFR/Rtjn6H ZHe8h9Zb15/cu0oRQAAosijy87tNMeoJ/kdal6fa7HN03LwR3P3B3khZLPtqjrJNhCN9 QUzz8ZzwTZckRzveUHFepQJWYJwArriihnt2535TY4JdSwtXXMRlLCpxIDtBHzN8gjSK IeKYt92unlc5lyxPZsGi5AE2iO7MgM1yOdHTae701a7QxEX/cjb/+iT58PqC30g0+HfG lb/9X/IK+NBPE5Eof9+dueN80sAnJLPMqQVAPPSrSnTekTng+k5fLJ5EobDmCWR0iDci BdVg== X-Gm-Message-State: AO0yUKURzYmg527R9YW2uqGKjJ+m0kH5JaQ39oLI4njChtPnNLyN562f uoti6LYs2B3mjrEHcLo12VbNTAy8a7SxtdGSYBzygQ== X-Google-Smtp-Source: AK7set+kbdZ6eBTo3XmHGlQsB7xGCea7sINec+AG1MQtGiiCV3F8u5JcdUyHtcov3YyVE1VqDnhssMdii2exim+/yVo= X-Received: by 2002:a05:620a:ec3:b0:72d:8141:fc69 with SMTP id x3-20020a05620a0ec300b0072d8141fc69mr1145747qkm.4.1677099426782; Wed, 22 Feb 2023 12:57:06 -0800 (PST) MIME-Version: 1.0 References: <6070e228-17f1-8495-470d-80dd38963266@amd.com> In-Reply-To: <6070e228-17f1-8495-470d-80dd38963266@amd.com> From: Pasha Tatashin Date: Wed, 22 Feb 2023 15:56:30 -0500 Message-ID: Subject: Re: [LSF/MM/BPF TOPIC] Virtual Machine Memory Passthrough To: "Gupta, Pankaj" Cc: lsf-pc@lists.linux-foundation.org, linux-mm Content-Type: text/plain; charset="UTF-8" X-Rspamd-Queue-Id: AFA6E40004 X-Rspamd-Server: rspam09 X-Rspam-User: X-Stat-Signature: udekbrma1rabgzz84y4zypqpcqhxaph8 X-HE-Tag: 1677099427-818020 X-HE-Meta: U2FsdGVkX1/SRCNuRu657ZaKAT3h1pYHsyxaPdd8Uk8Nf+RobePjX+vAWGLEAbR43PaiqHD/Kdkawv74szMrJQh46RirXiThKEKGSg1W1W9iqRDupnnnJK1PTCjSamphSDQOqdyxUA9BDJztEiQWHrrALm50q4yOHEZsgOqc4Ih/ZyJuY1zEqJ2EgxjQb1RfYgb/SSg3tQ8iL5+5/CXi62zuEqOx7dwv8gL8avi51nibp93BGUGSbfmpi76m4HhS09vpAlx0y4tU4FMQxiYcfNyVGmObFKJwcdNoVNCA1Rma6QxuSsWmdCytvnwbEGnoFlIUFiNDTZm2r/z2IIHgUEiKkrHEzvadTKBVI+ZY4g+/yj6n1uiU+ugvLF8tQh/MPWqBsbFUFTHIkEMcG25r2bpiLCzsmiEJvagrAQ9wqbXK5W6Jc6bvTNasJYON0l4lTo8JYxbY0fcBcjqQWpnWBvK0cLJRcIy/Fq8rP55+YXkavphFpSNerQpHgSBfgD2MGzfb6a5r4CSSV5gpibSBSHUmioDq6Fx7tAm7Ykbf8BVTjBDhn/BYpt0FuqHfKuFgkaPNjpM//FP665CD8G05WfFH6L0jdscB1rHI5txMr1NSapKj2e2z2DsL7BGfhNW1qYe8+UFW6ty9MkiohA3AdqqGXEoZbTSOuEAPkqq4iUaYpP7ODeCtEctRixTNYvkO797yVbzpbe9r7VHXgBm3WJRpNs5kmtF+UMI6q/ytdGaJrpLjQRxzowS809nwqvlqfac1aMntnttd7nf76jXiNDHlPEq1WEJi9u8nGRCCxtE5qLIWDmBiD/GQwUvSaPw2pYn2JIQEClNzhosIMt8Z68FtG49Rz6K0mX3zn1wuukfL3pDyH3gn9ziSktH2a83mMoiUeke9e4iW5XQDU9/wEr/7KUqoVaBDbwcOiYISrn9yikJZz8Px9Y8BBOHOskhFILQK17Tkel7T57nx4ua DoTMlcTJ fThWudm2WKudocrReA/925qAGRrc8MEbhm5E2Cmx+NYa/drE5hFDs6iYIVOtB0EsVL2uGngRfy94fb92oJ+/YMLoerbvSjZpw8P628tj1JvCa17/I5BOttmlKk2ivOTDcPXIQRH+zmf2cqwtj2owxCFzW5wy+cadrqFTw+hKRVM/gtWkyxCgx7MdRhnfrGHEvByE+vD8TRHzJa0jPEefu8qq7osfJ0ppC7Ni6ahGrGe3lQHo= X-Bogosity: Ham, tests=bogofilter, spamicity=0.000390, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: On Wed, Feb 22, 2023 at 3:27 PM Gupta, Pankaj wrote: > > On 2/22/2023 7:18 PM, Pasha Tatashin wrote: > > Hi Pasha, > > >> Coming from the virtio-pmem and some free page hinting background, I am > >> interested in this discussion. I saw your proposal about single owner > >> memory driver in other thread and could not entirely link the dots about > >> applicability of the idea with "reducing the memory footprint overhead > >> for virtual machines". Do we plan to co-ordinate guest memory state with > >> corresponding host state for efficient memory reclaim decisions? > >> Or something entirely different we are targeting here? > > > > Hi Pankaj, > > > > The plan is to have a driver /dev/memctl and corresponding VMM agent > > that synchronously passes information about how guest would like its > > memory to be backed on the host. > > > > For example the following information can come from guest for a range > > of physical addresses: > > MADV_NOHUGEPAGE > > MADV_HUGEPAGE > > MADV_DONTNEED > > PR_SET_VMA_ANON_NAME > > etc. > > > > All together this should help by doing memory management operations > > only on the host side, and reduce the number of operations that are > > performed on the guest. > > o.k. That sounds like guest will have a *special* interface (paravirt?) > for some of the memory management operations with the coordination of host. That is correct, hence memory passthrough. > > Guest would still allow other regular memory operations? which would get > full-filled by the guest? Just wondering if this solution only be > useful for specific workloads which are aware of known MADV calls? Depending on the flexibility of the interface, we are currently working supporting tcmalloc(), and also mmap(MAP_ANONYMOUS), but in the future can be extended to more types of memory. > And might not do/require continuous allocation/deallocation of memory? Contiguous memory allocation on the host is not required. Thanks, Pasha