Make sure packedgitwindowsize is multiple of (pagesize * 2)
The next patch depends on this. Signed-off-by: Junio C Hamano <junkio@cox.net>
This commit is contained in:
parent
bd07326dcd
commit
5faaf24634
12
config.c
12
config.c
@ -310,12 +310,14 @@ int git_default_config(const char *var, const char *value)
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (!strcmp(var, "core.packedgitwindowsize")) {
|
if (!strcmp(var, "core.packedgitwindowsize")) {
|
||||||
int pgsz = getpagesize();
|
int pgsz_x2 = getpagesize() * 2;
|
||||||
packed_git_window_size = git_config_int(var, value);
|
packed_git_window_size = git_config_int(var, value);
|
||||||
packed_git_window_size /= pgsz;
|
|
||||||
if (packed_git_window_size < 2)
|
/* This value must be multiple of (pagesize * 2) */
|
||||||
packed_git_window_size = 2;
|
packed_git_window_size /= pgsz_x2;
|
||||||
packed_git_window_size *= pgsz;
|
if (packed_git_window_size < 1)
|
||||||
|
packed_git_window_size = 1;
|
||||||
|
packed_git_window_size *= pgsz_x2;
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -96,11 +96,14 @@ extern void set_warn_routine(void (*routine)(const char *warn, va_list params));
|
|||||||
extern void *git_mmap(void *start, size_t length, int prot, int flags, int fd, off_t offset);
|
extern void *git_mmap(void *start, size_t length, int prot, int flags, int fd, off_t offset);
|
||||||
extern int git_munmap(void *start, size_t length);
|
extern int git_munmap(void *start, size_t length);
|
||||||
|
|
||||||
|
/* This value must be multiple of (pagesize * 2) */
|
||||||
#define DEFAULT_PACKED_GIT_WINDOW_SIZE (1 * 1024 * 1024)
|
#define DEFAULT_PACKED_GIT_WINDOW_SIZE (1 * 1024 * 1024)
|
||||||
|
|
||||||
#else /* NO_MMAP */
|
#else /* NO_MMAP */
|
||||||
|
|
||||||
#include <sys/mman.h>
|
#include <sys/mman.h>
|
||||||
|
|
||||||
|
/* This value must be multiple of (pagesize * 2) */
|
||||||
#define DEFAULT_PACKED_GIT_WINDOW_SIZE \
|
#define DEFAULT_PACKED_GIT_WINDOW_SIZE \
|
||||||
(sizeof(void*) >= 8 \
|
(sizeof(void*) >= 8 \
|
||||||
? 1 * 1024 * 1024 * 1024 \
|
? 1 * 1024 * 1024 * 1024 \
|
||||||
|
Loading…
Reference in New Issue
Block a user