mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-06 02:50:49 +09:00
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:
@@ -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;
|
||||
|
||||
@@ -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;
|
||||
|
||||
Reference in New Issue
Block a user