1. 15 3月, 2016 8 次提交
  2. 11 3月, 2016 1 次提交
  3. 09 3月, 2016 3 次提交
    • S
      malloc: use hidden visibility · 2f0bcd4d
      Stephen Warren 提交于
      When running sandbox, the following phases occur, each with different
      malloc implementations or behaviors:
      
      1) Dynamic linker execution, using the dynamic linker's own malloc()
      implementation. This is fully functional.
      
      2) After U-Boot's malloc symbol has been hooked into the GOT, but before
      any U-Boot code has run. This phase is entirely non-functional, since
      U-Boot's gd symbol is NULL and U-Boot's initf_malloc() and
      mem_malloc_init() have not been called.
      
      At least on Ubuntu Xenial, the dynamic linker does make both malloc() and
      free() calls during this phase. Currently these free() calls crash since
      they dereference gd, which is NULL.
      
      U-Boot itself makes no use of malloc() during this phase.
      
      3) U-Boot execution after gd is set and initf_malloc() has been called.
      This is fully functional, albeit via a very simple malloc()
      implementation.
      
      4) U-Boot execution after mem_malloc_init() has been called. This is fully
      functional with a complete malloc() implementation.
      
      Furthermore, if code that called malloc() during phase 1 calls free() in
      phase 3 or later, it is likely that heap corruption will occur, since
      U-Boot's malloc implementation will assume the pointer is part of its own
      heap, although it isn't. I have not actively observed this happening.
      
      To prevent phase 2 from happening, this patch makes all of U-Boot's malloc
      library public symbols have hidden visibility. This prevents them from
      being hooked into the GOT, so only code in the U-Boot binary itself
      actually calls them; any other code will call into the standard C library
      malloc(). This also avoids the "furthermore" issue mentioned above.
      
      I have seen references to this GCC pragma in blog posts from 2008, and
      RHEL5's ancient gcc appears to accept it fine, so I believe it's quite
      safe to use it without checking gcc version.
      
      Cc: Rabin Vincent <rabin@rab.in>
      Signed-off-by: NStephen Warren <swarren@wwwdotorg.org>
      Reviewed-by: NTom Rini <trini@konsulko.com>
      Reviewed-by: NSimon Glass <sjg@chromium.org>
      2f0bcd4d
    • D
      OMAP3: am3517_evm: Add NAND MTD partitions with UBI/UBIFS support · 3f53e619
      Derald D. Woods 提交于
      - Add required UBI/UBIFS config definitions
      - Add reasonable MTD partition layout
      - Remove JFFS2 config definitions
      - Drop some CFI verbage and definitions
      - Make comment 'one-liners' truly one line
      - Improve readability and content arrangement
      Signed-off-by: NDerald D. Woods <woods.technical@gmail.com>
      Reviewed-by: NTom Rini <trini@konsulko.com>
      3f53e619
    • D
      OMAP3: am3517_evm: Use BCH8 ECC for NAND · 138daa7b
      Derald D. Woods 提交于
      Select 8-bit BCH ecc-scheme with s/w based error correction
      - OMAP_ECC_BCH8_CODE_HW_DETECTION_SW
      Signed-off-by: NDerald D. Woods <woods.technical@gmail.com>
      Reviewed-by: NTom Rini <trini@konsulko.com>
      138daa7b
  4. 02 3月, 2016 1 次提交
  5. 01 3月, 2016 4 次提交
  6. 29 2月, 2016 5 次提交
  7. 27 2月, 2016 1 次提交
  8. 26 2月, 2016 4 次提交
  9. 25 2月, 2016 13 次提交