[systemd-devel] [PATCH] tmpfiles.c: Honor ordering within files as the docs say.

Lennart Poettering lennart at poettering.net
Wed Apr 22 09:19:47 PDT 2015


On Thu, 05.03.15 11:13, Randy Witt (randy.e.witt at linux.intel.com) wrote:

Sorry for the late review!

> Previously, globs would always get processed first followed by any other
> items in arbitrary order. This is contrary to the documentation which
> states "Otherwise, the files/directories are processed in the order they
> are listed."
> 
> To fix this, remove the separate "globs" hashmap, and instead use only one
> marking each entry as a glob or not. There should be little overhead
> from doing this, considering the only time nested processing will occur
> is for processing of globs which are not of type "X".

Hmm, I figure the patch makes sense. Can you rebase this on current
git, please?

Also, any chance you can split this up in two patces, one that moves
this to ordered hashmaps, and the other which then merges the two
hashmaps? Should be much easier to review, then.

> Signed-off-by: Randy Witt <randy.e.witt at linux.intel.com>

No S-o-b please, we do not use this in systemd.

>  src/tmpfiles/tmpfiles.c | 53 ++++++++++++++++++++++---------------------------
>  1 file changed, 24 insertions(+), 29 deletions(-)
> 
> diff --git a/src/tmpfiles/tmpfiles.c b/src/tmpfiles/tmpfiles.c
> index 917bb3c..0b6d226 100644
> --- a/src/tmpfiles/tmpfiles.c
> +++ b/src/tmpfiles/tmpfiles.c
> @@ -116,6 +116,7 @@ typedef struct Item {
>          bool force:1;
>  
>          bool done:1;
> +        bool glob:1;

This is unnecessary, isn't it? I mean, this value is only dependent of
the line type, and we can always query that again with needs_glob(),
no need to store this away...

Lennart

-- 
Lennart Poettering, Red Hat


More information about the systemd-devel mailing list