From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752411AbeDLAYj (ORCPT ); Wed, 11 Apr 2018 20:24:39 -0400 Received: from userp2130.oracle.com ([156.151.31.86]:49524 "EHLO userp2130.oracle.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751858AbeDLAYh (ORCPT ); Wed, 11 Apr 2018 20:24:37 -0400 Subject: Re: [virtio-dev] Re: [PATCH v2] virtio_balloon: export hugetlb page allocation counts To: Jason Wang , "Michael S. Tsirkin" Cc: virtualization@lists.linux-foundation.org, linux-kernel@vger.kernel.org, virtio-dev@lists.oasis-open.org, Mihai Carabas References: <1521497654-24807-1-git-send-email-jonathan.helman@oracle.com> <6ED6CAC9-FAD9-4A27-A9B1-C6EFC7627D68@oracle.com> <20180322050842-mutt-send-email-mst@kernel.org> <3f8a1b91-c5ba-8a24-72b8-02d884a67826@redhat.com> From: Jonathan Helman Organization: Oracle Corporation Message-ID: <1d2bcb00-b210-b992-318e-c65607d31dff@oracle.com> Date: Wed, 11 Apr 2018 17:24:27 -0700 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.7.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 8bit X-Proofpoint-Virus-Version: vendor=nai engine=5900 definitions=8860 signatures=668698 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 suspectscore=0 malwarescore=0 phishscore=0 bulkscore=0 spamscore=0 mlxscore=0 mlxlogscore=999 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1711220000 definitions=main-1804120002 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 04/10/2018 08:12 PM, Jason Wang wrote: > > > On 2018年04月10日 05:11, Jonathan Helman wrote: >> >> >> On 03/22/2018 07:38 PM, Jason Wang wrote: >>> >>> >>> On 2018年03月22日 11:10, Michael S. Tsirkin wrote: >>>> On Thu, Mar 22, 2018 at 09:52:18AM +0800, Jason Wang wrote: >>>>> On 2018年03月20日 12:26, Jonathan Helman wrote: >>>>>>> On Mar 19, 2018, at 7:31 PM, Jason Wang  wrote: >>>>>>> >>>>>>> >>>>>>> >>>>>>> On 2018年03月20日 06:14, Jonathan Helman wrote: >>>>>>>> Export the number of successful and failed hugetlb page >>>>>>>> allocations via the virtio balloon driver. These 2 counts >>>>>>>> come directly from the vm_events HTLB_BUDDY_PGALLOC and >>>>>>>> HTLB_BUDDY_PGALLOC_FAIL. >>>>>>>> >>>>>>>> Signed-off-by: Jonathan Helman >>>>>>> Reviewed-by: Jason Wang >>>>>> Thanks. >>>>>> >>>>>>>> --- >>>>>>>>    drivers/virtio/virtio_balloon.c     | 6 ++++++ >>>>>>>>    include/uapi/linux/virtio_balloon.h | 4 +++- >>>>>>>>    2 files changed, 9 insertions(+), 1 deletion(-) >>>>>>>> >>>>>>>> diff --git a/drivers/virtio/virtio_balloon.c >>>>>>>> b/drivers/virtio/virtio_balloon.c >>>>>>>> index dfe5684..6b237e3 100644 >>>>>>>> --- a/drivers/virtio/virtio_balloon.c >>>>>>>> +++ b/drivers/virtio/virtio_balloon.c >>>>>>>> @@ -272,6 +272,12 @@ static unsigned int >>>>>>>> update_balloon_stats(struct virtio_balloon *vb) >>>>>>>>                    pages_to_bytes(events[PSWPOUT])); >>>>>>>>        update_stat(vb, idx++, VIRTIO_BALLOON_S_MAJFLT, >>>>>>>> events[PGMAJFAULT]); >>>>>>>>        update_stat(vb, idx++, VIRTIO_BALLOON_S_MINFLT, >>>>>>>> events[PGFAULT]); >>>>>>>> +#ifdef CONFIG_HUGETLB_PAGE >>>>>>>> +    update_stat(vb, idx++, VIRTIO_BALLOON_S_HTLB_PGALLOC, >>>>>>>> +            events[HTLB_BUDDY_PGALLOC]); >>>>>>>> +    update_stat(vb, idx++, VIRTIO_BALLOON_S_HTLB_PGFAIL, >>>>>>>> +            events[HTLB_BUDDY_PGALLOC_FAIL]); >>>>>>>> +#endif >>>>>>>>    #endif >>>>>>>>        update_stat(vb, idx++, VIRTIO_BALLOON_S_MEMFREE, >>>>>>>>                    pages_to_bytes(i.freeram)); >>>>>>>> diff --git a/include/uapi/linux/virtio_balloon.h >>>>>>>> b/include/uapi/linux/virtio_balloon.h >>>>>>>> index 4e8b830..40297a3 100644 >>>>>>>> --- a/include/uapi/linux/virtio_balloon.h >>>>>>>> +++ b/include/uapi/linux/virtio_balloon.h >>>>>>>> @@ -53,7 +53,9 @@ struct virtio_balloon_config { >>>>>>>>    #define VIRTIO_BALLOON_S_MEMTOT   5   /* Total amount of >>>>>>>> memory */ >>>>>>>>    #define VIRTIO_BALLOON_S_AVAIL    6   /* Available memory as >>>>>>>> in /proc */ >>>>>>>>    #define VIRTIO_BALLOON_S_CACHES   7   /* Disk caches */ >>>>>>>> -#define VIRTIO_BALLOON_S_NR       8 >>>>>>>> +#define VIRTIO_BALLOON_S_HTLB_PGALLOC  8  /* Hugetlb page >>>>>>>> allocations */ >>>>>>>> +#define VIRTIO_BALLOON_S_HTLB_PGFAIL   9  /* Hugetlb page >>>>>>>> allocation failures */ >>>>>>>> +#define VIRTIO_BALLOON_S_NR       10 >>>>>>>>      /* >>>>>>>>     * Memory statistics structure. >>>>>>> Not for this patch, but it looks to me that exporting such nr >>>>>>> through uapi is fragile. >>>>>> Sorry, can you explain what you mean here? >>>>>> >>>>>> Jon >>>>> Spec said "Within an output buffer submitted to the statsq, the >>>>> device MUST >>>>> ignore entries with tag values that it does not recognize". So >>>>> exporting >>>>> VIRTIO_BALLOON_S_NR seems useless and device implementation can not >>>>> depend >>>>> on such number in uapi. >>>>> >>>>> Thanks >>>> Suggestions? I don't like to break build for people ... >>>> >>> >>> Didn't have a good idea. But maybe we should keep VIRTIO_BALLOON_S_NR >>> unchanged, and add a comment here. >>> >>> Thanks >> >> I think Jason's comment is for a future patch. Didn't see this patch >> get applied, so wondering if it could be. >> >> Thanks, >> Jon > > Hi Jon: > > Have you tested new driver with old qemu? Yes, this testing scenario looks good. Thanks. Jon > > Thanks > > From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jonathan Helman Subject: Re: [virtio-dev] Re: [PATCH v2] virtio_balloon: export hugetlb page allocation counts Date: Wed, 11 Apr 2018 17:24:27 -0700 Message-ID: <1d2bcb00-b210-b992-318e-c65607d31dff@oracle.com> References: <1521497654-24807-1-git-send-email-jonathan.helman@oracle.com> <6ED6CAC9-FAD9-4A27-A9B1-C6EFC7627D68@oracle.com> <20180322050842-mutt-send-email-mst@kernel.org> <3f8a1b91-c5ba-8a24-72b8-02d884a67826@redhat.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: Content-Language: en-US List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: virtualization-bounces@lists.linux-foundation.org Errors-To: virtualization-bounces@lists.linux-foundation.org To: Jason Wang , "Michael S. Tsirkin" Cc: Mihai Carabas , virtio-dev@lists.oasis-open.org, linux-kernel@vger.kernel.org, virtualization@lists.linux-foundation.org List-Id: virtualization@lists.linuxfoundation.org CgpPbiAwNC8xMC8yMDE4IDA4OjEyIFBNLCBKYXNvbiBXYW5nIHdyb3RlOgo+IAo+IAo+IE9uIDIw MTjlubQwNOaciDEw5pelIDA1OjExLCBKb25hdGhhbiBIZWxtYW4gd3JvdGU6Cj4+Cj4+Cj4+IE9u IDAzLzIyLzIwMTggMDc6MzggUE0sIEphc29uIFdhbmcgd3JvdGU6Cj4+Pgo+Pj4KPj4+IE9uIDIw MTjlubQwM+aciDIy5pelIDExOjEwLCBNaWNoYWVsIFMuIFRzaXJraW4gd3JvdGU6Cj4+Pj4gT24g VGh1LCBNYXIgMjIsIDIwMTggYXQgMDk6NTI6MThBTSArMDgwMCwgSmFzb24gV2FuZyB3cm90ZToK Pj4+Pj4gT24gMjAxOOW5tDAz5pyIMjDml6UgMTI6MjYsIEpvbmF0aGFuIEhlbG1hbiB3cm90ZToK Pj4+Pj4+PiBPbiBNYXIgMTksIDIwMTgsIGF0IDc6MzEgUE0sIEphc29uIFdhbmc8amFzb3dhbmdA cmVkaGF0LmNvbT7CoCB3cm90ZToKPj4+Pj4+Pgo+Pj4+Pj4+Cj4+Pj4+Pj4KPj4+Pj4+PiBPbiAy MDE45bm0MDPmnIgyMOaXpSAwNjoxNCwgSm9uYXRoYW4gSGVsbWFuIHdyb3RlOgo+Pj4+Pj4+PiBF eHBvcnQgdGhlIG51bWJlciBvZiBzdWNjZXNzZnVsIGFuZCBmYWlsZWQgaHVnZXRsYiBwYWdlCj4+ Pj4+Pj4+IGFsbG9jYXRpb25zIHZpYSB0aGUgdmlydGlvIGJhbGxvb24gZHJpdmVyLiBUaGVzZSAy IGNvdW50cwo+Pj4+Pj4+PiBjb21lIGRpcmVjdGx5IGZyb20gdGhlIHZtX2V2ZW50cyBIVExCX0JV RERZX1BHQUxMT0MgYW5kCj4+Pj4+Pj4+IEhUTEJfQlVERFlfUEdBTExPQ19GQUlMLgo+Pj4+Pj4+ Pgo+Pj4+Pj4+PiBTaWduZWQtb2ZmLWJ5OiBKb25hdGhhbiBIZWxtYW48am9uYXRoYW4uaGVsbWFu QG9yYWNsZS5jb20+Cj4+Pj4+Pj4gUmV2aWV3ZWQtYnk6IEphc29uIFdhbmc8amFzb3dhbmdAcmVk aGF0LmNvbT4KPj4+Pj4+IFRoYW5rcy4KPj4+Pj4+Cj4+Pj4+Pj4+IC0tLQo+Pj4+Pj4+PiDCoMKg IGRyaXZlcnMvdmlydGlvL3ZpcnRpb19iYWxsb29uLmPCoMKgwqDCoCB8IDYgKysrKysrCj4+Pj4+ Pj4+IMKgwqAgaW5jbHVkZS91YXBpL2xpbnV4L3ZpcnRpb19iYWxsb29uLmggfCA0ICsrKy0KPj4+ Pj4+Pj4gwqDCoCAyIGZpbGVzIGNoYW5nZWQsIDkgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbigt KQo+Pj4+Pj4+Pgo+Pj4+Pj4+PiBkaWZmIC0tZ2l0IGEvZHJpdmVycy92aXJ0aW8vdmlydGlvX2Jh bGxvb24uYyAKPj4+Pj4+Pj4gYi9kcml2ZXJzL3ZpcnRpby92aXJ0aW9fYmFsbG9vbi5jCj4+Pj4+ Pj4+IGluZGV4IGRmZTU2ODQuLjZiMjM3ZTMgMTAwNjQ0Cj4+Pj4+Pj4+IC0tLSBhL2RyaXZlcnMv dmlydGlvL3ZpcnRpb19iYWxsb29uLmMKPj4+Pj4+Pj4gKysrIGIvZHJpdmVycy92aXJ0aW8vdmly dGlvX2JhbGxvb24uYwo+Pj4+Pj4+PiBAQCAtMjcyLDYgKzI3MiwxMiBAQCBzdGF0aWMgdW5zaWdu ZWQgaW50IAo+Pj4+Pj4+PiB1cGRhdGVfYmFsbG9vbl9zdGF0cyhzdHJ1Y3QgdmlydGlvX2JhbGxv b24gKnZiKQo+Pj4+Pj4+PiDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgcGFn ZXNfdG9fYnl0ZXMoZXZlbnRzW1BTV1BPVVRdKSk7Cj4+Pj4+Pj4+IMKgwqDCoMKgwqDCoCB1cGRh dGVfc3RhdCh2YiwgaWR4KyssIFZJUlRJT19CQUxMT09OX1NfTUFKRkxULCAKPj4+Pj4+Pj4gZXZl bnRzW1BHTUFKRkFVTFRdKTsKPj4+Pj4+Pj4gwqDCoMKgwqDCoMKgIHVwZGF0ZV9zdGF0KHZiLCBp ZHgrKywgVklSVElPX0JBTExPT05fU19NSU5GTFQsIAo+Pj4+Pj4+PiBldmVudHNbUEdGQVVMVF0p Owo+Pj4+Pj4+PiArI2lmZGVmIENPTkZJR19IVUdFVExCX1BBR0UKPj4+Pj4+Pj4gK8KgwqDCoCB1 cGRhdGVfc3RhdCh2YiwgaWR4KyssIFZJUlRJT19CQUxMT09OX1NfSFRMQl9QR0FMTE9DLAo+Pj4+ Pj4+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBldmVudHNbSFRMQl9CVUREWV9QR0FMTE9DXSk7 Cj4+Pj4+Pj4+ICvCoMKgwqAgdXBkYXRlX3N0YXQodmIsIGlkeCsrLCBWSVJUSU9fQkFMTE9PTl9T X0hUTEJfUEdGQUlMLAo+Pj4+Pj4+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBldmVudHNbSFRM Ql9CVUREWV9QR0FMTE9DX0ZBSUxdKTsKPj4+Pj4+Pj4gKyNlbmRpZgo+Pj4+Pj4+PiDCoMKgICNl bmRpZgo+Pj4+Pj4+PiDCoMKgwqDCoMKgwqAgdXBkYXRlX3N0YXQodmIsIGlkeCsrLCBWSVJUSU9f QkFMTE9PTl9TX01FTUZSRUUsCj4+Pj4+Pj4+IMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoCBwYWdlc190b19ieXRlcyhpLmZyZWVyYW0pKTsKPj4+Pj4+Pj4gZGlmZiAtLWdpdCBh L2luY2x1ZGUvdWFwaS9saW51eC92aXJ0aW9fYmFsbG9vbi5oIAo+Pj4+Pj4+PiBiL2luY2x1ZGUv dWFwaS9saW51eC92aXJ0aW9fYmFsbG9vbi5oCj4+Pj4+Pj4+IGluZGV4IDRlOGI4MzAuLjQwMjk3 YTMgMTAwNjQ0Cj4+Pj4+Pj4+IC0tLSBhL2luY2x1ZGUvdWFwaS9saW51eC92aXJ0aW9fYmFsbG9v bi5oCj4+Pj4+Pj4+ICsrKyBiL2luY2x1ZGUvdWFwaS9saW51eC92aXJ0aW9fYmFsbG9vbi5oCj4+ Pj4+Pj4+IEBAIC01Myw3ICs1Myw5IEBAIHN0cnVjdCB2aXJ0aW9fYmFsbG9vbl9jb25maWcgewo+ Pj4+Pj4+PiDCoMKgICNkZWZpbmUgVklSVElPX0JBTExPT05fU19NRU1UT1TCoMKgIDXCoMKgIC8q IFRvdGFsIGFtb3VudCBvZiAKPj4+Pj4+Pj4gbWVtb3J5ICovCj4+Pj4+Pj4+IMKgwqAgI2RlZmlu ZSBWSVJUSU9fQkFMTE9PTl9TX0FWQUlMwqDCoMKgIDbCoMKgIC8qIEF2YWlsYWJsZSBtZW1vcnkg YXMgCj4+Pj4+Pj4+IGluIC9wcm9jICovCj4+Pj4+Pj4+IMKgwqAgI2RlZmluZSBWSVJUSU9fQkFM TE9PTl9TX0NBQ0hFU8KgwqAgN8KgwqAgLyogRGlzayBjYWNoZXMgKi8KPj4+Pj4+Pj4gLSNkZWZp bmUgVklSVElPX0JBTExPT05fU19OUsKgwqDCoMKgwqDCoCA4Cj4+Pj4+Pj4+ICsjZGVmaW5lIFZJ UlRJT19CQUxMT09OX1NfSFRMQl9QR0FMTE9DwqAgOMKgIC8qIEh1Z2V0bGIgcGFnZSAKPj4+Pj4+ Pj4gYWxsb2NhdGlvbnMgKi8KPj4+Pj4+Pj4gKyNkZWZpbmUgVklSVElPX0JBTExPT05fU19IVExC X1BHRkFJTMKgwqAgOcKgIC8qIEh1Z2V0bGIgcGFnZSAKPj4+Pj4+Pj4gYWxsb2NhdGlvbiBmYWls dXJlcyAqLwo+Pj4+Pj4+PiArI2RlZmluZSBWSVJUSU9fQkFMTE9PTl9TX05SwqDCoMKgwqDCoMKg IDEwCj4+Pj4+Pj4+IMKgwqDCoMKgIC8qCj4+Pj4+Pj4+IMKgwqDCoCAqIE1lbW9yeSBzdGF0aXN0 aWNzIHN0cnVjdHVyZS4KPj4+Pj4+PiBOb3QgZm9yIHRoaXMgcGF0Y2gsIGJ1dCBpdCBsb29rcyB0 byBtZSB0aGF0IGV4cG9ydGluZyBzdWNoIG5yIAo+Pj4+Pj4+IHRocm91Z2ggdWFwaSBpcyBmcmFn aWxlLgo+Pj4+Pj4gU29ycnksIGNhbiB5b3UgZXhwbGFpbiB3aGF0IHlvdSBtZWFuIGhlcmU/Cj4+ Pj4+Pgo+Pj4+Pj4gSm9uCj4+Pj4+IFNwZWMgc2FpZCAiV2l0aGluIGFuIG91dHB1dCBidWZmZXIg c3VibWl0dGVkIHRvIHRoZSBzdGF0c3EsIHRoZSAKPj4+Pj4gZGV2aWNlIE1VU1QKPj4+Pj4gaWdu b3JlIGVudHJpZXMgd2l0aCB0YWcgdmFsdWVzIHRoYXQgaXQgZG9lcyBub3QgcmVjb2duaXplIi4g U28gCj4+Pj4+IGV4cG9ydGluZwo+Pj4+PiBWSVJUSU9fQkFMTE9PTl9TX05SIHNlZW1zIHVzZWxl c3MgYW5kIGRldmljZSBpbXBsZW1lbnRhdGlvbiBjYW4gbm90IAo+Pj4+PiBkZXBlbmQKPj4+Pj4g b24gc3VjaCBudW1iZXIgaW4gdWFwaS4KPj4+Pj4KPj4+Pj4gVGhhbmtzCj4+Pj4gU3VnZ2VzdGlv bnM/IEkgZG9uJ3QgbGlrZSB0byBicmVhayBidWlsZCBmb3IgcGVvcGxlIC4uLgo+Pj4+Cj4+Pgo+ Pj4gRGlkbid0IGhhdmUgYSBnb29kIGlkZWEuIEJ1dCBtYXliZSB3ZSBzaG91bGQga2VlcCBWSVJU SU9fQkFMTE9PTl9TX05SIAo+Pj4gdW5jaGFuZ2VkLCBhbmQgYWRkIGEgY29tbWVudCBoZXJlLgo+ Pj4KPj4+IFRoYW5rcwo+Pgo+PiBJIHRoaW5rIEphc29uJ3MgY29tbWVudCBpcyBmb3IgYSBmdXR1 cmUgcGF0Y2guIERpZG4ndCBzZWUgdGhpcyBwYXRjaCAKPj4gZ2V0IGFwcGxpZWQsIHNvIHdvbmRl cmluZyBpZiBpdCBjb3VsZCBiZS4KPj4KPj4gVGhhbmtzLAo+PiBKb24KPiAKPiBIaSBKb246Cj4g Cj4gSGF2ZSB5b3UgdGVzdGVkIG5ldyBkcml2ZXIgd2l0aCBvbGQgcWVtdT8KClllcywgdGhpcyB0 ZXN0aW5nIHNjZW5hcmlvIGxvb2tzIGdvb2QuIFRoYW5rcy4KCkpvbgoKPiAKPiBUaGFua3MKPiAK PiAKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KVmlydHVh bGl6YXRpb24gbWFpbGluZyBsaXN0ClZpcnR1YWxpemF0aW9uQGxpc3RzLmxpbnV4LWZvdW5kYXRp b24ub3JnCmh0dHBzOi8vbGlzdHMubGludXhmb3VuZGF0aW9uLm9yZy9tYWlsbWFuL2xpc3RpbmZv L3ZpcnR1YWxpemF0aW9u From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: virtio-dev-return-3825-cohuck=redhat.com@lists.oasis-open.org Sender: List-Post: List-Help: List-Unsubscribe: List-Subscribe: Received: from lists.oasis-open.org (oasis-open.org [66.179.20.138]) by lists.oasis-open.org (Postfix) with ESMTP id 450405818F54 for ; Wed, 11 Apr 2018 17:24:45 -0700 (PDT) References: <1521497654-24807-1-git-send-email-jonathan.helman@oracle.com> <6ED6CAC9-FAD9-4A27-A9B1-C6EFC7627D68@oracle.com> <20180322050842-mutt-send-email-mst@kernel.org> <3f8a1b91-c5ba-8a24-72b8-02d884a67826@redhat.com> From: Jonathan Helman Message-ID: <1d2bcb00-b210-b992-318e-c65607d31dff@oracle.com> Date: Wed, 11 Apr 2018 17:24:27 -0700 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset="utf-8"; format="flowed" Content-Language: en-US Content-Transfer-Encoding: 8bit Subject: Re: [virtio-dev] Re: [PATCH v2] virtio_balloon: export hugetlb page allocation counts To: Jason Wang , "Michael S. Tsirkin" Cc: virtualization@lists.linux-foundation.org, linux-kernel@vger.kernel.org, virtio-dev@lists.oasis-open.org, Mihai Carabas List-ID: On 04/10/2018 08:12 PM, Jason Wang wrote: > > > On 2018年04月10日 05:11, Jonathan Helman wrote: >> >> >> On 03/22/2018 07:38 PM, Jason Wang wrote: >>> >>> >>> On 2018年03月22日 11:10, Michael S. Tsirkin wrote: >>>> On Thu, Mar 22, 2018 at 09:52:18AM +0800, Jason Wang wrote: >>>>> On 2018年03月20日 12:26, Jonathan Helman wrote: >>>>>>> On Mar 19, 2018, at 7:31 PM, Jason Wang  wrote: >>>>>>> >>>>>>> >>>>>>> >>>>>>> On 2018年03月20日 06:14, Jonathan Helman wrote: >>>>>>>> Export the number of successful and failed hugetlb page >>>>>>>> allocations via the virtio balloon driver. These 2 counts >>>>>>>> come directly from the vm_events HTLB_BUDDY_PGALLOC and >>>>>>>> HTLB_BUDDY_PGALLOC_FAIL. >>>>>>>> >>>>>>>> Signed-off-by: Jonathan Helman >>>>>>> Reviewed-by: Jason Wang >>>>>> Thanks. >>>>>> >>>>>>>> --- >>>>>>>>    drivers/virtio/virtio_balloon.c     | 6 ++++++ >>>>>>>>    include/uapi/linux/virtio_balloon.h | 4 +++- >>>>>>>>    2 files changed, 9 insertions(+), 1 deletion(-) >>>>>>>> >>>>>>>> diff --git a/drivers/virtio/virtio_balloon.c >>>>>>>> b/drivers/virtio/virtio_balloon.c >>>>>>>> index dfe5684..6b237e3 100644 >>>>>>>> --- a/drivers/virtio/virtio_balloon.c >>>>>>>> +++ b/drivers/virtio/virtio_balloon.c >>>>>>>> @@ -272,6 +272,12 @@ static unsigned int >>>>>>>> update_balloon_stats(struct virtio_balloon *vb) >>>>>>>>                    pages_to_bytes(events[PSWPOUT])); >>>>>>>>        update_stat(vb, idx++, VIRTIO_BALLOON_S_MAJFLT, >>>>>>>> events[PGMAJFAULT]); >>>>>>>>        update_stat(vb, idx++, VIRTIO_BALLOON_S_MINFLT, >>>>>>>> events[PGFAULT]); >>>>>>>> +#ifdef CONFIG_HUGETLB_PAGE >>>>>>>> +    update_stat(vb, idx++, VIRTIO_BALLOON_S_HTLB_PGALLOC, >>>>>>>> +            events[HTLB_BUDDY_PGALLOC]); >>>>>>>> +    update_stat(vb, idx++, VIRTIO_BALLOON_S_HTLB_PGFAIL, >>>>>>>> +            events[HTLB_BUDDY_PGALLOC_FAIL]); >>>>>>>> +#endif >>>>>>>>    #endif >>>>>>>>        update_stat(vb, idx++, VIRTIO_BALLOON_S_MEMFREE, >>>>>>>>                    pages_to_bytes(i.freeram)); >>>>>>>> diff --git a/include/uapi/linux/virtio_balloon.h >>>>>>>> b/include/uapi/linux/virtio_balloon.h >>>>>>>> index 4e8b830..40297a3 100644 >>>>>>>> --- a/include/uapi/linux/virtio_balloon.h >>>>>>>> +++ b/include/uapi/linux/virtio_balloon.h >>>>>>>> @@ -53,7 +53,9 @@ struct virtio_balloon_config { >>>>>>>>    #define VIRTIO_BALLOON_S_MEMTOT   5   /* Total amount of >>>>>>>> memory */ >>>>>>>>    #define VIRTIO_BALLOON_S_AVAIL    6   /* Available memory as >>>>>>>> in /proc */ >>>>>>>>    #define VIRTIO_BALLOON_S_CACHES   7   /* Disk caches */ >>>>>>>> -#define VIRTIO_BALLOON_S_NR       8 >>>>>>>> +#define VIRTIO_BALLOON_S_HTLB_PGALLOC  8  /* Hugetlb page >>>>>>>> allocations */ >>>>>>>> +#define VIRTIO_BALLOON_S_HTLB_PGFAIL   9  /* Hugetlb page >>>>>>>> allocation failures */ >>>>>>>> +#define VIRTIO_BALLOON_S_NR       10 >>>>>>>>      /* >>>>>>>>     * Memory statistics structure. >>>>>>> Not for this patch, but it looks to me that exporting such nr >>>>>>> through uapi is fragile. >>>>>> Sorry, can you explain what you mean here? >>>>>> >>>>>> Jon >>>>> Spec said "Within an output buffer submitted to the statsq, the >>>>> device MUST >>>>> ignore entries with tag values that it does not recognize". So >>>>> exporting >>>>> VIRTIO_BALLOON_S_NR seems useless and device implementation can not >>>>> depend >>>>> on such number in uapi. >>>>> >>>>> Thanks >>>> Suggestions? I don't like to break build for people ... >>>> >>> >>> Didn't have a good idea. But maybe we should keep VIRTIO_BALLOON_S_NR >>> unchanged, and add a comment here. >>> >>> Thanks >> >> I think Jason's comment is for a future patch. Didn't see this patch >> get applied, so wondering if it could be. >> >> Thanks, >> Jon > > Hi Jon: > > Have you tested new driver with old qemu? Yes, this testing scenario looks good. Thanks. Jon > > Thanks > > --------------------------------------------------------------------- To unsubscribe, e-mail: virtio-dev-unsubscribe@lists.oasis-open.org For additional commands, e-mail: virtio-dev-help@lists.oasis-open.org