aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPádraig Brady <P@draigBrady.com>2023-06-15 00:53:54 +0100
committerPádraig Brady <P@draigBrady.com>2023-06-15 01:00:05 +0100
commitd53190ed46a55f599800ebb2d8ddfe38205dbd24 (patch)
tree6b945a0ae58c659a5a8ddcaeda56c2fc4f28ffaf
parentcksum,wc: clean up hw capability checking (diff)
downloadcoreutils-d53190ed46a55f599800ebb2d8ddfe38205dbd24.tar.gz
coreutils-d53190ed46a55f599800ebb2d8ddfe38205dbd24.zip
doc: mention cksum error fix with cpu feature checks changes
* NEWS: Mention the error message to aid those searching for solutions to the issue, and mention cksum also as that was confirmed to fix the error with the adjusted cpu feature detection, as discussed at https://bugs.debian.org/1037264 * src/cksum.c: Cleanup syntax-check failure from previous commit.
-rw-r--r--NEWS3
-rw-r--r--src/cksum.c4
2 files changed, 4 insertions, 3 deletions
diff --git a/NEWS b/NEWS
index 3350f9871..535850549 100644
--- a/NEWS
+++ b/NEWS
@@ -29,7 +29,8 @@ GNU coreutils NEWS -*- outline -*-
'pr --length=1 --double-space' no longer enters an infinite loop.
[This bug was present in "the beginning".]
- 'wc -l' no longer crashes on x86 Linux kernels that disable XSAVE YMM.
+ 'wc -l' and 'cksum' no longer crash with an "Illegal instruction" error
+ on x86 Linux kernels that disable XSAVE YMM. This was seen on Xen VMs.
[bug introduced in coreutils-9.0]
** Changes in behavior
diff --git a/src/cksum.c b/src/cksum.c
index 26bb29bdb..5b6a59c16 100644
--- a/src/cksum.c
+++ b/src/cksum.c
@@ -229,9 +229,9 @@ crc_sum_stream (FILE *stream, void *resstream, uintmax_t *length)
static bool (*cksum_fp) (FILE *, uint_fast32_t *, uintmax_t *);
if (! cksum_fp)
cksum_fp = pclmul_supported () ? cksum_pclmul : cksum_slice8;
-#else
+# else
bool (*cksum_fp) (FILE *, uint_fast32_t *, uintmax_t *) = cksum_slice8;
-#endif
+# endif
if (! cksum_fp (stream, &crc, &total_bytes))
return -1;