Patch Detail
get:
Show a patch.
patch:
Update a patch.
put:
Update a patch.
GET /api/patches/1263/?format=api
{ "id": 1263, "url": "http://patchwork.ozlabs.org/api/patches/1263/?format=api", "web_url": "http://patchwork.ozlabs.org/project/linuxppc-dev/patch/1222250872.18015.69.camel@johannes.berg/", "project": { "id": 2, "url": "http://patchwork.ozlabs.org/api/projects/2/?format=api", "name": "Linux PPC development", "link_name": "linuxppc-dev", "list_id": "linuxppc-dev.lists.ozlabs.org", "list_email": "linuxppc-dev@lists.ozlabs.org", "web_url": "https://github.com/linuxppc/wiki/wiki", "scm_url": "https://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux.git", "webscm_url": "https://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux.git/", "list_archive_url": "https://lore.kernel.org/linuxppc-dev/", "list_archive_url_format": "https://lore.kernel.org/linuxppc-dev/{}/", "commit_url_format": "https://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux.git/commit/?id={}" }, "msgid": "<1222250872.18015.69.camel@johannes.berg>", "list_archive_url": "https://lore.kernel.org/linuxppc-dev/1222250872.18015.69.camel@johannes.berg/", "date": "2008-09-24T10:07:52", "name": "[Bugme-new,Bug,11629] New: quad G5 fails to shut down", "commit_ref": null, "pull_url": null, "state": "superseded", "archived": true, "hash": "0b390300714e6b6175d55c9b3e46a01b0dd53e9c", "submitter": { "id": 265, "url": "http://patchwork.ozlabs.org/api/people/265/?format=api", "name": "Johannes Berg", "email": "johannes@sipsolutions.net" }, "delegate": null, "mbox": "http://patchwork.ozlabs.org/project/linuxppc-dev/patch/1222250872.18015.69.camel@johannes.berg/mbox/", "series": [], "comments": "http://patchwork.ozlabs.org/api/patches/1263/comments/", "check": "pending", "checks": "http://patchwork.ozlabs.org/api/patches/1263/checks/", "tags": {}, "related": [], "headers": { "Return-Path": "<linuxppc-dev-bounces+patchwork-incoming=ozlabs.org@ozlabs.org>", "X-Original-To": [ "patchwork-incoming@ozlabs.org", "linuxppc-dev@ozlabs.org" ], "Delivered-To": [ "patchwork-incoming@ozlabs.org", "linuxppc-dev@ozlabs.org" ], "Received": [ "from ozlabs.org (localhost [127.0.0.1])\n\tby ozlabs.org (Postfix) with ESMTP id B729EDE11F\n\tfor <patchwork-incoming@ozlabs.org>;\n\tWed, 24 Sep 2008 20:09:04 +1000 (EST)", "from sipsolutions.net (xc.sipsolutions.net [83.246.72.84])\n\t(using TLSv1 with cipher AES256-SHA (256/256 bits))\n\t(Client did not present a certificate)\n\tby ozlabs.org (Postfix) with ESMTPS id 95456DDED1\n\tfor <linuxppc-dev@ozlabs.org>; Wed, 24 Sep 2008 20:08:48 +1000 (EST)", "by sipsolutions.net with esmtpsa\n\t(TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32)\n\t(Exim 4.69) (envelope-from <johannes@sipsolutions.net>)\n\tid 1KiRIR-0002pg-9l; Wed, 24 Sep 2008 12:08:35 +0200" ], "Subject": "Re: [Bugme-new] [Bug 11629] New: quad G5 fails to shut down", "From": "Johannes Berg <johannes@sipsolutions.net>", "To": "Andrew Morton <akpm@linux-foundation.org>", "In-Reply-To": "<20080923143057.e3e54536.akpm@linux-foundation.org>", "References": "<bug-11629-10286@http.bugzilla.kernel.org/>\n\t<20080923143057.e3e54536.akpm@linux-foundation.org>", "Date": "Wed, 24 Sep 2008 12:07:52 +0200", "Message-Id": "<1222250872.18015.69.camel@johannes.berg>", "Mime-Version": "1.0", "X-Mailer": "Evolution 2.22.3.1 ", "Cc": "linuxppc-dev@ozlabs.org, bugme-daemon@bugzilla.kernel.org,\n\tThomas Gleixner <tglx@linutronix.de>, Ingo Molnar <mingo@elte.hu>", "X-BeenThere": "linuxppc-dev@ozlabs.org", "X-Mailman-Version": "2.1.11", "Precedence": "list", "List-Id": "Linux on PowerPC Developers Mail List <linuxppc-dev.ozlabs.org>", "List-Unsubscribe": "<https://ozlabs.org/mailman/options/linuxppc-dev>,\n\t<mailto:linuxppc-dev-request@ozlabs.org?subject=unsubscribe>", "List-Archive": "<http://ozlabs.org/pipermail/linuxppc-dev>", "List-Post": "<mailto:linuxppc-dev@ozlabs.org>", "List-Help": "<mailto:linuxppc-dev-request@ozlabs.org?subject=help>", "List-Subscribe": "<https://ozlabs.org/mailman/listinfo/linuxppc-dev>,\n\t<mailto:linuxppc-dev-request@ozlabs.org?subject=subscribe>", "Content-Type": "text/plain; charset=\"us-ascii\"", "Content-Transfer-Encoding": "7bit", "Sender": "linuxppc-dev-bounces+patchwork-incoming=ozlabs.org@ozlabs.org", "Errors-To": "linuxppc-dev-bounces+patchwork-incoming=ozlabs.org@ozlabs.org" }, "content": "On Tue, 2008-09-23 at 14:30 -0700, Andrew Morton wrote:\n\n> > Steps to reproduce:\n> > shut down the machine, see it fail.\n> > \n> > http://johannes.sipsolutions.net/files/dsc_2274.jpg\n> > \n> \n> That went splat in the clockevents code.\n\nThis is still strange, it appears that when the CPUs fail to offline, we\nstill call into the clockevents code and it rightfully crashes, but I'll\ncheck that out separately.\n\nI've found the problem, below is a tentative fix. The problem has been\naround for quite a while, here's the whole commit that \"caused\" it\n(because it's so short):\n\ncommit 4047727e5ae33f9b8d2b7766d1994ea6e5ec2991\nAuthor: Mark Lord <lkml@rtr.ca>\nDate: Mon Oct 1 01:20:10 2007 -0700\n\n Fix SMP poweroff hangs\n \n We need to disable all CPUs other than the boot CPU (usually 0) before\n attempting to power-off modern SMP machines. This fixes the\n hang-on-poweroff issue on my MythTV SMP box, and also on Thomas Gleixner's\n new toybox.\n \n Signed-off-by: Mark Lord <mlord@pobox.com>\n Acked-by: Thomas Gleixner <tglx@linutronix.de>\n Cc: \"Rafael J. Wysocki\" <rjw@sisk.pl>\n Signed-off-by: Andrew Morton <akpm@linux-foundation.org>\n Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>", "diff": "diff --git a/kernel/sys.c b/kernel/sys.c\nindex 1b33b05..8ae2e63 100644\n--- a/kernel/sys.c\n+++ b/kernel/sys.c\n@@ -32,6 +32,7 @@\n #include <linux/getcpu.h>\n #include <linux/task_io_accounting_ops.h>\n #include <linux/seccomp.h>\n+#include <linux/cpu.h>\n \n #include <linux/compat.h>\n #include <linux/syscalls.h>\n@@ -878,6 +879,7 @@ void kernel_power_off(void)\n kernel_shutdown_prepare(SYSTEM_POWER_OFF);\n if (pm_power_off_prepare)\n pm_power_off_prepare();\n+ disable_nonboot_cpus();\n sysdev_shutdown();\n printk(KERN_EMERG \"Power down.\\n\");\n machine_power_off();\n\n\nAnd here's the fix.\n\nFrom: Johannes Berg <johannes@sipsolutions.net>\nSubject: powerpc: fix shutdown\n\nI tracked down the shutdown regression to CPUs not dying\nwhen being shut down during power-off. This turns out to\nbe due to the system_state being SYSTEM_POWER_OFF, which\nthis code doesn't take as a valid state for shutting off\nCPUs in.\n\nThis has never made sense to me, but when I added hotplug\ncode to implement hibernate I only \"made it work\" and did\nnot question the need to check the system_state. Thomas\nGleixner helped me dig, but the only thing we found is\nthat it was added with the original commit that added CPU\nhotplug support.\n\nSigned-off-by: Johannes Berg <johannes@sipsolutions.net>\nCc: Thomas Gleixner <tglx@linutronix.de>\nCc: Joel Schopp <jschopp@austin.ibm.com>\nCc: Benjamin Herrenschmidt <benh@kernel.crashing.org>\n---\n arch/powerpc/kernel/idle.c | 4 +---\n 1 file changed, 1 insertion(+), 3 deletions(-)\n\n--- a/arch/powerpc/kernel/idle.c\n+++ b/arch/powerpc/kernel/idle.c\n@@ -36,9 +36,7 @@\n #ifdef CONFIG_HOTPLUG_CPU\n /* this is used for software suspend, and that shuts down\n * CPUs even while the system is still booting... */\n-#define cpu_should_die()\t(cpu_is_offline(smp_processor_id()) && \\\n-\t\t\t\t (system_state == SYSTEM_RUNNING \\\n-\t\t\t\t || system_state == SYSTEM_BOOTING))\n+#define cpu_should_die()\tcpu_is_offline(smp_processor_id())\n #else\n #define cpu_should_die()\t0\n #endif\n", "prefixes": [ "Bugme-new", "Bug", "11629" ] }