Originally Posted by jgaviota
I think Samsung opted to workaround the problem in the recovery instead of disabling MMC_CAP_ERASE because of a possible loss of performance over time if the Trim command isn't issued, what do you think?
Also if we knew for certain what are ALL the triggers for the emmc bug in the 0x19 firmware we could determine the best place for the fix.
So far, there's only one case where there is evidence that Samsung worked around the eMMC defect - and they did it in the kernel by disabling MMC_CAP_ERASE. (I9100 update4 sources).
With a kernel fix, you guarantee to have fixed EVERY possible method for triggering the bug on the target device.
If you try to fix it in recovery - there are, as sfhub pointed out, 2-4 different places you have to fix it, and in many cases (update-binaries), there could be "dangerous" items still floating out there. This also means that you have to fork your recovery source code from AOSP and maintain THAT as a separate branch and hope everyone else for your device does too (otherwise, the third-party developer community can still give you a PR fiasco). Fix it in the kernel and you fix it for all situations.
As to performance impacts - all of the evidence we have says that TRIM/ERASE simply aren't issued in any "safe" firmware configuration.