Received: by 2002:a05:6a10:87d6:0:0:0:0 with SMTP id g22csp850160pxr; Mon, 11 Apr 2022 08:42:06 -0700 (PDT) X-Google-Smtp-Source: ABdhPJy9bKksW3oEBAiUCLdhZNj5Go/HWiaiC6hUPE1kgi1+9UXhWhqe0J2yn17p9L9ksnmwdSIh X-Received: by 2002:a63:b40a:0:b0:35e:d274:5f54 with SMTP id s10-20020a63b40a000000b0035ed2745f54mr26131915pgf.200.1649691726070; Mon, 11 Apr 2022 08:42:06 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1649691726; cv=none; d=google.com; s=arc-20160816; b=sYLbCqV2ZvC7ByUAwXxOJvRVvBVORPoUKg/oMBwI6+bwhMRKmCEVgoDh828otPpZ6f 2F/5FJmnEjDJUVCQco1lJNUU0rkn8WmcDG2CiCQGF3FhP0NNWHmxyDy3/zqtssvN5Xxs 8W2WGG0tJ/FWCezODYFJYDVquKLVWAIFV5fhyi3turTtJseph5R84pPSkMVrlTql+6nZ i9zMqjPsPZwC30rtBQN2WmIMCdHzICwuKHty0/MXUgpnBu1Mf9CADUbbsW4i9wH5Bn7Y t36wSCwrWrCnUwdBkLT/mNe2G6dOQZw7nAmZNnvAEMOi9IF9bg9rqMs1RN3Bnwi4LUvK UQhw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:subject:message-id:date:from:in-reply-to :references:mime-version:dkim-signature; bh=1Ui9lp0TA3JfVzfhgkvP/Tb30LS8kZ/gurQz/lTE7yo=; b=r7tQq2z/FXUE4Cy2dR8x5eSqGSRofL2lgvOlLDPk017MB6Nq5D/guwZPXeC56Fy9qY gtFxCSFdWGDvoHOfo2xq2qLDQbaMZlgb1qVql4CPRB4mj6kE7GLrBFD3xGSRhKkf83IK PVbjfyUDI0JZV0gG3w66/oF4nV70zkwfH6hu3IE2J5WZ7AYGLB+EU4hN2sl86mMfSh41 wZcmnDbfWxjOBeJEqxl/d9Ypr4o6i32VyoPjU2BWCr+y9MaZfTJYcurUrfAJHhTuuotU ViPuo3L3poouRKvhQ2bOLcjLEIBjjqy30LIApwEItEr+F8dCptpbwbIL8biqlsOFbLv1 NG/A== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20210112 header.b=Haux9mta; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id g2-20020a056a001a0200b004fb04dde469si9320298pfv.23.2022.04.11.08.41.50; Mon, 11 Apr 2022 08:42:06 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20210112 header.b=Haux9mta; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S243378AbiDJPXL (ORCPT + 99 others); Sun, 10 Apr 2022 11:23:11 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:47614 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229481AbiDJPXJ (ORCPT ); Sun, 10 Apr 2022 11:23:09 -0400 Received: from mail-ot1-x329.google.com (mail-ot1-x329.google.com [IPv6:2607:f8b0:4864:20::329]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 8BB54FD03 for ; Sun, 10 Apr 2022 08:20:58 -0700 (PDT) Received: by mail-ot1-x329.google.com with SMTP id k25-20020a056830151900b005b25d8588dbso9653809otp.4 for ; Sun, 10 Apr 2022 08:20:58 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=1Ui9lp0TA3JfVzfhgkvP/Tb30LS8kZ/gurQz/lTE7yo=; b=Haux9mtaj2UidFgxiVkuLzl22ZI2PUsAqeM8HjJciz/gi++9XG5iNydIiUSXWUfJs6 6epyuD4k7Furn17pSBWR6d0lAjA/hMmsaistudACKPYIG1mq2oyK3GCQUwxXXWGrpLJr Lrq82f3VSXwVRQnTw8atituGEQXg0X4VENxpallGnCHIy384qvTqmoWTkaLG6iNhz9bM gfrLGcWn/vW9PmMhOG6nqHeJ9sWLSVAKYtQjurUUDaZKUu9EDZ3YrIDmzRiqwUbyCMHr xAAhcNBgbaKmZpy+q99xzgikAoGXZWe0MluGztRbmrFen01BA6MYUsnExpvisIrwJ6+z RgVA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=1Ui9lp0TA3JfVzfhgkvP/Tb30LS8kZ/gurQz/lTE7yo=; b=e+mPhd0KTlDAnqp+h5as2tKVaMXpsi0W0bO0GwTi4534glOUafGs8fER0gWiUbQ//h R9TOmcfWZiQFIzEBRuJiSGlKo85Qx8wXyS/1TJMMFdr7QTfkOYL6i1LUANchkFI0xFrL 2FJ8r2drNX4qt71TIqiauTPPa8kttdEzOp+OQkYonHwhSuF4nNpbaeSCTjoPlJW1K2aI tbhex/SdkPHLD+g+TxWFJ1/DaBd+DTnbKRkBbotXJstXWTibcbrjlzAJRfdE0+OjURzG wtflrA78JEpp9saSH+M+zM4x4TlP23tSvXiCQRLX5G2KN/ZoDaJfY1Ig00IIXYZPu3x7 LLTg== X-Gm-Message-State: AOAM532vB4afQicBwGJgxVLn1soXKND8hHFjcLoGtsBI2UebuquhDL+k I2NFC+LKYIB+QVPVJBzLrqF+zpwEyZNeClhaKQ== X-Received: by 2002:a9d:f27:0:b0:5cf:8702:9ee9 with SMTP id 36-20020a9d0f27000000b005cf87029ee9mr9682041ott.194.1649604057931; Sun, 10 Apr 2022 08:20:57 -0700 (PDT) MIME-Version: 1.0 References: <20220408223827.GR2731@worktop.programming.kicks-ass.net> <20220408231447.GS2731@worktop.programming.kicks-ass.net> In-Reply-To: <20220408231447.GS2731@worktop.programming.kicks-ass.net> From: Brian Gerst Date: Sun, 10 Apr 2022 11:20:46 -0400 Message-ID: Subject: Re: [RFC][PATCH] x86: PUSH_AND_CLEAR_REGS_COMPAT To: Peter Zijlstra Cc: "the arch/x86 maintainers" , Lai Jiangshan , Josh Poimboeuf , Andrew Cooper , Linux Kernel Mailing List Content-Type: text/plain; charset="UTF-8" X-Spam-Status: No, score=-2.1 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,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 lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Sat, Apr 9, 2022 at 1:44 PM Peter Zijlstra wrote: > > On Sat, Apr 09, 2022 at 12:38:27AM +0200, Peter Zijlstra wrote: > > > > How insane? > > Anyway, the questino is; since int80 doesn't wipe the high regs, can we > get away with the SYS*_compat things not doing that either and then all > using the normal PUSH_AND_CLEAR_REGS without having to invent _COMPAT > for that? For a pure 32-bit process it doesn't matter whether the upper registers are preserved or not, since they are inaccessible. Mixed-mode code may assume the upper registers are preserved across a call to 32-bit code, although it would be very unlikely to encounter SYSENTER or SYSCALL instructions anywhere but the Linux VDSO (and use anywhere else would cause undesirable results). There is no compelling reason to not preserve them, and code simplification is a good benefit. -- Brian Gerst