1. 05 Jul, 2023 2 commits
  2. 03 Jul, 2023 1 commit
  3. 30 Jun, 2023 1 commit
  4. 27 Jun, 2023 2 commits
  5. 26 Jun, 2023 2 commits
    • Douglas Anderson's avatar
      drm/bridge: ti-sn65dsi86: Fix auxiliary bus lifetime · 7aa83fbd
      Douglas Anderson authored
      Memory for the "struct device" for any given device isn't supposed to
      be released until the device's release() is called. This is important
      because someone might be holding a kobject reference to the "struct
      device" and might try to access one of its members even after any
      other cleanup/uninitialization has happened.
      
      Code analysis of ti-sn65dsi86 shows that this isn't quite right. When
      the code was written, it was believed that we could rely on the fact
      that the child devices would all be freed before the parent devices
      and thus we didn't need to worry about a release() function. While I
      still believe that the parent's "struct device" is guaranteed to
      outlive the child's "struct device" (because the child holds a kobject
      reference to the parent), the parent's "devm" allocated memory is a
      different story. That appears to be freed much earlier.
      
      Let's make this better for ti-sn65dsi86 by allocating each auxiliary
      with kzalloc and then free that memory in the release().
      
      Fixes: bf73537f ("drm/bridge: ti-sn65dsi86: Break GPIO and MIPI-to-eDP bridge into sub-drivers")
      Suggested-by: default avatarStephen Boyd <swboyd@chromium.org>
      Reviewed-by: default avatarStephen Boyd <swboyd@chromium.org>
      Signed-off-by: default avatarDouglas Anderson <dianders@chromium.org>
      Link: https://patchwork.freedesktop.org/patch/msgid/20230613065812.v2.1.I24b838a5b4151fb32bccd6f36397998ea2df9fbb@changeid
      7aa83fbd
    • Boris Brezillon's avatar
      drm/sched: Call drm_sched_fence_set_parent() from drm_sched_fence_scheduled() · db8b4968
      Boris Brezillon authored
      Drivers that can delegate waits to the firmware/GPU pass the scheduled
      fence to drm_sched_job_add_dependency(), and issue wait commands to
      the firmware/GPU at job submission time. For this to be possible, they
      need all their 'native' dependencies to have a valid parent since this
      is where the actual HW fence information are encoded.
      
      In drm_sched_main(), we currently call drm_sched_fence_set_parent()
      after drm_sched_fence_scheduled(), leaving a short period of time
      during which the job depending on this fence can be submitted.
      
      Since setting parent and signaling the fence are two things that are
      kinda related (you can't have a parent if the job hasn't been scheduled),
      it probably makes sense to pass the parent fence to
      drm_sched_fence_scheduled() and let it call drm_sched_fence_set_parent()
      before it signals the scheduled fence.
      
      Here is a detailed description of the race we are fixing here:
      
      Thread A				Thread B
      
      - calls drm_sched_fence_scheduled()
      - signals s_fence->scheduled which
        wakes up thread B
      
      					- entity dep signaled, checking
      					  the next dep
      					- no more deps waiting
      					- entity is picked for job
      					  submission by drm_gpu_scheduler
      					- run_job() is called
      					- run_job() tries to
      					  collect native fence info from
      					  s_fence->parent, but it's
      					  NULL =>
      					  BOOM, we can't do our native
      					  wait
      
      - calls drm_sched_fence_set_parent()
      
      v2:
      * Fix commit message
      
      v3:
      * Add a detailed description of the race to the commit message
      * Add Luben's R-b
      Signed-off-by: default avatarBoris Brezillon <boris.brezillon@collabora.com>
      Cc: Frank Binns <frank.binns@imgtec.com>
      Cc: Sarah Walker <sarah.walker@imgtec.com>
      Cc: Donald Robson <donald.robson@imgtec.com>
      Cc: Luben Tuikov <luben.tuikov@amd.com>
      Cc: David Airlie <airlied@gmail.com>
      Cc: Daniel Vetter <daniel@ffwll.ch>
      Cc: Sumit Semwal <sumit.semwal@linaro.org>
      Cc: "Christian König" <christian.koenig@amd.com>
      Reviewed-by: default avatarLuben Tuikov <luben.tuikov@amd.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20230623075204.382350-1-boris.brezillon@collabora.com
      db8b4968
  6. 23 Jun, 2023 2 commits
  7. 22 Jun, 2023 4 commits
  8. 20 Jun, 2023 2 commits
  9. 18 Jun, 2023 6 commits
  10. 17 Jun, 2023 5 commits
    • Linus Torvalds's avatar
      Merge tag 'staging-6.4-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging · 1b29d271
      Linus Torvalds authored
      Pull staging driver fix from Greg KH:
       "Here is a single staging driver "fix" for 6.4-rc7. I've been sitting
        on it in my tree for many weeks as it is just a simple documentation
        update, with the hope that maybe some other staging driver fixes would
        need to be merged for 6.4-final, but that does not seem to be the
        case.
      
        So please, pull in this one documentation update so that Aaro doesn't
        get emails going forward that he can't do anything about"
      
      * tag 'staging-6.4-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging:
        staging: octeon: delete my name from TODO contact
      1b29d271
    • Linus Torvalds's avatar
      Merge tag 'usb-6.4-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb · 670062e7
      Linus Torvalds authored
      Pull USB / Thunderbolt fixes from Greg KH:
       "Here are some small USB and Thunderbolt driver fixes and new device
        ids for 6.4-rc7 to resolve some reported problems. Included in here
        are:
      
         - new USB serial device ids
      
         - USB gadget core fixes for long-dissussed problems
      
         - dwc3 bugfixes for reported issues.
      
         - typec driver fixes
      
         - thunderbolt driver fixes
      
        All of these have been in linux-next this week with no reported issues"
      
      * tag 'usb-6.4-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb:
        usb: gadget: udc: core: Prevent soft_connect_store() race
        usb: gadget: udc: core: Offload usb_udc_vbus_handler processing
        usb: typec: Fix fast_role_swap_current show function
        usb: typec: ucsi: Fix command cancellation
        USB: dwc3: fix use-after-free on core driver unbind
        USB: dwc3: qcom: fix NULL-deref on suspend
        usb: dwc3: gadget: Reset num TRBs before giving back the request
        usb: gadget: udc: renesas_usb3: Fix RZ/V2M {modprobe,bind} error
        USB: serial: option: add Quectel EM061KGL series
        thunderbolt: Mask ring interrupt on Intel hardware as well
        thunderbolt: Do not touch CL state configuration during discovery
        thunderbolt: Increase DisplayPort Connection Manager handshake timeout
        thunderbolt: dma_test: Use correct value for absent rings when creating paths
      670062e7
    • Linus Torvalds's avatar
      Merge tag 'tty-6.4-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty · 3c0eb442
      Linus Torvalds authored
      Pull serial driver fixes from Greg KH:
       "Here are two small serial driver fixes for 6.4-rc7 that resolve some
        reported problems:
      
         - lantiq serial driver irq fix
      
         - fsl_lpuart serial driver watermark fix
      
        Both of these have been in linux-next this week with no reported issues"
      
      * tag 'tty-6.4-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty:
        tty: serial: fsl_lpuart: reduce RX watermark to 0 on LS1028A
        serial: lantiq: add missing interrupt ack
      3c0eb442
    • Ben Hutchings's avatar
      parisc: Delete redundant register definitions in <asm/assembly.h> · b5b2a02b
      Ben Hutchings authored
      We define sp and ipsw in <asm/asmregs.h> using ".reg", and when using
      current binutils (snapshot 2.40.50.20230611) the definitions in
      <asm/assembly.h> using "=" conflict with those:
      
      arch/parisc/include/asm/assembly.h: Assembler messages:
      arch/parisc/include/asm/assembly.h:93: Error: symbol `sp' is already defined
      arch/parisc/include/asm/assembly.h:95: Error: symbol `ipsw' is already defined
      
      Delete the duplicate definitions in <asm/assembly.h>.
      
      Also delete the definition of gp, which isn't used anywhere.
      Signed-off-by: default avatarBen Hutchings <benh@debian.org>
      Cc: stable@vger.kernel.org # v6.0+
      Signed-off-by: default avatarHelge Deller <deller@gmx.de>
      b5b2a02b
    • Linus Torvalds's avatar
      Merge tag 'clk-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux · c6cf6be9
      Linus Torvalds authored
      Pull clk fixes from Stephen Boyd:
       "A handful of clk driver fixes:
      
         - Fix an OOB issue in the Mediatek mt8365 driver where arrays of clks
           are mismatched in size
      
         - Use the proper clk_ops for a few clks in the Mediatek mt8365 driver
      
         - Stop using abs() in clk_composite_determine_rate() because 64-bit
           math goes wrong on large unsigned long numbers that are subtracted
           and passed into abs()
      
         - Zero initialize a struct clk_init_data in clk-loongson2 to avoid
           stack junk confusing clk_hw_register()
      
         - Actually use a pointer to __iomem for writel() in
           pxa3xx_clk_update_accr() so we don't oops"
      
      * tag 'clk-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux:
        clk: pxa: fix NULL pointer dereference in pxa3xx_clk_update_accr
        clk: clk-loongson2: Zero init clk_init_data
        clk: mediatek: mt8365: Fix inverted topclk operations
        clk: composite: Fix handling of high clock rates
        clk: mediatek: mt8365: Fix index issue
      c6cf6be9
  11. 16 Jun, 2023 13 commits