1/* 2 * Copyright 2003-2005, Axel D��rfler, axeld@pinc-software.de. All rights reserved. 3 * Distributed under the terms of the MIT License. 4 */ 5 6 7#include <OS.h> 8#include "syscalls.h" 9 10 11thread_id 12find_thread(const char *name) 13{ 14 // BeOS R5 applications also use this trick as find_thread was available 15 // in BeOS R5 OS.h as inline function. Do not change storage of thread id. 16 if (!name) { 17 thread_id thread; 18 __asm__ __volatile__ ( 19 "movl %%fs:4, %%eax \n\t" 20 : "=a" (thread)); 21 return thread; 22 } 23 return _kern_find_thread(name); 24} 25 26 27// see OS.h from BeOS R5 for the reason why we need this 28// there find_thread (see above) is provided as inline function 29extern thread_id _kfind_thread_(const char *name); 30 31 32thread_id 33_kfind_thread_(const char *name) 34{ 35 return _kern_find_thread(name); 36} 37 38 39extern thread_id _kget_thread_stacks_(thread_id thread, uint32 *stacks); 40 41status_t 42_kget_thread_stacks_(thread_id thread, uint32 *stacks) 43{ 44 // This one is obviously called from the R4.5 startup code. I am not 45 // exactly sure how it returns its infos, but just returning an 46 // error seems to work fine as well 47 return B_ERROR; 48} 49 50