15:10.09 | *** join/#htc-linux apt (~apt@rikers.org) |
15:10.09 | *** 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 |
15:34.01 | *** join/#htc-linux Bry8Star (~Bry8Star@gateway/tor-sasl/bry8star) |
15:38.01 | *** join/#htc-linux zeusk (77eb3613@gateway/web/freenode/ip.119.235.54.19) |
15:38.25 | zeusk | marc1706, you there ? |
15:40.17 | zeusk | i think i know why ramconsole PTE was crashing us |
15:41.26 | zeusk | we were using 2FFC0000 as the physical and virtual address for mapping, but it should have been MB aligned, 2FF00000, apart from that i think section shift was wrong too |
15:48.42 | *** join/#htc-linux jonpry (~jon@c-24-17-200-206.hsd1.wa.comcast.net) |
15:49.23 | *** join/#htc-linux DuperMan (~Duper@89-139-35-50.bb.netvision.net.il) |
15:50.35 | *** join/#htc-linux Alex[sp3dev] (d5551202@gateway/web/freenode/ip.213.85.18.2) |
15:50.59 | zeusk | jonpry, i just noticed, official caf branch has msm_kexec, that didn't work ootb ? |
15:52.03 | jonpry | didn't try |
15:52.27 | jonpry | and droid3 is omap4 |
15:52.41 | zeusk | (sgs3) |
15:53.24 | zeusk | oh, btw I'm looking for some good c library, nothing too bloated, any suggestions ? |
15:53.46 | jonpry | for the cortex? |
15:53.59 | zeusk | yep, A8 |
15:54.22 | jonpry | oh not the m0? |
15:54.38 | Alex[sp3dev] | zeusk: netbsd libc? |
15:54.57 | zeusk | nope, not yet, I will fix it later for the tiny 8kb ram and thumb only restriction |
15:55.22 | zeusk | will have to disable scheduler and threads in tiny version |
15:55.23 | jonpry | uclibc? |
15:55.48 | zeusk | i tried a few in lk and results are actually awkward |
15:56.11 | zeusk | bionic libc was the fastest among them all (with some modifications) |
15:56.42 | Alex[sp3dev] | that's no surprise since it has tiny structures and all data is aligned |
15:56.56 | zeusk | probably due to qualcomm's OPTIMISE_SCORPION poop |
15:57.24 | Alex[sp3dev] | #ifndef OPTIMIZE_SCORPTION do { msleep(10) } while (0) #endif? |
15:57.34 | zeusk | lol, no |
15:58.11 | *** join/#htc-linux l0wbra1n (~l0wbra1n@unaffiliated/l0wbra1n) |
15:58.36 | zeusk | they're using Venum unit for memcpy, memset, memmove but my kernel doesn't support fpu registers for context switch, so it crashes sometimes if two threads are doing some heavy data transfer |
15:59.26 | DuperMan | oh yeah? |
15:59.40 | zeusk | hey duperman |
15:59.43 | DuperMan | sup |
15:59.49 | Alex[sp3dev] | time to build some jelly poop. I guess aosp is not so different from cm9 and libsamsung-ipc and samsung-ril will build fine |
15:59.59 | DuperMan | imma haz nu domain, h4s8.com o.o |
16:00.00 | DuperMan | ^^ |
16:00.50 | DuperMan | it's empty & I'm bored. /stfu again |
16:00.57 | zeusk | lol |
16:01.29 | DuperMan | srsly-ish, any idea for a good use? it's kiiiiinda shorthand for 'hack site' |
16:01.34 | DuperMan | pun inteded verily |
16:02.39 | zeusk | Alex, but i wouldn't be surprised if qualcomm actually made poop like that, they have closed bits even in the control register |
16:03.04 | DuperMan | closed. bits. in. register. |
16:03.22 | DuperMan | let's all get intel android phones! |
16:03.35 | zeusk | x86 android sucks now |
16:03.43 | zeusk | most games won't work ootb |
16:04.06 | DuperMan | zeusk: yeah, but srsly nicer architecture, shame - had |
16:04.19 | zeusk | yep, better than the ARM mess right now |
16:04.35 | Alex[sp3dev] | zeusk: judging by how fast their hardware and the fact that their camera seems fast and using good algos, I think qcom has good engineers and stupid management living in the 70's and knowing nothing about code quality and revision control |
16:04.50 | jonpry | x86 phonez? |
16:04.52 | DuperMan | I'd say something about 'maybe 64bit will be intel's comeback' but I'm not that guilliable |
16:04.53 | DuperMan | :/ |
16:05.35 | DuperMan | Alex[sp3dev]: congratulations you just established ARM in 198x |
16:05.41 | zeusk | lol, i was trying to support Cortex-A9MP and A8 using the same startup file, detection would always fail and then i realised qualcomm has changed CPU ID bits to something else... |
16:05.42 | DuperMan | :) |
16:13.53 | marc1706 | zeusk: hi |
16:14.02 | marc1706 | are you talking about the .36+ kernels? |
16:14.06 | zeusk | yep |
16:16.07 | marc1706 | too many addresses to know :P |
16:17.12 | marc1706 | I'm currently adding the bcmdhd driver to the .35 kernel |
16:17.33 | marc1706 | if you can get a kernel above .35 booting I'll be happy to join in and get things working |
16:18.25 | zeusk | btw cotulla should join us soon hopefully |
16:19.05 | marc1706 | I've been missing him in here :D |
16:20.22 | marc1706 | probably the silence before the storm |
16:20.32 | zeusk | yep :) |
16:21.21 | marc1706 | I'll also see if I can get ion working |
16:22.30 | marc1706 | I was going to add the bcmdhd driver commit by commit |
16:22.38 | zeusk | lol |
16:22.38 | marc1706 | then I saw that there are over 50 commits :D |
16:23.00 | marc1706 | so yeah, basically just added the newest code xD |
16:23.19 | zeusk | is it any better ? |
16:23.42 | zeusk | and does it still preserve globules of memory for network IO ? |
16:23.42 | marc1706 | haven't tested it yet |
16:24.10 | marc1706 | you mean if it preallocates a memory buffer? |
16:24.21 | zeusk | yes |
16:24.28 | marc1706 | you can decide yourself |
16:24.37 | marc1706 | I think it also works without preallocation |
16:25.11 | zeusk | could be better that way for ics and EGL but will hurt burst rate of Wifi |
16:29.57 | marc1706 | I'm starting to dislike the CAF git ... |
16:30.22 | marc1706 | there is no msm_rmnet in msm-3.4? O.o |
16:37.34 | zeusk | hmm, have you checked desire C sources ? |
16:38.09 | zeusk | except for qdsp and mddi panel, most of the stuff should work since their base kernel (from qualcomm seems to have 8x50 support) |
16:38.26 | zeusk | it's a 3.0.x |
16:38.39 | marc1706 | yeah, I'm taking most of the stuff from 3.0.x |
16:38.49 | zeusk | though their kgsl is outdated compared to the one in our .32 :D |
16:38.52 | marc1706 | I just looked at msm-3.4 there seem to be large portions missing O.o |
16:39.25 | zeusk | msm-3.4 is a seperate branch iirc, have you checked in msm-3.0 ? |
16:39.32 | marc1706 | yeah, it exists there |
16:39.45 | zeusk | hmm, it must be wip |
16:39.54 | zeusk | or they're abandoning old chips now |
16:39.54 | marc1706 | I think the msm_rmnet I have in my kernel is a lot more up-to-date than the older versions |
16:39.59 | marc1706 | I think I ported it from 2.6.38 |
16:40.11 | marc1706 | I think it's WIP |
16:40.19 | marc1706 | it's a bit weird that large portions are missing |
16:40.33 | marc1706 | it's not just rmnet |
16:40.46 | zeusk | maybe they started from vanilla this time ? |
16:43.00 | marc1706 | it's weird that there is no commit removing rmnet though |
16:43.20 | marc1706 | I'm not sure if rmnet is being used in newer devices though |
16:43.29 | marc1706 | but rmnet via usb is still there |
16:43.34 | marc1706 | so I'm pretty sure it should be |
16:46.17 | zeusk | there should be something like post production build flag in linux, all logging code should be removed from that for the sake of performance.. so much of crap log which users never read/understand/make use of. |
16:47.49 | Alex[sp3dev] | logging does not hurt performance. at least, not as much as java with gc and constant buffer copying for native code. either way, it should be possible to disable most debug logging by disabling CONFIG_DEBUG |
16:48.50 | Alex[sp3dev] | well, you can hack printk.h and disable *all* printk messages :) |
16:49.19 | zeusk | there are more functions which people use like device_debug etc.. |
16:49.34 | zeusk | that's worse thing, two functions for the same result.. |
16:49.51 | Alex[sp3dev] | they all are just wrappers around printk |
16:50.16 | Alex[sp3dev] | they are introduced because this allows to tie logging to a device class entry and filter logs |
16:51.02 | zeusk | couldn't they just have made use of the flags like KERNEL_WARNING, like KERNEL_DEVICE_DBG etc ? |
16:51.31 | DuperMan | zeusk: isn't happy they use teh bits? |
16:52.04 | zeusk | though i would still consider killing java in android before disabling kernel logs for performance. |
16:52.41 | DuperMan | just raw dump the bus with a hotwired cable :P |
16:52.45 | Alex[sp3dev] | look at the dev_info call. it's first argument is the pointer to struct dev. either way, only info/error logs are printed, debug logs depend on the kernel config. again, if you want, you can edit printk.h and disable the macros you don't like |
16:53.13 | DuperMan | hotwire the ram! |
16:53.17 | DuperMan | *bus |
16:54.02 | Alex[sp3dev] | rambus |
16:54.56 | zeusk | I'm writing spinlock module right now, but there's a bit of problem, any help regarding the comment in cpu_atomic_spin_set ?? http://pastebin.com/p7rKHrGk |
16:55.07 | DuperMan | wtf spins in a modern phone? |
16:55.08 | DuperMan | oO |
16:55.36 | zeusk | I'm using ldrex and strex on cortex A8 but M0 doesn't support exclusive load store or swp iirc |
16:56.21 | zeusk | lol duperman, just realised "atomic spin" |
16:56.59 | Alex[sp3dev] | zeusk: just disable the interrupts instead of using swp |
16:57.21 | DuperMan | zeusk: XD didn't mean that but lol (I think) |
16:58.26 | zeusk | alex, I have taken care of that, ISR cannot use spinlocks so no need to disable interrupts, critical section disables context switch |
16:58.49 | zeusk | but what if a context switch occurs before we increment critical section and after we have validated that the lock is available |
16:59.27 | zeusk | and if the new thread acquires that lock, when we come back, we lock it again and setting thread owner to ourself, BOOM |
17:00.16 | zeusk | decrement critical section and try from beginning ? |
17:01.07 | *** join/#htc-linux rob_w (~bob@unaffiliated/rob-w/x-1112029) |
17:01.44 | Alex[sp3dev] | wait, you should disable the interrupts, check the lock and re-enable them. that's like using compare-and-set instruction. One thing I've learnt about maths and engineering is that good solutions are one-liners. as soon as you start adding magic fixups, you're doomed |
17:03.24 | zeusk | how about this ? http://pastebin.com/j9BSj8qp |
17:03.56 | zeusk | alex, since ISRs won't be using spinlock, i think it is safe to just disable context switches instead of all interrupts in favor of low interrupt latency |
17:06.01 | zeusk | that is what ARM's manual does for LDREX and STREX, keep trying till STREX returns no error |
17:07.07 | jonpry | but disabling interrupts is a trivial operation. and to emulate the swp instruction your talking about a total of like 4 instructions. sub microseconds with interrupts disabled. |
17:07.58 | Alex[sp3dev] | won't work on smp or preemptive multitasking. if you use swp, compare-and-set and things of the kind and ldrex/strex are instructions. the cpu can lock the bus when it sees them. just loading the value and checking it won't work with preemption |
17:10.17 | zeusk | Alex, I think it won't hurt on preemptive tasking if even the write is in disabled interrupt section |
17:10.43 | zeusk | not sure about SMP and how others core react if scheduler is disabled and what happens to threads after they run to completion in this state |
18:01.00 | *** join/#htc-linux skodde (~skodde@unaffiliated/skodde) |
18:21.43 | *** join/#htc-linux detule (~detule@unaffiliated/d3tul3) |
18:23.09 | jonpry | hi detule |
18:25.45 | detule | hi jonpry |
18:25.59 | detule | where are you guys with the d3 |
18:26.13 | jonpry | i guess there is some kind of working rom |
18:26.19 | jonpry | w/ phonecalls |
18:26.26 | detule | badass |
18:26.28 | jonpry | but no notification sounds or something |
18:26.47 | jonpry | just need sound, HD codec, camera |
18:26.55 | jonpry | but camera might be a lost cause |
18:27.18 | jonpry | how's sgs3? |
18:27.32 | jonpry | also need 3.5 kernel :D |
18:28.00 | detule | phone is too damn smooth...hard to get motivated to do anything with it - it works so well and the dev community is a bunch of deucebags |
18:28.38 | detule | *douche |
18:28.41 | *** join/#htc-linux leviathan_ (~quassel@2001:470:26:484:6ef0:49ff:fee6:8dca) |
18:29.43 | jonpry | like teamdouche? |
18:31.58 | *** join/#htc-linux Alex[sp3dev] (d5551202@gateway/web/freenode/ip.213.85.18.2) |
18:33.25 | Willd | phh: Do you know where? |
18:33.34 | detule | wonder why 3.4 is stuck on .4 for so long |
18:33.47 | detule | ups i guess .5 |
18:35.03 | jonpry | rc7 |
18:35.06 | detule | only 50 commits after a month of in-between .4 and .5 .... things are slowing down for those kernel.org boys |
18:35.27 | Alex[sp3dev] | linus is busy trolling around |
18:35.39 | Alex[sp3dev] | trolling in the deep |
18:35.56 | jonpry | i'd like to get a working d3 kernel before trying to run linux-msm-rhod on it |
18:36.00 | jonpry | but maybe it's time |
18:37.16 | Alex[sp3dev] | if i compile some jelly bean poop, will it eat out all ram and kill my browser and pdf viewer when linking some huge binary? |
18:40.07 | jonpry | absolutely |
18:41.44 | *** join/#htc-linux DuperMa (~Duper@89-139-54-22.bb.netvision.net.il) |
18:42.09 | *** join/#htc-linux DuperMan (~Duper@89-139-54-22.bb.netvision.net.il) |
18:46.14 | *** join/#htc-linux skodde (~skodde@unaffiliated/skodde) |
19:01.11 | *** join/#htc-linux milaq|off (~milaq@h2041382.stratoserver.net) |
19:14.18 | *** join/#htc-linux BabelO (~fcr@unaffiliated/babelo) |
20:32.56 | *** join/#htc-linux arif-ali (~arif-ali@91.84.160.181) |
21:47.57 | *** join/#htc-linux eR^Z` (~zzeratul@88.103.98.168) |
22:12.56 | *** join/#htc-linux jonpry (~jon@c-24-17-200-206.hsd1.wa.comcast.net) |
22:46.26 | *** join/#htc-linux ALoGeNo (~alogeno@unaffiliated/alogeno) |