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.8 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,INCLUDES_PATCH,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS 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 61D60C433E0 for ; Wed, 24 Mar 2021 19:49:40 +0000 (UTC) Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.kernel.org (Postfix) with ESMTP id D6C8F619EE for ; Wed, 24 Mar 2021 19:49:39 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org D6C8F619EE Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=kernel.org Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=owner-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix) id 526426B02F4; Wed, 24 Mar 2021 15:49:39 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 4D62E6B02F6; Wed, 24 Mar 2021 15:49:39 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 37A206B02F7; Wed, 24 Mar 2021 15:49:39 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0091.hostedemail.com [216.40.44.91]) by kanga.kvack.org (Postfix) with ESMTP id 1C8006B02F4 for ; Wed, 24 Mar 2021 15:49:39 -0400 (EDT) Received: from smtpin19.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay03.hostedemail.com (Postfix) with ESMTP id D82638248D52 for ; Wed, 24 Mar 2021 19:49:37 +0000 (UTC) X-FDA: 77955807594.19.F8A41EB Received: from mail-pj1-f44.google.com (mail-pj1-f44.google.com [209.85.216.44]) by imf30.hostedemail.com (Postfix) with ESMTP id 5E26CE0011C9 for ; Wed, 24 Mar 2021 19:49:35 +0000 (UTC) Received: by mail-pj1-f44.google.com with SMTP id a22-20020a17090aa516b02900c1215e9b33so1715592pjq.5 for ; Wed, 24 Mar 2021 12:49:37 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:date:from:to:cc:subject:message-id:references:mime-version :content-disposition:content-transfer-encoding:in-reply-to; bh=REq/3z6pobNdfYBuuoG456AWgVOTbPT0o3Axmb0eQnU=; b=EQom7EY91nsoHrk6i+8Z4HSRLQUvIqpEXmT0vMrTK51fD2N4RreS32PXSNRAzz4R9I HrRlXTZFEOGH0+ls+8Qt1eBAQ4u7UoEOsHaAwvVOfEu+dg6gd3POhtudd12XTwJyS3Jg dYsnTdZukhlrYmuqkoegp0sdX0B5vT9MMvnEvvdXdjCaZXooe5V0wi5gwvvFCT2mYSTf g48MWGkaWtfU6oIpM4MRfWbCEhuufEUbSOuVCXx6zHAZRWBuOS1jWig6x0UI9sZH+yQG 0yqiPwC8TnTMJdtEw6mExrlZiG2BUU9iGtf7h5KAIt+apl44NpMNrcidaWiwLJsJDgAH uXrg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:date:from:to:cc:subject:message-id :references:mime-version:content-disposition :content-transfer-encoding:in-reply-to; bh=REq/3z6pobNdfYBuuoG456AWgVOTbPT0o3Axmb0eQnU=; b=SHgkcdBPWFhYh+it/IAavuH0umi+7TawxpS4vpYUQ/SK/2ru93dmf53fea+DRXlTKx 32I0TFVXZaSH4JGUVJ4QF21923aK/atA4RXkFGekaM5UfqrVthNdIDfbHYzSdx+woc+G Trihj83r5PrOLuEN0CkT1FIuhrtPciY9VyjVqJej+Opv0twOXr+dnO6YAlCb53dJPHeR Aqxwed15NlKP3HROoiWlEK294y+QJh+QoWCvmuvad1Jl9H/y2f8b7mrfN98vlP8JQYEI mAUaUUDJZFV1vynaGjxmj/+72pyT8WSTMjMFjjX4j5M2j9XwFJE9L2sZVRzvAlVaCLrc FWtA== X-Gm-Message-State: AOAM531t7Yse6dIvvmsFyLh9goKYOph36B5p9wpMzqpdh9+E9GsE4tJ9 QyjN2igld47gwswTiwFEMAeMuHxG4Cw= X-Google-Smtp-Source: ABdhPJwhzepoIT3F1qAMeeqs+MljdVAM7ut/h3OckEKGP12PVKFk4ACW7o4mzdWAT/k5z38vEgl62Q== X-Received: by 2002:a17:90a:840a:: with SMTP id j10mr4840404pjn.97.1616615376345; Wed, 24 Mar 2021 12:49:36 -0700 (PDT) Received: from google.com ([2620:15c:211:201:7dfa:1e53:536:7976]) by smtp.gmail.com with ESMTPSA id u24sm3620158pfm.214.2021.03.24.12.49.34 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 24 Mar 2021 12:49:35 -0700 (PDT) Date: Wed, 24 Mar 2021 12:49:32 -0700 From: Minchan Kim To: Dmitry Osipenko Cc: Andrew Morton , linux-mm , LKML , gregkh@linuxfoundation.org, surenb@google.com, joaodias@google.com, jhubbard@nvidia.com, willy@infradead.org Subject: Re: [PATCH] mm: cma: fix corruption cma_sysfs_alloc_pages_count Message-ID: References: <20210324192044.1505747-1-minchan@kernel.org> <18ee5c3e-fba2-0d8d-bd93-5fb8d0dd7a01@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: <18ee5c3e-fba2-0d8d-bd93-5fb8d0dd7a01@gmail.com> X-Stat-Signature: sp4j41yrfh1ehy9gzxyxeuqz1ebr3n4e X-Rspamd-Server: rspam05 X-Rspamd-Queue-Id: 5E26CE0011C9 Received-SPF: none (gmail.com>: No applicable sender policy available) receiver=imf30; identity=mailfrom; envelope-from=""; helo=mail-pj1-f44.google.com; client-ip=209.85.216.44 X-HE-DKIM-Result: pass/pass X-HE-Tag: 1616615375-210089 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: On Wed, Mar 24, 2021 at 10:43:49PM +0300, Dmitry Osipenko wrote: > 24.03.2021 22:20, Minchan Kim =D0=BF=D0=B8=D1=88=D0=B5=D1=82: > > static int __init cma_sysfs_init(void) > > { > > - int i =3D 0; > > + struct kobject *cma_kobj_root; > > + struct cma_kobject *cma_kobj; > > struct cma *cma; > > + unsigned int i; >=20 > > while (--i >=3D 0) { >=20 > Do you realize that this doesn't work anymore? >=20 > > cma =3D &cma_areas[i]; > > - kobject_put(&cma->stat->kobj); > > - } > > =20 > > - kfree(cma_stats); > > - kobject_put(cma_kobj); > > + kobject_put(&cma->cma_kobj->kobj); > > + kfree(cma->cma_kobj); >=20 > Freeing a null pointer? Need coffee. =20 diff --git a/mm/cma_sysfs.c b/mm/cma_sysfs.c index a670a80aad6f..73463be08df7 100644 --- a/mm/cma_sysfs.c +++ b/mm/cma_sysfs.c @@ -79,8 +79,7 @@ static int __init cma_sysfs_init(void) struct kobject *cma_kobj_root; struct cma_kobject *cma_kobj; struct cma *cma; - unsigned int i; - int err; + int i, err; cma_kobj_root =3D kobject_create_and_add("cma", mm_kobj); if (!cma_kobj_root) @@ -108,10 +107,7 @@ static int __init cma_sysfs_init(void) out: while (--i >=3D 0) { cma =3D &cma_areas[i]; - kobject_put(&cma->cma_kobj->kobj); - kfree(cma->cma_kobj); - cma->cma_kobj =3D NULL; } kobject_put(cma_kobj_root);