Messages in this thread |  | | From | "Rafael J. Wysocki" <> | Subject | Re: fix aperture vs. suspend problem | Date | Thu, 13 Mar 2008 21:31:09 +0100 |
| |
On Thursday, 13 of March 2008, Pavel Machek wrote: > > aperture_64.c takes a piece of memory and makes it into iommu > window... but such window may not be saved by swsusp -- that leads to > oops during suspend. > > Signed-off-by: Pavel Machek <pavel@suse.cz>
Acked-by: "Rafael J. Wysocki" <rjw@sisk.pl>
> diff --git a/arch/x86/kernel/aperture_64.c b/arch/x86/kernel/aperture_64.c > index 608152a..88747f3 100644 > --- a/arch/x86/kernel/aperture_64.c > +++ b/arch/x86/kernel/aperture_64.c > @@ -18,6 +18,7 @@ #include <linux/pci_ids.h> > #include <linux/pci.h> > #include <linux/bitops.h> > #include <linux/ioport.h> > +#include <linux/suspend.h> > #include <asm/e820.h> > #include <asm/io.h> > #include <asm/gart.h> > @@ -76,6 +77,7 @@ static u32 __init allocate_aperture(void > printk(KERN_INFO "Mapping aperture over %d KB of RAM @ %lx\n", > aper_size >> 10, __pa(p)); > insert_aperture_resource((u32)__pa(p), aper_size); > + register_nosave_region((u32)__pa(p) >> PAGE_SHIFT, (u32)__pa(p+aper_size) >> PAGE_SHIFT); > > return (u32)__pa(p); > } >
|  |