threads / discuss / 47388

partial_clone_get_default_filter_spec has no callers

Subject: partial_clone_get_default_filter_spec has no callers

## tl;dr

5 messages between Dec 6, 2017 and Dec 7, 2017.

replies: 4people: 3as markdown or json

Ramsay Jones· Dec 6, 2017, 17:39 UTC · lore
Hi Jeff,

commit f1862e8153 ("partial-clone: define partial clone settings in config", 2017-12-05), which is part of your 'jh/partial-clone' branch, introduces the partial_clone_get_default_filter_spec() function without any callers. Could you please confirm that this is intentional and that, presumably, a future series will include a call to this function.

Thanks!

ATB, Ramsay Jones

Jeff Hostetler· Dec 6, 2017, 21:07 UTC · re: Ramsay Jones · lore

Re: partial_clone_get_default_filter_spec has no callers

On 12/6/2017 12:39 PM, Ramsay Jones wrote:
Show 8 quoted lines
> Hi Jeff,
> 
> commit f1862e8153 ("partial-clone: define partial clone settings
> in config", 2017-12-05), which is part of your 'jh/partial-clone'
> branch, introduces the partial_clone_get_default_filter_spec()
> function without any callers. Could you please confirm that this
> is intentional and that, presumably, a future series will include
> a call to this function.
I'll double check.  Thanks.

BTW is there another tool that you're using to find these? I know I ran make DEVELOPER=1 and make sparse on everything and didn't see that come up.

Jeff
Ramsay Jones· Dec 7, 2017, 01:59 UTC · re: Jeff Hostetler · lore

Re: partial_clone_get_default_filter_spec has no callers

On 06/12/17 21:07, Jeff Hostetler wrote:
Show 17 quoted lines
> 
> 
> On 12/6/2017 12:39 PM, Ramsay Jones wrote:
>> Hi Jeff,
>>
>> commit f1862e8153 ("partial-clone: define partial clone settings
>> in config", 2017-12-05), which is part of your 'jh/partial-clone'
>> branch, introduces the partial_clone_get_default_filter_spec()
>> function without any callers. Could you please confirm that this
>> is intentional and that, presumably, a future series will include
>> a call to this function.
> 
> I'll double check.  Thanks.
> 
> BTW is there another tool that you're using to find these?
> I know I ran make DEVELOPER=1 and make sparse on everything
> and didn't see that come up.

In addition to sparse (which finds some of these), I also run a perl script over the object files after a given build. (The script was posted to the list by Junio, many moons ago, and I have made several changes to my local copy).

I am attaching a copy of the script (static-check.pl). Note that the 'stop list' in the script (%def_ok) is _way_ out of date. However, the way I use the script, that does not matter; I run the script over the master->next->pu branches and (ignoring the master branch) diff the result files from branch to branch. For example, tonight I have:

  $ wc -l sc nsc psc
    74 sc
    73 nsc
    75 psc
   222 total
  $ 
  $ diff sc nsc
  44d43
  < oidmap.o	- oidmap_remove
  $ 
  $ diff nsc psc
  43a44
  > list-objects-filter-options.o	- partial_clone_get_default_filter_spec
  58a60
  > sequencer.o	- sign_off_header
  $ 

You also have to be careful with leaving stale object files laying around from previous builds ('make clean' sometimes doesn't). Actually, it may be simpler to read a previous mailing list thread on exactly this subject [1].

BTW, if you are using a version of sparse post v0.5.1, you can get rid of the only sparse warning on Linux (assuming you don't build with NO_REGEX set), by using the -Wno-memcpy-max-count option; I have the following set in my config.mak:

  $ tail -2 config.mak
  pack-revindex.sp: SPARSE_FLAGS += -Wno-memcpy-max-count
  $ 

[I haven't sent a proper patch, since the required version of sparse is not widely available yet.]

ATB, Ramsay Jones

[1] https://public-inbox.org/git/%3Cb21c8a92-4dd5-56d6-ec6a-5709028eaf5f@ramsayjones.plus.com%3E/
Luc Van Oostenryck· Dec 7, 2017, 09:29 UTC · re: Ramsay Jones · lore

Re: partial_clone_get_default_filter_spec has no callers

On Thu, Dec 07, 2017 at 01:59:26AM +0000, Ramsay Jones wrote:
Show 13 quoted lines
> 
> BTW, if you are using a version of sparse post v0.5.1, you can
> get rid of the only sparse warning on Linux (assuming you don't
> build with NO_REGEX set), by using the -Wno-memcpy-max-count option;
> I have the following set in my config.mak:
> 
>   $ tail -2 config.mak
>   pack-revindex.sp: SPARSE_FLAGS += -Wno-memcpy-max-count
> 
>   $ 
> 
> [I haven't sent a proper patch, since the required version of
> sparse is not widely available yet.]

Note that sparse simply ignore unknown options/flags, so adding it now won't create a problem and can already help those using a recent vesion of sparse.

Regards, -- Luc

Jeff Hostetler· Dec 7, 2017, 15:43 UTC · re: Ramsay Jones · lore

Re: partial_clone_get_default_filter_spec has no callers

On 12/6/2017 8:59 PM, Ramsay Jones wrote:
Show 54 quoted lines
> 
> 
> On 06/12/17 21:07, Jeff Hostetler wrote:
>>
>>
>> On 12/6/2017 12:39 PM, Ramsay Jones wrote:
>>> Hi Jeff,
>>>
>>> commit f1862e8153 ("partial-clone: define partial clone settings
>>> in config", 2017-12-05), which is part of your 'jh/partial-clone'
>>> branch, introduces the partial_clone_get_default_filter_spec()
>>> function without any callers. Could you please confirm that this
>>> is intentional and that, presumably, a future series will include
>>> a call to this function.
>>
>> I'll double check.  Thanks.
>>
>> BTW is there another tool that you're using to find these?
>> I know I ran make DEVELOPER=1 and make sparse on everything
>> and didn't see that come up.
> 
> In addition to sparse (which finds some of these), I also run a perl
> script over the object files after a given build. (The script was
> posted to the list by Junio, many moons ago, and I have made several
> changes to my local copy).
> 
> I am attaching a copy of the script (static-check.pl). Note that the
> 'stop list' in the script (%def_ok) is _way_ out of date. However, the
> way I use the script, that does not matter; I run the script over the
> master->next->pu branches and (ignoring the master branch) diff the
> result files from branch to branch. For example, tonight I have:
> 
>    $ wc -l sc nsc psc
>      74 sc
>      73 nsc
>      75 psc
>     222 total
>    $
>    $ diff sc nsc
>    44d43
>    < oidmap.o	- oidmap_remove
>    $
>    $ diff nsc psc
>    43a44
>    > list-objects-filter-options.o	- partial_clone_get_default_filter_spec
>    58a60
>    > sequencer.o	- sign_off_header
>    $
> 
> You also have to be careful with leaving stale object files
> laying around from previous builds ('make clean' sometimes
> doesn't). Actually, it may be simpler to read a previous mailing
> list thread on exactly this subject [1].
> 
[...]
Show 6 quoted lines
> 
> ATB,
> Ramsay Jones
> 
> [1] https://public-inbox.org/git/%3Cb21c8a92-4dd5-56d6-ec6a-5709028eaf5f@ramsayjones.plus.com%3E/
> 

thanks! maybe you could post something (in contrib/ perhaps) that would run your script on a pair of commits like t/perf/run.sh. just a thought.

Jeff

← back to recent threads