pan/midgard: Don't emit zero padding

util_dynarray_grow_bytes doesn't cope well with zero grow bytes.

../mesa/src/util/u_dynarray.h:134:8: runtime error: division by zero
    #0 0xffffa2d99288 in util_dynarray_grow_bytes ../mesa/src/util/u_dynarray.h:134
    #1 0xffffa2d99288 in emit_alu_bundle ../mesa/src/panfrost/midgard/midgard_emit.c:350
    #2 0xffffa2d99288 in emit_binary_bundle ../mesa/src/panfrost/midgard/midgard_emit.c:390
    #3 0xffffa2d738a8 in midgard_compile_shader_nir ../mesa/src/panfrost/midgard/midgard_compile.c:2740
    #4 0xffffa2cc8aa8 in panfrost_shader_compile ../mesa/src/gallium/drivers/panfrost/pan_assemble.c:68
    #5 0xffffa2c9918c in panfrost_bind_shader_state ../mesa/src/gallium/drivers/panfrost/pan_context.c:2015
    #6 0xffffa0726d94 in st_update_vp ../mesa/src/mesa/state_tracker/st_atom_shader.c:238
    #7 0xffffa070e028 in st_validate_state ../mesa/src/mesa/state_tracker/st_atom.c:261
    #8 0xffffa06c30bc in prepare_draw ../mesa/src/mesa/state_tracker/st_draw.c:132
    #9 0xffffa06c30bc in st_draw_vbo ../mesa/src/mesa/state_tracker/st_draw.c:184
    #10 0xffffa167bb20 in _mesa_validated_drawrangeelements ../mesa/src/mesa/main/draw.c:816
    #11 0xffffa167c684 in _mesa_DrawElements ../mesa/src/mesa/main/draw.c:970
    #12 0xaaaadfa5b55c in glu::drawFromUserPointers(glu::RenderContext const&, unsigned int, int, glu::VertexArrayBinding const*, glu::PrimitiveList const&, glu::DrawUtilCallback*) (/home/tomeu/deqp-build/modules/gles2/deqp-gles2+0x3b355c)
    #13 0xaaaadf9ce514 in deqp::gls::ShaderLibraryCase::execute() (/home/tomeu/deqp-build/modules/gles2/deqp-gles2+0x326514)
    #14 0xaaaadf9cfb38 in deqp::gls::ShaderLibraryCase::iterate() (/home/tomeu/deqp-build/modules/gles2/deqp-gles2+0x327b38)
    #15 0xaaaadf70cc9c in deqp::gles2::TestCaseWrapper::iterate(tcu::TestCase*) (/home/tomeu/deqp-build/modules/gles2/deqp-gles2+0x64c9c)
    #16 0xaaaadfb9a47c in tcu::TestSessionExecutor::iterateTestCase(tcu::TestCase*) (/home/tomeu/deqp-build/modules/gles2/deqp-gles2+0x4f247c)
    #17 0xaaaadfb9b240 in tcu::TestSessionExecutor::iterate() (/home/tomeu/deqp-build/modules/gles2/deqp-gles2+0x4f3240)
    #18 0xaaaadfb7a564 in tcu::App::iterate() (/home/tomeu/deqp-build/modules/gles2/deqp-gles2+0x4d2564)
    #19 0xaaaadf70a20c in main (/home/tomeu/deqp-build/modules/gles2/deqp-gles2+0x6220c)
    #20 0xffffaf1e12a8 in __libc_start_main ../csu/libc-start.c:308
    #21 0xaaaadf70a8dc  (/home/tomeu/deqp-build/modules/gles2/deqp-gles2+0x628dc)

Signed-off-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <!10695>
45 jobs for !10695 with ubsan-cherrypick in 11 minutes and 52 seconds (queued for 2 seconds)
detached
Status Job ID Name Coverage
  Sanity
passed #9589263
sanity

00:00:07

 
  Container
passed #9589270
aarch64
arm_build

00:00:19

passed #9589273
windows shell 1809 mesa
windows_build_vs2019

00:00:08

passed #9589266
x86_build-base

00:00:18

passed #9589268
x86_test-base

00:00:13

 
  Container 2
passed #9589280
android_build

00:00:19

passed #9589277
i386_build

00:00:15

passed #9589283
kernel+rootfs_amd64

00:00:11

passed #9589284
aarch64
kernel+rootfs_arm64

00:00:50

passed #9589285
aarch64
kernel+rootfs_armhf

00:00:10

passed #9589278
ppc64el_build

00:00:13

passed #9589279
s390x_build

00:00:16

passed #9589275
x86_build

