diff options
author | Alex Richardson <arichardson@FreeBSD.org> | 2023-09-12 22:55:37 -0700 |
---|---|---|
committer | Alex Richardson <arichardson@FreeBSD.org> | 2023-09-12 23:18:50 -0700 |
commit | 01e754610df2195536c5b31c1e8df756480599d1 (patch) | |
tree | 84ce877cb7f5885384fdba2dd05a0008749c180f /src/FillRects.c | |
parent | 07efd80468f6b595e6432edd28b8560ca7695ba0 (diff) |
While runnig some X11 applications on an Arm Morello platform I noticed
bus errors inside xrender. XRenderInfo uses a single malloc call to
allocate multiple objects in one single allocation and places those objects
directly after the XRenderInfo object. However, these calculations do not
ensure that this objects are sufficiently aligned. I noticed this because
on Morello (and other CHERI-enabled architectures) pointers need to be
strongly aligned. Instead of allocating a single block with potentially
misaligned subsequent objects, this change uses seprate allocations for
the four arrays.
This is an alternative to https://gitlab.freedesktop.org/xorg/lib/libxrender/-/merge_requests/12
Signed-off-by: Alex Richardson <arichardson@FreeBSD.org>
Diffstat (limited to 'src/FillRects.c')
0 files changed, 0 insertions, 0 deletions