All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] lib/xz: Fix XZ_DYNALLOC to avoid useless memory reallocations
@ 2019-11-04 16:51 Lasse Collin
  0 siblings, 0 replies; only message in thread
From: Lasse Collin @ 2019-11-04 16:51 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-kernel, Yu Sun (yusun2), Yixia Si (yisi)

From: Lasse Collin <lasse.collin@tukaani.org>

s->dict.allocated was initialized to 0 but never set after a successful
allocation, thus the code always thought that the dictionary buffer has
to be reallocated.

Signed-off-by: Lasse Collin <lasse.collin@tukaani.org>
Reported-by: Yu Sun <yusun2@cisco.com>
---

diff -Nrup linux-5.3-vanilla/lib/xz/xz_dec_lzma2.c linux-5.3/lib/xz/xz_dec_lzma2.c
--- linux-5.3-vanilla/lib/xz/xz_dec_lzma2.c	2019-09-16 00:19:32.000000000 +0300
+++ linux-5.3/lib/xz/xz_dec_lzma2.c	2019-10-30 20:33:15.460857851 +0200
@@ -1146,6 +1146,7 @@ XZ_EXTERN enum xz_ret xz_dec_lzma2_reset
 
 		if (DEC_IS_DYNALLOC(s->dict.mode)) {
 			if (s->dict.allocated < s->dict.size) {
+				s->dict.allocated = s->dict.size;
 				vfree(s->dict.buf);
 				s->dict.buf = vmalloc(s->dict.size);
 				if (s->dict.buf == NULL) {

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2019-11-04 17:00 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-11-04 16:51 [PATCH] lib/xz: Fix XZ_DYNALLOC to avoid useless memory reallocations Lasse Collin

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.