00:00:19

passed #9589281
x86_test-gl

00:00:13

passed #9589282
x86_test-vk

00:00:15

 
  Meson X86 64
passed #9589291
meson-clang

00:07:23

passed #9589292
meson-clover

00:02:09

passed #9589288
meson-clover-testing

00:01:31

passed #9589289
meson-gallium

00:04:50

passed #9589290
meson-release

00:04:01

passed #9589286
meson-testing

00:03:54

passed #9589287
meson-testing-asan

00:03:10

passed #9589293
meson-vulkan

00:01:35

 
  Build Misc
passed #9589294
arm_test

00:00:41

passed #9589295
meson-android

00:01:07

passed #9589297
aarch64
meson-arm64

00:01:33

passed #9589298
aarch64
meson-arm64-asan

00:03:43

passed #9589299
aarch64
meson-arm64-build-test

00:01:30

passed #9589296
aarch64
meson-armhf

00:01:34

passed #9589300
meson-i386

00:03:04

passed #9589303
meson-mingw32-x86_64

00:02:22

passed #9589302
meson-ppc64el

00:02:11

passed #9589301
kvm
meson-s390x

00:03:15

 
  Arm
failed #9589312
mesa-ci-aarch64-lava-collabora
panfrost-g52-gles2:arm64

00:04:39

failed #9589315
mesa-ci-aarch64-lava-collabora
panfrost-g52-gles31:arm64

00:04:38

failed #9589313
mesa-ci-aarch64-lava-collabora
panfrost-g52-gles3:arm64 1/2

00:03:10

failed #9589314
mesa-ci-aarch64-lava-collabora
panfrost-g52-gles3:arm64 2/2

00:03:10

failed #9589304
mesa-ci-aarch64-lava-collabora
panfrost-t720-gles2:arm64

00:03:24

failed #9589305
mesa-ci-aarch64-lava-collabora
panfrost-t760-gles2:armhf

00:02:57

failed #9589306
mesa-ci-aarch64-lava-collabora
panfrost-t760-traces:armhf

00:06:17

failed #9589307
mesa-ci-aarch64-lava-collabora
panfrost-t860-gles2:arm64

00:02:39

failed #9589310
mesa-ci-aarch64-lava-collabora
panfrost-t860-gles31:arm64

00:03:16

failed #9589308
mesa-ci-aarch64-lava-collabora
panfrost-t860-gles3:arm64 1/2

00:03:01

failed #9589309
mesa-ci-aarch64-lava-collabora
panfrost-t860-gles3:arm64 2/2

00:03:06

canceled #9589311
mesa-ci-aarch64-lava-collabora
panfrost-t860-traces:arm64

00:09:44

 
Name Stage Failure
failed
panfrost-t860-gles3:arm64 2/2 Arm
Running after_script
Running after script...
$ wget -q "https://minio-packet.freedesktop.org/artifacts/${CI_PROJECT_PATH}/${CI_PIPELINE_ID}/${CI_JOB_ID}/results.tar.gz" -O- | tar -xz
Uploading artifacts for failed job
Uploading artifacts...
results/: found 4 matching files and directories

Uploading artifacts as "archive" to coordinator... ok
id=9589309 responseStatus=201 Created token=PVw6BTbq
Cleaning up file based variables
ERROR: Job failed: exit code 1
failed
panfrost-g52-gles31:arm64 Arm
Running after_script
Running after script...
$ wget -q "https://minio-packet.freedesktop.org/artifacts/${CI_PROJECT_PATH}/${CI_PIPELINE_ID}/${CI_JOB_ID}/results.tar.gz" -O- | tar -xz
Uploading artifacts for failed job
Uploading artifacts...
results/: found 4 matching files and directories

Uploading artifacts as "archive" to coordinator... ok
id=9589315 responseStatus=201 Created token=xxre3BTF
Cleaning up file based variables
ERROR: Job failed: exit code 1
failed
panfrost-g52-gles3:arm64 1/2 Arm
Running after_script
Running after script...
$ wget -q "https://minio-packet.freedesktop.org/artifacts/${CI_PROJECT_PATH}/${CI_PIPELINE_ID}/${CI_JOB_ID}/results.tar.gz" -O- | tar -xz
Uploading artifacts for failed job
Uploading artifacts...
results/: found 4 matching files and directories

Uploading artifacts as "archive" to coordinator... ok
id=9589313 responseStatus=201 Created token=BnMpFCN5
Cleaning up file based variables
ERROR: Job failed: exit code 1
failed
panfrost-t760-gles2:armhf Arm
Running after_script
Running after script...
$ wget -q "https://minio-packet.freedesktop.org/artifacts/${CI_PROJECT_PATH}/${CI_PIPELINE_ID}/${CI_JOB_ID}/results.tar.gz" -O- | tar -xz
Uploading artifacts for failed job
Uploading artifacts...
results/: found 4 matching files and directories

