02 Nov, 2020

1 commit


31 Oct, 2020

1 commit

  • Commit 88adaf726ee3 ("Revert "ANDROID: drivers: gpu: drm: fix bugs
    encountered while fuzzing"") introduced an out-of-tree difference that
    this patch compensates.

    Fixes: 88adaf726ee3 ("Revert "ANDROID: drivers: gpu: drm: fix bugs encountered while fuzzing"")
    Signed-off-by: Matthias Maennich
    Change-Id: Ie6d125567365fea8db735e9ad9d8af4262d958fc

    Matthias Maennich
     

30 Oct, 2020

3 commits

  • The below call stack prevents clk_gating at every IO completion.
    We can remove the condition, ufshcd_any_tag_in_use(), since clkgating_work
    will check it again.

    ufshcd_complete_requests(struct ufs_hba *hba)
    ufshcd_transfer_req_compl()
    __ufshcd_transfer_req_compl()
    __ufshcd_release(hba)
    if (ufshcd_any_tag_in_use() == 1)
    return;
    ufshcd_tmc_handler(hba);
    blk_mq_tagset_busy_iter();

    Note that, this still requires a work to deal with a potential racy condition
    when user sets clkgating.delay_ms to very small value. That can cause preventing
    clkgating by the check of ufshcd_any_tag_in_use() in gate_work.

    Link: https://lore.kernel.org/linux-scsi/20201028194352.GA3060274@google.com/T/#m3485ba8df14e4ad5cf0aa5b314ffe1cb90d90105
    Fixes: 7252a3603015 ("scsi: ufs: Avoid busy-waiting by eliminating tag conflicts")
    Signed-off-by: Jaegeuk Kim
    Reviewed-by: Asutosh Das
    Change-Id: I9b56725b26e1be8b1da55ae1db7322ab00fc5298

    Jaegeuk Kim
     
  • When giving a stress test which enables/disables clkgating, we hit device
    timeout sometimes. This patch avoids subtle racy condition to address it.

    Note that, this requires a patch to address the device stuck by REQ_CLKS_OFF in
    __ufshcd_release().

    The fix is "scsi: ufs: avoid to call REQ_CLKS_OFF to CLKS_OFF".

    Link: https://lore.kernel.org/linux-scsi/20201028194352.GA3060274@google.com/T/#m979bdb55500f3f63fa4e975524f8559c80697862
    Signed-off-by: Jaegeuk Kim
    Change-Id: Ice47cbd199850aadd15166ac414fd97db3a79aad

    Jaegeuk Kim
     
  • Once UFS was gated with CLKS_OFF, it should not call REQ_CLKS_OFF again, which
    caused hibern8_enter failure.

    Link: https://lore.kernel.org/linux-scsi/20201028194352.GA3060274@google.com/T/#m3485ba8df14e4ad5cf0aa5b314ffe1cb90d90105
    Signed-off-by: Jaegeuk Kim
    Change-Id: Ia5cad145189c266b1bfba34ad3875f8ccf8ec322

    Jaegeuk Kim
     

29 Oct, 2020

3 commits


28 Oct, 2020

4 commits

  • The code to try to shut up sparse warnings about questionable locking
    didn't shut up sparse: it made the result not parse as valid C at all,
    since the end result now has a label with no statement.

    The proper fix is to just always lock the hardware, the same way Bart
    did in commit 8ae178760b23 ("scsi: qla2xxx: Simplify the functions for
    dumping firmware"). That avoids the whole problem with having locking
    that is not statically obvious.

    But in the meantime, just remove the incorrect attempt at trying to
    avoid a sparse warning that just made things worse.

    This was exposed by commit 3e6efab865ac ("scsi: qla2xxx: Fix reset of
    MPI firmware"), very similarly to how commit cbb01c2f2f63 ("scsi:
    qla2xxx: Fix MPI failure AEN (8200) handling") exposed the same problem
    in another place, and caused that commit 8ae178760b23.

    Please don't add code to just shut up sparse without actually fixing
    what sparse complains about.

    Bug: 171770067
    Link: https://lore.kernel.org/r/20201027080745.GA31045@infradead.org
    Reported-by: Luc Van Oostenryck
    Cc: Bart Van Assche
    Cc: Arun Easi
    Signed-off-by: Linus Torvalds
    Signed-off-by: Greg Kroah-Hartman
    Change-Id: I7243126a46da8cf144a71907781594ddd137d190

    Linus Torvalds
     
  • This reverts commit 86ca9b3172ccc162a7dada27781cbe7c148c6550.

    Bug: 171770067
    Signed-off-by: Greg Kroah-Hartman
    Change-Id: Id0d37898ed807f1f3419333f8f5906a01f602fc4

    Greg Kroah-Hartman
     
  • After enabling interconect scaling for display on the db845c board,
    in certain configurations the board hangs, while the following errors
    are observed on the console:

    Error sending AMC RPMH requests (-110)
    qcom_rpmh TCS Busy, retrying RPMH message send: addr=0x50000
    qcom_rpmh TCS Busy, retrying RPMH message send: addr=0x50000
    qcom_rpmh TCS Busy, retrying RPMH message send: addr=0x50000
    ...

    In this specific case, the above is related to one of the sequencers
    being stuck, while client drivers are returning from probe and trying
    to disable the currently unused clock and interconnect resources.
    Generally we want to keep the multimedia NoC enabled like the rest of
    the NoCs, so let's set the keepalive flag on it too.

    Fixes: aae57773fbe0 ("interconnect: qcom: sdm845: Split qnodes into their respective NoCs")
    Reported-by: Amit Pundir
    Signed-off-by: Georgi Djakov
    Link: https://lore.kernel.org/lkml/20201012194034.26944-1-georgi.djakov@linaro.org/
    Signed-off-by: John Stultz
    Change-Id: I0935e68947919c6a7d38bada810f9e8ed3f61604

    Georgi Djakov
     
  • Fix bad merge resolutions between Android-specific commit 8de80df7d7e4
    ("ANDROID: scsi: ufs: allow ufs variants to override sg entry size")
    and the following upstream commits:

    - commit 26f968d7de82 ("scsi: ufs: Introduce UFSHCD_QUIRK_PRDT_BYTE_GRAN quirk")
    - commit cc770ce34aee ("scsi: ufs: Make ufshcd_print_trs() consider UFSHCD_QUIRK_PRDT_BYTE_GRAN")

    This should be folded into
    ANDROID-scsi-ufs-allow-ufs-variants-to-override-sg-entry-size.patch.

    Fixes: 2c136de3024f ("Merge 86cfccb66937 ("Merge tag 'dlm-5.9' of git://git.kernel.org/pub/scm/linux/kernel/git/teigland/linux-dlm") into android-mainline")
    Fixes: 22a7eefbebcf ("Merge 55e0500eb5c0 ("Merge tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi") into android-mainline")
    Bug: 162257402
    Change-Id: I3a2f1f5b6df43028dde248b9a932f5595dd13e21
    Signed-off-by: Eric Biggers

    Eric Biggers
     

27 Oct, 2020

7 commits


26 Oct, 2020

21 commits