Signed-off-by: Daniel P. Smith
---
xen/common/gzip/gunzip.c | 7 ---
xen/common/gzip/inflate.c | 2 +-
2 files changed, 5 insertions(+), 4 deletions(-)
diff --git a/xen/common/gzip/gunzip.c b/xen/common/gzip/gunzip.c
index 3fb9589b069e..95d924d36726 100644
--- a/xen/common/gzip/gunzip.c
+++ b/xen/common/gzip/gunzip.c
@@ -15,6 +15,8 @@ struct gunzip_state {
size_t insize;
/* Index of next byte to be processed in inbuf: */
unsigned int inptr;
+
+unsigned long bytes_out;
};
#define malloc(a) xmalloc_bytes(a)
@@ -42,7 +44,6 @@ typedef unsigned long ulg;
# define Tracecv(c, x)
#endif
-static long __initdata bytes_out;
static void flush_window(struct gunzip_state *s);
static __init void error(const char *x)
@@ -80,7 +81,7 @@ static __init void flush_window(struct gunzip_state *s)
}
crc = c;
-bytes_out += (unsigned long)s->wp;
+s->bytes_out += (unsigned long)s->wp;
s->wp = 0;
}
@@ -113,7 +114,7 @@ __init int perform_gunzip(char *output, char *image,
unsigned long image_len)
s->inbuf = (unsigned char *)image;
s->insize = image_len;
s->inptr = 0;
-bytes_out = 0;
+s->bytes_out = 0;
makecrc();
diff --git a/xen/common/gzip/inflate.c b/xen/common/gzip/inflate.c
index f1a3b04cef8f..bec8801df487 100644
--- a/xen/common/gzip/inflate.c
+++ b/xen/common/gzip/inflate.c
@@ -1196,7 +1196,7 @@ static int __init gunzip(struct gunzip_state *s)
error("crc error");
return -1;
}
-if (orig_len != bytes_out) {
+if (orig_len != s->bytes_out) {
error("length error");
return -1;
}
--
2.30.2