Bug#1061076: kbtin: FTBFS with stack-clash-protection on armhf due to valgrind segfault

2024-01-18 Thread Adam Borowski
On Wed, Jan 17, 2024 at 04:29:10PM +0100, Emanuele Rocca wrote:
> Source: kbtin
> Severity: serious
> Usertags: 32bit-stackclash

> kbtin currently fails to build from source on armhf. The failure is due
> to an incompatibility between valgrind and stack-clash-protection on
> 32bit arm reported upstream at:
> https://bugs.kde.org/show_bug.cgi?id=479699

Thanks for the report (and fix).  I've applied it in git.  However... during
testing, while the package now builds fine on armhf (and armel amd64 ...),
I see it makes valgrind crash on arm64 with:

Warning: DWARF2 CFI reader: unhandled DW_OP_ opcode 0x92
valgrind: m_debuginfo/readdwarf.c:2822 (copy_convert_CfiExpr_tree): Assertion 
'srcix >= 0 && srcix < VG_(sizeXA)(srcxa)' failed.

and likewise this doesn't appear to be a problem with kbtin itself -- it's
just a regular C program that does nothing weird.

While these bugs are unrelated (other than both being failures due to
valgrind not liking new toolchains), it makes no sense to upload the fix
right now.


Meow!
-- 
⢀⣴⠾⠻⢶⣦⠀
⣾⠁⢠⠒⠀⣿⡁ I was born a dumb, ugly and work-loving kid, then I got swapped on
⢿⡄⠘⠷⠚⠋⠀ the maternity ward.
⠈⠳⣄



Bug#1061076: kbtin: FTBFS with stack-clash-protection on armhf due to valgrind segfault

2024-01-17 Thread Emanuele Rocca
Source: kbtin
Version: 2.1-2
Severity: serious
Tags: patch
User: debian-...@lists.debian.org
Usertags: 32bit-stackclash

Hi,

kbtin currently fails to build from source on armhf. The failure is due
to an incompatibility between valgrind and stack-clash-protection on
32bit arm reported upstream at:
https://bugs.kde.org/show_bug.cgi?id=479699

While waiting for valgrind to get updated, please cosider addressing the
immediate issue by disabling stack-clash-protection on armhf with the
following snippet in d/rules:

  ifeq ($(DEB_TARGET_ARCH),armhf)
export DEB_BUILD_MAINT_OPTIONS = hardening=+all,-stackclash
  else
export DEB_BUILD_MAINT_OPTIONS = hardening=+all
  endif

You can find the full build logs at:
http://qa-logs.debian.net/2024/01/11/armhf/kbtin_2.1-2_unstable-armhf.log

The error is:

3: ==1751922== 
3: ==1751922== Process terminating with default action of signal 11 (SIGSEGV)
3: ==1751922==  Access not within mapped region at address 0xFEC93DC8
3: ==1751922==at 0x118336: read_rc_file.isra.0 (main.c:301)
3: ==1751922==by 0x10F025: read_rc (main.c:319)
3: ==1751922==by 0x10F025: main (main.c:374)
3: ==1751922==  If you believe this happened as a result of a stack
3: ==1751922==  overflow in your program's main thread (unlikely but
3: ==1751922==  possible), you can try to increase the size of the
3: ==1751922==  main thread stack using the --main-stacksize= flag.
3: ==1751922==  The main thread stack size used in this run was 8388608.
3: --- "/<>/tests/data/#chr, #ord, #hexord (7-bit ASCII).out"  
2022-11-06 21:51:48.0 +

Thanks,
  Emanuele