On Mon, 8 Aug 2011, Iliyan Malchev wrote: > Extend the slub_debug syntax to "slub_debug=<flags>[,<slub>]*", where <slub> > may contain an asterisk at the end. For example, the following would poison > all kmalloc slabs: > > slub_debug=P,kmalloc* The use of the star suggests that general regexps will be working. But this is only allowing a star at the end. It is explained later. So maybe that ok. > + n = slub_debug_slabs; > + while (*n) { > + int cmplen; > + > + end = strchr(n, ','); > + if (!end) > + end = n + strlen(n); > + > + glob = strnchr(n, end - n, '*'); > + if (glob) > + cmplen = glob - n; > + else > + cmplen = max(len, end - n); > + > + if (!strncmp(name, n, cmplen)) { > + flags |= slub_debug; > + break; > + } > + > + n = *end ? end + 1 : end; Ugg.. Confusing How about if (!*end) break; n = end + 1; or make the while loop into a for loop? -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/ Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>