Cas

Pavel Kankovsky peak na argo.troja.mff.cuni.cz
Sobota Říjen 31 23:41:22 CET 2015


On Fri, 30 Oct 2015, Martin Mokry wrote:

> Priame nacitanie casu zafungovalo:
>
> [root na localhost ~]# hwclock --show --directisa
> Pi 30. október 2015, 12:16:03 CET  .719576 seconds

Takže to nějak funguje...

Ale jádro ty údaje kdovíproč nepřežvýká...

Zkuste nainstalovat SystemTap a uložit níže přiložený skript do souboru, 
řekněme rtc.stp, a pak provést "stap rtc.stp", jinde spustit něco, co 
sáhne na RTC (např. již zmíněný příkaz "cat /proc/driver/rtc"), a pak se 
podívat na to, co vypsal ten stap?

Mělo by to správně vyprodukovat něco jako:

cmos_read_time --> 0
rtc_valid_tm: *tm = { sec:7, min:31, hour:22, mday:31, mon:9, year:115, wday:0, yday:0, isdst:0 } --> 0
__rtc_read_time --> 0
rtc_read_time --> 0


A tady je ten slíbený rtc.stp:

---snip---
probe kernel.function ("cmos_read_time").return
{
   printf("cmos_read_time --> %d\n", $return);
}

probe kernel.function ("rtc_valid_tm").return
{
   printf("rtc_valid_tm: *tm = { sec:%d, min:%d, hour:%d, mday:%d, mon:%d, year:%d, wday:%d, yday:%d, isdst:%d } --> %d\n", $tm->tm_sec, $tm->tm_min, $tm->tm_hour, $tm->tm_mday, $tm->tm_mon, $tm->tm_year, $tm->tm_wday, $tm->tm_yday, $tm->tm_isdst, $return);
}

probe kernel.function ("__rtc_read_time").return
{
   printf("__rtc_read_time --> %d\n", $return);
}

probe kernel.function ("rtc_read_time").return
{
   printf("rtc_read_time --> %d\n", $return);
}
---snip---


-- 
Pavel Kankovsky aka Peak                      "Que sais-je?"


Další informace o konferenci Linux