mbox

[v9,0/3] Add p_align tests for PT_LOAD segments

Message ID 20220121211205.268178-1-hjl.tools@gmail.com
Headers

Message

H.J. Lu Jan. 21, 2022, 9:12 p.m. UTC
  Changes from v8:

1. Drop elf: Properly align all PT_LOAD segments, which has been checked
into mastr branch.
2. Build tst-p_alignmod-base.so with  -Wl,-z,max-page-size=0x200000.
3. Simplify tst-p_alignmod1-edit.c.

Changes from v7:

1. Skip non-power of two alignment when considering the maximum p_align.
2. Add tst-p_alignmod-base.c to build tst-p_alignmod-base.so with

bool
__attribute__ ((weak, noclone, noinline))
is_aligned_p (void *p, int align)
{
  return (((uintptr_t) p) & (align - 1)) == 0;
}

3. Update the Copyright year.

Changes from v6:

1. Rebase.
2. Add tests for other p_align cases.

H.J. Lu (3):
  elf: Add a test for PT_LOAD segments with mixed p_align [BZ #28676]
  elf: Add a test for PT_LOAD segments with p_align == 1 [BZ #28688]
  elf: Add a test for PT_LOAD segments with invalid p_align [BZ #28688]

 elf/Makefile               |  39 ++++++++++++
 elf/tst-elf-edit.h         | 126 +++++++++++++++++++++++++++++++++++++
 elf/tst-p_align.h          |  20 ++++++
 elf/tst-p_align1.c         |  27 ++++++++
 elf/tst-p_align2.c         |  27 ++++++++
 elf/tst-p_align3.c         |  27 ++++++++
 elf/tst-p_align3.sh        |  27 ++++++++
 elf/tst-p_alignmod-base.c  |  41 ++++++++++++
 elf/tst-p_alignmod1-edit.c |  27 ++++++++
 elf/tst-p_alignmod2-edit.c |  27 ++++++++
 elf/tst-p_alignmod3.c      |  25 ++++++++
 11 files changed, 413 insertions(+)
 create mode 100644 elf/tst-elf-edit.h
 create mode 100644 elf/tst-p_align.h
 create mode 100644 elf/tst-p_align1.c
 create mode 100644 elf/tst-p_align2.c
 create mode 100644 elf/tst-p_align3.c
 create mode 100755 elf/tst-p_align3.sh
 create mode 100644 elf/tst-p_alignmod-base.c
 create mode 100644 elf/tst-p_alignmod1-edit.c
 create mode 100644 elf/tst-p_alignmod2-edit.c
 create mode 100644 elf/tst-p_alignmod3.c