diff mbox series

[FFmpeg-devel] libavutil: include assembly with full path from source root

Message ID 20220118220629.2108825-1-alex@linutronix.de
State New
Headers show
Series [FFmpeg-devel] libavutil: include assembly with full path from source root | expand

Checks

Context Check Description
andriy/make_x86 success Make finished
andriy/make_fate_x86 success Make fate finished
andriy/make_ppc success Make finished
andriy/make_fate_ppc success Make fate finished
andriy/make_armv7_RPi4 success Make finished
andriy/make_fate_armv7_RPi4 success Make fate finished
andriy/make_aarch64_jetson success Make finished
andriy/make_fate_aarch64_jetson success Make fate finished

Commit Message

Alexander Kanavin Jan. 18, 2022, 10:06 p.m. UTC
From: Alexander Kanavin <alex.kanavin@gmail.com>

Otherwise nasm writes the full host-specific paths into .o
output, which breaks binary reproducibility.

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
---
 libavutil/x86/cpuid.asm      | 2 +-
 libavutil/x86/emms.asm       | 2 +-
 libavutil/x86/fixed_dsp.asm  | 2 +-
 libavutil/x86/float_dsp.asm  | 2 +-
 libavutil/x86/lls.asm        | 2 +-
 libavutil/x86/pixelutils.asm | 2 +-
 libavutil/x86/tx_float.asm   | 2 +-
 7 files changed, 7 insertions(+), 7 deletions(-)

Comments

Lynne Jan. 18, 2022, 10:31 p.m. UTC | #1
18 Jan 2022, 23:06 by alex.kanavin@gmail.com:

> From: Alexander Kanavin <alex.kanavin@gmail.com>
>
> Otherwise nasm writes the full host-specific paths into .o
> output, which breaks binary reproducibility.
>
> Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
> ---
>  libavutil/x86/cpuid.asm      | 2 +-
>  libavutil/x86/emms.asm       | 2 +-
>  libavutil/x86/fixed_dsp.asm  | 2 +-
>  libavutil/x86/float_dsp.asm  | 2 +-
>  libavutil/x86/lls.asm        | 2 +-
>  libavutil/x86/pixelutils.asm | 2 +-
>  libavutil/x86/tx_float.asm   | 2 +-
>  7 files changed, 7 insertions(+), 7 deletions(-)
>

Not what I'm seeing here in the binaries: "libavutil/x86/tx_float.asm",
rather than a full path.
Alexander Kanavin Jan. 18, 2022, 10:38 p.m. UTC | #2
On Tue, 18 Jan 2022 at 23:32, Lynne <dev@lynne.ee> wrote:

>
> Not what I'm seeing here in the binaries: "libavutil/x86/tx_float.asm",
> rather than a full path.
>

Are you using a separate build directory? This is a sample reproducibility
failure we've observed:
https://autobuilder.yocto.io/pub/repro-fail/oe-reproducible-20220118-y69m0ean/packages/diff-html/

Alex
Alexander Kanavin Jan. 26, 2022, 11:42 a.m. UTC | #3
Ping :-)

Alex

On Tue, 18 Jan 2022 at 23:06, Alexander Kanavin <alex.kanavin@gmail.com>
wrote:

