[IA64] correct file descriptor reference counting in perfmon

Fix a bug in sys_perfmonctl() whereby it was not correctly
decrementing the file descriptor reference count.

Signed-off-by: stephane eranian <eranian@hpl.hp.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>

authored by Stephane Eranian and committed by Tony Luck b8444d00 e9f7bee1

+3 -1
+3 -1
arch/ia64/kernel/perfmon.c
··· 4936 if (likely(ctx)) { 4937 DPRINT(("context unlocked\n")); 4938 UNPROTECT_CTX(ctx, flags); 4939 - fput(file); 4940 } 4941 4942 /* copy argument back to user, if needed */ 4943 if (call_made && PFM_CMD_RW_ARG(cmd) && copy_to_user(arg, args_k, base_sz*count)) ret = -EFAULT; 4944 4945 error_args: 4946 kfree(args_k); 4947 4948 DPRINT(("cmd=%s ret=%ld\n", PFM_CMD_NAME(cmd), ret));
··· 4936 if (likely(ctx)) { 4937 DPRINT(("context unlocked\n")); 4938 UNPROTECT_CTX(ctx, flags); 4939 } 4940 4941 /* copy argument back to user, if needed */ 4942 if (call_made && PFM_CMD_RW_ARG(cmd) && copy_to_user(arg, args_k, base_sz*count)) ret = -EFAULT; 4943 4944 error_args: 4945 + if (file) 4946 + fput(file); 4947 + 4948 kfree(args_k); 4949 4950 DPRINT(("cmd=%s ret=%ld\n", PFM_CMD_NAME(cmd), ret));