0

My Samsung Galaxy S3 has a range of strange problems. I'm running CM11 but they started well before I moved away from Stock. I rommed my phone in hopes of fixing them, assuming it was software related.

Issues in order of appearance:

  • While recording videos with the camera, the picture will often lock up momentarily, then come good. This same stutter is then visible in the recorded video. Shooting video direct to an external SD did not fix this
  • When pressing the stop button to end a video recording, the camera interface locks up for up to a couple of minutes before I then see the slide out thumbnail to indicate that the video was saved to my storage. It seems the longer the video, the longer I wait. 10 seconds can take up to 30 seconds. Other times it can just be instant.
  • App store updates or installs fail occasionally for no apparent reason, but work on retry.
  • Screen suddenly goes blank, but the phone is still responsive. If I press the home or power button I get illumination on my buttons, as it does when responding to touch on the lockscreen. I've left my phone for up to 15 minutes to see if it comes good but sadly only a battery-pull does the trick.
  • Dialog box appears while receiving a call to say the Contacts has crashed.

I've been trying to find a way to scan for file system errors on my internal storage using fsck, but I can't seem to find exactly what I'm after. Surely there is a way to do a humble "check disk" on an Android device?

  • Using a terminal app, you can directly call the relevant binaries (note that on Linux/Unix systems, there is no chkdsk – but it's named fsck, "fs" standing for "file system"). In user-mode you should be able to test integrity; in order to repair anything you probably need root powers. // I agree that sounds like file system errors or bad blocks; but with the external SD card affected as well, it might rather be a defective controler. If you still have warranty, I'd hurry up giving the device to service while you can. – Izzy Mar 26 '15 at 12:30
  • Thanks for the response, I've tried to get my head around using fsck but I don't know which version I should run. My phone has e2fsck, fsck.exfat, fsck.f2fs and fsck_msdos. I presume I need to use e2fsck based on some sites I've read, but either way have no idea which partition to run it against, as I'm not familiar with the structure of the Android filesystem. Any help would be awesome! – irwazr Mar 26 '15 at 13:53
  • Also the warranty option is long expired by about 2 years now. I should have returned it when I first saw the issue, but it was so rare at that stage I just assumed it was a software bug that would be fixed in an update. – irwazr Mar 26 '15 at 13:55
1

As I wrote in my comment on the question, I rather think it's a defect in the controller – which is nothing you can fix yourself. Still, you might wish to at least check things. So I'll try to explain:

Preparation

To do all that manually, some pre-conditions must be met. You will need:

  • a terminal app. Terminal Emulator for Android would be a good choice: open-source, and available on Google Play as well as on F-Droid and on Aptoide.
  • alternatively: ADB to access the command-line of your Android device directly from your computer via USB. Much more comfortable, as you have a real keyboard and a big screen. If you want to go this way, see Is there a minimal installation of ADB?
  • optionally: will definitely prove helpful, as this would also allow you to repair things.

Step 1: Find your "drives"

In a first "operative step", you need to evaluate what partitions there are, and which each of them uses. Open your terminal (or run adb shell) to get to the , and invoke the mount command. For what to expect, let me steal a screenshot from this post:

output of mount command
Example output of the mount command (click image for larger variant)

Now, not all entries are relevant to you. Check Android Folder Hierarchy to pick those you're interested in. For your case, the one holding /data/data will be of special interest. The example screenshot has it in the line with /dev/block/platform/dw_mmc.0/by-name/userdata, and we see it is using Android Folder Hierarchy as file system – more specifically: EXT4.

You might also wish to check other partitions, but make sure to stick to those with "real file systems" – and skip things like rootfs, tmpfs, sysfs, cgroup, etc. Basically, all those partitions you're interested in will most likely use either some extfs, or (for the SDCard) some FAT.

Step 2: Check the "drives"

Now that we know what we have, we can pick the matching tool. Our example uses ExtFS, so we need some fsck for that. As you assumed, from your collection e2fsck would seem the closest match here (though, if there's something specific to ext4, I'd check that first in the given example). Most parts of the different ExtFS versions are somehow backward-compatible – at least when it comes to "basic checks": EXT3 is, in easy terms, just EXT2 with a journal added – drop that journal, and you're back to EXT2.

Now how to run the check? Again, we already have answers for that – see e.g. How to check filesystem (/sdcard) for errors?, which gives us (for a read-only check run doing no repairs)

e2fsck -n /dev/block/platform/dw_mmc.0/by-name/userdata

If that finds errors, and you have root access to your device, you can replace -n ("no, don't do anything") by -y ("yes, please repair all issues you find if you can"). This might report (and optionally fix) some "bad blocks" which may have caused your issues – though the OS should attempt that itself on startup (boot). With root-access, however, it might interactively prompt you for things it didn't dare to repair automatically, so you might have a chance to improve your situation.

| improve this answer | |
  • Thanks for taking the time to provide this excellent explanation. Sorry it took so long to accept. The issue is definitely in the controller, and my phone has degraded even further since this post. I guess it's time to look for a new phone. – irwazr Jun 28 '15 at 12:24
  • Agreed. With the device being out of warranty (which I assume it is in your case), a new device indeed might be cheaper than a repair. – Izzy Jun 28 '15 at 13:42

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.