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

Re: svn commit: rev 7852 - trunk/subversion/libsvn_repos

From: Greg Hudson <ghudson_at_MIT.EDU>
Date: 2003-11-26 17:32:19 CET

(Despite being a reply to Osku, this is really about stuff he noticed
which was generated by clkao and CMike.)

On Wed, 2003-11-26 at 04:43, Osku Salerma wrote:
> > + /* Same sizes, same checksums. Chances are reallllly good that they
> > + don't differ, but to be absolute sure, we need to compare bytes.

Any measurements of how much time we can save by avoiding this check?
No one is ever going to run into an MD5 checksum conflict with the same
size, even if they try really hard (to use the birthday paradox, they'd
have to generate 2^64 files of the same size before they could expect a
collision).

> > + (We'll use the extra braces here so we don't put these huge
> > + buffers onto the stack unless we need to.) */
> > + {
> > + svn_stream_t *stream1, *stream2;
> > + char buf1[SVN_STREAM_CHUNK_SIZE], buf2[SVN_STREAM_CHUNK_SIZE];
> > + apr_size_t len1, len2;
>
> GCC doesn't allocate stack space for each scope, only once at the
> beginning of each function, so if you really want to avoid these
> buffers you need to put this code into a separate function.

I don't see what's so harmful about putting 256K of buffers on the stack
in a non-recursive function.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Wed Nov 26 17:35:28 2003

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.