History log of /src/sys/external/bsd/drm2/dist/drm/i915/i915_cmd_parser.c |
Revision | | Date | Author | Comments |
1.28 |
| 19-Dec-2021 |
riastradh | i915: Omit more unnecessary local diffs.
|
1.27 |
| 19-Dec-2021 |
riastradh | Give up on figuring side-loading, we need bitmap_* functions.
Author: Maya Rashish <maya@NetBSD.org> Committer: Taylor R Campbell <riastradh@NetBSD.org>
|
1.26 |
| 19-Dec-2021 |
riastradh | PRIx64 for u64
Author: Maya Rashish <maya@NetBSD.org> Committer: Taylor R Campbell <riastradh@NetBSD.org>
|
1.25 |
| 19-Dec-2021 |
riastradh | NetBSD-ify clflush size
Author: Maya Rashish <maya@NetBSD.org> Committer: Taylor R Campbell <riastradh@NetBSD.org>
|
1.24 |
| 19-Dec-2021 |
riastradh | First pass at i915, far from complete.
HEAVILY MODIFIED IN MERGE - maya
|
1.23 |
| 18-Dec-2021 |
riastradh | Merge linux-drm-v5-6-rc3
|
1.22 |
| 14-Feb-2020 |
maya | Reduce diffs by side-loading some header files like Linux.
From riastradh
|
1.21 |
| 14-Feb-2020 |
riastradh | Eliminate -Wpointer-arith patches; use -Wno-pointer-arith instead.
|
1.20 |
| 05-Dec-2019 |
maya | branches: 1.20.2; Use the original linux function rather than my wrong translation.
...Include the header to have it.
Thanks Riastradh!
|
1.19 |
| 05-Dec-2019 |
maya | Add what appears to be the fixes to CVE-2019-0154, CVE-2019-0155. This commit requires review, but I'd also like it to be tested by others while it is being reviewed.
CVE-2019-0155: It was discovered that the Intel i915 graphics chipsets allowed userspace to modify page table entries via writes to MMIO from the Blitter Command Streamer and expose kernel memory information. A local attacker could use this to expose sensitive information or possibly elevate privileges.
CVE-2019-0154: It was discovered that the Intel i915 graphics chipsets could cause a system hang when userspace performed a read from GT memory mapped input output (MMIO) when the product is in certain low power states. A local attacker could use this to cause a denial of service.
From upstream commits to linux-4.4.y:
|
1.18 |
| 09-Sep-2018 |
pgoyette | branches: 1.18.4; Add __diagused attribute to some diagnostic routines.
OK riastradh@
|
1.17 |
| 27-Aug-2018 |
riastradh | Handle uvm object reference counts in uvm_map more carefully.
Acquire a reference unconditionally first; then let uvm_map consume it on success, and release it ourselves on failure.
As we did before -- acquiring a fresh reference on success -- another thread might release the reference with a concurrent uvm_unmap before we could acquire it back, thereby destroying the object.
XXX pullup-7 in part (i915_gem_fault) XXX pullup-8 in part (i915_gem_fault)
|
1.16 |
| 27-Aug-2018 |
riastradh | Fix order of arguments to kcopy. @#&!$!*#
Add const qualifiers to src to compiler will detect this.
|
1.15 |
| 27-Aug-2018 |
riastradh | Use kcopy, not memcpy, in case of failure to page in dst. From chs@.
|
1.14 |
| 27-Aug-2018 |
riastradh | Forgot again to restore reference consumed by uvm_map.
Add missing errno comment while here.
|
1.13 |
| 27-Aug-2018 |
riastradh | For reasons beyond me, map does size/offset but unmap does start/end.
|
1.12 |
| 27-Aug-2018 |
riastradh | Use uvm_map directly and make sure we unmap correct length.
|
1.11 |
| 27-Aug-2018 |
riastradh | Fix mapping of non-page-aligned stuff in vmap_batch.
|
1.10 |
| 27-Aug-2018 |
riastradh | uvm_map consumes reference on success, so be sure to acquire another.
|
1.9 |
| 27-Aug-2018 |
riastradh | Remove wrong comment.
|
1.8 |
| 27-Aug-2018 |
riastradh | Just use uvm_map on the uvm object instead of futzing with pages.
|
1.7 |
| 27-Aug-2018 |
riastradh | Rework how we map i915 drm gem objects.
The old way made no sense at all. This way might make sense.
|
1.6 |
| 27-Aug-2018 |
riastradh | No arithmetic on void *.
|
1.5 |
| 27-Aug-2018 |
riastradh | merge linux-drm-v4-4-143
|
1.4 |
| 17-Sep-2014 |
riastradh | branches: 1.4.18; 1.4.20; Avoid missing field initializers.
|
1.3 |
| 18-Jul-2014 |
riastradh | branches: 1.3.2; 1.3.4; 1.3.6; Don't cast ptrdiff_t to unsigned long before formatting it with %td.
Noted by Robert Swindells and Patrick Welche.
|
1.2 |
| 16-Jul-2014 |
riastradh | Make it build and boot on my test machines.
Screen blanks on boot on the Ivy Bridge system with
DRM error in cpt_serr_int_handler: PCH transcoder A FIFO underrun
But after that everything is OK. Appears to be an upstream problem. To investigate...
I think there's a cache flushing issue somewhere -- there are little display artefacts on my T60.
|
1.1 |
| 16-Jul-2014 |
riastradh | branches: 1.1.1; Initial revision
|
1.1.1.3 |
| 18-Dec-2021 |
riastradh | Import drm from Linux v5.6-rc3 (commit f8788d86ab28f61f7b46eb6be375f8a726783636)
drivers/gpu/drm -> sys/external/bsd/drm2/dist/drm include/drm -> sys/external/bsd/drm2/dist/include/drm include/uapi/drm -> sys/external/bsd/drm2/dist/include/uapi/drm
GPL exclusions in dist/drm:
- amd/amdgpu/amdgpu_atpx_handler.c - arc/ - arm/ - armada/ - aspeed/ - atmel-hlcdc/ - bochs/ - bridge/ - cirrus/ - drm_dp_cec.c - drm_dp_mst_topology_internal.h - drm_edid_load.c - drm_format_helper.c - drm_gem_cma_helper.c - drm_gem_framebuffer_helper.c - drm_gem_shmem_helper.c - drm_gem_ttm_helper.c - drm_gem_vram_helper.c - drm_hdcp.c - drm_lease.c - drm_mipi_dbi.c - drm_simple_kms_helper.c - drm_sysfs.c - drm_trace.h - drm_vram_helper_common.c - drm_writeback.c - etnaviv/ - exynos/ - fsl-dcu/ - gma500/ - hisilicon/ - i2c/tda9950.c - i2c/tda998x_drv.c - i915/gt/selftest_context.c - i915/gt/selftest_engine.c - i915/gt/selftest_engine.h - i915/gt/selftest_engine_cs.c - i915/gt/selftest_engine_pm.c - i915/i915_trace.h - i915/selftests/i915_live_selftests.h - i915/selftests/i915_mock_selftests.h - i915/selftests/i915_perf_selftests.h - i915/selftests/lib_sw_fence.h - imx/ - ingenic/ - lima/ - mcde/ - mediatek/ - meson/ - mgag200/ - msm/ - mxsfb/ - omapdrm/ - panel/ - panfrost/ - pl111/ - radeon/radeon_atpx_handler.c - rcar-du/ - rockchip/ - selftests/drm_cmdline_selftests.h - selftests/drm_modeset_selftests.h - selftests/test-drm_cmdline_parser.c - selftests/test-drm_damage_helper.c - selftests/test-drm_dp_mst_helper.c - selftests/test-drm_format.c - selftests/test-drm_framebuffer.c - selftests/test-drm_modeset_common.c - selftests/test-drm_modeset_common.h - selftests/test-drm_plane_helper.c - selftests/test-drm_rect.c - shmobile/ - sti/ - stm/ - sun4i/ - tegra/ - tilcdc/ - tiny/ - tve200/ - udl/ - v3d/ - vc4/ - virtio/virtgpu_trace.h - virtio/virtgpu_trace_points.c - vkms/ - vmwgfx/device_include/vmware_pack_begin.h - vmwgfx/device_include/vmware_pack_end.h - zte/
Exceptions -- these all appear to be files to which someone added an SPDX license header automatically by a script that is not aware of the default MIT licensing under drivers/gpu/drm:
- ast/ast_dp501.c - ast/ast_dram_tables.h - lib/drm_random.c - lib/drm_random.h - i915/display/intel_acpi.c - i915/selftests/mock_gem_device.h - i915/selftests/i915_mock_selftests.h - i915/selftests/i915_live_selftests.h - r128/ati_pcigart.h - selftests/drm_mm_selftests.h - selftests/test-drm_mm.c - vmwgfx/device_include/vm_basic_types.h
GPL exclusions in dist/include/drm:
- bridge - drm_client.h - drm_fb_cma_helper.h - drm_format_helper.h - drm_gem_cma_helper.h - drm_gem_shmem_helper.h - drm_gem_ttm_helper.h - drm_gem_vram_helper.h - drm_lease.h - drm_mipi_dbi.h - drm_mipi_dsi.h - drm_of.h - drm_simple_kms_helper.h - drm_sysfs.h - drm_writeback.h - gma_drm.h - i2c/tda998x.h - i915_mei_hdcp_interface.h - intel-gtt.h
Exceptions: - drm_agpsupport.h - was in original drm; wrong spdx header auto-added
GPL exclusions in dist/include/uapi/drm:
- armada_drm.h - etnaviv_drm.h - exynos_drm.h - lima_drm.h - omap_drm.h
Exceptions: - i810_drm.h - was in original drm; spdx header is wrong
|
1.1.1.2 |
| 27-Aug-2018 |
riastradh | Import drm from Linux v4.4.143 (commit a8ea6276d00555387deaaa5eaeb380cd5c17bdc9).
drivers/gpu/drm -> sys/external/bsd/drm2/dist/drm include/drm -> sys/external/bsd/drm2/dist/include/drm include/uapi/drm -> sys/external/bsd/drm2/dist/uapi/drm
GPL sources excluded.
|
1.1.1.1 |
| 16-Jul-2014 |
riastradh | Import drm from Linux 3.15 (commitid 1860e379875dfe7271c649058aeddffe5afd9d0d).
drivers/gpu/drm -> sys/external/bsd/drm2/dist/drm include/drm -> sys/external/bsd/drm2/dist/include/drm include/uapi/drm -> sys/external/bsd/drm2/dist/uapi/drm
GPL sources excluded.
|
1.3.6.3 |
| 03-Dec-2017 |
jdolecek | update from HEAD
|
1.3.6.2 |
| 20-Aug-2014 |
tls | Rebase to HEAD as of a few days ago.
|
1.3.6.1 |
| 18-Jul-2014 |
tls | file i915_cmd_parser.c was added on branch tls-maxphys on 2014-08-20 00:04:09 +0000
|
1.3.4.1 |
| 10-Nov-2014 |
martin | Pull up following revision(s) (requested by snj in ticket #191): sys/external/bsd/drm2/include/linux/io-mapping.h: revision 1.4 sys/external/bsd/drm2/dist/uapi/drm/drm.h: revision 1.5 sys/external/bsd/drm2/dist/drm/i915/intel_panel.c: revision 1.5 sys/external/bsd/drm2/dist/uapi/drm/drm.h: revision 1.6 sys/external/bsd/drm2/dist/drm/i915/intel_drv.h: revision 1.7 sys/external/bsd/drm2/include/linux/ww_mutex.h: revision 1.7 sys/external/bsd/drm2/dist/drm/i915/intel_dp.c: revision 1.8 sys/external/bsd/drm2/dist/drm/i915/i915_ums.c: revision 1.2 sys/external/bsd/drm2/dist/drm/i915/intel_pm.c: revision 1.5 sys/external/bsd/drm2/dist/drm/i915/i915_debugfs.c: revision 1.2 sys/external/bsd/drm2/dist/drm/i915/i915_drv.h: revision 1.9 sys/external/bsd/drm2/dist/drm/i915/i915_cmd_parser.c: revision 1.4 sys/external/bsd/drm2/dist/drm/i915/intel_dsi.c: revision 1.3 sys/external/bsd/drm2/dist/drm/i915/intel_display.c: revision 1.11 sys/external/bsd/drm2/dist/drm/i915/intel_hdmi.c: revision 1.5 sys/external/bsd/drm2/dist/drm/i915/intel_display.c: revision 1.12 sys/external/bsd/drm2/include/asm/processor.h: revision 1.3 sys/external/bsd/drm2/dist/drm/i915/intel_crt.c: revision 1.5 sys/external/bsd/drm2/dist/drm/i915/intel_sideband.c: revision 1.2 sys/external/bsd/drm2/dist/drm/i915/intel_ddi.c: revision 1.5 sys/external/bsd/drm2/dist/drm/i915/intel_tv.c: revision 1.5 sys/external/bsd/drm2/dist/drm/i915/i915_dma.c: revision 1.11 sys/external/bsd/drm2/dist/drm/i915/i915_irq.c: revision 1.10 sys/external/bsd/drm2/dist/drm/i915/i915_gem.c: revision 1.16 sys/external/bsd/drm2/dist/drm/i915/i915_gem.c: revision 1.17 sys/external/bsd/drm2/ttm/ttm_bo_vm.c: revision 1.6 sys/external/bsd/drm2/ttm/ttm_bo_vm.c: revision 1.7 sys/external/bsd/drm2/drm/drm_module.c: revision 1.8 sys/external/bsd/drm2/dist/drm/i915/intel_sprite.c: revision 1.2 sys/external/bsd/drm2/dist/drm/i915/intel_dsi_cmd.c: revision 1.2 sys/external/bsd/drm2/i915drm/intelfb.c: revision 1.10 sys/external/bsd/drm2/dist/drm/i915/intel_dvo.c: revision 1.2 sys/external/bsd/drm2/dist/drm/i915/intel_sdvo.c: revision 1.6 sys/external/bsd/drm2/dist/drm/i915/intel_lvds.c: revision 1.6 Code cleanup and minor bugfixes for drm2.
|
1.3.2.2 |
| 10-Aug-2014 |
tls | Rebase.
|
1.3.2.1 |
| 18-Jul-2014 |
tls | file i915_cmd_parser.c was added on branch tls-earlyentropy on 2014-08-10 06:55:29 +0000
|
1.4.20.2 |
| 08-Apr-2020 |
martin | Merge changes from current as of 20200406
|
1.4.20.1 |
| 10-Jun-2019 |
christos | Sync with HEAD
|
1.4.18.2 |
| 30-Sep-2018 |
pgoyette | Ssync with HEAD
|
1.4.18.1 |
| 06-Sep-2018 |
pgoyette | Sync with HEAD
Resolve a couple of conflicts (result of the uimin/uimax changes)
|
1.18.4.1 |
| 12-Dec-2019 |
martin | Pull up following revision(s) (requested by maya in ticket #548):
sys/external/bsd/drm2/dist/drm/i915/intel_display.c: revision 1.28 sys/external/bsd/drm2/dist/drm/i915/i915_drv.h: revision 1.30 sys/external/bsd/common/include/linux/bitops.h: revision 1.9 sys/external/bsd/drm2/dist/drm/i915/intel_drv.h: revision 1.11 sys/external/bsd/drm2/dist/drm/i915/i915_gem_gtt.h: revision 1.8 sys/external/bsd/drm2/dist/drm/i915/i915_gem_gtt.c: revision 1.16 sys/external/bsd/drm2/dist/drm/i915/i915_gem_execbuffer.c: revision 1.9 sys/external/bsd/drm2/dist/drm/i915/i915_dma.c: revision 1.28 sys/external/bsd/drm2/dist/drm/i915/i915_cmd_parser.c: revision 1.19 sys/external/bsd/drm2/dist/drm/i915/intel_pm.c: revision 1.20 sys/external/bsd/drm2/dist/drm/i915/intel_ringbuffer.c: revision 1.11 sys/external/bsd/drm2/dist/drm/i915/intel_ringbuffer.h: revision 1.7 sys/external/bsd/drm2/dist/drm/i915/i915_reg.h: revision 1.14 sys/external/bsd/drm2/dist/drm/i915/i915_cmd_parser.c: revision 1.20 sys/external/bsd/drm2/dist/drm/i915/i915_gem_context.c: revision 1.10 sys/external/bsd/drm2/dist/drm/i915/i915_drv.c: revision 1.17
Add what appears to be the fixes to CVE-2019-0154, CVE-2019-0155.
This commit requires review, but I'd also like it to be tested by others while it is being reviewed. CVE-2019-0155:
It was discovered that the Intel i915 graphics chipsets allowed userspace to modify page table entries via writes to MMIO from the Blitter Command Streamer and expose kernel memory information. A local attacker could use this to expose sensitive information or possibly elevate privileges.
CVE-2019-0154: It was discovered that the Intel i915 graphics chipsets could cause a system hang when userspace performed a read from GT memory mapped input output (MMIO) when the product is in certain low power states. A local attacker could use this to cause a denial of service. From upstream commits to linux-4.4.y:
|
1.20.2.1 |
| 29-Feb-2020 |
ad | Sync with head.
|