[{"id":1776503,"web_url":"http://patchwork.ozlabs.org/comment/1776503/","msgid":"<a64a96b3-436f-537f-a352-428d449bba01@linaro.org>","list_archive_url":null,"date":"2017-09-27T17:51:11","subject":"Re: [Qemu-devel] [PATCH RFC 2/3] s390x/tcg: low-address protection\n\tsupport","submitter":{"id":72104,"url":"http://patchwork.ozlabs.org/api/people/72104/","name":"Richard Henderson","email":"richard.henderson@linaro.org"},"content":"On 09/27/2017 10:00 AM, David Hildenbrand wrote:\n> +    case PSW_ASC_HOME:\n> +        return !(env->cregs[13] & _ASCE_PRIVATE_SPACE);\n> +    default:\n> +        /* We don't support access register mode */\n> +        error_report(\"unsupported addressing mode\");\n> +        exit(1);\n\nI think g_assert_not_reached() is sufficient for cases like this.\n\nOh, it's just code movement.  Nevermind, perhaps.\nModulo the outcome of discussion on patch 1,\n\nReviewed-by: Richard Henderson <richard.henderson@linaro.org>\n\n\nr~","headers":{"Return-Path":"<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>","X-Original-To":"incoming@patchwork.ozlabs.org","Delivered-To":"patchwork-incoming@bilbo.ozlabs.org","Authentication-Results":["ozlabs.org;\n\tspf=pass (mailfrom) smtp.mailfrom=nongnu.org\n\t(client-ip=2001:4830:134:3::11; helo=lists.gnu.org;\n\tenvelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org;\n\treceiver=<UNKNOWN>)","ozlabs.org;\n\tdkim=fail reason=\"signature verification failed\" (1024-bit key;\n\tunprotected) header.d=linaro.org header.i=@linaro.org\n\theader.b=\"byYA+4kf\"; dkim-atps=neutral"],"Received":["from lists.gnu.org (lists.gnu.org [IPv6:2001:4830:134:3::11])\n\t(using TLSv1 with cipher AES256-SHA (256/256 bits))\n\t(No client certificate requested)\n\tby ozlabs.org (Postfix) with ESMTPS id 3y2QPG17ZVz9tXd\n\tfor <incoming@patchwork.ozlabs.org>;\n\tThu, 28 Sep 2017 03:51:45 +1000 (AEST)","from localhost ([::1]:55794 helo=lists.gnu.org)\n\tby lists.gnu.org with esmtp (Exim 4.71) (envelope-from\n\t<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>)\n\tid 1dxGUm-0004Yu-4M\n\tfor incoming@patchwork.ozlabs.org; Wed, 27 Sep 2017 13:51:40 -0400","from eggs.gnu.org ([2001:4830:134:3::10]:44190)\n\tby lists.gnu.org with esmtp (Exim 4.71)\n\t(envelope-from <richard.henderson@linaro.org>) id 1dxGUR-0004Ye-2g\n\tfor qemu-devel@nongnu.org; Wed, 27 Sep 2017 13:51:19 -0400","from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)\n\t(envelope-from <richard.henderson@linaro.org>) id 1dxGUN-0005nA-Vk\n\tfor qemu-devel@nongnu.org; Wed, 27 Sep 2017 13:51:19 -0400","from mail-pf0-x22c.google.com ([2607:f8b0:400e:c00::22c]:52789)\n\tby eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16)\n\t(Exim 4.71) (envelope-from <richard.henderson@linaro.org>)\n\tid 1dxGUN-0005lZ-Pq\n\tfor qemu-devel@nongnu.org; Wed, 27 Sep 2017 13:51:15 -0400","by mail-pf0-x22c.google.com with SMTP id p87so7611273pfj.9\n\tfor <qemu-devel@nongnu.org>; Wed, 27 Sep 2017 10:51:15 -0700 (PDT)","from bigtime.twiddle.net ([70.35.39.2])\n\tby smtp.gmail.com with ESMTPSA id\n\td13sm6232538pgn.53.2017.09.27.10.51.13\n\t(version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);\n\tWed, 27 Sep 2017 10:51:13 -0700 (PDT)"],"DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google;\n\th=subject:to:cc:references:from:message-id:date:user-agent\n\t:mime-version:in-reply-to:content-language:content-transfer-encoding; \n\tbh=JzGmUMjKsvYRRz1femr5f8d7jD6MqFVrbji2cVFeED8=;\n\tb=byYA+4kfbC9rkC2TjynTNRa+3+3nugjG4JBSZ7S1UlkZgxWfz9SDod1f/kifhwa5xB\n\ty6FXZGUOvyKVljJO9do54gLWGy29xUK63cw/GqemgdI4V2hxDbNtjDQv+mfR4408hkAG\n\t5WSzk9Vou4JUR873d1wp6Wty0klnfqml/Ob04=","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20161025;\n\th=x-gm-message-state:subject:to:cc:references:from:message-id:date\n\t:user-agent:mime-version:in-reply-to:content-language\n\t:content-transfer-encoding;\n\tbh=JzGmUMjKsvYRRz1femr5f8d7jD6MqFVrbji2cVFeED8=;\n\tb=YecgARy+lcjL82F9FSUqIQGT5v7c6ddv7XhUhf+y3ljOjeHkhAbPxWuNJZJpVGoMxZ\n\tW49daSnpBB19ylDKpqp+StueH+Qebd/VFcBAC3Hv/cW0sEaMXV7agPFDRyWWxFbxjg6I\n\tPg42BbQ92mBiHxGE/2wpCwQhQ51tgeW8BgK1teHPG/bH9BiNa4iVt/gEhedSmeCaBcIg\n\tvfju/oOzY29G4ia6amP2TpGtrdVGoRkrMwv/FcxBaxD1uJOYYV1QVgjk7WhQAOqqR1/w\n\t2BWPIoWe6sKOzHJMr+MT29S2e1d2f4i/gZpy6RVDJ/V/OkomWtOfEkFzJPQE9D1Sz9Ay\n\ty8Og==","X-Gm-Message-State":"AHPjjUis2Dpxg5N5XkOQ8yH8SJqhWYYH8SfNU10b2LwZegOOwBNHoMo+\n\tS9nExZW+qTiRWi/+is6u4/e3ng==","X-Google-Smtp-Source":"AOwi7QAAcuz8uQlkK95wZRormZ/fZOh31eI+tXCOL9hUcQf4qarlCwxGK5ymhV75/5i6UWIneD6n4g==","X-Received":"by 10.101.66.70 with SMTP id d6mr1945474pgq.169.1506534674813;\n\tWed, 27 Sep 2017 10:51:14 -0700 (PDT)","To":"David Hildenbrand <david@redhat.com>, qemu-devel@nongnu.org","References":"<20170927170027.8539-1-david@redhat.com>\n\t<20170927170027.8539-3-david@redhat.com>","From":"Richard Henderson <richard.henderson@linaro.org>","Message-ID":"<a64a96b3-436f-537f-a352-428d449bba01@linaro.org>","Date":"Wed, 27 Sep 2017 10:51:11 -0700","User-Agent":"Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101\n\tThunderbird/52.3.0","MIME-Version":"1.0","In-Reply-To":"<20170927170027.8539-3-david@redhat.com>","Content-Type":"text/plain; charset=utf-8","Content-Language":"en-US","Content-Transfer-Encoding":"7bit","X-detected-operating-system":"by eggs.gnu.org: Genre and OS details not\n\trecognized.","X-Received-From":"2607:f8b0:400e:c00::22c","Subject":"Re: [Qemu-devel] [PATCH RFC 2/3] s390x/tcg: low-address protection\n\tsupport","X-BeenThere":"qemu-devel@nongnu.org","X-Mailman-Version":"2.1.21","Precedence":"list","List-Id":"<qemu-devel.nongnu.org>","List-Unsubscribe":"<https://lists.nongnu.org/mailman/options/qemu-devel>,\n\t<mailto:qemu-devel-request@nongnu.org?subject=unsubscribe>","List-Archive":"<http://lists.nongnu.org/archive/html/qemu-devel/>","List-Post":"<mailto:qemu-devel@nongnu.org>","List-Help":"<mailto:qemu-devel-request@nongnu.org?subject=help>","List-Subscribe":"<https://lists.nongnu.org/mailman/listinfo/qemu-devel>,\n\t<mailto:qemu-devel-request@nongnu.org?subject=subscribe>","Cc":"Christian Borntraeger <borntraeger@de.ibm.com>, thuth@redhat.com,\n\tcohuck@redhat.com, Alexander Graf <agraf@suse.de>","Errors-To":"qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org","Sender":"\"Qemu-devel\"\n\t<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>"}},{"id":1776761,"web_url":"http://patchwork.ozlabs.org/comment/1776761/","msgid":"<466fa6a0-ac91-66aa-aabb-a15a8ac62e0f@redhat.com>","list_archive_url":null,"date":"2017-09-28T04:50:39","subject":"Re: [Qemu-devel] [PATCH RFC 2/3] s390x/tcg: low-address protection\n\tsupport","submitter":{"id":66152,"url":"http://patchwork.ozlabs.org/api/people/66152/","name":"Thomas Huth","email":"thuth@redhat.com"},"content":"On 27.09.2017 19:00, David Hildenbrand wrote:\n> This is a neat way to implement low address protection, whereby\n> only the first 512 bytes of the first two pages (each 4096 bytes) of\n> every address space are protected.\n> \n> Store a tec of 0 for the access exception, this is what is defined by\n> Enhanced Suppression on Protection in case of a low address protection\n> (Bit 61 set to 0, rest undefined).\n> \n> We have to make sure to to pass the access address, not the masked page\n> address into mmu_translate*().\n> \n> Drop the check from testblock. So we can properly test this via\n> kvm-unit-tests.\n> \n> This will check every access going through one of the MMUs.\n> \n> Signed-off-by: David Hildenbrand <david@redhat.com>\n> ---\n>  target/s390x/excp_helper.c |  3 +-\n>  target/s390x/mem_helper.c  |  8 ----\n>  target/s390x/mmu_helper.c  | 96 +++++++++++++++++++++++++++++-----------------\n>  3 files changed, 62 insertions(+), 45 deletions(-)\n[...]\n> diff --git a/target/s390x/mmu_helper.c b/target/s390x/mmu_helper.c\n> index 9daa0fd8e2..44a15449d2 100644\n> --- a/target/s390x/mmu_helper.c\n> +++ b/target/s390x/mmu_helper.c\n> @@ -106,6 +106,37 @@ static void trigger_page_fault(CPUS390XState *env, target_ulong vaddr,\n>      trigger_access_exception(env, type, ilen, tec);\n>  }\n>  \n> +/* check whether the address would be proteted by Low-Address Protection */\n> +static bool is_low_address(uint64_t addr)\n> +{\n> +    return addr < 512 || (addr >= 4096 && addr < 4607);\n> +}\n\nI like the check from the kernel sources better:\n\nstatic inline int is_low_address(unsigned long ga)\n{\n    /* Check for address ranges 0..511 and 4096..4607 */\n    return (ga & ~0x11fful) == 0;\n}\n\n... that might result in slightly faster code (depending on the\ncompiler, of course).\n\n Thomas","headers":{"Return-Path":"<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>","X-Original-To":"incoming@patchwork.ozlabs.org","Delivered-To":"patchwork-incoming@bilbo.ozlabs.org","Authentication-Results":["ozlabs.org;\n\tspf=pass (mailfrom) smtp.mailfrom=nongnu.org\n\t(client-ip=2001:4830:134:3::11; helo=lists.gnu.org;\n\tenvelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org;\n\treceiver=<UNKNOWN>)","ext-mx08.extmail.prod.ext.phx2.redhat.com;\n\tdmarc=none (p=none dis=none) header.from=redhat.com","ext-mx08.extmail.prod.ext.phx2.redhat.com;\n\tspf=fail smtp.mailfrom=thuth@redhat.com"],"Received":["from lists.gnu.org (lists.gnu.org [IPv6:2001:4830:134:3::11])\n\t(using TLSv1 with cipher AES256-SHA (256/256 bits))\n\t(No client certificate requested)\n\tby ozlabs.org (Postfix) with ESMTPS id 3y2j2M3Byzz9sNc\n\tfor <incoming@patchwork.ozlabs.org>;\n\tThu, 28 Sep 2017 14:51:18 +1000 (AEST)","from localhost ([::1]:57375 helo=lists.gnu.org)\n\tby lists.gnu.org with esmtp (Exim 4.71) (envelope-from\n\t<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>)\n\tid 1dxQn1-0001Uu-TW\n\tfor incoming@patchwork.ozlabs.org; Thu, 28 Sep 2017 00:51:11 -0400","from eggs.gnu.org ([2001:4830:134:3::10]:59366)\n\tby lists.gnu.org with esmtp (Exim 4.71)\n\t(envelope-from <thuth@redhat.com>) id 1dxQmg-0001Uo-Ag\n\tfor qemu-devel@nongnu.org; Thu, 28 Sep 2017 00:50:51 -0400","from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)\n\t(envelope-from <thuth@redhat.com>) id 1dxQmc-0003Fa-DZ\n\tfor qemu-devel@nongnu.org; Thu, 28 Sep 2017 00:50:50 -0400","from mx1.redhat.com ([209.132.183.28]:49464)\n\tby eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32)\n\t(Exim 4.71) (envelope-from <thuth@redhat.com>) id 1dxQmc-0003FQ-7K\n\tfor qemu-devel@nongnu.org; Thu, 28 Sep 2017 00:50:46 -0400","from smtp.corp.redhat.com\n\t(int-mx05.intmail.prod.int.phx2.redhat.com [10.5.11.15])\n\t(using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits))\n\t(No client certificate requested)\n\tby mx1.redhat.com (Postfix) with ESMTPS id C8F07C04E529;\n\tThu, 28 Sep 2017 04:50:44 +0000 (UTC)","from [10.36.116.86] (ovpn-116-86.ams2.redhat.com [10.36.116.86])\n\tby smtp.corp.redhat.com (Postfix) with ESMTPS id C43B463BCE;\n\tThu, 28 Sep 2017 04:50:40 +0000 (UTC)"],"DMARC-Filter":"OpenDMARC Filter v1.3.2 mx1.redhat.com C8F07C04E529","To":"David Hildenbrand <david@redhat.com>, qemu-devel@nongnu.org","References":"<20170927170027.8539-1-david@redhat.com>\n\t<20170927170027.8539-3-david@redhat.com>","From":"Thomas Huth <thuth@redhat.com>","Message-ID":"<466fa6a0-ac91-66aa-aabb-a15a8ac62e0f@redhat.com>","Date":"Thu, 28 Sep 2017 06:50:39 +0200","User-Agent":"Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101\n\tThunderbird/52.3.0","MIME-Version":"1.0","In-Reply-To":"<20170927170027.8539-3-david@redhat.com>","Content-Type":"text/plain; charset=utf-8","Content-Language":"en-US","Content-Transfer-Encoding":"7bit","X-Scanned-By":"MIMEDefang 2.79 on 10.5.11.15","X-Greylist":"Sender IP whitelisted, not delayed by milter-greylist-4.5.16\n\t(mx1.redhat.com [10.5.110.32]);\n\tThu, 28 Sep 2017 04:50:45 +0000 (UTC)","X-detected-operating-system":"by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic]\n\t[fuzzy]","X-Received-From":"209.132.183.28","Subject":"Re: [Qemu-devel] [PATCH RFC 2/3] s390x/tcg: low-address protection\n\tsupport","X-BeenThere":"qemu-devel@nongnu.org","X-Mailman-Version":"2.1.21","Precedence":"list","List-Id":"<qemu-devel.nongnu.org>","List-Unsubscribe":"<https://lists.nongnu.org/mailman/options/qemu-devel>,\n\t<mailto:qemu-devel-request@nongnu.org?subject=unsubscribe>","List-Archive":"<http://lists.nongnu.org/archive/html/qemu-devel/>","List-Post":"<mailto:qemu-devel@nongnu.org>","List-Help":"<mailto:qemu-devel-request@nongnu.org?subject=help>","List-Subscribe":"<https://lists.nongnu.org/mailman/listinfo/qemu-devel>,\n\t<mailto:qemu-devel-request@nongnu.org?subject=subscribe>","Cc":"Christian Borntraeger <borntraeger@de.ibm.com>, cohuck@redhat.com,\n\tRichard Henderson <richard.henderson@linaro.org>,\n\tAlexander Graf <agraf@suse.de>","Errors-To":"qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org","Sender":"\"Qemu-devel\"\n\t<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>"}},{"id":1777020,"web_url":"http://patchwork.ozlabs.org/comment/1777020/","msgid":"<3d5ea6d8-b3bf-b1a5-b4a1-082ff49ae842@redhat.com>","list_archive_url":null,"date":"2017-09-28T13:08:11","subject":"Re: [Qemu-devel] [PATCH RFC 2/3] s390x/tcg: low-address protection\n\tsupport","submitter":{"id":70402,"url":"http://patchwork.ozlabs.org/api/people/70402/","name":"David Hildenbrand","email":"david@redhat.com"},"content":"On 28.09.2017 06:50, Thomas Huth wrote:\n> On 27.09.2017 19:00, David Hildenbrand wrote:\n>> This is a neat way to implement low address protection, whereby\n>> only the first 512 bytes of the first two pages (each 4096 bytes) of\n>> every address space are protected.\n>>\n>> Store a tec of 0 for the access exception, this is what is defined by\n>> Enhanced Suppression on Protection in case of a low address protection\n>> (Bit 61 set to 0, rest undefined).\n>>\n>> We have to make sure to to pass the access address, not the masked page\n>> address into mmu_translate*().\n>>\n>> Drop the check from testblock. So we can properly test this via\n>> kvm-unit-tests.\n>>\n>> This will check every access going through one of the MMUs.\n>>\n>> Signed-off-by: David Hildenbrand <david@redhat.com>\n>> ---\n>>  target/s390x/excp_helper.c |  3 +-\n>>  target/s390x/mem_helper.c  |  8 ----\n>>  target/s390x/mmu_helper.c  | 96 +++++++++++++++++++++++++++++-----------------\n>>  3 files changed, 62 insertions(+), 45 deletions(-)\n> [...]\n>> diff --git a/target/s390x/mmu_helper.c b/target/s390x/mmu_helper.c\n>> index 9daa0fd8e2..44a15449d2 100644\n>> --- a/target/s390x/mmu_helper.c\n>> +++ b/target/s390x/mmu_helper.c\n>> @@ -106,6 +106,37 @@ static void trigger_page_fault(CPUS390XState *env, target_ulong vaddr,\n>>      trigger_access_exception(env, type, ilen, tec);\n>>  }\n>>  \n>> +/* check whether the address would be proteted by Low-Address Protection */\n>> +static bool is_low_address(uint64_t addr)\n>> +{\n>> +    return addr < 512 || (addr >= 4096 && addr < 4607);\n>> +}\n> \n> I like the check from the kernel sources better:\n> \n> static inline int is_low_address(unsigned long ga)\n> {\n>     /* Check for address ranges 0..511 and 4096..4607 */\n>     return (ga & ~0x11fful) == 0;\n> }\n> \n> ... that might result in slightly faster code (depending on the\n> compiler, of course).\n\nI think that lim (readability) -> 0. Without that comment you're at\nfirst sight really clueless what this is about.\n\nMy check exactly corresponds to the wording in the PoP (and smart\ncompilers should be able to optimize).\n\nBut I don't have a strong opinion on this micro optimization.\n\nThanks\n\n> \n>  Thomas\n>","headers":{"Return-Path":"<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>","X-Original-To":"incoming@patchwork.ozlabs.org","Delivered-To":"patchwork-incoming@bilbo.ozlabs.org","Authentication-Results":["ozlabs.org;\n\tspf=pass (mailfrom) smtp.mailfrom=nongnu.org\n\t(client-ip=2001:4830:134:3::11; helo=lists.gnu.org;\n\tenvelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org;\n\treceiver=<UNKNOWN>)","ext-mx07.extmail.prod.ext.phx2.redhat.com;\n\tdmarc=none (p=none dis=none) header.from=redhat.com","ext-mx07.extmail.prod.ext.phx2.redhat.com;\n\tspf=fail smtp.mailfrom=david@redhat.com"],"Received":["from lists.gnu.org (lists.gnu.org [IPv6:2001:4830:134:3::11])\n\t(using TLSv1 with cipher AES256-SHA (256/256 bits))\n\t(No client certificate requested)\n\tby ozlabs.org (Postfix) with ESMTPS id 3y2w4R5Pknz9t5Y\n\tfor <incoming@patchwork.ozlabs.org>;\n\tThu, 28 Sep 2017 23:08:55 +1000 (AEST)","from localhost ([::1]:59204 helo=lists.gnu.org)\n\tby lists.gnu.org with esmtp (Exim 4.71) (envelope-from\n\t<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>)\n\tid 1dxYYf-00059T-St\n\tfor incoming@patchwork.ozlabs.org; Thu, 28 Sep 2017 09:08:53 -0400","from eggs.gnu.org ([2001:4830:134:3::10]:59839)\n\tby lists.gnu.org with esmtp (Exim 4.71)\n\t(envelope-from <david@redhat.com>) id 1dxYYB-00052P-Fi\n\tfor qemu-devel@nongnu.org; Thu, 28 Sep 2017 09:08:33 -0400","from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)\n\t(envelope-from <david@redhat.com>) id 1dxYY3-0000pk-TA\n\tfor qemu-devel@nongnu.org; Thu, 28 Sep 2017 09:08:20 -0400","from mx1.redhat.com ([209.132.183.28]:54600)\n\tby eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32)\n\t(Exim 4.71) (envelope-from <david@redhat.com>) id 1dxYY3-0000pL-Ij\n\tfor qemu-devel@nongnu.org; Thu, 28 Sep 2017 09:08:15 -0400","from smtp.corp.redhat.com\n\t(int-mx05.intmail.prod.int.phx2.redhat.com [10.5.11.15])\n\t(using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits))\n\t(No client certificate requested)\n\tby mx1.redhat.com (Postfix) with ESMTPS id A21ABC1217C8;\n\tThu, 28 Sep 2017 13:08:14 +0000 (UTC)","from [10.36.117.191] (ovpn-117-191.ams2.redhat.com [10.36.117.191])\n\tby smtp.corp.redhat.com (Postfix) with ESMTP id D76A57E68B;\n\tThu, 28 Sep 2017 13:08:12 +0000 (UTC)"],"DMARC-Filter":"OpenDMARC Filter v1.3.2 mx1.redhat.com A21ABC1217C8","To":"Thomas Huth <thuth@redhat.com>, qemu-devel@nongnu.org","References":"<20170927170027.8539-1-david@redhat.com>\n\t<20170927170027.8539-3-david@redhat.com>\n\t<466fa6a0-ac91-66aa-aabb-a15a8ac62e0f@redhat.com>","From":"David Hildenbrand <david@redhat.com>","Organization":"Red Hat GmbH","Message-ID":"<3d5ea6d8-b3bf-b1a5-b4a1-082ff49ae842@redhat.com>","Date":"Thu, 28 Sep 2017 15:08:11 +0200","User-Agent":"Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101\n\tThunderbird/52.3.0","MIME-Version":"1.0","In-Reply-To":"<466fa6a0-ac91-66aa-aabb-a15a8ac62e0f@redhat.com>","Content-Type":"text/plain; charset=utf-8","Content-Language":"en-US","Content-Transfer-Encoding":"7bit","X-Scanned-By":"MIMEDefang 2.79 on 10.5.11.15","X-Greylist":"Sender IP whitelisted, not delayed by milter-greylist-4.5.16\n\t(mx1.redhat.com [10.5.110.31]);\n\tThu, 28 Sep 2017 13:08:14 +0000 (UTC)","X-detected-operating-system":"by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic]\n\t[fuzzy]","X-Received-From":"209.132.183.28","Subject":"Re: [Qemu-devel] [PATCH RFC 2/3] s390x/tcg: low-address protection\n\tsupport","X-BeenThere":"qemu-devel@nongnu.org","X-Mailman-Version":"2.1.21","Precedence":"list","List-Id":"<qemu-devel.nongnu.org>","List-Unsubscribe":"<https://lists.nongnu.org/mailman/options/qemu-devel>,\n\t<mailto:qemu-devel-request@nongnu.org?subject=unsubscribe>","List-Archive":"<http://lists.nongnu.org/archive/html/qemu-devel/>","List-Post":"<mailto:qemu-devel@nongnu.org>","List-Help":"<mailto:qemu-devel-request@nongnu.org?subject=help>","List-Subscribe":"<https://lists.nongnu.org/mailman/listinfo/qemu-devel>,\n\t<mailto:qemu-devel-request@nongnu.org?subject=subscribe>","Cc":"Christian Borntraeger <borntraeger@de.ibm.com>, cohuck@redhat.com,\n\tRichard Henderson <richard.henderson@linaro.org>,\n\tAlexander Graf <agraf@suse.de>","Errors-To":"qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org","Sender":"\"Qemu-devel\"\n\t<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>"}},{"id":1785217,"web_url":"http://patchwork.ozlabs.org/comment/1785217/","msgid":"<469b7729-0e9a-1c20-6a68-b3b8e55bafb4@redhat.com>","list_archive_url":null,"date":"2017-10-12T08:41:33","subject":"Re: [Qemu-devel] [PATCH RFC 2/3] s390x/tcg: low-address protection\n\tsupport","submitter":{"id":66152,"url":"http://patchwork.ozlabs.org/api/people/66152/","name":"Thomas Huth","email":"thuth@redhat.com"},"content":"On 29.09.2017 13:27, Cornelia Huck wrote:\n> On Thu, 28 Sep 2017 15:08:11 +0200\n> David Hildenbrand <david@redhat.com> wrote:\n> \n>> On 28.09.2017 06:50, Thomas Huth wrote:\n>>> On 27.09.2017 19:00, David Hildenbrand wrote:  \n>>>> This is a neat way to implement low address protection, whereby\n>>>> only the first 512 bytes of the first two pages (each 4096 bytes) of\n>>>> every address space are protected.\n>>>>\n>>>> Store a tec of 0 for the access exception, this is what is defined by\n>>>> Enhanced Suppression on Protection in case of a low address protection\n>>>> (Bit 61 set to 0, rest undefined).\n>>>>\n>>>> We have to make sure to to pass the access address, not the masked page\n>>>> address into mmu_translate*().\n>>>>\n>>>> Drop the check from testblock. So we can properly test this via\n>>>> kvm-unit-tests.\n>>>>\n>>>> This will check every access going through one of the MMUs.\n>>>>\n>>>> Signed-off-by: David Hildenbrand <david@redhat.com>\n>>>> ---\n>>>>  target/s390x/excp_helper.c |  3 +-\n>>>>  target/s390x/mem_helper.c  |  8 ----\n>>>>  target/s390x/mmu_helper.c  | 96 +++++++++++++++++++++++++++++-----------------\n>>>>  3 files changed, 62 insertions(+), 45 deletions(-)  \n>>> [...]  \n>>>> diff --git a/target/s390x/mmu_helper.c b/target/s390x/mmu_helper.c\n>>>> index 9daa0fd8e2..44a15449d2 100644\n>>>> --- a/target/s390x/mmu_helper.c\n>>>> +++ b/target/s390x/mmu_helper.c\n>>>> @@ -106,6 +106,37 @@ static void trigger_page_fault(CPUS390XState *env, target_ulong vaddr,\n>>>>      trigger_access_exception(env, type, ilen, tec);\n>>>>  }\n>>>>  \n>>>> +/* check whether the address would be proteted by Low-Address Protection */\n>>>> +static bool is_low_address(uint64_t addr)\n>>>> +{\n>>>> +    return addr < 512 || (addr >= 4096 && addr < 4607);\n>>>> +}  \n>>>\n>>> I like the check from the kernel sources better:\n>>>\n>>> static inline int is_low_address(unsigned long ga)\n>>> {\n>>>     /* Check for address ranges 0..511 and 4096..4607 */\n>>>     return (ga & ~0x11fful) == 0;\n>>> }\n>>>\n>>> ... that might result in slightly faster code (depending on the\n>>> compiler, of course).  \n>>\n>> I think that lim (readability) -> 0. Without that comment you're at\n>> first sight really clueless what this is about.\n>>\n>> My check exactly corresponds to the wording in the PoP (and smart\n>> compilers should be able to optimize).\n>>\n>> But I don't have a strong opinion on this micro optimization.\n> \n> FWIW, I'd be happy with both, but has anyone actually looked at the\n> generated code?\n\nThis is what I get for David's original code:\n\n    80000510:   c4 18 00 00 0d a4       lgrl    %r1,80002058 <x1>\n    80000516:   a7 29 01 ff             lghi    %r2,511\n    8000051a:   ec 12 00 4f c0 65       clgrjnh %r1,%r2,800005b8 <main+0xd8>\n    80000520:   a7 1b f0 00             aghi    %r1,-4096\n    80000524:   c2 1e 00 00 01 fe       clgfi   %r1,510\n    8000052a:   a7 18 00 00             lhi     %r1,0\n    8000052e:   b9 99 00 11             slbr    %r1,%r1\n    80000532:   13 11                   lcr     %r1,%r1\n    80000534:   c4 1f 00 00 0d 96       strl    %r1,80002060 <b1>\n\nAnd this is the optimized kernel version:\n\n    8000054a:   c4 18 00 00 0d 7f       lgrl    %r1,80002048 <x2>\n    80000550:   a5 17 ee 00             nill    %r1,60928\n    80000554:   b9 00 00 11             lpgr    %r1,%r1\n    80000558:   a7 1b ff ff             aghi    %r1,-1\n    8000055c:   eb 11 00 3f 00 0c       srlg    %r1,%r1,63\n    80000562:   c4 1f 00 00 0d 77       strl    %r1,80002050 <b2>\n\nSo that's indeed a little bit better :-)\n(I was using GCC 4.8.5 from RHEL7, with -O2)\n\nBy the way, I think there's a bug in David's code: It should either be\n\"addr <= 4607\" or \"addr < 4608\" instead of \"addr < 4607\".\n\nWith that bug fixed, David's version get's optimized even more:\n\n    80000510:   c4 18 00 00 0d a4       lgrl    %r1,80002058 <x1>\n    80000516:   a5 17 ef ff             nill    %r1,61439\n    8000051a:   c2 1e 00 00 01 ff       clgfi   %r1,511\n    80000520:   a7 18 00 00             lhi     %r1,0\n    80000524:   b9 99 00 11             slbr    %r1,%r1\n    80000528:   13 11                   lcr     %r1,%r1\n    8000052a:   c4 1f 00 00 0d 9b       strl    %r1,80002060 <b1>\n\n... so the difference is really very minimal in that case --> We could\nreally use the more readable version, I think.\n\n Thomas","headers":{"Return-Path":"<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>","X-Original-To":"incoming@patchwork.ozlabs.org","Delivered-To":"patchwork-incoming@bilbo.ozlabs.org","Authentication-Results":["ozlabs.org;\n\tspf=pass (mailfrom) smtp.mailfrom=nongnu.org\n\t(client-ip=2001:4830:134:3::11; helo=lists.gnu.org;\n\tenvelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org;\n\treceiver=<UNKNOWN>)","ext-mx01.extmail.prod.ext.phx2.redhat.com;\n\tdmarc=none (p=none dis=none) header.from=redhat.com","ext-mx01.extmail.prod.ext.phx2.redhat.com;\n\tspf=fail smtp.mailfrom=thuth@redhat.com"],"Received":["from lists.gnu.org (lists.gnu.org [IPv6:2001:4830:134:3::11])\n\t(using TLSv1 with cipher AES256-SHA (256/256 bits))\n\t(No client certificate requested)\n\tby ozlabs.org (Postfix) with ESMTPS id 3yCPVJ0gHyz9t2d\n\tfor <incoming@patchwork.ozlabs.org>;\n\tThu, 12 Oct 2017 19:42:14 +1100 (AEDT)","from localhost ([::1]:44320 helo=lists.gnu.org)\n\tby lists.gnu.org with esmtp (Exim 4.71) (envelope-from\n\t<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>)\n\tid 1e2Z4E-0001re-0w\n\tfor incoming@patchwork.ozlabs.org; Thu, 12 Oct 2017 04:42:10 -0400","from eggs.gnu.org ([2001:4830:134:3::10]:34443)\n\tby lists.gnu.org with esmtp (Exim 4.71)\n\t(envelope-from <thuth@redhat.com>) id 1e2Z3r-0001r9-4p\n\tfor qemu-devel@nongnu.org; Thu, 12 Oct 2017 04:41:51 -0400","from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)\n\t(envelope-from <thuth@redhat.com>) id 1e2Z3n-00035g-P2\n\tfor qemu-devel@nongnu.org; Thu, 12 Oct 2017 04:41:47 -0400","from mx1.redhat.com ([209.132.183.28]:36860)\n\tby eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32)\n\t(Exim 4.71) (envelope-from <thuth@redhat.com>)\n\tid 1e2Z3n-00035D-Gf; Thu, 12 Oct 2017 04:41:43 -0400","from smtp.corp.redhat.com\n\t(int-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.12])\n\t(using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits))\n\t(No client certificate requested)\n\tby mx1.redhat.com (Postfix) with ESMTPS id 446547F3F2;\n\tThu, 12 Oct 2017 08:41:42 +0000 (UTC)","from [10.33.192.189] (dhcp-192-189.str.redhat.com [10.33.192.189])\n\tby smtp.corp.redhat.com (Postfix) with ESMTPS id 0F8CB6957D;\n\tThu, 12 Oct 2017 08:41:34 +0000 (UTC)"],"DMARC-Filter":"OpenDMARC Filter v1.3.2 mx1.redhat.com 446547F3F2","To":"Cornelia Huck <cohuck@redhat.com>, David Hildenbrand <david@redhat.com>","References":"<20170927170027.8539-1-david@redhat.com>\n\t<20170927170027.8539-3-david@redhat.com>\n\t<466fa6a0-ac91-66aa-aabb-a15a8ac62e0f@redhat.com>\n\t<3d5ea6d8-b3bf-b1a5-b4a1-082ff49ae842@redhat.com>\n\t<20170929132717.23ecf350.cohuck@redhat.com>","From":"Thomas Huth <thuth@redhat.com>","Message-ID":"<469b7729-0e9a-1c20-6a68-b3b8e55bafb4@redhat.com>","Date":"Thu, 12 Oct 2017 10:41:33 +0200","User-Agent":"Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101\n\tThunderbird/52.3.0","MIME-Version":"1.0","In-Reply-To":"<20170929132717.23ecf350.cohuck@redhat.com>","Content-Type":"text/plain; charset=utf-8","Content-Language":"en-US","X-Scanned-By":"MIMEDefang 2.79 on 10.5.11.12","X-Greylist":"Sender IP whitelisted, not delayed by milter-greylist-4.5.16\n\t(mx1.redhat.com [10.5.110.25]);\n\tThu, 12 Oct 2017 08:41:42 +0000 (UTC)","Content-Transfer-Encoding":"quoted-printable","X-detected-operating-system":"by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic]\n\t[fuzzy]","X-Received-From":"209.132.183.28","Subject":"Re: [Qemu-devel] [PATCH RFC 2/3] s390x/tcg: low-address protection\n\tsupport","X-BeenThere":"qemu-devel@nongnu.org","X-Mailman-Version":"2.1.21","Precedence":"list","List-Id":"<qemu-devel.nongnu.org>","List-Unsubscribe":"<https://lists.nongnu.org/mailman/options/qemu-devel>,\n\t<mailto:qemu-devel-request@nongnu.org?subject=unsubscribe>","List-Archive":"<http://lists.nongnu.org/archive/html/qemu-devel/>","List-Post":"<mailto:qemu-devel@nongnu.org>","List-Help":"<mailto:qemu-devel-request@nongnu.org?subject=help>","List-Subscribe":"<https://lists.nongnu.org/mailman/listinfo/qemu-devel>,\n\t<mailto:qemu-devel-request@nongnu.org?subject=subscribe>","Cc":"Christian Borntraeger <borntraeger@de.ibm.com>, qemu-s390x@nongnu.org,\n\tRichard Henderson <richard.henderson@linaro.org>,\n\tqemu-devel@nongnu.org, Alexander Graf <agraf@suse.de>","Errors-To":"qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org","Sender":"\"Qemu-devel\"\n\t<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>"}},{"id":1787187,"web_url":"http://patchwork.ozlabs.org/comment/1787187/","msgid":"<fdd66d43-6517-69b5-7f5a-9fa0b658ce4b@redhat.com>","list_archive_url":null,"date":"2017-10-16T07:20:54","subject":"Re: [Qemu-devel] [PATCH RFC 2/3] s390x/tcg: low-address protection\n\tsupport","submitter":{"id":70402,"url":"http://patchwork.ozlabs.org/api/people/70402/","name":"David Hildenbrand","email":"david@redhat.com"},"content":"On 12.10.2017 10:41, Thomas Huth wrote:\n> On 29.09.2017 13:27, Cornelia Huck wrote:\n>> On Thu, 28 Sep 2017 15:08:11 +0200\n>> David Hildenbrand <david@redhat.com> wrote:\n>>\n>>> On 28.09.2017 06:50, Thomas Huth wrote:\n>>>> On 27.09.2017 19:00, David Hildenbrand wrote:  \n>>>>> This is a neat way to implement low address protection, whereby\n>>>>> only the first 512 bytes of the first two pages (each 4096 bytes) of\n>>>>> every address space are protected.\n>>>>>\n>>>>> Store a tec of 0 for the access exception, this is what is defined by\n>>>>> Enhanced Suppression on Protection in case of a low address protection\n>>>>> (Bit 61 set to 0, rest undefined).\n>>>>>\n>>>>> We have to make sure to to pass the access address, not the masked page\n>>>>> address into mmu_translate*().\n>>>>>\n>>>>> Drop the check from testblock. So we can properly test this via\n>>>>> kvm-unit-tests.\n>>>>>\n>>>>> This will check every access going through one of the MMUs.\n>>>>>\n>>>>> Signed-off-by: David Hildenbrand <david@redhat.com>\n>>>>> ---\n>>>>>  target/s390x/excp_helper.c |  3 +-\n>>>>>  target/s390x/mem_helper.c  |  8 ----\n>>>>>  target/s390x/mmu_helper.c  | 96 +++++++++++++++++++++++++++++-----------------\n>>>>>  3 files changed, 62 insertions(+), 45 deletions(-)  \n>>>> [...]  \n>>>>> diff --git a/target/s390x/mmu_helper.c b/target/s390x/mmu_helper.c\n>>>>> index 9daa0fd8e2..44a15449d2 100644\n>>>>> --- a/target/s390x/mmu_helper.c\n>>>>> +++ b/target/s390x/mmu_helper.c\n>>>>> @@ -106,6 +106,37 @@ static void trigger_page_fault(CPUS390XState *env, target_ulong vaddr,\n>>>>>      trigger_access_exception(env, type, ilen, tec);\n>>>>>  }\n>>>>>  \n>>>>> +/* check whether the address would be proteted by Low-Address Protection */\n>>>>> +static bool is_low_address(uint64_t addr)\n>>>>> +{\n>>>>> +    return addr < 512 || (addr >= 4096 && addr < 4607);\n>>>>> +}  \n>>>>\n>>>> I like the check from the kernel sources better:\n>>>>\n>>>> static inline int is_low_address(unsigned long ga)\n>>>> {\n>>>>     /* Check for address ranges 0..511 and 4096..4607 */\n>>>>     return (ga & ~0x11fful) == 0;\n>>>> }\n>>>>\n>>>> ... that might result in slightly faster code (depending on the\n>>>> compiler, of course).  \n>>>\n>>> I think that lim (readability) -> 0. Without that comment you're at\n>>> first sight really clueless what this is about.\n>>>\n>>> My check exactly corresponds to the wording in the PoP (and smart\n>>> compilers should be able to optimize).\n>>>\n>>> But I don't have a strong opinion on this micro optimization.\n>>\n>> FWIW, I'd be happy with both, but has anyone actually looked at the\n>> generated code?\n> \n> This is what I get for David's original code:\n> \n>     80000510:   c4 18 00 00 0d a4       lgrl    %r1,80002058 <x1>\n>     80000516:   a7 29 01 ff             lghi    %r2,511\n>     8000051a:   ec 12 00 4f c0 65       clgrjnh %r1,%r2,800005b8 <main+0xd8>\n>     80000520:   a7 1b f0 00             aghi    %r1,-4096\n>     80000524:   c2 1e 00 00 01 fe       clgfi   %r1,510\n>     8000052a:   a7 18 00 00             lhi     %r1,0\n>     8000052e:   b9 99 00 11             slbr    %r1,%r1\n>     80000532:   13 11                   lcr     %r1,%r1\n>     80000534:   c4 1f 00 00 0d 96       strl    %r1,80002060 <b1>\n> \n> And this is the optimized kernel version:\n> \n>     8000054a:   c4 18 00 00 0d 7f       lgrl    %r1,80002048 <x2>\n>     80000550:   a5 17 ee 00             nill    %r1,60928\n>     80000554:   b9 00 00 11             lpgr    %r1,%r1\n>     80000558:   a7 1b ff ff             aghi    %r1,-1\n>     8000055c:   eb 11 00 3f 00 0c       srlg    %r1,%r1,63\n>     80000562:   c4 1f 00 00 0d 77       strl    %r1,80002050 <b2>\n> \n> So that's indeed a little bit better :-)\n> (I was using GCC 4.8.5 from RHEL7, with -O2)\n> \n> By the way, I think there's a bug in David's code: It should either be\n> \"addr <= 4607\" or \"addr < 4608\" instead of \"addr < 4607\".\n> \n> With that bug fixed, David's version get's optimized even more:\n> \n>     80000510:   c4 18 00 00 0d a4       lgrl    %r1,80002058 <x1>\n>     80000516:   a5 17 ef ff             nill    %r1,61439\n>     8000051a:   c2 1e 00 00 01 ff       clgfi   %r1,511\n>     80000520:   a7 18 00 00             lhi     %r1,0\n>     80000524:   b9 99 00 11             slbr    %r1,%r1\n>     80000528:   13 11                   lcr     %r1,%r1\n>     8000052a:   c4 1f 00 00 0d 9b       strl    %r1,80002060 <b1>\n> \n> ... so the difference is really very minimal in that case --> We could\n> really use the more readable version, I think.\n> \n>  Thomas\n> \n\nVery right, I'll fix that.\n\nNice way to find BUGs - comparing generated code :)\n\nThanks!","headers":{"Return-Path":"<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>","X-Original-To":"incoming@patchwork.ozlabs.org","Delivered-To":"patchwork-incoming@bilbo.ozlabs.org","Authentication-Results":["ozlabs.org;\n\tspf=pass (mailfrom) smtp.mailfrom=nongnu.org\n\t(client-ip=2001:4830:134:3::11; helo=lists.gnu.org;\n\tenvelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org;\n\treceiver=<UNKNOWN>)","ext-mx01.extmail.prod.ext.phx2.redhat.com;\n\tdmarc=none (p=none dis=none) header.from=redhat.com","ext-mx01.extmail.prod.ext.phx2.redhat.com;\n\tspf=fail smtp.mailfrom=david@redhat.com"],"Received":["from lists.gnu.org (lists.gnu.org [IPv6:2001:4830:134:3::11])\n\t(using TLSv1 with cipher AES256-SHA (256/256 bits))\n\t(No client certificate requested)\n\tby ozlabs.org (Postfix) with ESMTPS id 3yFqWL737xz9t1t\n\tfor <incoming@patchwork.ozlabs.org>;\n\tMon, 16 Oct 2017 18:21:34 +1100 (AEDT)","from localhost ([::1]:59739 helo=lists.gnu.org)\n\tby lists.gnu.org with esmtp (Exim 4.71) (envelope-from\n\t<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>)\n\tid 1e3ziP-00078w-2t\n\tfor incoming@patchwork.ozlabs.org; Mon, 16 Oct 2017 03:21:33 -0400","from eggs.gnu.org ([2001:4830:134:3::10]:51608)\n\tby lists.gnu.org with esmtp (Exim 4.71)\n\t(envelope-from <david@redhat.com>) id 1e3zhu-00077c-Ff\n\tfor qemu-devel@nongnu.org; Mon, 16 Oct 2017 03:21:03 -0400","from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)\n\t(envelope-from <david@redhat.com>) id 1e3zhr-0005a9-BC\n\tfor qemu-devel@nongnu.org; Mon, 16 Oct 2017 03:21:02 -0400","from mx1.redhat.com ([209.132.183.28]:37034)\n\tby eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32)\n\t(Exim 4.71) (envelope-from <david@redhat.com>)\n\tid 1e3zhr-0005Z1-1S; Mon, 16 Oct 2017 03:20:59 -0400","from smtp.corp.redhat.com\n\t(int-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.12])\n\t(using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits))\n\t(No client certificate requested)\n\tby mx1.redhat.com (Postfix) with ESMTPS id 962D985376;\n\tMon, 16 Oct 2017 07:20:57 +0000 (UTC)","from [10.36.116.255] (unknown [10.36.116.255])\n\tby smtp.corp.redhat.com (Postfix) with ESMTP id D1B445FCA1;\n\tMon, 16 Oct 2017 07:20:55 +0000 (UTC)"],"DMARC-Filter":"OpenDMARC Filter v1.3.2 mx1.redhat.com 962D985376","To":"Thomas Huth <thuth@redhat.com>, Cornelia Huck <cohuck@redhat.com>","References":"<20170927170027.8539-1-david@redhat.com>\n\t<20170927170027.8539-3-david@redhat.com>\n\t<466fa6a0-ac91-66aa-aabb-a15a8ac62e0f@redhat.com>\n\t<3d5ea6d8-b3bf-b1a5-b4a1-082ff49ae842@redhat.com>\n\t<20170929132717.23ecf350.cohuck@redhat.com>\n\t<469b7729-0e9a-1c20-6a68-b3b8e55bafb4@redhat.com>","From":"David Hildenbrand <david@redhat.com>","Organization":"Red Hat GmbH","Message-ID":"<fdd66d43-6517-69b5-7f5a-9fa0b658ce4b@redhat.com>","Date":"Mon, 16 Oct 2017 09:20:54 +0200","User-Agent":"Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101\n\tThunderbird/52.3.0","MIME-Version":"1.0","In-Reply-To":"<469b7729-0e9a-1c20-6a68-b3b8e55bafb4@redhat.com>","Content-Type":"text/plain; charset=utf-8","Content-Language":"en-US","Content-Transfer-Encoding":"7bit","X-Scanned-By":"MIMEDefang 2.79 on 10.5.11.12","X-Greylist":"Sender IP whitelisted, not delayed by milter-greylist-4.5.16\n\t(mx1.redhat.com [10.5.110.25]);\n\tMon, 16 Oct 2017 07:20:57 +0000 (UTC)","X-detected-operating-system":"by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic]\n\t[fuzzy]","X-Received-From":"209.132.183.28","Subject":"Re: [Qemu-devel] [PATCH RFC 2/3] s390x/tcg: low-address protection\n\tsupport","X-BeenThere":"qemu-devel@nongnu.org","X-Mailman-Version":"2.1.21","Precedence":"list","List-Id":"<qemu-devel.nongnu.org>","List-Unsubscribe":"<https://lists.nongnu.org/mailman/options/qemu-devel>,\n\t<mailto:qemu-devel-request@nongnu.org?subject=unsubscribe>","List-Archive":"<http://lists.nongnu.org/archive/html/qemu-devel/>","List-Post":"<mailto:qemu-devel@nongnu.org>","List-Help":"<mailto:qemu-devel-request@nongnu.org?subject=help>","List-Subscribe":"<https://lists.nongnu.org/mailman/listinfo/qemu-devel>,\n\t<mailto:qemu-devel-request@nongnu.org?subject=subscribe>","Cc":"Christian Borntraeger <borntraeger@de.ibm.com>, qemu-s390x@nongnu.org,\n\tRichard Henderson <richard.henderson@linaro.org>,\n\tqemu-devel@nongnu.org, Alexander Graf <agraf@suse.de>","Errors-To":"qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org","Sender":"\"Qemu-devel\"\n\t<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>"}}]