yashsingh1/xdaforums huggingface dataset:
[Touch HD General] ReDevolver:
The ROM is a stock one. I mentioned in my above post that when I tried to burn a new one that the phone lost comms so I never could get a new rom on to test if the camera would come back so I am still stock.

HTC mentioned all the same things you guys did.

Spoke to my supplier, looks like I have to send this back. Damnation!!!!!
[Touch HD General] ReDevolver:
Okay, made a few mistakes about trying a new rom but under severe pressure since my father died so I can't comprehend much at the moment.

Will try all the steps later when I am less distressed.
[Touch HD General] ReDevolver:
Sellers have gone, phone is worse.

Just to update people, this post can be locked now.

Blue Fly Mobile are gone, nobody can find them. They told me to send the phone back for repairs and when I was just about to, they turned up missing.

Web site is gone, no contact anywhere and I read in many forums about their bad rep.

Camera still gone. Battery may last a day if that. Phone randomly cuts of calls when I make them or when people make them to me.

Looks like I will be waiting for the new Samsung Galaxy Tab 10.1 when it hits OZ as it's better for my eyes.

Now, how to convince my wife that I absolutely need it???
[HD Mini General] vidaloka102000:
:confused:hello people. got mine imported equipment and not know the region to which to download the rom How do I know the region of my device.
[HD Mini General] tzacapaca:
hey..this is for download purposes only..so u can download from an area closer to u;)
[HD Mini General] malima17:
Go to official HTC site (http://www.htc.com/br/) -> Select Country -> Chose a region, for example "Asia Pacific Home" -> Support -> Choose Your Product : HTC HD mini -> Select ROM Upgrade for HTC HD mini -> Download -> Put your serial number in "1. Serial Number:" -> Submit.

If your HTC HD Mini is from Asia, you can make the ROM download, if is not you see a message error "Sorry, this software download is not suitable for your device.", than you need to try another region, until you find it.

Regards,
[HD Mini General] vidaloka102000:
;) Thanks for the tip. I could find out that my unit is ASIA.
[HD Mini General] alanchao:
Thanks so much for this awesome tip!
[Captivate Q&A, Help & Troubleshooting] sarsourus:
is there an official date yet ???
[Captivate Q&A, Help & Troubleshooting] Colton5419:
Nope, only rumors of mid-october.
[Captivate Q&A, Help & Troubleshooting] Tchem:
Yea mid october hopefully
[Captivate Q&A, Help & Troubleshooting] cappysw10:
Oh god, let's not start these types of threads again.
[Captivate Q&A, Help & Troubleshooting] Dave the Knave:
Agreed. Do people not know how to use the search feature? Or even better, how to look through the forums for something that obviously already exists? Not trying to flame here, but it's just spamming up the forums.
[Hero CDMA Q&A, Help & Troubleshooting] Vandelay007:
So I figured out I can use root explorer to extract framework-res.apk to edit the eri.xml file to change my carrier name....what I don't know is how to put it all back together to replace the current apk ...

Any tips?
[Hero CDMA Q&A, Help & Troubleshooting] danaff37:
7 zip on the pc is the best way. Right click on the apk, and just open archive, and drag and drop files as necessary. No need to rezip
[Hero CDMA Q&A, Help & Troubleshooting] Vandelay007:
Thanks!
[Hero CDMA Q&A, Help & Troubleshooting] ASimmons:
you can unzip and rezip but its not needed, you can also decompile and recompile with apktools but that is might not be needed. If your just replacing a file all you need to do is open it in 7zip or winrar and drag it in to the appropriate folder it will replace the old file. You will need to resign it though.

My question is how are you editing the xml file are you decompiling it and then editing it? if so you need to recompile the apk before you copy it back in other wise you'll most likely get boot loops since android compiles their xmls to binary format.
[Hero CDMA Q&A, Help & Troubleshooting] danaff37:
Root explorer is the easiest way to edit xml's. You can read and edit binary xml's without any hex editors and crap. Much easier.
[Hero CDMA Q&A, Help & Troubleshooting] Vandelay007:
Yeah - that's what I thought too - however - there is no option on the eri.xml file to edit it when you long press on it - you can extract it - but it just moves it to sdcard/extracted - which is what brought me to wonder how i could zip it back up -
[Hero CDMA Q&A, Help & Troubleshooting] ASimmons:
Well technically you dont need to hex edit any of android xml's they just need to decompiled. They compile them to binary for speed and optomization purposes not like a java or c compilation where compile makes byte code.

