|
|
@@ -1,59 +0,0 @@
|
|
|
-[PATCH] vpu-lib: fix IOGetVirtMem return value checks
|
|
|
-
|
|
|
-When using a kernel where user/kernel split is 3G/1G, the address
|
|
|
-returned by IOGetVirtMem() can appear to be a negative int.
|
|
|
-
|
|
|
-IOSystemInit() incorrectly checks the return value of IOGetVirtMem().
|
|
|
-IOGetVirtMem() returns -1 on error (and not MAP_FAILED, nor any other
|
|
|
-negative value.)
|
|
|
-
|
|
|
-Fix that by correctly checking against -1 (and not MAP_FAILED!)
|
|
|
-
|
|
|
-Signed-off-by: Gary Bisson <bisson.gary@gmail.com>
|
|
|
-[yann.morin.1998@free.fr: expand the commit log]
|
|
|
-Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
|
|
|
----
|
|
|
- vpu/vpu_lib.c | 8 ++++----
|
|
|
- 1 file changed, 4 insertions(+), 4 deletions(-)
|
|
|
-
|
|
|
-diff --git a/vpu/vpu_lib.c b/vpu/vpu_lib.c
|
|
|
-index 1fb731b..7a7f42d 100644
|
|
|
---- a/vpu/vpu_lib.c
|
|
|
-+++ b/vpu/vpu_lib.c
|
|
|
-@@ -1764,7 +1764,7 @@ RetCode vpu_EncStartOneFrame(EncHandle handle, EncParam * param)
|
|
|
- err_msg("Unable to obtain physical mem\n");
|
|
|
- return RETCODE_FAILURE;
|
|
|
- }
|
|
|
-- if (IOGetVirtMem(&pEncInfo->picParaBaseMem) <= 0) {
|
|
|
-+ if (IOGetVirtMem(&pEncInfo->picParaBaseMem) == -1) {
|
|
|
- IOFreePhyMem(&pEncInfo->picParaBaseMem);
|
|
|
- pEncInfo->picParaBaseMem.phy_addr = 0;
|
|
|
- err_msg("Unable to obtain virtual mem\n");
|
|
|
-@@ -2982,7 +2982,7 @@ RetCode vpu_DecGetInitialInfo(DecHandle handle, DecInitialInfo * info)
|
|
|
- UnlockVpu(vpu_semap);
|
|
|
- return RETCODE_FAILURE;
|
|
|
- }
|
|
|
-- if (IOGetVirtMem(&pDecInfo->userDataBufMem) <= 0) {
|
|
|
-+ if (IOGetVirtMem(&pDecInfo->userDataBufMem) == -1) {
|
|
|
- IOFreePhyMem(&pDecInfo->userDataBufMem);
|
|
|
- pDecInfo->userDataBufMem.phy_addr = 0;
|
|
|
- err_msg("Unable to obtain virtual mem\n");
|
|
|
-@@ -4017,7 +4017,7 @@ RetCode vpu_DecStartOneFrame(DecHandle handle, DecParam * param)
|
|
|
- UnlockVpu(vpu_semap);
|
|
|
- return RETCODE_FAILURE;
|
|
|
- }
|
|
|
-- if (IOGetVirtMem(&pDecInfo->picParaBaseMem) <= 0) {
|
|
|
-+ if (IOGetVirtMem(&pDecInfo->picParaBaseMem) == -1) {
|
|
|
- IOFreePhyMem(&pDecInfo->picParaBaseMem);
|
|
|
- pDecInfo->picParaBaseMem.phy_addr = 0;
|
|
|
- err_msg("Unable to obtain virtual mem\n");
|
|
|
-@@ -4057,7 +4057,7 @@ RetCode vpu_DecStartOneFrame(DecHandle handle, DecParam * param)
|
|
|
- UnlockVpu(vpu_semap);
|
|
|
- return RETCODE_FAILURE;
|
|
|
- }
|
|
|
-- if (IOGetVirtMem(&pDecInfo->userDataBufMem) <= 0) {
|
|
|
-+ if (IOGetVirtMem(&pDecInfo->userDataBufMem) == -1) {
|
|
|
- IOFreePhyMem(&pDecInfo->userDataBufMem);
|
|
|
- pDecInfo->userDataBufMem.phy_addr = 0;
|
|
|
- err_msg("Unable to obtain virtual mem\n");
|
|
|
-
|