Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add support for bug table and data in .bss sections #133

Merged
merged 5 commits into from
Apr 22, 2014
Merged

Add support for bug table and data in .bss sections #133

merged 5 commits into from
Apr 22, 2014

Commits on Apr 21, 2014

  1. support .bss.* bundling

    Allow bundling of .bss.* sections that are the result of -fdata-sections
    so that rela sections referencing data in bss sections by section symbol
    can be replaced with the object symbol so it can be linked to the existing
    data object in the kernel.
    
    Signed-off-by: Seth Jennings <sjenning@redhat.com>
    sjenning committed Apr 21, 2014
    Configuration menu
    Copy the full SHA
    09262d4 View commit details
    Browse the repository at this point in the history
  2. use d_size instead of sh_size

    The section header size is calculated at output time by libelf
    and we use it as a read-only value from read files.
    
    With the next patch we are changing the size of the .rela__bug_table
    section.  Lets use d_size instead since it is the value that tells
    libelf how to calculate sh_size at output time.
    
    Signed-off-by: Seth Jennings <sjenning@redhat.com>
    sjenning committed Apr 21, 2014
    Configuration menu
    Copy the full SHA
    3753f06 View commit details
    Browse the repository at this point in the history
  3. add bug table support

    This commit adds a new function to properly handle the bug table.
    It works by going through .rela__bug_table, after the changed
    function symbols have already been marked, and rewrites the section
    including only the relocations pertaining to bug entries for
    changed functions.
    
    The __bug_table section itself is not modified resulting in
    "blank" bug entries: ones whose IP and filename pointers will
    not be relocated and, therefore, will be zero.  While a waste
    of space, it simplifies the code not to remove these blank
    entries. They do no harm.
    
    Signed-off-by: Seth Jennings <sjenning@redhat.com>
    sjenning committed Apr 21, 2014
    Configuration menu
    Copy the full SHA
    7cfcce1 View commit details
    Browse the repository at this point in the history
  4. add info to expected rela sym error

    While debugging the code for the bug table logic, I found it useful to
    know which rela section and entry the error occurred on.
    
    Signed-off-by: Seth Jennings <sjenning@redhat.com>
    sjenning committed Apr 21, 2014
    Configuration menu
    Copy the full SHA
    ab07805 View commit details
    Browse the repository at this point in the history

Commits on Apr 22, 2014

  1. fixup review comments

    Signed-off-by: Seth Jennings <sjenning@redhat.com>
    sjenning committed Apr 22, 2014
    Configuration menu
    Copy the full SHA
    47d4109 View commit details
    Browse the repository at this point in the history