Commit graph

515 commits

Author SHA1 Message Date
Harish Mahendrakar
7e06940dce decoder: Update check for first mb in slice
first_mb_in_slice shouldn't be >= mbs in the picture.

Test: poc in bugs
Bug: b/174238784
Bug: b/174507022
Bug: oss-fuzz:27856
Bug: oss-fuzz:28039
Change-Id: Id3a41c8c2ddf814910fc2d5dd4f57bdd84d28fec
2020-12-04 16:09:10 -08:00
Automerger Merge Worker
f64194a96f Merge "decoder: Fix minimum poc calculation check while adding to display" into oc-dev am: 9d7a036d7b am: cebf26ab4d
Change-Id: Ib8872212d43d41ae25f28992b6c02ab15cb72b26
2020-01-09 04:06:39 +00:00
TreeHugger Robot
9d7a036d7b Merge "decoder: Fix minimum poc calculation check while adding to display" into oc-dev 2020-01-09 03:32:14 +00:00
Harish Mahendrakar
ffcf2a87d6 decoder: Fix minimum poc calculation check while adding to display
While adding the decoded buffer to display queue, allow buffer with
poc set to 0x7FFFFFFF

Bug: 145364230
Test: poc in bug
Change-Id: I2a15f73b8422cfa4fd3360bc21c0cea4542a3375
2020-01-02 10:22:38 -08:00
Harish Mahendrakar
cce42ea920 decoder: Move initialization of dbp_mgr entries to init_decoder() am: 01da7b5a52
am: 41fcd228ae

Change-Id: Id8fa44c3401f7ac1d2a540fa35cf0f4346da2c42
2019-11-05 16:31:59 -08:00
Harish Mahendrakar
01da7b5a52 decoder: Move initialization of dbp_mgr entries to init_decoder()
Earlier these were only initialized during static buffer allocations.
Initializing them in init_decoder() will ensure that these get
initialized to default values during reset() as well. Without this,
in some error cases, there is a possibility of heap-use-after free,
when resolution changes and these pointers point to memory that is freed

Bug: 142602711
Test: poc in bug
Change-Id: Ie39fee0eca56bf32cdc558099bf167d05eb89620
2019-10-29 19:52:49 -07:00
Rakesh Kumar
224bcf4592 [automerger] Decoder: Delete node from st if lt and st point to same am: f312a1d305 am: f82a1f8d7f am: ae2c8cfdc1 am: 8332d0bfa2 am: 1e6ef7fee5 am: b1734142ff
am: 9460fbd521

Change-Id: I0c53bc30225153ff03d44670f6967a05e161c654
2019-05-29 14:16:23 -07:00
Android Build Merger (Role)
b1734142ff [automerger] Decoder: Delete node from st if lt and st point to same am: f312a1d305 am: f82a1f8d7f am: ae2c8cfdc1 am: 8332d0bfa2 am: 1e6ef7fee5
Change-Id: Id6d3411d949ae069369d7bef1c50f904cf9c97dc
2019-05-08 18:45:13 +00:00
Android Build Merger (Role)
f82a1f8d7f [automerger] Decoder: Delete node from st if lt and st point to same am: f312a1d305
Change-Id: I90a0c3fca5d7542301994711448d7c79fe98e704
2019-05-08 18:45:05 +00:00
Rakesh Kumar
f312a1d305 Decoder: Delete node from st if lt and st point to same
If lt_list and st_list point to same node then delete it from st.
If there is error while adding a node in bottom field of lt_list (top is
already added) then this node will be pointed by st_list also. So we need
to remove it from st_list

bug: 73552574
Test: poc before/after on Android N security branch
Change-Id: I95304c242c5854b18c5c7220d114ce6215760124
2019-05-08 11:44:40 -07:00
Harish Mahendrakar
7a6b55da22 [automerger] decoder: Signal IVD_RES_CHANGED error for change in crop params am: 442a01bf37 am: 1d7d7f9bf6 am: acacf063c2 am: f33c02ed73 am: c09d3f99ab am: 145ae0d049
am: 4402b34a4f

