Author: vangyzen
Date: Thu Feb 20 23:53:48 2020
New Revision: 358187
URL: https://svnweb.freebsd.org/changeset/base/358187

Log:
  clamp kernel dump compression level when using gzip
  
  If the configured compression level for kernel dumps
  it outside the supported range, clamp it to the closest
  supported level.  Previously, dumpon would fail.
  
  zstd already does this internally, so the compressor
  needs no change.
  
  Reviewed by:  cem markj
  MFC after:    2 weeks
  Sponsored by: Dell EMC Isilon
  Differential Revision:        https://reviews.freebsd.org/D23765

Modified:
  head/sys/kern/subr_compressor.c

Modified: head/sys/kern/subr_compressor.c
==============================================================================
--- head/sys/kern/subr_compressor.c     Thu Feb 20 23:47:09 2020        
(r358186)
+++ head/sys/kern/subr_compressor.c     Thu Feb 20 23:53:48 2020        
(r358187)
@@ -117,6 +117,13 @@ gz_init(size_t maxiosize, int level)
        s->gz_stream.next_in = Z_NULL;
        s->gz_stream.avail_in = 0;
 
+       if (level != Z_DEFAULT_COMPRESSION) {
+               if (level < Z_BEST_SPEED)
+                       level = Z_BEST_SPEED;
+               else if (level > Z_BEST_COMPRESSION)
+                       level = Z_BEST_COMPRESSION;
+       }
+
        error = deflateInit2(&s->gz_stream, level, Z_DEFLATED, -MAX_WBITS,
            DEF_MEM_LEVEL, Z_DEFAULT_STRATEGY);
        if (error != 0)
_______________________________________________
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to