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 3C68BC00140 for ; Wed, 10 Aug 2022 06:05:23 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 9876A8E0003; Wed, 10 Aug 2022 02:05:22 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 936538E0001; Wed, 10 Aug 2022 02:05:22 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 7FEA08E0003; Wed, 10 Aug 2022 02:05:22 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0017.hostedemail.com [216.40.44.17]) by kanga.kvack.org (Postfix) with ESMTP id 731C98E0001 for ; Wed, 10 Aug 2022 02:05:22 -0400 (EDT) Received: from smtpin22.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id 4ABD1806D0 for ; Wed, 10 Aug 2022 06:05:22 +0000 (UTC) X-FDA: 79782645684.22.29DADF4 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by imf29.hostedemail.com (Postfix) with ESMTP id 24F57120166 for ; Wed, 10 Aug 2022 06:05:20 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1660111519; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=sBlUQH9ZYI87QjLCL8xa8WoZuHTUiJ4rE7hGqowqg5w=; b=Ycw27qd+Tw/u1BzLLrHKs0hFF3FYt8ECBE4BMuzIasJIxDUdJOoNjTl4+7SZcgMR1f6WbV 21P2GAnyPLRFyYMho7s+06YaDLuM/N6kt0xEJtkPOwmsTg1BZlFXhEE/ZhzN3hAX+JM6Ew rAldF0NUDcf/3AVdXJmLKI1Ad24htJM= Received: from mail-ed1-f72.google.com (mail-ed1-f72.google.com [209.85.208.72]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-600-uo_ADSf4ONGBmNddDehiwQ-1; Wed, 10 Aug 2022 02:05:15 -0400 X-MC-Unique: uo_ADSf4ONGBmNddDehiwQ-1 Received: by mail-ed1-f72.google.com with SMTP id n8-20020a05640205c800b00434fb0c150cso8544232edx.19 for ; Tue, 09 Aug 2022 23:05:15 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc; bh=sBlUQH9ZYI87QjLCL8xa8WoZuHTUiJ4rE7hGqowqg5w=; b=iK3KsCRuv6SY612DCnrUjoQadryDbR+5T9b0yDrc7/1mDS40IZnvB9aocX2Jj/0kH0 J9FIU5jvfB5M0zHVnL717Fu+k7NqYcJeEJO1x2t40TGvbh/ihmvaF0ltp3oSnx3Qe5El 3eyau135XUe9tkzV6VWyrV3LYaK+vML4/hVGpUyC2F7DmqobALg1IirwoHyStjLTy3H1 dKKxh+yYAYKMBnw7dfsHMp4fwWGTHa551NMFAn9D6O/ZFVY+PS/1hyxChZtM7vLW+vOY He4cLmnoHo2onf/lsXvXvkmEB4b0MbYGzM5HGGGM1b9XpkQaPhYkD2Suzy82EF5uFys1 r2nQ== X-Gm-Message-State: ACgBeo3LHfQlvEtYhQgxsJitdbrzQk3MXqczWXYzq9BYMh5QONgO61y/ 2raLkeTmHaUDsG7L4IrvXLeNq09JAf9OzYNdtiMmm7DvT9ybr4v2D+Arw3l9kX4mfSNBA47ODD0 mAjYbhA4xyh8= X-Received: by 2002:a17:906:fd84:b0:730:acee:d067 with SMTP id xa4-20020a170906fd8400b00730aceed067mr19393965ejb.206.1660111514545; Tue, 09 Aug 2022 23:05:14 -0700 (PDT) X-Google-Smtp-Source: AA6agR4zsECaQisdchCePlp4yUAvq88BKlsK7g/FdrfvnijgIa0+CeZxy11peJJUHhW3QeKUTE6NCQ== X-Received: by 2002:a17:906:fd84:b0:730:acee:d067 with SMTP id xa4-20020a170906fd8400b00730aceed067mr19393941ejb.206.1660111514262; Tue, 09 Aug 2022 23:05:14 -0700 (PDT) Received: from redhat.com ([2.52.152.113]) by smtp.gmail.com with ESMTPSA id b18-20020a17090630d200b00732a5b3d09csm1658020ejb.89.2022.08.09.23.05.11 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 09 Aug 2022 23:05:13 -0700 (PDT) Date: Wed, 10 Aug 2022 02:05:09 -0400 From: "Michael S. Tsirkin" To: Alexander Atanasov Cc: Jonathan Corbet , Andrew Morton , kernel@openvz.org, David Hildenbrand , Wei Liu , Nadav Amit , linux-kernel@vger.kernel.org, linux-fsdevel@vger.kernel.org, linux-doc@vger.kernel.org, linux-mm@kvack.org Subject: Re: [PATCH v1 1/2] Enable balloon drivers to report inflated memory Message-ID: <20220810020330-mutt-send-email-mst@kernel.org> References: <7bfac48d-2e50-641b-6523-662ea4df0240@virtuozzo.com> <20220809094933.2203087-1-alexander.atanasov@virtuozzo.com> <20220809063111-mutt-send-email-mst@kernel.org> MIME-Version: 1.0 In-Reply-To: X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset=us-ascii Content-Disposition: inline ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1660111522; a=rsa-sha256; cv=none; b=OFfAV42ETLZUZuAzU6VbKaDWsSZJtB/I8dkWvSn3zkHU0/w3uBjT8311R9RA4iI+ZM/iTw OUtU0FR3Yl4zVnNuNiJ4YUqw+mOhxr7mrgUIS49XYx3X7Ww2eBoejG/i5W3oXqh985bmMm x7ZfM+xoQGH4VgZVpBwBWZz10iNhypo= ARC-Authentication-Results: i=1; imf29.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b=Ycw27qd+; spf=pass (imf29.hostedemail.com: domain of mst@redhat.com designates 170.10.133.124 as permitted sender) smtp.mailfrom=mst@redhat.com; dmarc=pass (policy=none) header.from=redhat.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1660111522; 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=sBlUQH9ZYI87QjLCL8xa8WoZuHTUiJ4rE7hGqowqg5w=; b=XR6CDRUXobaEDpycnY768iECcg2CX+3divFKWEJYKOM3CG703TQ3q49Vxh2GmPBYvwC1zT xjyIvjzQVTRcUQ4LHWuaI6jRa/9w1VRYcYwlQeWqkTZ0B7AiBa+nCZ5Ob3ReLC9HaPAM73 yR5FHEXijVv2qP+5Bluh1iM52IP6r9M= X-Rspamd-Queue-Id: 24F57120166 Authentication-Results: imf29.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b=Ycw27qd+; spf=pass (imf29.hostedemail.com: domain of mst@redhat.com designates 170.10.133.124 as permitted sender) smtp.mailfrom=mst@redhat.com; dmarc=pass (policy=none) header.from=redhat.com X-Rspamd-Server: rspam09 X-Rspam-User: X-Stat-Signature: fz6fb5sm5dtpj3jq4hzpjt3zyamnjw4k X-HE-Tag: 1660111520-779793 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: On Wed, Aug 10, 2022 at 08:54:52AM +0300, Alexander Atanasov wrote: > On 9.08.22 13:32, Michael S. Tsirkin wrote: > > On Tue, Aug 09, 2022 at 12:49:32PM +0300, Alexander Atanasov wrote: > > > @@ -153,6 +156,14 @@ static int meminfo_proc_show(struct seq_file *m, void *v) > > > global_zone_page_state(NR_FREE_CMA_PAGES)); > > > #endif > > > +#ifdef CONFIG_MEMORY_BALLOON > > > + inflated_kb = atomic_long_read(&mem_balloon_inflated_kb); > > > + if (inflated_kb >= 0) > > > + seq_printf(m, "Inflated(total): %8ld kB\n", inflated_kb); > > > + else > > > + seq_printf(m, "Inflated(free): %8ld kB\n", -inflated_kb); > > > +#endif > > > + > > > hugetlb_report_meminfo(m); > > > arch_report_meminfo(m); > > > > > > This seems too baroque for my taste. > > Why not just have two counters for the two pruposes? > > I agree it is not good but it reflects the current situation. > Dirvers account in only one way - either used or total - which i don't like. > So to save space and to avoid the possibility that some driver starts to use > both at the same time. I suggest to be only one value. I don't see what would be wrong if some driver used both at some point. > > > And is there any value in having this atomic? > > We want a consistent value but just READ_ONCE seems sufficient ... > > I do not see this as only a value that is going to be displayed. > I tried to be defensive here and to avoid premature optimization. > One possible scenario is OOM killer(using the value) vs balloon deflate on > oom will need it. But any other user of that value will likely need it > atomic too. Drivers use spin_locks for calculations they might find a way to > reduce the spin lock usage and use the atomic. > While making it a long could only bring bugs without benefits. > It is not on a fast path too so i prefer to be safe. Well we do not normally spread atomics around just because we can, it does not magically make the code safe. If this needs atomics we need to document why. > -- > Regards, > Alexander Atanasov