Received: by 2002:ac0:950c:0:0:0:0:0 with SMTP id f12csp1712049imc; Mon, 11 Mar 2019 21:59:01 -0700 (PDT) X-Google-Smtp-Source: APXvYqyhg/0VKT83B0w52wt7EO64brNtp+1WdaDZ3oPFBDf3DpIswQDDZkVKhbvHdZI79wJtGp0X X-Received: by 2002:a62:ae0b:: with SMTP id q11mr36820403pff.199.1552366741747; Mon, 11 Mar 2019 21:59:01 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1552366741; cv=none; d=google.com; s=arc-20160816; b=crJx3Vfa3pAHk7h66HALgvQ8F2WmVqsvhyB+GjzC29e079BEplPBtiqPzrhsBpY4Mh fw84Ym8OJ0yxo+gL8bqJQcSBIziLZAPxg29sORRLt++SubH7j/kCP1uKNgqG2DeA9HSL zJ2pEQ73lTYQUi0yyMz7cYU8ZwBlRV3mHn08aHsZjESPv+zb8Z8lOKqpo1VEzS4F74Dv g4tKvLizPFWT1rElYcMTi0ptMQcbUR51WB2G6l293J1pskzJtlYwNPAhciQc4tBc3DLx T4YteKg7e85GLQzUljGOO52WR0CAwQpXkbFudrhSZSEv6n4lGTw4rVlWpsPwnKG1sl0i 7/wQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:dkim-signature; bh=ulVlBNx93AvCw2pPS7B18RQRsMD31269sXjowYwKgTc=; b=AAZD44cAdA0zz4mp6SZlto6fYPQA667xRCMVL+4uujxMw887sIqJiYvImQvVT0eW+4 AvfK+zpaJNUN7gM99nbDfI6J2rLXpY6n7yVK479HtAmfh2wW+lVthDeZkhwixuMY89O/ QPlinDThkMjozacyhjEu37xjCRdWyB9JzQrNXQM5RP4VAxc9b85iCptF8OblbFdV97zB HObJa4OZkRU+6jlLgrN/M7Q7eWEU6y4u1z0hFygaBl+ly3iV1qALDXfPIcN6e0yKJOmo WYshpfRt/TJeIFDQRCuoVy4VBToy6zzv0aQKhHBQmhkvscvGjvLCW5XMu/i1U/4rK2WJ rTnA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@android.com header.s=20161025 header.b=T1v6BNEh; 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=pass (p=NONE sp=NONE dis=NONE) header.from=android.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id r5si2179777plo.40.2019.03.11.21.58.46; Mon, 11 Mar 2019 21:59:01 -0700 (PDT) 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; dkim=pass header.i=@android.com header.s=20161025 header.b=T1v6BNEh; 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=pass (p=NONE sp=NONE dis=NONE) header.from=android.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727053AbfCLE5z (ORCPT + 99 others); Tue, 12 Mar 2019 00:57:55 -0400 Received: from mail-oi1-f196.google.com ([209.85.167.196]:40775 "EHLO mail-oi1-f196.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726292AbfCLE5z (ORCPT ); Tue, 12 Mar 2019 00:57:55 -0400 Received: by mail-oi1-f196.google.com with SMTP id k11so497552oic.7 for ; Mon, 11 Mar 2019 21:57:54 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=android.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=ulVlBNx93AvCw2pPS7B18RQRsMD31269sXjowYwKgTc=; b=T1v6BNEhp7xH/eiyXzMJJm0Ez4TKygYl4el+Z22FwGdXaTpEgdKT1BbZXskQOck1x3 9HrFZZuUHXO7VXtSiaDjSwxny5eN/FH9lGGqkAE7IelGNnqIymkiA+42smkgyXz+R1ou aT1nUpdhSOuWv9zDSp0aYe+20zSCKwGVY7CoZZfGIuVJ5e7G3WnDgcKf5ajH4Mp82ZR1 YS+TBIZANzAQhZ1kpo+8PUZ+OKXq7zUYZdSZofBtcZ0nZ8b/GvCYO6lvvpB7P8Ztvnd4 gG0AAfn/eMDURY5HE4X26dcbJJVpQLaYKLr3ATET0GhuQ4dEjzmlSmFvSmYs9nzYo1aO 4ipw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=ulVlBNx93AvCw2pPS7B18RQRsMD31269sXjowYwKgTc=; b=CDgIiNWYnAyJbwi1QPnnbgAZN59pOXzxk9ZCalbhWkGsPJuVP6lKoEcKM9cDYzRoOg 5pqH9qL1NPvxBtfevUwneyt5syeBkKBCIDFf7OeQH/sDz8QoavmVOx6IR8KRVivOQL9k 0gSnakoEiEH51kYKBcyf157JLUejKhacb+aVL5IKpgHL+yXMMb1YzioRSYuDaMspuavl 3ndNcgPCjS5bvSsJ+U746DN/E+Q0rL27kXzwK6AhcCzr4k7fb5PH0LeVy6hI63+jnAbm Ayb7FHUrjeK5E6sJsSle1XZtIhXcky2dWp2FYVhfOBU4Zwhe04Dg4dpO+rf9wh38tbDl LB/A== X-Gm-Message-State: APjAAAUVYDRB9/u4+zWAeodu5jNEpiUYCbE4kfP4WxV5Ph+gAvptTubh GXBnySNYiKBUhS9fwvN9AlqT2ZpTCGE0BjRXftI7JA== X-Received: by 2002:aca:c002:: with SMTP id q2mr493615oif.145.1552366673796; Mon, 11 Mar 2019 21:57:53 -0700 (PDT) MIME-Version: 1.0 References: <20190122233749.42220-1-trong@android.com> <7c7b4521-d747-d064-0506-4e3d6746877e@linux.ibm.com> In-Reply-To: <7c7b4521-d747-d064-0506-4e3d6746877e@linux.ibm.com> From: Tri Vo Date: Mon, 11 Mar 2019 21:57:42 -0700 Message-ID: Subject: Re: [PATCH v3 0/3] gcov: add Clang support To: Peter Oberparleiter Cc: Greg Hackmann , Nick Desaulniers , LKML , kernel-team@android.com, Masahiro Yamada , Andrew Morton Content-Type: text/plain; charset="UTF-8" Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue, Mar 5, 2019 at 6:29 AM Peter Oberparleiter wrote: > > On 23.01.2019 00:37, Tri Vo wrote: > > This patch series adds Clang supoprt for gcov. > > > > Patch 1 refactors existing code in preparation for Clang support. > > Patch 2 implements necessary LLVM runtime hooks and gcov kernel interfaces. > > Patch 3 updates documentation. > > Thanks for the updates! I've provided suggestions for some minor > improvements in my other review e-mails. > > With those changes applied, the patch set is in my opinion ready for > inclusion into the mainline kernel. My suggestion would be to re-post > the resulting version while putting Andrew Morton on CC as gcov changes > are typically integrated via his tree. > > Also I've successfully re-tested this patch set version on s390 using > GCC 7.3.0 to ensure that the existing GCC support is still working. > Unfortunately I wasn't able to test the Clang version due to some > compile problems on s390 (unrelated to this patch set). > > If you haven't done so, I would like to suggest to run the following > tests with the Clang gcov-kernel version that should catch problems in > some corner cases: > > 1. Unload a module, then use llvm-cov on the associated coverage file. > > Expectation: correct llvm-cov output including coverage of module > exit code. > > 2. Unload a module, modify its source, re-compile it and load it again, > then use llvm-cov on the associated coverage file. > > Expectation: kernel message "discarding saved data", correct llvm-cov > output with no coverage of module exit code. > > 3. Unload a module, then reset all coverage data by writing to > /sys/kernel/debug/gcov/reset. > > Expectation: all coverage files associated with the module are > removed from debugfs. Thanks for the suggested test cases! The current patchset doesn't seem to handle module loading/unloading correctly. I'll fix that in a follow-up.