> From: Alexander Kanavin <alex.kanavin@gmail.com>
>
> Otherwise nasm writes the full host-specific paths into .o
> output, which breaks binary reproducibility.
>
> Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
> ---
>  libavutil/x86/cpuid.asm      | 2 +-
>  libavutil/x86/emms.asm       | 2 +-
>  libavutil/x86/fixed_dsp.asm  | 2 +-
>  libavutil/x86/float_dsp.asm  | 2 +-
>  libavutil/x86/lls.asm        | 2 +-
>  libavutil/x86/pixelutils.asm | 2 +-
>  libavutil/x86/tx_float.asm   | 2 +-
>  7 files changed, 7 insertions(+), 7 deletions(-)
>
> diff --git a/libavutil/x86/cpuid.asm b/libavutil/x86/cpuid.asm
> index c3f7866ec7..766f77fcdf 100644
> --- a/libavutil/x86/cpuid.asm
> +++ b/libavutil/x86/cpuid.asm
> @@ -21,7 +21,7 @@
>  ;* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
> 02110-1301 USA
>
>  ;******************************************************************************
>
> -%include "x86util.asm"
> +%include "libavutil/x86/x86util.asm"
>
>  SECTION .text
>
> diff --git a/libavutil/x86/emms.asm b/libavutil/x86/emms.asm
> index 8611762d73..df84f2221b 100644
> --- a/libavutil/x86/emms.asm
> +++ b/libavutil/x86/emms.asm
> @@ -18,7 +18,7 @@
>  ;* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
> 02110-1301 USA
>
>  ;******************************************************************************
>
> -%include "x86util.asm"
> +%include "libavutil/x86/x86util.asm"
>
>  SECTION .text
>
> diff --git a/libavutil/x86/fixed_dsp.asm b/libavutil/x86/fixed_dsp.asm
> index 979dd5c334..2f411850f4 100644
> --- a/libavutil/x86/fixed_dsp.asm
> +++ b/libavutil/x86/fixed_dsp.asm
> @@ -20,7 +20,7 @@
>  ;* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
> 02110-1301 USA
>
>  ;******************************************************************************
>
> -%include "x86util.asm"
> +%include "libavutil/x86/x86util.asm"
>
>  SECTION .text
>
> diff --git a/libavutil/x86/float_dsp.asm b/libavutil/x86/float_dsp.asm
> index 517fd63638..b773e61a64 100644
> --- a/libavutil/x86/float_dsp.asm
> +++ b/libavutil/x86/float_dsp.asm
> @@ -20,7 +20,7 @@
>  ;* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
> 02110-1301 USA
>
>  ;******************************************************************************
>
> -%include "x86util.asm"
> +%include "libavutil/x86/x86util.asm"
>
>  SECTION_RODATA 32
>  pd_reverse: dd 7, 6, 5, 4, 3, 2, 1, 0
> diff --git a/libavutil/x86/lls.asm b/libavutil/x86/lls.asm
> index 317fba6fca..d2526d1ff4 100644
> --- a/libavutil/x86/lls.asm
> +++ b/libavutil/x86/lls.asm
> @@ -20,7 +20,7 @@
>  ;* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
> 02110-1301 USA
>
>  ;******************************************************************************
>
> -%include "x86util.asm"
> +%include "libavutil/x86/x86util.asm"
>
>  SECTION .text
>
> diff --git a/libavutil/x86/pixelutils.asm b/libavutil/x86/pixelutils.asm
> index 36c57c5f7f..8b45ead78b 100644
> --- a/libavutil/x86/pixelutils.asm
> +++ b/libavutil/x86/pixelutils.asm
> @@ -21,7 +21,7 @@
>  ;* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
> 02110-1301 USA
>
>  ;******************************************************************************
>
> -%include "x86util.asm"
> +%include "libavutil/x86/x86util.asm"
>
>  SECTION .text
>
> diff --git a/libavutil/x86/tx_float.asm b/libavutil/x86/tx_float.asm
> index 4d2283fae1..ea39f2172a 100644
> --- a/libavutil/x86/tx_float.asm
> +++ b/libavutil/x86/tx_float.asm
> @@ -29,7 +29,7 @@
>  ;       replace some shuffles with vblends?
>  ;       avx512 split-radix
>
> -%include "x86util.asm"
> +%include "libavutil/x86/x86util.asm"
>
>  %if ARCH_X86_64
>  %define ptr resq
> --
> 2.20.1
>
>
Anton Khirnov Jan. 31, 2022, 12:51 p.m. UTC | #4
Quoting Alexander Kanavin (2022-01-18 23:38:59)
> On Tue, 18 Jan 2022 at 23:32, Lynne <dev@lynne.ee> wrote:
> 
> >
> > Not what I'm seeing here in the binaries: "libavutil/x86/tx_float.asm",
> > rather than a full path.
> >
> 
> Are you using a separate build directory? This is a sample reproducibility
> failure we've observed:
> https://autobuilder.yocto.io/pub/repro-fail/oe-reproducible-20220118-y69m0ean/packages/diff-html/

