From b138834ceb41f59f224584b56a05242ee50203ac Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=A9r=C3=B4me=20Duval?= Date: Tue, 9 Nov 2004 12:44:53 +0000 Subject: [PATCH] added a read only cloned area for real time data. untested yet. git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9880 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- src/kernel/core/real_time_clock.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/kernel/core/real_time_clock.c b/src/kernel/core/real_time_clock.c index 261459027e..727f484673 100644 --- a/src/kernel/core/real_time_clock.c +++ b/src/kernel/core/real_time_clock.c @@ -79,14 +79,20 @@ rtc_debug(int argc, char **argv) status_t rtc_init(kernel_args *ka) { + void *clonedRealTimeData; area_id area = create_area("real time data", (void **)&sRealTimeData, B_ANY_KERNEL_ADDRESS, PAGE_ALIGN(sizeof(struct real_time_data)), B_FULL_LOCK, B_KERNEL_READ_AREA | B_KERNEL_WRITE_AREA); if (area < B_OK) { - panic("rtc_init: error creating rtc region\n"); + panic("rtc_init: error creating real time data area\n"); return area; } - // ToDo: clone this area for userland read-only access + + if (clone_area("real time data userland", &clonedRealTimeData, B_CLONE_ADDRESS, + B_READ_AREA, area) < B_OK) { + dprintf("rtc_init: error creating real time data userland area\n"); + // we don't panic because it's not kernel critical + } rtc_hw_to_system();