From 2efd500bbb3cea50df34bca2f3edfd638eb8cc8d Mon Sep 17 00:00:00 2001 From: Imre Deak Date: Wed, 15 Sep 2010 13:52:32 +0300 Subject: [PATCH] gpu: pvr: pass IOCTL in param size to dispatch func This is needed by an upcoming patch that differentiates between IOCTL parameter format based on it's size. Also some ws change to silence checkpatch. Signed-off-by: Imre Deak --- pvr/bridged_pvr_bridge.c | 5 +++-- pvr/bridged_sgx_bridge.c | 1 + pvr/bridged_sgx_bridge.h | 6 +++--- 3 files changed, 7 insertions(+), 5 deletions(-) diff --git a/pvr/bridged_pvr_bridge.c b/pvr/bridged_pvr_bridge.c index 0c3982e..d7d9a8d 100644 --- a/pvr/bridged_pvr_bridge.c +++ b/pvr/bridged_pvr_bridge.c @@ -2920,6 +2920,7 @@ static int bridged_check_cmd(u32 cmd_id) } static int bridged_ioctl(struct file *filp, u32 cmd, void *in, void *out, + size_t in_size, struct PVRSRV_PER_PROCESS_DATA *per_proc) { int err = -EFAULT; @@ -3198,7 +3199,7 @@ static int bridged_ioctl(struct file *filp, u32 cmd, void *in, void *out, err = SGXGetInternalDevInfoBW(cmd, in, out, per_proc); break; case PVRSRV_BRIDGE_SGX_DOKICK: - err = SGXDoKickBW(cmd, in, out, per_proc); + err = SGXDoKickBW(cmd, in, out, in_size, per_proc); break; case PVRSRV_BRIDGE_SGX_GETPHYSPAGEADDR: @@ -3325,7 +3326,7 @@ int BridgedDispatchKM(struct file *filp, struct PVRSRV_PER_PROCESS_DATA *pd, goto return_fault; } - err = bridged_ioctl(filp, bid, in, out, pd); + err = bridged_ioctl(filp, bid, in, out, pkg->ui32InBufferSize, pd); if (err < 0) goto return_fault; diff --git a/pvr/bridged_sgx_bridge.c b/pvr/bridged_sgx_bridge.c index dde3ebe..67040a6 100644 --- a/pvr/bridged_sgx_bridge.c +++ b/pvr/bridged_sgx_bridge.c @@ -132,6 +132,7 @@ int SGXGetInternalDevInfoBW(u32 ui32BridgeID, int SGXDoKickBW(u32 ui32BridgeID, struct PVRSRV_BRIDGE_IN_DOKICK *psDoKickIN, struct PVRSRV_BRIDGE_RETURN *psRetOUT, + size_t in_size, struct PVRSRV_PER_PROCESS_DATA *psPerProc) { void *hDevCookieInt; diff --git a/pvr/bridged_sgx_bridge.h b/pvr/bridged_sgx_bridge.h index aa1e7dc..c2a8c47 100644 --- a/pvr/bridged_sgx_bridge.h +++ b/pvr/bridged_sgx_bridge.h @@ -45,9 +45,9 @@ int SGXGetInternalDevInfoBW(u32 ui32BridgeID, struct PVRSRV_PER_PROCESS_DATA *psPerProc); int SGXDoKickBW(u32 ui32BridgeID, - struct PVRSRV_BRIDGE_IN_DOKICK *psDoKickIN, - struct PVRSRV_BRIDGE_RETURN *psRetOUT, - struct PVRSRV_PER_PROCESS_DATA *psPerProc); + struct PVRSRV_BRIDGE_IN_DOKICK *psDoKickIN, + struct PVRSRV_BRIDGE_RETURN *psRetOUT, size_t in_size, + struct PVRSRV_PER_PROCESS_DATA *psPerProc); int SGXScheduleProcessQueuesBW(u32 ui32BridgeID, struct PVRSRV_BRIDGE_IN_SGX_SCHEDULE_PROCESS_QUEUES *psScheduleProcQIN, -- 2.39.5