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 X-Spam-Level: X-Spam-Status: No, score=-8.3 required=3.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI, SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS,UNPARSEABLE_RELAY,USER_AGENT_SANE_2 autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id C990CC43603 for ; Thu, 5 Dec 2019 02:22:36 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 87EDA21744 for ; Thu, 5 Dec 2019 02:22:36 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (1024-bit key) header.d=mediatek.com header.i=@mediatek.com header.b="DSFkucxp" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728419AbfLECWf (ORCPT ); Wed, 4 Dec 2019 21:22:35 -0500 Received: from mailgw01.mediatek.com ([210.61.82.183]:55963 "EHLO mailgw01.mediatek.com" rhost-flags-OK-FAIL-OK-FAIL) by vger.kernel.org with ESMTP id S1728132AbfLECWf (ORCPT ); Wed, 4 Dec 2019 21:22:35 -0500 X-UUID: 09c5f15592064dd9af1468752702c9fe-20191205 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=mediatek.com; s=dk; h=Content-Transfer-Encoding:MIME-Version:Content-Type:References:In-Reply-To:Date:CC:To:From:Subject:Message-ID; bh=zF3v0xaTj7cC35c/2mHDLexBzEP7R6Xi6kyDMdBthps=; b=DSFkucxpH4GhK60eDepcWvqfgCK0vI5JjVBniqi/6vvsa1/u5jxMN9fSwG8Gbhb9E7zTYLWnfA0yHbV4EoaLKmTz7M8y9mLlqWlE+bMAgSXMYvejKFOT5rMNxi5ZnbDRdLtC34682ohYPloArbVjy+aQyxxRD5vy2njHWmycLHs=; X-UUID: 09c5f15592064dd9af1468752702c9fe-20191205 Received: from mtkcas07.mediatek.inc [(172.21.101.84)] by mailgw01.mediatek.com (envelope-from ) (Cellopoint E-mail Firewall v4.1.10 Build 0809 with TLS) with ESMTP id 684224926; Thu, 05 Dec 2019 10:22:30 +0800 Received: from mtkcas09.mediatek.inc (172.21.101.178) by mtkmbs07n2.mediatek.inc (172.21.101.141) with Microsoft SMTP Server (TLS) id 15.0.1395.4; Thu, 5 Dec 2019 10:22:16 +0800 Received: from [172.21.77.33] (172.21.77.33) by mtkcas09.mediatek.inc (172.21.101.73) with Microsoft SMTP Server id 15.0.1395.4 via Frontend Transport; Thu, 5 Dec 2019 10:23:13 +0800 Message-ID: <1575512548.12233.5.camel@mtkswgap22> Subject: Re: [PATCH] Input: evdev - convert kzalloc()/vzalloc() to kvzalloc() From: Miles Chen To: Dmitry Torokhov CC: , , , Date: Thu, 5 Dec 2019 10:22:28 +0800 In-Reply-To: <20191118054727.31045-1-miles.chen@mediatek.com> References: <20191118054727.31045-1-miles.chen@mediatek.com> Content-Type: text/plain; charset="UTF-8" X-Mailer: Evolution 3.2.3-0ubuntu6 MIME-Version: 1.0 X-MTK: N Content-Transfer-Encoding: base64 Sender: linux-input-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-input@vger.kernel.org SGksDQoNCkdlbnRsZSBwaW5nLg0KDQpub3RlOg0KV2UgY2FuIGFsc28gb2JzZXJ2ZSB0aGlzIGlz c3VlIGluIGtlcm5lbC00LjQsIGtlcm5lbC00LjksIGFuZA0Ka2VybmVsLTQuMTQuDQoNCg0KICAg TWlsZXMNCg0KDQpPbiBNb24sIDIwMTktMTEtMTggYXQgMTM6NDcgKzA4MDAsIE1pbGVzIENoZW4g d3JvdGU6DQo+IFdlIG9ic2VydmVkIGEgbGFyZ2Uob3JkZXItMykgYWxsb2NhdGlvbiBpbiBldmRl dl9vcGVuKCkgYW5kIGl0IG1heQ0KPiBjYXVzZSBhbiBPT00ga2VucmVsIHBhbmljIGluIGt6YWxs b2MoKSwgYmVmb3JlIHdlIGdldHRpbmcgdG8gdGhlDQo+IHZ6YWxsb2MoKSBmYWxsYmFjay4NCj4g DQo+IEZpeCBpdCBieSBjb252ZXJ0aW5nIGt6YWxsb2MoKS92emFsbG9jKCkgdG8ga3Z6YWxsb2Mo KSB0byBhdm9pZCB0aGUNCj4gT09NIGtpbGxlciBsb2dpYyBhcyB3ZSBoYXZlIGEgdm1hbGxvYyBm YWxsYmFjay4NCj4gDQo+IElucHV0UmVhZGVyIGludm9rZWQgb29tLWtpbGxlcjogZ2ZwX21hc2s9 MHgyNDBjMmMwDQo+IChHRlBfS0VSTkVMfF9fR0ZQX05PV0FSTnxfX0dGUF9DT01QfF9fR0ZQX1pF Uk8pLCBub2RlbWFzaz0wLCBvcmRlcj0zLA0KPiBvb21fc2NvcmVfYWRqPS05MDANCj4gLi4uDQo+ IChkdW1wX2JhY2t0cmFjZSkgZnJvbSAoc2hvd19zdGFjaysweDE4LzB4MWMpDQo+IChzaG93X3N0 YWNrKSBmcm9tIChkdW1wX3N0YWNrKzB4OTQvMHhhOCkNCj4gKGR1bXBfc3RhY2spIGZyb20gKGR1 bXBfaGVhZGVyKzB4N2MvMHhlNCkNCj4gKGR1bXBfaGVhZGVyKSBmcm9tIChvdXRfb2ZfbWVtb3J5 KzB4MzM0LzB4MzQ4KQ0KPiAob3V0X29mX21lbW9yeSkgZnJvbSAoX19hbGxvY19wYWdlc19ub2Rl bWFzaysweGU5Yy8weGViOCkNCj4gKF9fYWxsb2NfcGFnZXNfbm9kZW1hc2spIGZyb20gKGttYWxs b2Nfb3JkZXJfdHJhY2UrMHgzNC8weDEyOCkNCj4gKGttYWxsb2Nfb3JkZXJfdHJhY2UpIGZyb20g KF9fa21hbGxvYysweDI1OC8weDM2YykNCj4gKF9fa21hbGxvYykgZnJvbSAoZXZkZXZfb3Blbisw eDVjLzB4MTdjKQ0KPiAoZXZkZXZfb3BlbikgZnJvbSAoY2hyZGV2X29wZW4rMHgxMDAvMHgyMDQp DQo+IChjaHJkZXZfb3BlbikgZnJvbSAoZG9fZGVudHJ5X29wZW4rMHgyMWMvMHgzNTQpDQo+IChk b19kZW50cnlfb3BlbikgZnJvbSAodmZzX29wZW4rMHg1OC8weDg0KQ0KPiAodmZzX29wZW4pIGZy b20gKHBhdGhfb3BlbmF0KzB4NjQwLzB4Yzk4KQ0KPiAocGF0aF9vcGVuYXQpIGZyb20gKGRvX2Zp bHBfb3BlbisweDc4LzB4MTFjKQ0KPiAoZG9fZmlscF9vcGVuKSBmcm9tIChkb19zeXNfb3Blbisw eDEzMC8weDI0NCkNCj4gKGRvX3N5c19vcGVuKSBmcm9tIChTeVNfb3BlbmF0KzB4MTQvMHgxOCkN Cj4gKFN5U19vcGVuYXQpIGZyb20gKF9fc3lzX3RyYWNlX3JldHVybisweDAvMHgxMCkNCj4gLi4u DQo+IE5vcm1hbDogMTI0ODgqNGtCIChVTUVIKSA2OTg0KjhrQiAoVU1FSCkgMjEwMSoxNmtCIChV TUVIKSAwKjMya0INCj4gMCo2NGtCIDAqMTI4a0IgMCoyNTZrQiAwKjUxMmtCIDAqMTAyNGtCIDAq MjA0OGtCIDAqNDA5NmtCID0gMTM5NDQwa0INCj4gSGlnaE1lbTogMjA2KjRrQiAoSCkgMTMxKjhr QiAoSCkgNDIqMTZrQiAoSCkgMiozMmtCIChIKSAwKjY0a0INCj4gMCoxMjhrQiAwKjI1NmtCIDAq NTEya0IgMCoxMDI0a0IgMCoyMDQ4a0IgMCo0MDk2a0IgPSAyNjA4a0INCj4gLi4uDQo+IEtlcm5l bCBwYW5pYyAtIG5vdCBzeW5jaW5nOiBPdXQgb2YgbWVtb3J5IGFuZCBubyBraWxsYWJsZSBwcm9j ZXNzZXMuLi4NCj4gDQo+IFNpZ25lZC1vZmYtYnk6IE1pbGVzIENoZW4gPG1pbGVzLmNoZW5AbWVk aWF0ZWsuY29tPg0KPiAtLS0NCj4gIGRyaXZlcnMvaW5wdXQvZXZkZXYuYyB8IDUgKy0tLS0NCj4g IDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgNCBkZWxldGlvbnMoLSkNCj4gDQo+IGRp ZmYgLS1naXQgYS9kcml2ZXJzL2lucHV0L2V2ZGV2LmMgYi9kcml2ZXJzL2lucHV0L2V2ZGV2LmMN Cj4gaW5kZXggZDdkZDZmY2YyZGIwLi5jZjVkN2Q2M2ZkNDggMTAwNjQ0DQo+IC0tLSBhL2RyaXZl cnMvaW5wdXQvZXZkZXYuYw0KPiArKysgYi9kcml2ZXJzL2lucHV0L2V2ZGV2LmMNCj4gQEAgLTQ4 NCwxMCArNDg0LDcgQEAgc3RhdGljIGludCBldmRldl9vcGVuKHN0cnVjdCBpbm9kZSAqaW5vZGUs IHN0cnVjdCBmaWxlICpmaWxlKQ0KPiAgCXN0cnVjdCBldmRldl9jbGllbnQgKmNsaWVudDsNCj4g IAlpbnQgZXJyb3I7DQo+ICANCj4gLQljbGllbnQgPSBremFsbG9jKHN0cnVjdF9zaXplKGNsaWVu dCwgYnVmZmVyLCBidWZzaXplKSwNCj4gLQkJCSBHRlBfS0VSTkVMIHwgX19HRlBfTk9XQVJOKTsN Cj4gLQlpZiAoIWNsaWVudCkNCj4gLQkJY2xpZW50ID0gdnphbGxvYyhzdHJ1Y3Rfc2l6ZShjbGll bnQsIGJ1ZmZlciwgYnVmc2l6ZSkpOw0KPiArCWNsaWVudCA9IGt2emFsbG9jKHN0cnVjdF9zaXpl KGNsaWVudCwgYnVmZmVyLCBidWZzaXplKSwgR0ZQX0tFUk5FTCk7DQo+ICAJaWYgKCFjbGllbnQp DQo+ICAJCXJldHVybiAtRU5PTUVNOw0KPiAgDQoNCg== 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 X-Spam-Level: X-Spam-Status: No, score=-8.2 required=3.0 tests=DKIMWL_WL_HIGH,DKIM_SIGNED, DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI, SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS,UNPARSEABLE_RELAY,USER_AGENT_SANE_2 autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 4D8A7C43603 for ; Thu, 5 Dec 2019 02:22:40 +0000 (UTC) Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 236C4206DB for ; Thu, 5 Dec 2019 02:22:40 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="dvqgFErs"; dkim=fail reason="signature verification failed" (1024-bit key) header.d=mediatek.com header.i=@mediatek.com header.b="DSFkucxp" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 236C4206DB Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=mediatek.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-mediatek-bounces+linux-mediatek=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20170209; h=Sender: Content-Transfer-Encoding:Content-Type:Cc:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To: Date:To:From:Subject:Message-ID:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=/Iqy2JETzEmIrgzWn+yoFCz5gvbgXLFASLbZNSuD8pM=; b=dvqgFErso5IdX8 ky1UJ4tGgh1sTJNHoNu22lyZ5/X46YT/us+zO83RgTzNfYpuphbKC2sBXZ7vRumu6OElC2jtsW41h 4Oy3iWPlO+vp5sF1zBQZdDjpjl9ejx597+aGOBd+GMxr05MChEocldYRAndRvSqXm5gC73Ga8HUMM N7bAuQvvaJv4SvdpAeXmCbYa1A/aVYlm0GWReiz5oB0xyk4H/huGIpwrqkkNYAIVbRdj18095tKkS jfLBWGe+6xyfasVBNVTgWr/atWM6tLZix+Gqw9qvXVFN28n1VwZ2DakBtTHSScEBDEvMhyk5J9Kuy vVZgf8vLiPGjaKJ2wMnA==; Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1icgmt-0002wI-PS; Thu, 05 Dec 2019 02:22:39 +0000 Received: from mailgw02.mediatek.com ([216.200.240.185]) by bombadil.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1icgmq-0002vO-NJ for linux-mediatek@lists.infradead.org; Thu, 05 Dec 2019 02:22:38 +0000 X-UUID: 27c3492a658d45e29f4c976c3f02b187-20191204 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=mediatek.com; s=dk; h=Content-Transfer-Encoding:MIME-Version:Content-Type:References:In-Reply-To:Date:CC:To:From:Subject:Message-ID; bh=zF3v0xaTj7cC35c/2mHDLexBzEP7R6Xi6kyDMdBthps=; b=DSFkucxpH4GhK60eDepcWvqfgCK0vI5JjVBniqi/6vvsa1/u5jxMN9fSwG8Gbhb9E7zTYLWnfA0yHbV4EoaLKmTz7M8y9mLlqWlE+bMAgSXMYvejKFOT5rMNxi5ZnbDRdLtC34682ohYPloArbVjy+aQyxxRD5vy2njHWmycLHs=; X-UUID: 27c3492a658d45e29f4c976c3f02b187-20191204 Received: from mtkcas66.mediatek.inc [(172.29.193.44)] by mailgw02.mediatek.com (envelope-from ) (musrelay.mediatek.com ESMTP with TLS) with ESMTP id 1440074085; Wed, 04 Dec 2019 18:22:31 -0800 Received: from MTKMBS07N2.mediatek.inc (172.21.101.141) by MTKMBS62N2.mediatek.inc (172.29.193.42) with Microsoft SMTP Server (TLS) id 15.0.1395.4; Wed, 4 Dec 2019 18:23:16 -0800 Received: from mtkcas09.mediatek.inc (172.21.101.178) by mtkmbs07n2.mediatek.inc (172.21.101.141) with Microsoft SMTP Server (TLS) id 15.0.1395.4; Thu, 5 Dec 2019 10:22:16 +0800 Received: from [172.21.77.33] (172.21.77.33) by mtkcas09.mediatek.inc (172.21.101.73) with Microsoft SMTP Server id 15.0.1395.4 via Frontend Transport; Thu, 5 Dec 2019 10:23:13 +0800 Message-ID: <1575512548.12233.5.camel@mtkswgap22> Subject: Re: [PATCH] Input: evdev - convert kzalloc()/vzalloc() to kvzalloc() From: Miles Chen To: Dmitry Torokhov Date: Thu, 5 Dec 2019 10:22:28 +0800 In-Reply-To: <20191118054727.31045-1-miles.chen@mediatek.com> References: <20191118054727.31045-1-miles.chen@mediatek.com> X-Mailer: Evolution 3.2.3-0ubuntu6 MIME-Version: 1.0 X-MTK: N X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20191204_182236_773030_8E368C5E X-CRM114-Status: GOOD ( 14.50 ) X-BeenThere: linux-mediatek@lists.infradead.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: linux-mediatek@lists.infradead.org, linux-kernel@vger.kernel.org, wsd_upstream@mediatek.com, linux-input@vger.kernel.org Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "Linux-mediatek" Errors-To: linux-mediatek-bounces+linux-mediatek=archiver.kernel.org@lists.infradead.org Hi, Gentle ping. note: We can also observe this issue in kernel-4.4, kernel-4.9, and kernel-4.14. Miles On Mon, 2019-11-18 at 13:47 +0800, Miles Chen wrote: > We observed a large(order-3) allocation in evdev_open() and it may > cause an OOM kenrel panic in kzalloc(), before we getting to the > vzalloc() fallback. > > Fix it by converting kzalloc()/vzalloc() to kvzalloc() to avoid the > OOM killer logic as we have a vmalloc fallback. > > InputReader invoked oom-killer: gfp_mask=0x240c2c0 > (GFP_KERNEL|__GFP_NOWARN|__GFP_COMP|__GFP_ZERO), nodemask=0, order=3, > oom_score_adj=-900 > ... > (dump_backtrace) from (show_stack+0x18/0x1c) > (show_stack) from (dump_stack+0x94/0xa8) > (dump_stack) from (dump_header+0x7c/0xe4) > (dump_header) from (out_of_memory+0x334/0x348) > (out_of_memory) from (__alloc_pages_nodemask+0xe9c/0xeb8) > (__alloc_pages_nodemask) from (kmalloc_order_trace+0x34/0x128) > (kmalloc_order_trace) from (__kmalloc+0x258/0x36c) > (__kmalloc) from (evdev_open+0x5c/0x17c) > (evdev_open) from (chrdev_open+0x100/0x204) > (chrdev_open) from (do_dentry_open+0x21c/0x354) > (do_dentry_open) from (vfs_open+0x58/0x84) > (vfs_open) from (path_openat+0x640/0xc98) > (path_openat) from (do_filp_open+0x78/0x11c) > (do_filp_open) from (do_sys_open+0x130/0x244) > (do_sys_open) from (SyS_openat+0x14/0x18) > (SyS_openat) from (__sys_trace_return+0x0/0x10) > ... > Normal: 12488*4kB (UMEH) 6984*8kB (UMEH) 2101*16kB (UMEH) 0*32kB > 0*64kB 0*128kB 0*256kB 0*512kB 0*1024kB 0*2048kB 0*4096kB = 139440kB > HighMem: 206*4kB (H) 131*8kB (H) 42*16kB (H) 2*32kB (H) 0*64kB > 0*128kB 0*256kB 0*512kB 0*1024kB 0*2048kB 0*4096kB = 2608kB > ... > Kernel panic - not syncing: Out of memory and no killable processes... > > Signed-off-by: Miles Chen > --- > drivers/input/evdev.c | 5 +---- > 1 file changed, 1 insertion(+), 4 deletions(-) > > diff --git a/drivers/input/evdev.c b/drivers/input/evdev.c > index d7dd6fcf2db0..cf5d7d63fd48 100644 > --- a/drivers/input/evdev.c > +++ b/drivers/input/evdev.c > @@ -484,10 +484,7 @@ static int evdev_open(struct inode *inode, struct file *file) > struct evdev_client *client; > int error; > > - client = kzalloc(struct_size(client, buffer, bufsize), > - GFP_KERNEL | __GFP_NOWARN); > - if (!client) > - client = vzalloc(struct_size(client, buffer, bufsize)); > + client = kvzalloc(struct_size(client, buffer, bufsize), GFP_KERNEL); > if (!client) > return -ENOMEM; > _______________________________________________ Linux-mediatek mailing list Linux-mediatek@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-mediatek