--- Log opened Thu Jul 17 00:00:23 2014 | ||
stekern | blueCmd_: that looks good, how did you do it? some libreoffice export-to-html feature? | 04:02 |
---|---|---|
stekern | I'd really would like to have a 'plain-text' intermediate markup version of it though | 04:03 |
maxpaln | So, after adding some printk's (well pr_info's) to the alloc_workqueue_key() function I have managed to induce an UNHANDLED_EXCEPTION from the Linux kernel. This looks like a good place to diagnose a HW problem :-) | 07:51 |
maxpaln | I am trying to decipher the stack trace from the crash to find an address to trigger for the ELA - | 07:52 |
chan1 | stekern: hi, I managed to run linux on qemu-or32 using or1k-linux-uclibc tools. thanks! | 07:54 |
maxpaln | The register dump lists PC, SR and SP - what's SP - this would appear to be the last address at the point when the crash occurred but I can't see any reference to it in the docs | 07:55 |
maxpaln | Hmmm, the stack dump is here: http://pastie.org/private/jfthpslbf41dthrqdbnya | 07:59 |
maxpaln | The bottom of the stack trace looks like this: | 08:00 |
maxpaln | sp + 368: 0xc01c21f4 | 08:00 |
maxpaln | sp + 372: 0x00000000 | 08:00 |
maxpaln | sp + 376: 0xc01d0f00 | 08:00 |
maxpaln | sp + 380: 0x00000000 | 08:00 |
maxpaln | sp + 384: 0x00000000 | 08:00 |
maxpaln | sp + 388: 0x00000000 | 08:00 |
maxpaln | sp + 392: 0x00000000 | 08:00 |
maxpaln | sp + 396: 0x00000000 | 08:00 |
maxpaln | 0xc01c21f4 -s the function unknown_bootoption() in the disassembled Linux Kernel | 08:00 |
maxpaln | what's interesting is that the crash occurred way before the point where I just added the printk's - the link above actually shows the previous boot and my debug code, the additional printk's were supposed to appear after the 'Inside init_workqueues 13' comment!! | 08:03 |
stekern | chan1: great! | 08:06 |
stekern | maxpaln: what's at 0xc0099268? | 08:10 |
maxpaln | It's a few instructions into slob_alloc_node() | 08:10 |
maxpaln | c0099258 <slob_alloc_node>: | 08:10 |
maxpaln | c0099258:d7 e1 77 f8 l.sw 0xfffffff8(r1),r14 | 08:10 |
maxpaln | c009925c:d7 e1 4f fc l.sw 0xfffffffc(r1),r9 | 08:10 |
maxpaln | c0099260:d7 e1 17 f4 l.sw 0xfffffff4(r1),r2 | 08:10 |
maxpaln | c0099264:a9 c3 00 00 l.ori r14,r3,0x0 | 08:10 |
maxpaln | c0099268:84 43 00 04 l.lwz r2,0x4(r3) | 08:10 |
maxpaln | c009926c:18 60 c0 1b l.movhi r3,0xc01b | 08:10 |
maxpaln | c0099270:9c 21 ff f4 l.addi r1,r1,0xfffffff4 | 08:10 |
stekern | 0xbc050000 doesn't look like an address that would make sense as the first address of that function | 08:12 |
maxpaln | 0xb0000000 is the SPI peripheral - but Linux doesn't know about that, I haven#t placed it in the dts file yet. | 08:14 |
maxpaln | I am trying to understand the stack trace enough to know where to jump into HW | 08:14 |
maxpaln | But to your point, yes: 0xbc050000 makes no sense for that function | 08:16 |
maxpaln | ok, I'm in business - I'm struggling to find a sensible address to jump into the middle of the error, so I'm tracing back from the call to die() | 08:42 |
maxpaln | seemingly it was caused by a page fault, I'm going in.... | 08:42 |
maxpaln | interestingly - this appears to have originated from a DLTB Miss | 08:55 |
maxpaln | I thought I had seen plenty of these - there are certainly plenty of ITLB Misses - not sure yet why this one results in an unhandled exception | 08:56 |
maxpaln | ah, the lightbulb moment: a good strategy would have been to trigger on the EPCR holding the value of PC in the register dump (i.e. 0xC0099268) - that's worth remembering! | 08:57 |
stekern | maxpaln: 0xbc050000 is a virtual address, not physical | 09:09 |
ysionneau | 10:55 < maxpaln> interestingly - this appears to have originated from a DLTB Miss < a page fault either come from itlb or dtlb miss (or access violation). Here since the fault address is different from the "PC of exception" (c0099268) and since the instruction in itself is a load, then it was almost surely a DTLB miss | 09:12 |
stekern | yeah, and that makes sense, since the address doesn't make sense | 09:13 |
stekern | i.e. backtrack what puts that wrong value in r3 | 09:13 |
blueCmd_ | stekern: yes, and a sed to remove CSS and background color | 09:17 |
maxpaln | interestingly, that is just where I had got to - | 09:25 |
raja | hi | 09:25 |
maxpaln | I have found the point where r3 gets written with 0xbc050000 | 09:25 |
maxpaln | but haven't worked out why yet | 09:25 |
-!- raja is now known as Guest31255 | 09:25 | |
maxpaln | it comes from here: | 09:25 |
maxpaln | c000222c <i_pmd_none>: | 09:25 |
maxpaln | c000222c:84 40 00 64 l.lwz r2,0x64(r0) | 09:25 |
maxpaln | c0002230:84 60 00 68 l.lwz r3,0x68(r0) | 09:25 |
Guest31255 | hi | 09:25 |
Guest31255 | i have a query reagrding installation of GNU tool chain in linux | 09:27 |
Guest31255 | occuring some errors | 09:27 |
Guest31255 | can anybdy help me | 09:27 |
Guest31255 | in instaling tools | 09:27 |
Guest31255 | easy way | 09:27 |
_franck__ | Guest31255: what's your problem ? | 09:29 |
blueCmd_ | Guest31255: please post a log of the errors you're getting | 09:29 |
stekern | maxpaln: you have to check in the beginning of that exception, is r3 already that value there? | 09:30 |
ams | and please use a pastebin for that .. | 09:30 |
Guest31255 | i am publishing errors please find it | 09:30 |
Guest31255 | make[4]: *** [or1k-asm.lo] Error 1 make[4]: Leaving directory `/home/aceic18/openrisc/build-or1k-src/opcodes' make[3]: *** [all-recursive] Error 1 make[3]: Leaving directory `/home/aceic18/openrisc/build-or1k-src/opcodes' make[2]: *** [all] Error 2 make[2]: Leaving directory `/home/aceic18/openrisc/build-or1k-src/opcodes' make[1]: *** [all-opcodes] Error 2 make[1]: Leaving directory `/home/aceic18/openrisc/build-or1k-src' make | 09:30 |
ams | Guest31255: please .. PLEASE use a pastebin | 09:31 |
_franck__ | ...and full log | 09:31 |
ams | Guest31255: and when you do use a pastebin, PLEASE post the FULL log | 09:31 |
ams | or at least the full error. | 09:31 |
Guest31255 | i am following OpenRISC GNU tool chain : liunux installation guideliens | 09:32 |
Guest31255 | ok i will do it | 09:32 |
Guest31255 | may i know how to use pastebin | 09:32 |
maxpaln | hmmm, the plot thickens - address 0x68 had already been written with the wrong value during a previous ITLB miss | 09:32 |
maxpaln | the witch hunt continues... | 09:33 |
ams | Guest31255: if you don't know how to use, or find a pastebin, i think then you have no business in compiling a tool chain. but that is me. | 09:33 |
ams | http://pastebin.com | 09:33 |
Guest31255 | hi ams | 09:44 |
Guest31255 | i am copying reruning the script | 09:44 |
Guest31255 | once it reports i will paste and send it | 09:44 |
Guest31255 | in detalis | 09:44 |
Guest31255 | it took time to explore pastebin | 09:44 |
Guest31255 | can you have alook now | 09:49 |
Guest31255 | http://pastebin.com/W07xNHNb | 09:49 |
_franck__ | NOTE: on 32-bit machines --disable-werror is needed due to an enum acting as bit mask is considered signed | 09:51 |
ams | pass --disable-werror. | 09:51 |
_franck__ | don't you have a 32-bits machine ? | 09:51 |
blueCmd_ | actually that is needed for newer gccs I'm pretty sure | 09:53 |
Guest31255 | my machine is 32-bit | 09:53 |
blueCmd_ | so then it's definitely needed | 09:53 |
blueCmd_ | Guest31255: it's important to read all of the instructions, these are complex stuff | 09:53 |
Guest31255 | can you let me know where the installation procedure has bee published in detail | 09:56 |
Guest31255 | i am following the procedure mentined in the opencores | 09:57 |
ams | that is the detailed document. | 09:58 |
ams | http://opencores.org/or1k/OpenRISC_GNU_tool_chain#Linux_.28uClibc.29_toolchain_.28or1k-linux-uclibc.29 | 09:58 |
ams | where it says, as _franck__ already mentioned, that you need to pass --disable-werror for 32-bit hosts. | 09:58 |
ams | you even pasted the same line yourself. | 10:00 |
Guest31255 | yeah aplozie i have missed the line | 10:02 |
Guest31255 | and tryingto debug the script | 10:03 |
ams | how about following the instructions first ... | 10:04 |
Guest31255 | yeah every thing is goingfine until now | 10:05 |
Guest31255 | with the option for 32-bit machine able to solve the problem | 10:05 |
ams | ok, you clearly do not want help. | 10:06 |
* ams goes back to hacking. | 10:06 | |
Guest31255 | right now i dont have anyproblem ams | 10:07 |
Guest31255 | as i am new from one week i am exploring this open risc and trying t study it on my own reading documents | 10:07 |
Guest31255 | i am working ne an example created by waqas ahmed developed for cpu subsystem level | 10:08 |
Guest31255 | tb | 10:08 |
Guest31255 | i am going through the code and installing the gnu tools | 10:08 |
blueCmd_ | Who is Waqas Ahmed? | 10:08 |
Guest31255 | mentioned in the opencores only | 10:09 |
Guest31255 | wait will point to that | 10:09 |
Guest31255 | http://opencores.org/or1k/OR1200_OpenRISC_Processor | 10:10 |
Guest31255 | section verification | 10:10 |
Guest31255 | you can find his name and dwonload link to it | 10:10 |
Guest31255 | i am using his code and trying to understand the arch of openrisc | 10:11 |
Guest31255 | if there is any way to understand risc processor better please let me know | 10:11 |
Guest31255 | digging my self is becoming really deifficult | 10:12 |
Guest31255 | my intension is to lear risc processor and stich and soc with some peripherals using opencores ips | 10:12 |
Guest31255 | please help me for that | 10:13 |
Guest31255 | i mean give a direction to rpoceed further | 10:13 |
Guest31255 | proceed further | 10:13 |
blueCmd_ | "to learn" | 10:13 |
Guest31255 | thats will be really help ful | 10:13 |
blueCmd_ | what do you want to learn? | 10:13 |
Guest31255 | i mean understand risc processor architecture | 10:13 |
blueCmd_ | you cannot just "absorb" openrisc, it's huge | 10:13 |
blueCmd_ | well, http://opencores.org/websvn,filedetails?repname=openrisc&path=%2Fopenrisc%2Ftrunk%2Fdocs%2Fopenrisc-arch-1.1-rev0.pdf | 10:14 |
blueCmd_ | that would be the document to read then | 10:14 |
Guest31255 | i want to work on architeture and integarte it in UVM envirorment | 10:14 |
Guest31255 | with existing opencores ip in it | 10:15 |
Guest31255 | that is my main internetion | 10:15 |
Guest31255 | intension | 10:15 |
maxpaln | Ok, an update - tracing back through with the ELA, I have traced the errant assignment to r3: A call to kmem_cache_alloc() from within copy_process() triggers an ITLB miss - just prior to the call to kmem_cache_alloc() r3 is written with the contents of address 0xc031c0b4 - the ELA shows me this is 0xbc050000 | 10:16 |
maxpaln | c0008ff0:18 e0 c0 31 l.movhi r7,0xc031 | 10:16 |
maxpaln | c0008ff4:9c 80 00 d0 l.addi r4,r0,0xd0 | 10:16 |
maxpaln | c0008ff8:a8 e7 c0 b4 l.ori r7,r7,0xc0b4 | 10:16 |
maxpaln | c0008ffc:04 02 40 be l.jal c00992f4 <kmem_cache_alloc> // This call to kmem_cache_alloc | 10:16 |
maxpaln | c0009000:84 67 00 00 l.lwz r3,0x0(r7) // address 0xc031c0ba contains 0xbc05000 at this stage | 10:16 |
maxpaln | This is a very specific address - I am going to trigger on this address and see if I can spot anything odd. | 10:16 |
blueCmd_ | Guest31255: that's not an intention, that's a losely defined approach. what do you want to do more exactly? | 10:16 |
Guest31255 | understand risc processor and tring to create an envirorment in UVM based soc with ( processors+ opencore ips) | 10:18 |
blueCmd_ | Guest31255: and the problem is? | 10:19 |
blueCmd_ | what you're saying is 'I want to use one of multiple CPU implementations and 1000's of cores' | 10:20 |
blueCmd_ | it doesn't make it easy to help you | 10:20 |
Guest31255 | ok may i know the reason | 10:20 |
Guest31255 | ? | 10:20 |
Guest31255 | you mean its really huge | 10:20 |
Guest31255 | to understand | 10:21 |
stekern | maxpaln: if you objdump with -D and search for c031c0ba, you should find the global too | 10:21 |
blueCmd_ | .. because the permutations of the configurations you can do is like 1000^1000 | 10:21 |
blueCmd_ | Guest31255: just pick something practial to build ('I want to run a Hello World program') and do that | 10:22 |
blueCmd_ | that will bring down the problem to a manageable size | 10:22 |
Guest31255 | ok blueCmd | 10:23 |
Guest31255 | then can you suggest me how to understand Open Risc | 10:23 |
Guest31255 | architecture | 10:23 |
Guest31255 | in aplication point f view | 10:24 |
stekern | read the architecture specification? | 10:24 |
blueCmd_ | well, http://opencores.org/websvn,filedetails?repname=openrisc&path=%2Fopenrisc%2Ftrunk%2Fdocs%2Fopenrisc-arch-1.1-rev0.pdf | 10:24 |
blueCmd_ | which I already linked | 10:24 |
Guest31255 | like creating hex file and converting and linking into rom and read through the processor - creating this flow using verilog and c | 10:25 |
Guest31255 | i want to understand this follow in depth with architecture knowledge | 10:25 |
blueCmd_ | "creating hex file and converting and linking into rom". I would start by learning how linking works | 10:25 |
blueCmd_ | and not OpenRISC specific, generally. You seem to lack knowledge there | 10:25 |
Guest31255 | yes i dont have knowledge on it | 10:26 |
Guest31255 | i want to know diggin aboutit came to this webpage | 10:26 |
Guest31255 | opencores | 10:26 |
Guest31255 | Any reference on linking working procedure | 10:27 |
blueCmd_ | google.com | 10:27 |
blueCmd_ | or bing.com | 10:27 |
Guest31255 | ok thanks for sugesstions sorry to disturb with basic doubts | 10:27 |
blueCmd_ | ams: did we talk about a non-wiki website before? | 10:31 |
blueCmd_ | or was that someone else? | 10:31 |
maxpaln | stekern: nice tip! | 10:32 |
blueCmd_ | stekern: I want to learn openrisc, please do the work for me | 10:43 |
maxpaln | hmmm, interesting - I can trace 3 accesses to this memory address: An initial write of 0x0, A second write of a valid address (didn't take note but something like 0xc0210000) then a read that returns oxbc050000 | 10:49 |
maxpaln | My expert eye tells me this is suspicious.... | 10:49 |
maxpaln | as usual, the finger is pointing back towards me :-) | 10:49 |
maxpaln | recompiling the FPGA code with new triggers - lunch time for me... | 10:50 |
ams | blueCmd_: someone else i think | 10:54 |
ams | blueCmd_: i don't do much openrisc work ... non actually is a more apt explanation of what i do :-) | 10:54 |
ams | i just hang here cause you guys are awesome. | 10:55 |
* ysionneau just likes to read the nerdy stuff that are going on here | 10:58 | |
ams | (and i have a secret crush on olofk's beard) | 10:58 |
ysionneau | ahah | 11:00 |
blueCmd_ | ams: who doesn't? | 11:01 |
ams | blueCmd_: I KNOW!!! | 11:01 |
blueCmd_ | ams: ysionneau: would you prefer http://opencores.org/or1k/Main_Page or http://bluecmd.github.io/ ? | 11:02 |
ams | http://opencores.org/or1k/Main_Pag | 11:02 |
ams | e | 11:02 |
ams | assuming it is some offical wiki and such .. | 11:02 |
blueCmd_ | how come? | 11:02 |
ams | well... it is a wiki for or1k, by or1k people? | 11:03 |
blueCmd_ | it's not by or1k people, that's the problem | 11:03 |
blueCmd_ | opencores is.. weird | 11:03 |
ams | mm | 11:03 |
ams | well, i'd still prefer that one .. | 11:03 |
ams | the other one makes me think that it is your wiki | 11:04 |
ams | for your stuff | 11:04 |
blueCmd_ | ams: it will be relocated to 'openrisc.net' if it becomes official | 11:04 |
ams | oh, so just a test thing? | 11:04 |
blueCmd_ | so don't think much of the domainname | 11:04 |
blueCmd_ | ams: yes | 11:04 |
ams | oh, then i don't care :-) | 11:04 |
ams | pick one that is easiest to setup! | 11:04 |
blueCmd_ | bluecmd.github.io is just a git repo that is hosted by github, and they support CNAMEs, so we can use openrisc.net for it if we want to. and if anyone wants to change something they can just fork the repository and submit a pull request, or add a github Issue | 11:05 |
blueCmd_ | so I think "my" thing is easier, but I'm biased | 11:06 |
ams | more important is to make things work, than to make them pretty. | 11:07 |
blueCmd_ | yes | 11:08 |
blueCmd_ | for this demo I just ran some of our biggest wiki pages through a converter and stuck it up on that thing | 11:09 |
ysionneau | blueCmd_: the 2nd page is definetely more sexy | 11:09 |
ysionneau | and I never very liked the mixing of opencores and openrisc | 11:10 |
ams | i love people mirroring shit .. | 11:18 |
blueCmd_ | ams: then you will looove my next trick | 11:25 |
ams | blueCmd_: what? :) | 11:25 |
blueCmd_ | ams: it's not ready yet, but later today! :) | 11:25 |
ams | nooooooo | 11:26 |
* ams mirrors a mirror. | 11:27 | |
rajasravan | hi all i am having build GCC error , Any sugesstions | 12:21 |
rajasravan | http://pastebin.com/raw.php?i=cd651jJx | 12:21 |
ams | reading the error message? | 12:21 |
blueCmd_ | rajasravan: configure: error: Building GCC requires GMP 4.2+, MPFR 2.4.0+ and MPC 0.8.0+. | 12:22 |
ams | nor is it a build error. | 12:22 |
ams | no building was commenced. | 12:22 |
rajasravan | tried with options --with-gmp, --with-mpfr and/or --with-mpc but how to locate the GMP 4.2+, MPFR 2.4.0+ and MPC 0.8.0+ | 12:23 |
blueCmd_ | rajasravan: *sigh* you need to install those libs | 12:23 |
ams | what is it today with these questions? | 12:23 |
blueCmd_ | apt-get install libmpc-dev libmpfr-dev libgmp-dev | 12:23 |
blueCmd_ | if you're running debian | 12:23 |
rajasravan | linux | 12:23 |
ams | is a kernel. | 12:24 |
rajasravan | ok thanks | 12:24 |
maxpaln | It's confirmed as a bug - and the finger of blame is hovering like damocles' sword! Tracking it down now - but thank you all again for your assistance. It's getting a little easier with each bit I learn... | 12:47 |
ysionneau | :) | 12:47 |
blueCmd_ | maxpaln: what was the bug? | 12:50 |
maxpaln | not sure yet - but it is in my memory controller. Which is predictable once this had been established as a HW problem - the rest of the HW is largely vanilla ORPSOC | 12:50 |
maxpaln | ams: My cat is sitting on my papers. Can you help? | 12:50 |
ams | maxpaln: take a butane torch, light the cat on fire. | 12:51 |
_franck__ | :) | 12:51 |
ams | maxpaln: that will solve the problem. | 12:51 |
maxpaln | thanks, but I am trying to understand the cat - why is it sitting on the papers? | 12:52 |
maxpaln | Can you help? | 12:52 |
ams | maxpaln: ask the cat | 12:52 |
ams | or, zap it with a dog transofmration gun, and then i can ask it for you .. since i only speak dog. | 12:53 |
ams | my services are free for newly converted cats | 12:53 |
maxpaln | I need information on this gun - it sounds great. Can you help? | 12:54 |
maxpaln | [let me know if this gets boring - I am smiling a lot as I type] | 12:54 |
ams | maxpaln: do you mean if it is working properly? | 12:54 |
maxpaln | It definitely isn't working | 12:54 |
maxpaln | which end is the front | 12:55 |
ams | maxpaln: oh, ok. load it up with some ammo, and give it to the dog, or cat .. depending on if you have converted the cat. | 12:55 |
maxpaln | hang on - I think I have it | 12:55 |
ams | *splat* | 12:55 |
ams | >/( | 12:55 |
ams | :-) | 12:55 |
maxpaln | woof | 12:55 |
maxpaln | woof woof | 12:55 |
maxpaln | miaow | 12:55 |
maxpaln | woof | 12:55 |
blueCmd_ | haha | 12:59 |
blueCmd_ | what is goooing on | 12:59 |
ams | blueCmd_: dunno, maxpaln was trying a transformation gun ... i think he transformed himself into a chiwawa (or whatever the spelling is) and now is incapable of coneverting himself back to human shape.. | 13:00 |
blueCmd_ | happens to me at the worst of times | 13:00 |
ysionneau | that's what happen when you try to debug a DDR controller :) | 13:00 |
maxpaln | back in the room now - thankfully the cat helped me out! :-) | 13:01 |
maxpaln | it can sit on the papers as much as it wants now :-) | 13:01 |
maxpaln | Thatll teach me for asking dumbass questions! | 13:01 |
stekern | man cat? | 13:21 |
blueCmd_ | ams: https://github.com/freecores | 13:58 |
blueCmd_ | olofk: https://github.com/freecores | 13:59 |
olofk | blueCmd_: Is that a dump of the opencores svn repos? | 14:22 |
olofk | And btw, yes, OpenCores is a registered trademark, and OpenRISC might be too actually | 14:23 |
blueCmd_ | olofk: yes, it is | 14:23 |
blueCmd_ | olofk: good that I didn't use OpenCores then | 14:24 |
olofk | Jesus christ, what a mess :) | 14:24 |
blueCmd_ | there are ~100 projects I was unable to mirror in the first sync, because the SVN server sucks | 14:24 |
blueCmd_ | I skipped the 300 empty projects | 14:25 |
olofk | But isn't freecores already a thing? | 14:25 |
olofk | Yep. They have their stuff on sourceforge | 14:26 |
blueCmd_ | seems to be super dead | 14:26 |
blueCmd_ | anyway, changing name is easy | 14:26 |
olofk | Yes, extremely dead | 14:26 |
olofk | Yeah, it's nice to have a backup of opencores | 14:27 |
blueCmd_ | so, about that | 14:31 |
blueCmd_ | is it possible to make this the primary source? | 14:31 |
blueCmd_ | I mean, we track patches and stuff in orpsoc, wouldn't it be nice to actually merge them in the repos? | 14:32 |
blueCmd_ | also, you could remove the hard dependency on svn ;) | 14:32 |
stekern | olofk: openrisc is not registered | 14:46 |
stekern | at least not afaik | 14:47 |
blueCmd_ | even so I think it would not be enforceable | 14:48 |
blueCmd_ | prior work and so on | 14:48 |
blueCmd_ | stekern: juliusb: jeremy_bennett: _franck_: you got mail | 14:49 |
stekern | http://tmsearch.uspto.gov/bin/showfield?f=toc&state=4808%3A34xmep.1.1&p_search=searchss&p_L=50&BackReference=&p_plural=yes&p_s_PARA1=&p_tagrepl~%3A=PARA1%24LD&expr=PARA1+AND+PARA2&p_s_PARA2=openrisc&p_tagrepl~%3A=PARA2%24COMB&p_op_ALL=AND&a_default=search&a_search=Submit+Query&a_search=Submit+Query | 14:52 |
stekern | blueCmd_: nice! | 14:54 |
-!- Netsplit *.net <-> *.split quits: mafm, bentley` | 15:02 | |
blueCmd_ | I'm stirring the hornet's nest | 15:11 |
stekern | who's the queen b(ee)? | 15:16 |
blueCmd_ | whoever is behind OpenCores I guess :P | 15:18 |
blueCmd_ | dalias: remeind me, what kind of compability are you looking at for musl compared to glibc? | 18:57 |
dalias | at the source or binary level? | 18:59 |
blueCmd_ | source | 18:59 |
dalias | basically musl implements the posix interfaces, plus some yet-to-be-documented set of extensions (both additional functions and extensions to standard functions) which aim to be compatible with glibc in what's implemented | 19:03 |
dalias | the main criteria for exclusion of extensions is when they have severely incompatible definitions across different systems (e.g. qsort_r with opposite argument order on bsd vs gnu) or preclude an efficient or fail-safe implementation of something that would otherwise be efficient/fail-safe | 19:04 |
dalias | for inclusion, there generally also needs to be some level of demand, and some argument that adding the extensions is easier or better than making the software work without them | 19:06 |
dalias | btw i have a possible counter-proposal for explicit_bzero: | 19:10 |
dalias | explicit_use | 19:11 |
dalias | basically you pass a pointer to it, and it doesn't do anything except formally depend on the value of the object pointed to | 19:12 |
blueCmd_ | dalias: ack! | 19:13 |
blueCmd_ | thanks for explaining | 19:13 |
dalias | oops wrong place | 19:14 |
dalias | i meant for that last part in #musl :) | 19:14 |
blueCmd_ | <[email protected]>: | 19:14 |
blueCmd_ | Invalid mime type "text/html" detected in message text or | 19:14 |
blueCmd_ | attachment. Please send plain text messages only. | 19:14 |
blueCmd_ | *sigh* | 19:15 |
dalias | haha | 19:15 |
dalias | that probably does improve the quality of posts to the list... | 19:15 |
dalias | i've never seen html email without horribly-broken quoting/threading | 19:15 |
blueCmd_ | hehe | 19:15 |
rah | burn blueCmd_! | 20:52 |
rah | heretic! | 20:52 |
dalias | stekern, i found one bug but i can fix it if you like | 21:01 |
dalias | +#ifdef __clang__ | 21:01 |
dalias | + char *tp; | 21:01 |
dalias | + __asm__ __volatile__ ("l.ori %0, r10, 0" : "=r" (self) ); | 21:01 |
dalias | tp vs self :) | 21:01 |
stekern | dalias: nice catch, reveals that I haven't tried compiling with clang ;) | 21:07 |
dalias | is there even clang support for or1k yet? | 21:08 |
stekern | yes, I did a backend some 2 years ago | 21:08 |
dalias | cool | 21:08 |
stekern | and recently some italian(?) students have brought it in sync with current upstream | 21:09 |
stekern | been on my todo list to merge their work in to our repo | 21:10 |
dalias | oh about __syscall and stack args | 21:12 |
dalias | is that right for variadic? | 21:12 |
dalias | now that i think about it, i think we already discussed this in a different area and the answer was yes | 21:12 |
stekern | should be | 21:13 |
blueCmd_ | rah: :P | 21:17 |
olofk | blueCmd_: Put the text in a word document and attach it instead | 21:43 |
stekern | blueCmd_: https://github.com/bluecmd/or1k-glibc/blob/master/ports/sysdeps/or1k/jmpbuf-offsets.h#L19 <- shouldn't that be: #define __JMP_BUF_SP 0 | 21:43 |
stekern | ? | 21:43 |
blueCmd_ | what is it? :) | 21:44 |
blueCmd_ | I wrote this a long time ago.. | 21:45 |
blueCmd_ | aha | 21:45 |
stekern | ok, I think that's actually right now, but it will be wrong after we consolidate it with musl | 21:46 |
blueCmd_ | it's supposed to be r1 right? | 21:46 |
blueCmd_ | or r2? | 21:46 |
stekern | the name suggest r1 at least | 21:47 |
blueCmd_ | I think jumpbuf[0] is SR | 21:47 |
blueCmd_ | https://github.com/bluecmd/or1k-glibc/blob/master/ports/sysdeps/or1k/bits/setjmp.h seems to say that anyway | 21:47 |
blueCmd_ | which is disabled in setjmp | 21:48 |
blueCmd_ | and not restored | 21:48 |
blueCmd_ | I would agree on changing it | 21:49 |
blueCmd_ | (so far 3/3 people are supportive of my crusade, it's nice knowing i'm not insane) | 21:58 |
stekern | another note, iirc, we use the byte syntax for asm .align | 22:08 |
stekern | https://github.com/bluecmd/or1k-glibc/blob/master/ports/sysdeps/or1k/__longjmp.S#L30 | 22:10 |
blueCmd_ | woops | 22:12 |
blueCmd_ | fixed | 22:12 |
stekern | I've done the setjmp/__longjmp changes btw | 22:14 |
blueCmd_ | stekern: in musl? | 22:18 |
stekern | http://pastie.org/9401088 | 22:18 |
blueCmd_ | once I get my mexiko platform up and running I will put some effort into glibc I think, getting it to a stage where it's upstreamable is paramount to Debian | 22:19 |
blueCmd_ | stekern: thanks! you forgot the align though ;) | 22:19 |
stekern | you said 'fixed' already ;) | 22:20 |
blueCmd_ | hah | 22:20 |
stekern | I can fix that and do a proper commit for you | 22:20 |
blueCmd_ | stekern: I have a proper commit for alignment | 22:21 |
blueCmd_ | stekern: pastebin mangles the tab though so the patch doesn't apply | 22:21 |
blueCmd_ | but I can apply it myself, it's easy enough | 22:22 |
stekern | really? even if you use this? http://pastie.org/pastes/9401088/download | 22:25 |
blueCmd_ | yep | 22:25 |
* stekern thinks blueCmd_ didn't try | 22:26 | |
blueCmd_ | stekern: I ctrl-c'd the /text version | 22:27 |
blueCmd_ | if that's not the same, I didn't try | 22:27 |
stekern | the download is not the same | 22:27 |
blueCmd_ | then I didn't try | 22:28 |
blueCmd_ | and I'm a bad person for lying | 22:28 |
stekern | =P | 22:29 |
blueCmd_ | https://github.com/bluecmd/or1k-glibc/commit/eb5b784c24974136a505e35eb2e5aa5261796ca9 | 22:30 |
blueCmd_ | stekern: http://pastie.org/9401088#51 | 22:31 |
blueCmd_ | now we're equally bad | 22:31 |
stekern | oops... | 22:32 |
stekern | I probably should get one of these http://www.bigkeys.com/productcart/pc/viewPrd.asp?idcategory=2&idproduct=1 | 22:33 |
blueCmd_ | maybe it's very small | 22:34 |
stekern | "For Adults with advanced keyboard needs, who require large keys in order to locate and operate a keyboard." | 22:36 |
blueCmd_ | everything is relative | 22:37 |
blueCmd_ | maybe it's adult ants | 22:37 |
stekern | there's this too: http://www.bigkeys.com/productcart/pc/viewCategories.asp?idCategory=7 | 22:39 |
stekern | that states the size | 22:39 |
blueCmd_ | I might be able to expense one of those keyboards at work... | 22:39 |
stekern | "I've got advanced keyboard needs" | 22:40 |
-!- Netsplit *.net <-> *.split quits: ssvb, heroux | 22:51 | |
-!- Netsplit *.net <-> *.split quits: jonmasters, rah, chan1, Amadiro, ysionneau, xlro, wallento, arokux, fotis2, zama, (+19 more, use /NETSPLIT to show all of them) | 22:52 | |
-!- Netsplit over, joins: FreezingCold, O01eg, trevorman, rah, jeremy_bennett, xlro, _franck_, simoncook, olofk, rokka (+21 more) | 22:53 | |
-!- Netsplit *.net <-> *.split quits: wallento, trevorman, Amadiro, rokka | 22:54 | |
-!- Netsplit *.net <-> *.split quits: zama, simoncook, knz, olofk | 22:55 | |
-!- Netsplit over, joins: trevorman, rokka, Amadiro, wallento | 22:55 | |
blueCmd_ | hm, I should revert https://github.com/bluecmd/or1k-gcc/commit/35f3c9f696aa9a204ca91b5502cb4036695cf6d2 | 23:06 |
--- Log closed Fri Jul 18 00:00:24 2014 |
Generated by irclog2html.py 2.15.2 by Marius Gedminas - find it at mg.pov.lt!