From 0d1e5a21c4a89bc875e8600c753348963ef7e78a Mon Sep 17 00:00:00 2001 From: Jerome Jiang Date: Fri, 17 Feb 2017 17:56:08 -0800 Subject: [PATCH] Fix segmentation fault caused by denoiser working with spatial SVC. Re-enable the affected test. BUG=webm:1374 Change-Id: I98cd49403927123546d1d0056660b98c9cb8babb --- test/datarate_test.cc | 2 +- vp9/encoder/vp9_encoder.c | 5 +++-- vpx_dsp/x86/deblock_sse2.asm | 4 ++-- 3 files changed, 6 insertions(+), 5 deletions(-) diff --git a/test/datarate_test.cc b/test/datarate_test.cc index c58adb600..e66761fa0 100644 --- a/test/datarate_test.cc +++ b/test/datarate_test.cc @@ -1228,7 +1228,7 @@ TEST_P(DatarateOnePassCbrSvc, OnePassCbrSvc2SpatialLayers) { // Check basic rate targeting for 1 pass CBR SVC with denoising. // 2 spatial layers and 3 temporal layer. Run CIF clip with 1 thread. -TEST_P(DatarateOnePassCbrSvc, DISABLED_OnePassCbrSvc2SpatialLayersDenoiserOn) { +TEST_P(DatarateOnePassCbrSvc, OnePassCbrSvc2SpatialLayersDenoiserOn) { cfg_.rc_buf_initial_sz = 500; cfg_.rc_buf_optimal_sz = 500; cfg_.rc_buf_sz = 1000; diff --git a/vp9/encoder/vp9_encoder.c b/vp9/encoder/vp9_encoder.c index c33da10a1..8f9c8d0eb 100644 --- a/vp9/encoder/vp9_encoder.c +++ b/vp9/encoder/vp9_encoder.c @@ -3000,8 +3000,9 @@ static void set_size_dependent_vars(VP9_COMP *cpi, int *q, int *bottom_index, case 6: l = 150; break; } if (!cpi->common.postproc_state.limits) { - cpi->common.postproc_state.limits = vpx_calloc( - cpi->common.width, sizeof(*cpi->common.postproc_state.limits)); + cpi->common.postproc_state.limits = + vpx_calloc(cpi->un_scaled_source->y_width, + sizeof(*cpi->common.postproc_state.limits)); } vp9_denoise(cpi->Source, cpi->Source, l, cpi->common.postproc_state.limits); } diff --git a/vpx_dsp/x86/deblock_sse2.asm b/vpx_dsp/x86/deblock_sse2.asm index ebca50930..bd8fd1248 100644 --- a/vpx_dsp/x86/deblock_sse2.asm +++ b/vpx_dsp/x86/deblock_sse2.asm @@ -78,8 +78,8 @@ %endmacro %macro UPDATE_FLIMIT 0 - movdqa xmm2, XMMWORD PTR [rbx] - movdqa [rsp], xmm2 + movdqu xmm2, XMMWORD PTR [rbx] + movdqu [rsp], xmm2 add rbx, 16 %endmacro