genode/base-nova/include/base/thread_state.h
Alexander Boettcher fcd62729d4 NOVA: tunnel thread start parameters via state()
The cpu_session interface fails to be virtualized by gdb_monitor because
platform-nova uses an extended nova_cpu_session interface.

The problem was that threads have been created directly at core without
knowledge of gdb_monitor. This lead to the situation that gdb_monitor didn't
know of all threads to be debugged.

Tunnel the additional parameters required on base-nova through the state()
call of the cpu_session interface before the thread actual is started.
2012-08-30 10:42:26 +02:00

35 lines
754 B
C++

/*
* \brief Thread state
* \author Alexander Boettcher
* \date 2012-08-09
*
* This file contains the NOVA specific thread state.
*/
/*
* Copyright (C) 2012-2012 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__BASE__THREAD_STATE_H_
#define _INCLUDE__BASE__THREAD_STATE_H_
#include <cpu/cpu_state.h>
namespace Genode {
struct Thread_state : public Cpu_state
{
bool transfer;
bool is_vcpu;
addr_t sel_exc_base;
Thread_state(bool trans = false) : Cpu_state(), transfer(trans),
is_vcpu(false), sel_exc_base(~0UL) {}
};
}
#endif /* _INCLUDE__BASE__THREAD_STATE_H_ */