[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: svn commit: r16244 - in trunk: . subversion/clients/cmdline subversion/include subversion/libsvn_client subversion/libsvn_wc subversion/svnversion subversion/tests/clients/cmdline subversion/tests/clients/cmdline/svntest tools/examples

From: Branko Čibej <brane_at_xbc.nu>
Date: 2005-09-26 15:04:10 CEST

Philip Martin wrote:

>Branko Čibej <brane@xbc.nu> writes:
>
>
>
>>O.K., see r16270. I'd appreciate it if someone could compile this with
>>GCC again, just to make sure all warnings have gone away.
>>
>>
>
>Switching on -O2 optimisation:
>
>../svn/subversion/libsvn_wc/adm_files.c: In function 'svn_wc_is_adm_dir':
>../svn/subversion/libsvn_wc/adm_files.c:72: warning: dereferencing type-punned pointer will break strict-aliasing rules
>../svn/subversion/libsvn_wc/adm_files.c: In function 'svn_wc_set_adm_dir':
>../svn/subversion/libsvn_wc/adm_files.c:101: warning: dereferencing type-punned pointer will break strict-aliasing rules
>../svn/subversion/libsvn_wc/adm_files.c:102: warning: dereferencing type-punned pointer will break strict-aliasing rules
>../svn/subversion/libsvn_wc/adm_files.c: In function 'v_extend_with_adm_name':
>../svn/subversion/libsvn_wc/adm_files.c:141: warning: dereferencing type-punned pointer will break strict-aliasing rules
>
>
Damn. I expected something like that...

>There's also a performance issue here. Any function that simply wants
>to read the adm directory name now has to go through a CAS. The
>default CAS implementation is the generic mutex based implementation
>in apr_atomic.c, so that means that every time a file in the .svn
>directory is accessed a mutex will need to locked and unlocked.
>That's a *lot* of mutex operations, could this be a bottleneck? Linux
>on x86 can use the asm versions, but that's not the default and
>doesn't help other platforms.
>
>
I didn't notice any performance hits when running the tests -- not that
I'd expect any in that context.

So, any suggestions? We could do away with the atomics completely _if_
we require single-threaded initialisation.

-- Brane

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Mon Sep 26 15:06:34 2005

This is an archived mail posted to the Subversion Dev mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.