get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

GET /api/patches/1627199/?format=api
HTTP 200 OK
Allow: GET, PUT, PATCH, HEAD, OPTIONS
Content-Type: application/json
Vary: Accept

{
    "id": 1627199,
    "url": "http://patchwork.ozlabs.org/api/patches/1627199/?format=api",
    "web_url": "http://patchwork.ozlabs.org/project/qemu-devel/patch/20220505184938.351866-18-danielhb413@gmail.com/",
    "project": {
        "id": 14,
        "url": "http://patchwork.ozlabs.org/api/projects/14/?format=api",
        "name": "QEMU Development",
        "link_name": "qemu-devel",
        "list_id": "qemu-devel.nongnu.org",
        "list_email": "qemu-devel@nongnu.org",
        "web_url": "",
        "scm_url": "",
        "webscm_url": "",
        "list_archive_url": "",
        "list_archive_url_format": "",
        "commit_url_format": ""
    },
    "msgid": "<20220505184938.351866-18-danielhb413@gmail.com>",
    "list_archive_url": null,
    "date": "2022-05-05T18:49:25",
    "name": "[PULL,17/30] target/ppc: Remove msr_pow macro",
    "commit_ref": null,
    "pull_url": null,
    "state": "new",
    "archived": false,
    "hash": "6afd26e4c9edbb27f4b480ee8cb31b92d39d4f2e",
    "submitter": {
        "id": 74265,
        "url": "http://patchwork.ozlabs.org/api/people/74265/?format=api",
        "name": "Daniel Henrique Barboza",
        "email": "danielhb413@gmail.com"
    },
    "delegate": null,
    "mbox": "http://patchwork.ozlabs.org/project/qemu-devel/patch/20220505184938.351866-18-danielhb413@gmail.com/mbox/",
    "series": [
        {
            "id": 298671,
            "url": "http://patchwork.ozlabs.org/api/series/298671/?format=api",
            "web_url": "http://patchwork.ozlabs.org/project/qemu-devel/list/?series=298671",
            "date": "2022-05-05T18:49:09",
            "name": "[PULL,01/30] target/ppc: initialize 'val' union in kvm_get_one_spr()",
            "version": 1,
            "mbox": "http://patchwork.ozlabs.org/series/298671/mbox/"
        }
    ],
    "comments": "http://patchwork.ozlabs.org/api/patches/1627199/comments/",
    "check": "pending",
    "checks": "http://patchwork.ozlabs.org/api/patches/1627199/checks/",
    "tags": {},
    "related": [],
    "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": [
            "bilbo.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256\n header.s=20210112 header.b=c59FyNOv;\n\tdkim-atps=neutral",
            "ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=nongnu.org\n (client-ip=209.51.188.17; helo=lists.gnu.org;\n envelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org;\n receiver=<UNKNOWN>)"
        ],
        "Received": [
            "from lists.gnu.org (lists.gnu.org [209.51.188.17])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))\n\t(No client certificate requested)\n\tby bilbo.ozlabs.org (Postfix) with ESMTPS id 4KvPMQ0cyQz9sBF\n\tfor <incoming@patchwork.ozlabs.org>; Fri,  6 May 2022 05:46:10 +1000 (AEST)",
            "from localhost ([::1]:47448 helo=lists1p.gnu.org)\n\tby lists.gnu.org with esmtp (Exim 4.90_1)\n\t(envelope-from <qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>)\n\tid 1nmhQN-0004pE-TA\n\tfor incoming@patchwork.ozlabs.org; Thu, 05 May 2022 15:46:07 -0400",
            "from eggs.gnu.org ([2001:470:142:3::10]:47894)\n by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)\n (Exim 4.90_1) (envelope-from <danielhb413@gmail.com>)\n id 1nmgZ3-0003OK-Nq; Thu, 05 May 2022 14:51:04 -0400",
            "from mail-oa1-x33.google.com ([2001:4860:4864:20::33]:44105)\n by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)\n (Exim 4.90_1) (envelope-from <danielhb413@gmail.com>)\n id 1nmgZ1-0004Td-QU; Thu, 05 May 2022 14:51:01 -0400",
            "by mail-oa1-x33.google.com with SMTP id\n 586e51a60fabf-ed9a75c453so5073268fac.11;\n Thu, 05 May 2022 11:50:59 -0700 (PDT)",
            "from balboa.ibmuc.com (201-1-57-208.dsl.telesp.net.br.\n [201.1.57.208]) by smtp.gmail.com with ESMTPSA id\n n67-20020aca4046000000b00325cda1ff94sm917146oia.19.2022.05.05.11.50.56\n (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n Thu, 05 May 2022 11:50:58 -0700 (PDT)"
        ],
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112;\n h=from:to:cc:subject:date:message-id:in-reply-to:references\n :mime-version:content-transfer-encoding;\n bh=riZC2yH/14+rTa+pwyH/u67cIa6TS27zS9H9xOSroEk=;\n b=c59FyNOvVVs482+pFkFFBvi7dc+KyRMbUw181GgEqN2vzwrAJoHMlye/7TTehffxi8\n JeUfk9U6B94un3rUjiUjX04OlD8OZ7nue3dAUmYLWvuOsAeckA3A3IYoqks9zThMCaTx\n a3mQuJKL0Q02f6nLIFkDHI2IjCvKeu2cjftIQgYAfsce34HRm4cE1BZ41mQPfIumhd9R\n VGca9HALl1fgtOLnb9oWeXdMQC8CmOZSP84/8un+AvFDXUY7p+n/H4m/nwAG5/OF1tJ3\n xhXd+Rn0KUKWB7ulJxrquc/E4udSTE9kjBW58WICTl9s+O05yzF3+nkEtaor2bqnvaI0\n xWzg==",
        "X-Google-DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=1e100.net; s=20210112;\n h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to\n :references:mime-version:content-transfer-encoding;\n bh=riZC2yH/14+rTa+pwyH/u67cIa6TS27zS9H9xOSroEk=;\n b=lb5Kk1sjoJJe1UTeZBkapKrQ2Q4kdaFbCtale5eKSSlnHIDhb4jvknroPPRGvyTqq3\n /LOTHNEKxmbg9WxruLxC7XS0c6M9eLJ7iN/loPrdrfzzoqIEp8fATQm0rl0pFgww8RWJ\n 42ByeRRCDwvTCkqEebeDLNNoKKP7Rwf/mRw1/qozcm2fXfY2QctRfBtxUpV9I2BbBsov\n 1KgoUl/yGJt5U1ZtuPyQvl6UEcwZNaVQoLZmGaJBjKzSxdlQ+Gde6xXhIAl4K8KsG1Pp\n j/g58MZ+GW5Tr/lzdrIJfJ3MENNs9V3dUeG3JKNSI12dmW/JcdWUazAiWhA5pMziByol\n IAYQ==",
        "X-Gm-Message-State": "AOAM530OPqeI3ev/1Lv6BGHgT8H2AFr+aMCe+V4khHrS9e1+ah+4ecJ8\n 6BJphDm7CgKnxowAIDmEVMv5iMaQVPQ=",
        "X-Google-Smtp-Source": "\n ABdhPJx8jKKEL1LZ8okSYtty3RtXy3Mw23PydvNVhu8bHOy+HoDdforea+hcZqSt0NjXfXDnh0swOA==",
        "X-Received": "by 2002:a05:6870:f728:b0:ed:9d92:7ba3 with SMTP id\n ej40-20020a056870f72800b000ed9d927ba3mr2949499oab.177.1651776658741;\n Thu, 05 May 2022 11:50:58 -0700 (PDT)",
        "From": "Daniel Henrique Barboza <danielhb413@gmail.com>",
        "To": "qemu-devel@nongnu.org",
        "Cc": "qemu-ppc@nongnu.org, danielhb413@gmail.com, peter.maydell@linaro.org,\n richard.henderson@linaro.org,\n =?utf-8?q?V=C3=ADctor_Colombo?= <victor.colombo@eldorado.org.br>",
        "Subject": "[PULL 17/30] target/ppc: Remove msr_pow macro",
        "Date": "Thu,  5 May 2022 15:49:25 -0300",
        "Message-Id": "<20220505184938.351866-18-danielhb413@gmail.com>",
        "X-Mailer": "git-send-email 2.32.0",
        "In-Reply-To": "<20220505184938.351866-1-danielhb413@gmail.com>",
        "References": "<20220505184938.351866-1-danielhb413@gmail.com>",
        "MIME-Version": "1.0",
        "Content-Type": "text/plain; charset=UTF-8",
        "Content-Transfer-Encoding": "8bit",
        "Received-SPF": "pass client-ip=2001:4860:4864:20::33;\n envelope-from=danielhb413@gmail.com; helo=mail-oa1-x33.google.com",
        "X-Spam_score_int": "-18",
        "X-Spam_score": "-1.9",
        "X-Spam_bar": "-",
        "X-Spam_report": "(-1.9 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1,\n DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1,\n FREEMAIL_ENVFROM_END_DIGIT=0.25, FREEMAIL_FROM=0.001,\n RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001,\n T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no",
        "X-Spam_action": "no action",
        "X-BeenThere": "qemu-devel@nongnu.org",
        "X-Mailman-Version": "2.1.29",
        "Precedence": "list",
        "List-Id": "<qemu-devel.nongnu.org>",
        "List-Unsubscribe": "<https://lists.nongnu.org/mailman/options/qemu-devel>,\n <mailto:qemu-devel-request@nongnu.org?subject=unsubscribe>",
        "List-Archive": "<https://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 <mailto:qemu-devel-request@nongnu.org?subject=subscribe>",
        "Errors-To": "qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org",
        "Sender": "\"Qemu-devel\"\n <qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>"
    },
    "content": "From: Víctor Colombo <victor.colombo@eldorado.org.br>\n\nmsr_pow macro hides the usage of env->msr, which is a bad behavior\nSubstitute it with FIELD_EX64 calls that explicitly use env->msr\nas a parameter.\n\nSuggested-by: Richard Henderson <richard.henderson@linaro.org>\nSigned-off-by: Víctor Colombo <victor.colombo@eldorado.org.br>\nReviewed-by: Richard Henderson <richard.henderson@linaro.org>\nMessage-Id: <20220504210541.115256-10-victor.colombo@eldorado.org.br>\nSigned-off-by: Daniel Henrique Barboza <danielhb413@gmail.com>\n---\n target/ppc/cpu.h         |  2 +-\n target/ppc/excp_helper.c | 12 ++++++------\n target/ppc/helper_regs.c |  2 +-\n 3 files changed, 8 insertions(+), 8 deletions(-)",
    "diff": "diff --git a/target/ppc/cpu.h b/target/ppc/cpu.h\nindex b1883b23e2..5a83c4b028 100644\n--- a/target/ppc/cpu.h\n+++ b/target/ppc/cpu.h\n@@ -354,6 +354,7 @@ typedef enum {\n #define MSR_RI   1  /* Recoverable interrupt                        1        */\n #define MSR_LE   0  /* Little-endian mode                           1 hflags */\n \n+FIELD(MSR, POW, MSR_POW, 1)\n FIELD(MSR, CE, MSR_CE, 1)\n FIELD(MSR, ILE, MSR_ILE, 1)\n FIELD(MSR, EE, MSR_EE, 1)\n@@ -478,7 +479,6 @@ FIELD(MSR, LE, MSR_LE, 1)\n #endif\n #define msr_cm   ((env->msr >> MSR_CM)   & 1)\n #define msr_gs   ((env->msr >> MSR_GS)   & 1)\n-#define msr_pow  ((env->msr >> MSR_POW)  & 1)\n #define msr_fp   ((env->msr >> MSR_FP)   & 1)\n #define msr_me   ((env->msr >> MSR_ME)   & 1)\n #define msr_fe0  ((env->msr >> MSR_FE0)  & 1)\ndiff --git a/target/ppc/excp_helper.c b/target/ppc/excp_helper.c\nindex ca80c1ed63..ee63641dd0 100644\n--- a/target/ppc/excp_helper.c\n+++ b/target/ppc/excp_helper.c\n@@ -661,7 +661,7 @@ static void powerpc_excp_6xx(PowerPCCPU *cpu, int excp)\n     case POWERPC_EXCP_ITLB:      /* Instruction TLB error                    */\n         break;\n     case POWERPC_EXCP_RESET:     /* System reset exception                   */\n-        if (msr_pow) {\n+        if (FIELD_EX64(env->msr, MSR, POW)) {\n             cpu_abort(cs, \"Trying to deliver power-saving system reset \"\n                       \"exception %d with no HV support\\n\", excp);\n         }\n@@ -853,7 +853,7 @@ static void powerpc_excp_7xx(PowerPCCPU *cpu, int excp)\n     case POWERPC_EXCP_DECR:      /* Decrementer exception                    */\n         break;\n     case POWERPC_EXCP_RESET:     /* System reset exception                   */\n-        if (msr_pow) {\n+        if (FIELD_EX64(env->msr, MSR, POW)) {\n             cpu_abort(cs, \"Trying to deliver power-saving system reset \"\n                       \"exception %d with no HV support\\n\", excp);\n         }\n@@ -1038,7 +1038,7 @@ static void powerpc_excp_74xx(PowerPCCPU *cpu, int excp)\n     case POWERPC_EXCP_DECR:      /* Decrementer exception                    */\n         break;\n     case POWERPC_EXCP_RESET:     /* System reset exception                   */\n-        if (msr_pow) {\n+        if (FIELD_EX64(env->msr, MSR, POW)) {\n             cpu_abort(cs, \"Trying to deliver power-saving system reset \"\n                       \"exception %d with no HV support\\n\", excp);\n         }\n@@ -1248,7 +1248,7 @@ static void powerpc_excp_booke(PowerPCCPU *cpu, int excp)\n         env->spr[SPR_BOOKE_ESR] = ESR_SPV;\n         break;\n     case POWERPC_EXCP_RESET:     /* System reset exception                   */\n-        if (msr_pow) {\n+        if (FIELD_EX64(env->msr, MSR, POW)) {\n             cpu_abort(cs, \"Trying to deliver power-saving system reset \"\n                       \"exception %d with no HV support\\n\", excp);\n         }\n@@ -1507,7 +1507,7 @@ static void powerpc_excp_books(PowerPCCPU *cpu, int excp)\n         break;\n     case POWERPC_EXCP_RESET:     /* System reset exception                   */\n         /* A power-saving exception sets ME, otherwise it is unchanged */\n-        if (msr_pow) {\n+        if (FIELD_EX64(env->msr, MSR, POW)) {\n             /* indicate that we resumed from power save mode */\n             msr |= 0x10000;\n             new_msr |= ((target_ulong)1 << MSR_ME);\n@@ -1519,7 +1519,7 @@ static void powerpc_excp_books(PowerPCCPU *cpu, int excp)\n              */\n             new_msr |= (target_ulong)MSR_HVB;\n         } else {\n-            if (msr_pow) {\n+            if (FIELD_EX64(env->msr, MSR, POW)) {\n                 cpu_abort(cs, \"Trying to deliver power-saving system reset \"\n                           \"exception %d with no HV support\\n\", excp);\n             }\ndiff --git a/target/ppc/helper_regs.c b/target/ppc/helper_regs.c\nindex 77bc57415c..79c0143a7a 100644\n--- a/target/ppc/helper_regs.c\n+++ b/target/ppc/helper_regs.c\n@@ -261,7 +261,7 @@ int hreg_store_msr(CPUPPCState *env, target_ulong value, int alter_hv)\n     env->msr = value;\n     hreg_compute_hflags(env);\n #if !defined(CONFIG_USER_ONLY)\n-    if (unlikely(msr_pow == 1)) {\n+    if (unlikely(FIELD_EX64(env->msr, MSR, POW))) {\n         if (!env->pending_interrupts && (*env->check_pow)(env)) {\n             cs->halted = 1;\n             excp = EXCP_HALTED;\n",
    "prefixes": [
        "PULL",
        "17/30"
    ]
}