With a separate build directory, I'm getting
$ strings libavutil/x86/tx_float.o |grep asm
src/libavutil/x86/tx_float.asm
Alexander Kanavin Jan. 31, 2022, 1:05 p.m. UTC | #5
On Mon, 31 Jan 2022 at 13:52, Anton Khirnov <anton@khirnov.net> wrote:

> > Are you using a separate build directory? This is a sample
> reproducibility
> > failure we've observed:
> >
> https://autobuilder.yocto.io/pub/repro-fail/oe-reproducible-20220118-y69m0ean/packages/diff-html/
>
> With a separate build directory, I'm getting
> $ strings libavutil/x86/tx_float.o |grep asm
> src/libavutil/x86/tx_float.asm
>

Thanks, I'm trying to get it to reproduce outside of yocto - there's
something in that build environment that does cause .asm include filenames
to be written into the .o. Will write back when I have a reproducer.

Alex
Alexander Kanavin Jan. 31, 2022, 1:29 p.m. UTC | #6
On Mon, 31 Jan 2022 at 13:52, Anton Khirnov <anton@khirnov.net> wrote:

> With a separate build directory, I'm getting
> $ strings libavutil/x86/tx_float.o |grep asm
> src/libavutil/x86/tx_float.asm
>

The key piece is
../configure --disable-stripping

With stripping disabled and without the patch, you should see:

alex@alex-lx-laptop:~/development/ffmpeg/build$ strings
libavutil/x86/tx_float.o |grep asm
src/libavutil/x86/tx_float.asm
src/libavutil/x86/tx_float.asm
/home/alex/development/ffmpeg/libavutil/x86/x86util.asm
src/libavutil/x86/tx_float.asm


Alex
Alexander Kanavin Feb. 7, 2022, 11:24 a.m. UTC | #7
On Mon, 31 Jan 2022 at 14:29, Alexander Kanavin <alex.kanavin@gmail.com>
wrote:

> On Mon, 31 Jan 2022 at 13:52, Anton Khirnov <anton@khirnov.net> wrote:
>
>> With a separate build directory, I'm getting
>> $ strings libavutil/x86/tx_float.o |grep asm
>> src/libavutil/x86/tx_float.asm
>>
>
> The key piece is
> ../configure --disable-stripping
>
> With stripping disabled and without the patch, you should see:
>
> alex@alex-lx-laptop:~/development/ffmpeg/build$ strings
> libavutil/x86/tx_float.o |grep asm
> src/libavutil/x86/tx_float.asm
> src/libavutil/x86/tx_float.asm
> /home/alex/development/ffmpeg/libavutil/x86/x86util.asm
> src/libavutil/x86/tx_float.asm
>

Ping, please :)

Alex
Anton Khirnov Feb. 8, 2022, 9:52 a.m. UTC | #8
Quoting Alexander Kanavin (2022-02-07 12:24:58)
> On Mon, 31 Jan 2022 at 14:29, Alexander Kanavin <alex.kanavin@gmail.com>
> wrote:
> 
> > On Mon, 31 Jan 2022 at 13:52, Anton Khirnov <anton@khirnov.net> wrote:
> >
> >> With a separate build directory, I'm getting
> >> $ strings libavutil/x86/tx_float.o |grep asm
> >> src/libavutil/x86/tx_float.asm
> >>
> >
> > The key piece is
> > ../configure --disable-stripping
> >
> > With stripping disabled and without the patch, you should see:
> >
> > alex@alex-lx-laptop:~/development/ffmpeg/build$ strings
> > libavutil/x86/tx_float.o |grep asm
> > src/libavutil/x86/tx_float.asm
> > src/libavutil/x86/tx_float.asm
> > /home/alex/development/ffmpeg/libavutil/x86/x86util.asm
> > src/libavutil/x86/tx_float.asm
> >
> 
> Ping, please :)