So back to apk tool... use it to decompile the apk and edit your xml then recompile it. I don't use root explorer so there might be a way to use it to accomplish the same thing.
[Vibrant Q&A, Help & Troubleshooting] VeryCoolAlan:
Hello i just rooted my vibrant and thats it.

i found the jacs kernel on his thread he says to just flash it.

do i need a custom recovery or rom first?

or can i just flash it with no ext2 partition?

sorry i had a g1 which the methods used are really different:confused:
[Vibrant Q&A, Help & Troubleshooting] richan90:
The best way is to download ROM Manager if you haven't already, flash clockwork recovery, and create a backup of your phone. Then go back into ROM Manager, reboot into recovery, and flash the new kernel.
[Vibrant Q&A, Help & Troubleshooting] VeryCoolAlan:
do i need an ext2 or swap partition?
[Vibrant Q&A, Help & Troubleshooting] Bronk93:
I too came from the G1, ah the good ole' ext2 and swap file days. But to answer your question no, you dont need either one of those. Just download Rom Manager, flash clockwork mod recovery from within rom manager then reboot into recovery.
[Vibrant Q&A, Help & Troubleshooting] VeryCoolAlan:
ah thnx guys really needed this
[Touch2 General] angus2006locked:
I want a pure chinese traditional rom...

however i hate the version of 6.5.... I want to have a chinese trad. verision that have 6.5.3 or 6.5.5....

Anyone had base rom that had this language??
[Touch2 General] william1987hx:
You can use an English version and than install a Chinese font. Search the CAB file and get it.
[Off-topic] Agent Blair:
There you have it, the iphone 4 was inspired by dominoes. This was clearly done with my very terrible MS paint/photoshop skills.

I could not of thought up this idea first!?
[G2 and Desire Z General] k0shi:
Boo i really liked having the touch to focus feature on my N1 hopefully with time it will come back. Btw what is the "infinity" option in the settings of camera focus?
[G2 and Desire Z General] androidlicious:
I don't remember that the Nexus One had touch to focus... or at least not in the default camera application.
[G2 and Desire Z General] k0shi:
I was on cm6 final :P
[G2 and Desire Z General] Superfrag:
Try vignette!

Sent from my SGH-T959
[G2 and Desire Z General] tankmorph:
The N1 does not have "touch to focus" by default, and neither does the G2. Big surprise there.
[G2 and Desire Z General] k0shi:
Hey thanks but someone already said that. Yes it was a big surprise because the n1 didn't do 720p stock but the g2 does. So I woulda thought they'd add touch to focus too
[G2 and Desire Z General] daijizai:
Try depressing the shutter button slightly... It triggers a focus then you can depress the rest of the way to capture the image.
[G2 and Desire Z General] k0shi:
That is the regular auto focus. The touch to focus is like the ones on the iphone where whatever you press on the screen is what it will focus on
[G2 and Desire Z General] tubaking182:
it was ported from vibrant to CM6, and you will not see it without CM on the phone once we get root
[G2 and Desire Z General] Jon C:
Man, that's kinda lame. I thought that was kind of a standard feature by now. I really enjoyed this feature on the Vibrant (though, I hated not having a dedicated camera button and flash).

Hopefully, Google implements this into the stock camera app.
[G2 and Desire Z General] ryaninc:
Personally, I find touch-to-focus highly annoying and I try to avoid phones that use it. A dedicated camera button is one of the most important features on a phone for me. If the G2 had only touch-to-focus, I likely wouldn't want it.

Just thought I'd chime in from the other side of the opinion. :D
[G2 and Desire Z General] Jon C:
I agree that the camera button is better, but why not have both? ;)
[G2 and Desire Z General] k0shi:
Winning statement! Lol
[G2 and Desire Z General] androidlicious:
I wish the audio recording on the G2 was better... it seems to be a common trend among HTC phones and I don't understand why it still hasn't gotten better, especially after several other phones have been introduced already.
[G2 and Desire Z General] k0shi:
Ya its kinda weird because even tho the n1 had 2 mics the audio recording was not any better then the g2 still very phone like quality
[Galaxy S I9000 General] psphknxp:
Thanks RyanZA a lot and it's good thread to all SGS users to understand what's we're running!

