Patch Detail
get:
Show a patch.
patch:
Update a patch.
put:
Update a patch.
GET /api/patches/185/?format=api
{ "id": 185, "url": "http://patchwork.ozlabs.org/api/patches/185/?format=api", "web_url": "http://patchwork.ozlabs.org/project/cbe-oss-dev/patch/200809050416.27831.adetsch@br.ibm.com/", "project": { "id": 1, "url": "http://patchwork.ozlabs.org/api/projects/1/?format=api", "name": "Cell Broadband Engine development", "link_name": "cbe-oss-dev", "list_id": "cbe-oss-dev.ozlabs.org", "list_email": "cbe-oss-dev@ozlabs.org", "web_url": null, "scm_url": null, "webscm_url": null, "list_archive_url": "", "list_archive_url_format": "", "commit_url_format": "" }, "msgid": "<200809050416.27831.adetsch@br.ibm.com>", "list_archive_url": null, "date": "2008-09-05T07:16:27", "name": "powerpc/spufs: Fix possible scheduling of a context to multiple SPEs", "commit_ref": "b2e601d14deb2083e2a537b47869ab3895d23a28", "pull_url": null, "state": "accepted", "archived": false, "hash": "bc1c0b80d7cff66c0d1e5f3f8f4d10eb36176f0d", "submitter": { "id": 93, "url": "http://patchwork.ozlabs.org/api/people/93/?format=api", "name": "Andre Detsch", "email": "adetsch@br.ibm.com" }, "delegate": { "id": 1, "url": "http://patchwork.ozlabs.org/api/users/1/?format=api", "username": "jk", "first_name": "Jeremy", "last_name": "Kerr", "email": "jk@ozlabs.org" }, "mbox": "http://patchwork.ozlabs.org/project/cbe-oss-dev/patch/200809050416.27831.adetsch@br.ibm.com/mbox/", "series": [], "comments": "http://patchwork.ozlabs.org/api/patches/185/comments/", "check": "pending", "checks": "http://patchwork.ozlabs.org/api/patches/185/checks/", "tags": {}, "related": [], "headers": { "Return-Path": "<cbe-oss-dev-bounces+patchwork=ozlabs.org@ozlabs.org>", "X-Original-To": [ "patchwork@ozlabs.org", "cbe-oss-dev@ozlabs.org" ], "Delivered-To": [ "patchwork@ozlabs.org", "cbe-oss-dev@ozlabs.org" ], "Received": [ "from ozlabs.org (localhost [127.0.0.1])\n\tby ozlabs.org (Postfix) with ESMTP id 7C472DDF7C\n\tfor <patchwork@ozlabs.org>; Fri, 5 Sep 2008 17:17:52 +1000 (EST)", "from igw3.br.ibm.com (igw3.br.ibm.com [32.104.18.26])\n\t(using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits))\n\t(Client CN \"igw3.br.ibm.com\", Issuer \"Equifax\" (verified OK))\n\tby ozlabs.org (Postfix) with ESMTPS id D97ABDDF60;\n\tFri, 5 Sep 2008 17:17:36 +1000 (EST)", "from mailhub3.br.ibm.com (unknown [9.18.232.110])\n\tby igw3.br.ibm.com (Postfix) with ESMTP id BE19F390158;\n\tFri, 5 Sep 2008 03:56:34 -0300 (BRST)", "from d24av02.br.ibm.com (d24av02.br.ibm.com [9.18.232.47])\n\tby mailhub3.br.ibm.com (8.13.8/8.13.8/NCO v8.7) with ESMTP id\n\tm857HZlh3936442; Fri, 5 Sep 2008 04:17:35 -0300", "from d24av02.br.ibm.com (loopback [127.0.0.1])\n\tby d24av02.br.ibm.com (8.12.11.20060308/8.13.3) with ESMTP id\n\tm857HSQO017221; Fri, 5 Sep 2008 04:17:28 -0300", "from [9.18.200.217] ([9.18.200.217])\n\tby d24av02.br.ibm.com (8.12.11.20060308/8.12.11) with ESMTP id\n\tm857HRI3016984; Fri, 5 Sep 2008 04:17:28 -0300" ], "From": "Andre Detsch <adetsch@br.ibm.com>", "To": "cbe-oss-dev@ozlabs.org, Jeremy Kerr <jk@ozlabs.org>", "Date": "Fri, 5 Sep 2008 04:16:27 -0300", "User-Agent": "KMail/1.9.6", "MIME-Version": "1.0", "Content-Disposition": "inline", "Message-Id": "<200809050416.27831.adetsch@br.ibm.com>", "Subject": "[Cbe-oss-dev] [PATCH] powerpc/spufs: Fix possible scheduling of a\n\tcontext to multiple SPEs", "X-BeenThere": "cbe-oss-dev@ozlabs.org", "X-Mailman-Version": "2.1.11", "Precedence": "list", "List-Id": "Discussion about Open Source Software for the Cell Broadband Engine\n\t<cbe-oss-dev.ozlabs.org>", "List-Unsubscribe": "<https://ozlabs.org/mailman/options/cbe-oss-dev>,\n\t<mailto:cbe-oss-dev-request@ozlabs.org?subject=unsubscribe>", "List-Archive": "<http://ozlabs.org/pipermail/cbe-oss-dev>", "List-Post": "<mailto:cbe-oss-dev@ozlabs.org>", "List-Help": "<mailto:cbe-oss-dev-request@ozlabs.org?subject=help>", "List-Subscribe": "<https://ozlabs.org/mailman/listinfo/cbe-oss-dev>,\n\t<mailto:cbe-oss-dev-request@ozlabs.org?subject=subscribe>", "Content-Type": "text/plain; charset=\"us-ascii\"", "Content-Transfer-Encoding": "7bit", "Sender": "cbe-oss-dev-bounces+patchwork=ozlabs.org@ozlabs.org", "Errors-To": "cbe-oss-dev-bounces+patchwork=ozlabs.org@ozlabs.org" }, "content": "We currently have a race when scheduling a context to a SPE -\nafter we have found a runnable context in spusched_tick, the same\ncontext may have been scheduled by spu_activate().\n\nThis may result in a panic if we try to unschedule a context that has\nbeen freed in the meantime.\n\nThis change exits spu_schedule() if the context has already been\nscheduled, so we don't end up scheduling it twice.\n\nSigned-off-by: Andre Detsch <adetsch@br.ibm.com>", "diff": "Index: spufs/arch/powerpc/platforms/cell/spufs/sched.c\n===================================================================\n--- spufs.orig/arch/powerpc/platforms/cell/spufs/sched.c\n+++ spufs/arch/powerpc/platforms/cell/spufs/sched.c\n@@ -727,7 +727,8 @@ static void spu_schedule(struct spu *spu\n \t/* not a candidate for interruptible because it's called either\n \t from the scheduler thread or from spu_deactivate */\n \tmutex_lock(&ctx->state_mutex);\n-\t__spu_schedule(spu, ctx);\n+\tif (ctx->state == SPU_STATE_SAVED)\n+\t\t__spu_schedule(spu, ctx);\n \tspu_release(ctx);\n }\n\n", "prefixes": [] }