From mboxrd@z Thu Jan 1 00:00:00 1970 From: holt@sgi.com (Robin Holt) Date: Sat, 11 May 2013 07:49:00 -0500 Subject: [PATCH -v10 00/11] Shutdown from reboot_cpuid without stopping other cpus. In-Reply-To: <1368273447-11958-1-git-send-email-holt@sgi.com> References: <1368273447-11958-1-git-send-email-holt@sgi.com> Message-ID: <20130511124900.GA3672@sgi.com> To: linux-arm-kernel@lists.infradead.org List-Id: linux-arm-kernel.lists.infradead.org I will resubmit a -v11 with Russell's comment about the wrongly added ^// in a bit. Robin On Sat, May 11, 2013 at 06:57:16AM -0500, Robin Holt wrote: > We recently noticed that reboot of a 1024 cpu machine takes approx 16 > minutes of just stopping the cpus. The slowdown was tracked to commit > f96972f. > > The current implementation does all the work of hot removing the cpus > before halting the system. We are switching to just migrating to the > reboot_cpu and then continuing with shutdown/reboot. > > The patch set is broken into eleven parts. The first two are planned for > the stable release. The others move the halt/shutdown/reboot related > functions to their own kernel/reboot.c file and then move the handling > of the kernel reboot= kernel parameter to generic kernel code. > > Changes since -v9 > - Added Ingo's Acked-by for x86. > > - Added Guan's Acked-by for unicore32. > > - Replaced first patch with updated patch from Srivatsa S. Bhat. > This compiles for alpha allmodconfig, all arm defconfigs, and a few > test x86_64 defconfigs. I have not tried more. > > Changes since -v8 > - Changes reboot_cpu on stack to cpu to fix bug noticed by Russell King. > > - Switched unicore32 and arm from using REBOOT_WARM/COLD to HARD/SOFT. > > - Fixed case statement bug. > > - Went to using simple_strtoul for parsing reboot_cpu=smp###. > > - Made parsing of reboot= not use any #ifdef'd code. > > Changes since -v7. > - Fixed authorship for first patch. > > - Rebased to Linus' current tree (51a26ae7a). > > Changes since -v6. > - Cross compiled all arm architectures (using v3.9 kernel. Fails with > current). > > - Added a #define for non-hotplug case. > > - Add #define for PF_THREAD_BOUND as compatibility to make stable easier. > > - Fixup s/reboot_cpu_id/reboot_cpu/ > > - Add include of linux/uaccess.h to allow building on arm. > > - Removed last remaining checkpatch.pl line length warning on > kernel/reboot.c. > > - Fixed the duplicate handling or the reboot= kernel parameter. > > Changes since -v5. > - Moved the arch/x86 reboot= up to the generic kernel code. > > Changes since -v4. > - Integrated Srivatsa S. Bhat creating cpu_hotplug_disable() > function > > - Integrated comments by Srivatsa S. Bhat. > > - Made one more comment consistent with others in function. > > Changes since -v3. > - Added a tested-by for the original reporter. > > - Fix compile failure found by Joe Perches. > > - Integrated comments by Joe Perches. > > > To: Andrew Morton > Cc: H. Peter Anvin > Cc: Russ Anderson > Cc: Robin Holt > Cc: Russell King > Cc: Guan Xuetao > Cc: Linux Kernel Mailing List > Cc: the arch/x86 maintainers > Cc: Arm Mailing List > -- > To unsubscribe from this list: send the line "unsubscribe linux-kernel" in > the body of a message to majordomo at vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html > Please read the FAQ at http://www.tux.org/lkml/