Change-Id: I16ce7cfc21dcb0ccf10b4ce8109a61e272765120
2018-11-27 12:10:36 -08:00
Android Build Merger (Role)
145ae0d049 [automerger] decoder: Signal IVD_RES_CHANGED error for change in crop params am: 442a01bf37 am: 1d7d7f9bf6 am: acacf063c2 am: f33c02ed73 am: c09d3f99ab
Change-Id: I0dda0584bd0bf112fade0827b0460a82f8c14437
2018-11-10 18:16:37 +00:00
Android Build Merger (Role)
1d7d7f9bf6 [automerger] decoder: Signal IVD_RES_CHANGED error for change in crop params am: 442a01bf37
Change-Id: I05d6d693a8e8d18cd3cf74d95271efd8a339e06f
2018-11-10 18:16:32 +00:00
Harish Mahendrakar
442a01bf37 decoder: Signal IVD_RES_CHANGED error for change in crop params
IVD_RES_CHANGED was not signaled when crop parameters changed, i.e.
display dimensions changed without change in decode dimensions.

In such cases, if output buffer was allocated as per the current
dimension being decoded, without IVD_RES_CHANGED signalled, there can be
an OOB write if the new buffer is smaller than the frame being returned
as output

Bug: 118399205
Test: vendor
Change-Id: Ia750a99cda08a3254a6f8ea8b55d07e655b34d05
2018-11-10 10:16:06 -08:00
Android Build Merger (Role)
e6d4971fdb [automerger] Bug fix for flush without valid frames am: 10c1176f1b am: 54fe392964 am: 6261ed297b am: 051d4fb2dc am: 1863b7cc03
Change-Id: Ibd65acb3016732e53b25cb4aee2ec58076f6340f
2018-05-21 23:36:25 +00:00
Android Build Merger (Role)
54fe392964 [automerger] Bug fix for flush without valid frames am: 10c1176f1b
Change-Id: Ie26a4e3f41ab437f9d41bddb0a1166274fc3a261
2018-05-21 23:36:19 +00:00
Hamsalekha S
10c1176f1b Bug fix for flush without valid frames
We now return fail and get out of flush mode to accept bitstream in the next call.

Bug: 35585952
Bug: 63521984
Test: test case does not hang
Change-Id: Id22cc98d4a47714475a67918990a181a805c4c9f
2018-05-21 15:36:09 -07:00
Ritu Baldwa
777146501f [automerger] Decoder: Modify setting short term reference field flag am: 47cc04b40c am: 1991ec77e7 am: c18d0ab03a am: 8f05a87c39 am: ce46d15877 am: 8781a2aa9b am: 9cb460fb64 am: bae32f4c46 am: b8dd278100 am: 2dfd8c6d91
am: e44fbd93cb

Change-Id: Ie4be903f762a324339626d2ce95aca16592fa213
2018-04-05 18:22:54 -07:00
Android Build Merger (Role)
2dfd8c6d91 [automerger] Decoder: Modify setting short term reference field flag am: 47cc04b40c am: 1991ec77e7 am: c18d0ab03a am: 8f05a87c39 am: ce46d15877 am: 8781a2aa9b am: 9cb460fb64 am: bae32f4c46 am: b8dd278100
Change-Id: I9d0d825dc092c033eea729ea51eb8915c2502a68
2018-03-28 17:26:02 +00:00
Android Build Merger (Role)
8781a2aa9b [automerger] Decoder: Modify setting short term reference field flag am: 47cc04b40c am: 1991ec77e7 am: c18d0ab03a am: 8f05a87c39 am: ce46d15877
Change-Id: I9946acaead19bd15f5953a791429e12c5a5cf9df
2018-03-28 17:25:57 +00:00
Android Build Merger (Role)
1991ec77e7 [automerger] Decoder: Modify setting short term reference field flag am: 47cc04b40c
Change-Id: If09f9c6ab67bb396ed22c71175ee7de8f3c4a040
2018-03-28 17:25:51 +00:00
Ritu Baldwa
47cc04b40c Decoder: Modify setting short term reference field flag
Do not mark bottom field as short term in case of error.

Bug: 73553038
Bug: 73552574
Bug: 73552999
Test: poc before/after
Change-Id: I8576861af36996a361a81f48ba9b251f0ae4e660
2018-03-28 10:24:26 -07:00
Android Build Merger (Role)
57cd27cc9b Merge changes from topic "am-8231d92f-aea1-4f7d-b84c-789126fb6fa2" into oc-dev am: 3fffe3c300
am: 5759ea0b59

