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 Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 88240C05027 for ; Tue, 14 Feb 2023 10:20:35 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id A25D36B0073; Tue, 14 Feb 2023 05:20:34 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 9D6256B0074; Tue, 14 Feb 2023 05:20:34 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 89CFD6B0075; Tue, 14 Feb 2023 05:20:34 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0013.hostedemail.com [216.40.44.13]) by kanga.kvack.org (Postfix) with ESMTP id 7914F6B0073 for ; Tue, 14 Feb 2023 05:20:34 -0500 (EST) Received: from smtpin13.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay03.hostedemail.com (Postfix) with ESMTP id 42B68A0561 for ; Tue, 14 Feb 2023 10:20:34 +0000 (UTC) X-FDA: 80465503188.13.6735FA0 Received: from mail-pl1-f179.google.com (mail-pl1-f179.google.com [209.85.214.179]) by imf02.hostedemail.com (Postfix) with ESMTP id 9364E8002B for ; Tue, 14 Feb 2023 10:20:32 +0000 (UTC) Authentication-Results: imf02.hostedemail.com; dkim=pass header.d=gmail.com header.s=20210112 header.b=EOOVlbCI; spf=pass (imf02.hostedemail.com: domain of jqqlijiazi@gmail.com designates 209.85.214.179 as permitted sender) smtp.mailfrom=jqqlijiazi@gmail.com; dmarc=pass (policy=none) header.from=gmail.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1676370032; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:content-type: content-transfer-encoding:in-reply-to:references:dkim-signature; bh=b225/Oi7yxIJZONw0pqqAgLrEIWJEiw5zSNQN0zCo1I=; b=PWF+r2SJRmzfg6V16KQkBxqU7XYsaU8t5ZGGecNIVP6e+1A4o0VHb9LIyMzyxi8/MF27QI XshyU4O2jIpjJ25CpmLscRsnz7rJeto3REOFvbWX1XlByRLV/XQe8VnlSMtmBpV5ENupo8 xfwa1oSeKXewc5+P3fEs3iSBsA/9R6c= ARC-Authentication-Results: i=1; imf02.hostedemail.com; dkim=pass header.d=gmail.com header.s=20210112 header.b=EOOVlbCI; spf=pass (imf02.hostedemail.com: domain of jqqlijiazi@gmail.com designates 209.85.214.179 as permitted sender) smtp.mailfrom=jqqlijiazi@gmail.com; dmarc=pass (policy=none) header.from=gmail.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1676370032; a=rsa-sha256; cv=none; b=qa+NbIv87sXRgCc24akufQlmZXZVobqxwLr/Q65ioZwqZwBmnYgRp/uIEWTHCj3KG54Zm/ VxU4RrSaVz1DfOLEMAvPwaFgj+4L9WT9vjcY8llX648h/VVpqhWic+LJopZHuHx19IN/xv S5/mcKmfyVADZHNZdvG/1h9U4iNnUa4= Received: by mail-pl1-f179.google.com with SMTP id k13so16626967plg.0 for ; Tue, 14 Feb 2023 02:20:32 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=b225/Oi7yxIJZONw0pqqAgLrEIWJEiw5zSNQN0zCo1I=; b=EOOVlbCIjvP8btUhs19G4joVcBpMKeydUJSgGac9S9X/d4JeIE55KMCRdl1bVUJxn4 CqDA/M4ee1GUNOyK1qyWfEvjRFQYgubC+AG8bhQTQgQO38mCLBqfpCy+rZ71R/x28ui6 PWNx3SCtlctm0U2rR/BQqlqPOepGg2dA8l2O6AMD50Mu+fkrdSe8cGDUKK1vRU3vqu4e aq969MEXROoPmVGAGFK/TDg9Ax0gQhQFLiisRgxMCu4Ql5YxKcrzylLdcfYHCGIkQCh0 7jkpTnrjzR+Y6LLcjcZMYy9ivU712C1Zw171MM1quvR/Mzfvegn5PN3wzvBMrZ9ckRTi fz0A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=b225/Oi7yxIJZONw0pqqAgLrEIWJEiw5zSNQN0zCo1I=; b=ZLq3rq+33VmLbNN8Ooin/ZdDm1Q7D0yHUww+sjyZS8sD+itqaTMSJpBC4XRKc1lhK8 Gd+la2v5TrojhlSsCObywCe8CUHEdqKvQPzyVpzN8a7zmCoWEi99thNfPZO2OMhs59qn YiR5wbdbCHcDZ1J+R0osBHR40dfLoU/VOiKrNOmlzLCCoN+CaiPoOTNBZyj9ipVB4ZQ4 BaK3F4A2Kd9490vl1kPhVEFzhVuJjQcVstHInEMSTu6mDS+nMbMoc5eNIkwxnRiHcKFH pnQHxHkrdALByxBxYT7eoKWDf5jach4Q7l2w/IF+0t/MMnIyBB5io1/PmokaAS37WRtW 1w0A== X-Gm-Message-State: AO0yUKXpPCYflWtED0qgwiEyk0TG9ZmbooA0GZoNWzj9Bxzn6e5C1lRy QWCfg9KkkRcqcwJwLxZZ8sE= X-Google-Smtp-Source: AK7set9fCfylo2a4eWtCMzRQIOv4lWmyc6EpTyMGawpOmvIuDt8ISSsxmpU20oDAr0beDvrA2GbGMA== X-Received: by 2002:a05:6a21:6d91:b0:be:9893:fd61 with SMTP id wl17-20020a056a216d9100b000be9893fd61mr2476520pzb.28.1676370031323; Tue, 14 Feb 2023 02:20:31 -0800 (PST) Received: from localhost ([58.34.94.196]) by smtp.gmail.com with ESMTPSA id d5-20020a170902c18500b00186b69157ecsm6017886pld.202.2023.02.14.02.20.30 (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Tue, 14 Feb 2023 02:20:31 -0800 (PST) From: "Jiazi.Li" X-Google-Original-From: "Jiazi.Li" To: Christoph Lameter , Pekka Enberg , David Rientjes , Joonsoo Kim , Andrew Morton , Vlastimil Babka , Roman Gushchin , Hyeonggon Yoo <42.hyeyoo@gmail.com> Cc: "Jiazi.Li" , linux-mm@kvack.org Subject: [PATCH] mm/slab: always use cache from obj Date: Tue, 14 Feb 2023 18:19:49 +0800 Message-Id: <20230214101949.7461-1-jiazi.li@transsion.com> X-Mailer: git-send-email 2.17.1 X-Rspam-User: X-Rspamd-Server: rspam04 X-Rspamd-Queue-Id: 9364E8002B X-Stat-Signature: r4jf4ji358f7wkefcd6k3danareh1knz X-HE-Tag: 1676370032-4070 X-HE-Meta: U2FsdGVkX1+x04qDwbSfqXchqz7CNKIzJZ8Zdi7lHXOXQ2+bitdYQiXu2BfPxIq8Hr5GzT1aQ8j9rQD08dwR7Th5SRFfRYsCa1tVrB74QtoTdgehemOgvZAmrroxzmRpf4lMYGOo4Cy/PCXyYFSlmSGOqZJJLN/gl15RmT4ODtN+Ad+ch+f/J9pYNZGoxMOqp48U66qWC9AaIAgw8J6469ZO1ueZaaIXrbg901Kfa5FLr1LakW39RGMP12x8IBd6K/Gw5Hjls+8AHVKoMN5kJaaKf1a8MIEcKDOA1yU/KCARkXCzlBfNquSZ9d5oO8HGHXHeVxhf7pnWm6hVGiUr58rn/q52r/T9qr+LLHaVl4MAawl1e2oCC0MGHL6blQipIWkqw1K8KngkpJwgVrifc66D5QkoaR0wmIAbs02lJYWCO6wiLy8Jmt1lqvVrrnPpUZ9LXOLxhkL/OfHbgopi4UGbjH/KSUhpIr06k44c46HPh3owCD5Up3jcOz8lg6GBf7drXgfRrBZM9a+DWj8PFqvhniKJcNx4U87lD98Mv9fr1XlZg1bja1gWK0PiDmvVIpz486nrpknKfp2B8hJe5cDoX8CWu/mBS7vU4OejeRBPtIxfR7p8b7OyRVAfMFoBjTgxKtD6HCiwig3odPIbrxLC0ujs8xzprAECXeJcOWiuHV8nw+t4Fu4qtM7wBraLUf3gu/afioSUdQ/fJxoDyv4Lz8R6jtsJYOnhPN85G9/xfqjw6s+wNy2mZIaLjrV/7Oep8K7IEcWSoRjpgZnSRFM9d7rcY4AZC16ufBQFZTOxnHOu0HSfoenAZDybRnMqDqJX/OwWDERULD1dc5bjBCGxW9DC1CdHg1ZY8U7Q3P6v1ze29qSnnir1pta7xWCZ0Pa17nex8rZyyd8Y81RtvqgUZ6M+i5xnOKw248DIpeoD0/y4Uy6dIGGfblF4rDs+u3T/8W7nitxlB3P1p0t XWCqUP+u yU2hB9t9DjyJakhPZRc1fUNIA4LFMOhi2dsYRgLwdJOfRi5lAgCPeY74i75Fwhlp6QPsXIofRh7LSqT/CB5vQ5JHwV/B22O7ksdjGSpMot/3M5SnAC+X4KiX1OxE++j4gOvTKI2nHiwHIIvVKUgILHqPEy5JhkJsEnobFckaTKrHgh3EmZlI9df3xhz2EiwABHk/qGs0ZJ3AIJ2ojlAY61dv2+aHL7mscgRzsbnQYmydMIwHTuHJQ397d233ci/L0jULvf8eez5HePD5MHjEct3plmMsXhW/FnvcvqJ8+V/MK+m1bVGpaC/61kWtLBBOXAn6WtE1rZKwz7OW/AosTakoxcP7nYLhvOMDM4UonF/lNZBBw1nWcEOxsFnJib5Z2uBEwO2ykFQdP+H2q7bMa86XOq5099SrDblTCjZMBZX0e4siKMnKjRCiT4EmQfpwuhdFSJW6zogFQkKLbq8MwupcIhzPU5rJuyJ9yM8M+kTzjdDo= 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: If free obj to a wrong cache, in addition random, different offset and object_size will also cause problems: 1. The offset of a cache with a ctor is not zero, free an object from this cache to cache with offset zero, will write next freepointer to wrong location, resulting in confusion of freelist. 2. If wrong cache want init on free, and cache->object_size is large than obj size, which may lead to overwrite issue. Compared with adding a lot of if-else, it may be better to use obj's cache directly. Signed-off-by: Jiazi.Li --- mm/slab.h | 4 ---- 1 file changed, 4 deletions(-) diff --git a/mm/slab.h b/mm/slab.h index 63fb4c00d529..ed39b2e4f27b 100644 --- a/mm/slab.h +++ b/mm/slab.h @@ -670,10 +670,6 @@ static inline struct kmem_cache *cache_from_obj(struct kmem_cache *s, void *x) { struct kmem_cache *cachep; - if (!IS_ENABLED(CONFIG_SLAB_FREELIST_HARDENED) && - !kmem_cache_debug_flags(s, SLAB_CONSISTENCY_CHECKS)) - return s; - cachep = virt_to_cache(x); if (WARN(cachep && cachep != s, "%s: Wrong slab cache. %s but object is from %s\n", -- 2.17.1