lkml.org 
[lkml]   [2009]   [Jun]   [3]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    SubjectRe: [PATCH 3/4] gcov: add gcov profiling infrastructure
    From
    Date
    On Wed, 2009-06-03 at 17:26 +0200, Peter Oberparleiter wrote:
    > Peter Oberparleiter wrote:
    > > Andrew Morton wrote:
    > >> On Tue, 02 Jun 2009 13:44:02 +0200
    > >> Peter Oberparleiter <oberpar@linux.vnet.ibm.com> wrote:
    > >>> + /* Duplicate gcov_info. */
    > >>> + active = num_counter_active(info);
    > >>> + dup = kzalloc(sizeof(struct gcov_info) +
    > >>> + sizeof(struct gcov_ctr_info) * active, GFP_KERNEL);
    > >>
    > >> How large can this allocation be?
    > >
    > > Hm, good question. Having a look at my test system, I see coverage data
    > > files of up to 60kb size. With counters making up the largest part of
    > > those, I'd guess the allocation size can be around ~55kb. I assume that
    > > makes it a candidate for vmalloc?
    >
    > A further run with debug output showed that the maximum size is
    > actually around 4k, so in my opinion, there is no need to switch
    > to vmalloc.

    The real question is how big can active be, and it looks like <= 5 is
    the answer:

    +/* Determine number of active counters. Based on gcc magic. */
    +static unsigned int num_counter_active(struct gcov_info *info)
    +{
    + unsigned int i;
    + unsigned int result = 0;
    +
    + for (i = 0; i < GCOV_COUNTERS; i++) {
    + if (counter_active(info, i))
    + result++;
    + }
    + return result;
    +}

    +#define GCOV_COUNTERS 5

    So that seems reasonable.

    I assumed these were the per BB counters, but it seems they're counter
    _types_. Where are the BB counters, in the values array? If so perhaps
    that is the candidate for vmalloc.

    cheers
    [unhandled content-type:application/pgp-signature]
    \
     
     \ /
      Last update: 2009-06-03 18:03    [W:0.020 / U:123.600 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site