Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

math-emu: Fix thinko in _FP_DIV

In commit 48d6c64311ddb6417b901639530ccbc47bdc7635 ("math-emu: Add
support for reporting exact invalid exception") code was added to
set the new FP_EX_INVALID_{IDI,ZDZ} exception flag bits.

However there is a missing break statement for the
_FP_CLS_COMBINE(FP_CLS_INF,FP_CLS_INF) switch case, the
code just falls into _FP_CLS_COMBINE(FP_CLS_ZERO,FP_CLS_ZERO)
which then proceeds to overwrite all of the settings.

Fix by adding the missing break.

Signed-off-by: David S. Miller <davem@davemloft.net>

+2
+2
include/math-emu/op-common.h
··· 503 503 R##_c = FP_CLS_NAN; \ 504 504 _FP_FRAC_SET_##wc(R, _FP_NANFRAC_##fs); \ 505 505 FP_SET_EXCEPTION(FP_EX_INVALID | FP_EX_INVALID_IDI);\ 506 + break; \ 507 + \ 506 508 case _FP_CLS_COMBINE(FP_CLS_ZERO,FP_CLS_ZERO): \ 507 509 R##_s = _FP_NANSIGN_##fs; \ 508 510 R##_c = FP_CLS_NAN; \