pushed.

sorry for the delay
diff mbox series

Patch

diff --git a/libavutil/x86/cpuid.asm b/libavutil/x86/cpuid.asm
index c3f7866ec7..766f77fcdf 100644
--- a/libavutil/x86/cpuid.asm
+++ b/libavutil/x86/cpuid.asm
@@ -21,7 +21,7 @@ 
 ;* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
 ;******************************************************************************
 
-%include "x86util.asm"
+%include "libavutil/x86/x86util.asm"
 
 SECTION .text
 
diff --git a/libavutil/x86/emms.asm b/libavutil/x86/emms.asm
index 8611762d73..df84f2221b 100644
--- a/libavutil/x86/emms.asm
+++ b/libavutil/x86/emms.asm
@@ -18,7 +18,7 @@ 
 ;* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
 ;******************************************************************************
 
-%include "x86util.asm"
+%include "libavutil/x86/x86util.asm"
 
 SECTION .text
 
diff --git a/libavutil/x86/fixed_dsp.asm b/libavutil/x86/fixed_dsp.asm
index 979dd5c334..2f411850f4 100644
--- a/libavutil/x86/fixed_dsp.asm
+++ b/libavutil/x86/fixed_dsp.asm
@@ -20,7 +20,7 @@ 
 ;* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
 ;******************************************************************************
 
-%include "x86util.asm"
+%include "libavutil/x86/x86util.asm"
 
 SECTION .text
 
diff --git a/libavutil/x86/float_dsp.asm b/libavutil/x86/float_dsp.asm
index 517fd63638..b773e61a64 100644
--- a/libavutil/x86/float_dsp.asm
+++ b/libavutil/x86/float_dsp.asm
@@ -20,7 +20,7 @@ 
 ;* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
 ;******************************************************************************
 
-%include "x86util.asm"
+%include "libavutil/x86/x86util.asm"
 
 SECTION_RODATA 32
 pd_reverse: dd 7, 6, 5, 4, 3, 2, 1, 0
diff --git a/libavutil/x86/lls.asm b/libavutil/x86/lls.asm
index 317fba6fca..d2526d1ff4 100644
--- a/libavutil/x86/lls.asm
+++ b/libavutil/x86/lls.asm
@@ -20,7 +20,7 @@ 
 ;* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
 ;******************************************************************************
 
-%include "x86util.asm"
+%include "libavutil/x86/x86util.asm"
 
 SECTION .text
 
diff --git a/libavutil/x86/pixelutils.asm b/libavutil/x86/pixelutils.asm
index 36c57c5f7f..8b45ead78b 100644
--- a/libavutil/x86/pixelutils.asm
+++ b/libavutil/x86/pixelutils.asm
@@ -21,7 +21,7 @@ 
 ;* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
 ;******************************************************************************
 
-%include "x86util.asm"
+%include "libavutil/x86/x86util.asm"
 
 SECTION .text
 
diff --git a/libavutil/x86/tx_float.asm b/libavutil/x86/tx_float.asm
index 4d2283fae1..ea39f2172a 100644
--- a/libavutil/x86/tx_float.asm
+++ b/libavutil/x86/tx_float.asm
@@ -29,7 +29,7 @@ 
 ;       replace some shuffles with vblends?
 ;       avx512 split-radix
 
-%include "x86util.asm"
+%include "libavutil/x86/x86util.asm"
 
 %if ARCH_X86_64
 %define ptr resq