Change-Id: I30df7ac1808586db869dc0093f0586aa80eb348b
2018-01-31 22:38:58 +00:00
TreeHugger Robot
78f1152a7a Merge "Decoder: Fixed reset values in parse sps." into mnc-dev 2018-01-31 21:10:18 +00:00
TreeHugger Robot
3fffe3c300 Merge changes from topic "am-8231d92f-aea1-4f7d-b84c-789126fb6fa2" into oc-dev
* changes:
  [automerger] Decoder: Fixed reset values in parse sps. am: 9c32ad7126 am: 731580450e am: 2b842fb541 am: d9a7fe1268 am: 552788326b am: 33a0d86ce4 am: 773108fa3f am: 42e8b28561 am: 8534b9e55b
  [automerger] Decoder: Fixed reset values in parse sps. am: 9c32ad7126 am: 731580450e am: 2b842fb541 am: d9a7fe1268 am: 552788326b am: 33a0d86ce4 am: 773108fa3f am: 42e8b28561
  [automerger] Decoder: Fixed reset values in parse sps. am: 9c32ad7126 am: 731580450e am: 2b842fb541 am: d9a7fe1268 am: 552788326b am: 33a0d86ce4 am: 773108fa3f
  [automerger] Decoder: Fixed reset values in parse sps. am: 9c32ad7126 am: 731580450e am: 2b842fb541 am: d9a7fe1268 am: 552788326b am: 33a0d86ce4
  [automerger] Decoder: Fixed reset values in parse sps. am: 9c32ad7126 am: 731580450e am: 2b842fb541 am: d9a7fe1268 am: 552788326b
  [automerger] Decoder: Fixed reset values in parse sps. am: 9c32ad7126 am: 731580450e am: 2b842fb541 am: d9a7fe1268
  [automerger] Decoder: Fixed reset values in parse sps. am: 9c32ad7126 am: 731580450e am: 2b842fb541
  [automerger] Decoder: Fixed reset values in parse sps. am: 9c32ad7126 am: 731580450e
  [automerger] Decoder: Fixed reset values in parse sps. am: 9c32ad7126
  Decoder: Fixed reset values in parse sps.
2018-01-31 21:10:18 +00:00
TreeHugger Robot
b5b90f0549 Merge changes from topic "am-8231d92f-aea1-4f7d-b84c-789126fb6fa2" into nyc-dr1-dev
* changes:
  [automerger] Decoder: Fixed reset values in parse sps. am: 9c32ad7126 am: 731580450e am: 2b842fb541 am: d9a7fe1268 am: 552788326b
  [automerger] Decoder: Fixed reset values in parse sps. am: 9c32ad7126 am: 731580450e am: 2b842fb541 am: d9a7fe1268
  [automerger] Decoder: Fixed reset values in parse sps. am: 9c32ad7126 am: 731580450e am: 2b842fb541
  [automerger] Decoder: Fixed reset values in parse sps. am: 9c32ad7126 am: 731580450e
  [automerger] Decoder: Fixed reset values in parse sps. am: 9c32ad7126
  Decoder: Fixed reset values in parse sps.
2018-01-31 21:10:18 +00:00
TreeHugger Robot
ef5bc92259 Merge changes from topic "am-8231d92f-aea1-4f7d-b84c-789126fb6fa2" into mnc-dr-dev
* changes:
  [automerger] Decoder: Fixed reset values in parse sps. am: 9c32ad7126
  Decoder: Fixed reset values in parse sps.
2018-01-31 21:10:18 +00:00
Android Build Merger (Role)
ab81339c93 [automerger] Decoder: Set prev slice type for I slice. am: aecdfd1aff am: 65db3cc9a3 am: 93e93983e1 am: 0f9ee33f0a am: 9d76581d46 am: 475e185a91 am: 16d1d4faa8 am: 08e373f4fe am: aa395054d5 am: 3c729938cc
am: c901efd3fd