Uploading artifacts as "archive" to coordinator... ok
id=9589305 responseStatus=201 Created token=NUKanePx
Cleaning up file based variables
ERROR: Job failed: exit code 1
failed
panfrost-t760-traces:armhf Arm
Uploading artifacts for failed job
Uploading artifacts...
results/: found 34 matching files and directories

Uploading artifacts as "archive" to coordinator... ok
id=9589306 responseStatus=201 Created token=KsZEh_3Q
Uploading artifacts...
results/junit.xml: found 1 matching files and directories

Uploading artifacts as "junit" to coordinator... ok
id=9589306 responseStatus=201 Created token=KsZEh_3Q
Cleaning up file based variables
ERROR: Job failed: exit code 1
failed
panfrost-t720-gles2:arm64 Arm
Running after_script
Running after script...
$ wget -q "https://minio-packet.freedesktop.org/artifacts/${CI_PROJECT_PATH}/${CI_PIPELINE_ID}/${CI_JOB_ID}/results.tar.gz" -O- | tar -xz
Uploading artifacts for failed job
Uploading artifacts...
results/: found 4 matching files and directories

Uploading artifacts as "archive" to coordinator... ok
id=9589304 responseStatus=201 Created token=5GgGqFJZ
Cleaning up file based variables
ERROR: Job failed: exit code 1
failed
panfrost-t860-gles2:arm64 Arm
Running after_script
Running after script...
$ wget -q "https://minio-packet.freedesktop.org/artifacts/${CI_PROJECT_PATH}/${CI_PIPELINE_ID}/${CI_JOB_ID}/results.tar.gz" -O- | tar -xz
Uploading artifacts for failed job
Uploading artifacts...
results/: found 4 matching files and directories

Uploading artifacts as "archive" to coordinator... ok
id=9589307 responseStatus=201 Created token=GBLyFac4
Cleaning up file based variables
ERROR: Job failed: exit code 1
failed
panfrost-t860-gles3:arm64 1/2 Arm
Running after_script
Running after script...
$ wget -q "https://minio-packet.freedesktop.org/artifacts/${CI_PROJECT_PATH}/${CI_PIPELINE_ID}/${CI_JOB_ID}/results.tar.gz" -O- | tar -xz
Uploading artifacts for failed job
Uploading artifacts...
results/: found 4 matching files and directories

Uploading artifacts as "archive" to coordinator... ok
id=9589308 responseStatus=201 Created token=dAwCzfMT
Cleaning up file based variables
ERROR: Job failed: exit code 1
failed
panfrost-g52-gles3:arm64 2/2 Arm
Running after_script
Running after script...
$ wget -q "https://minio-packet.freedesktop.org/artifacts/${CI_PROJECT_PATH}/${CI_PIPELINE_ID}/${CI_JOB_ID}/results.tar.gz" -O- | tar -xz
Uploading artifacts for failed job
Uploading artifacts...
results/: found 4 matching files and directories

Uploading artifacts as "archive" to coordinator... ok
id=9589314 responseStatus=201 Created token=inx3X9yU
Cleaning up file based variables
ERROR: Job failed: exit code 1
failed
panfrost-t860-gles31:arm64 Arm
Running after_script
Running after script...
$ wget -q "https://minio-packet.freedesktop.org/artifacts/${CI_PROJECT_PATH}/${CI_PIPELINE_ID}/${CI_JOB_ID}/results.tar.gz" -O- | tar -xz
Uploading artifacts for failed job
Uploading artifacts...
results/: found 4 matching files and directories

Uploading artifacts as "archive" to coordinator... ok
id=9589310 responseStatus=201 Created token=tGbEjeap
Cleaning up file based variables
ERROR: Job failed: exit code 1
failed
panfrost-g52-gles2:arm64 Arm
Running after_script
Running after script...
$ wget -q "https://minio-packet.freedesktop.org/artifacts/${CI_PROJECT_PATH}/${CI_PIPELINE_ID}/${CI_JOB_ID}/results.tar.gz" -O- | tar -xz
Uploading artifacts for failed job
Uploading artifacts...
results/: found 4 matching files and directories

Uploading artifacts as "archive" to coordinator... ok
id=9589312 responseStatus=201 Created token=1EN31LQh
Cleaning up file based variables
ERROR: Job failed: exit code 1