From: Imre Deak Date: Wed, 30 Mar 2011 11:36:09 +0000 (+0300) Subject: gpu: pvr: fix error path in SysInitialise X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=d51c89b929c07cfa068ef154024896ba1f92df07;p=sgx.git gpu: pvr: fix error path in SysInitialise Add missing check for the mem allocation result. Fixes: NB#241787 - missing check of return value of OSReservePhys() Reported-by: Coverity Signed-off-by: Imre Deak Reviewed-by: Pauli Nieminen --- diff --git a/pvr/sysconfig.c b/pvr/sysconfig.c index 45b9d1f..94f18f6 100644 --- a/pvr/sysconfig.c +++ b/pvr/sysconfig.c @@ -303,10 +303,16 @@ enum PVRSRV_ERROR SysInitialise(struct platform_device *pdev) SYS_OMAP3430_GP11TIMER_PHYS_BASE + SYS_OMAP3430_GPTIMER_REGS; gpsSysData->pvSOCTimerRegisterKM = NULL; gpsSysData->hSOCTimerRegisterOSMemHandle = NULL; - OSReservePhys(TimerRegPhysBase, 4, + eError = OSReservePhys(TimerRegPhysBase, 4, PVRSRV_HAP_MULTI_PROCESS | PVRSRV_HAP_UNCACHED, (void **)&gpsSysData->pvSOCTimerRegisterKM, &gpsSysData->hSOCTimerRegisterOSMemHandle); + if (eError != PVRSRV_OK) { + PVR_DPF(PVR_DBG_ERROR, "%s: OSReservePhys failed"); + SysDeinitialise(gpsSysData); + gpsSysData = NULL; + return eError; + } gpsSysSpecificData->ui32SrcClockDiv = 3;