Change-Id: I5fc3b0a7969484e349b732bb07d959369da52921
2018-01-31 18:30:22 +00:00
Android Build Merger (Role)
3c729938cc [automerger] Decoder: Set prev slice type for I slice. am: aecdfd1aff am: 65db3cc9a3 am: 93e93983e1 am: 0f9ee33f0a am: 9d76581d46 am: 475e185a91 am: 16d1d4faa8 am: 08e373f4fe am: aa395054d5
Change-Id: If3af4fa8e6c5a18cda2135e90156c3441e738f60
2018-01-29 23:19:22 +00:00
Android Build Merger (Role)
475e185a91 [automerger] Decoder: Set prev slice type for I slice. am: aecdfd1aff am: 65db3cc9a3 am: 93e93983e1 am: 0f9ee33f0a am: 9d76581d46
Change-Id: I6f12497fc967f6537e2e8882cd735cdbeedc9b35
2018-01-29 23:19:15 +00:00
Android Build Merger (Role)
65db3cc9a3 [automerger] Decoder: Set prev slice type for I slice. am: aecdfd1aff
Change-Id: I5397b5635a304040fa8bcbd2999be4b07fcbdc0d
2018-01-29 23:19:09 +00:00
Ritu Baldwa
aecdfd1aff Decoder: Set prev slice type for I slice.
Fixed initialization of u1_pr_sl_type for I slice.

Bug: 70897454
Test: ran PoC before/after patch
Change-Id: I0c37317513b72236be98c2b25482a67bf2b56052
2018-01-29 15:17:19 -08:00
Android Build Merger (Role)
891d4796e1 [automerger] Decoder: Fixed reset values in parse sps. am: 9c32ad7126 am: 731580450e am: 2b842fb541 am: d9a7fe1268 am: 552788326b am: 33a0d86ce4 am: 773108fa3f am: 42e8b28561 am: 8534b9e55b
Change-Id: I0216f20b9226c6a85fc9cbe257b2ed341aacb86b
2018-01-18 18:44:29 +00:00
Android Build Merger (Role)
33a0d86ce4 [automerger] Decoder: Fixed reset values in parse sps. am: 9c32ad7126 am: 731580450e am: 2b842fb541 am: d9a7fe1268 am: 552788326b
Change-Id: Ib54b87663a62ba48b3763fcef8092d1133f24b9b
2018-01-18 18:44:23 +00:00
Android Build Merger (Role)
731580450e [automerger] Decoder: Fixed reset values in parse sps. am: 9c32ad7126
Change-Id: Ia8766fd9f4b9a2cb5f7bb13e221d8c0f9b366d66
2018-01-18 18:44:16 +00:00
Ritu Baldwa
9c32ad7126 Decoder: Fixed reset values in parse sps.
Memset to zero whenever new sps occurs.

Bug: 70897394
Test: manual
Change-Id: I5936fd55265ff8ad2b275a72b175cdb540bb7933
2018-01-18 10:43:26 -08:00
Ray Essick
25e3974121 Merge "Decoder: Adding Error Check for Output Buffer Size in Shared Display Mode." into mnc-dev am: afc729db25 am: 1fb89d8488 am: 56f836a29c am: 33675f68d6 am: 547804d647 am: 7adc4d57f1 am: cfe44b34c0 am: 17b987beec am: bce27b7e66 am: e31fa45761
am: d1b1b3df78

Change-Id: Iaf186690123373a8c2920a9430d89eb6a5031241
2018-01-08 22:53:25 +00:00
Ray Essick
e31fa45761 Merge "Decoder: Adding Error Check for Output Buffer Size in Shared Display Mode." into mnc-dev am: afc729db25 am: 1fb89d8488 am: 56f836a29c am: 33675f68d6 am: 547804d647 am: 7adc4d57f1 am: cfe44b34c0 am: 17b987beec
am: bce27b7e66

Change-Id: I6755dedeb1a32a32e85627602783ca77cd966fc7
2018-01-08 22:49:54 +00:00
Ray Essick
7adc4d57f1 Merge "Decoder: Adding Error Check for Output Buffer Size in Shared Display Mode." into mnc-dev am: afc729db25 am: 1fb89d8488 am: 56f836a29c am: 33675f68d6
am: 547804d647

Change-Id: I22c555cc975abbfa80aa38810c9e7a0f59ce3450
2018-01-08 22:41:22 +00:00
Ray Essick
1fb89d8488 Merge "Decoder: Adding Error Check for Output Buffer Size in Shared Display Mode." into mnc-dev
am: afc729db25

Change-Id: Ic57cdca65a505c45bec9c6ff8dd9b5d9dab5fec7
2018-01-08 22:27:38 +00:00
Ray Essick
afc729db25 Merge "Decoder: Adding Error Check for Output Buffer Size in Shared Display Mode." into mnc-dev 2018-01-08 22:16:23 +00:00
Ritu Baldwa
6b66cac7a8 Decoder: Fixed memory overflow in shared display mode. am: c3b026a87d am: 0183e8df10 am: 53b26e4caa am: 64df5835a4 am: f55fa2495d am: 01f26b3531 am: 8467cf1390 am: bc664e6fa7 am: 6c5f746f25 am: f8f4968473
am: 134620a49b

Change-Id: I439af220021b31b98a96d7f2f2e54c8576fca4c7
2018-01-08 20:24:46 +00:00
Ritu Baldwa
f8f4968473 Decoder: Fixed memory overflow in shared display mode. am: c3b026a87d am: 0183e8df10 am: 53b26e4caa am: 64df5835a4 am: f55fa2495d am: 01f26b3531 am: 8467cf1390 am: bc664e6fa7
am: 6c5f746f25

Change-Id: I7e9a589a39a5491448d497908190334c58d1f064
2018-01-08 20:18:41 +00:00
Ritu Baldwa
01f26b3531 Decoder: Fixed memory overflow in shared display mode. am: c3b026a87d am: 0183e8df10 am: 53b26e4caa am: 64df5835a4
am: f55fa2495d

Change-Id: I112dc9e18949a368838162cfede42c00493ebb45
2018-01-08 20:06:07 +00:00
Ritu Baldwa
0183e8df10 Decoder: Fixed memory overflow in shared display mode.
am: c3b026a87d

Change-Id: I2b1d09b719db6dc4e5ee32be6653b4a64e89ebd5
2018-01-08 19:56:05 +00:00
Ritu Baldwa
c3b026a87d Decoder: Fixed memory overflow in shared display mode.
The factor multiplication should happen only at the source,
not at the destination.

Bug: 71375536
Test: manual
Change-Id: Ib5f00b87150a0533880346fac5464b0b1a802c36
2018-01-05 11:09:27 -08:00
Ritu Baldwa
3692aceb1b Decoder: Adding Error Check for Output Buffer Size in Shared Display Mode.
The output buffer size given by the application, needs to be checked
in every process call. This is required in the case of resolution
change in shared display mode.

Bug: 70294343
Bug: 70350193
Bug: 70526411
Bug: 70526485
Test: manual
Change-Id: I2c1e59425e84ac62a874e5ee180e1b98f0a4058f
2018-01-02 14:25:27 -08:00
Ritu Baldwa
15f0f58d7f Decoder: Modified loop condition while parsing ref_list_reordering. am: 7ea47d575d am: 8d081b93a8 am: ae0dcda477 am: 65da9e8e53 am: 451792cab1 am: dc0e289d45 am: c1bff2a31b am: e08336ba88 am: ad29aed343 am: 9304844cd5
am: e9647265f5

Change-Id: Id3f2f755cd9283fa0964aab3848f1386adf1f940
2017-12-01 21:23:31 +00:00
Ritu Baldwa
9304844cd5 Decoder: Modified loop condition while parsing ref_list_reordering. am: 7ea47d575d am: 8d081b93a8 am: ae0dcda477 am: 65da9e8e53 am: 451792cab1 am: dc0e289d45 am: c1bff2a31b am: e08336ba88
am: ad29aed343

Change-Id: Ib0d6d19006a09c331b5b85e4fe5d9edd325068ac
2017-12-01 21:19:32 +00:00
Ritu Baldwa
dc0e289d45 Decoder: Modified loop condition while parsing ref_list_reordering. am: 7ea47d575d am: 8d081b93a8 am: ae0dcda477 am: 65da9e8e53
am: 451792cab1

Change-Id: I596a4b059c04866d998a613e4ecb9bfd7f4ec562
2017-12-01 21:11:28 +00:00