Keep on going!
[Galaxy S I9000 General] lycan_codex:
thanks for breaking it down for largescale comsumption ! loved reading this post.
[Galaxy S I9000 General] dakine:
Excellent post, it seems like you enjoy figuring this stuff out. Reading about it like this even gets me interested. Samsung would do well in hiring more people like you.
[Galaxy S I9000 General] andrewluecke:
Interesting.. How did you work these behaviors out, by checking the code?
[Galaxy S I9000 General] heloman_limboonhai:
Thanks RyanZA. You are a impressive coder with so much information.

thanks for sharing and hope that we can get it fix forever and get the desire HD rom for us.
[Galaxy S I9000 General] dakine:
RFS has been around for a bit and is used on other phones do those phones have the same lag issues as the sgs?

Not sure if it helps but I stumbled on this:

http://www.samsung.com/global/busin...ionmemory/downloads/RFS_130_Porting_Guide.pdf

http://movitool.ntd.homelinux.org/trac/movitool/wiki/RFS
[Galaxy S I9000 General] msri3here:
Thanks dude...

being a techy guy, enjoyed reading your post and very nice to know the details of the file system...

Looking forward to your future work and updates :)
[Galaxy S I9000 General] ykkfive:
ryanza, u crazy guy (again!! :D), u did a good job. it should be clear enough for ppl to decide which fs is a better choice for their particular uses.

and , in fact, i've tried all of them. ext4 is far more cpu extensive, and caused a lot of lags when i was listening to mp3s while surfing the internet. ext3 is the modest one, while ext2 is very fast with the expense of "possible data loss".

for the ext fs over loop devices, it seems there is no impact on performance issue, as well as the noatime and nodiratime mount options, although theoritcally they should increase the performance a bit by skipping the atime and diratime jobs
[Galaxy S I9000 General] cantIntoCode:
Thanks for the huge breakdown. Very informative. Hopefully someone sorts out this non sense in the near future. Looking forward to see what happens :)
[Galaxy S I9000 General] Hyperion82:
Great post !

Thanks for this !
[Galaxy S I9000 General] RyanZA:
It really doesn't seem that ext2 has any "possible data loss". ext2 DOES have possible "long boot up time while doing filesystem checks", but the actual data itself will be the same across all ext2,3,4. You need to use ext2 if the long bootup isn't a problem for you, but if you reboot your phone frequently then ext3,4 would be a better choice since the bootup will be far quicker! An EXT2 partition can take over 5 minutes to boot if things go badly, while an EXT3,4 should never take longer than about 10 seconds.

Data loss, if any, would be identical between EXT2,3,4 though, so don't worry about the data, only the boot up time!

The issue is fairly specific to Linux+RFS+MoviNAND - it is the way the RFS linux drivers interact with MoviNAND that seems to cause the big black screens. I don't have any other RFS devices though, so I can't test it myself.

I checked the sqlite code... but as far as the rest, it's mostly from reading the MoviNAND spec, and investigations and tests by myself and others on the RFS filesystem properties, etc. So not so much the code, because the code itself for the RFS driver is practically illegible and I barely understand it. (Magic numbers everywhere! What do they mean?)

EDIT: I'd like to add that there are no doubt missing facts in what I've written, as well as errors as to the cause of certain things. We'll eventually get this all worked out though. This doc represents the current 'All we know' about the RFS lag issue. That doesn't mean there isn't more we can still learn - I'm sure there is. If you find any inconsistencies in this, please share them so we can try and work out the truth!
[Galaxy S I9000 General] hardcore:
There are also several things that can be done to speed up RFS.

One obvious thing is to remount the partitions using the "noatime" option instead of the default "relatime". This should reduce writes-after-reads.

Tweaking the CFQ io scheduler helps tremendously. I have:

for i in $(ls -1 /sys/block/stl*) $(ls -1 /sys/block/mmc*) $(ls -1 /sys/block/bml*) $(ls -1 /sys/block/tfsr*)

do echo "0" > $i/queue/rotational

echo "1" > $i/queue/iosched/low_latency

echo "1" > $i/queue/iosched/back_seek_penalty

echo "1000000000" > $i/queue/iosched/back_seek_max

echo "0" > $i/queue/iosched/slice_idle

echo "50" > $i/queue/iosched/slice_sync

echo "20" > $i/queue/iosched/slice_async

done

Just for testing, I've tried remounting the /cache RFS partition as VFAT (FAT32), and it makes sequential writes to the same partition about 2x faster. But I think we cannot remount the /data and /dbdata partitions as VFAT.
[Galaxy S I9000 General] ykkfive:
no, ext2 did caused some data loss. i ran fsck on a ext2 parition once and it returned some unfixable blocks!

