Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Pink column of pixels with the KMS/DRM driver #46

Closed
vanfanel opened this issue Jul 24, 2016 · 6 comments
Closed

Pink column of pixels with the KMS/DRM driver #46

vanfanel opened this issue Jul 24, 2016 · 6 comments

Comments

@vanfanel
Copy link

vanfanel commented Jul 24, 2016

Hi,

Using the old graphics mode, there's no problem, but booting with the VC4 driver shows a pink column of pixels on the console, on the left border of the HDMI TV.
My Pi and TV are running at the recommended mode of 1360x768 pixels.

This is the problem:
https://www.dropbox.com/s/wdf64hb0b26p8ha/20160724_221438.jpg

Any ideas on this issue?

@anholt
Copy link
Owner

anholt commented Aug 12, 2016

Can you attach a full dmesg and /sys/class/drm/card0-HDMI-A-1/edid

Due to limitations of EDID, 1366x768 has to be reported as 1360 or 1368 wide, and there are hacks to see this and do the right thing, which might not be doing the right thing on your display.

@anholt
Copy link
Owner

anholt commented Aug 12, 2016

(also, if you can start X, the output of xrandr when the bug is present would be interesting)

@vanfanel
Copy link
Author

vanfanel commented Aug 15, 2016

@anholt:

Full dmesg:


