Received: by 2002:a05:6a10:f347:0:0:0:0 with SMTP id d7csp676697pxu; Tue, 1 Dec 2020 23:57:57 -0800 (PST) X-Google-Smtp-Source: ABdhPJzHNAXNrGeZGHxuq6Rd+IUaVbT6jaXfy/fz2/B2bO67budMcXTPpCUG0p8s1TUdNuybos7y X-Received: by 2002:a05:6402:31b5:: with SMTP id dj21mr1497082edb.90.1606895877563; Tue, 01 Dec 2020 23:57:57 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1606895877; cv=none; d=google.com; s=arc-20160816; b=rRKQ7PFlx/BQW7lQyQe0mBB5x2IeDxvtjs/fDQz5JL+Zv8EXe9+2qzAq7vOBIlZ+Qs 1m+56e1DiyGrvL6CQUZyGspFXpy6XFQKI4bahji0HzpK8b78EYgwIKdjuW97fvxeyTQ6 QrI93I/S81LehbcH9Tus+YIz8jZ3/m4/2icftl7+E7lrTz75ffeO0rATvPOLTixhgXx2 JGQj+7/8jTnzxC3C1tLSZZilw1Uogl5zP7RnWRIGsw84lRxlizfUpbp4bIa0lfy7s8Fw 6uxPFVcv9TD4hkbrwP7kqH517zxsuqZD74sKyZgy92qvqQkIDk9kX6fYv8frgBab+lSO ZfQQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:mime-version:message-id:date:subject:cc:to:from; bh=LTS3UJhcwXD+TROxnovUioNWm4vo44yj75DE78ydZpk=; b=wy1Ac4T18bghdzG/po5z3JylH+yZ+rX1mPgcsK9ObCJTT0Zp7Z/5lVrIC64sfKVwDX gNyKAeDobZ+s7OQIoHh8Q67aw2qDuZ5OxwIZ+EJK61j6SfhpXo+v0zrYw0stSkPqAdsQ kmAFkaS9ELKeBhVdQfzs4uv8YBzC+NtaPI8YNOF1xb+IPc9q0TG69PgCVYShwoVIGh4a 2FrEENVmxnNZbCKRgg2QJfzEIvL7wDI08AHP55ThdVOmj/YkuDyOm+nzu/z0o497Oj8Q 37cHcdWPc4e09ehCsfRjlmI42HtiXEA/sfHyCKQJzW6kaT0u/hglSKMAhjnfpmyXTx0i CamQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=mediatek.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id q5si406587ejj.266.2020.12.01.23.57.33; Tue, 01 Dec 2020 23:57:57 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=mediatek.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728863AbgLBHyM (ORCPT + 99 others); Wed, 2 Dec 2020 02:54:12 -0500 Received: from mailgw02.mediatek.com ([210.61.82.184]:42113 "EHLO mailgw02.mediatek.com" rhost-flags-OK-FAIL-OK-FAIL) by vger.kernel.org with ESMTP id S1726157AbgLBHyL (ORCPT ); Wed, 2 Dec 2020 02:54:11 -0500 X-UUID: a885dc096bc1489ea0ccbfb7beaf2d2e-20201202 X-UUID: a885dc096bc1489ea0ccbfb7beaf2d2e-20201202 Received: from mtkexhb01.mediatek.inc [(172.21.101.102)] by mailgw02.mediatek.com (envelope-from ) (Cellopoint E-mail Firewall v4.1.14 Build 0819 with TLSv1.2 ECDHE-RSA-AES256-SHA384 256/256) with ESMTP id 775296454; Wed, 02 Dec 2020 15:53:29 +0800 Received: from MTKCAS06.mediatek.inc (172.21.101.30) by mtkmbs08n1.mediatek.inc (172.21.101.55) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Wed, 2 Dec 2020 15:53:27 +0800 Received: from mtksdccf07.mediatek.inc (172.21.84.99) by MTKCAS06.mediatek.inc (172.21.101.73) with Microsoft SMTP Server id 15.0.1497.2 via Frontend Transport; Wed, 2 Dec 2020 15:53:27 +0800 From: Kuan-Ying Lee To: Andrey Ryabinin , Alexander Potapenko , Dmitry Vyukov , Andrew Morton , Matthias Brugger , Nicholas Tang , Miles Chen CC: , , , , , , Kuan-Ying Lee Subject: [PATCH v3 0/1] Fix object remain in offline per-cpu quarantine Date: Wed, 2 Dec 2020 15:53:04 +0800 Message-ID: <1606895585-17382-1-git-send-email-Kuan-Ying.Lee@mediatek.com> X-Mailer: git-send-email 1.9.1 MIME-Version: 1.0 Content-Type: text/plain X-MTK: N Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org This patch fixes object remain in the offline per-cpu quarantine as describe below. Free objects will get into per-cpu quarantine if enable generic KASAN. If a cpu is offline and users use kmem_cache_destroy, kernel will detect objects still remain in the offline per-cpu quarantine and report error. Register a cpu hotplug function to remove all objects in the offline per-cpu quarantine when cpu is going offline. Set a per-cpu variable to indicate this cpu is offline. Changes since v3: - Add a barrier to ensure the ordering - Rename the init function Changes since v2: - Thanks for Dmitry suggestion - Remove unnecessary code - Put offline variable into cpu_quarantine - Use single qlist_free_all call instead of iteration over all slabs - Add bug reporter in commit message Kuan-Ying Lee (1): kasan: fix object remain in offline per-cpu quarantine mm/kasan/quarantine.c | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) -- 2.18.0