Received: by 2002:a25:868d:0:0:0:0:0 with SMTP id z13csp418348ybk; Fri, 15 May 2020 04:18:16 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyqRri/yGD0IxbuiDLsno3lVpNywQTpida4/BG4xSvjFulwELaw1WbmO85+xL+D0X+pLjzF X-Received: by 2002:a17:906:dbc9:: with SMTP id yc9mr2191820ejb.157.1589541496215; Fri, 15 May 2020 04:18:16 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1589541496; cv=none; d=google.com; s=arc-20160816; b=A0VNQxW0Xnpa3gZcbGsz3uulb1Mjf9SosMvK0taivJGn3r+rqiLdiSJNsmrt89Kk7q XP/X6Wz5Ow0xOiV9h2JW6iTPKCKoMCTO1gHh1iL1LOaGLdLBAGZhtkrD8/M0gXndd4pH I+pfOLvYJOh4A0/piT/wNRa+xqYhsSG5d5+IlWR8z2wK8+eyA0KI03mJ2N6vv0pM+rl9 p7uLoK2FcbUQD5IISpTBnY/Vj5fz1ujfcu1f+mcWhyKdk9u//99Urod6SK08NxyaZfSG BTaM61zhjKaClZ4U5M9vyV0LNDlQgP7+ziO9fUHCxHRFjAzWiNx6/YzNfbeKYqExenbF n72A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:cc:to:subject:message-id:date:from :mime-version:dkim-signature; bh=fG9RJAdiQR3KRVbi1EfJRtogMSIdgoMp1F7l88z9wa0=; b=ZFvXTHKhKSCj6ljLSAkDuhISyVnNS4nkh9vVVr6RVOJvMlTu6cG44MKYC9m+/GW2K1 jKUqbWKJ33JvS/xBus+2hrzRoLdbUZPCYGXiU4U0o9wCvzBeFZaH1d8/6xvIejDiK4vD vaZBHR1QgxX/wjmpT4MuS22NC1fYwzCr330clG9V4LNgzwIc68EEQTTQBUPC+fxorkbn XcdUmeJBQAOSGYqXIXAx2PLOZ6P+Lrfyj+QuKbjSGK1gKRCxuXBBThW3gBFsWkyWOR/R Y/cead/XeVVztgnwz3CzdMwIMXFBLop98CNBWuQ5oTn6s3VLTXaID5CYRna8Xw5fTMFg JiEg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@juliacomputing-com.20150623.gappssmtp.com header.s=20150623 header.b=jUWlX02L; 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 Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id nj6si1012741ejb.292.2020.05.15.04.17.52; Fri, 15 May 2020 04:18:16 -0700 (PDT) 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; dkim=pass header.i=@juliacomputing-com.20150623.gappssmtp.com header.s=20150623 header.b=jUWlX02L; 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 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726197AbgEOLQN (ORCPT + 99 others); Fri, 15 May 2020 07:16:13 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:60670 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726144AbgEOLQM (ORCPT ); Fri, 15 May 2020 07:16:12 -0400 Received: from mail-io1-xd2e.google.com (mail-io1-xd2e.google.com [IPv6:2607:f8b0:4864:20::d2e]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 2CFE8C061A0C for ; Fri, 15 May 2020 04:16:12 -0700 (PDT) Received: by mail-io1-xd2e.google.com with SMTP id o5so2218893iow.8 for ; Fri, 15 May 2020 04:16:12 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=juliacomputing-com.20150623.gappssmtp.com; s=20150623; h=mime-version:from:date:message-id:subject:to:cc; bh=fG9RJAdiQR3KRVbi1EfJRtogMSIdgoMp1F7l88z9wa0=; b=jUWlX02LSQ11rfJ6ZVLTgF5Vcv9IS6E6Er1PynDV1jN57S0PWqVwaItvlozJwFC7wq I2o04DU+ury1VNLTs5zv+Ojcq9fbllDEIydDEIFkKjMIll8OOfhn6joxrSIL+BDPCQNM Tunz7m5SspKk55ADs3bHcuDmxn7r8iTgNBionwhxuI3qrF6lWkOvO52UKwcJ6pmxDm/E JufS8YmlONgtbkXVWAgOEjLwvE71LJhxj6GpRzlROlLnB4+oCHHNZQficBhwSWRMJ5Kb OH7Fymgk27yDeRVLkLBuHkJjEi7pO265hEen8YlNPfnA/mLpjkDAFsv0Tr+BM4s/B1AR h0ow== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:from:date:message-id:subject:to:cc; bh=fG9RJAdiQR3KRVbi1EfJRtogMSIdgoMp1F7l88z9wa0=; b=KUyRk24C/4JpPmtUy60V5aGYxJXI3AewCOoft+QZkdplCXrMWWlo9aEPBhnF7CTida rzB0oVL4LYFkOGc0snI1xY4gVur/NXGp8/j0JqDLuEtb1xFMrvNHc+EVpELVmN70eOzL 9zlPRYwVkcwzSGdniTzKby8HIBMQ5k8wNin8aR2aYIJFkF0PGHtY4Ur7PgazYDywUv42 2JWJA5dlNyzB5AXNe1WVnhe4ZDJsGuVNcvjKg1q1uaQ24iAWuhBTNS4uOw+3FcRKRtke NuDCWxvfVzVypSgfiAzDVuyfwkXlp4da8Od/errVjL+DT5tEHc6U70ETuUd+QX9uIs/I TiSA== X-Gm-Message-State: AOAM531eQwN0I0t8aPERJsA45uGEHXHiwd4fwbAZzFLRfyg1/5zvNdEI AiqqoBcowxQbw12SAWdhz9EWAR8bsS6ZDTIpM6RbeAUXfkE= X-Received: by 2002:a6b:6b04:: with SMTP id g4mr2398603ioc.75.1589541371180; Fri, 15 May 2020 04:16:11 -0700 (PDT) MIME-Version: 1.0 From: Keno Fischer Date: Fri, 15 May 2020 07:15:35 -0400 Message-ID: Subject: PTRACE_SYSEMU behavior difference on arm64 To: Linux Kernel Mailing List Cc: Oleg Nesterov , Will Deacon , Sudeep Holla , Catalin Marinas , linux-arm-kernel@lists.infradead.org Content-Type: text/plain; charset="UTF-8" Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The behavior of PTRACE_SYSEMU on arm64 appears to differ substantially from that of x86 and powerpc (the other two architectures on which this feature is implemented). In particular, after PTRACE_SYSEMU the syscall will always be skipped on x86 and powerpc, but executed on arm64 unless the syscall-entry stop was again continued using PTRACE_SYSEMU. The skipping behavior is also documented in the manpage, so I suspect this may just be a bug (the skipping behavior makes sense to me and is what I would expect). The reason this happens is that `syscall_trace_enter` re-checks TIF_SYSCALL_EMU after the ptrace stop, but at that point it may have already been superseded by a new ptrace request. x86 and power save the original value of the flag, rather than acting on the new value. I can submit a patch to fix this, but wanted to check first whether this was intentional. If it is, I can fix the man page instead. Keno