From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-yb1-xb33.google.com (mail-yb1-xb33.google.com [IPv6:2607:f8b0:4864:20::b33]) by sourceware.org (Postfix) with ESMTPS id 7A7253858D37 for ; Sat, 16 Mar 2024 16:38:19 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 7A7253858D37 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=gmail.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 7A7253858D37 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=2607:f8b0:4864:20::b33 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1710607101; cv=none; b=LxhW33Gz6++dbPP34T+zxq+2ZWvOfQqzPBh+7o8klQ9GbmNDM0aMHqiSR+aVYeutCsFGJYqcLYmb8QZokTtj36oZZ0ZQxH0D0c2JqdehjwIoS4XX1mCIifVP0ZWHeOJP2u5UIUTrygEkral21Cn+gotue2mh2Hw8kStocu30xv8= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1710607101; c=relaxed/simple; bh=+oFfgjaSdfuZoIefwKtcSbtvLkStWKm+M3yRXhd5Z7c=; h=DKIM-Signature:MIME-Version:From:Date:Message-ID:Subject:To; b=KS0kImOTFlIddAZMnfn3dqhgLDWE6CgMEFVY5h2H1Myc8/NoEKx/Sk+XHZgwSKwkV5KUPbQRlXAyfcznRL5DlQFXCCkDGbaYZmJLfIexgfulVz+F8WoyqpnF6AisQYQe0Fo7cA4Zr3MeATB2hElASDzBtEV0Fk9KRNKMlHXeP28= ARC-Authentication-Results: i=1; server2.sourceware.org Received: by mail-yb1-xb33.google.com with SMTP id 3f1490d57ef6-db4364ecd6aso2479111276.2 for ; Sat, 16 Mar 2024 09:38:19 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1710607098; x=1711211898; darn=sourceware.org; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=LVMr+TTLdDlZs/+ai+BMfQj4orP3jJPmzUKo7dacua8=; b=GL0MjML6CIgoCwlPF9T+RFdvZZdsdhnS4e914n6ba0q1TVcO4O4mqvB4xEieqIURSO JwxtDiV+yonohcQOISZjtgm3pWzENYDdywqbGXGFrnSvgBBiSqHkbiDwyV/VqyiCeBct e01LNFn6fkh4aSC0MffgiGwtSjcpUWhSvmOiHyv+YagsqZHGfeFKfeKbgfsSW2zxtPLu Wfn7utJIba7kKEqAQHhtrEioYNmZI5rvLw9XVDtkWe9tjonEIOUpvHeOsqyc6pd+uFlK HY8kFIUUh97yFdVFGlFHFHr4wH9KyE0TrS85daPZLlxWeiOdhFuGgZMdrMefNCwerfdx 3iyw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1710607098; x=1711211898; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=LVMr+TTLdDlZs/+ai+BMfQj4orP3jJPmzUKo7dacua8=; b=JZtA8/KFQyONCnWvmK0Iz40b9jY3CvdWdu+cw+DQpYkh7t3n+s6gf43/Ni/Jn3MXM0 vc4AXR+fHhilw1ukfIPvxm246PMr3WA0wWtEboUC1G7BGXbCLMBq+olalBhj4IdsoGGy dFsYXHOrobg9QO8BoAe6enrwYrkkfOYwNJ+JwbvdaqZVn76POUnBU2yUddvf1IZQ8DNJ WAfgTmkF94BQLhCWea3Qhu9FX/dHo8HRHyE1wYdPZ7eyi8hSRrdBb+u9O/WnXdCe94Ov uc62NliMnUZOe93hjZ8XlrxLdKrygixI9mvmN5Q78hYKRU20Q8SgBHjHQqlnb0Ri1STe dc3g== X-Gm-Message-State: AOJu0YxIPQy5hkIHkwLBzF8sj/Gw/3OO9oTLM/aQkzGQPVd48+y15jNG vZwnCP6FxQh9MhlbfGf/3dEaMN5QKe0qjlnqB0dtY9P/ijEMn1PG562Ia+7cTWcVUFvos6wJ8GT XoLr0FlUTDEtLu3KPbdb2/OwzOdgwfob4 X-Google-Smtp-Source: AGHT+IH8eLLZK1VyzW/nfSW8skinae2qscm7Xg4c96STUQM6OytFDUBq6zPBijMlRUd7bPgP0amdwWIGWPH/FtiJNYc= X-Received: by 2002:a25:c78b:0:b0:dcf:c299:2467 with SMTP id w133-20020a25c78b000000b00dcfc2992467mr6836131ybe.5.1710607097692; Sat, 16 Mar 2024 09:38:17 -0700 (PDT) MIME-Version: 1.0 References: <878r2ifdrx.fsf@oldenburg.str.redhat.com> <87y1aidxq6.fsf@oldenburg.str.redhat.com> In-Reply-To: From: "H.J. Lu" Date: Sat, 16 Mar 2024 09:37:41 -0700 Message-ID: Subject: Re: [PATCH] x86-64: Stack alignment in _dl_tlsdesc_dynamic and red zone usage (bug 31501) To: Florian Weimer Cc: libc-alpha@sourceware.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Spam-Status: No, score=-3013.5 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_FROM,RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_PASS,TXREP,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: On Sat, Mar 16, 2024 at 9:32=E2=80=AFAM H.J. Lu wrote= : > > On Sat, Mar 16, 2024 at 8:18=E2=80=AFAM H.J. Lu wro= te: > > > > On Sat, Mar 16, 2024 at 8:04=E2=80=AFAM Florian Weimer wrote: > > > > > > * H. J. Lu: > > > > > > > On Sat, Mar 16, 2024 at 7:43=E2=80=AFAM H.J. Lu wrote: > > > >> > > > >> On Sat, Mar 16, 2024 at 7:37=E2=80=AFAM H.J. Lu wrote: > > > >> > > > > >> > On Sat, Mar 16, 2024 at 7:33=E2=80=AFAM Florian Weimer wrote: > > > >> > > > > > >> > > In sysdeps/x86_64/dl-tlsdesc-dynamic.h, the stack pointer is > > > >> > > realigned for some variants (notably _dl_tlsdesc_dynamic_xsave= c). > > > >> > > This realignment does not take into account that the function = has > > > >> > > already used part of the red zone at this point, thus clobberi= ng > > > >> > > the initally saved register values located there if the stack > > > >> > > alignment inherited from the caller is unfortunate. > > > >> > > > > > >> > > (Note: I do not know to write a good test case for this in the= existing > > > >> > > framework. We saw this as a random LTO plugin crash when buil= ding GCC > > > >> > > with -mtls-dialect=3Dgnu2. The existing tests on pass on x86_= 64-linux-gnu > > > >> > > with this change here.) > > > > > > > > We should try to find a testcase. Can you provide a backtrace when= it > > > > happens? It should be possible to write a testcase with the backtr= ace. > > > > > > In my reproducer, when %rbx is about to be clobbered, I see > > > (%rsp % 64) =3D=3D 8 at the start of _dl_tlsdesc_dynamic_xsavec. > > > > > > The %rbx register does not get clobbered if (%rsp % 64) =3D=3D 56. > > > > > > Does this help? > > > > > > > Yes. I am working on a testcase. > > Hi Florian, > > Please verify if this is the right testcase. This test fails only on AVX512 machines. --=20 H.J.