IRC log for #htc-linux on 20130224

01:11.50*** join/#htc-linux detule (~detule@pool-108-40-44-60.bltmmd.east.verizon.net)
01:11.50*** join/#htc-linux detule (~detule@unaffiliated/d3tul3)
02:24.40jonpryhey detule
02:28.48detuleyou got this thing doing backflips yet?
02:31.57jonpryi got it to run a userland program while all hacked up
02:32.14jonpryi think lots of little bugs and one major one
02:32.56detulemajor one no nested exceptions?
02:33.05jonpryyeah
02:33.32jonpryi can't figure out why that is exactly
02:33.39detulei thought Cotulla said somehow the way you had the tables organized you didn't need nested exceptions
02:33.52jonpryfor mmu
02:34.25jonprynested exceptions are a whole different animal once a user program starts
02:34.39jonprybecause you get like a syscall
02:34.49jonpryand it does something
02:34.55jonpryand later you get an irq
02:35.34detulei see, where's that handled -> like the mmu exceptions i've seen the code you guys wrote
02:35.56jonprythere is a macro in coresys.S
02:36.07jonpryEXCEPTION_ENTER_HEAD
02:36.19jonpryand then those call into entry.S vectors
02:36.35jonpryi sort of understand where it is going wrong
02:36.44jonpryall entry.S problems
02:37.10jonprypart of the problem is this R19
02:37.27jonprywhich they specially reserve to point to something called a THREADINFO struct
02:37.45detulei take it that's not thread id
02:37.57jonpryno it's some pointer
02:38.17jonpryand i'm not sure how it is supposed to be located in the case of nested exceptions
02:38.25jonpryexcept that R19 should still be valid
02:38.39jonprythey do all this crap
02:38.49jonpry<PROTECTED>
02:38.49jonpry<PROTECTED>
02:38.50jonpry<PROTECTED>
02:38.50jonpry<PROTECTED>
02:38.50jonpry<PROTECTED>
02:38.50jonpry<PROTECTED>
02:39.07jonpryand then they fuck up the whole thing
02:39.15jonpry<PROTECTED>
02:39.15jonpry{ memw(R0 + #(_PT_R2928 + 4)) = R31; \
02:39.33jonpryso apparently VMPSP is stored in r30's memory
02:39.37jonprymakes tons of sense
02:39.49jonpryand r29 is never saved
02:40.08detulethey could have written better comments there
02:40.22jonpryi've yet to parse that statement
02:40.33jonpryany mental model of what it is doing seems to fail me
02:41.04jonprybut i don't really understand what THREAD_INFO is or where it is
02:42.19detuleis there any info in that patent doc - there was some stuff there about thread specific areas but i could be imagining things
02:42.40jonpryyeah i don't think that is related
02:42.59jonpryall the different architectures have this thread info pointer somewhere
02:43.07jonpryit seems to be required for the memory manager to work
02:43.32jonprythere is come code you can write, like current->mm
02:43.46jonprycurrent is essentially r19
02:44.42jonprycurrent also has a pointer to the saved register state or something. so it's like you have to modify it on nested events
02:48.37detuleis arch/arm any help in terms of what's stored in that threadinfo_reg
02:48.52jonpryi couldn't figure it out
02:49.12jonprythe thing is that irq doesn't really use it
02:49.26jonpryer
02:49.34jonprywell that isn't true
02:49.49jonpryi have no idea what is wrong with it. or how to debug it
02:51.28*** join/#htc-linux frank_ (c51fcd78@gateway/web/freenode/ip.197.31.205.120)
03:04.56jonpryit might be like many nested events or something
03:14.42jonpryfor some reason i can't change THREAD_SHIFT from 12
03:15.56jonpryR2.H = #HI(_THREAD_SIZE);
03:16.02jonpryR2.L = #LO(_THREAD_SIZE);
03:16.30jonpryR2 = neg(R2);
03:16.41jonpryR2 = and(R0,R2);
03:16.48jonpryr0 is stack pointer
03:17.06jonprywtf is that supposed to do when THREAD_SIZE = 0x1000 ?
04:47.16*** join/#htc-linux jonpry (~jon@2602:306:c417:8aa0:a1c6:f2bf:bcfa:9271)
05:52.31*** join/#htc-linux Bry8Star{T (~Bry8Star-@gateway/tor-sasl/bry8star-2)
06:21.15*** join/#htc-linux mes (~mes@sentry.lazo.ca)
07:48.47*** join/#htc-linux Marc (~quassel@phpbb/modifications/marc1706)
07:52.59*** join/#htc-linux Marc (~quassel@phpbb/modifications/marc1706)
08:00.49*** join/#htc-linux Marc (~quassel@phpbb/modifications/marc1706)
08:05.31*** join/#htc-linux Marc (~quassel@phpbb/modifications/marc1706)
09:07.21*** join/#htc-linux paulk-desktop (~paulk@lib33-1-82-233-88-171.fbx.proxad.net)
10:09.58*** join/#htc-linux BabelO (~fcr@2a01:e35:8adc:3150:21e:8cff:fe2d:7d3f)
10:09.58*** join/#htc-linux BabelO (~fcr@unaffiliated/babelo)
10:24.46*** join/#htc-linux DuperMan (~Duper@89-139-40-200.bb.netvision.net.il)
10:24.56*** join/#htc-linux kiozen (~kiozen@ppp-93-104-75-153.dynamic.mnet-online.de)
10:34.34*** join/#htc-linux helicopter88 (~helicopte@95.234.116.9)
10:42.30*** join/#htc-linux arif-ali (~arif-ali@94-192-24-56.zone6.bethere.co.uk)
11:06.29*** join/#htc-linux apt (~apt@rikers.org)
11:06.29*** topic/#htc-linux is Welcome to the HTC Linux project | Community portal & WiKi http://htc-linux.org | For IRC logs, HaRET & kernel mailing lists etc. see http://htc-linux.org/wiki/index.php?title=Contact | The htc-linux.org project is not affiliated with the HTC Corporation | This channel is for development purposes - Join #htc-linux-chat for offtopic
11:06.37Cotullahi
11:36.24*** join/#htc-linux stroughtonsmith (~steven@86-42-134-192-dynamic.b-ras1.bbh.dublin.eircom.net)
12:02.16*** join/#htc-linux rajkosto (~rajkosto@wan.rajkonet.info)
12:24.24Cotullajonpry, it should be ok I think. we have 3 types of exceptions to handle. 1)fault 2)interrupt 3)syscall
12:24.55Cotulla1)fault and 2)interrupt are assumed to executed with interrupts off, so stopped thread should be never preemted.
12:25.41Cotulla3)syscall - here we should enable interrupts to make it work, but one thread can execute code only at the one place -> so it also can not reenter into exception (I don't think inside sycall processing it will call another syscall...)
12:25.49Cotullaso I don't see a problem
12:26.09Cotullafor me it works up to the end of main() nice. spinning inside while (1) :)
12:26.24CotullaI fixed few serious errors inside code and will push today more later when come back
12:27.26Cotullathey use THREAD_SIZE to get pointer to thread_info from stack
12:27.38Cotullaby mask
12:27.44Cotullaso it can be only 4K 16K and etc
12:34.10Cotullaand aligned to size
12:54.52*** join/#htc-linux rajkosto (~rajkosto@wan.rajkonet.info)
13:08.41*** join/#htc-linux detule (~detule@unaffiliated/d3tul3)
13:13.17*** part/#htc-linux Cotulla (~myfakemai@109.205.253.11)
13:43.20*** join/#htc-linux helicopter88 (~helicopte@95.234.116.9)
13:51.00*** join/#htc-linux nIghtorius (~nIghtoriu@5ED5430F.cm-7-6b.dynamic.ziggo.nl)
13:53.44*** join/#htc-linux eR^zeRa` (~zzeratul@ip-94-112-113-32.net.upcbroadband.cz)
13:57.01*** join/#htc-linux nIghtorius`test (~nIghtoriu@5ED5430F.cm-7-6b.dynamic.ziggo.nl)
14:00.17*** join/#htc-linux ntg (~ntg@141.0.137.20)
14:31.37*** join/#htc-linux ntg-2 (~ntg@141.0.137.20)
15:21.37*** join/#htc-linux Bry8Star{T (~Bry8Star-@gateway/tor-sasl/bry8star-2)
15:41.41jonpryCotulla, i understand they use THREAD_SIZE as a mask
15:41.53jonprybut shouldn't it be THREAD_SIZE -1?
15:42.23jonprylike stack and neg(0x1000) doesn't yield anything usable
15:43.09jonpryi changed it to THREAD_SIZE-1 and it still runs for me but doesn't fix the nested exceptions
16:14.57*** join/#htc-linux detule (~detule@unaffiliated/d3tul3)
16:34.32*** join/#htc-linux gassedup (faxed@c-76-30-161-228.hsd1.tx.comcast.net)
17:16.43*** join/#htc-linux Cotulla (~myfakemai@109.205.253.11)
17:16.50Cotullahello
17:19.50Cotullajonpry, neg(0x1000) is  0xFFFFF000 I think
17:19.55Cotullaand it's valid mask
17:20.18Cotullakinda  (~(0x1000 - 1))
17:47.23*** join/#htc-linux detule (~detule@unaffiliated/d3tul3)
18:05.35Cotullawell they save R19 save_pt_regs ()
18:05.42Cotullaso where is a problem
18:06.13Cotullaand save_pt_regs is called before
18:06.28Cotullacalling C handler
18:06.34Cotullaso it should work well
18:07.22Cotullaanyone knows how to fix "warning unable to open an initial console"?
18:52.21*** join/#htc-linux mes (~mes@S0106000ce55186df.cc.shawcable.net)
19:35.03*** join/#htc-linux a-st (~a-st@unaffiliated/a-st)
19:46.30Cotullajonpry I pushed new stuff
19:46.35Cotullabut there are a lot of debug code
19:46.38Cotullabe careful
20:03.14*** join/#htc-linux rajkosto (~rajkosto@wan.rajkonet.info)
20:21.47*** join/#htc-linux helicopter88_2 (~helicopte@host242-115-dynamic.18-79-r.retail.telecomitalia.it)
20:35.49*** join/#htc-linux Rajko (~rajkosto@wan.rajkonet.info)
20:55.03*** join/#htc-linux {simonsimons34} (~SimonSick@50.2.8.91)
20:57.02*** join/#htc-linux {simonsimons34} (~SimonSick@unaffiliated/simonsimons34)
21:53.35*** join/#htc-linux arif-ali (~arif-ali@94-192-24-56.zone6.bethere.co.uk)
22:20.44*** join/#htc-linux rajkosto (~rajkosto@wan.rajkonet.info)
23:30.41*** join/#htc-linux eR^zeRa` (~zzeratul@ip-94-112-113-32.net.upcbroadband.cz)

Generated by irclog2html.pl Modified by Tim Riker to work with infobot.