**** BEGIN LOGGING AT Fri Feb 10 03:00:02 2017 Feb 10 08:05:23 moin :) Feb 10 12:34:45 LEDs work now, for no visible reason. Which package is better, xiph-support or decoders-support? Feb 10 12:36:24 better for what? Feb 10 12:38:30 For tracking and decoding wide variety of audio and video files. So far, I have decoders-support installed, and flac and other audio gets tracked and played, while video gets tracked, but some of it gives "Media format not supported" errors. Feb 10 12:39:14 xiph obviously only means ogg/vorbis/theora Feb 10 12:39:41 i would bet that decoders-support has it ot relies on it Feb 10 12:43:25 Decoders-support relies on ogg-support, which conflicts with xiph-support. And currently, an ogv with theora encoded video gives error video codec not supported error. Feb 10 12:44:15 because probably ogg-support doesnt have video codec support Feb 10 12:44:58 uninstall ogg-support and xiph-support, install decoders-support and see if it plays more formats? Feb 10 12:45:43 Decoders-support depends on ogg-support and is already installed. Ogg-support and xiph-support have identical dependencies. Feb 10 12:47:02 hey oksanaa Feb 10 12:47:10 Strange Feb 10 13:00:34 Installing xiph-support seems only to worsen the situation. Feb 10 13:02:59 Is ffmpeg available? Feb 10 13:04:35 old one Feb 10 13:04:57 i just compile my player with latest libav statically, less hassles Feb 10 13:10:50 Installed back ogg-support, still not playing this theora.ogv video. Siberian hitch from Wikimedia Commons. Feb 10 13:11:02 OGV? Feb 10 13:11:03 uhm Feb 10 13:11:08 link of the file? Feb 10 13:11:14 ogg is a container, as in 'avi' Feb 10 13:11:20 yeah Feb 10 13:11:25 real codec is called vorbis for audio and theora for video Feb 10 13:11:26 i want to look at the file via media info Feb 10 13:11:47 oksanaa ^ Feb 10 13:20:54 https://upload.wikimedia.org/wikipedia/commons/transcoded/f/f1/Siberian_hitch.webm/Siberian_hitch.webm.480p.ogv Feb 10 13:26:18 Oksanaa: since it's transcoded, what about MP4 ? Feb 10 13:27:08 sigh Feb 10 13:27:10 its impossible Feb 10 13:27:12 Prefer open codecs Feb 10 13:27:18 webm or theora only Feb 10 13:27:27 Does maemo supprot webm? Feb 10 13:27:58 Webm stutters. Ogv is better. It did work before. Feb 10 13:28:31 vp8/vorbis Feb 10 13:28:36 Ouch Feb 10 13:28:45 Oksanaa: What changed? what broke? Feb 10 13:28:50 when it broke? Feb 10 13:30:46 No Idea. And installing gstreamer0.10-theora doesn't help. Feb 10 13:31:35 Do you remember what was installed when it was working? Feb 10 13:31:55 try to play it from command line via gstreamer Feb 10 13:32:08 KotCzarny: is custom compiled ffmpeg for maemo good? Feb 10 13:32:15 as in, how well your copy works Feb 10 13:32:39 it is stable enough for other people to use it? Feb 10 13:32:46 juesto: since my player is mainliny audio player, i only enable audio codecs Feb 10 13:32:53 *mainly Feb 10 13:32:59 Ah Feb 10 13:33:00 and it's stable Feb 10 13:33:02 well and video? Feb 10 13:33:11 for video i just call gstreamer Feb 10 13:33:35 not that i use it for video, but it was an easy code, so it's there Feb 10 13:33:43 Ah i see Feb 10 13:34:42 not to mention software decoding video on single core a9@600mhz isnt going to show fireworks Feb 10 13:35:08 Should she try 360p version? Feb 10 13:36:15 someone should write dsp optimized video codec for vp8/9 and theora, but that's hard even for people knowing assembly Feb 10 13:37:19 KotCzarny: gst-launch ffdemux_ogg /home/user/MyDocs/.videos/Siberian_hitch.webm.480p.ogv Feb 10 13:37:21 works, or says that it works. No idea how to actually see the video on the screen. Feb 10 13:38:00 oksanaa: you can either check gst cheat sheets or try gst123 (i'm using it in oscp so you can grab it from there or compile your own) Feb 10 13:38:26 you have to add proper chains (in/decode/out) Feb 10 13:42:54 armel assembly specifically right? Feb 10 13:43:08 nope, dsp code Feb 10 13:43:13 Hm Feb 10 13:43:18 ah right Feb 10 13:43:40 isnt there something like mplayer or totem for maemo? Feb 10 13:43:47 for sapwood/hildon Feb 10 13:43:55 yes, but it uses software decoding Feb 10 13:43:59 ie. cpu Feb 10 13:44:09 any way to make it use gstreamer? Feb 10 13:44:20 as in, is CLI accelerated or not? Feb 10 13:44:48 gstreamer doesnt have many modern hw codecs Feb 10 13:45:32 * Juesto sighs Feb 10 13:47:02 damn n900 doesn't want to boot while being charged from my laptop again Feb 10 13:47:36 L29Ah: charge a bit then turn it on? Feb 10 13:47:44 charging indication stops after a few seconds Feb 10 13:47:46 does it even charge? Feb 10 13:47:49 ouch Feb 10 13:47:51 how do i tell? Feb 10 13:48:00 wait..? Feb 10 13:48:14 pulsing amber or green? Feb 10 13:48:17 now the charging indication is locked on its maximum brightness Feb 10 13:48:19 amber Feb 10 13:48:26 pulsing or constant? Feb 10 13:48:34 used to be pulsing, now constant Feb 10 13:48:42 might not be charged at all Feb 10 13:48:45 ~flatbat Feb 10 13:48:49 ~ping Feb 10 13:48:49 ~pong Feb 10 13:48:53 Rip Feb 10 13:48:55 hrm Feb 10 13:49:29 ~flatbatrecover Feb 10 13:49:29 Remove battery for 1 minute. Insert battery. Plug powered ***NOKIA WALLCHARGER*** to device. Watch steady amber. Let sit and charge. Do NOT try to boot. After 30 min, you got either a) a booted up N900, b) flashing amber which means you can boot, c) steady amber shut off -> start over again with ~flatbatrecover while already searching for a new battery. CAVEAT! Only works when ~rootfs OK (no ~bootloop) Feb 10 13:50:00 hooked it into a dumb charger, see same behaviour Feb 10 13:50:15 > steady amber Feb 10 13:50:17 ok i guess Feb 10 13:50:22 Tried a proper charger? Feb 10 13:50:28 ah Feb 10 13:50:30 hm Feb 10 13:50:31 dunno what's a "proper charger" Feb 10 13:50:41 proper charger == original nokia one Feb 10 13:50:50 :D Feb 10 13:50:54 sometimes chargers have more power to charge faster Feb 10 13:50:55 Lol Feb 10 13:51:05 voltage* Feb 10 13:51:08 or whatever Feb 10 13:51:16 i doubt n900 supports that Feb 10 13:51:50 i can just hook my liion charger wires to my 18650 block but i decided to have a try with usb stuff just in case Feb 10 13:52:17 be careful Feb 10 14:07:10 heh... I had problems with charging the n900 before from a powerbank using a certain cable... now I couldn't get it to charge anymore after many attempts, and I was outside home, so got the cheapest microusb cable I could find nearby and woo, no problems charging. It also feels a lot less loose than the previous cable so maybe it's just mechanical wear on the old cable or whatever Feb 10 16:21:34 no it didn't charge Feb 10 16:21:37 that bastard Feb 10 16:21:56 reporting to be charging but not charging Feb 10 16:23:24 :( Feb 10 16:35:12 L29Ah: it is charging, but slowly, only 100 mA Feb 10 16:36:24 (assuming it is still connected to your laptop USB port) Feb 10 16:36:53 it got +10mV in 2h on a 4A*h battery Feb 10 16:37:05 (3.40 to 3.41) Feb 10 16:37:36 maybe it didn't even charge and it's the battery capacitance recovered from a current surges of starting up n900 Feb 10 16:37:39 maybe that low current isnt able to charge it? Feb 10 16:37:43 looks normal for 100 mA charge current to me Feb 10 16:38:22 L29Ah: just find 1A wall charger Feb 10 16:38:23 3.40 to 3.41 is like 1% Feb 10 16:38:44 how did you measure that voltage? Feb 10 16:38:46 i used a wall charger Feb 10 16:38:55 probing the battery Feb 10 16:38:59 is it 1A or 2.1 A? Feb 10 16:39:00 with a multimeter Feb 10 16:39:19 1A Feb 10 16:39:24 hmm Feb 10 16:39:51 could you check with your multimeter if there is a short between D+ and D- ? Feb 10 16:40:09 switched to another cable, now it has charged for real Feb 10 16:40:13 3.55V Feb 10 16:40:24 do you have any charge 'doctor' to confirm any usage? Feb 10 16:40:28 hehe Feb 10 16:40:31 figures Feb 10 16:40:35 mark that other cable as bad Feb 10 16:40:41 and the former cable works just fine for data Feb 10 16:41:00 and it detects the charger somehow over it Feb 10 16:41:01 WTF Feb 10 16:41:07 what's so bad about the cable? Feb 10 16:41:13 contacts? Feb 10 16:41:19 cheap, dumb? Feb 10 16:41:20 might be weared Feb 10 16:41:37 so they have like 3V worth of drop? Feb 10 16:42:15 I doubt bq will wait for 3V drop before stopping the charging Feb 10 16:42:24 what microusb cables should i buy from ebay btw? Feb 10 16:42:37 24avg or less Feb 10 16:42:46 they don't specify this as i see Feb 10 16:42:53 then dont buy those Feb 10 16:42:55 L29Ah: you'd better buy charger, not cables Feb 10 16:43:04 i don't need a charger Feb 10 16:43:09 ok Feb 10 16:43:12 i need a cable for emergency charging from my laptop Feb 10 16:43:24 then get good data cable Feb 10 16:43:30 4 wires Feb 10 16:43:31 i have a 4A LiIon charger for regular stuff Feb 10 16:43:31 L29Ah: it doesn;t work like that Feb 10 16:43:50 the most you got over USB is 500 mA Feb 10 16:43:57 BUT Feb 10 16:44:01 but i did the test to ensure i can charge it a bit in case i'm in a forest with my laptop and a cable Feb 10 16:44:08 fmg, some laptops are fine with much more than 500mA Feb 10 16:44:16 you should have the OS booted, iirc, otherwise you got only 100 mA Feb 10 16:44:41 KotCzarny: it is not what port can handle, it is what n900 will draw Feb 10 16:44:47 *not about Feb 10 16:44:57 fmg, oh Feb 10 16:45:05 can it be hacked so it draws 1A in every circumstance? Feb 10 16:45:24 L29Ah: yye, you need to short-circuot D+ and D- Feb 10 16:45:27 w/o messing with pcb Feb 10 16:45:30 :( Feb 10 16:45:43 you can rework the canle Feb 10 16:45:46 *cable Feb 10 16:45:58 i expected a software solution Feb 10 16:46:39 i see that n900 boots the kernel even to start charging-blinking stuff Feb 10 16:46:39 not sure, maybe there exists such a solution if you use bme replacement Feb 10 16:46:45 yes Feb 10 16:46:49 oh, well Feb 10 16:47:11 NOLO supports charging as well, but iirc it draws 100 mA only Feb 10 16:47:20 Pali_: ^^^ ? Feb 10 16:47:28 an;t remember the details Feb 10 16:47:33 *can't Feb 10 16:47:51 DocScrutinizer05 ^ Feb 10 16:47:55 :) Feb 10 17:25:41 https://wiki.maemo.org/Talk:Useful_Mobile_URLs Feb 10 17:25:46 spam detected Feb 10 17:26:09 anyone can clean it/block the user? Feb 10 17:26:18 xes? Feb 10 17:27:59 https://wiki.maemo.org/Talk:Task:Defining_maemo Feb 10 17:28:01 ugh Feb 10 17:28:56 quite a lot of spam in talk: Feb 10 17:29:13 all users are unregistered Feb 10 17:29:20 KotCzarny: I'll look Feb 10 17:29:47 https://wiki.maemo.org/Talk:MaemoCommunity_eV Feb 10 17:29:49 etc Feb 10 17:30:10 for easy spotting click history or diffs Feb 10 17:31:05 i wonder for how long it went Feb 10 17:31:43 maybe server admin can run some cleanup script (and block posting talk: entries containing links Feb 10 17:32:24 https://wiki.maemo.org/index.php?title=Special:RecentChanges&days=60&limit=500 Feb 10 17:32:39 xes, yeah, a lot Feb 10 17:33:27 i will check the wiki's anti spam filter,maybe it's not exaclty aligned to the tmo one Feb 10 17:33:51 i think its because wiki allows anonymous posting in talk: pages Feb 10 17:34:06 (the tmo one has looonger memory for bad guys) Feb 10 17:37:20 Ok fixed and bliacklisted IP's Feb 10 17:38:12 sixwheeledbeast: thanks Feb 10 17:38:29 KotCzarny: Any others? I used to have the time to check for spam on a daily basis but unfortunately not any more. Feb 10 17:39:04 Any spam on the wiki ping me I can sort it. Feb 10 17:39:08 xes: np Feb 10 17:39:46 swb: check all anonymous (ip based) adds Feb 10 17:41:11 https://wiki.maemo.org/Talk:Community_SSU Feb 10 17:44:42 KotCzarny: just done that, I can only check back 30 days and I have just blacklists and rolledback those. Feb 10 17:45:19 i cant get history older than 3 dec 2016 Feb 10 17:45:48 ok 60 days Feb 10 17:46:32 oh I can manually edit the days in the URL Feb 10 17:46:44 but i would advise someone to run some searches on anonymous adds in talk: pages Feb 10 17:48:06 Yep 3 dec is as far back as I can search Feb 10 17:49:01 btw. wmo is missing favicon Feb 10 17:49:31 and favicons make links nicer in bookmarks ;) Feb 10 17:50:10 http://wiki.maemo.org/favicon.ico Feb 10 17:50:11 ;) Feb 10 17:50:59 but its referenced in wmo pages: Feb 10 17:51:56 :nod: I already reported that but NFC what the answer was. Feb 10 17:52:16 just copy it from tmo ? Feb 10 17:52:31 maybe att white T over it to make it distinct Feb 10 17:52:37 *add Feb 10 18:30:49 KotCzarny: should point to href="/skins/monobookmaemo2009/static/maemo_favicon.ico" Feb 10 20:09:13 can n900 use all 90MB/s r/w speed of https://www.sandisk.com/home/memory-cards/microsd-cards/extremeplus-microsd ? Feb 10 20:09:49 nope. your target is a card with highest iops you can get, not sequential speed Feb 10 20:11:10 and the lowest access time? Feb 10 20:12:01 yes, but getting real (4k r/w) iops benchmarks is tricky Feb 10 20:12:52 some example? Feb 10 20:13:43 it's possible make block size bigger then 4k? Feb 10 20:15:04 most noname cards have iops in 0.1-1/s range Feb 10 20:15:30 some samsung evo +/pro manage to get ~100iops Feb 10 21:26:55 you're right http://www.cameramemoryspeed.com/reviews/sd-cards/sandisk-extreme-plus-95-90-mbs-64gb-micro-sdxc-memory-card/ only 3MB/s random write, 700ish iops Feb 10 21:30:51 ssd are designed for much more iops https://news.samsung.com/global/samsung-introduces-worlds-first-universal-flash-storage-ufs-removable-memory-card-line-up-offering-up-to-256-gigabyte-gb-capacity 40000 iops, but that's not helpful for n900 Feb 10 21:35:09 Nice! Feb 10 22:05:47 with 35000 iops it could works like RAM, so, n900 with extremely expensive 32GB RAM/ROM :) Feb 10 22:05:58 23:15:04] most noname cards have iops in 0.1-1/s range Feb 10 22:05:58 what Feb 10 22:29:55 I couldn't be surprised if Chinese people could produce something like that Feb 10 22:33:41 anyone know speed of microSD data bus in n900? Feb 10 22:34:07 maybe it's not worth the bother with fast microSD Feb 10 22:36:22 I'm getting around 12 MB/s read. Feb 10 22:36:56 I have a feeling that the maximum speed does kind of matter. Feb 10 22:37:18 what are specs of sd? Feb 10 22:37:30 iirc I would only get around 4 MB/s on a lower-end Kingston microSD, which was rated at something like 30 MB/s. Feb 10 22:38:38 speed of read or write? Feb 10 22:38:46 SanDisk 128GB Ultra® microSDXC™ UHS-I Class 10 card Feb 10 22:39:52 SD cards don't really have a particular speed. Feb 10 22:40:10 It depends on things like how the controller has laid out the data. Feb 10 22:41:00 with it you get 12MB/s in n900? Feb 10 22:41:18 Yes. Feb 10 22:41:22 236978176 bytes (237 MB) copied, 20.236 s, 11.7 MB/s Feb 10 22:41:23 and how with write? Feb 10 22:42:23 write is trickier to test. Feb 10 22:43:08 can try after remounting with -o sync, I guess. Feb 10 22:44:20 not pressure, I'm just curious Feb 10 22:45:23 I'm getting 10.6 MB/s writing to ext4 mounted with -o sync using dd with conv=fsync on Feb 10 22:45:38 (so that's to a filesystem, not just a block device) Feb 10 22:45:59 though I'm only writing zeroes, dunno if the card does something special with that. Feb 10 22:46:54 Well, I imagine the card should handle more than 10.6 MB/s anyway .. it'll at least be pushing that 10.6 MB/s in SDIO packets. Feb 10 22:47:07 I don't know also, thanks for real data with n900 Feb 10 22:47:43 The sync options are also going to usually reduce overall throughput Feb 10 22:48:45 it seems that n900 has 10MB/s speed limit on sd bus Feb 10 22:48:53 These speeds are all sequential btw, not random. Feb 10 22:50:27 random should be lower than this 10MB/s cameramemoryspeed.com/reviews/sd-cards/sandisk-extreme-plus-95-90-mbs-64gb-micro-sdxc-memory-card/ Feb 10 22:51:43 9MB/s for read and 3MB/s for write if that benchmark is with the same class card Feb 10 22:55:11 microSDXC UHS-I U3, I'm not sure for that U3 symbol Feb 10 23:34:33 a pty ff_ left. Was absolutely right it doesn't really make sense to bother, since databus is limited to 4bit buswidth * (iirc) 40MHz clockrate max, so 20MB/s Feb 10 23:35:08 *might* even be just 25MHz Feb 10 23:35:34 Question is, which cards actually work at maximum limit of the databus. Feb 10 23:38:07 all Feb 10 23:38:10 :-) Feb 10 23:38:36 except for my Kingston one. Feb 10 23:39:21 it's a pretty ancient databus protocol. Recent Ultra card only work since they support legacy protocols, the OMAP3 doesn't support those new speeds Feb 10 23:39:57 UHS-I and UHS-II are not supported by OMAP3 Feb 10 23:40:43 for write, the real show stopper is page erase needed to rewrite a block with new data. It can take up to some 100s of MILLIseconds Feb 10 23:41:12 at very least 10ms Feb 10 23:41:19 per page erase Feb 10 23:42:20 Is it possible to have faster databus with OMAP3? And what is page erase, is it like going over the card with eraser to be sure that write to card goes well? Feb 10 23:43:31 yes @ #2 Feb 10 23:43:51 no @ #1, it's a physical interface that can't do any faster Feb 10 23:44:39 OMAP has a 4bit and a 8bit storage bus, both with same max clock frequency. In N900 the 8bit is for eMMC Feb 10 23:44:42 Like, would Neo900 be able to have faster databus than N900? Feb 10 23:44:47 no Feb 10 23:44:51 alas not Feb 10 23:45:36 that's also one killer argument why Neo900 must have eMC despite many people would prefer two uSD slots: eMMC supports 8bit Feb 10 23:46:05 About page erase: is it possible to do it beforehand, like use idle time to erase empty blocks on the card so that by the time a write is needed, card already has several blocks ready? Feb 10 23:46:26 I imagine that's something the card will already do. Feb 10 23:46:26 uSD slot supports only 4bit? Feb 10 23:46:43 Hosts don't interact with SD cards as flash devices. Feb 10 23:46:58 That's all stuff that's handled by the computer inside the SD card. Feb 10 23:47:17 Maxdamantus: that would be neat, if it's implemented already. Feb 10 23:49:23 (do it beforehand) that's how all slightly smarter cards work, as long as the OS supports TRUNCATE Feb 10 23:49:42 TRUNCATE? Do you mean TRIM? Feb 10 23:50:14 if so, that has nothing no do with SD cards. Feb 10 23:50:20 the card needs to know which blocks can get erased beforehand, even writing all zeroes to a whole page doesn't automatically tell card "this is no data, this is empty storage free to use" Feb 10 23:50:38 well, that's not what SD cards typically do. Feb 10 23:51:01 uSd has only 4 bit data, yes. count the pins on your uSD card ;-) Feb 10 23:51:16 you need GND, VCC, clock r/w whatnot else Feb 10 23:51:34 DocScrutinizer05: can you provide a link to some information about this magical "TRUNCATE" thing you're talking about? Feb 10 23:51:50 or is this another case where you're just saying things about technologies you don't understandL Feb 10 23:55:21 Oksanaa: https://wiki.debian.org/SSDOptimization Feb 10 23:55:40 We're talking about SD cards, not SSDs. Feb 10 23:55:57 SD cards don't have TRIM (or "TRUNCATE" if you like making up names for things) Feb 10 23:56:17 basically all SSD rationale also applies to SD cards Feb 10 23:56:35 SD is a completely different protocol. Feb 10 23:56:44 and it doesn't have anything like TRIM in it. Feb 10 23:56:51 sorry, DISCARD, not TRUNCATE Feb 10 23:58:38 apparently it's actually ERASE Feb 11 00:02:44 the best way is to actually never use a maybe 10% of the SD card, by downsizing the partition(s) Feb 11 00:04:46 once the system wrote to all available blocks (and didn't issue a DISCARD or whatever the equivalent name on SD bus, for all the no longer needed blocks, and made sure the non-used blocks concatenate to a whole erase page), the card will significantly drop on write performance Feb 11 00:05:14 So, use up to 90% or so of the card. Feb 11 00:05:52 since the card controller can't fortune tell which pages to erase "preemptively" Feb 11 00:06:20 card always have a few hidden spare pages, but not that many Feb 11 00:06:59 Oksanaa: (90%) I mere guess by me, but sounds good Feb 11 00:07:26 So, if somebody made a card with high enough quantity of hidden spare pages, that would be easier on user. Feb 11 00:08:16 yes Feb 11 00:08:53 Well, presumably it'll usually have around 73 MB per GB of spare blocks. Feb 11 00:09:16 if its capacity is given in GB. Feb 11 00:09:44 since 1 GiB is a bit more than 73 MB more than a GB. Feb 11 00:10:57 flash usually comes in a power-of-2 number of bits, then the SD card will offer a power-of-2 number of GBs or MBs. Feb 11 00:11:16 maybe interesting (didn't read it completely): https://blogofterje.wordpress.com/2012/01/14/optimizing-fs-on-sd-card/ Feb 11 00:16:08 https://haydenjames.io/increase-performance-lifespan-ssds-sd-cards/ here it's called TRIM Feb 11 00:16:09 Do compactation? Feb 11 00:16:54 though >>Therefore, when you delete a file, your SSD is now able to write data to blocks as if it they were brand new without having to perform the cumbersome deletion process.<< obviously is utter bullshit Feb 11 00:27:15 MEH! I need to avoid looking into chanlog, always an annoyance to read that crap my /ignore luckily usually saves me to read Feb 11 00:31:24 Juesto: one of the major problems about uSD embedded controller is: it doesn't know about ext-fs or anything else than VFAT basically. On ext[234] you have inodes scattered all over the complete storage Feb 11 00:32:39 it's assumed that the SD controller even knows about File allocation Table in VFAT and optimizes using VFAT properties it knows about. Can't do same for any other filesystem Feb 11 00:36:07 Juesto: anyway SSD/SD analysis and optimization is absolutely non-trivial, due to the complex way a flash storage works and the obscure SEKRIT sauce the uSD controller adds on top Feb 11 00:36:44 Maxdamantus: SD cards have a virtual block layer on top of the real flash, which adds overhead for remapping bad blocks Feb 11 00:36:54 that's why for really tight control and fast r/w access you want NAND and a filesystem like ubifs Feb 11 00:37:11 oh hi luke-jr :-) Feb 11 00:37:17 hi DocScrutinizer05 Feb 11 00:38:39 * DocScrutinizer05 seems to recall there were plans or even initiatives to reflash the uSd controller firmware to allow using the uSD like it was normal un-managed NAND storage Feb 11 00:39:49 obviously such a project would be highly brand&make specific on the particular uSD Feb 11 00:50:33 Oksanaa: re "90%" don't get fooled: see https://www.sandisk.com/home/memory-cards/sd-cards/extremeplus-sd-uhs-i "DISCLOSURES: ... 1MB=1,000,000 bytes. ** 1GB=1,000,000,000 bytes" Feb 11 00:51:35 *plus*: "Actual user storage less." Feb 11 00:55:39 so a 32GB uSD has a 32E9 bytes, minus a non-marginal fraction for overhead like spare blocks and prolly also flash controller metadata etc Feb 11 01:19:01 AAAH and there's the term I missed: FTL aka Flash Translation Layer (aka "the uSD embedded controller) http://www.linux-mtd.infradead.org/doc/ubifs.html Feb 11 01:19:57 s/"the uSD embedded controller("the uSD embedded flash controller"/ Feb 11 01:21:01 http://www.linux-mtd.infradead.org/doc/ubifs.html#L_raw_vs_ftl Feb 11 01:21:27 13:55:39 < DocScrutinizer05> so a 32GB uSD has a 32E9 bytes, minus a non-marginal fraction for overhead like spare blocks and prolly also flash controller metadata etc Feb 11 01:21:30 No. Feb 11 01:21:53 It has 32 GiB inside, but provides at least 30 GB that you can write to. Feb 11 01:23:05 You practically can't get 32 GB in flash chips .. a 32 GB SD card will have 32 GiB of flash inside, but the block device you end up with will be around 32 GB. Feb 11 01:25:28 Hm, actually, my 128 GB card only has 127865454592 bytes. Feb 11 01:26:35 the trick with optimizing uSD is:http://www.linux-mtd.infradead.org/faq/general.html#L_mtd_vs_hdd you have an interface/protocol for a block device (left side of table, with extensions like TRIM for example), but you try to implement a "usage pattern" aka filesystem and driver that takes care about properties described on right side half of the table Feb 11 01:27:56 you need a priori knowledge (or assumptions) about how the FTL firmware works and what it does in response to what you do on the block device interface Feb 11 01:33:44 The eMMC on my N900 has 32015122432 bytes though. Feb 11 01:33:51 http://www.linux-mtd.infradead.org/faq/general.html#L_ext2_mtd >>But in many cases using mtdblock is a very bad idea because what it basically does if you change any sector of your mtdblockX device, it reads the whole corresponding eraseblock into the memory, erases the eraseblock, changes the sector in RAM, and writes the whole eraseblock back. This is very straightforward. If you have a power failure when the eraseblock is being erased, Feb 11 01:33:52 you lose all the block device sectors in it. The flash will likely decay soon because you will wear few eraseblocks out - most probably those ones which contain FAT/bitmap/inode table/etc.<< Feb 11 01:34:46 eraseblock (I called it erase page, sorry) is as large as several dozen or even hundreds of kB Feb 11 01:35:18 and to change a singke bit in it, you need to read modify erase write the whole eraseblock Feb 11 01:35:41 DocScrutinizer05: yeah, that's why you shouldn't use something like mtdblock, as mentioned above. Feb 11 01:35:51 DocScrutinizer05: something sensible would keep writing to new blocks. Feb 11 01:36:06 that's basically the principle behind log-based filesystems. Feb 11 01:36:33 The FTLs in SD cards probably do something similar. Feb 11 01:36:44 *unless* the bit change is 0->1, assuming all-0s is the result of block-erase (which takes several milliseconds as I already explained) Feb 11 01:37:47 https://en.wikipedia.org/wiki/List_of_log-structured_file_systems Feb 11 01:38:15 The filesystems at the bottom are all the standard ones for flash. Feb 11 01:38:24 including UBIFS, which is used by maemo. Feb 11 01:38:54 so stuff like FTL and ubifs implements very nifty ways to not always read-modify-write for a few bytes that need to be changed, rather it uses journals etc that simply get extended at end, writing to the already/still all-0 region of a erase block Feb 11 01:38:59 an SD card or MMC has to do the same sort of stuff, but it just provides a block device instead of a filesystem. Feb 11 01:39:55 and TRIM deals with telling FTL that a complete eraseblock is 'clean' again and ready to get erased when there's some spare time in background for doing so Feb 11 01:43:41 (simplified image, since TRIM doesn't really care about erase blocks, it has no notion about them afaik. It's up to the FTL to deduce erase blocks needing a background erase, from what fs blocks (512) TRIM told the FTL are unused Feb 11 01:43:46 ) **** ENDING LOGGING AT Sat Feb 11 03:00:01 2017