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 99378C10F1B for ; Sat, 24 Dec 2022 03:26:37 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id B8145900005; Fri, 23 Dec 2022 22:26:36 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id B0A04900004; Fri, 23 Dec 2022 22:26:36 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 9AB7D900005; Fri, 23 Dec 2022 22:26:36 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0014.hostedemail.com [216.40.44.14]) by kanga.kvack.org (Postfix) with ESMTP id 89B53900004 for ; Fri, 23 Dec 2022 22:26:36 -0500 (EST) Received: from smtpin23.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay08.hostedemail.com (Postfix) with ESMTP id 551DA1407B8 for ; Sat, 24 Dec 2022 03:26:36 +0000 (UTC) X-FDA: 80275762392.23.308C784 Received: from szxga03-in.huawei.com (szxga03-in.huawei.com [45.249.212.189]) by imf07.hostedemail.com (Postfix) with ESMTP id 1B9E640012 for ; Sat, 24 Dec 2022 03:26:32 +0000 (UTC) Authentication-Results: imf07.hostedemail.com; dkim=none; spf=pass (imf07.hostedemail.com: domain of liushixin2@huawei.com designates 45.249.212.189 as permitted sender) smtp.mailfrom=liushixin2@huawei.com; dmarc=pass (policy=quarantine) header.from=huawei.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1671852394; a=rsa-sha256; cv=none; b=fCXCr59mFmlaf5kJ19yPXBgjIIUj+bDkxHP58dKWFZvljcKC63x6762vF126J2fo/MKZCh aS5/ksCWDtio+KKRrHEHP6PHru8kvy4CDM2aYQrGtBnUuoTCp2aTSrr+70Qdc/V9cyLQSO dUZBoz5kK8Q3UyAyE8eHphSLp+G9LIo= ARC-Authentication-Results: i=1; imf07.hostedemail.com; dkim=none; spf=pass (imf07.hostedemail.com: domain of liushixin2@huawei.com designates 45.249.212.189 as permitted sender) smtp.mailfrom=liushixin2@huawei.com; dmarc=pass (policy=quarantine) header.from=huawei.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1671852394; 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:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=gx5uHzWerQ42W9XZ84R8tRbQoly7PBF1xnlQXra4nuU=; b=gi+uaKPjrGigHcF7vve/9eaUAENiopslZjAgS+kFZloESpR5xs+MaMwaaDUqlFvEiVgXDm kfXDyZNOpLE9peOTnyaa/9DZgD8n3RJoJZANje7vVVf1py5qQs+tiDFnCmxgZQMHtdKnfH YotF2VnzOBO/NRO0LmnvWBi4ruJ8ncM= Received: from dggpemm100009.china.huawei.com (unknown [172.30.72.53]) by szxga03-in.huawei.com (SkyGuard) with ESMTP id 4Nf8W43F5zzJpS0; Sat, 24 Dec 2022 11:22:40 +0800 (CST) Received: from [10.174.179.24] (10.174.179.24) by dggpemm100009.china.huawei.com (7.185.36.113) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.34; Sat, 24 Dec 2022 11:26:28 +0800 Subject: Re: [PATCH] virtio_balloon: high order allocation To: Soichiro Ueda , , , , References: <20221223093527.12424-1-the.latticeheart@gmail.com> CC: , , , , , From: Liu Shixin Message-ID: <3fabf076-0fd8-2ad2-52e7-3c2913308156@huawei.com> Date: Sat, 24 Dec 2022 11:26:27 +0800 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.7.1 MIME-Version: 1.0 In-Reply-To: <20221223093527.12424-1-the.latticeheart@gmail.com> Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit X-Originating-IP: [10.174.179.24] X-ClientProxiedBy: dggems704-chm.china.huawei.com (10.3.19.181) To dggpemm100009.china.huawei.com (7.185.36.113) X-CFilter-Loop: Reflected X-Rspam-User: X-Rspamd-Queue-Id: 1B9E640012 X-Rspamd-Server: rspam01 X-Stat-Signature: pkoajmym4ctke1b9818cc4h45wxkbfnd X-HE-Tag: 1671852392-121721 X-HE-Meta: U2FsdGVkX186QZ6jLDUIfvpgrawqf/9sOB8iDgOw2jGx9Pgf5+hvTteKRTIogr2M8TK54JmVwRp+f7Cupc9pESNKSr6kk1u802r5iacJJkMb4MGFSoufmRoK4XnTsV/GLdYEdgoB9dZefE/E9bgLTEuhJDG2g0qHjEwSyojBInJpY2l/GghegizqQpnaZlmDrinqt3M4E5GsioAUjBhmhbe+ik7rP6qppjwemb/0zsOcHBhNz32gzKT2usrhwTZ8UpRz6og69kjfQhnoAsvLp3kY79CpuT1dHcbKu7mvG5IdA0eoENTWmuvz8Mpida66l9s0hrEmLG7LHz6eQYnJbcYEtQIAPx4lOoZXd2Mo+7k3rdVELH272YGlRsLDt7vQ/sLbVdnjCsIv5GOh+BsP2eFAHzQDga2GHxj2JuaCBVp11XR1nanJr0gdd5gvgFiWTjOWB673pmKaA8T4+yXXFGEiGl2jeYGA8qFikyJ2QSb224+iDZAH+E2uu3ydcm2QMmrYVT4uq4XN1PkMCakqGi9LdJoK0a34afUk4kv5DE8mDlUMsV3ejkRHY5Y63SQj/7i1PWxbd6ifEXyfi2PttkZdY0hQL6ojZqaP8AatuVL+rQiND3M5qCKjLkC9dX6Y7kEv1+/pvoGstKARmeTJaChJtRkkHBg2t2dGBzIDYc66TuV6cfuBTfdziAgGfWYvwbNI4Y36YolQz37XnglHdB57cl5iNYynDuhn2o+A0SB3W706TzM9xzzQ28BAMgzilDNfHyJsSqKguWG9+385XERuvLQh2eBCYTgsrcRyHe0IX8lh5+cmojtkhehhfx1NymrXQ/VXlpw6NFnFNsSL3XU7lCQD3Gqj/C1fo+dBQKMoNHbU+VmlHnTluOY/l1kImQ6hiwSF2W16WCnwqslPRxWhdflPB7QIbpHFRrTsktoKg7kJ9F3tOpqjWSs9FH5j 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: Hi, Soichiro: I'm interested with your patch. I'm looking at it and found some possible issues. On 2022/12/23 17:35, Soichiro Ueda wrote: > + for (i = 0; i < num_pfns; i++) { > + set_page_pfns(vb, vb->pfns + vb->num_pfns + i, > + nth_page(page, i)); > + } Since the interval of vb->num_pfns is VIRTIO_BALLOON_PAGES_PER_PAGE, it seems that the pfns[] should be vb->pfns + vb->num_pfns + i * VIRTIO_BALLOON_PAGES_PER_PAGE. > + vb->num_pages += > + num_pfns * VIRTIO_BALLOON_PAGES_PER_PAGE; > + if (!virtio_has_feature( > + vb->vdev, VIRTIO_BALLOON_F_DEFLATE_ON_OOM)) > + adjust_managed_page_count(page, -num_pfns); num_pfns is of the unsigned int type so need be to converted to long manually. root@syzkaller:~# free -m total used free shared buff/cache available Mem: 1975 78 1822 2 74 1869 Swap: 0 0 0 root@syzkaller:~# QEMU 7.2.0 monitor - type 'help' for more information (qemu) info balloon balloon: actual=2048 (qemu) balloon 2046 (qemu) root@syzkaller:~# free -m total used free shared buff/cache available Mem: 33556405 33554510 1819 2 74 1867 Swap: 0 0 0 > + > + num_pfns = (1 << order); > + for (i = 0; i < num_pfns; i++) > + set_page_pfns(vb, vb->pfns + vb->num_pfns + i, nth_page(page, i)); The same problem mentioned above. thanks, Liu Shixin .