Received: by 10.223.185.116 with SMTP id b49csp8259171wrg; Thu, 1 Mar 2018 21:20:22 -0800 (PST) X-Google-Smtp-Source: AG47ELteZka5oykSFPfNrvG7ernc5pxnsuPFwbO6HxkaVugy3IURRbqGqf/JESQeP3kl8Dmnjbux X-Received: by 2002:a17:902:6c41:: with SMTP id h1-v6mr4141181pln.25.1519968022789; Thu, 01 Mar 2018 21:20:22 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1519968022; cv=none; d=google.com; s=arc-20160816; b=Lm4PdRgTvLMhfc9VLUw5DynJXAtqRFkX/MltmTRBzMaMyOLIqWwfxMYQUTMGGDjeID XErV4UyBXy68HMeLSO6gbJW3NYeU6AfcF9uoRntfZEkqFroUtMByeCCskXOr4meFoLYt NhFARGz7K4TtEF2uAB5WSBSlNnqtbgiZf6s86m+wojbS2utD3qkHRPNEWe5/huEB53Nf f3KvF+eZMNTdZFEm5g2Y1WiiViK+P3CkVn7pSqwN+zgwiv6fF4Ot8PpnlpK9refTzhZ+ RAH9c7eBXGSkhsC9ryZmV9agkzfKOcUucNdL4GfKUkPfvMbvyPxGEG9nNbQUTJfNYTMb 9emQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:message-id:content-language :content-transfer-encoding:in-reply-to:mime-version:user-agent:date :from:references:cc:to:subject:arc-authentication-results; bh=6ZBmh/m85YG6YVENRLrZAnNpBt2EDWCW5L/wsu3FYxE=; b=r9u/Zbla8VPBmCHwo+lsgnneIgGQKx5PksWk5pT/4fxMeh1ni7mV8spmNfowNNh1+D txzKJV/OtdmwD4ruOwg3EKj1JRoecBk9tyw8SFfIhYP5vruon1z3J6s1G83v9ke5LJQ6 gXUEdnDwx3WaVNKNIiVh0Frb7knDTBMyHEPbuL6K5XwQpE2lPbieVTapc8FfRQu+3u7Y tTfv5TO+UGkf5a+5Q+H8Lp3IXoq5k1gOk8tyip2qiqNJUcvpgDRY81oX+hYEg7jJ2v0q 71C03Ss4pZWuudXyW56exhAQ5ZMQPO4nXJWcBlN5k3N42D1+141XtAtwditZnGSA8ZPj bFnw== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=ibm.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id k15si3506059pgc.482.2018.03.01.21.20.07; Thu, 01 Mar 2018 21:20:22 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=ibm.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1164827AbeCBDxB (ORCPT + 99 others); Thu, 1 Mar 2018 22:53:01 -0500 Received: from mx0a-001b2d01.pphosted.com ([148.163.156.1]:34556 "EHLO mx0a-001b2d01.pphosted.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1164778AbeCBDwz (ORCPT ); Thu, 1 Mar 2018 22:52:55 -0500 Received: from pps.filterd (m0098399.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.16.0.22/8.16.0.22) with SMTP id w223n6lT125305 for ; Thu, 1 Mar 2018 22:52:55 -0500 Received: from e06smtp10.uk.ibm.com (e06smtp10.uk.ibm.com [195.75.94.106]) by mx0a-001b2d01.pphosted.com with ESMTP id 2gextc8jtp-1 (version=TLSv1.2 cipher=AES256-SHA bits=256 verify=NOT) for ; Thu, 01 Mar 2018 22:52:54 -0500 Received: from localhost by e06smtp10.uk.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted for from ; Fri, 2 Mar 2018 03:52:52 -0000 Received: from b06cxnps4075.portsmouth.uk.ibm.com (9.149.109.197) by e06smtp10.uk.ibm.com (192.168.101.140) with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted; Fri, 2 Mar 2018 03:52:48 -0000 Received: from d06av24.portsmouth.uk.ibm.com (mk.ibm.com [9.149.105.60]) by b06cxnps4075.portsmouth.uk.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id w223qmWb35651648; Fri, 2 Mar 2018 03:52:48 GMT Received: from d06av24.portsmouth.uk.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 3DC144204B; Fri, 2 Mar 2018 03:45:16 +0000 (GMT) Received: from d06av24.portsmouth.uk.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 2C72242041; Fri, 2 Mar 2018 03:45:12 +0000 (GMT) Received: from [9.77.211.44] (unknown [9.77.211.44]) by d06av24.portsmouth.uk.ibm.com (Postfix) with ESMTP; Fri, 2 Mar 2018 03:45:11 +0000 (GMT) Subject: Re: [RFC 3/4] trace_uprobe: Support SDT markers having semaphore To: Masami Hiramatsu Cc: peterz@infradead.org, mingo@redhat.com, acme@kernel.org, alexander.shishkin@linux.intel.com, jolsa@redhat.com, namhyung@kernel.org, linux-kernel@vger.kernel.org, rostedt@goodmis.org, ananth@linux.vnet.ibm.com, naveen.n.rao@linux.vnet.ibm.com, srikar@linux.vnet.ibm.com, oleg@redhat.com, Ravi Bangoria References: <20180228075345.674-1-ravi.bangoria@linux.vnet.ibm.com> <20180228075345.674-4-ravi.bangoria@linux.vnet.ibm.com> <20180301230741.bf15b2ab4c4913303e54884a@kernel.org> From: Ravi Bangoria Date: Fri, 2 Mar 2018 09:24:56 +0530 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.6.0 MIME-Version: 1.0 In-Reply-To: <20180301230741.bf15b2ab4c4913303e54884a@kernel.org> Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit Content-Language: en-US X-TM-AS-GCONF: 00 x-cbid: 18030203-0040-0000-0000-00000419BC61 X-IBM-AV-DETECTION: SAVI=unused REMOTE=unused XFE=unused x-cbparentid: 18030203-0041-0000-0000-0000261CC245 Message-Id: X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10432:,, definitions=2018-03-02_02:,, signatures=0 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 malwarescore=0 suspectscore=0 phishscore=0 bulkscore=0 spamscore=0 clxscore=1015 lowpriorityscore=0 impostorscore=0 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1709140000 definitions=main-1803020041 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 03/01/2018 07:37 PM, Masami Hiramatsu wrote: > On Wed, 28 Feb 2018 13:23:44 +0530 > Ravi Bangoria wrote: > >> @@ -502,6 +504,16 @@ static int create_trace_uprobe(int argc, char **argv) >> for (i = 0; i < argc && i < MAX_TRACE_ARGS; i++) { >> struct probe_arg *parg = &tu->tp.args[i]; >> >> + /* This is not really an argument. */ >> + if (argv[i][0] == '*') { >> + ret = kstrtoul(&(argv[i][1]), 0, &tu->sdt_offset); >> + if (ret) { >> + pr_info("Invalid semaphore address.\n"); >> + goto error; >> + } >> + continue; >> + } > So, this part should be done with parsing probe-point as I pointed. Yes, will change it. >> +static void sdt_increment_sem(struct trace_uprobe *tu) >> +{ >> + struct uprobe_map_info *info; >> + struct vm_area_struct *vma; >> + unsigned long vaddr; >> + >> + uprobe_start_dup_mmap(); >> + info = build_uprobe_map_info(tu->inode->i_mapping, tu->sdt_offset, false); >> + if (IS_ERR(info)) >> + goto out; >> + >> + while (info) { >> + down_write(&info->mm->mmap_sem); >> + vma = sdt_find_vma(info->mm, tu); >> + if (!vma) >> + goto cont; >> + >> + vaddr = offset_to_vaddr(vma, tu->sdt_offset); >> + sdt_update_sem(info->mm, vaddr, 1); >> + >> +cont: > Why would you use goto here? Hmm.. sdt_find_vma() must return vma. Sure, will remove the goto. Should I add a WARN_ON(!vma) ? Thanks for the review, Ravi