pi@raspberrypi:~ $ dmesg
[    0.000000] Booting Linux on physical CPU 0x0
[    0.000000] Initializing cgroup subsys cpuset
[    0.000000] Initializing cgroup subsys cpu
[    0.000000] Initializing cgroup subsys cpuacct
[    0.000000] Linux version 4.4.11-v7+ (dc4@dc4-XPS13-9333) (gcc version 4.9.3 (crosstool-NG crosstool-ng-1.22.0-88-g8460611) ) #888 SMP Mon May 23 20:10:33 BST 2016
[    0.000000] CPU: ARMv7 Processor [410fd034] revision 4 (ARMv7), cr=10c5383d
[    0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
[    0.000000] Machine model: Raspberry Pi 3 Model B Rev 1.2
[    0.000000] cma: Reserved 256 MiB at 0x10000000
[    0.000000] Memory policy: Data cache writealloc
[    0.000000] On node 0 totalpages: 225280
[    0.000000] free_area_init_node: node 0, pgdat 808c0dc0, node_mem_map b67ba000
[    0.000000]   Normal zone: 1980 pages used for memmap
[    0.000000]   Normal zone: 0 pages reserved
[    0.000000]   Normal zone: 225280 pages, LIFO batch:31
[    0.000000] [bcm2709_smp_init_cpus] enter (9520->f3003010)
[    0.000000] [bcm2709_smp_init_cpus] ncores=4
[    0.000000] PERCPU: Embedded 13 pages/cpu @b6776000 s22592 r8192 d22464 u53248
[    0.000000] pcpu-alloc: s22592 r8192 d22464 u53248 alloc=13*4096
[    0.000000] pcpu-alloc: [0] 0 [0] 1 [0] 2 [0] 3 
[    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 223300
[    0.000000] Kernel command line: 8250.nr_uarts=0 cma=256M@256M dma.dmachans=0x7f35 bcm2708_fb.fbwidth=1360 bcm2708_fb.fbheight=768 bcm2709.boardrev=0xa02082 bcm2709.serial=0x80aaa8f0 smsc95xx.macaddr=B8:27:EB:AA:A8:F0 bcm2708_fb.fbswap=1 bcm2709.uart_clock=48000000 vc_mem.mem_base=0x3dc00000 vc_mem.mem_size=0x3f000000  dwc_otg.lpm_enable=0 console=ttyS0,115200 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait
[    0.000000] PID hash table entries: 4096 (order: 2, 16384 bytes)
[    0.000000] Dentry cache hash table entries: 131072 (order: 7, 524288 bytes)
[    0.000000] Inode-cache hash table entries: 65536 (order: 6, 262144 bytes)
[    0.000000] Memory: 619672K/901120K available (6344K kernel code, 432K rwdata, 1712K rodata, 476K init, 764K bss, 19304K reserved, 262144K cma-reserved)
[    0.000000] Virtual kernel memory layout:
    vector  : 0xffff0000 - 0xffff1000   (   4 kB)
    fixmap  : 0xffc00000 - 0xfff00000   (3072 kB)
    vmalloc : 0xb7800000 - 0xff800000   (1152 MB)
    lowmem  : 0x80000000 - 0xb7000000   ( 880 MB)
    modules : 0x7f000000 - 0x80000000   (  16 MB)
      .text : 0x80008000 - 0x807e6420   (8058 kB)
      .init : 0x807e7000 - 0x8085e000   ( 476 kB)
      .data : 0x8085e000 - 0x808ca0c8   ( 433 kB)
       .bss : 0x808cd000 - 0x8098c1ac   ( 765 kB)
[    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=4, Nodes=1
[    0.000000] Hierarchical RCU implementation.
[    0.000000]  Build-time adjustment of leaf fanout to 32.
[    0.000000] NR_IRQS:16 nr_irqs:16 16
[    0.000000] Architected cp15 timer(s) running at 19.20MHz (phys).
[    0.000000] clocksource: arch_sys_counter: mask: 0xffffffffffffff max_cycles: 0x46d987e47, max_idle_ns: 440795202767 ns
[    0.000009] sched_clock: 56 bits at 19MHz, resolution 52ns, wraps every 4398046511078ns
[    0.000026] Switching to timer-based delay loop, resolution 52ns
[    0.000290] Console: colour dummy device 80x30
[    0.001345] console [tty1] enabled
[    0.001388] Calibrating delay loop (skipped), value calculated using timer frequency.. 38.40 BogoMIPS (lpj=192000)
[    0.001456] pid_max: default: 32768 minimum: 301
[    0.001794] Mount-cache hash table entries: 2048 (order: 1, 8192 bytes)
[    0.001837] Mountpoint-cache hash table entries: 2048 (order: 1, 8192 bytes)
[    0.002789] Disabling cpuset control group subsystem
[    0.002847] Initializing cgroup subsys io
[    0.002899] Initializing cgroup subsys memory
[    0.002960] Initializing cgroup subsys devices
[    0.003003] Initializing cgroup subsys freezer
[    0.003046] Initializing cgroup subsys net_cls
[    0.003118] CPU: Testing write buffer coherency: ok
[    0.003208] ftrace: allocating 21205 entries in 63 pages
[    0.052399] CPU0: update cpu_capacity 1024
[    0.052461] CPU0: thread -1, cpu 0, socket 0, mpidr 80000000
[    0.052496] [bcm2709_smp_prepare_cpus] enter
[    0.052655] Setting up static identity map for 0x8240 - 0x8274
[    0.054323] [bcm2709_boot_secondary] cpu:1 started (0) 18
[    0.054685] [bcm2709_secondary_init] enter cpu:1
[    0.054728] CPU1: update cpu_capacity 1024
[    0.054734] CPU1: thread -1, cpu 1, socket 0, mpidr 80000001
[    0.055114] [bcm2709_boot_secondary] cpu:2 started (0) 17
[    0.055376] [bcm2709_secondary_init] enter cpu:2
[    0.055396] CPU2: update cpu_capacity 1024
[    0.055402] CPU2: thread -1, cpu 2, socket 0, mpidr 80000002
[    0.055765] [bcm2709_boot_secondary] cpu:3 started (0) 16
[    0.055947] [bcm2709_secondary_init] enter cpu:3
[    0.055967] CPU3: update cpu_capacity 1024
[    0.055973] CPU3: thread -1, cpu 3, socket 0, mpidr 80000003
[    0.056033] Brought up 4 CPUs
[    0.056131] SMP: Total of 4 processors activated (153.60 BogoMIPS).
[    0.056160] CPU: All CPU(s) started in HYP mode.
[    0.056186] CPU: Virtualization extensions available.
[    0.056817] devtmpfs: initialized
[    0.067051] VFP support v0.3: implementor 41 architecture 3 part 40 variant 3 rev 4
[    0.067425] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
[    0.077792] pinctrl core: initialized pinctrl subsystem
[    0.078403] NET: Registered protocol family 16
[    0.083691] DMA: preallocated 4096 KiB pool for atomic coherent allocations
[    0.092081] hw-breakpoint: found 5 (+1 reserved) breakpoint and 4 watchpoint registers.
[    0.092130] hw-breakpoint: maximum watchpoint size is 8 bytes.
[    0.092309] Serial: AMBA PL011 UART driver
[    0.092474] uart-pl011 3f201000.uart: could not find pctldev for node /soc/gpio@7e200000/uart0_pins, deferring probe
[    0.092682] bcm2835-mbox 3f00b880.mailbox: mailbox enabled
[    0.163179] bcm2835-dma 3f007000.dma: DMA legacy API manager at f3007000, dmachans=0x1
[    0.164896] SCSI subsystem initialized
[    0.165094] usbcore: registered new interface driver usbfs
[    0.165205] usbcore: registered new interface driver hub
[    0.165319] usbcore: registered new device driver usb
[    0.172050] raspberrypi-firmware soc:firmware: Attached to firmware from 2016-05-20 19:01
[    0.199237] clocksource: Switched to clocksource arch_sys_counter
[    0.244513] FS-Cache: Loaded
[    0.244804] CacheFiles: Loaded
[    0.257084] NET: Registered protocol family 2
[    0.257960] TCP established hash table entries: 8192 (order: 3, 32768 bytes)
[    0.258097] TCP bind hash table entries: 8192 (order: 4, 65536 bytes)
[    0.258308] TCP: Hash tables configured (established 8192 bind 8192)
[    0.258422] UDP hash table entries: 512 (order: 2, 16384 bytes)
[    0.258490] UDP-Lite hash table entries: 512 (order: 2, 16384 bytes)
[    0.258735] NET: Registered protocol family 1
[    0.259068] RPC: Registered named UNIX socket transport module.
[    0.259100] RPC: Registered udp transport module.
[    0.259128] RPC: Registered tcp transport module.
[    0.259155] RPC: Registered tcp NFSv4.1 backchannel transport module.
[    0.260286] hw perfevents: enabled with armv7_cortex_a7 PMU driver, 7 counters available
[    0.261651] futex hash table entries: 1024 (order: 4, 65536 bytes)
[    0.274928] VFS: Disk quotas dquot_6.6.0
[    0.275255] VFS: Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)
[    0.277454] FS-Cache: Netfs 'nfs' registered for caching
[    0.278370] NFS: Registering the id_resolver key type
[    0.278432] Key type id_resolver registered
[    0.278460] Key type id_legacy registered
[    0.280847] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 252)
[    0.281011] io scheduler noop registered
[    0.281049] io scheduler deadline registered (default)
[    0.281123] io scheduler cfq registered
[    1.468683] bcm2835-rng 3f104000.rng: hwrng registered
[    1.468894] vc-cma: Videocore CMA driver
[    1.468931] vc-cma: vc_cma_base      = 0x00000000
[    1.468961] vc-cma: vc_cma_size      = 0x00000000 (0 MiB)
[    1.468989] vc-cma: vc_cma_initial   = 0x00000000 (0 MiB)
[    1.469298] vc-mem: phys_addr:0x00000000 mem_base=0x3dc00000 mem_size:0x3f000000(1008 MiB)
[    1.483986] brd: module loaded
[    1.492555] loop: module loaded
[    1.494251] vchiq: vchiq_init_state: slot_zero = 0x90400000, is_master = 0
[    1.495700] Loading iSCSI transport class v2.0-870.
[    1.496346] usbcore: registered new interface driver smsc95xx
[    1.496415] dwc_otg: version 3.00a 10-AUG-2012 (platform bus)
[    1.696692] Core Release: 2.80a
[    1.696723] Setting default values for core params
[    1.696774] Finished setting default values for core params
[    1.897157] Using Buffer DMA mode
[    1.897185] Periodic Transfer Interrupt Enhancement - disabled
[    1.897214] Multiprocessor Interrupt Enhancement - disabled
[    1.897243] OTG VER PARAM: 0, OTG VER FLAG: 0
[    1.897276] Dedicated Tx FIFOs mode
[    1.897614] WARN::dwc_otg_hcd_init:1047: FIQ DMA bounce buffers: virt = 0x90448000 dma = 0xd0448000 len=9024
[    1.897682] FIQ FSM acceleration enabled for :
Non-periodic Split Transactions
Periodic Split Transactions
High-Speed Isochronous Endpoints
Interrupt/Control Split Transaction hack enabled
[    1.897796] dwc_otg: Microframe scheduler enabled
[    1.897843] WARN::hcd_init_fiq:413: FIQ on core 1 at 0x804464e4
[    1.897880] WARN::hcd_init_fiq:414: FIQ ASM at 0x80446854 length 36
[    1.897917] WARN::hcd_init_fiq:439: MPHI regs_base at 0xb789a000
[    1.898002] dwc_otg 3f980000.usb: DWC OTG Controller
[    1.898058] dwc_otg 3f980000.usb: new USB bus registered, assigned bus number 1
[    1.898127] dwc_otg 3f980000.usb: irq 62, io mem 0x00000000
[    1.898199] Init: Port Power? op_state=1
[    1.898224] Init: Power Port (0)
[    1.898447] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002
[    1.898485] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[    1.898532] usb usb1: Product: DWC OTG Controller
[    1.898563] usb usb1: Manufacturer: Linux 4.4.11-v7+ dwc_otg_hcd
[    1.898596] usb usb1: SerialNumber: 3f980000.usb
[    1.899435] hub 1-0:1.0: USB hub found
[    1.899496] hub 1-0:1.0: 1 port detected
[    1.900167] dwc_otg: FIQ enabled
[    1.900176] dwc_otg: NAK holdoff enabled
[    1.900184] dwc_otg: FIQ split-transaction FSM enabled
[    1.900215] Module dwc_common_port init
[    1.900443] usbcore: registered new interface driver usb-storage
[    1.900708] mousedev: PS/2 mouse device common for all mice
[    1.901471] bcm2835-cpufreq: min=600000 max=1200000
[    1.901788] sdhci: Secure Digital Host Controller Interface driver
[    1.901820] sdhci: Copyright(c) Pierre Ossman
[    1.902164] sdhost: log_buf @ 90446000 (d0446000)
[    1.979267] mmc0: sdhost-bcm2835 loaded - DMA enabled (>1)
[    1.981556] mmc-bcm2835 3f300000.mmc: mmc_debug:0 mmc_debug2:0
[    1.981591] mmc-bcm2835 3f300000.mmc: DMA channel allocated
[    2.039357] sdhci-pltfm: SDHCI platform and OF driver helper
[    2.039780] ledtrig-cpu: registered to indicate activity on CPUs
[    2.039921] hidraw: raw HID events driver (C) Jiri Kosina
[    2.040112] usbcore: registered new interface driver usbhid
[    2.040142] usbhid: USB HID core driver
[    2.042056] Initializing XFRM netlink socket
[    2.042113] NET: Registered protocol family 17
[    2.042280] Key type dns_resolver registered
[    2.042822] Registering SWP/SWPB emulation handler
[    2.043653] registered taskstats version 1
[    2.043846] vc-sm: Videocore shared memory driver
[    2.043880] [vc_sm_connected_init]: start
[    2.044365] [vc_sm_connected_init]: end - returning 0
[    2.045717] 3f201000.uart: ttyAMA0 at MMIO 0x3f201000 (irq = 87, base_baud = 0) is a PL011 rev2
[    2.046143] of_cfs_init
[    2.046239] of_cfs_init: OK
[    2.049727] Waiting for root device /dev/mmcblk0p2...
[    2.077484] mmc0: host does not support reading read-only switch, assuming write-enable
[    2.080389] mmc0: new high speed SDHC card at address aaaa
[    2.081032] mmcblk0: mmc0:aaaa SU08G 7.40 GiB
[    2.082339]  mmcblk0: p1 p2
[    2.099348] Indeed it is in host mode hprt0 = 00021501
[    2.100221] mmc1: queuing unknown CIS tuple 0x80 (2 bytes)
[    2.101796] mmc1: queuing unknown CIS tuple 0x80 (3 bytes)
[    2.103371] mmc1: queuing unknown CIS tuple 0x80 (3 bytes)
[    2.106176] mmc1: queuing unknown CIS tuple 0x80 (7 bytes)
[    2.170559] EXT4-fs (mmcblk0p2): mounted filesystem with ordered data mode. Opts: (null)
[    2.170647] VFS: Mounted root (ext4 filesystem) readonly on device 179:2.
[    2.171298] devtmpfs: mounted
[    2.172078] Freeing unused kernel memory: 476K (807e7000 - 8085e000)
[    2.197106] mmc1: new high speed SDIO card at address 0001
[    2.279287] usb 1-1: new high-speed USB device number 2 using dwc_otg
[    2.279459] Indeed it is in host mode hprt0 = 00001101
[    2.399214] random: systemd urandom read with 31 bits of entropy available
[    2.403306] systemd[1]: systemd 215 running in system mode. (+PAM +AUDIT +SELINUX +IMA +SYSVINIT +LIBCRYPTSETUP +GCRYPT +ACL +XZ -SECCOMP -APPARMOR)
[    2.403721] systemd[1]: Detected architecture 'arm'.
[    2.479573] usb 1-1: New USB device found, idVendor=0424, idProduct=9514
[    2.479623] usb 1-1: New USB device strings: Mfr=0, Product=0, SerialNumber=0
[    2.480411] hub 1-1:1.0: USB hub found
[    2.480526] hub 1-1:1.0: 5 ports detected
[    2.520653] NET: Registered protocol family 10
[    2.522118] systemd[1]: Inserted module 'ipv6'
[    2.525116] systemd[1]: Set hostname to <raspberrypi>.
[    2.759283] usb 1-1.1: new high-speed USB device number 3 using dwc_otg
[    2.859621] usb 1-1.1: New USB device found, idVendor=0424, idProduct=ec00
[    2.859670] usb 1-1.1: New USB device strings: Mfr=0, Product=0, SerialNumber=0
[    2.862582] smsc95xx v1.0.4
[    2.893270] systemd[1]: Starting Forward Password Requests to Wall Directory Watch.
[    2.893663] systemd[1]: Started Forward Password Requests to Wall Directory Watch.
[    2.893782] systemd[1]: Starting Remote File Systems (Pre).
[    2.894219] systemd[1]: Reached target Remote File Systems (Pre).
[    2.894432] systemd[1]: Starting Arbitrary Executable File Formats File System Automount Point.
[    2.895093] systemd[1]: Set up automount Arbitrary Executable File Formats File System Automount Point.
[    2.895214] systemd[1]: Starting Encrypted Volumes.
[    2.895468] systemd[1]: Reached target Encrypted Volumes.
[    2.895560] systemd[1]: Starting Swap.
[    2.895804] systemd[1]: Reached target Swap.
[    2.895899] systemd[1]: Expecting device dev-mmcblk0p1.device...
[    2.896140] systemd[1]: Starting Root Slice.
[    2.896459] systemd[1]: Created slice Root Slice.
[    2.896552] systemd[1]: Starting User and Session Slice.
[    2.896964] systemd[1]: Created slice User and Session Slice.
[    2.897060] systemd[1]: Starting Delayed Shutdown Socket.
[    2.897409] systemd[1]: Listening on Delayed Shutdown Socket.
[    2.897504] systemd[1]: Starting /dev/initctl Compatibility Named Pipe.
[    2.897896] systemd[1]: Listening on /dev/initctl Compatibility Named Pipe.
[    2.897993] systemd[1]: Starting Journal Socket (/dev/log).
[    2.898359] systemd[1]: Listening on Journal Socket (/dev/log).
[    2.898476] systemd[1]: Starting udev Control Socket.
[    2.898812] systemd[1]: Listening on udev Control Socket.
[    2.898921] systemd[1]: Starting udev Kernel Socket.
[    2.899276] systemd[1]: Listening on udev Kernel Socket.
[    2.899542] systemd[1]: Starting Journal Socket.
[    2.900598] systemd[1]: Listening on Journal Socket.
[    2.901056] systemd[1]: Starting System Slice.
[    2.901810] systemd[1]: Created slice System Slice.
[    2.901960] systemd[1]: Starting File System Check on Root Device...
[    2.922714] smsc95xx 1-1.1:1.0 eth0: register 'smsc95xx' at usb-3f980000.usb-1.1, smsc95xx USB 2.0 Ethernet, b8:27:eb:aa:a8:f0
[    2.949867] systemd[1]: Starting system-systemd\x2dfsck.slice.
[    2.950572] systemd[1]: Created slice system-systemd\x2dfsck.slice.
[    2.950747] systemd[1]: Starting system-autologin.slice.
[    2.951338] systemd[1]: Created slice system-autologin.slice.
[    2.951551] systemd[1]: Starting Increase datagram queue length...
[    2.954335] systemd[1]: Starting Restore / save the current clock...
[    2.963458] systemd[1]: Mounted Huge Pages File System.
[    2.963902] systemd[1]: Starting Create list of required static device nodes for the current kernel...
[    2.981089] systemd[1]: Starting Load Kernel Modules...
[    2.999354] usb 1-1.3: new low-speed USB device number 4 using dwc_otg
[    2.999621] systemd[1]: Started Set Up Additional Binary Formats.
[    3.000180] systemd[1]: Mounting Debug File System...
[    3.003050] systemd[1]: Starting udev Coldplug all Devices...
[    3.006791] systemd[1]: Mounting POSIX Message Queue File System...
[    3.009953] systemd[1]: Starting Slices.
[    3.010228] systemd[1]: Reached target Slices.
[    3.014440] systemd[1]: Started Create list of required static device nodes for the current kernel.
[    3.035466] systemd[1]: Starting Create Static Device Nodes in /dev...
[    3.105191] usb 1-1.3: New USB device found, idVendor=11ff, idProduct=3341
[    3.105242] usb 1-1.3: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[    3.105290] usb 1-1.3: Product: USB Joystick     
[    3.105321] usb 1-1.3: Manufacturer: GreenAsia Inc.   
[    3.107228] fuse init (API version 7.23)
[    3.113234] input: GreenAsia Inc.    USB Joystick      as /devices/platform/soc/3f980000.usb/usb1/1-1/1-1.3/1-1.3:1.0/0003:11FF:3341.0001/input/input0
[    3.113563] hid-generic 0003:11FF:3341.0001: input,hidraw0: USB HID v1.10 Joystick [GreenAsia Inc.    USB Joystick     ] on usb-3f980000.usb-1.3/input0
[    3.121638] systemd[1]: Mounted POSIX Message Queue File System.
[    3.122246] systemd[1]: Mounted Debug File System.
[    3.125773] systemd[1]: Started Increase datagram queue length.
[    3.140803] i2c /dev entries driver
[    3.162116] systemd[1]: Started Load Kernel Modules.
[    3.177114] systemd[1]: Time has been changed
[    3.189146] systemd[1]: Started Restore / save the current clock.
[    3.189337] usb 1-1.4: new full-speed USB device number 5 using dwc_otg
[    3.201935] systemd[1]: Started Create Static Device Nodes in /dev.
[    3.224345] systemd[1]: Started udev Coldplug all Devices.
[    3.237570] systemd[1]: Started File System Check on Root Device.
[    3.294214] usb 1-1.4: New USB device found, idVendor=046d, idProduct=c52f
[    3.294264] usb 1-1.4: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[    3.294312] usb 1-1.4: Product: USB Receiver
[    3.294342] usb 1-1.4: Manufacturer: Logitech
[    3.300757] input: Logitech USB Receiver as /devices/platform/soc/3f980000.usb/usb1/1-1/1-1.4/1-1.4:1.0/0003:046D:C52F.0002/input/input1
[    3.301277] hid-generic 0003:046D:C52F.0002: input,hidraw1: USB HID v1.11 Mouse [Logitech USB Receiver] on usb-3f980000.usb-1.4/input0
[    3.307294] input: Logitech USB Receiver as /devices/platform/soc/3f980000.usb/usb1/1-1/1-1.4/1-1.4:1.1/0003:046D:C52F.0003/input/input2
[    3.335203] systemd[1]: Starting udev Kernel Device Manager...
[    3.359859] hid-generic 0003:046D:C52F.0003: input,hiddev0,hidraw2: USB HID v1.11 Device [Logitech USB Receiver] on usb-3f980000.usb-1.4/input1
[    3.360242] systemd[1]: Mounting Configuration File System...
[    3.363463] systemd[1]: Starting Apply Kernel Variables...
[    3.366525] systemd[1]: Mounting FUSE Control File System...
[    3.370018] systemd[1]: Starting Syslog Socket.
[    3.370757] systemd[1]: Listening on Syslog Socket.
[    3.371001] systemd[1]: Starting Journal Service...
[    3.375536] systemd[1]: Started Journal Service.
[    3.383341] systemd-udevd[130]: starting version 215
[    3.439312] usb 1-1.5: new full-speed USB device number 6 using dwc_otg
[    3.556789] usb 1-1.5: New USB device found, idVendor=046d, idProduct=c52b
[    3.556813] usb 1-1.5: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[    3.556826] usb 1-1.5: Product: USB Receiver
[    3.556838] usb 1-1.5: Manufacturer: Logitech
[    3.567524] input: Logitech USB Receiver as /devices/platform/soc/3f980000.usb/usb1/1-1/1-1.5/1-1.5:1.0/0003:046D:C52B.0004/input/input3
[    3.620727] hid-generic 0003:046D:C52B.0004: input,hidraw3: USB HID v1.11 Keyboard [Logitech USB Receiver] on usb-3f980000.usb-1.5/input0
[    3.633758] input: Logitech USB Receiver as /devices/platform/soc/3f980000.usb/usb1/1-1/1-1.5/1-1.5:1.1/0003:046D:C52B.0005/input/input4
[    3.694032] hid-generic 0003:046D:C52B.0005: input,hiddev0,hidraw4: USB HID v1.11 Mouse [Logitech USB Receiver] on usb-3f980000.usb-1.5/input1
[    3.711019] hid-generic 0003:046D:C52B.0006: hiddev0,hidraw5: USB HID v1.11 Device [Logitech USB Receiver] on usb-3f980000.usb-1.5/input2
[    3.897675] bcm2835-wdt 3f100000.watchdog: Broadcom BCM2835 watchdog timer
[    3.923614] gpiomem-bcm2835 3f200000.gpiomem: Initialised: Registers at 0x3f200000
[    3.930984] bcm2708_i2c 3f805000.i2c: BSC2 Controller at 0x3f805000 (irq 83) (baudrate 100000)
[    4.106480] EXT4-fs (mmcblk0p2): re-mounted. Opts: (null)
[    4.125054] [drm] Initialized drm 1.1.0 20060810
[    4.190626] brcmfmac: brcmf_sdio_drivestrengthinit: No SDIO Drive strength init done for chip 43430 rev 1 pmurev 24
[    4.194094] usbcore: registered new interface driver brcmfmac
[    4.195505] vc4-drm soc:gpu: bound 3f902000.hdmi (ops vc4_hdmi_ops [vc4])
[    4.195832] vc4-drm soc:gpu: bound 3f206000.pixelvalve (ops vc4_crtc_ops [vc4])
[    4.196051] vc4-drm soc:gpu: bound 3f207000.pixelvalve (ops vc4_crtc_ops [vc4])
[    4.196213] vc4-drm soc:gpu: bound 3f807000.pixelvalve (ops vc4_crtc_ops [vc4])
[    4.196540] vc4-drm soc:gpu: bound 3f400000.hvs (ops vc4_hvs_ops [vc4])
[    4.197479] vc4-drm soc:gpu: bound 3fc00000.v3d (ops vc4_v3d_ops [vc4])
[    4.213176] [drm] Supports vblank timestamp caching Rev 2 (21.10.2013).
[    4.213197] [drm] No driver support for vblank timestamp query.
[    4.311414] random: nonblocking pool is initialized
[    4.316515] Console: switching to colour frame buffer device 170x48
[    4.334394] brcmfmac: brcmf_c_preinit_dcmds: Firmware version = wl0: Dec 15 2015 18:10:45 version 7.45.41.23 (r606571) FWID 01-cc4eda9c
[    4.338544] vc4-drm soc:gpu: fb0:  frame buffer device
[    4.355610] brcmfmac: brcmf_cfg80211_reg_notifier: not a ISO3166 code
[    4.510767] brcmfmac: brcmf_cfg80211_reg_notifier: not a ISO3166 code
[    4.510799] cfg80211: World regulatory domain updated:
[    4.510808] cfg80211:  DFS Master region: unset
[    4.510820] cfg80211:   (start_freq - end_freq @ bandwidth), (max_antenna_gain, max_eirp), (dfs_cac_time)
[    4.510834] cfg80211:   (2402000 KHz - 2472000 KHz @ 40000 KHz), (N/A, 2000 mBm), (N/A)
[    4.510846] cfg80211:   (2457000 KHz - 2482000 KHz @ 40000 KHz), (N/A, 2000 mBm), (N/A)
[    4.510860] cfg80211:   (2474000 KHz - 2494000 KHz @ 20000 KHz), (N/A, 2000 mBm), (N/A)
[    4.510875] cfg80211:   (5170000 KHz - 5250000 KHz @ 80000 KHz, 160000 KHz AUTO), (N/A, 2000 mBm), (N/A)
[    4.510889] cfg80211:   (5250000 KHz - 5330000 KHz @ 80000 KHz, 160000 KHz AUTO), (N/A, 2000 mBm), (0 s)
[    4.510902] cfg80211:   (5490000 KHz - 5730000 KHz @ 160000 KHz), (N/A, 2000 mBm), (0 s)
[    4.510914] cfg80211:   (5735000 KHz - 5835000 KHz @ 80000 KHz), (N/A, 2000 mBm), (N/A)
[    4.510926] cfg80211:   (57240000 KHz - 63720000 KHz @ 2160000 KHz), (N/A, 0 mBm), (N/A)
[    4.733169] systemd-journald[134]: Received request to flush runtime journal from PID 1
[    5.561807] brcmfmac: brcmf_add_if: ERROR: netdev:wlan0 already exists
[    5.561835] brcmfmac: brcmf_add_if: ignore IF event
[    5.566690] IPv6: ADDRCONF(NETDEV_UP): wlan0: link is not ready
[    5.566735] brcmfmac: power management disabled
[    5.882799] cfg80211: Regulatory domain changed to country: GB
[    5.882821] cfg80211:  DFS Master region: ETSI
[    5.882831] cfg80211:   (start_freq - end_freq @ bandwidth), (max_antenna_gain, max_eirp), (dfs_cac_time)
[    5.882846] cfg80211:   (2402000 KHz - 2482000 KHz @ 40000 KHz), (N/A, 2000 mBm), (N/A)
[    5.882861] cfg80211:   (5170000 KHz - 5250000 KHz @ 80000 KHz, 160000 KHz AUTO), (N/A, 2000 mBm), (N/A)
[    5.882875] cfg80211:   (5250000 KHz - 5330000 KHz @ 80000 KHz, 160000 KHz AUTO), (N/A, 2000 mBm), (0 s)
[    5.882888] cfg80211:   (5490000 KHz - 5710000 KHz @ 160000 KHz), (N/A, 2700 mBm), (0 s)
[    5.882900] cfg80211:   (57000000 KHz - 66000000 KHz @ 2160000 KHz), (N/A, 4000 mBm), (N/A)
[    6.201034] uart-pl011 3f201000.uart: no DMA platform data
[    6.489559] Adding 102396k swap on /var/swap.  Priority:-1 extents:1 across:102396k SSFS
[    6.691899] smsc95xx 1-1.1:1.0 eth0: hardware isn't capable of remote wakeup
[    6.692425] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
[    8.238930] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
[    8.240087] smsc95xx 1-1.1:1.0 eth0: link up, 100Mbps, full-duplex, lpa 0xCDE1
[   10.758724] Bluetooth: Core ver 2.21
[   10.758813] NET: Registered protocol family 31
[   10.758824] Bluetooth: HCI device and connection manager initialized
[   10.758849] Bluetooth: HCI socket layer initialized
[   10.758867] Bluetooth: L2CAP socket layer initialized
[   10.758905] Bluetooth: SCO socket layer initialized
[   10.768497] Bluetooth: HCI UART driver ver 2.3
[   10.768531] Bluetooth: HCI UART protocol H4 registered
[   10.768540] Bluetooth: HCI UART protocol Three-wire (H5) registered
[   10.768776] Bluetooth: HCI UART protocol BCM registered
[   11.023643] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[   11.023664] Bluetooth: BNEP filters: protocol multicast
[   11.023687] Bluetooth: BNEP socket layer initialized

However, /sys/class/drm/card0-HDMI-A-1/edid seems to contain non-text symbols, I guess it has to be decoded somehow, here it is mine:

https://www.dropbox.com/s/ao2vfdnvkyyhraa/pink_line_monitor_pi_edid?dl=0

I have set up a fresh raspbian jessie SD to test this (I never use X for anything, so it's not on my system), so I have access to xrandr:

Screen 0: minimum 320 x 200, current 1360 x 768, maximum 2048 x 2048
HDMI-0 connected 1360x768+0+0 (normal left inverted right x axis y axis) 580mm x 320mm
   1360x768      60.02*+
   1920x1080     60.00    50.00    59.94    30.00    25.00    24.00    29.97    23.98  
   1280x1024     75.02  
   1280x720      60.00    50.00    59.94  
   1024x768      75.08    60.00  
   800x600       75.00    60.32  
   720x576       50.00  
   720x480       60.00    59.94  
   640x480       60.00    59.94  

Hope it helps! :)

@anholt
Copy link
Owner

anholt commented Aug 15, 2016

There's a link just below the comment entry box to attach files; that was the intent (and is required for edid).

The xrandr output there definitely shows that the 1366 hack isn't taking effect.

@vanfanel
Copy link
Author

@anholt: sorry, hadn't seen the attachment button, I am attaching the edid on this message.
So, if I understand well, the 1366 hack not taking effect is to blame for the pink column? Is there anything I can do about it?
edid.zip

@vanfanel
Copy link
Author

vanfanel commented Aug 17, 2016

@anholt: I have built and installed today's git kernel from the raspberrypi/linux repository and the pink column is no more.

EDIT: Simply updating to current kernel via rpi-update fixes this issue, too.

Thanks, Anholt 👍

anholt pushed a commit that referenced this issue Apr 8, 2017
For our fake dma objects we can leak the underlying gem object if we
fail to pin our "backing storage".

[   39.952618] =============================================================================
[   39.952625] BUG mock_object (Tainted: G     U         ): Objects remaining in mock_object on __kmem_cache_shutdown()
[   39.952629] -----------------------------------------------------------------------------

[   39.952633] Disabling lock debugging due to kernel taint
[   39.952635] INFO: Slab 0xffffea00086c6a00 objects=21 used=1 fp=0xffff88021b1abc00 flags=0x5fff8000008100
[   39.952640] CPU: 1 PID: 1258 Comm: drv_selftest Tainted: G    BU          4.10.0+ #46
[   39.952641] Hardware name: Apple Inc. MacBookPro11,1/Mac-189A3D4F975D5FFC, BIOS MBP111.88Z.0138.B17.1602221718 02/22/2016
[   39.952642] Call Trace:
[   39.952648]  dump_stack+0x4d/0x6f
[   39.952651]  slab_err+0x9d/0xb0
[   39.952654]  ? ksm_migrate_page+0xe0/0xe0
[   39.952657]  ? on_each_cpu_cond+0x9a/0xc0
[   39.952658]  ? __kmalloc+0x1af/0x1c0
[   39.952660]  ? __kmem_cache_shutdown+0x173/0x3e0
[   39.952661]  __kmem_cache_shutdown+0x196/0x3e0
[   39.952664]  kmem_cache_destroy+0xa0/0x150
[   39.952708]  mock_device_release+0x113/0x140 [i915]
[   39.952726]  drm_dev_release+0x20/0x40 [drm]
[   39.952735]  drm_dev_unref+0x23/0x30 [drm]
[   39.952768]  i915_gem_gtt_mock_selftests+0x55/0x70 [i915]
[   39.952803]  __run_selftests+0x169/0x1c0 [i915]
[   39.952805]  ? 0xffffffffa0151000
[   39.952840]  i915_mock_selftests+0x30/0x60 [i915]
[   39.952869]  i915_init+0xc/0x78 [i915]
[   39.952870]  ? 0xffffffffa0151000
[   39.952872]  do_one_initcall+0x43/0x170
[   39.952874]  ? __vunmap+0x81/0xd0
[   39.952875]  ? kmem_cache_alloc_trace+0x37/0x170
[   39.952877]  ? do_init_module+0x27/0x1f8
[   39.952879]  do_init_module+0x5f/0x1f8
[   39.952881]  load_module+0x2423/0x29b0
[   39.952882]  ? __symbol_put+0x40/0x40
[   39.952885]  ? kernel_read_file+0x1a3/0x1c0
[   39.952887]  SYSC_finit_module+0xbc/0xf0
[   39.952889]  SyS_finit_module+0xe/0x10
[   39.952892]  entry_SYSCALL_64_fastpath+0x13/0x94

v2: use onion teardown and favour i915_gem_object_put

Fixes: 8d28ba4 ("drm/i915: Exercise filling the top/bottom portions of the ppgtt")
Signed-off-by: Matthew Auld <[email protected]>
Cc: Chris Wilson <[email protected]>
Cc: Joonas Lahtinen <[email protected]>
Reviewed-by: Joonas Lahtinen <[email protected]>
Reviewed-by: Chris Wilson <[email protected]>
Link: http://patchwork.freedesktop.org/patch/msgid/[email protected]
Signed-off-by: Chris Wilson <[email protected]>
anholt pushed a commit that referenced this issue May 4, 2017
… await

Although we do check the completion-status of the request before
actually adding a wait on it (either to its submit fence or its
completion dma-fence), we currently do not check before adding it to the
dependency lists.

In fact, without checking for a completed request we may try to use the
signaler after it has been retired and its dependency tree freed:

[   60.044057] BUG: KASAN: use-after-free in __list_add_valid+0x1d/0xd0 at addr ffff880348c9e6a0
[   60.044118] Read of size 8 by task gem_exec_fence/530
[   60.044164] CPU: 1 PID: 530 Comm: gem_exec_fence Tainted: G            E   4.11.0-rc7+ #46
[   60.044226] Hardware name: ��������������������������������� ���������������������������������/���������������������������������, BIOS RYBDWi35.86A.0246.2
[   60.044290] Call Trace:
[   60.044337]  dump_stack+0x4d/0x6a
[   60.044383]  kasan_object_err+0x21/0x70
[   60.044435]  kasan_report+0x225/0x4e0
[   60.044488]  ? __list_add_valid+0x1d/0xd0
[   60.044534]  ? kasan_kmalloc+0xad/0xe0
[   60.044587]  __asan_load8+0x5e/0x70
[   60.044639]  __list_add_valid+0x1d/0xd0
[   60.044788]  __i915_priotree_add_dependency+0x67/0x130 [i915]
[   60.044895]  i915_gem_request_await_request+0xa8/0x370 [i915]
[   60.044974]  i915_gem_request_await_dma_fence+0x129/0x140 [i915]
[   60.045049]  i915_gem_do_execbuffer.isra.37+0xb0a/0x26b0 [i915]
[   60.045077]  ? save_stack+0xb1/0xd0
[   60.045105]  ? save_stack_trace+0x1b/0x20
[   60.045132]  ? save_stack+0x46/0xd0
[   60.045158]  ? kasan_kmalloc+0xad/0xe0
[   60.045184]  ? __kmalloc+0xd8/0x670
[   60.045229]  ? drm_ioctl+0x359/0x640 [drm]
[   60.045256]  ? SyS_ioctl+0x41/0x70
[   60.045330]  ? i915_vma_move_to_active+0x540/0x540 [i915]
[   60.045360]  ? tty_insert_flip_string_flags+0xa1/0xf0
[   60.045387]  ? tty_flip_buffer_push+0x63/0x70
[   60.045414]  ? remove_wait_queue+0xa9/0xc0
[   60.045441]  ? kasan_unpoison_shadow+0x35/0x50
[   60.045467]  ? kasan_kmalloc+0xad/0xe0
[   60.045494]  ? kasan_check_write+0x14/0x20
[   60.045568]  i915_gem_execbuffer2+0xdb/0x2a0 [i915]
[   60.045616]  drm_ioctl+0x359/0x640 [drm]
[   60.045705]  ? i915_gem_execbuffer+0x5a0/0x5a0 [i915]
[   60.045751]  ? drm_version+0x150/0x150 [drm]
[   60.045778]  ? compat_start_thread+0x60/0x60
[   60.045805]  ? plist_del+0xda/0x1a0
[   60.045833]  do_vfs_ioctl+0x12e/0x910
[   60.045860]  ? ioctl_preallocate+0x130/0x130
[   60.045886]  ? pci_mmcfg_check_reserved+0xc0/0xc0
[   60.045913]  ? vfs_write+0x196/0x240
[   60.045939]  ? __fget_light+0xa7/0xc0
[   60.045965]  SyS_ioctl+0x41/0x70
[   60.045991]  entry_SYSCALL_64_fastpath+0x17/0x98
[   60.046017] RIP: 0033:0x7feb2baefc47
[   60.046042] RSP: 002b:00007fff56d28e58 EFLAGS: 00000246 ORIG_RAX: 0000000000000010
[   60.046075] RAX: ffffffffffffffda RBX: 00007fff56d290a8 RCX: 00007feb2baefc47
[   60.046102] RDX: 00007fff56d29050 RSI: 00000000c0406469 RDI: 0000000000000003
[   60.046129] RBP: 00007fff56d29050 R08: 000055ecc4cd27d0 R09: 00007feb2bda8600
[   60.046154] R10: 0000000000000073 R11: 0000000000000246 R12: 00000000c0406469
[   60.046177] R13: 0000000000000003 R14: 000000000000000f R15: 0000000000000099
[   60.046203] Object at ffff880348c9e680, in cache i915_dependency size: 64
[   60.046225] Allocated:
[   60.046246] PID = 530
[   60.046269]  save_stack_trace+0x1b/0x20
[   60.046292]  save_stack+0x46/0xd0
[   60.046318]  kasan_kmalloc+0xad/0xe0
[   60.046343]  kasan_slab_alloc+0x12/0x20
[   60.046368]  kmem_cache_alloc+0xab/0x650
[   60.046445]  i915_gem_request_await_request+0x88/0x370 [i915]
[   60.046559]  i915_gem_request_await_dma_fence+0x129/0x140 [i915]
[   60.046705]  i915_gem_do_execbuffer.isra.37+0xb0a/0x26b0 [i915]
[   60.046849]  i915_gem_execbuffer2+0xdb/0x2a0 [i915]
[   60.046936]  drm_ioctl+0x359/0x640 [drm]
[   60.046987]  do_vfs_ioctl+0x12e/0x910
[   60.047038]  SyS_ioctl+0x41/0x70
[   60.047090]  entry_SYSCALL_64_fastpath+0x17/0x98
[   60.047139] Freed:
[   60.047179] PID = 530
[   60.047223]  save_stack_trace+0x1b/0x20
[   60.047269]  save_stack+0x46/0xd0
[   60.047317]  kasan_slab_free+0x72/0xc0
[   60.047366]  kmem_cache_free+0x39/0x160
[   60.047512]  i915_gem_request_retire+0x83f/0x930 [i915]
[   60.047657]  i915_gem_request_alloc+0x166/0x600 [i915]
[   60.047799]  i915_gem_do_execbuffer.isra.37+0xad8/0x26b0 [i915]
[   60.047897]  i915_gem_execbuffer2+0xdb/0x2a0 [i915]
[   60.047942]  drm_ioctl+0x359/0x640 [drm]
[   60.047968]  do_vfs_ioctl+0x12e/0x910
[   60.047993]  SyS_ioctl+0x41/0x70
[   60.048019]  entry_SYSCALL_64_fastpath+0x17/0x98
[   60.048044] Memory state around the buggy address:
[   60.048066]  ffff880348c9e580: 00 00 00 00 00 00 00 00 fc fc fc fc fc fc fc fc
[   60.048105]  ffff880348c9e600: 00 00 00 00 00 00 00 00 fc fc fc fc fc fc fc fc
[   60.048138] >ffff880348c9e680: fb fb fb fb fb fb fb fb fc fc fc fc fc fc fc fc
[   60.048170]                                ^
[   60.048191]  ffff880348c9e700: 00 00 00 00 00 00 00 00 fc fc fc fc fc fc fc fc
[   60.048225]  ffff880348c9e780: 00 00 00 00 00 00 00 00 fc fc fc fc fc fc fc fc

Note to hit the use-after-free requires us to be passed back a request
via a fence-array, that is from explicit fencing accumulated into a
sync-file fence-array.

Fixes: 52e5420 ("drm/i915/scheduler: Record all dependencies upon request construction")
Testcase: igt/gem_exec_fence/expired-history
Signed-off-by: Chris Wilson <[email protected]>
Reviewed-by: Michał Winiarski <[email protected]>
Reviewed-by: Joonas Lahtinen <[email protected]>
Cc: Tvrtko Ursulin <[email protected]>
Link: http://patchwork.freedesktop.org/patch/msgid/[email protected]
(cherry picked from commit ade0b0c)
Signed-off-by: Jani Nikula <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants