[Galaxy S III Android Development] forumber2:
Hello XDA community :)

I'm using my GT-I9300 via reparititoned table for 4 months and it's working very well and very useful for Custom ROM users like us.

Here's stock 16 GB GT-I9300 has a partition table;

Model: MMC VTU00M (sd/mmc)
Disk /dev/block/mmcblk0: 15.8GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt

Number Start End Size File system Name Flags
1 4194kB 8389kB 4194kB BOTA0
2 8389kB 12.6MB 4194kB BOTA1
3 12.6MB 33.6MB 21.0MB ext4 EFS
4 33.6MB 41.9MB 8389kB PARAM
5 41.9MB 50.3MB 8389kB BOOT
6 50.3MB 58.7MB 8389kB RECOVERY
7 58.7MB 92.3MB 33.6MB RADIO
8 92.3MB 1166MB 1074MB ext4 CACHE
9 1166MB 2777MB 1611MB ext4 SYSTEM
10 2777MB 3364MB 587MB ext4 HIDDEN
11 3364MB 3372MB 8389kB OTA
12 3372MB 15.8GB 12.4GB ext4 USERDATA

As you can see, Samsung give 1GB to /cache partition and ~587MB to /preload partition. If your phone is out of OTA update service (if your phone is rooted, it's already out of OTA) they're the most useless things in your device.

Why /cache partition is soooooo big?

The system downloads Android OTA updates to /cache. If you want update your

phone 4.1.2 to 4.3 via OTA, the device needs to have enough space for store the update. That's why /cache partition is so big. But, if your device is rooted (or you're using a custom ROM), that doesn't matter because the device is out of OTA update service already.

What is the HIDDEN (/preload) partition?

It's just only for Samsung's craps. It only has a ringtone, and a video called Nature of .... (I don't remember the video name).

So, what should I do?

If you are a Custom ROM user or using device with root, you don't need those sooo big partitions. You should resize them.

What will this guide do to my device?

You will shrink those useless partitions and give more space to /data ( User data) partition.

Is there any risk?

Of course. Re-partition an Android device is one of the most dangerous thinks.

Is there any disadvantages?

Yes. If you done this guide and resize your partitions, you can't install any Official ROM via Odin.

Which types of packages that I cannot install via Odin after Re-partition?

You can't install Official ROMs (downloaded from sammobile.com, samsung-updates.com, etc). But you can install kernels, modems, bootloaders, recoveries via Odin without any problem.

What is gonna happen if I install an Official ROM via Odin after Re-partition?

Your device will be semi-bricked. Recovery cannot mount&format some partitions. But you can restore/unbrick your device with PIT file.

Which device that I can do repartition?

16 GB of GT-I9300 only. Please don't try it to other devices.

Can I install anything on CWM?

Of course. You can do anything like before on your device with Custom Recovery. You can install anything like always.

Is there any guide to revert it back?

Yes, in second post.

Is there anything you want to say before start operation?

Your device will be freshed after repartition, so you should make Nandroid Backup and backup your internal sdcard.

Screenshots​

Guide​

* You have to use latest Philz Recovery on this operation. You can go back your favorite recovery again after repartition. And I am not responsible for any problems that on your device!

1 - Download "repart_16GB_GT-I9300_CWM.zip" or if you use AOSP and you hate sammy ROMs, download "repart_16GB_GT-I9300_CWM_AOSPv2.zip" from attachments and copy it to

external

sdcard.

2 - Make sure that you backup everything on your device

3 - Boot to recovery ( Latest Philz Touch)

4 - Install the zip file you've downloaded . After installation, device will reboot to recovery automatically.

5 - You can see some mount errors while booting recovery. Don't panic.

6 - Wipe Data/Factory Reset --> Clean to Install a New ROM (You may see some error, don't worry)

7 - Mounts and Storage --> format /data and /data/media (/sdcard)

8 - Bingo! Restore your system, or install a ROM.

That's it! After doing repartition (not AOSP one), your partition table will be;

Model: MMC VTU00M (sd/mmc)
Disk /dev/block/mmcblk0: 15.8GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt

Number Start End Size File system Name Flags
1 4194kB 8389kB 4194kB BOTA0
2 8389kB 12.6MB 4194kB BOTA1
3 12.6MB 33.6MB 21.0MB ext4 EFS
4 33.6MB 41.9MB 8389kB PARAM
5 41.9MB 50.3MB 8389kB BOOT
6 50.3MB 58.7MB 8389kB RECOVERY
7 58.7MB 92.3MB 33.6MB RADIO
8 92.3MB 193MB 101MB ext4 CACHE
9 193MB 1805MB 1612MB ext4 SYSTEM
10 1805MB 1820MB 15.0MB ext4 HIDDEN
11 1820MB 1828MB 8000kB OTA
12 1828MB 15.8GB 13.9GB ext4 USERDATA

As you see, we have +1.5GB on USERDATA partition.