aboutsummaryrefslogtreecommitdiffstats
path: root/kernel/events
diff options
context:
space:
mode:
authorOleg Nesterov <oleg@redhat.com>2012-11-21 12:01:43 -0500
committerOleg Nesterov <oleg@redhat.com>2013-02-08 11:47:01 -0500
commitf0744af7d0fde190674064c54e2ff60b34ac71fe (patch)
tree1fbe365e02f6d11c1a8837689578ef9b0874f0fa /kernel/events
parentbbc33d05930f870ea049eae5ed980f8b827d0813 (diff)
uprobes: Kill the pointless inode/uc checks in register/unregister
register/unregister verifies that inode/uc != NULL. For what? This really looks like "hide the potential problem", the caller should pass the valid data. register() also checks uc->next == NULL, probably to prevent the double-register but the caller can do other stupid/wrong things. If we do this check, then we should document that uc->next should be cleared before register() and add BUG_ON(). Also add the small comment about the i_size_read() check. Signed-off-by: Oleg Nesterov <oleg@redhat.com> Acked-by: Srikar Dronamraju <srikar@linux.vnet.ibm.com>
Diffstat (limited to 'kernel/events')
-rw-r--r--kernel/events/uprobes.c7
1 files changed, 1 insertions, 6 deletions
diff --git a/kernel/events/uprobes.c b/kernel/events/uprobes.c
index afbab2cb2742..a39d8163b713 100644
--- a/kernel/events/uprobes.c
+++ b/kernel/events/uprobes.c
@@ -844,9 +844,7 @@ int uprobe_register(struct inode *inode, loff_t offset, struct uprobe_consumer *
844 struct uprobe *uprobe; 844 struct uprobe *uprobe;
845 int ret; 845 int ret;
846 846
847 if (!inode || !uc || uc->next) 847 /* Racy, just to catch the obvious mistakes */
848 return -EINVAL;
849
850 if (offset > i_size_read(inode)) 848 if (offset > i_size_read(inode))
851 return -EINVAL; 849 return -EINVAL;
852 850
@@ -883,9 +881,6 @@ void uprobe_unregister(struct inode *inode, loff_t offset, struct uprobe_consume
883{ 881{
884 struct uprobe *uprobe; 882 struct uprobe *uprobe;
885 883
886 if (!inode || !uc)
887 return;
888
889 uprobe = find_uprobe(inode, offset); 884 uprobe = find_uprobe(inode, offset);
890 if (!uprobe) 885 if (!uprobe)
891 return; 886 return;