Re: Segfault in the attr stack

2016-06-02 Thread Stefan Beller
On Thu, Jun 2, 2016 at 8:59 AM, Junio C Hamano wrote: > Junio C Hamano writes: > Gaah, of course. This is coming from the cache preload codepath, where multiple threads try to run ce_path_match(). It used to be OK because pathspec magic never looked at attributes, bu

Re: Segfault in the attr stack

2016-06-02 Thread Junio C Hamano
Junio C Hamano writes: >>> Gaah, of course. >>> >>> This is coming from the cache preload codepath, where multiple threads >>> try to run ce_path_match(). >>> It used to be OK because pathspec magic never looked at attributes, >>> but now it does, and attribute system is not thread-safe. I'll lo

Re: Segfault in the attr stack

2016-06-01 Thread Duy Nguyen
On Thu, Jun 2, 2016 at 8:02 AM, Duy Nguyen wrote: > On Thu, Jun 2, 2016 at 5:17 AM, Junio C Hamano wrote: >> Gaah, of course. >> >> This is coming from the cache preload codepath, where multiple threads >> try to run ce_path_match(). >> It used to be OK because pathspec magic never looked at attr

Re: Segfault in the attr stack

2016-06-01 Thread Duy Nguyen
On Thu, Jun 2, 2016 at 5:17 AM, Junio C Hamano wrote: > Gaah, of course. > > This is coming from the cache preload codepath, where multiple threads > try to run ce_path_match(). > It used to be OK because pathspec magic never looked at attributes, > but now it does, and attribute system is not thr

Re: Segfault in the attr stack

2016-06-01 Thread Junio C Hamano
Junio C Hamano writes: > Junio C Hamano writes: > >> Gaah, of course. >> >> This is coming from the cache preload codepath, where multiple threads >> try to run ce_path_match(). >> It used to be OK because pathspec magic never looked at attributes, >> but now it does, and attribute system is not

Re: Segfault in the attr stack

2016-06-01 Thread Junio C Hamano
Junio C Hamano writes: > Gaah, of course. > > This is coming from the cache preload codepath, where multiple threads > try to run ce_path_match(). > It used to be OK because pathspec magic never looked at attributes, > but now it does, and attribute system is not thread-safe. The symlink check c

Re: Segfault in the attr stack

2016-06-01 Thread Junio C Hamano
Stefan Beller writes: > I propose to not escape commas, but use > white spaces instead, i.e. > > git status ':(attr:whitespace=indent trail space,attr:label=with > more values)' ':attr(attr:foo:bar)' > > would match > * all files that have the whitespace AND the label setting (matching > exac

Re: Segfault in the attr stack

2016-06-01 Thread Stefan Beller
On Wed, Jun 1, 2016 at 3:11 PM, Junio C Hamano wrote: > > By the way, I just noticed that the part of the > ':(attr:)' syntax would need to be rethought. In the > .gitattributes file everybody has, we see these lines: > > *.[ch] whitespace=indent,trail,space > *.sh whitespace=ind

Re: Segfault in the attr stack

2016-06-01 Thread Junio C Hamano
Gaah, of course. This is coming from the cache preload codepath, where multiple threads try to run ce_path_match(). It used to be OK because pathspec magic never looked at attributes, but now it does, and attribute system is not thread-safe. On Wed, Jun 1, 2016 at 3:11 PM, Stefan Beller wrote: >

Re: Segfault in the attr stack

2016-06-01 Thread Stefan Beller
This can be reproduced on sb/pathspec-label in git.git as well. The key difference I notice is `git ls-files` works perfectly (e.g. in the tests) while `git status` fails. -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majord...@vger.kernel.org More m

Re: Segfault in the attr stack

2016-06-01 Thread Junio C Hamano
Stefan Beller writes: > In the Gerrit repo I did > $ echo "/plugins/commit-message-length-validator sub-default" >>>.gitattributes > $ git status ":(attr:sub-default)" > Segmentation fault (core dumped) Thanks. I can reproduce this easily with git.git, e.g. $ cat >>.git/info/at

Segfault in the attr stack

2016-06-01 Thread Stefan Beller
(running git-next) In the Gerrit repo I did $ echo "/plugins/commit-message-length-validator sub-default" >>.gitattributes $ git status ":(attr:sub-default)" Segmentation fault (core dumped) Running this multiple times through gdb, this produces different back traces as it seems that thre