/* * \brief Kernel specific data types * \author Martin stein * \date 2010-10-01 */ /* * Copyright (C) 2010-2013 Genode Labs GmbH * * This file is part of the Genode OS framework, which is distributed * under the terms of the GNU General Public License version 2. */ #ifndef _INCLUDE__KERNEL__TYPES_H_ #define _INCLUDE__KERNEL__TYPES_H_ #include #include #include namespace Kernel { using namespace Cpu; enum {THREAD_CREATE_PARAMS_ROOTRIGHT_LSHIFT=0}; struct Utcb_unaligned { enum { ALIGNMENT_LOG2 = 0, SIZE_LOG2 = Cpu::_4KB_SIZE_LOG2, }; union { volatile Cpu::byte_t byte[1<= sizeof(size_by_size_log2) / sizeof(size_by_size_log2[0])) return -2; if (size_by_size_log2[size_log2] == INVALID_SIZE) return -3; s = size_by_size_log2[(unsigned)size_log2]; return 0; } Cpu::size_t Kernel::Utcb_unaligned::size() { return (Cpu::size_t)1<