[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

[Git][xorg-team/lib/mesa][upstream-unstable] 13 commits: docs: add sha256 checksums for 18.0.2



Title: GitLab

Andreas Boll pushed to branch upstream-unstable at X Strike Force / lib / mesa

Commits:

14 changed files:

Changes:

  • VERSION
    1
    -18.0.2
    1
    +18.0.3

  • bin/.cherry-ignore
    ... ... @@ -32,3 +32,10 @@ d136a5fad9c7e67c1362453388914ecc60420883 ac: fix the number of coordinates for a
    32 32
     
    
    33 33
     # stable: There is a specific port for this patch for stable branch.
    
    34 34
     fedd0a4215bcd387525000d76b77993ca38916ae radv/winsys: allow to submit up to 4 IBs for chips without chaining
    
    35
    +
    
    36
    +# stable: Explicit 18.1 only nominations
    
    37
    +413c5ca3727898fdb4fa1d2849d0c2defdd77b48 travis: update libva required version
    
    38
    +a6fbefa67b5b0ed1ee42a9034ee74dfaed1c389a radv: fix DCC enablement since partial MSAA implementation
    
    39
    +d7ffe3b384f4d1c15a9364768cf405d416522e60 radv: set ac_surf_info::num_channels correctly
    
    40
    +d38425ce872c4a00cfb691ae9dceca6a07afc516 ac: fix texture query LOD for 1D textures on GFX9
    
    41
    +4d449c94e450c33d7b2b09c1c263322042503893 autotools, meson: bump up required VA version

  • docs/relnotes/18.0.2.html
    ... ... @@ -31,7 +31,8 @@ because compatibility contexts are not supported.
    31 31
     
    
    32 32
     <h2>SHA256 checksums</h2>
    
    33 33
     <pre>
    
    34
    -TBD
    
    34
    +SHA256: ffd8dfe3337b474a3baa085f0e7ef1a32c7cdc3bed1ad810b2633919a9324840  mesa-18.0.2.tar.gz
    
    35
    +SHA256: 98fa159768482dc568b9f8bf0f36c7acb823fa47428ffd650b40784f16b9e7b3  mesa-18.0.2.tar.xz
    
    35 36
     </pre>
    
    36 37
     
    
    37 38
     
    

  • docs/relnotes/18.0.3.html
    1
    +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    
    2
    +<html lang="en">
    
    3
    +<head>
    
    4
    +  <meta http-equiv="content-type" content="text/html; charset=utf-8">
    
    5
    +  <title>Mesa Release Notes</title>
    
    6
    +  <link rel="stylesheet" type="text/css" href="">"../mesa.css">
    
    7
    +</head>
    
    8
    +<body>
    
    9
    +
    
    10
    +<div class="header">
    
    11
    +  <h1>The Mesa 3D Graphics Library</h1>
    
    12
    +</div>
    
    13
    +
    
    14
    +<iframe src="">"../contents.html"></iframe>
    
    15
    +<div class="content">
    
    16
    +
    
    17
    +<h1>Mesa 18.0.3 Release Notes / May 7, 2018</h1>
    
    18
    +
    
    19
    +<p>
    
    20
    +Mesa 18.0.3 is a bug fix release which fixes bugs found since the 18.0.2 release.
    
    21
    +</p>
    
    22
    +<p>
    
    23
    +Mesa 18.0.3 implements the OpenGL 4.5 API, but the version reported by
    
    24
    +glGetString(GL_VERSION) or glGetIntegerv(GL_MAJOR_VERSION) /
    
    25
    +glGetIntegerv(GL_MINOR_VERSION) depends on the particular driver being used.
    
    26
    +Some drivers don't support all the features required in OpenGL 4.5.  OpenGL
    
    27
    +4.5 is <strong>only</strong> available if requested at context creation
    
    28
    +because compatibility contexts are not supported.
    
    29
    +</p>
    
    30
    +
    
    31
    +
    
    32
    +<h2>SHA256 checksums</h2>
    
    33
    +<pre>
    
    34
    +TBD
    
    35
    +</pre>
    
    36
    +
    
    37
    +
    
    38
    +<h2>New features</h2>
    
    39
    +<p>None</p>
    
    40
    +
    
    41
    +
    
    42
    +<h2>Bug fixes</h2>
    
    43
    +
    
    44
    +<ul>
    
    45
    +
    
    46
    +<li><a href="">"https://bugs.freedesktop.org/show_bug.cgi?id=105374">Bug 105374</a> - texture3d, a SaschaWillems demo, assert fails</li>
    
    47
    +
    
    48
    +<li><a href="">"https://bugs.freedesktop.org/show_bug.cgi?id=106147">Bug 106147</a> - SIGBUS in write_reloc() when Sacha Willems' &quot;texture3d&quot; Vulkan demo starts</li>
    
    49
    +
    
    50
    +</ul>
    
    51
    +
    
    52
    +
    
    53
    +<h2>Changes</h2>
    
    54
    +
    
    55
    +<p>Andres Rodriguez (1):</p>
    
    56
    +<ul>
    
    57
    +  <li>radv/winsys: fix leaking resources from bo's imported by fd</li>
    
    58
    +</ul>
    
    59
    +
    
    60
    +<p>Boyuan Zhang (1):</p>
    
    61
    +<ul>
    
    62
    +  <li>radeon/vcn: fix mpeg4 msg buffer settings</li>
    
    63
    +</ul>
    
    64
    +
    
    65
    +<p>Eric Anholt (1):</p>
    
    66
    +<ul>
    
    67
    +  <li>gallium/util: Fix incorrect refcounting of separate stencil.</li>
    
    68
    +</ul>
    
    69
    +
    
    70
    +<p>Jason Ekstrand (1):</p>
    
    71
    +<ul>
    
    72
    +  <li>anv/allocator: Don't shrink either end of the block pool</li>
    
    73
    +</ul>
    
    74
    +
    
    75
    +<p>Juan A. Suarez Romero (3):</p>
    
    76
    +<ul>
    
    77
    +  <li>docs: add sha256 checksums for 18.0.2</li>
    
    78
    +  <li>cherry-ignore: add explicit 18.1 only nominations</li>
    
    79
    +  <li>Update version to 18.0.3</li>
    
    80
    +</ul>
    
    81
    +
    
    82
    +<p>Leo Liu (1):</p>
    
    83
    +<ul>
    
    84
    +  <li>st/omx/enc: fix blit setup for YUV LoadImage</li>
    
    85
    +</ul>
    
    86
    +
    
    87
    +<p>Marek Olšák (2):</p>
    
    88
    +<ul>
    
    89
    +  <li>util/u_queue: fix a deadlock in util_queue_finish</li>
    
    90
    +  <li>radeonsi/gfx9: workaround for INTERP with indirect indexing</li>
    
    91
    +</ul>
    
    92
    +
    
    93
    +<p>Nanley Chery (1):</p>
    
    94
    +<ul>
    
    95
    +  <li>i965/tex_image: Avoid the ASTC LDR workaround on gen9lp</li>
    
    96
    +</ul>
    
    97
    +
    
    98
    +<p>Samuel Pitoiset (1):</p>
    
    99
    +<ul>
    
    100
    +  <li>radv: compute the number of subpass attachments correctly</li>
    
    101
    +</ul>
    
    102
    +
    
    103
    +
    
    104
    +</div>
    
    105
    +</body>
    
    106
    +</html>

  • src/amd/vulkan/radv_pass.c
    ... ... @@ -87,8 +87,8 @@ VkResult radv_CreateRenderPass(
    87 87
     		subpass_attachment_count +=
    
    88 88
     			desc->inputAttachmentCount +
    
    89 89
     			desc->colorAttachmentCount +
    
    90
    -			/* Count colorAttachmentCount again for resolve_attachments */
    
    91
    -			desc->colorAttachmentCount;
    
    90
    +			(desc->pResolveAttachments ? desc->colorAttachmentCount : 0) +
    
    91
    +			(desc->pDepthStencilAttachment != NULL);
    
    92 92
     	}
    
    93 93
     
    
    94 94
     	if (subpass_attachment_count) {
    

  • src/amd/vulkan/winsys/amdgpu/radv_amdgpu_bo.c
    ... ... @@ -450,6 +450,7 @@ radv_amdgpu_winsys_bo_from_fd(struct radeon_winsys *_ws,
    450 450
     	bo->size = result.alloc_size;
    
    451 451
     	bo->is_shared = true;
    
    452 452
     	bo->ws = ws;
    
    453
    +	bo->ref_count = 1;
    
    453 454
     	radv_amdgpu_add_buffer_to_global_list(bo);
    
    454 455
     	return (struct radeon_winsys_bo *)bo;
    
    455 456
     error_va_map:
    

  • src/gallium/auxiliary/util/u_transfer_helper.c
    ... ... @@ -138,8 +138,7 @@ u_transfer_helper_resource_destroy(struct pipe_screen *pscreen,
    138 138
        if (helper->vtbl->get_stencil) {
    
    139 139
           struct pipe_resource *stencil = helper->vtbl->get_stencil(prsc);
    
    140 140
     
    
    141
    -      if (stencil)
    
    142
    -         helper->vtbl->resource_destroy(pscreen, stencil);
    
    141
    +      pipe_resource_reference(&stencil, NULL);
    
    143 142
        }
    
    144 143
     
    
    145 144
        helper->vtbl->resource_destroy(pscreen, prsc);
    

  • src/gallium/drivers/radeon/radeon_vcn_dec.c
    ... ... @@ -554,15 +554,15 @@ static rvcn_dec_message_mpeg4_asp_vld_t get_mpeg4_msg(struct radeon_decoder *dec
    554 554
     
    
    555 555
     	result.vop_time_increment_resolution = pic->vop_time_increment_resolution;
    
    556 556
     
    
    557
    -	result.short_video_header |= pic->short_video_header << 0;
    
    558
    -	result.interlaced |= pic->interlaced << 2;
    
    559
    -        result.load_intra_quant_mat |= 1 << 3;
    
    560
    -	result.load_nonintra_quant_mat |= 1 << 4;
    
    561
    -	result.quarter_sample |= pic->quarter_sample << 5;
    
    562
    -	result.complexity_estimation_disable |= 1 << 6;
    
    563
    -	result.resync_marker_disable |= pic->resync_marker_disable << 7;
    
    564
    -	result.newpred_enable |= 0 << 10; //
    
    565
    -	result.reduced_resolution_vop_enable |= 0 << 11;
    
    557
    +	result.short_video_header = pic->short_video_header;
    
    558
    +	result.interlaced = pic->interlaced;
    
    559
    +	result.load_intra_quant_mat = 1;
    
    560
    +	result.load_nonintra_quant_mat = 1;
    
    561
    +	result.quarter_sample = pic->quarter_sample;
    
    562
    +	result.complexity_estimation_disable = 1;
    
    563
    +	result.resync_marker_disable = pic->resync_marker_disable;
    
    564
    +	result.newpred_enable = 0;
    
    565
    +	result.reduced_resolution_vop_enable = 0;
    
    566 566
     
    
    567 567
     	result.quant_type = pic->quant_type;
    
    568 568
     
    

  • src/gallium/drivers/radeonsi/si_get.c
    ... ... @@ -470,12 +470,19 @@ static int si_get_shader_param(struct pipe_screen* pscreen,
    470 470
     
    
    471 471
     	case PIPE_SHADER_CAP_INDIRECT_INPUT_ADDR:
    
    472 472
     		/* TODO: Indirect indexing of GS inputs is unimplemented. */
    
    473
    -		return shader != PIPE_SHADER_GEOMETRY &&
    
    474
    -		       (sscreen->llvm_has_working_vgpr_indexing ||
    
    475
    -			/* TCS and TES load inputs directly from LDS or
    
    476
    -			 * offchip memory, so indirect indexing is trivial. */
    
    477
    -			shader == PIPE_SHADER_TESS_CTRL ||
    
    478
    -			shader == PIPE_SHADER_TESS_EVAL);
    
    473
    +		if (shader == PIPE_SHADER_GEOMETRY)
    
    474
    +			return 0;
    
    475
    +
    
    476
    +		if (shader == PIPE_SHADER_VERTEX &&
    
    477
    +		    !sscreen->llvm_has_working_vgpr_indexing)
    
    478
    +			return 0;
    
    479
    +
    
    480
    +		/* TCS and TES load inputs directly from LDS or offchip
    
    481
    +		 * memory, so indirect indexing is always supported.
    
    482
    +		 * PS has to support indirect indexing, because we can't
    
    483
    +		 * lower that to TEMPs for INTERP instructions.
    
    484
    +		 */
    
    485
    +		return 1;
    
    479 486
     
    
    480 487
     	case PIPE_SHADER_CAP_INDIRECT_OUTPUT_ADDR:
    
    481 488
     		return sscreen->llvm_has_working_vgpr_indexing ||
    

  • src/gallium/state_trackers/omx_bellagio/vid_enc.c
    ... ... @@ -934,7 +934,7 @@ static OMX_ERRORTYPE enc_LoadImage(omx_base_PortType *port, OMX_BUFFERHEADERTYPE
    934 934
           blit.src.resource = inp->resource;
    
    935 935
           blit.src.format = inp->resource->format;
    
    936 936
     
    
    937
    -      blit.src.box.x = 0;
    
    937
    +      blit.src.box.x = -1;
    
    938 938
           blit.src.box.y = def->nFrameHeight;
    
    939 939
           blit.src.box.width = def->nFrameWidth;
    
    940 940
           blit.src.box.height = def->nFrameHeight / 2 ;
    
    ... ... @@ -948,11 +948,11 @@ static OMX_ERRORTYPE enc_LoadImage(omx_base_PortType *port, OMX_BUFFERHEADERTYPE
    948 948
           blit.dst.box.depth = 1;
    
    949 949
           blit.filter = PIPE_TEX_FILTER_NEAREST;
    
    950 950
     
    
    951
    -      blit.mask = PIPE_MASK_G;
    
    951
    +      blit.mask = PIPE_MASK_R;
    
    952 952
           priv->s_pipe->blit(priv->s_pipe, &blit);
    
    953 953
     
    
    954
    -      blit.src.box.x = 1;
    
    955
    -      blit.mask = PIPE_MASK_R;
    
    954
    +      blit.src.box.x = 0;
    
    955
    +      blit.mask = PIPE_MASK_G;
    
    956 956
           priv->s_pipe->blit(priv->s_pipe, &blit);
    
    957 957
           priv->s_pipe->flush(priv->s_pipe, NULL, 0);
    
    958 958
     
    

  • src/intel/vulkan/anv_allocator.c
    ... ... @@ -508,12 +508,12 @@ anv_block_pool_grow(struct anv_block_pool *pool, struct anv_block_state *state)
    508 508
           assert(center_bo_offset >= back_used);
    
    509 509
     
    
    510 510
           /* Make sure we don't shrink the back end of the pool */
    
    511
    -      if (center_bo_offset < pool->back_state.end)
    
    512
    -         center_bo_offset = pool->back_state.end;
    
    511
    +      if (center_bo_offset < back_required)
    
    512
    +         center_bo_offset = back_required;
    
    513 513
     
    
    514 514
           /* Make sure that we don't shrink the front end of the pool */
    
    515
    -      if (size - center_bo_offset < pool->state.end)
    
    516
    -         center_bo_offset = size - pool->state.end;
    
    515
    +      if (size - center_bo_offset < front_required)
    
    516
    +         center_bo_offset = size - front_required;
    
    517 517
        }
    
    518 518
     
    
    519 519
        assert(center_bo_offset % PAGE_SIZE == 0);
    

  • src/mesa/drivers/dri/i965/intel_tex_image.c
    ... ... @@ -871,7 +871,7 @@ intelCompressedTexSubImage(struct gl_context *ctx, GLuint dims,
    871 871
                             !_mesa_is_srgb_format(gl_format);
    
    872 872
        struct brw_context *brw = (struct brw_context*) ctx;
    
    873 873
        const struct gen_device_info *devinfo = &brw->screen->devinfo;
    
    874
    -   if (devinfo->gen == 9 && is_linear_astc)
    
    874
    +   if (devinfo->gen == 9 && !gen_device_info_is_9lp(devinfo) && is_linear_astc)
    
    875 875
           flush_astc_denorms(ctx, dims, texImage,
    
    876 876
                              xoffset, yoffset, zoffset,
    
    877 877
                              width, height, depth);
    

  • src/util/u_queue.c
    ... ... @@ -311,6 +311,7 @@ util_queue_init(struct util_queue *queue,
    311 311
           goto fail;
    
    312 312
     
    
    313 313
        (void) mtx_init(&queue->lock, mtx_plain);
    
    314
    +   (void) mtx_init(&queue->finish_lock, mtx_plain);
    
    314 315
     
    
    315 316
        queue->num_queued = 0;
    
    316 317
        cnd_init(&queue->has_queued_cond);
    
    ... ... @@ -398,6 +399,7 @@ util_queue_destroy(struct util_queue *queue)
    398 399
     
    
    399 400
        cnd_destroy(&queue->has_space_cond);
    
    400 401
        cnd_destroy(&queue->has_queued_cond);
    
    402
    +   mtx_destroy(&queue->finish_lock);
    
    401 403
        mtx_destroy(&queue->lock);
    
    402 404
        free(queue->jobs);
    
    403 405
        free(queue->threads);
    
    ... ... @@ -529,6 +531,12 @@ util_queue_finish(struct util_queue *queue)
    529 531
     
    
    530 532
        util_barrier_init(&barrier, queue->num_threads);
    
    531 533
     
    
    534
    +   /* If 2 threads were adding jobs for 2 different barries at the same time,
    
    535
    +    * a deadlock would happen, because 1 barrier requires that all threads
    
    536
    +    * wait for it exclusively.
    
    537
    +    */
    
    538
    +   mtx_lock(&queue->finish_lock);
    
    539
    +
    
    532 540
        for (unsigned i = 0; i < queue->num_threads; ++i) {
    
    533 541
           util_queue_fence_init(&fences[i]);
    
    534 542
           util_queue_add_job(queue, &barrier, &fences[i], util_queue_finish_execute, NULL);
    
    ... ... @@ -538,6 +546,7 @@ util_queue_finish(struct util_queue *queue)
    538 546
           util_queue_fence_wait(&fences[i]);
    
    539 547
           util_queue_fence_destroy(&fences[i]);
    
    540 548
        }
    
    549
    +   mtx_unlock(&queue->finish_lock);
    
    541 550
     
    
    542 551
        util_barrier_destroy(&barrier);
    
    543 552
     
    

  • src/util/u_queue.h
    ... ... @@ -200,6 +200,7 @@ struct util_queue_job {
    200 200
     /* Put this into your context. */
    
    201 201
     struct util_queue {
    
    202 202
        const char *name;
    
    203
    +   mtx_t finish_lock; /* only for util_queue_finish */
    
    203 204
        mtx_t lock;
    
    204 205
        cnd_t has_queued_cond;
    
    205 206
        cnd_t has_space_cond;
    


  • Reply to: