Re: [PATCH 0/8] perf buildid-cache: Add clean command

From: Arnaldo Carvalho de Melo
Date: Tue Dec 02 2014 - 09:10:56 EST

Em Tue, Dec 02, 2014 at 01:25:18PM +0100, Jiri Olsa escreveu:
> On Mon, Dec 01, 2014 at 08:29:19PM -0200, Arnaldo Carvalho de Melo wrote:


> > [acme@sandy wb]$

> > If we keep the way it is, I think it would be clearer to add a -l/--list
> > command and that would:

> > perf buildid-cache --list # list all the files in the cache
> > perf buildid-cache --list 3d # list 3 days old files
> > perf buildid-cache --list +3d # list files 3 days or more older
> > perf buildid-cache --list -3d # list files up to 3 days old

> ok, I was up to old files (and big files) removal only.. not sure
> the other way will be actually needed.. but it's easy enought to
> add

Right, I was thinking something along the lines of checking how much
space would be needed if I wanted to keep X days of cache, not how much
space I would free if I purged files older than Y days.

> > And all these would print the sum of the matching files, i.e. the space
> > those files use in the filesystem.

> > > Remove cache files older than 3 days:
> > > $ perf buildid-cache clean 3d -r

> > perf buildid-cache --remove [-+]Nd # Same semantics as above

> > >
> > > Total cache removal:
> > > $ perf buildid-cache clean -r

> > perf buildid-cache --remove '*'
> hum, maybe '--removal all' might be better

Humm, lemme see how ccache does this operation... That would be an
existing cache management workflow that we could reuse:

[acme@zoo linux]$ ccache --help
ccache [options]
ccache compiler [compiler options]
compiler [compiler options] (via symbolic link)

-c, --cleanup delete old files and recalculate size counters
(normally not needed as this is done automatically)
-C, --clear clear the cache completely
-F, --max-files=N set maximum number of files in cache to N (use 0 for
no limit)
-M, --max-size=SIZE set maximum size of cache to SIZE (use 0 for no
limit; available suffixes: G, M and K; default
suffix: G)
-s, --show-stats show statistics summary
-z, --zero-stats zero statistics counters

-h, --help print this help text
-V, --version print version and copyright information

See also <>.
[acme@zoo linux]$

So, there you go, the 'clear' keywoard being used for doing what you
called 'removeall' and I called --remove '*'. Perhaps asking if the user
really wants to do that while, just like with the time limited 'remove'
operations showing how much space it will release (albeit that could
take some time to calculate...)?

> >
> > > Remove and display items bigger than 200M
> > > $ perf buildid-cache clean -r -a 200M

> > But yeah, perhaps we could switch to having subcommands and add:

> > perf buildid-cache [add|remove|update|list]

> > What do you think?

> yep, those commands seem nicer..

> let's see of there're other comments and I'll come up with
> new interface after..


- Arnaldo
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at
Please read the FAQ at