Subversion Repositories HelenOS

Rev

Rev 1787 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 1787 Rev 1880
Line 81... Line 81...
81
} hashed_service_t;
81
} hashed_service_t;
82
 
82
 
83
static void *clockaddr = NULL;
83
static void *clockaddr = NULL;
84
static void *klogaddr = NULL;
84
static void *klogaddr = NULL;
85
 
85
 
86
static void get_as(ipc_callid_t callid, ipc_call_t *call, char *name, void **addr)
86
static void get_as_area(ipc_callid_t callid, ipc_call_t *call, char *name, void **addr)
87
{
87
{
88
    void *ph_addr;
88
    void *ph_addr;
89
 
89
 
90
    if (!*addr) {
90
    if (!*addr) {
91
        ph_addr = (void *)sysinfo_value(name);
91
        ph_addr = (void *)sysinfo_value(name);
Line 114... Line 114...
114
        callid = ipc_wait_for_call(&call);
114
        callid = ipc_wait_for_call(&call);
115
        switch (IPC_GET_METHOD(call)) {
115
        switch (IPC_GET_METHOD(call)) {
116
        case IPC_M_AS_AREA_RECV:
116
        case IPC_M_AS_AREA_RECV:
117
            switch (IPC_GET_ARG3(call)) {
117
            switch (IPC_GET_ARG3(call)) {
118
            case SERVICE_MEM_REALTIME:
118
            case SERVICE_MEM_REALTIME:
119
                get_as(callid, &call, "clock.faddr", &clockaddr);
119
                get_as_area(callid, &call, "clock.faddr", &clockaddr);
120
                break;
120
                break;
121
            case SERVICE_MEM_KLOG:
121
            case SERVICE_MEM_KLOG:
122
                get_as(callid, &call, "klog.faddr", &klogaddr);
122
                get_as_area(callid, &call, "klog.faddr", &klogaddr);
123
                break;
123
                break;
124
            default:
124
            default:
125
                ipc_answer_fast(callid, ENOENT, 0, 0);
125
                ipc_answer_fast(callid, ENOENT, 0, 0);
126
            }
126
            }
127
            continue;
127
            continue;