util: add thread-safe version of idalloc

For buffer IDs in u_threaded_context.

Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Reviewed-by: Rob Clark <robdclark@chromium.org>
Part-of: <!10662>
113 jobs for !10662 with tc-busyness in 27 minutes and 26 seconds (queued for 8 seconds)
latest detached
Status Name Job ID Coverage
  Sanity
passed sanity #9809213

00:00:11

 
  Container
passed arm_build #9809219
aarch64

00:00:28

passed windows_build_vs2019 #9809221
windows shell 1809 mesa

00:00:11

passed x86_build-base #9809215

00:00:22

passed x86_test-base #9809217

00:00:21

 
  Container 2
passed android_build #9809230

00:00:24

passed i386_build #9809225

00:00:25

passed kernel+rootfs_amd64 #9809236

00:00:24

passed kernel+rootfs_arm64 #9809238
aarch64

00:00:15

passed kernel+rootfs_armhf #9809240
aarch64

00:00:15

passed ppc64el_build #9809227

00:00:23

passed s390x_build #9809229

00:00:27

passed x86_build #9809223

00:00:27

passed x86_test-gl #9809232

00:00:25

passed x86_test-vk #9809234

00:00:26

 
  Meson X86 64
passed meson-clang #9809250

00:09:17

passed meson-clover #9809252

00:02:31

passed meson-clover-testing #9809245

00:01:26

passed meson-gallium #9809247

00:06:28

passed meson-release #9809249

00:03:38

passed meson-testing #9809242

00:02:18

passed meson-testing-asan #9809244

00:03:27

passed meson-vulkan #9809254

00:01:20

 
  Build Misc
passed arm_test #9809255

00:00:31

passed meson-android #9809257

00:01:10

passed meson-arm64 #9809261
aarch64

00:02:12

passed meson-arm64-asan #9809263
aarch64

00:03:58

passed meson-arm64-build-test #9809265
aarch64

00:01:46

passed meson-armhf #9809259
aarch64

00:01:45

passed meson-i386 #9809269

00:02:14

passed meson-mingw32-x86_64 #9809275

00:01:56

passed meson-ppc64el #9809273

00:02:31

passed meson-s390x #9809271
kvm

00:03:53

passed meson-windows-vs2019 #9809267
windows docker 1809 mesa

00:05:50

 
  Amd
passed radv-fossils #9809277

00:04:57

 
  Broadcom
passed v3d-rpi4-gles2:armhf #9809303
igalia-rpi4

00:07:09

passed v3d-rpi4-gles31:armhf 1/2 #9809289
igalia-rpi4

00:09:40

passed v3d-rpi4-gles31:armhf 2/2 #9809291
igalia-rpi4

00:09:56

passed v3d-rpi4-gles3:armhf 1/4 #9809294
igalia-rpi4

00:09:13

passed v3d-rpi4-gles3:armhf 2/4 #9809296
igalia-rpi4

00:09:41

passed v3d-rpi4-gles3:armhf 3/4 #9809298
igalia-rpi4

00:07:58

passed v3d-rpi4-gles3:armhf 4/4 #9809301
igalia-rpi4

00:08:41

passed v3dv-rpi4-vk:armhf 1/6 #9809306
igalia-rpi4

00:08:06

passed v3dv-rpi4-vk:armhf 2/6 #9809308
igalia-rpi4

00:07:47

passed v3dv-rpi4-vk:armhf 3/6 #9809311
igalia-rpi4

00:07:38

passed v3dv-rpi4-vk:armhf 4/6 #9809313
igalia-rpi4

00:07:48

passed v3dv-rpi4-vk:armhf 5/6 #9809316
igalia-rpi4

00:07:47

passed v3dv-rpi4-vk:armhf 6/6 #9809318
igalia-rpi4

00:07:54

passed vc4-rpi3-gles2:armhf 1/4 #9809279
igalia-rpi3

00:04:13

passed vc4-rpi3-gles2:armhf 2/4 #9809281
igalia-rpi3

00:03:58

passed vc4-rpi3-gles2:armhf 3/4 #9809284
igalia-rpi3

00:04:10

passed vc4-rpi3-gles2:armhf 4/4 #9809286
igalia-rpi3

00:04:08

 
  Freedreno
passed a306_gles2 #9809321
google-freedreno-db410c

