Perl 6 - the future is here, just unevenly distributed

IRC log for #divine, 2017-09-14

| Channels | #divine index | Today | | Search | Google Search | Plain-Text | summary

All times shown according to UTC.

Time Nick Message
01:54 ilbot3 joined #divine
01:54 Topic for #divine is now DIVINE | http://divine.fi.muni.cz | http://irclog.perlgeek.de/divine/
11:29 xstill yaqwsx: když vidím vedle, že žiješ, asi jsi ještě neopravil ten up v sim, že?
11:34 xstill yaqwsx: jde mi o to, že budu potřebovat aby to fungovalo na fakosu, takže jsem se to jal opravovat
12:32 xstill yaqwsx: už je to jedno, mám to opravené
12:32 xstill zbývá napsat test a zarecordovat
12:46 mornfall xstill: a nešlo by to udělat nějak víc civilizovaně? třeba srovnat aktivní funkci s _VM_CR_FaultHandler?
12:48 xstill mornfall: díval ses alespoň jak to dělám?
12:48 mornfall jo, je to dost hrozný
12:49 xstill mornfall: srovnat s _VM_CR_FaultHandler nefunguje, protože to je jiná funkce, to je ten syscall co to celé spustí a ten je už na tom jiném zásobníku kam se potřebuju dostat
12:50 xstill a tohle funguje striktně líp než to před tím
12:53 mornfall tak jinak, proč nepokračovat na IntFrame pokud se dojde na konec kernel-mode zásobníku?
12:53 mornfall to by pak třeba fungovalo aj v ostatních syscallech?
12:57 xstill mornfall: to by šlo obecně přidat taky, ale nepříjde mi zrovna dobrý aby uživatel musel proskákat přes 4 rámce kernelu když nemá zapnutý --debug-kernel
12:57 xstill takže mi příjde smysluplný mít kdyžtak obojí
12:58 xstill co přesně ti na tom příjde hnusný?
13:06 mornfall protože to reálně není o nic obecněji použitelnější a navíc je to složitý... efektivně vyrábíš nějaký nedokumentovaný, neintuitivní rozhraní, který neslouží ničemu jinýmu než implementaci jednoho workaroundu
13:10 mornfall řešil bych to spíš tak, že: 1) v debugnode rámce kterej patří scheduleru bych nastavil atribut (buď caller, nebo nějaký nový, potřeba rozmyslet) podle intframe (je potřeba rozmyslet jak) -- tohle je obecně užitečná věc která vyjasní strukturu volání
13:12 mornfall 2) v up udělal zkratku typu, pokud patří rámec kernelu a není debug_kernel, tak vylez až na první non-kernel rámec
13:13 mornfall (to jestli je nebo není rámec v kernelu lze asi poznat podle nejspodnějšího rámce, kdyby ten atribut nebyl caller)
13:14 mornfall
13:23 xstill a IntFrame je tade v registru a ukazuje do __dios_trap u syscallu předpokládám?
13:24 xstill jakože zní mi to rozumně
13:28 xstill mornfall: anyway, ten bricks patch je bugfix který s tímhle nesouvisí
13:42 xheno mornfall: prave som zistil, ze ten interupt, co vkladam pri abstrakcii je '__vm_interrupt_cfl', ale co si ty vlozil do testu '2.sym-recursion-b' natvrdo tak je '__vmutil_interrupt'. Ktory je spravny?
13:43 xstill xheno: __vmutil_interrupt je tvrdý nepodmíněný interrupt, __vm_interrupt_cfl je pommíněný tím, že se v rámce jedné funkce (rámce) zavolá 2x
13:43 xstill pokud je to kvůli rekurzi tak _cfl nepomůže
13:44 xheno xstill: ok dik
19:17 xstill mornfall: nicméně stejně by bylo rozumný umět říct, že funkce je implementační detail a že se do ní nemá vcházet, přesto, že není kernel (typu, __lart_weakmem_*, __dios_trap, __dios_syscall, __sym_*,…), protože to, že step vleze do každýho __lart_weakmem je dost otrava a dost to pak vyžaduje od uživatele chápat implementační detaily fungování DIVINE

| Channels | #divine index | Today | | Search | Google Search | Plain-Text | summary