linux/arch/s390/mm
Heiko Carstens 00de54c803 s390/mem_detect: fix memory type of first block
Fix a long-standing but currently irrelevant bug: the memory detection
code performs a tprot instruction on address zero to figure out if the
first memory chunk is readable or writable. Due to low address
protection the result is "read-only". If the memory detection code
would actually care, it would have to ignore the first memory
increment, but it adds the memory increment to writable memory anyway.

If memblock debugging is enabled this leads to an extra rather
surprising call which registers memory. To avoid this get rid of the
first misleading tprot call and simply assume that the first memory
increment is writable. Otherwise we wouldn't have reached the memory
detection code anyway.

Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2017-01-16 07:27:54 +01:00
..
cmm.c s390: convert use of typedef ctl_table to struct ctl_table 2013-10-28 08:36:25 +01:00
dump_pagetables.c s390/pgtable: get rid of _REGION3_ENTRY_RO 2016-06-13 15:58:14 +02:00
extmem.c s390/extmem: add missing memory clobber to dcss_set_subcodes 2016-12-14 16:33:41 +01:00
fault.c s390/preempt: move preempt_count to the lowcore 2016-11-11 16:37:40 +01:00
gmap.c lib: radix-tree: check accounting of existing slot replacement users 2016-12-12 18:55:08 -08:00
gup.c mm: replace get_user_pages_unlocked() write/force parameters with gup_flags 2016-10-18 14:13:37 -07:00
hugetlbpage.c s390/mm: use hugetlb_bad_size() 2016-10-17 11:25:26 +02:00
init.c Replace <asm/uaccess.h> with <linux/uaccess.h> globally 2016-12-24 11:46:01 -08:00
maccess.c s390/maccess: reduce stnsm instructions 2016-02-17 09:05:04 +01:00
Makefile s390/extable: use generic search and sort routines 2016-03-22 15:36:02 -07:00
mem_detect.c s390/mem_detect: fix memory type of first block 2017-01-16 07:27:54 +01:00
mmap.c Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux 2016-05-18 12:17:16 -07:00
page-states.c s390/mm: use basic block for essa inline assembly 2016-06-28 09:32:29 +02:00
pageattr.c s390/mm: merge local / non-local IPTE helper 2016-08-24 09:23:55 +02:00
pgalloc.c - ARM: GICv3 ITS emulation and various fixes. Removal of the old 2016-08-02 16:11:27 -04:00
pgtable.c s390/mm: merge local / non-local IDTE helper 2016-08-24 09:23:56 +02:00
vmem.c s390: convert remaining bootmem allocations to memblock 2016-11-29 07:52:55 +01:00