2013-09-16 00:04 xiangfu has joined #qi-hardware 2013-09-16 00:09 http://neo900.org/ minor improvements on page design 2013-09-16 00:10 looks... interesting 2013-09-16 00:13 it's a GTA04, inside a N900 case? 2013-09-16 00:22 dos1 has quit [Ping timeout: 263 seconds] 2013-09-16 00:27 whee ! now it has a keyboard :) 2013-09-16 00:29 the feature list looks impressive :) 2013-09-16 00:30 maybe also mention display and battery ? 2013-09-16 00:30 ... since it's already more a feature list than a mere comparison chart :) 2013-09-16 00:35 what would be the price of something like that? 2013-09-16 00:43 porchao has joined #qi-hardware 2013-09-16 00:44 [commit] Werner Almesberger: modules/tswa.fpd: add hole to through-hole pads (master) http://qi-hw.com/p/kicad-libs/a808cc1 2013-09-16 00:44 [commit] Werner Almesberger: modules/stdpass.fpd: add 1008 (for Samsung CIG22L4R7MNE inductor) (master) http://qi-hw.com/p/kicad-libs/2cf146c 2013-09-16 00:44 [commit] Werner Almesberger: components/aat1217.lib: Skyworks AAT1217 step-up converter (master) http://qi-hw.com/p/kicad-libs/dc5ce7a 2013-09-16 00:44 [commit] Werner Almesberger: modules/sot.fpd: add 236 (23-6) footprint (master) http://qi-hw.com/p/kicad-libs/784f0e6 2013-09-16 00:58 pcercuei has quit [Quit: dodo] 2013-09-16 01:27 xiangfu has quit [Remote host closed the connection] 2013-09-16 01:51 heberth has quit [Quit: leaving] 2013-09-16 04:11 Jay7 has quit [Ping timeout: 246 seconds] 2013-09-16 04:12 Jay7 has joined #qi-hardware 2013-09-16 04:18 Luke-Jr has quit [Excess Flood] 2013-09-16 04:21 Luke-Jr has joined #qi-hardware 2013-09-16 04:23 xiangfu has joined #qi-hardware 2013-09-16 04:28 Luke-Jr has quit [Ping timeout: 260 seconds] 2013-09-16 04:48 Luke-Jr has joined #qi-hardware 2013-09-16 04:50 Luke-Jr has quit [Read error: Connection reset by peer] 2013-09-16 04:51 Luke-Jr has joined #qi-hardware 2013-09-16 04:54 Luke-Jr has quit [Read error: Connection reset by peer] 2013-09-16 04:54 Luke-Jr has joined #qi-hardware 2013-09-16 05:13 Luke-Jr has quit [Excess Flood] 2013-09-16 05:18 Luke-Jr has joined #qi-hardware 2013-09-16 06:12 jekhor has joined #qi-hardware 2013-09-16 07:06 xiangfu has quit [Ping timeout: 240 seconds] 2013-09-16 07:24 wolfspraul has joined #qi-hardware 2013-09-16 07:28 roh: ever tried resin casting ? e.g., polyester or acrylic ? it seems that this is almost as good as injection molding - with chemistry replacing the fancy machines 2013-09-16 08:08 FDCX_ has joined #qi-hardware 2013-09-16 08:17 xiangfu has joined #qi-hardware 2013-09-16 08:41 pcercuei has joined #qi-hardware 2013-09-16 09:04 lekernel has joined #qi-hardware 2013-09-16 09:58 [commit] Werner Almesberger: components/er-oled-fpc30.lib: change pin 30 from NC to GND (master) http://qi-hw.com/p/kicad-libs/c5278c5 2013-09-16 09:58 [commit] Werner Almesberger: add C&K JS102011SAQN SPDT SMT switch (symbol and footprint) (master) http://qi-hw.com/p/kicad-libs/18ed84d 2013-09-16 09:58 [commit] Werner Almesberger: components/kl25-48.lib: add pin 49 for the center pad (master) http://qi-hw.com/p/kicad-libs/b32bd32 2013-09-16 11:10 FDCX_ has quit [Ping timeout: 264 seconds] 2013-09-16 11:35 dandon_ has joined #qi-hardware 2013-09-16 11:37 dandon has quit [Ping timeout: 256 seconds] 2013-09-16 11:37 dandon_ is now known as dandon 2013-09-16 12:28 hm 2013-09-16 12:31 hm, anybody has a /dev/video device on their system and wants to test something for me? 2013-09-16 12:31 larsc: I've a webcam 2013-09-16 12:37 whitequark: try http://pastebin.com/xKxgLKKu (may crash your machine though) 2013-09-16 12:40 ret: -1 14 2013-09-16 12:40 nothing else 2013-09-16 12:41 yea, that's kind of what I expected 2013-09-16 12:42 wpwrak: nope. forms are still the major work 2013-09-16 12:42 and i dont like chemicals 2013-09-16 12:43 whitequark: but with a better magic number I think you could get it to expose any physical mempry 2013-09-16 12:44 larsc: hm strange 2013-09-16 12:45 if count is large enough you bypass this check http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/tree/drivers/media/v4l2-core/videobuf2-core.c#n2370 2013-09-16 12:46 and then down here you can move the offset to any position you want http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/tree/drivers/media/v4l2-core/videobuf2-core.c#n2393 2013-09-16 12:47 when will people stop using C for everything? :) 2013-09-16 12:48 and even before that, userspace drivers would be a GREAT idea. 2013-09-16 12:49 Linux isn't even consistent - e.g. for USB, you can either write a kernel module or use libusb. same with FUSE. two APIs where there should be only one. 2013-09-16 12:49 lekernel: uhhh, FUSE is also incredibly slow 2013-09-16 12:49 also I haven't really seen well-written FUSE drivers, except perhaps ntfs-3g, though that may have another reason 2013-09-16 12:50 e.g. MTP is unusable. 2013-09-16 12:50 yeah well, the fundamental idea is that parsing/generating filesystem structures needs not be done in kernel space. 2013-09-16 12:50 I call bullshit... there's been n+1 attempt at microkernels and they never worked 2013-09-16 12:51 what you actually need is a safe language which doesn't allow errors in parsing/generating filesystem structures to lead to memory corruption 2013-09-16 12:51 and why didn't those microkernels work, exactly? 2013-09-16 12:52 too slow 2013-09-16 12:52 (of course, most of them died because of other, social reasons. but the technical reason is "too slow".) 2013-09-16 12:52 I'd say minix, for example, pretty much works. 2013-09-16 12:53 * whitequark sighs 2013-09-16 12:53 let me phrase it another way. 2013-09-16 12:53 if you have a kernel written in a memory-safe language, is there any reason to keep kernel components in separate address spaces? 2013-09-16 12:54 that sounds harder to do than a microkernel 2013-09-16 12:54 you *can* use messaging if it's more convenient; you *can* restart tasks if they fail; you just don't have to, if that's too slow 2013-09-16 12:54 eh 2013-09-16 12:54 and what about untrusted proprietary kernel modules? 2013-09-16 12:54 lekernel: those can very well use FUSE and be slow as hell, imo. 2013-09-16 12:55 they're heavily penalized (not in perf) right now anyway 2013-09-16 12:55 lekernel: (harder to do) well, let's now compare my scheme to yours--which, as I understand it, is components written in unsafe language, but kept in separate AS's 2013-09-16 12:55 so what do I do if I pwn a filesystem server? I rewrite kernel image. 2013-09-16 12:55 DONE> 2013-09-16 12:57 but /dev/video devices can usually be accessed by a normal user, can't it? 2013-09-16 12:57 larsc: true 2013-09-16 12:58 what you found looks like a bug, no? 2013-09-16 12:58 a zero day 2013-09-16 12:58 ;) 2013-09-16 12:58 what does it do on your machine? 2013-09-16 12:58 how did you find it? 2013-09-16 12:59 hadn't had the chance to test yet on my machine 2013-09-16 12:59 I'm writing code similar to the v4l buffer code and noticed that they didn't check this case 2013-09-16 13:00 that check should basically be if (count > buf->size || buf->pos + count > buf->size) 2013-09-16 13:01 or count > buf->size - buf->pos 2013-09-16 13:21 hmm, fedex seem to have slowed down their southern cone operations. shipment left only last night. so that's the full 2 day weekend penalty instead of just one. 2013-09-16 13:28 sending messages between "system" services is much slower than function call I imagine 2013-09-16 13:28 and then you have context switch as well 2013-09-16 13:28 but the idea of just restarting a daemon instead of kernel panicing is indeed nice :) 2013-09-16 13:35 yes, especially because we all know that the best-written and best-tested code in drivers is usually the exit/cleanup code ;-) 2013-09-16 13:36 wpwrak: well.. usually thats even correct 2013-09-16 13:36 or have you seen sane error handling code in daemons? 2013-09-16 13:36 ysionneau, including with hardware support for fast context switch? 2013-09-16 13:38 for the lucky enough arch to have fast context switch maybe the penalty is small 2013-09-16 13:38 roh: i mean comparing "regular use" driver code vs. "cleanup" driver code :) 2013-09-16 13:39 I think it's possible to have an instruction as fast as a jump that can context-switch between a dozen cached processes 2013-09-16 13:39 roh: but yes, whenever something gets special error-handling procedures, the chance of getting them wrong is pretty high 2013-09-16 13:39 with some kind of process ID and register shadowing? 2013-09-16 13:39 yes 2013-09-16 13:39 imo arm does that (or some other arch I don't remember) for 2 processus 2013-09-16 13:40 maybe cortex-R something 2013-09-16 13:40 make that 16 and I'm sure microkernels will have no perf penalty whatsoever 2013-09-16 13:40 wpwrak: atleast in drivers i KNOW people thought about cleanup. in daemons people dont give a shit and just segfault all the time 2013-09-16 13:41 http://lwn.net/images/conf/rtlws11/papers/proc/p01.pdf 2013-09-16 13:41 lekernel: 16? gnihihi... on a recent desktop you'd need a few hundred for hw drivers alone 2013-09-16 13:41 thats for not trashing TLB 2013-09-16 13:42 not active within microseconds of each other 2013-09-16 13:42 you got 16 real cpus on a computer.. so i guess the numbers need to be higher 2013-09-16 13:42 roh: yeah, daemons are built with other assumptions. and/or less regard for considering the assumptions :) 2013-09-16 13:42 that's why I said *cached* processes 2013-09-16 13:43 16 seems pretty deep already. if you go that deep for frequently used things, you may have a serious complexity problem :) 2013-09-16 13:44 wpwrak: i guess that was implicated when we started building computers with dozends of cores, didnt weß 2013-09-16 13:44 anyhow.. bbl.. gotta use the non-rain-period 2013-09-16 13:44 message passing between CPU cores is slow 2013-09-16 13:45 context-switching the current core with that special instruction is fast 2013-09-16 13:46 jow_laptop has quit [Quit: leaving] 2013-09-16 13:46 jow_laptop has joined #qi-hardware 2013-09-16 13:49 if you have managed code you don't need memory protection anyway and everything runs in the same context ;) 2013-09-16 13:49 =) 2013-09-16 14:26 jekhor has quit [Ping timeout: 260 seconds] 2013-09-16 14:26 "if you have nothing to hide, there's no reason to be afraid" ;-) 2013-09-16 14:27 "if you don't have any enemies, there's no need to worry about exploits" 2013-09-16 14:27 damn. this is so easy. why do i torture myself with code and electronics when i could have become a politician ? 2013-09-16 14:31 wpwrak: I'm guessing because you have a soul 2013-09-16 14:35 someone once said: "in politics, honesty is everything. once you can fake it convincingly, you've made it." 2013-09-16 14:43 wolfspraul has quit [Ping timeout: 276 seconds] 2013-09-16 14:44 ha 2013-09-16 14:44 wolfspraul has joined #qi-hardware 2013-09-16 14:46 re 2013-09-16 14:47 larsc: i think memory protection without using memory mapping is a nice idea 2013-09-16 14:48 basically.. run everything as position independant code. same memoryspace, but with protection. nowadays you even got io-mmus in your hardware, so it should be faster than what we do now 2013-09-16 14:50 the things you do to avoid using safe languages :p 2013-09-16 14:50 whitequark: safe languages do not avoid people wanting to abuse interfaces or brainfarts like off-by-ones and similar think-o-s 2013-09-16 14:51 it's not about the language, it's about malicious applications 2013-09-16 14:51 so.. doing stuff right isnt anything you get around anyhow. 2013-09-16 14:51 with managed applications you basically do the memory protection in sw 2013-09-16 14:52 roh: yeah, off-by-ones and logic errors generally are the same, but they cannot lead to code execution in arbitrary places 2013-09-16 14:52 larsc: thats pure theory. in reality thats all bogus. nobody really uses such stuff outside the lab 2013-09-16 14:52 whitequark: oh yes, they can. 2013-09-16 14:52 roh: how so? 2013-09-16 14:53 note the "arbitrary", if you explicitly load a chunk of code and jump to it, sure. but it is generally easier to make sure all code paths to something like that are good 2013-09-16 14:53 than to check every single array access everywhere 2013-09-16 14:54 whitequark: also.. you got shitloads of badly programmed and even less understood hardware, capable of dma and similar memory access patterns... how do people get to the impression that somebody hostile with enough time would NOT be able to place arbitrary binaries at the right place in memory? 2013-09-16 14:54 roh: perfect security is impossible (with real-world hw), but you can raise the barrier 2013-09-16 14:54 so.. YES you need iommu hardware and correctly programmed drivers. 2013-09-16 14:55 and proper hardware. and STILL you need to audit your code. and against none of those errors a programming language can help you. 2013-09-16 14:55 that still doesn't protect you from bugs in cpus/iommu hw 2013-09-16 14:55 eg recent xen issue 2013-09-16 14:55 so.. forget that bullshit that buffer overflows are your only problem. its only one of many. and a language doesnt save you from yourself. 2013-09-16 14:55 roh: again: I'm not saying it *solves* security, it merely reduces the amount of stuff you need to care about 2013-09-16 14:55 whitequark: no. it makes coders more stupid. 2013-09-16 14:56 roh: bullshit. writing same trivial checks over and over again doesn't make you clever. 2013-09-16 14:56 check out java. it didnt make more people able to code. it made more able to code very badly. thats not helping. 2013-09-16 14:57 FDCX_ has joined #qi-hardware 2013-09-16 14:57 whitequark: nobody does that. every sane person uses macros for that. 2013-09-16 14:57 * whitequark silently points at the bug larsc found 2013-09-16 14:57 whitequark: dont always look at 'i am a bad beginner'-code like openssl ;) 2013-09-16 14:57 so, v4l2 code is 'i am a bad beginner'. ok 2013-09-16 14:58 I don't care how much idiots are going to think they can code now. it's not a technical problem, it cannot be solved (or "unsolved") by technical means 2013-09-16 14:58 I care about people who know what they do, spending less time doing pointless shit 2013-09-16 14:59 exactly. so its not helping blaming bad tech, when its bad design by people. thats all i am saying. 2013-09-16 15:00 well, languages which make you write hazardous boilerplate instead of actually important code do have bad design after all 2013-09-16 15:01 (and java is just as guilty of that) 2013-09-16 15:04 rz2k has joined #qi-hardware 2013-09-16 15:14 lindi-_ has joined #qi-hardware 2013-09-16 15:14 bartbes has joined #qi-hardware 2013-09-16 15:15 bartbes_ has quit [Ping timeout: 240 seconds] 2013-09-16 15:15 lindi- has quit [Ping timeout: 240 seconds] 2013-09-16 15:16 wej has joined #qi-hardware 2013-09-16 15:32 lekernel has quit [Ping timeout: 264 seconds] 2013-09-16 15:38 xiangfu has quit [Quit: leaving] 2013-09-16 15:41 dos1 has joined #qi-hardware 2013-09-16 15:44 lekernel has joined #qi-hardware 2013-09-16 16:42 dos11 has joined #qi-hardware 2013-09-16 16:43 dos1 has quit [Read error: Connection reset by peer] 2013-09-16 18:04 I bet someone here understands USB better than me 2013-09-16 18:04 what's the rationale for having tokens DATA0,1,2 instead of just DATA ? 2013-09-16 18:04 too much spare identifiers? :D 2013-09-16 18:07 hm, http://www.microchip.com/forums/m663890.aspx 2013-09-16 18:14 wpwrak: I don't know why you say this table is more of a feature list than a comparison 2013-09-16 18:20 wej has quit [Ping timeout: 245 seconds] 2013-09-16 18:23 DocScrutinizer05: i would read it as a feature list, because a) it mentions most of the main features b) i'd be more interested in learning about the features of the new product than those of some obsolete devices. of course, if you're coming from the N900, that may be different :) 2013-09-16 18:24 that table lists the differences, just that 2013-09-16 18:24 DocScrutinizer05: in terms of marketing, i think a good point to emphasize would be the fusion of three successful projects: 1) the gta04 OPEN hardware, 2) the nice Nokia case, and 3) the friendly and proven GUI. 2013-09-16 18:24 >>Neo900 will preserve all the features of N900. With upgrades!<< 2013-09-16 18:25 yep, exactly 2013-09-16 18:25 yes, but there are so many differences that you may just add the remaining features as well, even if they're the same :) 2013-09-16 18:26 http://mynokiablog.com/2009/08/27/nokia-n900-technical-specifications/ 2013-09-16 18:26 a tad long 2013-09-16 18:27 well, key features. at least the screen :) 2013-09-16 18:28 DocScrutinizer05: is there a list of parts for the mechanics and some explosion-drawing? 2013-09-16 18:28 maybe even pricetags? 2013-09-16 18:29 well, there is schematics and service manual L1_2 and L3_4 2013-09-16 18:29 for n900 2013-09-16 18:32 wej has joined #qi-hardware 2013-09-16 18:47 viric has quit [Ping timeout: 240 seconds] 2013-09-16 18:53 viric has joined #qi-hardware 2013-09-16 20:13 Ornotermes has quit [Quit: leaving] 2013-09-16 20:16 pcercuei has quit [Quit: leaving] 2013-09-16 20:40 hm, is their some magic build-in gcc macro that tells me whether X is a pointer or an array? 2013-09-16 20:40 wolfspraul has quit [Quit: leaving] 2013-09-16 20:43 larsc: __builtin_offsetof? __builtin_object_size? 2013-09-16 20:53 hm, I would I use them? 2013-09-16 21:00 I imagine a pointer will usually be pointer-sized and array will be larger. 2013-09-16 21:00 actually, nevermind 2013-09-16 21:00 usually 2013-09-16 21:01 but I found something that works 2013-09-16 21:01 #define IS_ARRAY(x) (!__builtin_types_compatible_p(typeof(&(x[0])), typeof(x))) 2013-09-16 21:01 ha, clever usage of decay 2013-09-16 21:01 but why do you want that? 2013-09-16 21:02 I want to check that the size of an buffer is large enough if we know the size at compile time 2013-09-16 21:02 hm, maybe thats __builtin_object_size? 2013-09-16 21:03 yea 2013-09-16 21:03 thought __builtin_object_size would just return 4 for an pointer 2013-09-16 21:04 but that's not the case 2013-09-16 21:08 jekhor has joined #qi-hardware 2013-09-16 21:10 rz2k has quit [] 2013-09-16 21:24 Jay7 has quit [Ping timeout: 264 seconds] 2013-09-16 21:27 dos11 is now known as dos1 2013-09-16 21:28 pcercuei has joined #qi-hardware 2013-09-16 22:25 lekernel has quit [Quit: Leaving] 2013-09-16 22:45 jekhor has quit [Ping timeout: 264 seconds] 2013-09-16 23:32 roh: what exactly are you interested in? 2013-09-16 23:33 pricetags for what in particular? 2013-09-16 23:33 I don't completely get it what you're asking for 2013-09-16 23:34 Ornotermes has joined #qi-hardware 2013-09-16 23:36 the "Nokia" parts needed to build a complete device around a GTA04-NeoN board? We googled for them, part by part, from all over Europe and Asia. Some parts are hard to source, e.g. the domesheet. Others are abundance, like the case/shell plastic 2013-09-16 23:36 but basically yes, we found a source for every single one of those bits 2013-09-16 23:37 some - like the FPC with camera, proximity detector, ALS, and 3 color indicator LED and earpiece - are amazing cheap: ~7EUR 2013-09-16 23:38 other parts, like the main camera module, cost more than gold: ~50EUR 2013-09-16 23:40 DocScrutinizer05: i see.. is there a wiki with that somewhere? 2013-09-16 23:41 but good information 2013-09-16 23:46 nope, no wiki with all that knowledge/info yet 2013-09-16 23:48 ;) 2013-09-16 23:55 it's also kinda volatile info, given the dynamics of fleabay etc 2013-09-16 23:56 and I'm afraid the situation might look different when we do same check again in 4 or 6 months from now 2013-09-16 23:57 availability of spareparts fro N900 at large depletes rapidly 2013-09-16 23:57 OTOH used, broken N900 seem to spread all over the fleabayshere 2013-09-16 23:58 sphere even