Home - Waterfall Grid T-Grid Console Builders Recent Builds Buildslaves Changesources - JSON API - About

Builder ffmpegsos-solaris10-sparc Build #13757

Results:

Failed shell_2 shell_3 shell_4 shell_5

SourceStamp:

Projectffmpeg
Repositoryhttps://git.ffmpeg.org/ffmpeg.git
Branchmaster
Revision01a25f74cc446a683318bab13dfd98a467082ef7
Got Revision01a25f74cc446a683318bab13dfd98a467082ef7
Changes18 changes

BuildSlave:

unstable10s

Reason:

The SingleBranchScheduler scheduler named 'schedule-ffmpegsos-solaris10-sparc' triggered this build

Steps and Logfiles:

  1. git update ( 1 mins, 7 secs )
    1. stdio
  2. shell 'gsed -i ...' ( 0 secs )
    1. stdio
  3. shell_1 'gsed -i ...' ( 0 secs )
    1. stdio
  4. shell_2 'gsed -i ...' failed ( 0 secs )
    1. stdio
  5. shell_3 './configure --samples="../../../ffmpeg/fate-suite" ...' failed ( 8 secs )
    1. stdio
    2. config.log
  6. shell_4 'gmake fate-rsync' failed ( 0 secs )
    1. stdio
  7. shell_5 '../../../ffmpeg/fate.sh ../../../ffmpeg/fate_config_sos.sh' failed ( 0 secs )
    1. stdio
    2. configure.log
    3. compile.log
    4. test.log

Build Properties:

NameValueSource
branch master Build
builddir /export/home/buildbot-unstable10s/slave/ffmpegsos-solaris10-sparc slave
buildername ffmpegsos-solaris10-sparc Builder
buildnumber 13757 Build
codebase Build
got_revision 01a25f74cc446a683318bab13dfd98a467082ef7 Git
project ffmpeg Build
repository https://git.ffmpeg.org/ffmpeg.git Build
revision 01a25f74cc446a683318bab13dfd98a467082ef7 Build
scheduler schedule-ffmpegsos-solaris10-sparc Scheduler
slavename unstable10s BuildSlave
workdir /export/home/buildbot-unstable10s/slave/ffmpegsos-solaris10-sparc slave (deprecated)

Forced Build Properties:

NameLabelValue

Responsible Users:

  1. Niklas Haas

Timing:

StartMon Aug 3 09:56:16 2026
EndMon Aug 3 09:57:33 2026
Elapsed1 mins, 17 secs

All Changes:

