diff options
author | Dave Cheney <dave@cheney.net> | 2012-07-12 10:14:07 +1000 |
---|---|---|
committer | Dave Cheney <dave@cheney.net> | 2012-07-12 10:14:07 +1000 |
commit | 402339d8e449ee8543630a6c8cba7ecd62a0c812 (patch) | |
tree | e95baf9bd88e5e377576a6401cac7007157ea987 /src/cmd/pack | |
parent | f983b782471ddbc59d0f583fc0ee4a3038f77d70 (diff) | |
download | go-402339d8e449ee8543630a6c8cba7ecd62a0c812.tar.gz |
cmd/pack: remove unused paging logic
This is the remainder of http://codereview.appspot.com/4601051.
Partially addresses issue 2705.
R=golang-dev, r, bradfitz, minux.ma
CC=golang-dev
http://codereview.appspot.com/6354066
Diffstat (limited to 'src/cmd/pack')
-rw-r--r-- | src/cmd/pack/ar.c | 65 |
1 files changed, 7 insertions, 58 deletions
diff --git a/src/cmd/pack/ar.c b/src/cmd/pack/ar.c index 7e07fbc89..990094e5d 100644 --- a/src/cmd/pack/ar.c +++ b/src/cmd/pack/ar.c @@ -77,9 +77,7 @@ typedef struct Armember /* Temp file entry - one per archive member */ typedef struct Arfile /* Temp file control block - one per tempfile */ { - int paged; /* set when some data paged to disk */ char *fname; /* paging file name */ - int fd; /* paging file descriptor */ vlong size; Armember *head; /* head of member chain */ Armember *tail; /* tail of member chain */ @@ -159,7 +157,6 @@ int bamatch(char*, char*); int duplicate(char*, char**); Armember *getdir(Biobuf*); void getpkgdef(char**, int*); -int getspace(void); void install(char*, Arfile*, Arfile*, Arfile*, int); void loadpkgdata(char*, int); void longt(Armember*); @@ -169,7 +166,6 @@ Arfile *newtempfile(char*); Armember *newmember(void); void objsym(Sym*, void*); int openar(char*, int, int); -int page(Arfile*); void pmode(long); void rl(int); void scanobj(Biobuf*, Arfile*, long); @@ -1534,24 +1530,8 @@ void arstream(int fd, Arfile *ap) { Armember *bp; - int i; - char buf[8192]; - - if (ap->paged) { /* copy from disk */ - seek(ap->fd, 0, 0); - for (;;) { - i = read(ap->fd, buf, sizeof(buf)); - if (i < 0) - rderr(); - if (i == 0) - break; - if (write(fd, buf, i) != i) - wrerr(); - } - close(ap->fd); - ap->paged = 0; - } - /* dump the in-core buffers */ + + /* dump the in-core buffers */ for (bp = ap->head; bp; bp = bp->next) { if (!arwrite(fd, bp)) wrerr(); @@ -1576,35 +1556,6 @@ arwrite(int fd, Armember *bp) return 1; } -/* - * Spill a member to a disk copy of a temp file - */ -int -page(Arfile *ap) -{ - USED(ap); - - sysfatal("page"); - return 1; -} - -/* - * try to reclaim space by paging. we try to spill the start, middle, - * and end files, in that order. there is no particular reason for the - * ordering. - */ -int -getspace(void) -{ - if (astart && astart->head && page(astart)) - return 1; - if (amiddle && amiddle->head && page(amiddle)) - return 1; - if (aend && aend->head && page(aend)) - return 1; - return 0; -} - void arfree(Arfile *ap) /* free a member buffer */ { @@ -1633,13 +1584,11 @@ armalloc(int n) if(n&1) n++; - do { - cp = malloc(n); - if (cp) { - memset(cp, 0, n); - return cp; - } - } while (getspace()); + cp = malloc(n); + if (cp) { + memset(cp, 0, n); + return cp; + } fprint(2, "pack: out of memory\n"); exits("malloc"); return 0; |