1/* 2 * Copyright (C) 2002 Jeff Dike (jdike@karaya.com) 3 * Licensed under the GPL 4 */ 5 6#include "linux/stddef.h" 7#include "linux/mm.h" 8#include "asm/uaccess.h" 9#include "mem_user.h" 10#include "kern_util.h" 11#include "kern.h" 12#include "tt.h" 13 14void before_mem_tt(unsigned long brk_start) 15{ 16 if(debug) 17 remap_data(UML_ROUND_DOWN(&_stext), UML_ROUND_UP(&_etext), 1); 18 remap_data(UML_ROUND_DOWN(&_sdata), UML_ROUND_UP(&_edata), 1); 19 remap_data(UML_ROUND_DOWN(&__bss_start), UML_ROUND_UP(&_end), 1); 20} 21 22#define SIZE ((CONFIG_NEST_LEVEL + CONFIG_KERNEL_HALF_GIGS) * 0x20000000) 23#define START (CONFIG_TOP_ADDR - SIZE) 24 25unsigned long set_task_sizes_tt(unsigned long *task_size_out) 26{ 27 unsigned long host_task_size; 28 29 /* Round up to the nearest 4M */ 30 host_task_size = ROUND_4M((unsigned long) &host_task_size); 31 *task_size_out = START; 32 33 return host_task_size; 34} 35