Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux
[sfrench/cifs-2.6.git] / arch / s390 / kernel / suspend.c
index a8af9c825628e7043d3084126324cbcd26e76d76..ce329c876d8c16d8405d07cd320d0ebd0cbaccdd 100644 (file)
@@ -153,7 +153,7 @@ int pfn_is_nosave(unsigned long pfn)
 {
        unsigned long nosave_begin_pfn = PFN_DOWN(__pa(&__nosave_begin));
        unsigned long nosave_end_pfn = PFN_DOWN(__pa(&__nosave_end));
 {
        unsigned long nosave_begin_pfn = PFN_DOWN(__pa(&__nosave_begin));
        unsigned long nosave_end_pfn = PFN_DOWN(__pa(&__nosave_end));
-       unsigned long eshared_pfn = PFN_DOWN(__pa(&_eshared)) - 1;
+       unsigned long end_rodata_pfn = PFN_DOWN(__pa(&__end_rodata)) - 1;
        unsigned long stext_pfn = PFN_DOWN(__pa(&_stext));
 
        /* Always save lowcore pages (LC protection might be enabled). */
        unsigned long stext_pfn = PFN_DOWN(__pa(&_stext));
 
        /* Always save lowcore pages (LC protection might be enabled). */
@@ -161,9 +161,9 @@ int pfn_is_nosave(unsigned long pfn)
                return 0;
        if (pfn >= nosave_begin_pfn && pfn < nosave_end_pfn)
                return 1;
                return 0;
        if (pfn >= nosave_begin_pfn && pfn < nosave_end_pfn)
                return 1;
-       /* Skip memory holes and read-only pages (NSS, DCSS, ...). */
-       if (pfn >= stext_pfn && pfn <= eshared_pfn)
-               return ipl_info.type == IPL_TYPE_NSS ? 1 : 0;
+       /* Skip memory holes and read-only pages (DCSS, ...). */
+       if (pfn >= stext_pfn && pfn <= end_rodata_pfn)
+               return 0;
        if (tprot(PFN_PHYS(pfn)))
                return 1;
        return 0;
        if (tprot(PFN_PHYS(pfn)))
                return 1;
        return 0;