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 61C44C54E71 for ; Fri, 22 Mar 2024 09:58:14 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id E919B6B0088; Fri, 22 Mar 2024 05:58:13 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id E42386B0089; Fri, 22 Mar 2024 05:58:13 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id CE4446B008C; Fri, 22 Mar 2024 05:58:13 -0400 (EDT) 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 BCEF26B0088 for ; Fri, 22 Mar 2024 05:58:13 -0400 (EDT) Received: from smtpin02.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay03.hostedemail.com (Postfix) with ESMTP id 872C0A0011 for ; Fri, 22 Mar 2024 09:58:13 +0000 (UTC) X-FDA: 81924224466.02.39970E5 Received: from mail-wm1-f43.google.com (mail-wm1-f43.google.com [209.85.128.43]) by imf01.hostedemail.com (Postfix) with ESMTP id AE89440014 for ; Fri, 22 Mar 2024 09:58:11 +0000 (UTC) Authentication-Results: imf01.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b="Ji15sN/k"; dmarc=fail reason="SPF not aligned (relaxed), DKIM not aligned (relaxed)" header.from=kernel.org (policy=none); spf=pass (imf01.hostedemail.com: domain of mingo.kernel.org@gmail.com designates 209.85.128.43 as permitted sender) smtp.mailfrom=mingo.kernel.org@gmail.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1711101491; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=xGqEICCDmfISMN2Tgs6OomSyhnoxbbHxoKPcMA5U3Ds=; b=AT3xiStKA3ERsPSbhQ3LTx/VBhJR7G9awc6FJwf5a30BMlD4jESgAg10XNyyZUFBn9SQZt nNiG6Ta+HQfuBdFzJaAXb1S6noHspOkPPytRCztfetfIXAmU8DTmNrxFHG5ah+XqhU1CyL 1pi2WJ7vgc/TsKmbSVDkXJOGoThy4rM= ARC-Authentication-Results: i=1; imf01.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b="Ji15sN/k"; dmarc=fail reason="SPF not aligned (relaxed), DKIM not aligned (relaxed)" header.from=kernel.org (policy=none); spf=pass (imf01.hostedemail.com: domain of mingo.kernel.org@gmail.com designates 209.85.128.43 as permitted sender) smtp.mailfrom=mingo.kernel.org@gmail.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1711101491; a=rsa-sha256; cv=none; b=zwUeoyVeeOtHcCiicME3OPimpwdEO6FvmehWKf7jwlNU6maRJLnDHtk1oEG9A1a553hFz6 2kHZPtQd3K/W6X9oxWOx+JZz3urLcSCBkXjKTWZ0YvaXm4vZiIOabfenhYfGon8CS2Huk0 qXD7RZjvdXQwUyFqcz+vWkyhlqHtZJo= Received: by mail-wm1-f43.google.com with SMTP id 5b1f17b1804b1-4146a1ac117so11558605e9.0 for ; Fri, 22 Mar 2024 02:58:11 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1711101490; x=1711706290; darn=kvack.org; h=in-reply-to:content-transfer-encoding:content-disposition :mime-version:references:message-id:subject:cc:to:from:date:sender :from:to:cc:subject:date:message-id:reply-to; bh=xGqEICCDmfISMN2Tgs6OomSyhnoxbbHxoKPcMA5U3Ds=; b=Ji15sN/knm3wVeAkovyW+J6aOjS14rCxgqlhe8ecczvDX14eA1Rc1mooRSELe7yRqH /yisbm+R/vMnzj6LzJPqfV7HxcTfeX4GdJHezp+JrwSJbwVNMWAZNeKFF8TOAj0nZk6t wTO2BdOP1u6TK9uHB2GxY1QOK1olnybEgeNEw/lk9YNvEtl02ApVbFUx/I02TCEeGr2a Y3c+aWMrRJxB8ULku57+4IP1m0eYJfwkwW/lZf6Rv3MQC8NmuN2+NYSh+vwQT32GdF5F hYHE+vBX6K7ACR94MYw3g52KbvbEl1ARqbcJD1Gt4rHFdJbWYGiiGJPAwETmOxsxFHxH 2dUA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1711101490; x=1711706290; h=in-reply-to:content-transfer-encoding:content-disposition :mime-version:references:message-id:subject:cc:to:from:date:sender :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=xGqEICCDmfISMN2Tgs6OomSyhnoxbbHxoKPcMA5U3Ds=; b=GQTUiRp9MgrPd/fNZNC9y9vYD4hLV7y3GKBC4b+FRE36wWnCgYFy/YX6Ial9qkW5Qj 61t53W3OefLQ4ehS3HD8rRX6N8CxpFn4i/pTda5AbOkZSasw7NHQvmIWltrLF7gcB3T1 p/85Kc6Ab7i5ya5ypLctfciBTUOY3xmI7sDV6nyAwLY0beItgLZUgepkEoqPvtewisyv YT+CZeUaJDshNA/cwh/632zkOhByUm1UUtYgKFNc4hIm+F9ja/FAKbZkFx12swbYg/6a BfvHSclJmH+kIl570XbQ1AooMytungJtr68CdOAtESNNWe5wzJhCHjJeNevOq/WZN4CE lMaA== X-Forwarded-Encrypted: i=1; AJvYcCVBqCtH0eYRv1QIz0GoF/WDA488j4cwuwzE6cZIjWFWl1w/9Gb4SXRGYDIsEB/iITA+5adNsX4VF0e6fyQ2PFQAlfA= X-Gm-Message-State: AOJu0Yw+vL8rp5HsySYlU+h2R320sJqQLq6BJyca9HXDwAzRZEGtHhUZ QZzhL3dmY9A7e4bEHk5zrlDi1o70Ap0Hh8LX9+hghjEqz11/hJu2 X-Google-Smtp-Source: AGHT+IGVBpsURgy95iJG0WVZSv0I6xzHthi5Am+OVL/2gfunyQBb0t2g50DRG1kF8q/B9Ag+0WfCPQ== X-Received: by 2002:a05:600c:3507:b0:414:76df:41d6 with SMTP id h7-20020a05600c350700b0041476df41d6mr1401787wmq.13.1711101489520; Fri, 22 Mar 2024 02:58:09 -0700 (PDT) Received: from gmail.com (1F2EF04C.nat.pool.telekom.hu. [31.46.240.76]) by smtp.gmail.com with ESMTPSA id fm5-20020a05600c0c0500b004146c769c79sm8087715wmb.0.2024.03.22.02.58.08 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 22 Mar 2024 02:58:09 -0700 (PDT) Date: Fri, 22 Mar 2024 10:58:06 +0100 From: Ingo Molnar To: "Rafael J. Wysocki" Cc: Dave Hansen , Anton Altaparmakov , Pavel Machek , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , x86@kernel.org, "H . Peter Anvin" , Chen Yu , Pawan Gupta , Catalin Marinas , linux-mm@kvack.org, Matthieu Baerts , Mat Martineau , "Rafael J . Wysocki" , linux-pm@vger.kernel.org, linux-kernel@vger.kernel.org, stable@vger.kernel.org Subject: Re: [PATCH] x86/pm: Fix false positive kmemleak report in msr_build_context(). Message-ID: References: <20240314142656.17699-1-anton@tuxera.com> <70261e2a-b87e-462e-964e-95a51ecde978@intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: X-Rspamd-Queue-Id: AE89440014 X-Rspam-User: X-Rspamd-Server: rspam02 X-Stat-Signature: 6ybnku55b9kaci8y9e661z7yfadzxous X-HE-Tag: 1711101491-52441 X-HE-Meta: U2FsdGVkX18ts1G1y5wGVAdryqpZhwB4MtRQ4MlY+xbpQoN98EI+RNlStoW9AbcrrK3OY0dg0SDLLkkHu36wmYA4Wmt/XxYVNm7G8/EoOSdWqnHfr3beRbKltrLEeKLGud6I0YaSs/scnJNcfsmnHswpYy3HN4NKqh9uBHf5vEOBKs/Uwok4sJLQXLIhTyH02wXYM4q9qAoFxFddSXkknVF1pWFS3Sj+Nv66l2G/ms5BxUSvVFDJEa75gZ0wdQsMzUGUagX55EgmS8AcvM4Jzzk9uMl7qvXAmUcdujHlfzaqHUy4JO4mFFaAvXy9WanbBbUvVA3m6ABb6Xq2l8DlUqNqapYomGSS8qO72Wy1RD5E0zwLWZQgBMFc2a/C01ASTDPcMSaFnIZCWUag/rmotjePzyt0YmHoY+juPOWjXGYgVZbPbOXNDzrqznMv7vpyAQEuyvZ9vUDano5Bag4/5tBS8eBxelzA1YN5RNzgKv1n9XORoEgLEYJJ7XkbRNKzgw6KAAiSomACKebo2bdGlpZgt7bX0LCBVbBPxchpSBuAX0p3FhnK1bYFblJPmI/eloqzCrIte+ksdIs9gzE/ewAyloMA10T1M06Zlu7Rn0+km1AYoyQ25oB0ejp3PYNl5Drhvn93XE8kaZAeKkIXBC/PvpXyyzdVYnrfrPd7rjrFbPK9C0I1ziT1w1sZQgjTHqr0tZ1mNu/8GAf7VcZFLxZ80u/jxR/TNjG1Heq+SQEfI8lqRAZK0BmqyA+8zbUXAcH/fTIembMDcrS5/zuyYQErXv2LIAKoPBhOf+2X2dj5UW3UrnVZwRr1XLqMmcRtfrSp+/JjWaMmBbeUBmF7K2VgfT2vEhWla2DzqORk5pdMMmPreU/LtMeptjgqNt6fOpjRRSpxYWidS93klcQxu/BoTQB1V7gvtoHJk22YcQeM25OdKFROK4IN/+Y7CbvzSWbO5NJG1Icr64xL/gr RCdsG3a8 GVATLqUdLWQOObzd48sH6ro5+JfrBaY8ke0dxEgHpcoADUbZojDgMEf/y6Dbe703u7VR6F4J6wKheUu/lQFINxW59sDI4dGY51alOao4ByLlt5Qq4yG7sVLlIpkBVi0K1u8OAzpRoa7hUjlQHch95cZo+NMzjyT7TmoL14Pe2IFctlrpDHnXuRf0IIgUFnrKeed41VCOxReeRv46ev+J1odZCX3osutcGoPEi7hDS9+8eRKj3lI1Yo4h8wwZ6ZFISkhvElL2wdYJx+8T/HrrOXyhO+k0uZYgnwQt6uPyJiu5BaOB6sYRQLVLb3uXNkH9qbHfVg0hR5OH+Hgf0KbrSR7ZhIg== 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: List-Subscribe: List-Unsubscribe: * Rafael J. Wysocki wrote: > On Thu, Mar 14, 2024 at 4:05 PM Dave Hansen wrote: > > > > On 3/14/24 07:26, Anton Altaparmakov wrote: > > > /* image of the saved processor state */ > > > struct saved_context { > > > - /* > > > - * On x86_32, all segment registers except gs are saved at kernel > > > - * entry in pt_regs. > > > - */ > > > - u16 gs; > > > unsigned long cr0, cr2, cr3, cr4; > > > u64 misc_enable; > > > struct saved_msrs saved_msrs; > > > @@ -27,6 +22,11 @@ struct saved_context { > > > unsigned long tr; > > > unsigned long safety; > > > unsigned long return_address; > > > + /* > > > + * On x86_32, all segment registers except gs are saved at kernel > > > + * entry in pt_regs. > > > + */ > > > + u16 gs; > > > bool misc_enable_saved; > > > } __attribute__((packed)); > > > > Isn't this just kinda poking at the symptoms? This seems to be > > basically the exact same bug as b0b592cf08, just with a different source > > of unaligned structure members. > > > > There's nothing to keep folks from reintroducing these kinds of issues > > and evidently no way to detect when they happen without lengthy reproducers. > > This change is fine with me FWIW, thx, I've added your: Acked-by: "Rafael J. Wysocki" > but I agree that making it for kmemleak reasons feels kind of misguided. Yeah, so it's a workaround, but kmemleak is also a useful debugging facility that is finding memory leaks that static checkers are missing. The fact that we don't have an easy way to prevent these problems from being introduced is I think properly counterbalanced by the facts that: 1) Only kmemleak users are inconvenienced by the false positives. 2) kmemleak users & maintainers have created the patch. There was no pressure on us x86 maintainers other than to apply a root-cause analyzed patch. 2) Over a timespan of ~10 years only 2 such alignment problems were introduced, and they were fixed by the kmemleak folks. I think that's a fair price to pay for a useful facility. Ie. I don't think there's any long-term maintenance burder concern. So I've applied this workaround to x86/urgent, with a change to the title to make sure this isn't understood as a real bug in the PM code, but a workaround: 37fb408c99af x86/pm: Work around false positive kmemleak report in msr_build_context() ... lemme know if you feel strongly about this. :-) Thanks, Ingo