mirror of
https://github.com/genodelabs/genode.git
synced 2024-12-27 09:12:32 +00:00
fcd62729d4
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.
35 lines
754 B
C++
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_ */
|