From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 23422 invoked by alias); 6 Jul 2007 08:03:43 -0000 Received: (qmail 23413 invoked by uid 22791); 6 Jul 2007 08:03:42 -0000 X-Spam-Status: No, hits=-0.6 required=5.0 tests=AWL,BAYES_40,DK_POLICY_SIGNSOME X-Spam-Check-By: sourceware.org Received: from agminet01.oracle.com (HELO agminet01.oracle.com) (141.146.126.228) by sourceware.org (qpsmtpd/0.31) with ESMTP; Fri, 06 Jul 2007 08:03:36 +0000 Received: from rgmsgw01.us.oracle.com (rgmsgw01.us.oracle.com [138.1.186.51]) by agminet01.oracle.com (Switch-3.2.4/Switch-3.1.7) with ESMTP id l6683X53023812 for ; Fri, 6 Jul 2007 03:03:33 -0500 Received: from [10.182.121.157] (dhcp-beijing-cdc-10-182-121-157.cn.oracle.com [10.182.121.157]) by rgmsgw01.us.oracle.com (Switch-3.2.4/Switch-3.2.4) with ESMTP id l6683Va3013722 for ; Fri, 6 Jul 2007 02:03:32 -0600 Message-ID: <468DF726.9090808@oracle.com> Date: Fri, 06 Jul 2007 08:03:00 -0000 From: Wenji Huang User-Agent: Mozilla Thunderbird 1.0.8-1.4.1 (X11/20060420) X-Accept-Language: en-us, en MIME-Version: 1.0 To: systemtap@sourceware.org Subject: multip register_uprobe Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Brightmail-Tracker: AAAAAQAAAAI= X-Brightmail-Tracker: AAAAAA== X-Whitelist: TRUE X-Whitelist: TRUE X-IsSubscribed: yes Mailing-List: contact systemtap-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Post: List-Help: , Sender: systemtap-owner@sourceware.org X-SW-Source: 2007-q3/txt/msg00024.txt.bz2 Hi, I am creating some test scripts based on sarikar's framework. There is one problem about register multiple times. ................. probes->vaddr = vaddr; probes->pid = pid; probes->handler = handler; for (i=0; i < 3; i++) { ret = register_uprobe(probes); if (ret!=0) //of course, the first time should succeed and will failed in second time, ret = -16 { I tried several possibilities: * return ret; //RESULT: the module can't be removed, the probed process will hang, can't be killed/continued * return 0; //RESULT: same as above * unregister_uprobe(probes);kfree(probes);break; //RESULT: same as above * kfree(probes);break; //RESULT: the module can be removed, the probed process will hang, can't be killed/continued } } return 0; ................. But, no problem in "register once and unregister multiple times". Environment: kernel: 2.6.21 utrace: http://people.redhat.com/roland/utrace/2.6.21/ uprobe: mail by Jim, on 2007/05/26 All the tests in srikar's testsuite passed in the box. Any analysis? or need to update utrace/uprobe? Is there any website or cvs to get the resource? Regards, -- ***Wenji Huang *