On 04/23/2018 08:28 AM, Daniel P. Berrangé wrote: > This reverts commit 8daa593b0741452a78daea76075254ae7d3c6ab6. > > There are two undesirable aspects to the impl > > - Only a bare wildcard is permitted > - The wildcard match is not performed in the order listed > --- > src/remote/libvirtd.conf | 4 +--- > src/util/virlog.c | 44 +------------------------------------------- > src/util/virlog.h | 1 - > 3 files changed, 2 insertions(+), 47 deletions(-) > So that it's not forgotten 0-) before 4.3.0... Reviewed-by: John Ferlan <jferlan@xxxxxxxxxx> Safe too as long as you also revert: 209d4d6f42a01829c68ef54b042a0c53ef0b22d3 to remove the description from news.xml I believe the rest can wait for 4.4.0, right? John > diff --git a/src/remote/libvirtd.conf b/src/remote/libvirtd.conf > index 7d823cf1ad..9c0080dc06 100644 > --- a/src/remote/libvirtd.conf > +++ b/src/remote/libvirtd.conf > @@ -368,9 +368,7 @@ > # Multiple filters can be defined in a single @filters, they just need to be > # separated by spaces. Note that libvirt performs "first" match, i.e. if > # there are concurrent filters, the first one that matches will be applied, > -# given the order in log_filters with the exception of a wildcard filter, since > -# that's only taken into account if no other filter has matched, so > -# "4:* 1:util.pci" and "1:util.pci 4:*" are equivalent definitions. > +# given the order in log_filters. > # > # e.g. to only get warning or errors from the remote layer and only errors > # from the event layer: > diff --git a/src/util/virlog.c b/src/util/virlog.c > index 81a9dc4395..5810643e1b 100644 > --- a/src/util/virlog.c > +++ b/src/util/virlog.c > @@ -497,38 +497,6 @@ virLogHostnameString(char **rawmsg, > return 0; > } > > -/* virLogFiltersFind: > - * @filters: haystack > - * @nfilters: haystack size > - * @key1: primary string 'needle' > - * @key2: secondary integer 'needle' > - * > - * Performs "first match" search on the input set of filters, using @key1 > - * (string) and @key2 (integer) as primary and secondary keys respectively. > - * Secondary key is only considered if primary key wasn't provided. > - * > - * Returns a pointer to the matched object or NULL if no match was found. > - */ > -static virLogFilterPtr > -virLogFiltersFind(virLogFilterPtr *filters, > - size_t nfilters, > - const char *key1, > - unsigned int key2) > -{ > - size_t i; > - > - if (!key1 && key2 == 0) > - return NULL; > - > - for (i = 0; i < nfilters; i++) { > - if ((key1 && STREQ(key1, filters[i]->match)) || > - filters[i]->flags == key2) > - return filters[i]; > - } > - > - return NULL; > -} > - > > static void > virLogSourceUpdate(virLogSourcePtr source) > @@ -1441,8 +1409,7 @@ virLogFilterNew(const char *match, > virLogFilterPtr ret = NULL; > char *mdup = NULL; > > - virCheckFlags(VIR_LOG_STACK_TRACE | > - VIR_LOG_WILDCARD, NULL); > + virCheckFlags(VIR_LOG_STACK_TRACE, NULL); > > if (priority < VIR_LOG_DEBUG || priority > VIR_LOG_ERROR) { > virReportError(VIR_ERR_INVALID_ARG, _("Invalid log priority %d"), > @@ -1561,8 +1528,6 @@ virLogDefineOutputs(virLogOutputPtr *outputs, size_t noutputs) > int > virLogDefineFilters(virLogFilterPtr *filters, size_t nfilters) > { > - virLogFilterPtr rc; > - > if (virLogInitialize() < 0) > return -1; > > @@ -1570,10 +1535,6 @@ virLogDefineFilters(virLogFilterPtr *filters, size_t nfilters) > virLogResetFilters(); > virLogFilters = filters; > virLogNbFilters = nfilters; > - > - /* if there's a wildcard filter, update default priority */ > - if ((rc = virLogFiltersFind(filters, nfilters, NULL, VIR_LOG_WILDCARD))) > - virLogDefaultPriority = rc->priority; > virLogUnlock(); > > return 0; > @@ -1749,9 +1710,6 @@ virLogParseFilter(const char *src) > match++; > } > > - if (STREQ(match, "*")) > - flags |= VIR_LOG_WILDCARD; > - > /* match string cannot comprise just from a single '+' */ > if (!*match) { > virReportError(VIR_ERR_INVALID_ARG, > diff --git a/src/util/virlog.h b/src/util/virlog.h > index 07b91f0b0a..8973f83b20 100644 > --- a/src/util/virlog.h > +++ b/src/util/virlog.h > @@ -174,7 +174,6 @@ typedef void (*virLogCloseFunc) (void *data); > > typedef enum { > VIR_LOG_STACK_TRACE = (1 << 0), > - VIR_LOG_WILDCARD = (1 << 1) > } virLogFlags; > > int virLogGetNbFilters(void); > -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list