[systemd-devel] [PATCH 1/3] tmpfiles: skip the path entirely if configured as type x

Lennart Poettering lennart at poettering.net
Sun Nov 10 14:13:57 PST 2013


On Fri, 08.11.13 14:36, Michal Sekletar (msekleta at redhat.com) wrote:

> 
> On Thu, Nov 07, 2013 at 10:39:19PM +0100, Lennart Poettering wrote:
> > On Wed, 06.11.13 11:18, Michal Sekletar (msekleta at redhat.com) wrote:
> > 
> > > Type x in tmpfiles configuration accepts shell style globs instead of normal
> > > paths. If user uses normal path he might expect that the path will be left
> > > untouched. However this is not the case for directories and content of the
> > > directory will be cleaned according to the Age parameter, we should rather skip
> > > the path entirely in such case.
> > 
> 
> Hi Lennart,
> 
> > Not sure I follow. dir_cleanup() already skips all items listed in the
> > glob hashmap anyway, no? What does your patch add on top of that?
> 
> In dir_cleanup() we skip if there is an item configured for the path or it
> matches the glob, however we are doing it on the subpaths of currently processed
> directory. This won't work in the case mentioned in the commit message. If user
> wants to exclude path from cleanup entirely he has to use x /path/*, this way
> all subpaths match the glob. In case of x /path/ no subpath matches such glob
> and we remove them, hence checking explicitly beforehand.

Hmm, still not following...

When we iterate through a directory tree to clean things up we check if
the path in we currently look at matches any glob or whether there is
any line defined for it at all. If so, we skip the entry (and do not
descend further into it!). This is in the two if blocks that carry the
"Is there an item configured for this path?" comment?

So I still don't get the problem you are trying to point out. Can you
give a minimal example where the problem manifests? Maybe I grok it
then...

Thanks!

Lennart

-- 
Lennart Poettering, Red Hat


More information about the systemd-devel mailing list