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=-13.5 required=3.0 tests=BAYES_00, DKIM_ADSP_CUSTOM_MED,DKIM_INVALID,DKIM_SIGNED,FREEMAIL_FORGED_FROMDOMAIN, FREEMAIL_FROM,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER, INCLUDES_PATCH,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,USER_AGENT_GIT 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 A63CCC433DB for ; Sat, 13 Mar 2021 04:23:58 +0000 (UTC) Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.kernel.org (Postfix) with ESMTP id 2C6D064F16 for ; Sat, 13 Mar 2021 04:23:58 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 2C6D064F16 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=gmail.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=owner-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix) id 574E96B006C; Fri, 12 Mar 2021 23:23:57 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 524856B006E; Fri, 12 Mar 2021 23:23:57 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 350CB6B0070; Fri, 12 Mar 2021 23:23:57 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0001.hostedemail.com [216.40.44.1]) by kanga.kvack.org (Postfix) with ESMTP id 159246B006C for ; Fri, 12 Mar 2021 23:23:57 -0500 (EST) Received: from smtpin04.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay03.hostedemail.com (Postfix) with ESMTP id B367A8248047 for ; Sat, 13 Mar 2021 04:23:56 +0000 (UTC) X-FDA: 77913558072.04.3C6E435 Received: from mail-pf1-f179.google.com (mail-pf1-f179.google.com [209.85.210.179]) by imf14.hostedemail.com (Postfix) with ESMTP id 85776C001C69 for ; Sat, 13 Mar 2021 04:23:48 +0000 (UTC) Received: by mail-pf1-f179.google.com with SMTP id y13so3226466pfr.0 for ; Fri, 12 Mar 2021 20:23:49 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=oMCpQqyUmSQjSr80rsOJXosqlWy8Gl0QQf1Kq8Lcoek=; b=JroatRMk7+OVfpS8r+i+5mOCpVI149rx1EqMOm3xVlEupv0XtDdMafEdg3KAbR6Gvt kJuZsHVUl3yyV2RafE3R+Df5GmcBv44pscj5zH62S7C9ZCBUE6CPdMJAFesBIU/kjwxR QWLN9j0Xp3pdCumMLaGyPhbMYXpPLLTf+KAKXSXvfsxamkjYNx5o6Pn7LsSoppiBSR3o 4KNW1FCvL/TfrT2qzFnb1adI0trsiYqx1pxkfl/vkfF/7y5DdmEssdKV+3Bu1yieQQ+f 7YCgXEo41C1uNHmJAulQY0kCViOKFFP7TJJm1ItN1+fQPBgTOnD9I4qAlCIa0wxdaOU1 ibxw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=oMCpQqyUmSQjSr80rsOJXosqlWy8Gl0QQf1Kq8Lcoek=; b=t3X7zT7Zh9VenGyUv/ggTIeXp6ARBICLFZTtcE8TOC6MS2k7Av2KDFWTV8RHElDugs 27R6FW3CHa90G1HWevgm2u3Amlo3lmiEWU4LLo2VtlHB6M6WliCk22dRoa4M+MKKBdb+ Df/W2ZxpkRGHkGMPFBYvuxDX1UW8p3RdrgjJjOYwpJZvgMeOfo93lv6fePKCnzgjrELj fy1RuoYg/zl6hjMg0V64VqVqqG54qxVQtJ/GbOAAZArNLCVtu1a3oUmHoQKNoQSZHFps H0uvJ92Rvh/WHWb86iDMybuq8SKWBTeVLPc8Vb2Nfx0JnkbqeeyvQtHlYMrPJm/lOqsv TLOw== X-Gm-Message-State: AOAM533iFYpsXAeG1M3F4lS2CsYMeov8ifFg58mqwOUxDngMmE3IqJAK xh3HsV9SkpfXEiyVg8Euy58= X-Google-Smtp-Source: ABdhPJwphksWTeFBOL6qO49urJACDUxjU/U1jAgjvWD2MQLR7f7WnP3G+7S2PHCvvCJ9nBDNXkd1AA== X-Received: by 2002:a62:62c1:0:b029:1ee:7ad:8cb3 with SMTP id w184-20020a6262c10000b02901ee07ad8cb3mr15903727pfb.21.1615609428704; Fri, 12 Mar 2021 20:23:48 -0800 (PST) Received: from localhost.localdomain ([203.205.141.64]) by smtp.gmail.com with ESMTPSA id x1sm3560026pje.40.2021.03.12.20.23.47 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Fri, 12 Mar 2021 20:23:48 -0800 (PST) From: Jiang Biao To: akpm@linux-foundation.org Cc: linux-mm@kvack.org, linux-kernel@vger.kernel.org, robinlai@tencent.com, benbjiang@tencent.com Subject: [PATCH] mm/oom_kill: fix wild pointer in out_of_memory Date: Sat, 13 Mar 2021 12:23:00 +0800 Message-Id: <20210313042300.3833-1-benbjiang@gmail.com> X-Mailer: git-send-email 2.21.0 MIME-Version: 1.0 X-Stat-Signature: 7wds9eznqhrseuxitpp57arrq7msbyh9 X-Rspamd-Server: rspam01 X-Rspamd-Queue-Id: 85776C001C69 Received-SPF: none (gmail.com>: No applicable sender policy available) receiver=imf14; identity=mailfrom; envelope-from=""; helo=mail-pf1-f179.google.com; client-ip=209.85.210.179 X-HE-DKIM-Result: pass/pass X-HE-Tag: 1615609428-571234 Content-Transfer-Encoding: quoted-printable 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: From: Bin Lai From: Bin Lai The oc->chosen is used by oom implementation, and the caller does not initialize this variable. If the tasks of memcg are all unkillable, oom_evaluate_task cann't choose any task, and the oc->chosen will be a wild pointer. So we should initialize oc->chosen before calling oom_evaluate_task. Signed-off-by: Bin Lai Reviewed-by: Jiang Biao diff --git a/mm/oom_kill.c b/mm/oom_kill.c index 9efaf43..0658a30 100644 --- a/mm/oom_kill.c +++ b/mm/oom_kill.c @@ -366,6 +366,7 @@ static int oom_evaluate_task(struct task_struct *task= , void *arg) static void select_bad_process(struct oom_control *oc) { oc->chosen_points =3D LONG_MIN; + oc->chosen =3D NULL; =20 if (is_memcg_oom(oc)) mem_cgroup_scan_tasks(oc->memcg, oom_evaluate_task, oc); --=20 1.8.3.1