[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] RE: [Xen-devel] [PATCH] Disable SMP on the MacBook by default
> As I mentioned before, SMP is non functional on the MacBook. It even > makes the machine crash. I am using a patch to disable SMP support in > the case a MacBook was detected. I have included this patch at the > end of this email. Am I totally confused, or wasn't this solved by some update to grub legacy to change A20 gate stuff? Thanks, Ian > Because this will be useful for the LiveCD, I hope you will commit > this patch. Please let me know if there are issues that I need to > take care of before it can be committed. > > Thanks, > Marco > > > diff -r 3e31c5e160cf xen/arch/x86/dmi_scan.c > --- a/xen/arch/x86/dmi_scan.c Wed Sep 13 14:59:14 2006 > +++ b/xen/arch/x86/dmi_scan.c Wed Sep 13 22:34:01 2006 > @@ -8,6 +8,7 @@ > #include <xen/acpi.h> > #include <asm/io.h> > #include <asm/system.h> > +#include <xen/smp.h> > #include <xen/dmi.h> > > #define bt_ioremap(b,l) ((u8 *)__acpi_map_table(b,l)) > @@ -181,6 +182,15 @@ > return 0; > } > > +/* > + * Disable SMP. */ > +static int __init dmi_disable_smp(struct dmi_blacklist *d) > +{ > + printk(KERN_NOTICE "%s detected: SMP support disabled\n", d->ident); > + opt_nosmp = 1; > + return 0; > +} > + > > #ifdef CONFIG_ACPI_SLEEP > static __init int reset_videomode_after_s3(struct dmi_blacklist *d) > @@ -262,6 +272,17 @@ > MATCH(DMI_PRODUCT_NAME, "S4030CDT/4.3"), > NO_MATCH, NO_MATCH, NO_MATCH > } }, > + > + /* > + * SMP support is broken for the MacBook. Disable SMP to > + * prevent further problems. > + */ > + { > + .callback = dmi_disable_smp, > + .ident = "Apple MacBook", > + .matches = {DMI_MATCH(DMI_PRODUCT_NAME, "MacBook1,1"),}, > + }, > + > #ifdef CONFIG_ACPI_SLEEP > { reset_videomode_after_s3, "Toshiba Satellite 4030cdt", { /* Reset > video mode after returning from ACPI S3 sleep */ > MATCH(DMI_PRODUCT_NAME, "S4030CDT/4.3"), > diff -r 3e31c5e160cf xen/arch/x86/setup.c > --- a/xen/arch/x86/setup.c Wed Sep 13 14:59:14 2006 > +++ b/xen/arch/x86/setup.c Wed Sep 13 22:34:01 2006 > @@ -40,7 +40,7 @@ > #endif > > /* opt_nosmp: If true, secondary processors are ignored. */ > -static int opt_nosmp = 0; > +int opt_nosmp = 0; > boolean_param("nosmp", opt_nosmp); > > /* maxcpus: maximum number of CPUs to activate. */ > diff -r 3e31c5e160cf xen/include/xen/smp.h > --- a/xen/include/xen/smp.h Wed Sep 13 14:59:14 2006 > +++ b/xen/include/xen/smp.h Wed Sep 13 22:34:01 2006 > @@ -111,4 +111,6 @@ > > #define smp_processor_id() raw_smp_processor_id() > > +extern int opt_nosmp ; > + > #endif > > > _______________________________________________ > Xen-devel mailing list > Xen-devel@xxxxxxxxxxxxxxxxxxx > http://lists.xensource.com/xen-devel _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |