video: rockchip: mpp: prevent page order out of bounds

Signed-off-by: Yandong Lin <yandong.lin@rock-chips.com>
Change-Id: I4c79ee639d0fbc910fbb12525ea0a3c8e7841d1d
This commit is contained in:
Yandong Lin
2023-04-04 09:23:35 +08:00
parent d98a712cce
commit 078b5e4595
2 changed files with 4 additions and 2 deletions

View File

@@ -1688,8 +1688,9 @@ static int rkvdec2_free_rcbbuf(struct platform_device *pdev, struct rkvdec2_dev
if (dec->rcb_page) {
size_t page_size = PAGE_ALIGN(dec->rcb_size - dec->sram_size);
int order = min(get_order(page_size), MAX_ORDER);
__free_pages(dec->rcb_page, get_order(page_size));
__free_pages(dec->rcb_page, order);
}
if (dec->rcb_iova) {
domain = dec->mpp.iommu_info->domain;

View File

@@ -2508,8 +2508,9 @@ static int rkvenc2_free_rcbbuf(struct platform_device *pdev, struct rkvenc_dev *
if (enc->rcb_page) {
size_t page_size = PAGE_ALIGN(enc->sram_used - enc->sram_size);
int order = min(get_order(page_size), MAX_ORDER);
__free_pages(enc->rcb_page, get_order(page_size));
__free_pages(enc->rcb_page, order);
}
if (enc->sram_iova) {
domain = enc->mpp.iommu_info->domain;