Message ID | 20181024165352.4578-1-eric.engestrom@intel.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | [libdrm,1/2] symbol-check: ignore platform symbols | expand |
On Wednesday, 2018-10-24 17:53:51 +0100, Eric Engestrom wrote: > Fixes the tests on ARM, but more importantly this makes it much easier > to maintain. BTW I have a wip to replace all of those with a python script that will be more thorough in its checks, but until that lands this is already a good step. (Just mentioning it so that someone else doesn't see this as an opportunity to start the same project again.) > > Signed-off-by: Eric Engestrom <eric.engestrom@intel.com> > --- > amdgpu/amdgpu-symbol-check | 7 +------ > etnaviv/etnaviv-symbol-check | 7 +------ > exynos/exynos-symbol-check | 7 +------ > freedreno/freedreno-symbol-check | 7 +------ > intel/intel-symbol-check | 7 +------ > libkms/kms-symbol-check | 7 +------ > nouveau/nouveau-symbol-check | 7 +------ > omap/omap-symbol-check | 7 +------ > radeon/radeon-symbol-check | 7 +------ > tegra/tegra-symbol-check | 11 +---------- > 10 files changed, 10 insertions(+), 64 deletions(-) > > diff --git a/amdgpu/amdgpu-symbol-check b/amdgpu/amdgpu-symbol-check > index 6f5e0f95b7faf4bd86da..d97f702e6baa653e2fff 100755 > --- a/amdgpu/amdgpu-symbol-check > +++ b/amdgpu/amdgpu-symbol-check > @@ -5,13 +5,8 @@ set -u > # The following symbols (past the first five) are taken from the public headers. > # A list of the latter should be available Makefile.am/libdrm_amdgpuinclude_HEADERS > > -FUNCS=$($NM -D --format=bsd --defined-only ${1-.libs/libdrm_amdgpu.so} | awk '{print $3}' | while read func; do > +FUNCS=$($NM -D --format=bsd --defined-only ${1-.libs/libdrm_amdgpu.so} | grep -o "T .*" | cut -c 3- | while read func; do > ( grep -q "^$func$" || echo $func ) <<EOF > -__bss_start > -_edata > -_end > -_fini > -_init > amdgpu_bo_alloc > amdgpu_bo_cpu_map > amdgpu_bo_cpu_unmap > diff --git a/etnaviv/etnaviv-symbol-check b/etnaviv/etnaviv-symbol-check > index 1891068891ae673b14ff..fa043f65bc7309fe1a8c 100755 > --- a/etnaviv/etnaviv-symbol-check > +++ b/etnaviv/etnaviv-symbol-check > @@ -5,13 +5,8 @@ set -u > # The following symbols (past the first five) are taken from the public headers. > # A list of the latter should be available Makefile.sources/LIBDRM_ETNAVIV_H_FILES > > -FUNCS=$(nm -D --format=bsd --defined-only ${1-.libs/libdrm_etnaviv.so} | awk '{print $3}'| while read func; do > +FUNCS=$($NM -D --format=bsd --defined-only ${1-.libs/libdrm_etnaviv.so} | grep -o "T .*" | cut -c 3- | while read func; do > ( grep -q "^$func$" || echo $func ) <<EOF > -__bss_start > -_edata > -_end > -_fini > -_init > etna_device_new > etna_device_new_dup > etna_device_ref > diff --git a/exynos/exynos-symbol-check b/exynos/exynos-symbol-check > index 49d611e6b9b4fc1db6c6..861a6f88af641fb21f49 100755 > --- a/exynos/exynos-symbol-check > +++ b/exynos/exynos-symbol-check > @@ -5,13 +5,8 @@ set -u > # The following symbols (past the first five) are taken from the public headers. > # A list of the latter should be available Makefile.am/libdrm_exynos*_HEADERS > > -FUNCS=$($NM -D --format=bsd --defined-only ${1-.libs/libdrm_exynos.so} | awk '{print $3}'| while read func; do > +FUNCS=$($NM -D --format=bsd --defined-only ${1-.libs/libdrm_exynos.so} | grep -o "T .*" | cut -c 3- | while read func; do > ( grep -q "^$func$" || echo $func ) <<EOF > -__bss_start > -_edata > -_end > -_fini > -_init > exynos_bo_create > exynos_bo_destroy > exynos_bo_from_name > diff --git a/freedreno/freedreno-symbol-check b/freedreno/freedreno-symbol-check > index 978026c09d511b82e9bd..0b9bffee864051b567e1 100755 > --- a/freedreno/freedreno-symbol-check > +++ b/freedreno/freedreno-symbol-check > @@ -5,13 +5,8 @@ set -u > # The following symbols (past the first five) are taken from the public headers. > # A list of the latter should be available Makefile.sources/LIBDRM_FREEDRENO_H_FILES > > -FUNCS=$($NM -D --format=bsd --defined-only ${1-.libs/libdrm_freedreno.so} | awk '{print $3}'| while read func; do > +FUNCS=$($NM -D --format=bsd --defined-only ${1-.libs/libdrm_freedreno.so} | grep -o "T .*" | cut -c 3- | while read func; do > ( grep -q "^$func$" || echo $func ) <<EOF > -__bss_start > -_edata > -_end > -_fini > -_init > fd_bo_cpu_fini > fd_bo_cpu_prep > fd_bo_del > diff --git a/intel/intel-symbol-check b/intel/intel-symbol-check > index de377bef1377c57d8fe0..917acbc1dd7aa92fba53 100755 > --- a/intel/intel-symbol-check > +++ b/intel/intel-symbol-check > @@ -5,13 +5,8 @@ set -u > # The following symbols (past the first five) are taken from the public headers. > # A list of the latter should be available Makefile.sources/LIBDRM_INTEL_H_FILES > > -FUNCS=$($NM -D --format=bsd --defined-only ${1-.libs/libdrm_intel.so} | awk '{print $3}' | while read func; do > +FUNCS=$($NM -D --format=bsd --defined-only ${1-.libs/libdrm_intel.so} | grep -o "T .*" | cut -c 3- | while read func; do > ( grep -q "^$func$" || echo $func ) <<EOF > -__bss_start > -_edata > -_end > -_fini > -_init > drm_intel_bo_alloc > drm_intel_bo_alloc_for_render > drm_intel_bo_alloc_tiled > diff --git a/libkms/kms-symbol-check b/libkms/kms-symbol-check > index 30f444f7b513bf6203e5..d1ded231da9737248099 100755 > --- a/libkms/kms-symbol-check > +++ b/libkms/kms-symbol-check > @@ -5,13 +5,8 @@ set -u > # The following symbols (past the first five) are taken from the public headers. > # A list of the latter should be available Makefile.sources/LIBKMS_H_FILES > > -FUNCS=$($NM -D --format=bsd --defined-only ${1-.libs/libkms.so} | awk '{print $3}'| while read func; do > +FUNCS=$($NM -D --format=bsd --defined-only ${1-.libs/libkms.so} | grep -o "T .*" | cut -c 3- | while read func; do > ( grep -q "^$func$" || echo $func ) <<EOF > -__bss_start > -_edata > -_end > -_fini > -_init > kms_bo_create > kms_bo_destroy > kms_bo_get_prop > diff --git a/nouveau/nouveau-symbol-check b/nouveau/nouveau-symbol-check > index 6296244c15ffadfddf3b..37c962c7af501e120709 100755 > --- a/nouveau/nouveau-symbol-check > +++ b/nouveau/nouveau-symbol-check > @@ -5,13 +5,8 @@ set -u > # The following symbols (past the first five) are taken from the public headers. > # A list of the latter should be available Makefile.sources/LIBDRM_NOUVEAU_H_FILES > > -FUNCS=$($NM -D --format=bsd --defined-only ${1-.libs/libdrm_nouveau.so} | awk '{print $3}'| while read func; do > +FUNCS=$($NM -D --format=bsd --defined-only ${1-.libs/libdrm_nouveau.so} | grep -o "T .*" | cut -c 3- | while read func; do > ( grep -q "^$func$" || echo $func ) <<EOF > -__bss_start > -_edata > -_end > -_fini > -_init > nouveau_bo_map > nouveau_bo_name_get > nouveau_bo_name_ref > diff --git a/omap/omap-symbol-check b/omap/omap-symbol-check > index 16da3c406dca468b803f..1c08b68a5a22bdfbee5a 100755 > --- a/omap/omap-symbol-check > +++ b/omap/omap-symbol-check > @@ -5,13 +5,8 @@ set -u > # The following symbols (past the first five) are taken from the public headers. > # A list of the latter should be available Makefile.am/libdrm_omap*HEADERS > > -FUNCS=$($NM -D --format=bsd --defined-only ${1-.libs/libdrm_omap.so} | awk '{print $3}'| while read func; do > +FUNCS=$($NM -D --format=bsd --defined-only ${1-.libs/libdrm_omap.so} | grep -o "T .*" | cut -c 3- | while read func; do > ( grep -q "^$func$" || echo $func ) <<EOF > -__bss_start > -_edata > -_end > -_fini > -_init > omap_bo_cpu_fini > omap_bo_cpu_prep > omap_bo_del > diff --git a/radeon/radeon-symbol-check b/radeon/radeon-symbol-check > index da605bb88912a986da06..176001a3ac098665b222 100755 > --- a/radeon/radeon-symbol-check > +++ b/radeon/radeon-symbol-check > @@ -5,13 +5,8 @@ set -u > # The following symbols (past the first five) are taken from the public headers. > # A list of the latter should be available Makefile.sources/LIBDRM_RADEON_H_FILES > > -FUNCS=$($NM -D --format=bsd --defined-only ${1-.libs/libdrm_radeon.so} | awk '{print $3}'| while read func; do > +FUNCS=$($NM -D --format=bsd --defined-only ${1-.libs/libdrm_radeon.so} | grep -o "T .*" | cut -c 3- | while read func; do > ( grep -q "^$func$" || echo $func ) <<EOF > -__bss_start > -_edata > -_end > -_fini > -_init > radeon_bo_debug > radeon_bo_get_handle > radeon_bo_get_src_domain > diff --git a/tegra/tegra-symbol-check b/tegra/tegra-symbol-check > index 8539b95be7a036b554f3..a613df878c46b67294be 100755 > --- a/tegra/tegra-symbol-check > +++ b/tegra/tegra-symbol-check > @@ -4,17 +4,8 @@ set -u > > # The following symbols (past the first nine) are taken from tegra.h. > > -FUNCS=$($NM -D --format=bsd --defined-only ${1-.libs/libdrm_tegra.so} | awk '{print $3}'| while read func; do > +FUNCS=$($NM -D --format=bsd --defined-only ${1-.libs/libdrm_tegra.so} | grep -o "T .*" | cut -c 3- | while read func; do > ( grep -q "^$func$" || echo $func ) <<EOF > -__bss_end__ > -__bss_start__ > -__bss_start > -__end__ > -_bss_end__ > -_edata > -_end > -_fini > -_init > drm_tegra_bo_get_flags > drm_tegra_bo_get_handle > drm_tegra_bo_get_tiling > -- > Cheers, > Eric >
On Wed, 24 Oct 2018 at 17:59, Eric Engestrom <eric.engestrom@intel.com> wrote: > > On Wednesday, 2018-10-24 17:53:51 +0100, Eric Engestrom wrote: > > Fixes the tests on ARM, but more importantly this makes it much easier > > to maintain. > > BTW I have a wip to replace all of those with a python script that will > be more thorough in its checks, but until that lands this is already > a good step. > (Just mentioning it so that someone else doesn't see this as an > opportunity to start the same project again.) > You already had a series (in POSIX shell) that tweaks those. I guess one can trivially rebase that and apply. AFAICT nothing* really relies on python so the change seems quite strange. -Emil
diff --git a/amdgpu/amdgpu-symbol-check b/amdgpu/amdgpu-symbol-check index 6f5e0f95b7faf4bd86da..d97f702e6baa653e2fff 100755 --- a/amdgpu/amdgpu-symbol-check +++ b/amdgpu/amdgpu-symbol-check @@ -5,13 +5,8 @@ set -u # The following symbols (past the first five) are taken from the public headers. # A list of the latter should be available Makefile.am/libdrm_amdgpuinclude_HEADERS -FUNCS=$($NM -D --format=bsd --defined-only ${1-.libs/libdrm_amdgpu.so} | awk '{print $3}' | while read func; do +FUNCS=$($NM -D --format=bsd --defined-only ${1-.libs/libdrm_amdgpu.so} | grep -o "T .*" | cut -c 3- | while read func; do ( grep -q "^$func$" || echo $func ) <<EOF -__bss_start -_edata -_end -_fini -_init amdgpu_bo_alloc amdgpu_bo_cpu_map amdgpu_bo_cpu_unmap diff --git a/etnaviv/etnaviv-symbol-check b/etnaviv/etnaviv-symbol-check index 1891068891ae673b14ff..fa043f65bc7309fe1a8c 100755 --- a/etnaviv/etnaviv-symbol-check +++ b/etnaviv/etnaviv-symbol-check @@ -5,13 +5,8 @@ set -u # The following symbols (past the first five) are taken from the public headers. # A list of the latter should be available Makefile.sources/LIBDRM_ETNAVIV_H_FILES -FUNCS=$(nm -D --format=bsd --defined-only ${1-.libs/libdrm_etnaviv.so} | awk '{print $3}'| while read func; do +FUNCS=$($NM -D --format=bsd --defined-only ${1-.libs/libdrm_etnaviv.so} | grep -o "T .*" | cut -c 3- | while read func; do ( grep -q "^$func$" || echo $func ) <<EOF -__bss_start -_edata -_end -_fini -_init etna_device_new etna_device_new_dup etna_device_ref diff --git a/exynos/exynos-symbol-check b/exynos/exynos-symbol-check index 49d611e6b9b4fc1db6c6..861a6f88af641fb21f49 100755 --- a/exynos/exynos-symbol-check +++ b/exynos/exynos-symbol-check @@ -5,13 +5,8 @@ set -u # The following symbols (past the first five) are taken from the public headers. # A list of the latter should be available Makefile.am/libdrm_exynos*_HEADERS -FUNCS=$($NM -D --format=bsd --defined-only ${1-.libs/libdrm_exynos.so} | awk '{print $3}'| while read func; do +FUNCS=$($NM -D --format=bsd --defined-only ${1-.libs/libdrm_exynos.so} | grep -o "T .*" | cut -c 3- | while read func; do ( grep -q "^$func$" || echo $func ) <<EOF -__bss_start -_edata -_end -_fini -_init exynos_bo_create exynos_bo_destroy exynos_bo_from_name diff --git a/freedreno/freedreno-symbol-check b/freedreno/freedreno-symbol-check index 978026c09d511b82e9bd..0b9bffee864051b567e1 100755 --- a/freedreno/freedreno-symbol-check +++ b/freedreno/freedreno-symbol-check @@ -5,13 +5,8 @@ set -u # The following symbols (past the first five) are taken from the public headers. # A list of the latter should be available Makefile.sources/LIBDRM_FREEDRENO_H_FILES -FUNCS=$($NM -D --format=bsd --defined-only ${1-.libs/libdrm_freedreno.so} | awk '{print $3}'| while read func; do +FUNCS=$($NM -D --format=bsd --defined-only ${1-.libs/libdrm_freedreno.so} | grep -o "T .*" | cut -c 3- | while read func; do ( grep -q "^$func$" || echo $func ) <<EOF -__bss_start -_edata -_end -_fini -_init fd_bo_cpu_fini fd_bo_cpu_prep fd_bo_del diff --git a/intel/intel-symbol-check b/intel/intel-symbol-check index de377bef1377c57d8fe0..917acbc1dd7aa92fba53 100755 --- a/intel/intel-symbol-check +++ b/intel/intel-symbol-check @@ -5,13 +5,8 @@ set -u # The following symbols (past the first five) are taken from the public headers. # A list of the latter should be available Makefile.sources/LIBDRM_INTEL_H_FILES -FUNCS=$($NM -D --format=bsd --defined-only ${1-.libs/libdrm_intel.so} | awk '{print $3}' | while read func; do +FUNCS=$($NM -D --format=bsd --defined-only ${1-.libs/libdrm_intel.so} | grep -o "T .*" | cut -c 3- | while read func; do ( grep -q "^$func$" || echo $func ) <<EOF -__bss_start -_edata -_end -_fini -_init drm_intel_bo_alloc drm_intel_bo_alloc_for_render drm_intel_bo_alloc_tiled diff --git a/libkms/kms-symbol-check b/libkms/kms-symbol-check index 30f444f7b513bf6203e5..d1ded231da9737248099 100755 --- a/libkms/kms-symbol-check +++ b/libkms/kms-symbol-check @@ -5,13 +5,8 @@ set -u # The following symbols (past the first five) are taken from the public headers. # A list of the latter should be available Makefile.sources/LIBKMS_H_FILES -FUNCS=$($NM -D --format=bsd --defined-only ${1-.libs/libkms.so} | awk '{print $3}'| while read func; do +FUNCS=$($NM -D --format=bsd --defined-only ${1-.libs/libkms.so} | grep -o "T .*" | cut -c 3- | while read func; do ( grep -q "^$func$" || echo $func ) <<EOF -__bss_start -_edata -_end -_fini -_init kms_bo_create kms_bo_destroy kms_bo_get_prop diff --git a/nouveau/nouveau-symbol-check b/nouveau/nouveau-symbol-check index 6296244c15ffadfddf3b..37c962c7af501e120709 100755 --- a/nouveau/nouveau-symbol-check +++ b/nouveau/nouveau-symbol-check @@ -5,13 +5,8 @@ set -u # The following symbols (past the first five) are taken from the public headers. # A list of the latter should be available Makefile.sources/LIBDRM_NOUVEAU_H_FILES -FUNCS=$($NM -D --format=bsd --defined-only ${1-.libs/libdrm_nouveau.so} | awk '{print $3}'| while read func; do +FUNCS=$($NM -D --format=bsd --defined-only ${1-.libs/libdrm_nouveau.so} | grep -o "T .*" | cut -c 3- | while read func; do ( grep -q "^$func$" || echo $func ) <<EOF -__bss_start -_edata -_end -_fini -_init nouveau_bo_map nouveau_bo_name_get nouveau_bo_name_ref diff --git a/omap/omap-symbol-check b/omap/omap-symbol-check index 16da3c406dca468b803f..1c08b68a5a22bdfbee5a 100755 --- a/omap/omap-symbol-check +++ b/omap/omap-symbol-check @@ -5,13 +5,8 @@ set -u # The following symbols (past the first five) are taken from the public headers. # A list of the latter should be available Makefile.am/libdrm_omap*HEADERS -FUNCS=$($NM -D --format=bsd --defined-only ${1-.libs/libdrm_omap.so} | awk '{print $3}'| while read func; do +FUNCS=$($NM -D --format=bsd --defined-only ${1-.libs/libdrm_omap.so} | grep -o "T .*" | cut -c 3- | while read func; do ( grep -q "^$func$" || echo $func ) <<EOF -__bss_start -_edata -_end -_fini -_init omap_bo_cpu_fini omap_bo_cpu_prep omap_bo_del diff --git a/radeon/radeon-symbol-check b/radeon/radeon-symbol-check index da605bb88912a986da06..176001a3ac098665b222 100755 --- a/radeon/radeon-symbol-check +++ b/radeon/radeon-symbol-check @@ -5,13 +5,8 @@ set -u # The following symbols (past the first five) are taken from the public headers. # A list of the latter should be available Makefile.sources/LIBDRM_RADEON_H_FILES -FUNCS=$($NM -D --format=bsd --defined-only ${1-.libs/libdrm_radeon.so} | awk '{print $3}'| while read func; do +FUNCS=$($NM -D --format=bsd --defined-only ${1-.libs/libdrm_radeon.so} | grep -o "T .*" | cut -c 3- | while read func; do ( grep -q "^$func$" || echo $func ) <<EOF -__bss_start -_edata -_end -_fini -_init radeon_bo_debug radeon_bo_get_handle radeon_bo_get_src_domain diff --git a/tegra/tegra-symbol-check b/tegra/tegra-symbol-check index 8539b95be7a036b554f3..a613df878c46b67294be 100755 --- a/tegra/tegra-symbol-check +++ b/tegra/tegra-symbol-check @@ -4,17 +4,8 @@ set -u # The following symbols (past the first nine) are taken from tegra.h. -FUNCS=$($NM -D --format=bsd --defined-only ${1-.libs/libdrm_tegra.so} | awk '{print $3}'| while read func; do +FUNCS=$($NM -D --format=bsd --defined-only ${1-.libs/libdrm_tegra.so} | grep -o "T .*" | cut -c 3- | while read func; do ( grep -q "^$func$" || echo $func ) <<EOF -__bss_end__ -__bss_start__ -__bss_start -__end__ -_bss_end__ -_edata -_end -_fini -_init drm_tegra_bo_get_flags drm_tegra_bo_get_handle drm_tegra_bo_get_tiling
Fixes the tests on ARM, but more importantly this makes it much easier to maintain. Signed-off-by: Eric Engestrom <eric.engestrom@intel.com> --- amdgpu/amdgpu-symbol-check | 7 +------ etnaviv/etnaviv-symbol-check | 7 +------ exynos/exynos-symbol-check | 7 +------ freedreno/freedreno-symbol-check | 7 +------ intel/intel-symbol-check | 7 +------ libkms/kms-symbol-check | 7 +------ nouveau/nouveau-symbol-check | 7 +------ omap/omap-symbol-check | 7 +------ radeon/radeon-symbol-check | 7 +------ tegra/tegra-symbol-check | 11 +---------- 10 files changed, 10 insertions(+), 64 deletions(-)