29 lines
		
	
	
		
			565 B
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			29 lines
		
	
	
		
			565 B
		
	
	
	
		
			C
		
	
	
	
	
	
| 
 | |
| #include "syslib.h"
 | |
| #include "sysutil.h"
 | |
| 
 | |
| int sys_diagctl(int code, char *arg1, int arg2)
 | |
| {
 | |
|   message m;
 | |
| 
 | |
|   m.m_lsys_krn_sys_diagctl.code = code;
 | |
| 
 | |
|   switch(code) {
 | |
|   case DIAGCTL_CODE_DIAG:
 | |
| 	m.m_lsys_krn_sys_diagctl.buf = (vir_bytes)arg1;
 | |
| 	m.m_lsys_krn_sys_diagctl.len = arg2;
 | |
| 	break;
 | |
|   case DIAGCTL_CODE_STACKTRACE:
 | |
| 	m.m_lsys_krn_sys_diagctl.endpt = (endpoint_t)arg2;
 | |
| 	break;
 | |
|   case DIAGCTL_CODE_REGISTER:
 | |
| 	break;
 | |
|   case DIAGCTL_CODE_UNREGISTER:
 | |
| 	break;
 | |
|   default:
 | |
| 	panic("Unknown SYS_DIAGCTL request %d\n", code);
 | |
|   }
 | |
| 
 | |
|   return(_kernel_call(SYS_DIAGCTL, &m));
 | |
| }
 | 