for the boot up time, i used to have include the fsck when the phone boot up b4, but i removed it already since, "for me", those "possible data losses" are insignificant. and no matter whether i pick ext2/3/4, the reboot time is about 30 secs
[Galaxy S I9000 General] RyanZA:
Those unfixable blocks would be unfixable under any EXT variant - the unfixable block is basically a block that was partially written to disk before power was cut, and therefore the checksum doesn't add up. This can happen regardless of ext2/3/4, and the data is lost under all of them (because the data was never fully written to disk). The only way to avoid this is to do a proper shutdown of the system, and not pull the battery. In EXT3/4 with journaling, the journal would simply indicate that the write to that block did not complete. In EXT2, there is no journal, so the filesystem check must trawl it's way through the entire disk and discover for itself that the data wasn't written. In both cases, the data is gone (since it was never there), but in EXT3/4 the process is much quicker. In EXT2 you'd be sitting waiting for the phone to boot up while it checks it.

The tradeoffs are very very straight forward: fast boot + slower speed vs slow boot + slightly faster speed. Not much to it.

EDIT: Not running the fsck at all on EXT2 could be bad, eventually the disk may become unmountable, and your phone won't boot. I'd say either do the check on boot and suffer the wait, or use journaling. :)
[Galaxy S I9000 General] captive:
I already had the noatime trick on my sgs, but didn't know about the cfq tweakings. Can you explain what exactly they do?
[Galaxy S I9000 General] RyanZA:
Tweaking the CFQ io scheduler helps a lot, but it has a problem: When an FSYNC is called, the app will wait until the fsync returns. No matter how you tweak the scheduler, you won't be able to get around the app sitting there waiting for all pending disk operations in the MoviNAND to complete. This gets worse and worse as much applications are running at once, since there is more for the MoviNAND to do on each sync.

So yeah, scheduling does help a bit, but it doesn't defeat the core problem. :)

BTW, if you're using Froyo and want a quick way to put in some sane CFQ scheduler settings, just set the scheduler option in the OCLF app to 'CFQ' and tick 'set on boot' - when the scheduler gets changed, Linux will put it's defaults back in and override Samsung's strange settings, which means you end up with something fairly close to what hardcore is setting here. :)
[Galaxy S I9000 General] AXIS of Reality:
I have 1 question.......:

WHY HASN'T SAMSUNG HIRED YOU YET?!

Seriously, Samsung should be able to figure that out for their own hardware and software, so why would they proceed this way if they were aware of these issues?
[Galaxy S I9000 General] ykkfive:
yes i know the risk for not fsck the disks, but it is "under control" and i am prepared to do a reflash when needed :D
[Galaxy S I9000 General] Adevem:
it's this awesome community and it's works that keeps me from selling this phone lol.
[Galaxy S I9000 General] DubZyy:
it does. i bricked my sgs by pulling out the battery with your lagfix. after that my sgs doesnt boot again... it stucked in the boot animation and i had to reflash... but the problem was that i had the 3 button problem... well hours of tries i got adb connected while booting so i could start the download mode via adb
[Galaxy S I9000 General] bub181:
Since the source code for project voodoo is available, would it be possible to modify it so that it uses ext2 instead of ext4? We could use the stock kernel method made by dkcldark.
[Galaxy S I9000 General] hardcore:
Your explanations about RFS and the sync writes may explain a lot.

echo "50" > $i/queue/iosched/slice_sync

echo "20" > $i/queue/iosched/slice_async

These settings adjust the time slices allocated to sync and async operations. I reduced these values to half of the default values, which really seems to help make the io 'smoother' (the original values were probably designed for spinning harddisks which have a seek time of 15-20ms or so).
[Galaxy S I9000 General] darkoroje:
Thank you for posting this information, and for creating the lag fix.

If the NAND really has long delays during a fsync the only solution would be to change the firmware on the MoviNAND controller itself. Is something like that even possible ? If not, the only alternative is to continue using the lag fix.
[Galaxy S I9000 General] yc1437:
Samsung engineers (i mean those in charge of sgs :), where are u, free advise GIVEN pls do something!
[Galaxy S I9000 General] vitalij:
I would also like to share my experience with moving data to ext2 loop device on top of ext2 partition on external sd card. It looks that it behaves same as internal movinand. Speed increase is good by moving data to ext2 partition, but adding loop device with ext2 on top of it makes device to fly (jpk firmware). So probably that's not movinand thing but some chipset which is handling flash (including external sd) access.
[Galaxy S I9000 General] bilboa1:
It's still not fully correct ;) Here we go again!