:

  1. Change #276812

    Category ffmpeg
    Changed by Niklas Haas <gitohnoyoudont@haasn.dev>
    Changed at Mon 03 Aug 2026 11:32:30
    Repository https://git.ffmpeg.org/ffmpeg.git
    Project ffmpeg
    Branch master
    Revision 08c90c60f7562301858f1bdf06e6bc8abd3ec878

    Comments

    swscale/ops: fix merge_comp_flags() for SWS_COMP_SWAPPED
    This violates the documentation (monoid property).
    
    It's a bit arbitrary whether to consider this an OR-type or AND-type flag,
    since mixing swapped and non-swapped components is almost surely a bug, but
    keeping it as an OR-type makes sure such cases at least show up in the
    result.
    
    Sponsored-by: Sovereign Tech Fund
    Signed-off-by: Niklas Haas <git@haasn.dev>

    Changed files

    • libswscale/ops.c
  2. Change #276813

    Category ffmpeg
    Changed by Niklas Haas <gitohnoyoudont@haasn.dev>
    Changed at Mon 03 Aug 2026 11:32:30
    Repository https://git.ffmpeg.org/ffmpeg.git
    Project ffmpeg
    Branch master
    Revision fc94457bb722159c1a8338b7f8454228210f9646

    Comments

    swscale/ops: refactor comp flags propagation slightly
    Introduce a unified FORWARD() helper macro that can be used for any type of
    op, whether it is independent per component or more complex. By initializing
    every op to the same IDENTITY state, we can leverage the monoid property to
    make this work for naive propagations as well.
    
    As an aside, we also properly zero out the unrelated fields when discarding
    a component (i.e. marking it as GARBAGE).
    
    This will make a couple of up-coming refactors a bit easier.
    
    Sponsored-by: Sovereign Tech Fund
    Signed-off-by: Niklas Haas <git@haasn.dev>

    Changed files

    • libswscale/ops.c
  3. Change #276814

    Category ffmpeg
    Changed by Niklas Haas <gitohnoyoudont@haasn.dev>
    Changed at Mon 03 Aug 2026 11:32:30
    Repository https://git.ffmpeg.org/ffmpeg.git
    Project ffmpeg
    Branch master
    Revision 6321b5380939a4e676854d67fe41085d5f0c4ad8

    Comments

    swscale/ops: solve for component dependencies
    Needed to determine reverse dependencies of different input planes, for
    appropriately splitting op lists involving subsampled planes.
    
    Generates benign diffs that just reflect the new addition, e.g.:
    
     yuva444p 16x16 -> rgb24 16x16:
       [ u8 ===X] SWS_OP_READ         : 3 elem(s) planar >> 0
         min: {0 0 0 _}, max: {255 255 255 _}
    +    inputs: {x y z _}, outputs: {xyz yz xy _}
       [ u8 ===X] SWS_OP_CONVERT      : u8 -> f32
         min: {0 0 0 _}, max: {255 255 255 _}
    +    inputs: {x y z _}, outputs: {xyz yz xy _}
       [f32 ...X] SWS_OP_LINEAR       : matrix3+off3 [[85/73 0 1.596027 0 -222.921566] [85/73 -0.391762 -0.812968 0 135.575295] [85/73 2.017232 0 0 -276.835851] [0 0 0 1 0]]
         min: {-222.921566 -171.630839 -276.835851 _}, max: {480.983073 432.493103 534.476153 _}
    +    inputs: {xz xyz xy _}, outputs: {x y z _}
       [f32 ...X] SWS_OP_DITHER       : 16x16 matrix + {0 3 2 -1}
         min: {-222.919612 -171.628886 -276.833898 _}, max: {481.981120 433.491150 535.474200 _}
    +    inputs: {xz xyz xy _}, outputs: {x y z _}
       [f32 ...X] SWS_OP_MAX          : {0 0 0 _} <= x
         min: {0 0 0 _}, max: {481.981120 433.491150 535.474200 _}
    +    inputs: {xz xyz xy _}, outputs: {x y z _}
       [f32 ...X] SWS_OP_MIN          : x <= {255 255 255 _}
         min: {0 0 0 _}, max: {255 255 255 _}
    +    inputs: {xz xyz xy _}, outputs: {x y z _}
       [f32 +++X] SWS_OP_CONVERT      : f32 -> u8
         min: {0 0 0 _}, max: {255 255 255 _}
    +    inputs: {xz xyz xy _}, outputs: {x y z _}
       [ u8 XXXX] SWS_OP_WRITE        : 3 elem(s) packed >> 0
         ('X' unused, 'z' byteswapped, '=' copied, '$' const, '+' integer, '0' zero)
    
    Sponsored-by: Sovereign Tech Fund
    Signed-off-by: Niklas Haas <git@haasn.dev>

    Changed files

    • libswscale/ops.c
    • libswscale/ops.h
    • tests/ref/fate/sws-ops-list
  4. Change #276815

    Category ffmpeg
    Changed by Niklas Haas <gitohnoyoudont@haasn.dev>
    Changed at Mon 03 Aug 2026 11:32:30
    Repository https://git.ffmpeg.org/ffmpeg.git
    Project ffmpeg
    Branch master
    Revision 327319bb7b34d91a50b479f30055770f7ea603dd

    Comments

    swscale/ops: remove SwsLinearOp.mask
    This was originally introduced to make matching linear ops against
    implementations faster. However, since this is now handled on the uops
    level, there is no more reason to carry this metadata on the ops level.
    
    Simplifies a lot of places in the code. It will simplify even more, once
    the linear optimizations are moved to the uops level.
    
    Sponsored-by: Sovereign Tech Fund
    Signed-off-by: Niklas Haas <git@haasn.dev>

    Changed files

    • libswscale/aarch64/ops_impl_conv.c
    • libswscale/format.c
    • libswscale/ops.h
    • libswscale/ops_optimizer.c
    • libswscale/uops.c
  5. Change #276816

    Category ffmpeg
    Changed by Niklas Haas <gitohnoyoudont@haasn.dev>
    Changed at Mon 03 Aug 2026 11:32:30
    Repository https://git.ffmpeg.org/ffmpeg.git
    Project ffmpeg
    Branch master
    Revision 0ff884dabec72f9e8bb548739e2a75ab03d1487b

    Comments

    swscale/csputils: remove unused struct
    Sponsored-by: Sovereign Tech Fund
    Signed-off-by: Niklas Haas <git@haasn.dev>

    Changed files

    • libswscale/csputils.h
  6. Change #276817

    Category ffmpeg
    Changed by Niklas Haas <gitohnoyoudont@haasn.dev>
    Changed at Mon 03 Aug 2026 11:32:30
    Repository https://git.ffmpeg.org/ffmpeg.git
    Project ffmpeg
    Branch master
    Revision d0bf8cff9fd86d43d6eecfa1dba00ae454cf09c9

    Comments

    swscale/aarch64: reject unknown ops by default
    Sponsored-by: Sovereign Tech Fund
    Signed-off-by: Niklas Haas <git@haasn.dev>

    Changed files

    • libswscale/aarch64/ops_impl_conv.c
  7. Change #276818

    Category ffmpeg
    Changed by Niklas Haas <gitohnoyoudont@haasn.dev>
    Changed at Mon 03 Aug 2026 11:32:30
    Repository https://git.ffmpeg.org/ffmpeg.git
    Project ffmpeg
    Branch master
    Revision ea8fb1b71eba487d0d5b5fc394d3760aa7fd7620

    Comments

    swscale/lut3d: alignment (cosmetic)
    Sponsored-by: Sovereign Tech Fund
    Signed-off-by: Niklas Haas <git@haasn.dev>

    Changed files

    • libswscale/lut3d.c
  8. Change #276819

    Category ffmpeg
    Changed by Niklas Haas <gitohnoyoudont@haasn.dev>
    Changed at Mon 03 Aug 2026 11:32:30
    Repository https://git.ffmpeg.org/ffmpeg.git
    Project ffmpeg
    Branch master
    Revision 69f0fa91d47c47c13c5182fc294f650aebacdf98

    Comments

    swscale/lut3d: pad 3DLUT to eliminate over-read
    Instead of clamping in the application function. Trivial simplicity gain
    for the SIMD code.
    
    Sponsored-by: Sovereign Tech Fund
    Signed-off-by: Niklas Haas <git@haasn.dev>

    Changed files

    • libswscale/lut3d.c
    • libswscale/lut3d.h
  9. Change #276820

    Category ffmpeg
    Changed by Niklas Haas <gitohnoyoudont@haasn.dev>
    Changed at Mon 03 Aug 2026 11:32:30
    Repository https://git.ffmpeg.org/ffmpeg.git
    Project ffmpeg
    Branch master
    Revision 6a56bd03620f7a6cdc934a34f17568e95f25fe19

    Comments

    swscale/lut3d: use refstruct for 3D LUT allocations
    Needed anyways for the upcoming SWS_OP_LUT_3D.
    
    Sponsored-by: Sovereign Tech Fund
    Signed-off-by: Niklas Haas <git@haasn.dev>

    Changed files

    • libswscale/graph.c
    • libswscale/lut3d.c
    • libswscale/lut3d.h
  10. Change #276821

    Category ffmpeg
    Changed by Niklas Haas <gitohnoyoudont@haasn.dev>
    Changed at Mon 03 Aug 2026 11:32:30
    Repository https://git.ffmpeg.org/ffmpeg.git
    Project ffmpeg
    Branch master
    Revision e43517c1d1b1e48399fec7f5a5d2c7158cff40ff

    Comments

    swscale/lut3d: simplify and hard-code 3DLUT format
    The ops-based 3DLUT approach will take care of appropriately normalizing
    the input to the expected domain; so the format choice no longer matters here
    except for the lut3d_apply() function, which will only be used by the legacy
    reference code path. So we can just continue hard-coding the format there.
    
    Sponsored-by: Sovereign Tech Fund
    Signed-off-by: Niklas Haas <git@haasn.dev>

    Changed files

    • libswscale/graph.c
    • libswscale/lut3d.c
    • libswscale/lut3d.h
  11. Change #276822

    Category ffmpeg
    Changed by Niklas Haas <gitohnoyoudont@haasn.dev>
    Changed at Mon 03 Aug 2026 11:32:30
    Repository https://git.ffmpeg.org/ffmpeg.git
    Project ffmpeg
    Branch master
    Revision 96e0967ecac6cd7aaf4e25c5af72de82b9814c8a

    Comments

    swscale/cms: fix IPT rounding error
    av_round16f() was incorrectly scaling to 65534, which would correspond to
    a neutral PT offset of 32767 = (1 << 15) - 1, but the code was assuming a
    value of (1 << 15). To fix it, and make the PT channel correctly symmetric
    around the intended neutral value, we have to map PT = +0.5 to 65536, an
    unrepresentable value. This is not an issue because the PT channel values are
    strictly inside some subset of [-0.5, 0.5] in practice, for real in-gamut
    color values - it's already an envelope that includes quite a bit of safety
    margin.
    
    Similarly, av_round16f() is also the wrong tool for the I/RGB channels,
    because it incorrectly scaled those to 65534, an off by one of the intended
    unorm16 full range peak of 65535. This silently resulted in e.g. RGBA64
    true white (65535) not round-tripping through the 3DLUT.
    
    Fix both by splitting this helper into two separate helpers, each of them
    fixed to the correct, intended value range.
    
    Sponsored-by: Sovereign Tech Fund
    Signed-off-by: Niklas Haas <git@haasn.dev>

    Changed files

    • libswscale/cms.c
  12. Change #276823

    Category ffmpeg
    Changed by Niklas Haas <gitohnoyoudont@haasn.dev>
    Changed at Mon 03 Aug 2026 11:32:30
    Repository https://git.ffmpeg.org/ffmpeg.git
    Project ffmpeg
    Branch master
    Revision 6c770f33c8e94ea18000cd81da4f1e0ad0bac7a7

    Comments

    swscale/ops: add SWS_OP_LUT_3D and supporting code
    After extensive testing, prototyping and benchmarking across a range of
    systems, I determined that the optimal data layout for the SIMD 3DLUT is
    essentially exactly the one we have. 16-bit integers are near optimal for
    quality vs compactness, and crucially, x86 lets us load the entire packed
    3DLUT entry with a single `vpgatherdq` instruction.
    
    This dwarfs the loss from needing to cast the resulting 16-bit integers
    back to f32 and renormalize.
    
    Sponsored-by: Sovereign Tech Fund
    Signed-off-by: Niklas Haas <git@haasn.dev>

    Changed files

    • libswscale/ops.c
    • libswscale/ops.h
    • libswscale/ops_optimizer.c
  13. Change #276824

    Category ffmpeg
    Changed by Niklas Haas <gitohnoyoudont@haasn.dev>
    Changed at Mon 03 Aug 2026 11:32:30
    Repository https://git.ffmpeg.org/ffmpeg.git
    Project ffmpeg
    Branch master
    Revision 4bdb4d564f677d2f7f7f03b3b9a902a06cd916ee

    Comments

    swscale/uops: add SWS_UOP_LUT_3D reference implementation
    The structure for the tetrahedral interpolation deviates slightly from the
    naive formulation in lut3d.c; instead of branching into every separate case,
    we sort the weights and offsets using a series of conditional swaps. This
    actually performs identically on my end, but results in code that is much
    closer to what SIMD will be doing. That should hopefully serve as a better
    reference for future SIMD implementors. (Myself included)
    
    I also reordered the dynamic tone-mapping code a bit to better indicate the
    sources of live register pressure that will manifest in the real SIMD kernel.
    
    Sponsored-by: Sovereign Tech Fund
    Signed-off-by: Niklas Haas <git@haasn.dev>

    Changed files

    • libswscale/csputils.h
    • libswscale/uops.c
    • libswscale/uops.h
    • libswscale/uops_backend.c
    • libswscale/uops_list.h
    • libswscale/uops_macros.h
    • libswscale/uops_tmpl.c
  14. Change #276825

    Category ffmpeg
    Changed by Niklas Haas <gitohnoyoudont@haasn.dev>
    Changed at Mon 03 Aug 2026 11:32:30
    Repository https://git.ffmpeg.org/ffmpeg.git
    Project ffmpeg
    Branch master
    Revision d803957307d3b6ffda8d998d2282f11531477595

    Comments

    swscale/graph: lift SwsLut3D to SwsGraph top level
    Since this depends on the overall picture parameters anyways, updating it
    directly from the private setup() function was always a bit hacky. More
    importantly, this needed for the ops-based 3DLUT implementation, which is
    already using the pass priv pointer to store the compiled function.
    
    Overall, simpler to just lift it to the top level and update it directly as
    needed.
    
    Sponsored-by: Sovereign Tech Fund
    Signed-off-by: Niklas Haas <git@haasn.dev>

    Changed files

    • libswscale/graph.c
    • libswscale/graph.h
  15. Change #276826

    Category ffmpeg
    Changed by Niklas Haas <gitohnoyoudont@haasn.dev>
    Changed at Mon 03 Aug 2026 11:32:30
    Repository https://git.ffmpeg.org/ffmpeg.git
    Project ffmpeg
    Branch master
    Revision 38196645f5e20b50a5143db6f0d14814fed77116

    Comments

    swscale/graph: move 3DLUT application to the conversion pass
    Instead of generating the 3DLUT and applying it right away, init_passes()
    now just generates it and passes it as a parameter to add_convert_pass(),
    which will forward it to the underlying implementation.
    
    I pre-emptively moved the function to the legacy section, in anticipation
    of the following commit which will make this legacy-only.
    
    Sponsored-by: Sovereign Tech Fund
    Signed-off-by: Niklas Haas <git@haasn.dev>

    Changed files

    • libswscale/graph.c
  16. Change #276827

    Category ffmpeg
    Changed by Niklas Haas <gitohnoyoudont@haasn.dev>
    Changed at Mon 03 Aug 2026 11:32:30
    Repository https://git.ffmpeg.org/ffmpeg.git
    Project ffmpeg
    Branch master
    Revision 05d8891a20de059f901fbb106f45b7699f81bba0

    Comments

    swscale/format: add SwsLut3D support to the ops list generator
    The value range normalization and input range clamp will normally be
    optimized away.
    
    This commit also moves the legacy 3dlut pass to be legacy-exclusive, as the
    ops code now uses the new logic. This ordering ensures that the conversion
    works on every commit in isolation.
    
    Sponsored-by: Sovereign Tech Fund
    Signed-off-by: Niklas Haas <git@haasn.dev>

    Changed files

    • libswscale/format.c
    • libswscale/format.h
    • libswscale/graph.c
    • libswscale/op_list_gen_template.c
  17. Change #276828

    Category ffmpeg
    Changed by Niklas Haas <gitohnoyoudont@haasn.dev>
    Changed at Mon 03 Aug 2026 11:32:30
    Repository https://git.ffmpeg.org/ffmpeg.git
    Project ffmpeg
    Branch master
    Revision 3df239e113e5c5d23acbedc5cde4a5d70c5ad620

    Comments

    swscale/uops_macros: also generate op lists involving 3DLUTs
    These may differ from the regular op lists in nontrivial ways, due to e.g.
    different optimization steps being taken.
    
    In practice, it seems this just adds the extra LUT_3D uops, but we don't
    know that for sure, so better to brute force the list. That said, I do
    think we can safely skip the extra backend flags in this case, at least.
    
    Even in the worst case scenario, that would just force a fallback to the
    C reference backend.
    
    Sponsored-by: Sovereign Tech Fund
    Signed-off-by: Niklas Haas <git@haasn.dev>

    Changed files

    • libswscale/op_list_gen_template.c
    • libswscale/tests/sws_ops.c
    • libswscale/tests/sws_ops_aarch64.c
    • libswscale/uops_macros.h
    • libswscale/uops_macros_gen.c
  18. Change #276829

    Category ffmpeg
    Changed by Niklas Haas <gitohnoyoudont@haasn.dev>
    Changed at Mon 03 Aug 2026 11:32:30
    Repository https://git.ffmpeg.org/ffmpeg.git
    Project ffmpeg
    Branch master
    Revision 01a25f74cc446a683318bab13dfd98a467082ef7

    Comments

    checkasm/sw_ops: add SWS_UOP_LUT_3D test
    checkasm:
     - CPU: AMD Ryzen 9 9950X3D 16-Core Processor (00B40F40)
     - Timing source: x86 (rdtsc)
     - Bench duration: 100000 µs per function (448667793 cycles)
     - Random seed: 3773883393
    Benchmark results:
      name                         cycles (vs ref)
      f32_lut_3d_xyz_dynamic_c:  125193.9
      f32_lut_3d_xyz_static_c:    25792.1
      f32_lut_3d_xyzw_dynamic_c: 123807.1
      f32_lut_3d_xyzw_static_c:   25739.0
    
    This is roughly ~50% faster than the existing code in lut3d.c, from a quick
    test.
    
    Sponsored-by: Sovereign Tech Fund
    Signed-off-by: Niklas Haas <git@haasn.dev>

    Changed files

    • tests/checkasm/sw_ops.c