Reconcile with carbon

Squashed commit of the following:

commit 67e2cf6fb25c78da3b91fff4749734987ee00ca5
Merge: 33c8228 a893698
Author: nuclearmistake <nuclearmistake@gmail.com>
Date:   Sat Apr 6 17:12:48 2013 -0400

    Merge remote-tracking branch 'carbon/jb-linaro' into carbon

    Change-Id: I28ebae435977d67b31a8ccf81c7eb501e3f882f2

commit a89369801fd13655d8079c455eef62587c80d334
Merge: 0a40657 4423635
Author: loosethisskin <loosethisskin@gmail.com>
Date:   Mon Nov 26 08:38:29 2012 -0500

    Merge remote-tracking branch 'origin/jellybean' into jb-linaro-strict

commit 44236356721122acc0f983b3942533daf1d7a383
Author: James Sullins <jcsullins@gmail.com>
Date:   Tue Nov 20 15:32:14 2012 -0600

    ext4_utils: fix corruption issue on kernels w/o ext4_lazyinit

     * Add a BoardConfig option BOARD_NO_EXT4_LAZYINIT
       for kernels that do not support ext4_lazyinit

     * If that option is enabled, make_ext4fs will call
       make_ext4fs_internal with init_itabs=1 thus enabling
       the creation of the unused inode tables with
       init_unused_inode_tables instead of expecting the kernel
       to do so with ext4_lazyinit on first mount

    Change-Id: If8be6dc312f0cb9d8974618f72e66cd5caeb25af

commit 0a4065701c9d0078fca668550c7f196f3a508a3e
Author: Bernhard Rosenkraenzer <Bernhard.Rosenkranzer@linaro.org>
Date:   Sun Aug 19 23:44:11 2012 +0200

    tests: Use -fno-strict-aliasing for memtest

    There's just no way to do this piece correctly:
        int dummy = 0;
        printf("corrupting our stack...\n");
        *(volatile long long*)&dummy = 0;

    Change-Id: If02ff71b3c23c3d8118694f6edba0ecf904baf8a
    Signed-off-by: Bernhard Rosenkraenzer <Bernhard.Rosenkranzer@linaro.org>

commit 02c0b5491fa8792965f6b820d79d7c20d1bdb265
Author: Daniel Drown <dan-android@drown.org>
Date:   Sun Aug 19 14:39:17 2012 -0500

    procrank/procmem fail on 0-length page mappings

    procrank prints messages such as:
    warning: could not read usage for 279
    and does not include that pid in its table of results

    procmem segfaults when run against that process

    The problem is the 0-length page map at the top of the stack:

    beb39000-beb39000 rw-p 00000000 00:00 0
    beb39000-beb5a000 rw-p 00000000 00:00 0          [stack]

    This patch changes the code to skip over that 0-length mapping when calculating
    memory usage

    Change-Id: I02aaaecdf64affbd28ab43a2d0865edda33816bc

commit e8a971f41aa9dfa9f1e147650106af155027802b
Merge: 23c184c 32243fa
Author: Steve Kondik <shade@chemlab.org>
Date:   Fri Aug 10 01:40:25 2012 -0700

    Merge branch 'jb-release' of https://android.googlesource.com/platform/system/extras into aosp

commit 23c184cf93c3319426a8ddbc938dc0ff647d7aa1
Author: Andrew Dodd <atd7@cornell.edu>
Date:   Fri Jul 27 08:40:53 2012 -0400

    ext4_utils: Fix bad merge of EMMC wipe suppression

    The order of the modules in the Makefile changed.

    The Makefile items for eMMC wipe suppression should be
    in the sections for target static and dynamic
    libext4_utils.  These were the first two modules in the
    file previously, but no longer are.

    Move the eMMC wipe configuration handling to the proper
    modules.

    Change-Id: I86861a89824af04a3b08e75049580df28bd239f7

commit 1947841c05314ebf51a22739afe052f5e901f278
Author: Ricardo Cerqueira <cyanogenmod@cerqueira.org>
Date:   Tue Jul 24 02:16:56 2012 +0100

    ext4: Let make_ext4fs be grandfathered into builds

    the asec containers switched from vfat to ext4 in JB, so
    make_ext4fs isn't really optional anymore

    Change-Id: I2b5820eaa1eda223e52fa33ea9a6744fe0361b65

commit f35f1ff888da485cda0dcad39e7ea9bdc8e399d6
Author: Koushik Dutta <koushd@gmail.com>
Date:   Tue Jan 11 18:30:15 2011 -0800

    Store the uid and gid (when running on an Android device). Create a utility executable.

    Change-Id: Iae0560ceaf1663a8ac123ef09e213fa2798a7178

commit 60c5383fd093826fb3f95f3dda4f313aa54f4f69
Author: David Ferguson <ferguson.david@gmail.com>
Date:   Thu Jun 7 21:00:41 2012 -0400

    ext4_utils: add BoardConfig define to suppress EMMC-corrupting wipe command

    If BOARD_SUPPRESS_EMMC_WIPE is true, the EMMC wipe command will not be
    issued. This works around a bug in some firmware revisions of Samsung EMMC's
    that permanently damages the device when the wipe command is issued.

    For affected devices with kernel source, MMC_CAP_ERASE should be removed
    from the kernel instead.

    This is only part of the solution but it does handle the "flashing CM9
    for the first time on an unsafe kernel" situation.

    Change-Id: Ie4e31f9268a65218e5d344ae3068b021790fc33c

commit 222421c7f3f7662d594cc0ebfe0b2912cb028a32
Author: Koushik Dutta <koushd@gmail.com>
Date:   Sun Nov 20 21:01:14 2011 -0800

    remove su for Superuser version.

commit 78e60c6ef72a7576e740553a74b30cfcc9e16d57
Author: Koushik Dutta <koushd@gmail.com>
Date:   Sat Jan 1 15:58:13 2011 -0800

    mkimage for OMAP

commit 79e8260a95f66f326db30627ad7791ab11b01daf
Author: Koushik Dutta <koushd@gmail.com>
Date:   Tue Jan 11 18:30:15 2011 -0800

    Store the uid and gid (when running on an Android device). Create a utility executable.

    Change-Id: Iae0560ceaf1663a8ac123ef09e213fa2798a7178

commit 962239392ab99fe229a40560065afb221e5a3e8f
Author: Ken Sumrall <ksumrall@android.com>
Date:   Wed Jun 27 16:01:40 2012 -0700

    Fix a few bugs in rand_emmc_perf

    Fix the code to properly read urandom to init the random number generator.
    Fix to properly read the arguments if any options are given.
    Fix to enable it to be built against glibc.

    Change-Id: I9127a71232e39afa3054fe9f1612def9ae13d9d3

Change-Id: I194eb5ae4abdd0ac706a28e7e4246ab4078023d8