cregit-Linux how code gets into the kernel

Release 4.14 arch/s390/mm/mem_detect.c

Directory: arch/s390/mm
// SPDX-License-Identifier: GPL-2.0
/*
 * Copyright IBM Corp. 2008, 2009
 *
 * Author(s): Heiko Carstens <heiko.carstens@de.ibm.com>
 */

#include <linux/kernel.h>
#include <linux/memblock.h>
#include <linux/init.h>
#include <linux/debugfs.h>
#include <linux/seq_file.h>
#include <asm/ipl.h>
#include <asm/sclp.h>
#include <asm/setup.h>


#define CHUNK_READ_WRITE 0

#define CHUNK_READ_ONLY  1


static inline void memblock_physmem_add(phys_addr_t start, phys_addr_t size) { memblock_dbg("memblock_physmem_add: [%#016llx-%#016llx]\n", start, start + size - 1); memblock_add_range(&memblock.memory, start, size, 0, 0); memblock_add_range(&memblock.physmem, start, size, 0, 0); }

Contributors

PersonTokensPropCommitsCommitProp
Philipp Hachtmann4170.69%125.00%
Heiko Carstens1729.31%375.00%
Total58100.00%4100.00%


void __init detect_memory_memblock(void) { unsigned long memsize, rnmax, rzm, addr, size; int type; rzm = sclp.rzm; rnmax = sclp.rnmax; memsize = rzm * rnmax; if (!rzm) rzm = 1UL << 17; max_physmem_end = memsize; addr = 0; /* keep memblock lists close to the kernel */ memblock_set_bottom_up(true); do { size = 0; /* assume lowcore is writable */ type = addr ? tprot(addr) : CHUNK_READ_WRITE; do { size += rzm; if (max_physmem_end && addr + size >= max_physmem_end) break; } while (type == tprot(addr + size)); if (type == CHUNK_READ_WRITE || type == CHUNK_READ_ONLY) { if (max_physmem_end && (addr + size > max_physmem_end)) size = max_physmem_end - addr; memblock_physmem_add(addr, size); } addr += size; } while (addr < max_physmem_end); memblock_set_bottom_up(false); if (!max_physmem_end) max_physmem_end = memblock_end_of_DRAM(); memblock_dump_all(); }

Contributors

PersonTokensPropCommitsCommitProp
Heiko Carstens14278.45%770.00%
Philipp Hachtmann3117.13%110.00%
David Hildenbrand63.31%110.00%
Michael Holzheu21.10%110.00%
Total181100.00%10100.00%


Overall Contributors

PersonTokensPropCommitsCommitProp
Heiko Carstens17162.64%758.33%
Philipp Hachtmann9233.70%18.33%
David Hildenbrand62.20%18.33%
Michael Holzheu20.73%18.33%
Hans-Joachim Picht10.37%18.33%
Greg Kroah-Hartman10.37%18.33%
Total273100.00%12100.00%
Directory: arch/s390/mm
Information contained on this website is for historical information purposes only and does not indicate or represent copyright ownership.
Created with cregit.