#qi-hardware IRC log for Friday, 2012-10-19

qi-bot[commit] kyak: kexecboot: update to latest git (master) http://qi-hw.com/p/openwrt-packages/392903304:00
qi-bot[commit] kyak: Merge branch 'master' of projects.qi-hardware.com:openwrt-packages (master) http://qi-hw.com/p/openwrt-packages/c9e170404:00
kyakdamn, sorry for 'merge' :)04:00
kyakJay7: hi, just playing with kexecboot again.. Why it only detects kernel on unmounted partitions? Kind of weird, because i have a kernel on a mounted sd card, and i have to unmount the card for this item to appear in kexecboot menu04:02
kyakbtw, it doesn't seem to work anyway.. After i choose an item, kexecboot exits, fucks up my terminal and that's all04:03
wpwrak(merge) hmm, the perfection gland still seems to be underperforming. please report to the recycling plant tomorrow. we'll have to improve and activate another kyak clone.04:04
wpwrak(only unmounted kernel) i can vividly imagine the incorrect code path that would lead to this ;-)04:05
kyakit's simple - kexecboot tries to mount all the partitions one by one (as in /proc/partitions) and find anything that looks like linux kernel there (in well-known locations, i suppose). Of course, when a partition is already mounted, it fails to mount it and doesn't find anything04:07
wpwrakthe failure to find doesn't follow naturally from the failure to mount. but yes, that's the sort of chain i was thinking of :)04:09
kyakwpwrak: btw, can you imaging a path (both in code or developers' minds) that lead to this problem: i want unmount my /home (to perform some not so safe operations with partitions), and i do that, but oh-so-smart systemd automatically remounts my /home in the middle of the process? And same thing goes on with swap04:15
wpwrakhmm, sounds like a case of over-engineering. but i haven't met any piece of software that would normally do that with /home/04:17
kyakare you on systemd already or plan to migrate some time?04:18
wpwraki don't even know what that is :)04:18
wpwraki tend to try to eliminate as many critters that aren't part of traditional unix as i can04:19
kyakok, so when you hear about it, you would know it's over-enginered :)04:19
kyakare initscripts part of traditional unix? :)04:20
wpwraksysv init and its script are, yes04:20
wpwraka bit crude but they do the job04:20
kyakso basically systemd is a "modern replacement"04:22
kyakwhich is already used by default in some (many?) distributions and pro-actively pushed by the developers of distribution of my choice (arch linux)04:23
wpwrakdoes it add anything significant besides the feeling of being more modern ?04:23
kyakwell, it kinda boots in parallel04:23
wpwrak'm on ubuntu. i think the one i have uses upstart.04:24
kyakthat's all the benefits i know about04:24
wpwraknot sure how these things are related to each other. so far, i can still do stuff with /etc/init.d/foo start  so i don't have to worry just yet04:24
wpwraklack of parallelism is one big limitation of sysv init04:25
kyakit provides a compatibility layer04:25
kyakso all humble users could still use traditional /etc/init.d04:25
wpwrakof course, given that a unix system should hardly ever go down anyway, that obsession with reducing boot time seems a little alien to me anyway04:26
kyaki got the new laptop and installed ubuntu there.. but i couldn't stand it for more than one evening, i just didn't understand how it works.. I prefer to start with a base system, and then add things to it04:26
wpwrakyeah, about 70% of the time installing ubuntu is spent on figuring out which are the gremlins that cripple the system and then removing them04:27
kyakwpwrak: what DE/WM do you use?04:29
wpwrakand a lot of xterms :)04:30
kyakseems strange why you settled down with ubuntu anyway :)04:31
wpwrakgentoo just got too slow. and upgrading old systems often didn't go well.04:33
wpwrak(slow) for updates04:33
kyakyou mean for delivering updates to you or to slow to actually build these updates?04:34
wpwrakbefore gentoo, i used red hat (before it was fedora). but that one suffered feature creep, much like ubuntu does today.04:34
wpwrakoh, the delivery was lightning-fast. the building was slow. and you had to tell it a hundred times ~amd64 before it would actually let those things build.04:35
wpwrakwell, slowness of building and frequency of failures after many hours. binary packages are much better at not failing on extremely peripheral and largely hypothetical inconsistencies.04:36
kyakindeed :)04:37
wpwraki still have two gentoo systems in regular use. of course, both are completely non-upgradeable by now.04:38
kyaki've been with mandriva for several years, but then i got tired of upgrading (i.e. reinstalling) every two years or so and switched to arch for it's rolling releases04:38
wpwrakcontinuous updates are a good thing to have. ubuntu is still reasonably close to that concept.04:39
wpwrakgentoo sort of watered it down. every so often it would ask you to manually re-select the right profile and so on.04:40
wpwrakthose things leave a bit of a sour aftertaste. like reading an air crash investigation, where the autopilot disengaged, then the pilot got confused and crashed the plane. but just re-engaging the autopilot would have saved everyone. makes you wonder if it really had to disengage in the first place.04:42
kyakif the autopilot would crash a plane, it would be autopilot's fault - now it's pilot's fault :)04:44
wpwraklike that russian pilot who let his kids fly the plane ... neary instant darwin award :)04:44
wpwrakyeah, the cya argument04:44
kyakactually, i flew a plane once. Not a real, just a SSJ-100 training simulator04:45
kyakit wouldn't let you crash the plane04:45
kyakno matter what you do.. You could make it so the passengers feel very uncomfortable or brake their necks at worse :)04:46
kyakso planes are kid-safe :)04:46
wpwrakwell, the one i mentioned did crash. http://en.wikipedia.org/wiki/Aeroflot_Flight_59304:49
wpwrak"Despite the struggles of both pilots to save the aircraft, it was later concluded that if they had just let go of the control column, the autopilot would have automatically taken action to prevent stalling, thus avoiding the accident."04:51
kyakthat's very stupid, no doubt04:53
wpwrakbut there are lots more accidents with autopilot troubles. i think today's pilots have very little experience flying without autopilot. so when it disengages, this often becomes their first priority, instead of solving the actual problem.04:53
wpwrakin the last century, many pilots hat ww ii experience. so they were used to flying planes with all sorts of malfunctions. and those who became teachers passed on some of that experience to the next generation.04:55
wpwrakhere's a rather epic example: http://en.wikipedia.org/wiki/British_Airways_Flight_904:56
kyakas far as i know, the problem with autopilots and Airbuses is that there is no control column, but rather a side-stick (http://en.wikipedia.org/wiki/Side-stick)04:56
wpwrakoh, i think that came later04:57
kyakso when autopilot control a plane, there is no visible feedback for a pilot (the stick doesn't move)04:57
kyakBoeings (and so all russian civil planes) all have steering columns traditionally, and it actually turns so that when autopilot disengages, the pilot can take control seemlessly04:58
wpwrakit's more complex. you also have profiles that determine what the plane is allowed to do. getting that wrong is what killed AF447 (well, combined with an impressive amount of ineptitude)04:59
kyakyep, there is always a combination of factors05:00
wpwrakdon't boeing have sticks now, too ? with different force feedback programming, of course. airbus were always the more futuristic kind05:01
kyakboeings don't have sticks to my knowing..05:01
kyakit's more traditional now though05:01
kyaki know that MS-21 (http://en.wikipedia.org/wiki/Irkut_MS-21) will have sticks, and it's planned that they will actually move05:02
wpwraknice plane :) a while ago i read a bit about the stick controversy. i don't remember what they said in favour of the airbus approach, but in the end it seemed that both sides had good arguments and it really comes down to the pilots understanding the plane they're flying05:05
wpwrake.g., american airlines 58705:06
wpwrak(the new york crash right after 9/11)05:06
kyakthe good argument from airbus is that sticks don't close the cockpit view for the pilot.. and it's also more convenient for the pilot to have a meal :)05:06
wpwrakheh :)05:08
kyaki think it also allows for a friendly chat with flight attendant sitting on your lap :)05:11
wpwrakit also reduces the risk when a pilot asserts his membership in the miles high club :) well, in today's boring times, that may not happen that often anymore05:11
wpwrakexactly :)05:11
kyaki'm listening to the last 3.5 minutes of that russian plane05:18
kyakthey are giving the bot controversal commands05:19
kyak*the boy05:19
wpwrakhmm, when the pilots of a passenger plane are giving commands to a boy, things are already very very wrong. the consistency - or lack thereof - of the commands doesn't really make a difference at that point.05:29
kyakwell, if one did something very very wrong, it is often possible to make things right again. Not if one goes on doing mistakes till the point of no return05:50
wpwrakbtw, they made an episode on mayday/air crash investigation of the ba9 incident. it's pretty impressive to watch.05:51
wpwrakyeah, making at least one right choice before what would be the final mistake can make all the difference between having to explain things or not :)05:52
kyakyeah, i've noticed there is an episode.. gotta have a look05:52
wpwrakthe whole series is great. and if you're looking for more, many reports of the ntsb are publicly available. especially the one on air alaska 261 is quite memorable.05:54
wpwrakit actually makes you feel safer, because you realize the people investigating this stuff think like you do05:55
kyakcool, i'll check it out05:58
xiangfuwerner: you live in Buenos  Aires right? 06:11
Jay7kyak: morning06:51
Jay7kyak: well.. we mostly targeted to be init :)06:52
kyakJay7: good afternoon :)06:52
Jay7but it shouldn't be hard to patch this :)06:52
kyakeveryone wants to be init these day :)06:53
Jay7kyak: didn't you tested kexec on NN recently?06:53
kyakyep, it doesn't work06:53
Jay7I mean kexec, not kexecboot06:53
kyakor maybe i missed something06:53
kyakyeah, i'm talking about keec06:53
Jay7that's bad06:54
kyakit loads the kernel, but doesn't boot it.. just halts06:54
kyaki didn't have a closer look (with serial console i mean)06:54
Jay7well.. we are funded by LF CEWG this year again so I'll implement switch_root soon :)06:54
kyakso i expected kexecboot to halt as well :)06:54
kyakJay7: just wondering, why you don't bump releases on github?06:58
kyakcurrently it seems like 0.5.9 or something, but we have to follow some random (latest) git commit06:58
kyakprobably we need to start with a working kexec anyway, then figure out why kexecboot doesn't work as expected06:59
kyakand i gtg now...07:01
Jay7kyak: just have no 'release policy'07:03
Jay7we want to release 6.0 but I'm short of free time07:04
wpwrakxiangfu: yeah, buenos aires10:10
xiangfuI want to know when you sleep. now it's 7AM. the last message is 3AM in your place.  :-)10:12
xiangfuwpwrak, I just burned one chip with hot air. 10:12
xiangfuI have to think about the oven solution.10:13
wpwraknow you know when i slept: from 3 to 7 am ;-)10:24
wpwrak(burned chip) chips are delicious when they're hot and crispy ;-)10:25
wpwrakbut i wonder how you can even tell you burned it. it's actually hard to damage chips with heat.10:26
xiangfuwpwrak, I hear some crack sound... 10:36
wpwrakhmm :)10:37
xiangfusmell bad.10:37
wpwrakmaybe try removing a zero from the temperature next time10:37
xiangfunow I try to read more documents and watch some videos.10:38
wpwrakwith difficult chips, it may also help to apply heat from the bottom, so that the pcb itself is warm and you don't need to cross such a large temperature difference10:39
wpwrake.g., instead of 25 C to 270 C, you may only need to go from 70 C to 270 C if you heat the PCB (and everything on it) to 70 C.10:40
wpwrakpcb heaters are available commercially. http://www.howardelectronics.com/xytronic/ir610.html10:44
wpwrakbut an iron held upside down with a vise may do as well :)10:44
wpwrakah, and the temperature would probably be higher. i think irons start around 100 C at the lowest setting. that pcb heater starts at 120 C.10:45
wpwrakit's a bit tricky, though. i experimented briefly with this approach for ben-wpan, but ended up with defective chips. could have been because of some other problem, though. e.g., that it's difficult to find a nice place to rest your arm when working on top of a hot surface.10:47
xiangfuthat device's price is same as a BGA rework station.10:51
wpwrakthat's why i suggested iron + vise as a possible alternative :) http://downloads.qi-hardware.com/people/werner/tmp/hotplate.jpg10:53
xiangfuI like this one very much. 10:54
kyakif someone on this channel is bored, i've got an idea for you: make a plot of Werner's activity on this channel by time of day and we'll finally see if he's a robot :)11:05
kyakfor the last two years, of course11:05
Action: wpwrak finds some people's fascination with his activity patterns fascinating :)11:08
kyakand maybe combine it with #milkymist :)11:08
wpwrakdon't forget commit dates11:08
kyakbecause your activity is fascinating!11:08
wpwrakheh, other people do crazy stunts like jumping from outer space to get noticed, but just getting up for a bit at night every once in a while would be all it takes :)11:11
kyaksome say that they would rather jump from outer space than wake up at night ):11:14
wpwrakmaybe there would be a market for insomnia pills with a slightly delayed effect (3 h or so)11:14
whitequarkwpwrak: (pcb preheating) afaik it is used to have better temperature profiles for PCB soldering11:45
whitequarkeg if your chips, and most importantly connectors, can sustain 150 deg for, say, 30 minutes without damage, and the solder is 270 deg or even 300 deg (fuck rohs)11:45
whitequarkthen you preheat everything consistently to 150 deg, and then apply a "heat strike" of 270 deg to the upper side11:46
whitequarkand as it's shorter, the components have a better chance of surviving it11:46
wpwrakyup. also prevents solder from getting trapped by cold areas, e.g., when you have a lot of ground close to your chips11:51
wpwrakalas, when i tried it, i ended up with chips where the bonding wires had come loose. so if i twisted the board the right way, they still worked, but when i let go, they failed.11:52
wpwraknot sure if that was an inherent limitation of my soldering iron approach, bad luck, or just some other mistake, though.11:53
larsckyak: He's not a robot12:17
larsckyak: But he has cloned himself a couple of times and they are now working in shifts12:17
kyaki just hope they are not doing any duplicate job :)12:18
wpwraknaw, it's actually much easier. i sent myself back in time a few times, so i can do things in parallel and still only have to coordinate with myself.12:32
qi-bot[commit] kyak: qt4: disable some packages (master) http://qi-hw.com/p/openwrt-packages/6357ebc16:59
viricdoes linux initialize devices in parallel, in the early boot?18:22
larscthe idea is to let drivers sleep in their initialization phase sleep as little as possible, which means you wouldn't gain anything from parallelization18:36
larscbut of course that doesn't always work out in practice18:36
viricso, when I see:19:03
viric[    0.286879] Serial: 8250/16550 driver, 4 ports, IRQ sharing enabled19:03
viric[    0.551166] serial8250: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A19:03
viricin those 300 ms, what happens?19:03
viriconly serial-related things?19:03
viricI'll try to find out. Thank you a lot!19:04
whitequarklarsc: I recall something from years ago discussing about parallelizing driver initialization19:22
whitequarkwas it not merged, then?19:22
rohits not really an issue. things that take long like ata probes are async afaik19:24
rohand others that are fast need so share bus interfaces at some point anyhow. (ahb, pci, memory, whatever) and thus serialize19:25
rohbasically you should only detect what hw you have, allocate structs and maybe buffers as neccesary,and start the init process async if its more than writing some registers or over a slow interface like i2c, and immediately return from the driver init.19:27
viricroh: 'async', means that some async events can come in those 300ms of serial initialisation19:27
viricwell, I think I have some broken mainboard... it hangs from time to time. And rebooting after a hang, sometimes makes it hang between the two lines I pasted.19:28
rohyou should not even allow delays of ms in the init. no delays at all.19:28
viricI don't mean there is a delay19:28
viricI talk about the two kernel log lines above19:28
viricsimply, I don't know what happens in those 300ms19:28
viricbut when my computer hangs, rebooting, sometimes it stops there. And I've to reboot again.19:29
rohheh... well..  maybe it probes stuff19:29
viricthat's the only thing I could notice. I can't get properly any other trace... I think I'll throw away the mainboard19:30
viricand buy a new one19:30
wpwrakin the bad old days, drivers often had to perform some I/O just to get the board to generate an interrupt. with that, they would then know which line the critter used. thus, you couldn't have multiple interrupt-using drivers run in parallel during that phase. luckily, that issue pretty much died with ISA :)19:30
viricI've tried the softlockups and hardlockups kernel debug options... but the serial port looks broken enough too (even crossing txrx doesn't produce echo).19:31
viricAnd netconsole on ethernet, never brought anything at hang time19:31
viricI've replaced the power supply19:31
rohwell.. you wouldnt be the first with a fried mainboard19:31
viricit hangs... once or twice a week19:31
rohwho knows what works or doesnt when a super-io is fried (usually connected via lpc)19:31
viricand mprime torture tests pass quite fine. nothing noticeable.19:31
viricsuper-io? lpc?19:32
rohserial ports arent in the chipset for a long time now19:32
rohon pcs that is19:32
rohthey are in something called super-io which has the serial uart(s), parport. and often enough helper logic for booting19:32
rohkeyboard controller.. buzzer port... all that19:33
viricthere are hardware errors that can't be diagnosed easily by software, I imagine19:33
rohand these are connected to the chipset via a lpc bus. its basically special case of spi19:33
viricin fact the board has some troubles with firewire19:33
viricif I connect a firewire camera, and get some video... after some seconds, the pci firewire device stops responding19:34
viriceven doesn't answer to the lspci configuration requests19:34
larscwhitequark: nope never merged19:34
viricok, let it be broken hw. I'll get a new board next week19:35
whitequarkwpwrak: I'm SO GLAD I'm too young to have ever used ISA19:40
viricit wasn't that bad, isa19:41
viricall pretty simple19:41
rohyeah. i sometimes still miss dip switches after nearly a decade of badly working auto-foo ;)19:42
viricI don't have any bad memories about isa19:43
wpwrakwell, ISA problems inspired initrd, so ... :)19:46
viricI missed that point :)19:51
wpwrakto detect a pre-PnP ISA device, you had to probe for it. i.e., you had to write to the addresses where it was and see if you got back an expected answer.19:54
wpwraksome devices could sit at quite a number of different addresses. and some devices would share an address range with others.19:55
viricbut you could tell the addresses to the software19:55
wpwrakto make things worse, some devices didn't respond kindly to being probed by a driver that didn't know them. e.g., they could lock up and only a system reset could fix that.19:55
wpwrakyes, you could of course preconfigure everything manually. talk about user-friendliness :)19:56
wpwrakso distributions started to make kernels that had sets of drivers that wouldn't get in each other's hairs. you basically had the distribution floppies, plus a few kernel floppies.19:57
wpwrakyou had to pick the kernel floppy that had all the drivers you needed to get rolling, but none of those that caused trouble.19:57
wpwrakneedless to say, that number of those different kernel floppies quickly increased.19:58
wpwrakthe solution was initrd: use modules probe the most sensitive devices first, or maybe even ask the user.19:59
wpwraks/probe/to probe19:59
viricah nice history. I didn't live that :)20:18
kyakviric: does it boot fine from some live cd?20:52
kyaki mean, to make sure your system is not broken20:52
virickyak: this happens from kernel 2.6.36 until 3.6.221:17
viricI've been updating regularly21:17
viricI've seen it hang even in grub21:17
viric(before trying to load anything)21:18
viricand after hang, often it hangs in the serial port initialisation21:18
viricI mean, 'often' in the reboot immediately after the hang21:18
viricthe serial port doesn't work well in any case... who knows what's bad there21:18
virickyak: it hangs only once or twice a week. The rest of the time it works great :)21:19
kyakmake it hang only if you sleep :)21:24
viricif I had a serial port or anything I could interface the computer with, I'd dig further. But all my attempts failed21:24
kyakthe new year is coming, it's time to make yourself a present and have a new laptop :)21:32
Introanny1 here guys?23:21
Introi have a little question23:21
Introabout ROM - how it can be writen when it's call ROM- READ ONLY memory????23:22
Intromy teacher asks me that as a bonous wuestion23:22
kristianpaulnowdays rom is just flash, it can be protected tought but still writable if you disable some bits23:24
Introsorry but i didn't understan you 23:24
Introwhat do you mean newaday it's just a flash ?! and what's that mean to disable some bits ? how ?23:25
kristianpaulon the milkymist board it was made by jtag23:27
kristianpaulneed to check logs was time ago..23:27
kristianpaulbut usually this should be descripted on the memory daatsheet23:27
Introand why should ppl change things at the rom ?23:28
mththere are also EPROMs23:30
Introlook guys , i really need your knowledge .. here it is : 23:31
Intromy teacher asks me to check this things : 23:31
Introwhat i can change at the rom and why would i do it 23:31
mthit depends on what kind of ROM it is23:32
mthsome are programmable and some are not23:32
Introand if rom calls READ ONLY MEMORY how it's possible to write on it23:32
mthin normal use, the CPU can only read it23:32
Introso who can write on it ?23:33
mththere are special procedures to write (program) them, it's not a normal memory write23:33
mthfor example in flash you have to erase a page and then write an entire page at a time23:33
mthyou can't just write a single byte23:33
mthdepends on the device23:33
mthsometimes the CPU in the device can reprogram the flash, sometimes you need an external connection23:34
Introoh ok .. and what things i can change at the rom ?23:35
mthanything that is inside the ROM can be changed23:35
mthtypically it's things like firmware upgrades23:35
mthfor example in a PC, you might want to flash a new BIOS if you bought a CPU that wasn't released yet when the motherboard was made23:36
mthor if bugs were found and corrected23:36
Introoh i see..and i actually doing it by getting into the BIOS menu ?23:37
mthI think it is usually done via a utility from the motherboard manufacturer, under DOS or Windows (could be Linux too, technically, but unfortunately few manufacturers support Linux)23:38
Introjust to make sure .. nowaday ,1- the rom is a flash card . 2- the BIOS is in the ROM. ??23:38
mthnot a flash *card*; a flash memory IC, the same kind of memory used in flash cards23:39
mthbut a card contains a controller chip in addition to the memory itself23:39
mthPC BIOS is located in a flash ROM, yes23:40
Introwhat else ?23:40
mthat least in every motherboard of the last 20 years or so23:40
wpwrakIntro: you may want to check wikipedia ;-) there are several types of "ROM": the classical mask-programmed ROM. that has the data fixed when the chip is made. no programming is possible.23:40
mthgame cartridges (those might still be really unmodifyable)23:41
Introlook , i read wikipedia , but i can't understand why somebody will touch his ROM23:41
mthfirmware in embedded devices (microwave, network switches etc)23:41
wpwrakIntro: then PROM, often with the prefix OTP (one-time programmable). that one can be programmed once (often with a somewhat loose definition of "once").23:42
Introohh ok .. 23:42
Introand when i am going throug the bios and change things it's not count like "writing" on ROM right?23:43
Introsorry about my english23:43
wpwrakIntro: and then you have all the re-programmable types of "ROM". basically EPROM, EEPROM, and Flash. EPROM is erased with UV light. EEPROM and Flash are erased by just sending the chip the right commands.23:43
mthBIOS settings are written in a small piece of RAM, not in the flash ROM of the BIOS23:44
wpwrakthe BIOS normally saves its setting to a battery-buffered RAM23:44
mththe settings RAM is called CMOS, although I don't know if that term is still technically correct23:44
wpwrakalthough it would make a lot more sense to use an EEPROM for that stuff :)23:44
Introoh many thanks :) 23:47
mthon old motherboards, the battery can run out and they'll forget their BIOS settings23:50
mthprobably only happens after 10 years or so, so most PCs have been recycled by then23:50
--- Sat Oct 20 201200:00

Generated by irclog2html.py 2.9.2 by Marius Gedminas - find it at mg.pov.lt!