fsync

- fsync() is a costly operation even on fast disks. Heck its writing on slow memory instead of fast memory (ram), there's no magic.

- databases that guarantee the transaction will be completed have to call fsync() by design (guaranteed transactions have to be flushed to disk else they're not really guaranteed)

Allow me to demonstrate:

This is a EXT4 filesystem on a fast desktop system:

Nearly 4 seconds to write this tiny block (!)

Now comment out fsync() and run again:

Uho..

Note that this is a very common desktop disk (nothing especially fast or slow), and only 100 fsyncs - very few indeed, a benchmark calls a lot more usually.

(that's a WD 7200tr/min)

Now on a really fast system, set to 10000 fsyncs which is more "benchmark like" or "small sql import with fsync on" (most databases allow disabling fsync for such imports, since even 10 000 entries is not very much)

Fsync off

SQLite

About SQLite and fsync, let's get it from their documentation, cause they're not just using fsync for the heck of it:

Furthermore, every application using SQLite and do not care about data corruption calls the adequate SQLite parameter "pragma synchronous = off;" ( http://www.sqlite.org/pragma.html#pragma_synchronous )

That actually does just that: disable fsync()

Benchmarking like Quadrant do not, most likely because, well, if you want to benchmark the nand speed (on a given file system), you probably want the file to be written to disk... else you're testing the ram buffer.

Also, layar for example uses sqlite, but for most applications, i could not find evidence that they do use it. For the newsrob you can easily see the directory structure it's using which has no SQL whatsoever.

Journaling

- i'm skipping most of the journal argument,the mail is about disabling journal because the guy fears it will wear out his disk (due to additional writes), not that ext2 is safer on ssd, which is mostly wrong. samsung recommends journaling on that very nand:

http://bit.ly/bZfZBS

As for the theory that journaling makes the SGS nand much slower.. I dunno, everyone can install voodoo and see for themselves.

Doesn't mean that you can't use ext2, but I would not recommend it, the performance difference being abysmal in my eyes.

Also, do not forget that ext4 supports online defragmentation, not ext2.

here i am starting the so called slow apps again and puf.. it's loaded before i've the time to realize (faster than any phone i've ever used for that matter) - using ext4 only of course (on RFS is dead slow, sharp opposite! :p)
[Galaxy S I9000 General] SkullDeath:
Very interesting thread, thanks to all the contributors.
[Galaxy S I9000 General] fslateef:
Very nice and useful thread. Loads of knowledge is being shared :)
[Galaxy S I9000 General] RyanZA:
Did you check what the result of the EXT2 disk check was? You did do the disk check right, and understand that it can sometimes take 5 or 10 minutes, or even longer? :)

Thanks for the tests -- but the difference is, try your tests on the SGS now, and be amazed by how long each fsync takes! It's an order of magnitude higher. Now run the same fsync test on the N1, and see how much faster the syncs are.

Syncs are always going to be slow, the problem is how slow the syncs are on the SGS! At any rate, the option to turn off syncs helps performance by a lot in a lot of apps, and that's why the loopback fixes help the lag. Maybe you don't mind the slowness and prefer the safety, and that's great. But trading some data safety for performance is the whole point here, or we'd just use RFS. :) A lot of apps don't turn off synchronization, so we turn it off for them. :)

As far as journaling goes, there isn't much to talk about here.

Fact #1) Your data is perfectly safe without journaling as long as you do a disk check.

Fact #2) Journaling will slow down your phone by some amount.

You can argue whether or not the performance is worth it, etc etc, but you can't argue the facts. :) EXT4's online defragementation and other advanced features require a lot of CPU overhead, and may not be worth the cost. Again, it's a choice. The answer is not 'do what I say or the world will end'. The answer is that there are choices, and they have benefits and drawbacks. I've spoken to some very knowledgable people that I managed to track down in regards to linux filesystem kernel level details, and these are the answers I got - there are choices. :)

Thanks for the info regarding syncing though, as well as the scheduler parameters for tweaking it from hardcore. I'll try do some tests across devices when I have time! :)
[Galaxy S I9000 General] YG007:
Thanks RyanZA and everyone contributing to this thread/project.

I really enjoyed reading through the full thread. Hopefully Samsung engineers are reading this as well!
[Galaxy S I9000 General] tylerham:
Thanks for all the research and info, very informative!

Is the firmware for the MoviNAND's flash open source or reverse engineer-able?

Is there currently a known way to change it's firmware on the SGS?