# git rev-parse -q --verify cf65598d5909acf5e7b7dc9e21786e386356bc81^{commit} cf65598d5909acf5e7b7dc9e21786e386356bc81 already have revision, skipping fetch # git checkout -q -f -B kisskb cf65598d5909acf5e7b7dc9e21786e386356bc81 # git clean -qxdf # < git log -1 # commit cf65598d5909acf5e7b7dc9e21786e386356bc81 # Merge: 70d201a40823 b76c01f1d950 # Author: Linus Torvalds # Date: Fri Jan 12 11:32:19 2024 -0800 # # Merge tag 'drm-next-2024-01-10' of git://anongit.freedesktop.org/drm/drm # # Pull drm updates from Dave Airlie: # "This contains two major new drivers: # # - imagination is a first driver for Imagination Technologies devices, # it only covers very specific devices, but there is hope to grow it # # - xe is a reboot of the i915 GPU (shares display) side using a more # upstream focused development model, and trying to maximise code # sharing. It's not enabled for any hw by default, and will hopefully # get switched on for Intel's Lunarlake. # # This also drops a bunch of the old UMS ioctls. It's been dead long # enough. # # amdgpu has a bunch of new color management code that is being used in # the Steam Deck. # # amdgpu also has a new ACPI WBRF interaction to help avoid radio # interference. # # Otherwise it's the usual lots of changes in lots of places. # # Detailed summary: # # new drivers: # - imagination - new driver for Imagination Technologies GPU # - xe - new driver for Intel GPUs using core drm concepts # # core: # - add CLOSE_FB ioctl # - remove old UMS ioctls # - increase max objects to accomodate AMD color mgmt # # encoder: # - create per-encoder debugfs directory # # edid: # - split out drm_eld # - SAD helpers # - drop edid_firmware module parameter # # format-helper: # - cache format conversion buffers # # sched: # - move from kthread to workqueue # - rename some internals # - implement dynamic job-flow control # # gpuvm: # - provide more features to handle GEM objects # # client: # - don't acquire module reference # # displayport: # - add mst path property documentation # # fdinfo: # - alignment fix # # dma-buf: # - add fence timestamp helper # - add fence deadline support # # bridge: # - transparent aux-bridge for DP/USB-C # - lt8912b: add suspend/resume support and power regulator support # # panel: # - edp: AUO B116XTN02, BOE NT116WHM-N21,836X2, NV116WHM-N49 # - chromebook panel support # - elida-kd35t133: rework pm # - powkiddy RK2023 panel # - himax-hx8394: drop prepare/unprepare and shutdown logic # - BOE BP101WX1-100, Powkiddy X55, Ampire AM8001280G # - Evervision VGG644804, SDC ATNA45AF01 # - nv3052c: register docs, init sequence fixes, fascontek FS035VG158 # - st7701: Anbernic RG-ARC support # - r63353 panel controller # - Ilitek ILI9805 panel controller # - AUO G156HAN04.0 # # simplefb: # - support memory regions # - support power domains # # amdgpu: # - add new 64-bit sequence number infrastructure # - add AMD specific color management # - ACPI WBRF support for RF interference handling # - GPUVM updates # - RAS updates # - DCN 3.5 updates # - Rework PCIe link speed handling # - Document GPU reset types # - DMUB fixes # - eDP fixes # - NBIO 7.9/7.11 updates # - SubVP updates # - XGMI PCIe state dumping for aqua vanjaram # - GFX11 golden register updates # - enable tunnelling on high pri compute # # amdkfd: # - Migrate TLB flushing logic to amdgpu # - Trap handler fixes # - Fix restore workers handling on suspend/resume # - Fix possible memory leak in pqm_uninit() # - support import/export of dma-bufs using GEM handles # # radeon: # - fix possible overflows in command buffer checking # - check for errors in ring_lock # # i915: # - reorg display code for reuse in xe driver # - fdinfo memory stats printing # - DP MST bandwidth mgmt improvements # - DP panel replay enabling # - MTL C20 phy state verification # - MTL DP DSC fractional bpp support # - Audio fastset support # - use dma_fence interfaces instead of i915_sw_fence # - Separate gem and display code # - AUX register macro refactoring # - Separate display module/device parameters # - Move display capabilities debugfs under display # - Makefile cleanups # - Register cleanups # - Move display lock inits under display/ # - VLV/CHV DPIO PHY register and interface refactoring # - DSI VBT sequence refactoring # - C10/C20 PHY PLL hardware readout # - DPLL code cleanups # - Cleanup PXP plane protection checks # - Improve display debug msgs # - PSR selective fetch fixes/improvements # - DP MST fixes # - Xe2LPD FBC restrictions removed # - DGFX uses direct VBT pin mapping # - more MTL WAs # - fix MTL eDP bug # - eliminate use of kmap_atomic # # habanalabs: # - sysfs entry to identify a device minor id with debugfs path # - sysfs entry to expose device module id # - add signed device info retrieval through INFO ioctl # - add Gaudi2C device support # - pcie reset prepare/done hooks # # msm: # - Add support for SDM670, SM8650 # - Handle the CFG interconnect to fix the obscure hangs / timeouts # - Kconfig fix for QMP dependency # - use managed allocators # - DPU: SDM670, SM8650 support # - DPU: Enable SmartDMA on SM8350 and SM8450 # - DP: enable runtime PM support # - GPU: add metadata UAPI # - GPU: move devcoredumps to GPU device # - GPU: convert to drm_exec # # ivpu: # - update FW API # - new debugfs file # - a new NOP job submission test mode # - improve suspend/resume # - PM improvements # - MMU PT optimizations # - firmware profile frequency support # - support for uncached buffers # - switch to gem shmem helpers # - replace kthread with threaded irqs # # rockchip: # - rk3066_hdmi: convert to atomic # - vop2: support nv20 and nv30 # - rk3588 support # # mediatek: # - use devm_platform_ioremap_resource # - stop using iommu_present # - MT8188 VDOSYS1 display support # # panfrost: # - PM improvements # - improve interrupt handling as poweroff # # qaic: # - allow to run with single MSI # - support host/device time sync # - switch to persistent DRM devices # # exynos: # - fix potential error pointer dereference # - fix wrong error checking # - add missing call to drm_atomic_helper_shutdown # # omapdrm: # - dma-fence lockdep annotation fix # # tidss: # - dma-fence lockdep annotation fix # - support for AM62A7 # # v3d: # - BCM2712 - rpi5 support # - fdinfo + gputop support # - uapi for CPU job handling # # virtio-gpu: # - add context debug name" # # * tag 'drm-next-2024-01-10' of git://anongit.freedesktop.org/drm/drm: (2340 commits) # drm/amd/display: Allow z8/z10 from driver # drm/amd/display: fix bandwidth validation failure on DCN 2.1 # drm/amdgpu: apply the RV2 system aperture fix to RN/CZN as well # drm/amd/display: Move fixpt_from_s3132 to amdgpu_dm # drm/amd/display: Fix recent checkpatch errors in amdgpu_dm # Revert "drm/amdkfd: Relocate TBA/TMA to opposite side of VM hole" # drm/amd/display: avoid stringop-overflow warnings for dp_decide_lane_settings() # drm/amd/display: Fix power_helpers.c codestyle # drm/amd/display: Fix hdcp_log.h codestyle # drm/amd/display: Fix hdcp2_execution.c codestyle # drm/amd/display: Fix hdcp_psp.h codestyle # drm/amd/display: Fix freesync.c codestyle # drm/amd/display: Fix hdcp_psp.c codestyle # drm/amd/display: Fix hdcp1_execution.c codestyle # drm/amd/pm/smu7: fix a memleak in smu7_hwmgr_backend_init # drm/amdkfd: Fix iterator used outside loop in 'kfd_add_peer_prop()' # drm/amdgpu: Drop 'fence' check in 'to_amdgpu_amdkfd_fence()' # drm/amdkfd: Confirm list is non-empty before utilizing list_first_entry in kfd_topology.c # drm/amdgpu: Fix '*fw' from request_firmware() not released in 'amdgpu_ucode_request()' # drm/amdgpu: Fix variable 'mca_funcs' dereferenced before NULL check in 'amdgpu_mca_smu_get_mca_entry()' # ... # < /opt/cross/kisskb/x86-64--glibc--bleeding-edge-2022.08-1/bin/x86_64-linux-gcc --version # < /opt/cross/kisskb/x86-64--glibc--bleeding-edge-2022.08-1/bin/x86_64-linux-ld --version # < git log --format=%s --max-count=1 cf65598d5909acf5e7b7dc9e21786e386356bc81 # make -s -j 32 ARCH=um O=/kisskb/build/linus_defconfig_um-x86_64-gcc12 CROSS_COMPILE=/opt/cross/kisskb/x86-64--glibc--bleeding-edge-2022.08-1/bin/x86_64-linux- SUBARCH=x86_64 defconfig # < make -s -j 32 ARCH=um O=/kisskb/build/linus_defconfig_um-x86_64-gcc12 CROSS_COMPILE=/opt/cross/kisskb/x86-64--glibc--bleeding-edge-2022.08-1/bin/x86_64-linux- SUBARCH=x86_64 help # make -s -j 32 ARCH=um O=/kisskb/build/linus_defconfig_um-x86_64-gcc12 CROSS_COMPILE=/opt/cross/kisskb/x86-64--glibc--bleeding-edge-2022.08-1/bin/x86_64-linux- SUBARCH=x86_64 olddefconfig # make -s -j 32 ARCH=um O=/kisskb/build/linus_defconfig_um-x86_64-gcc12 CROSS_COMPILE=/opt/cross/kisskb/x86-64--glibc--bleeding-edge-2022.08-1/bin/x86_64-linux- SUBARCH=x86_64 /kisskb/src/arch/x86/um/user-offsets.c:17:6: warning: no previous prototype for ‘foo’ [-Wmissing-prototypes] 17 | void foo(void) | ^~~ In file included from /kisskb/src/arch/um/kernel/asm-offsets.c:1: /kisskb/src/arch/x86/um/shared/sysdep/kernel-offsets.h:9:6: warning: no previous prototype for ‘foo’ [-Wmissing-prototypes] 9 | void foo(void) | ^~~ /kisskb/src/arch/x86/um/bugs_64.c:9:6: warning: no previous prototype for ‘arch_check_bugs’ [-Wmissing-prototypes] 9 | void arch_check_bugs(void) | ^~~~~~~~~~~~~~~ /kisskb/src/arch/x86/um/bugs_64.c:13:6: warning: no previous prototype for ‘arch_examine_signal’ [-Wmissing-prototypes] 13 | void arch_examine_signal(int sig, struct uml_pt_regs *regs) | ^~~~~~~~~~~~~~~~~~~ /kisskb/src/arch/x86/um/os-Linux/registers.c:146:15: warning: no previous prototype for ‘get_thread_reg’ [-Wmissing-prototypes] 146 | unsigned long get_thread_reg(int reg, jmp_buf *buf) | ^~~~~~~~~~~~~~ /kisskb/src/arch/x86/um/fault.c:18:5: warning: no previous prototype for ‘arch_fixup’ [-Wmissing-prototypes] 18 | int arch_fixup(unsigned long address, struct uml_pt_regs *regs) | ^~~~~~~~~~ /kisskb/src/arch/x86/um/vdso/um_vdso.c:16:5: warning: no previous prototype for ‘__vdso_clock_gettime’ [-Wmissing-prototypes] 16 | int __vdso_clock_gettime(clockid_t clock, struct __kernel_old_timespec *ts) | ^~~~~~~~~~~~~~~~~~~~ /kisskb/src/arch/x86/um/vdso/um_vdso.c:30:5: warning: no previous prototype for ‘__vdso_gettimeofday’ [-Wmissing-prototypes] 30 | int __vdso_gettimeofday(struct __kernel_old_timeval *tv, struct timezone *tz) | ^~~~~~~~~~~~~~~~~~~ /kisskb/src/arch/x86/um/vdso/um_vdso.c:44:21: warning: no previous prototype for ‘__vdso_time’ [-Wmissing-prototypes] 44 | __kernel_old_time_t __vdso_time(__kernel_old_time_t *t) | ^~~~~~~~~~~ /kisskb/src/arch/x86/um/vdso/um_vdso.c:57:1: warning: no previous prototype for ‘__vdso_getcpu’ [-Wmissing-prototypes] 57 | __vdso_getcpu(unsigned *cpu, unsigned *node, struct getcpu_cache *unused) | ^~~~~~~~~~~~~ /kisskb/src/arch/x86/um/os-Linux/mcontext.c:7:6: warning: no previous prototype for ‘get_regs_from_mc’ [-Wmissing-prototypes] 7 | void get_regs_from_mc(struct uml_pt_regs *regs, mcontext_t *mc) | ^~~~~~~~~~~~~~~~ /kisskb/src/arch/x86/um/os-Linux/prctl.c:9:5: warning: no previous prototype for ‘os_arch_prctl’ [-Wmissing-prototypes] 9 | int os_arch_prctl(int pid, int option, unsigned long *arg2) | ^~~~~~~~~~~~~ /kisskb/src/arch/um/kernel/skas/mmu.c:17:5: warning: no previous prototype for ‘init_new_context’ [-Wmissing-prototypes] 17 | int init_new_context(struct task_struct *task, struct mm_struct *mm) | ^~~~~~~~~~~~~~~~ /kisskb/src/arch/um/kernel/skas/mmu.c:60:6: warning: no previous prototype for ‘destroy_context’ [-Wmissing-prototypes] 60 | void destroy_context(struct mm_struct *mm) | ^~~~~~~~~~~~~~~ /kisskb/src/arch/x86/um/ptrace_64.c:111:5: warning: no previous prototype for ‘poke_user’ [-Wmissing-prototypes] 111 | int poke_user(struct task_struct *child, long addr, long data) | ^~~~~~~~~ /kisskb/src/arch/x86/um/ptrace_64.c:171:5: warning: no previous prototype for ‘peek_user’ [-Wmissing-prototypes] 171 | int peek_user(struct task_struct *child, long addr, long data) | ^~~~~~~~~ /kisskb/src/arch/x86/um/ptrace_64.c:192:5: warning: no previous prototype for ‘is_syscall’ [-Wmissing-prototypes] 192 | int is_syscall(unsigned long addr) | ^~~~~~~~~~ /kisskb/src/arch/um/os-Linux/drivers/ethertap_kern.c:66:5: warning: no previous prototype for ‘ethertap_setup’ [-Wmissing-prototypes] 66 | int ethertap_setup(char *str, char **mac_out, void *data) | ^~~~~~~~~~~~~~ /kisskb/src/arch/x86/um/signal.c:560:6: warning: no previous prototype for ‘sys_rt_sigreturn’ [-Wmissing-prototypes] 560 | long sys_rt_sigreturn(void) | ^~~~~~~~~~~~~~~~ /kisskb/src/arch/um/kernel/skas/process.c:36:12: warning: no previous prototype for ‘start_uml’ [-Wmissing-prototypes] 36 | int __init start_uml(void) | ^~~~~~~~~ /kisskb/src/arch/x86/um/syscalls_64.c:84:6: warning: no previous prototype for ‘arch_switch_to’ [-Wmissing-prototypes] 84 | void arch_switch_to(struct task_struct *to) | ^~~~~~~~~~~~~~ /kisskb/src/arch/um/os-Linux/drivers/tuntap_kern.c:56:5: warning: no previous prototype for ‘tuntap_setup’ [-Wmissing-prototypes] 56 | int tuntap_setup(char *str, char **mac_out, void *data) | ^~~~~~~~~~~~ /kisskb/src/arch/um/os-Linux/skas/process.c:107:6: warning: no previous prototype for ‘wait_stub_done’ [-Wmissing-prototypes] 107 | void wait_stub_done(int pid) | ^~~~~~~~~~~~~~ /kisskb/src/arch/um/os-Linux/skas/process.c:728:6: warning: no previous prototype for ‘__switch_mm’ [-Wmissing-prototypes] 728 | void __switch_mm(struct mm_id *mm_idp) | ^~~~~~~~~~~ /kisskb/src/arch/um/os-Linux/main.c:187:7: warning: no previous prototype for ‘__wrap_malloc’ [-Wmissing-prototypes] 187 | void *__wrap_malloc(int size) | ^~~~~~~~~~~~~ /kisskb/src/arch/um/os-Linux/main.c:208:7: warning: no previous prototype for ‘__wrap_calloc’ [-Wmissing-prototypes] 208 | void *__wrap_calloc(int n, int size) | ^~~~~~~~~~~~~ /kisskb/src/arch/um/os-Linux/main.c:222:6: warning: no previous prototype for ‘__wrap_free’ [-Wmissing-prototypes] 222 | void __wrap_free(void *ptr) | ^~~~~~~~~~~ /kisskb/src/arch/um/os-Linux/mem.c:28:6: warning: no previous prototype for ‘kasan_map_memory’ [-Wmissing-prototypes] 28 | void kasan_map_memory(void *start, size_t len) | ^~~~~~~~~~~~~~~~ /kisskb/src/arch/um/os-Linux/mem.c:212:13: warning: no previous prototype for ‘check_tmpexec’ [-Wmissing-prototypes] 212 | void __init check_tmpexec(void) | ^~~~~~~~~~~~~ /kisskb/src/arch/um/os-Linux/signal.c:75:6: warning: no previous prototype for ‘sig_handler’ [-Wmissing-prototypes] 75 | void sig_handler(int sig, struct siginfo *si, mcontext_t *mc) | ^~~~~~~~~~~ /kisskb/src/arch/um/os-Linux/signal.c:111:6: warning: no previous prototype for ‘timer_alarm_handler’ [-Wmissing-prototypes] 111 | void timer_alarm_handler(int sig, struct siginfo *unused_si, mcontext_t *mc) | ^~~~~~~~~~~~~~~~~~~ /kisskb/src/arch/um/os-Linux/start_up.c:376:12: warning: no previous prototype for ‘parse_iomem’ [-Wmissing-prototypes] 376 | int __init parse_iomem(char *str, int *add) | ^~~~~~~~~~~ /kisskb/src/arch/um/kernel/mem.c:202:8: warning: no previous prototype for ‘pgd_alloc’ [-Wmissing-prototypes] 202 | pgd_t *pgd_alloc(struct mm_struct *mm) | ^~~~~~~~~ /kisskb/src/arch/um/kernel/mem.c:215:7: warning: no previous prototype for ‘uml_kmalloc’ [-Wmissing-prototypes] 215 | void *uml_kmalloc(int size, int flags) | ^~~~~~~~~~~ /kisskb/src/arch/um/kernel/process.c:51:5: warning: no previous prototype for ‘pid_to_processor_id’ [-Wmissing-prototypes] 51 | int pid_to_processor_id(int pid) | ^~~~~~~~~~~~~~~~~~~ /kisskb/src/arch/um/kernel/process.c:87:7: warning: no previous prototype for ‘__switch_to’ [-Wmissing-prototypes] 87 | void *__switch_to(struct task_struct *from, struct task_struct *to) | ^~~~~~~~~~~ /kisskb/src/arch/um/kernel/process.c:140:6: warning: no previous prototype for ‘fork_handler’ [-Wmissing-prototypes] 140 | void fork_handler(void) | ^~~~~~~~~~~~ /kisskb/src/arch/um/kernel/process.c:217:6: warning: no previous prototype for ‘arch_cpu_idle’ [-Wmissing-prototypes] 217 | void arch_cpu_idle(void) | ^~~~~~~~~~~~~ /kisskb/src/arch/um/kernel/process.c:253:5: warning: no previous prototype for ‘copy_to_user_proc’ [-Wmissing-prototypes] 253 | int copy_to_user_proc(void __user *to, void *from, int size) | ^~~~~~~~~~~~~~~~~ /kisskb/src/arch/um/kernel/process.c:263:5: warning: no previous prototype for ‘clear_user_proc’ [-Wmissing-prototypes] 263 | int clear_user_proc(void __user *buf, int size) | ^~~~~~~~~~~~~~~ /kisskb/src/arch/um/kernel/process.c:271:6: warning: no previous prototype for ‘set_using_sysemu’ [-Wmissing-prototypes] 271 | void set_using_sysemu(int value) | ^~~~~~~~~~~~~~~~ /kisskb/src/arch/um/kernel/process.c:278:5: warning: no previous prototype for ‘get_using_sysemu’ [-Wmissing-prototypes] 278 | int get_using_sysemu(void) | ^~~~~~~~~~~~~~~~ /kisskb/src/arch/um/kernel/process.c:316:12: warning: no previous prototype for ‘make_proc_sysemu’ [-Wmissing-prototypes] 316 | int __init make_proc_sysemu(void) | ^~~~~~~~~~~~~~~~ /kisskb/src/arch/um/kernel/process.c:356:15: warning: no previous prototype for ‘arch_align_stack’ [-Wmissing-prototypes] 356 | unsigned long arch_align_stack(unsigned long sp) | ^~~~~~~~~~~~~~~~ /kisskb/src/arch/um/kernel/reboot.c:45:6: warning: no previous prototype for ‘machine_restart’ [-Wmissing-prototypes] 45 | void machine_restart(char * __unused) | ^~~~~~~~~~~~~~~ /kisskb/src/arch/um/kernel/reboot.c:51:6: warning: no previous prototype for ‘machine_power_off’ [-Wmissing-prototypes] 51 | void machine_power_off(void) | ^~~~~~~~~~~~~~~~~ /kisskb/src/arch/um/kernel/reboot.c:57:6: warning: no previous prototype for ‘machine_halt’ [-Wmissing-prototypes] 57 | void machine_halt(void) | ^~~~~~~~~~~~ /kisskb/src/arch/um/kernel/tlb.c:579:6: warning: no previous prototype for ‘flush_tlb_mm_range’ [-Wmissing-prototypes] 579 | void flush_tlb_mm_range(struct mm_struct *mm, unsigned long start, | ^~~~~~~~~~~~~~~~~~ /kisskb/src/arch/um/kernel/tlb.c:594:6: warning: no previous prototype for ‘force_flush_all’ [-Wmissing-prototypes] 594 | void force_flush_all(void) | ^~~~~~~~~~~~~~~ /kisskb/src/arch/um/kernel/kmsg_dump.c:60:12: warning: no previous prototype for ‘kmsg_dumper_stdout_init’ [-Wmissing-prototypes] 60 | int __init kmsg_dumper_stdout_init(void) | ^~~~~~~~~~~~~~~~~~~~~~~ /kisskb/src/arch/um/kernel/um_arch.c:408:19: warning: no previous prototype for ‘read_initrd’ [-Wmissing-prototypes] 408 | int __init __weak read_initrd(void) | ^~~~~~~~~~~ /kisskb/src/arch/um/kernel/um_arch.c:461:7: warning: no previous prototype for ‘text_poke’ [-Wmissing-prototypes] 461 | void *text_poke(void *addr, const void *opcode, size_t len) | ^~~~~~~~~ /kisskb/src/arch/um/kernel/um_arch.c:473:6: warning: no previous prototype for ‘text_poke_sync’ [-Wmissing-prototypes] 473 | void text_poke_sync(void) | ^~~~~~~~~~~~~~ LINK linux Completed OK # rm -rf /kisskb/build/linus_defconfig_um-x86_64-gcc12 # Build took: 0:00:46.448685