00:04:44

passed a306_gles3 1/3 #9809323
google-freedreno-db410c

00:10:12

passed a306_gles3 2/3 #9809326
google-freedreno-db410c

00:09:59

passed a306_gles3 3/3 #9809328
google-freedreno-db410c

00:09:57

passed a306_gles3_options #9809331
google-freedreno-db410c

00:04:50

passed a306-traces #9809333
google-freedreno-db410c

00:08:43

passed a530_gles2 #9809336
google-freedreno-db820c

00:06:35

passed a530_gles31 1/2 #9809342
google-freedreno-db820c

00:07:25

passed a530_gles3 1/2 #9809338
google-freedreno-db820c

00:09:56

passed a530_gles31 2/2 #9809343
google-freedreno-db820c

00:07:20

passed a530_gles3 2/2 #9809341
google-freedreno-db820c

00:08:42

passed a530_piglit_gl #9809344
google-freedreno-db820c

00:11:28

passed a530_piglit_shader #9809345
google-freedreno-db820c

00:09:47

passed a530-traces #9809346
google-freedreno-db820c

00:11:57

passed a630_egl #9809351
google-freedreno-cheza

00:03:49

passed a630_gl #9809350
google-freedreno-cheza

00:02:37

passed a630_gles2 #9809347
google-freedreno-cheza

00:02:48

passed a630_gles3 #9809349
google-freedreno-cheza

00:06:09

passed a630_gles31 #9809348
google-freedreno-cheza

00:05:13

passed a630_gles_others #9809352
google-freedreno-cheza

00:03:46

passed a630_piglit #9809356
google-freedreno-cheza

00:10:18

passed a630-traces #9809357
google-freedreno-cheza

00:06:55

passed a630_vk 1/2 #9809353
google-freedreno-cheza

00:11:32

passed a630_vk 2/2 #9809354
google-freedreno-cheza

00:10:49

passed a630_vk_sysmem #9809355
google-freedreno-cheza

00:02:14

 
  Software Renderer
passed lavapipe-nir-stress #9809380

00:01:16

passed lavapipe-vk #9809379

00:07:09

passed llvmpipe-egl #9809368

00:01:19

passed llvmpipe-gl #9809366

00:02:56

passed llvmpipe-gles2 #9809363

00:01:24

passed llvmpipe-gles3 #9809364

00:05:29

passed llvmpipe-gles31 #9809365

00:09:21

passed llvmpipe-khr-gles2 #9809367

00:00:32

passed llvmpipe-piglit-cl #9809358

00:02:46

passed llvmpipe-piglit-glslparser #9809360

00:02:44

passed llvmpipe-piglit-quick_gl #9809359

00:06:25

passed llvmpipe-piglit-quick_shader #9809361

00:06:04

passed llvmpipe-traces #9809362

00:01:36

passed softpipe-asan-gles31 #9809376

00:03:15

passed softpipe-gl #9809378

00:00:38

passed softpipe-gles2 #9809369

00:00:43

passed softpipe-gles3 #9809370

00:07:05

passed softpipe-gles31 1/2 #9809371

00:06:29

passed softpipe-gles31 2/2 #9809372

00:02:53

passed softpipe-khr-gles2 #9809373

00:00:52

passed softpipe-khr-gles3 #9809374

00:00:38

passed softpipe-khr-gles31 #9809375

00:00:27

passed softpipe-piglit-quick #9809377

00:04:02

 
  Layered Backends
passed test-d3d12-windows #9809393
windows docker 1809 mesa

00:03:31

passed virgl-gl30-on-gl #9809385

00:00:29

passed virgl-gl31-on-gl #9809386

00:00:47

passed virgl-gl32-on-gl #9809387

00:01:01

passed virgl-gles2-on-gl #9809381

00:01:15

passed virgl-gles31-on-gl 1/2 #9809383

00:05:24

passed virgl-gles31-on-gl 2/2 #9809384

00:06:14

passed virgl-gles3-on-gl #9809382

00:05:04

passed virgl-traces #9809388

00:01:02

passed zink-lvp-gl #9809392

00:01:47

passed zink-lvp-gles2 #9809390

00:03:09

passed zink-lvp-gles3 #9809391

00:01:09

passed zink-piglit-quick_gl #9809389

00:06:33