summaryrefslogtreecommitdiffstats
path: root/lib/zstd/decompress.c
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2019-05-07 15:48:10 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2019-05-07 15:48:10 -0400
commitb4b52b881cf08e13d110eac811d4becc0775abbf (patch)
tree16344be594148013c239d07aa1a1b66f3c8eb648 /lib/zstd/decompress.c
parent2d60d96b6f00de90ec2bc60eb4cdcc46e1e1f161 (diff)
parentccaa75187a5f1d8131b424160eb90a8a94be287f (diff)
Merge tag 'Wimplicit-fallthrough-5.2-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gustavoars/linux
Pull Wimplicit-fallthrough updates from Gustavo A. R. Silva: "Mark switch cases where we are expecting to fall through. This is part of the ongoing efforts to enable -Wimplicit-fallthrough. Most of them have been baking in linux-next for a whole development cycle. And with Stephen Rothwell's help, we've had linux-next nag-emails going out for newly introduced code that triggers -Wimplicit-fallthrough to avoid gaining more of these cases while we work to remove the ones that are already present. We are getting close to completing this work. Currently, there are only 32 of 2311 of these cases left to be addressed in linux-next. I'm auditing every case; I take a look into the code and analyze it in order to determine if I'm dealing with an actual bug or a false positive, as explained here: https://lore.kernel.org/lkml/c2fad584-1705-a5f2-d63c-824e9b96cf50@embeddedor.com/ While working on this, I've found and fixed the several missing break/return bugs, some of them introduced more than 5 years ago. Once this work is finished, we'll be able to universally enable "-Wimplicit-fallthrough" to avoid any of these kinds of bugs from entering the kernel again" * tag 'Wimplicit-fallthrough-5.2-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gustavoars/linux: (27 commits) memstick: mark expected switch fall-throughs drm/nouveau/nvkm: mark expected switch fall-throughs NFC: st21nfca: Fix fall-through warnings NFC: pn533: mark expected switch fall-throughs block: Mark expected switch fall-throughs ASN.1: mark expected switch fall-through lib/cmdline.c: mark expected switch fall-throughs lib: zstd: Mark expected switch fall-throughs scsi: sym53c8xx_2: sym_nvram: Mark expected switch fall-through scsi: sym53c8xx_2: sym_hipd: mark expected switch fall-throughs scsi: ppa: mark expected switch fall-through scsi: osst: mark expected switch fall-throughs scsi: lpfc: lpfc_scsi: Mark expected switch fall-throughs scsi: lpfc: lpfc_nvme: Mark expected switch fall-through scsi: lpfc: lpfc_nportdisc: Mark expected switch fall-through scsi: lpfc: lpfc_hbadisc: Mark expected switch fall-throughs scsi: lpfc: lpfc_els: Mark expected switch fall-throughs scsi: lpfc: lpfc_ct: Mark expected switch fall-throughs scsi: imm: mark expected switch fall-throughs scsi: csiostor: csio_wr: mark expected switch fall-through ...
Diffstat (limited to 'lib/zstd/decompress.c')
-rw-r--r--lib/zstd/decompress.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/lib/zstd/decompress.c b/lib/zstd/decompress.c
index b17846725ca0..269ee9a796c1 100644
--- a/lib/zstd/decompress.c
+++ b/lib/zstd/decompress.c
@@ -1768,6 +1768,7 @@ size_t ZSTD_decompressContinue(ZSTD_DCtx *dctx, void *dst, size_t dstCapacity, c
1768 return 0; 1768 return 0;
1769 } 1769 }
1770 dctx->expected = 0; /* not necessary to copy more */ 1770 dctx->expected = 0; /* not necessary to copy more */
1771 /* fall through */
1771 1772
1772 case ZSTDds_decodeFrameHeader: 1773 case ZSTDds_decodeFrameHeader:
1773 memcpy(dctx->headerBuffer + ZSTD_frameHeaderSize_prefix, src, dctx->expected); 1774 memcpy(dctx->headerBuffer + ZSTD_frameHeaderSize_prefix, src, dctx->expected);
@@ -2375,7 +2376,7 @@ size_t ZSTD_decompressStream(ZSTD_DStream *zds, ZSTD_outBuffer *output, ZSTD_inB
2375 } 2376 }
2376 zds->stage = zdss_read; 2377 zds->stage = zdss_read;
2377 } 2378 }
2378 /* pass-through */ 2379 /* fall through */
2379 2380
2380 case zdss_read: { 2381 case zdss_read: {
2381 size_t const neededInSize = ZSTD_nextSrcSizeToDecompress(zds->dctx); 2382 size_t const neededInSize = ZSTD_nextSrcSizeToDecompress(zds->dctx);
@@ -2404,6 +2405,7 @@ size_t ZSTD_decompressStream(ZSTD_DStream *zds, ZSTD_outBuffer *output, ZSTD_inB
2404 zds->stage = zdss_load; 2405 zds->stage = zdss_load;
2405 /* pass-through */ 2406 /* pass-through */
2406 } 2407 }
2408 /* fall through */
2407 2409
2408 case zdss_load: { 2410 case zdss_load: {
2409 size_t const neededInSize = ZSTD_nextSrcSizeToDecompress(zds->dctx); 2411 size_t const neededInSize = ZSTD_nextSrcSizeToDecompress(zds->dctx);
@@ -2436,6 +2438,7 @@ size_t ZSTD_decompressStream(ZSTD_DStream *zds, ZSTD_outBuffer *output, ZSTD_inB
2436 /* pass-through */ 2438 /* pass-through */
2437 } 2439 }
2438 } 2440 }
2441 /* fall through */
2439 2442
2440 case zdss_flush: { 2443 case zdss_flush: {
2441 size_t const toFlushSize = zds->outEnd - zds->outStart; 2444 size_t const toFlushSize = zds->outEnd - zds->outStart;