From owner-freebsd-emulation@freebsd.org Thu Jun 14 11:46:23 2018 Return-Path: Delivered-To: freebsd-emulation@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 1C51A102068E for ; Thu, 14 Jun 2018 11:46:23 +0000 (UTC) (envelope-from yanko.yankulov@gmail.com) Received: from mail-ot0-x242.google.com (mail-ot0-x242.google.com [IPv6:2607:f8b0:4003:c0f::242]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 953AC85F56 for ; Thu, 14 Jun 2018 11:46:22 +0000 (UTC) (envelope-from yanko.yankulov@gmail.com) Received: by mail-ot0-x242.google.com with SMTP id c15-v6so6709998otl.3 for ; Thu, 14 Jun 2018 04:46:22 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=OEovXGCNm1dRkVQxrMk5w8n5t04PfIIor442TRCqbKE=; b=Rhrn+96sxifkq/zseegbGJ3ckwNoDQHL/MayMZDRYJeo4vfomvXrrA6BvIVS+idHyM fq9NthHad7Vpv/tiWUAETRmrFWtYsZlqdXbLNuWuu7Y1xaGdCzFtDX8Hx/ZqIPXaqDhx lPHUcse963lz5SPgem8AkNU/Luff5Wrjyo31IQXB66eRiqhGVO0nsNp5a5p677+hmolV wG2EsQgIR8dqQI79NKoJkuZnGWSax2x0zi/6jNBfO7rDvA7dgKHviBCviq7jVRv5pWnn Q2FdJ6MxMcywIxcm4leDqJFVKqKUe5S0aI8mNzuFjBNY/EQMPcfNRTVPjkQOpwXgD1cA yTjA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=OEovXGCNm1dRkVQxrMk5w8n5t04PfIIor442TRCqbKE=; b=GaMUPRijg86PHUuOrP403icWv9SZOPND7WexaLr8EcdbeRJF1e6esUD+21+F9slsgA GStRavoJMnBtg4EFU9ruvnOmiQhtii4b2ozvSEiVFR8QxpGJ7b6uLmXuwKxkwYHYW8Mw OpWI2TavmahHjjdRzoMlCl8iYSXl4CGJ8ERVxjbaUm9CcMs2GB/NgCuOLzbH2yXJKFmP GfPyB5mpG3V89TyyfLhQOW3aMCMRvExfZEhEm/UT9F0KMpMk3Der3m9kzgwXfc2Nk/jD Fqvs1GURhbBDj1R/LVgoZdykBVSBk3Z4fbL7DdKRbJ4ENttl03mbjyVUMvXQxhrT4v4K D4Dg== X-Gm-Message-State: APt69E2aK3R6WlaMNdSBhdjl3JpnRBKtoS0+mE1z2BP4dTCqmmPfdwjJ 9wFAKqrz+LNIir1Kb+apwoXUjD73zCmLliIygV4= X-Google-Smtp-Source: ADUXVKJRC6Oo0xPhc6xWQoKiHnioMOLEz3P4RiX2M0aYnME67bieqh8tsA43s4225OYaZPZl5kernsVwyeibkIW+wM8= X-Received: by 2002:a9d:759a:: with SMTP id s26-v6mr1229803otk.80.1528976781796; Thu, 14 Jun 2018 04:46:21 -0700 (PDT) MIME-Version: 1.0 Received: by 2002:ac9:14cd:0:0:0:0:0 with HTTP; Thu, 14 Jun 2018 04:46:20 -0700 (PDT) In-Reply-To: <20180614101324.GW2493@kib.kiev.ua> References: <20180614101324.GW2493@kib.kiev.ua> From: Yanko Yankulov Date: Thu, 14 Jun 2018 14:46:20 +0300 Message-ID: Subject: Re: two proposed linuxulator fixes + ptrace To: Konstantin Belousov Cc: freebsd-emulation@freebsd.org Content-Type: multipart/mixed; boundary="000000000000f362db056e98a598" X-Content-Filtered-By: Mailman/MimeDel 2.1.26 X-BeenThere: freebsd-emulation@freebsd.org X-Mailman-Version: 2.1.26 Precedence: list List-Id: Development of Emulators of other operating systems List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 14 Jun 2018 11:46:23 -0000 --000000000000f362db056e98a598 Content-Type: text/plain; charset="UTF-8" Hi Konstantin, For the ptrace patch, I suggest you to put it on https://reviews.freebsd.org > and set at least me (kib), jhb and dchagin as reviewers. I will handle it. > > Will do. Just have to figure out how it works. > For the patch 1, TracePid, can you explain what is the meaning of the > pid reported ? > > The TracerPid is the PID of the process currently ptrace-ing the process. TracerPid 0 means no active tracer. So the patch is not semantically correct as it always reports no tracer, but it got the program running. > For the patch 3, %r10 preservation for linux_rt_sigreturn, shouldn't the > same handling applied to non-rt signal return ? And in fact, shouldn't > it be done based on the return code instead of the syscall number ? Look > at the amd64/amd64/vm_machdep.c:cpu_set_syscall_retval(), where I think > EJUSTRETURN case is used by linux sigreturns. > The linux_rt_sigreturn seems to be the only signall return syscall. The no rt_ version seems to be an old pre Linux 2.2 interface. The return code observation sounds right. Thanks. New patch. Ran a quick check, the issue is still solved. --000000000000f362db056e98a598 Content-Type: text/x-patch; charset="US-ASCII"; name="0001-linuxlator-amd64-don-t-mangle-r10-on-sigreturn.patch" Content-Disposition: attachment; filename="0001-linuxlator-amd64-don-t-mangle-r10-on-sigreturn.patch" Content-Transfer-Encoding: base64 X-Attachment-Id: f_jiegb3jz0 RnJvbSA2NGU2NGRhYjQyNGE4NzkwNDg2MzI1Zjc3NjMxNzU3NWMyZjU5YTE3IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBZYW5rbyBZYW5rdWxvdiA8eWFua28ueWFua3Vsb3ZAZ21haWwu Y29tPgpEYXRlOiBUaHUsIDE0IEp1biAyMDE4IDExOjAyOjU2ICswMzAwClN1YmplY3Q6IFtQQVRD SF0gbGludXhsYXRvci9hbWQ2NDsgZG9uJ3QgbWFuZ2xlIHIxMCBvbiBzaWdyZXR1cm4KCi0tLQog c3lzL2FtZDY0L2xpbnV4L2xpbnV4X3N5c3ZlYy5jIHwgNSArKystLQogMSBmaWxlIGNoYW5nZWQs IDMgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zeXMvYW1kNjQv bGludXgvbGludXhfc3lzdmVjLmMgYi9zeXMvYW1kNjQvbGludXgvbGludXhfc3lzdmVjLmMKaW5k ZXggY2Q1YzhiZDM4MmRjLi4xMGViYmFiY2NjOTQgMTAwNjQ0Ci0tLSBhL3N5cy9hbWQ2NC9saW51 eC9saW51eF9zeXN2ZWMuYworKysgYi9zeXMvYW1kNjQvbGludXgvbGludXhfc3lzdmVjLmMKQEAg LTIyOCw4ICsyMjgsOSBAQCBsaW51eF9zZXRfc3lzY2FsbF9yZXR2YWwoc3RydWN0IHRocmVhZCAq dGQsIGludCBlcnJvcikKIAkgKiB0aGUgc3lzY2FsbC4gIFNvLCBkbyBub3QgY2xvYmJlciAlcmR4 IGFuZCAlcjEwLgogCSAqLwogCXRkLT50ZF9yZXR2YWxbMV0gPSBmcmFtZS0+dGZfcmR4OwotCWZy YW1lLT50Zl9yMTAgPSBmcmFtZS0+dGZfcmN4OwotCisJaWYoIGVycm9yICE9IEVKVVNUUkVUVVJO ICkKKwkJZnJhbWUtPnRmX3IxMCA9IGZyYW1lLT50Zl9yY3g7CisJCiAJY3B1X3NldF9zeXNjYWxs X3JldHZhbCh0ZCwgZXJyb3IpOwogCiAJIC8qIFJlc3RvcmUgYWxsIHJlZ2lzdGVycy4gKi8KLS0g CjIuMTcuMQoK --000000000000f362db056e98a598--