linux/drivers/gpu/drm
Boris Brezillon 8e43b1e537 drm/panthor: Fix an off-by-one in the heap context retrieval logic
The heap ID is used to index the heap context pool, and allocating
in the [1:MAX_HEAPS_PER_POOL] leads to an off-by-one. This was
originally to avoid returning a zero heap handle, but given the handle
is formed with (vm_id << 16) | heap_id, with vm_id > 0, we already can't
end up with a valid heap handle that's zero.

v4:
- s/XA_FLAGS_ALLOC1/XA_FLAGS_ALLOC/

v3:
- Allocate in the [0:MAX_HEAPS_PER_POOL-1] range

v2:
- New patch

Fixes: 9cca48fa4f ("drm/panthor: Add the heap logical block")
Reported-by: Eric Smith <eric.smith@collabora.com>
Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com>
Tested-by: Eric Smith <eric.smith@collabora.com>
Reviewed-by: Steven Price <steven.price@arm.com>
Reviewed-by: Liviu Dudau <liviu.dudau@arm.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20240502165158.1458959-5-boris.brezillon@collabora.com
2024-05-13 09:49:22 +02:00
..
amd Revert "drm: Switch DRM_DISPLAY_HELPER to depends on" 2024-05-02 17:58:23 +02:00
arm drm/komeda: fix missing seq_file includes 2024-04-26 13:55:49 +10:00
armada
aspeed
ast
atmel-hlcdc
bridge Revert "drm/bridge: ti-sn65dsi83: Fix enable error path" 2024-05-02 23:40:13 +02:00
ci
display Revert "drm/display: Make all helpers visible and switch to depends on" 2024-05-02 18:00:00 +02:00
etnaviv
exynos Revert "drm: Switch DRM_DISPLAY_HELPER to depends on" 2024-05-02 17:58:23 +02:00
fsl-dcu
gma500 Linux 6.9-rc6 2024-04-29 20:22:39 +02:00
gud
hisilicon
hyperv
i2c
i915 Revert "drm: Switch DRM_DISPLAY_HELPER to depends on" 2024-05-02 17:58:23 +02:00
imagination
imx Revert "drm: Make drivers depends on DRM_DW_HDMI" 2024-05-02 17:59:59 +02:00
ingenic Revert "drm: Make drivers depends on DRM_DW_HDMI" 2024-05-02 17:59:59 +02:00
kmb
lib
lima
logicvc
loongson drm/loongson: fix build after debugfs include change 2024-04-26 14:30:36 +10:00
mcde
mediatek Revert "drm: Switch DRM_DISPLAY_HELPER to depends on" 2024-05-02 17:58:23 +02:00
meson Revert "drm: Make drivers depends on DRM_DW_HDMI" 2024-05-02 17:59:59 +02:00
mgag200
msm Revert "drm: Switch DRM_DISPLAY_HELPER to depends on" 2024-05-02 17:58:23 +02:00
mxsfb
nouveau Revert "drm: Switch DRM_DISPLAY_HELPER to depends on" 2024-05-02 17:58:23 +02:00
omapdrm drm/omap: add missing seq_file include 2024-04-26 14:17:44 +10:00
panel Revert "drm: Switch DRM_DISPLAY_HELPER to depends on" 2024-05-02 17:58:23 +02:00
panfrost
panthor drm/panthor: Fix an off-by-one in the heap context retrieval logic 2024-05-13 09:49:22 +02:00
pl111
qxl
radeon Revert "drm: Switch DRM_DISPLAY_HELPER to depends on" 2024-05-02 17:58:23 +02:00
renesas Revert "drm: Make drivers depends on DRM_DW_HDMI" 2024-05-02 17:59:59 +02:00
rockchip Revert "drm: Make drivers depends on DRM_DW_HDMI" 2024-05-02 17:59:59 +02:00
scheduler
solomon
sprd
sti
stm
sun4i Revert "drm: Make drivers depends on DRM_DW_HDMI" 2024-05-02 17:59:59 +02:00
tegra Revert "drm: Switch DRM_DISPLAY_HELPER to depends on" 2024-05-02 17:58:23 +02:00
tests
tidss
tilcdc
tiny
ttm
tve200
udl
v3d
vboxvideo
vc4 Revert "drm: Switch DRM_DISPLAY_HELPER to depends on" 2024-05-02 17:58:23 +02:00
vgem
virtio
vkms
vmwgfx
xe Revert "drm: Switch DRM_DISPLAY_HELPER to depends on" 2024-05-02 17:58:23 +02:00
xen
xlnx drm: xlnx: zynqmp_dpsub: Fix compilation error 2024-05-08 12:57:04 +02:00
Kconfig drm: move DRM-related CONFIG options into DRM submenu 2024-05-02 18:00:37 +02:00
Makefile
drm_aperture.c
drm_atomic.c
drm_atomic_helper.c
drm_atomic_state_helper.c
drm_atomic_uapi.c
drm_auth.c
drm_blend.c
drm_bridge.c
drm_bridge_connector.c
drm_buddy.c
drm_cache.c
drm_client.c
drm_client_modeset.c
drm_color_mgmt.c
drm_connector.c
drm_crtc.c
drm_crtc_helper.c
drm_crtc_helper_internal.h
drm_crtc_internal.h
drm_damage_helper.c
drm_debugfs.c
drm_debugfs_crc.c
drm_displayid.c
drm_displayid_internal.h
drm_drv.c
drm_dumb_buffers.c
drm_edid.c
drm_edid_load.c
drm_eld.c
drm_encoder.c
drm_encoder_slave.c
drm_exec.c
drm_fb_dma_helper.c drm/fb_dma: Add checks in drm_fb_dma_get_scanout_buffer() 2024-05-02 23:39:21 +02:00
drm_fb_helper.c
drm_fbdev_dma.c
drm_fbdev_generic.c drm/fbdev-generic: Do not set physical framebuffer address 2024-05-02 23:38:49 +02:00
drm_file.c
drm_flip_work.c
drm_format_helper.c
drm_fourcc.c
drm_framebuffer.c
drm_gem.c
drm_gem_atomic_helper.c
drm_gem_dma_helper.c
drm_gem_framebuffer_helper.c
drm_gem_shmem_helper.c
drm_gem_ttm_helper.c
drm_gem_vram_helper.c
drm_gpuvm.c
drm_internal.h
drm_ioc32.c
drm_ioctl.c
drm_kms_helper_common.c
drm_lease.c
drm_managed.c
drm_mipi_dbi.c
drm_mipi_dsi.c
drm_mm.c
drm_mode_config.c
drm_mode_object.c
drm_modes.c
drm_modeset_helper.c
drm_modeset_lock.c
drm_of.c
drm_panel.c
drm_panel_orientation_quirks.c
drm_panic.c
drm_pci.c
drm_plane.c
drm_plane_helper.c
drm_prime.c
drm_print.c
drm_privacy_screen.c
drm_privacy_screen_x86.c
drm_probe_helper.c
drm_property.c
drm_rect.c
drm_self_refresh_helper.c
drm_simple_kms_helper.c
drm_suballoc.c
drm_syncobj.c
drm_sysfs.c
drm_trace.h
drm_trace_points.c
drm_vblank.c
drm_vblank_work.c
drm_vma_manager.c
drm_writeback.c