29 Jan, 2021

2 commits

  • For normal case, userspace should call streamon/streamoff balance, but
    for some special case, the process will be killed or terminated and the
    streamoff ioctl will be ignored. So driver need to handle the case.

    Signed-off-by: Guoniu.zhou
    Reviewed-by: Robby Cai

    Guoniu.zhou
     
  • For some tough multi channels test, the default priority of channel0 may
    not be scheduled in 500us so that channel context can't be loaded as the
    below warning, hence sdma channel transfer will be failed. So raise up
    channel0 to the highest one since context load is important to all
    channels. Besides, enlarge 500us to 5ms for safe since many highest channel
    also may run at the same time like asrc/easrc tough test(8 channel run).

    "imx-sdma 30e10000.dma-controller: Timeout waiting for CH0 ready"

    Signed-off-by: Robin Gong
    Reviewed-by: Peng Zhang

    Robin Gong
     

28 Jan, 2021

5 commits

  • The latest batch of RM67191 panels have an issue that the panel display
    will get blurred and have no response to later display actions when read
    data from panel through DSI interface.

    And decrease the pixel clock rate to 121MHz which means decrease the
    panel's frame rate from 60.02Hz to 55.02Hz can solve this issue, so
    do this change to make RM67191 display more stable.

    Signed-off-by: Fancy Fang
    Reviewed-by: Robby Cai

    Fancy Fang
     
  • According to the .transfer function definition in mipi_dsi_host_ops,
    on success it shall return the number of bytes transmitted for write
    packets or the number of bytes received for read packets. So correct
    the return value in sec_mipi_dsim_host_transfer() implementation.

    Signed-off-by: Fancy Fang
    Reviewed-by: Robby Cai

    Fancy Fang
     
  • Fix a Coverity issue in fm: extra argument to printf format specifier for dma_max_watchdog

    Signed-off-by: Florinel Iordache

    Florinel Iordache
     
  • This reverts commit cd74693870fb748d812867ba49af733d689a3604.

    This is a workaround for allowing dm-crypt crypto operations to be
    offloaded to caam crypto accelerator.
    It's needed because crypto algorithms registered by caam are marked with
    CRYPTO_ALG_ALLOCATES_MEMORY flag.

    Background:
    Red Hat reported possible allocation issues in dm-crypt, dm-integrity:
    Link: https://lore.kernel.org/linux-crypto/alpine.LRH.2.02.2006091259250.30590@file01.intranet.prod.int.rdu2.redhat.com
    The solution found was a mechanism to let dm-crypt, dm-integrity avoid
    using crypto algorithms that allocate memory "at runtime" - by specifying
    the CRYPTO_ALG_ALLOCATES_MEMORY flag introduced in
    commit fbb6cda44190 ("crypto: algapi - introduce the flag CRYPTO_ALG_ALLOCATES_MEMORY")

    Signed-off-by: Horia Geantă
    Reviewed-by: Manish Tomar

    Horia Geantă
     
  • The ls-extirq driver doesn't implement the irq_set_wake()
    callback, while being wake-up capable. This results in
    ugly behaviours across suspend/resume cycles.

    Advertise this by adding IRQCHIP_SKIP_SET_WAKE to
    the irqchip flags

    Signed-off-by: Biwen Li

    Biwen Li
     

27 Jan, 2021

2 commits


26 Jan, 2021

8 commits


25 Jan, 2021

2 commits


22 Jan, 2021

9 commits


21 Jan, 2021

3 commits

  • In case no job rings are available, secure memory structures are not
    initialized, since caam_jr_probe()->init_misc_func()->caam_sm_startup()
    is not called.
    This could happen if all job ring devices bind to the jr uio driver
    instead of the caam/jr driver.
    Running sm_test in this case will lead to a crash.

    Add a check to verify that SM has been initialized - if not the tests
    will be skipped.

    Reported-by: Gaurav Jain
    Signed-off-by: Horia Geantă
    Reviewed-by: Gaurav Jain

    Horia Geantă
     
  • Introduction
    ===

    Currently we are facing some limitations in the caam/jr module lifecycle.
    There are some discussion in upstream:
    Link: https://lore.kernel.org/linux-crypto/20190904023515.7107-13-andrew.smirnov@gmail.com
    Link: https://lore.kernel.org/linux-crypto/20191105151353.6522-1-andrew.smirnov@gmail.com
    but in the end it all seems to get down to implementations not being able
    to gracefully unregister crypto algorithms from crypto API while there are
    users / allocated tfms (cra_refcnt > 1).

    [*] OTOH functionalities in caam/jr that don't interact with crypto API
    (like Secure Memory or black keys / blobs generation) don't face this
    limitation.

    Issue at hand
    ===

    When unloading the caam_jr module, the .remove callback for the last JR
    device exits with -EBUSY (see "Introduction" above) and doesn't perform
    the clean-up (crypto algorithms unregistering etc.).

    One side effect of this is leeding to an oops, which occurs due to a
    corruption in the linked list of "misc devices"
    (drivers/char/misc.c - misc_list):
    1. caam_jr module is unloaded without calling unregister_algs()->
    caam_keygen_exit()->misc_deregister() for the last job ring device;
    this leaves a dangling entry in the misc_list double-linked list
    2. rng_core module is unloaded and calls misc_deregister(); this implies
    removing the corresponding entry in the misc_list; while doing this the
    dangling entry is accessed - which leads to an oops since the address is
    no longer valid (address points to the caam_jr module address space,
    but caam_jr has been previously unloaded).

    Fix this by moving the clean-up of non-crypto related functionalities [*]
    before crypto related ones.

    Fixes: 3af836d4b311 ("MLK-24420-3 crypto: caam - add ioctl calls for black keys and blobs generation")
    Signed-off-by: Horia Geantă
    Reviewed-by: Gaurav Jain

    Horia Geantă
     
  • In case of long format of qDMA command descriptor, there are one frame
    descriptor, three entries in the frame list and two data entries. So the
    size of dma_pool_create for these three fields should be the same with
    the total size of entries respectively, or the contents may be overwritten
    by the next allocated descriptor.

    Signed-off-by: Guanhua Gao

    Guanhua Gao
     

20 Jan, 2021

9 commits

  • This is the 5.10.9 stable release

    * tag 'v5.10.9': (153 commits)
    Linux 5.10.9
    netfilter: nf_nat: Fix memleak in nf_nat_init
    netfilter: conntrack: fix reading nf_conntrack_buckets
    ...

    Signed-off-by: Jason Liu

    Jason Liu
     
  • This is the 5.10.8 stable release

    * tag 'v5.10.8': (104 commits)
    Linux 5.10.8
    tools headers UAPI: Sync linux/fscrypt.h with the kernel sources
    drm/panfrost: Remove unused variables in panfrost_job_close()
    ...

    Signed-off-by: Jason Liu

    Jason Liu
     
  • This is the 5.10.7 stable release

    * tag 'v5.10.7': (144 commits)
    Linux 5.10.7
    scsi: target: Fix XCOPY NAA identifier lookup
    rtlwifi: rise completion at the last step of firmware callback
    ...

    Signed-off-by: Jason Liu

    Jason Liu
     
  • This is the 5.10.6 stable release

    * tag 'v5.10.6': (21 commits)
    Linux 5.10.6
    mwifiex: Fix possible buffer overflows in mwifiex_cmd_802_11_ad_hoc_start
    exec: Transform exec_update_mutex into a rw_semaphore
    ...

    Signed-off-by: Jason Liu

    Conflicts:
    drivers/rtc/rtc-pcf2127.c

    Jason Liu
     
  • This is the 5.10.5 stable release

    * tag 'v5.10.5': (63 commits)
    Linux 5.10.5
    device-dax: Fix range release
    ext4: avoid s_mb_prefetch to be zero in individual scenarios
    ...

    Signed-off-by: Jason Liu

    Jason Liu
     
  • This is a gpio driver to control the PINs which are managed by scu fw.

    Signed-off-by: Shenwei Wang

    Shenwei Wang
     
  • commit 0378c625afe80eb3f212adae42cc33c9f6f31abf upstream.

    There wasn't ever a real need to log an error in the kernel log for
    ioctls issued with insufficient permissions. Simply return an error
    and if an admin/user is sufficiently motivated they can enable DM's
    dynamic debugging to see an explanation for why the ioctls were
    disallowed.

    Reported-by: Nir Soffer
    Fixes: e980f62353c6 ("dm: don't allow ioctls to targets that don't map to whole devices")
    Signed-off-by: Mike Snitzer
    Signed-off-by: Greg Kroah-Hartman

    Mike Snitzer
     
  • commit 2d6ffc63f12417b979955a5b22ad9a76d2af5de9 upstream.

    The VT-d hardware will ignore those Addr bits which have been masked by
    the AM field in the PASID-based-IOTLB invalidation descriptor. As the
    result, if the starting address in the descriptor is not aligned with
    the address mask, some IOTLB caches might not invalidate. Hence people
    will see below errors.

    [ 1093.704661] dmar_fault: 29 callbacks suppressed
    [ 1093.704664] DMAR: DRHD: handling fault status reg 3
    [ 1093.712738] DMAR: [DMA Read] Request device [7a:02.0] PASID 2
    fault addr 7f81c968d000 [fault reason 113]
    SM: Present bit in first-level paging entry is clear

    Fix this by using aligned address for PASID-based-IOTLB invalidation.

    Fixes: 1c4f88b7f1f9 ("iommu/vt-d: Shared virtual address in scalable mode")
    Reported-and-tested-by: Guo Kaijie
    Signed-off-by: Lu Baolu
    Link: https://lore.kernel.org/r/20201231005323.2178523-2-baolu.lu@linux.intel.com
    Signed-off-by: Will Deacon
    Signed-off-by: Greg Kroah-Hartman

    Lu Baolu
     
  • commit 09aa9e45863e9e25dfbf350bae89fc3c2964482c upstream.

    The mitigation is required for all gen7 platforms, now that it does not
    cause GPU hangs, restore it for Ivybridge and Baytrail.

    Fixes: 47f8253d2b89 ("drm/i915/gen7: Clear all EU/L3 residual contexts")
    Signed-off-by: Chris Wilson
    Cc: Mika Kuoppala
    Cc: Prathap Kumar Valsan
    Cc: Akeem G Abodunrin
    Cc: Bloomfield Jon
    Reviewed-by: Akeem G Abodunrin
    Reviewed-by: Rodrigo Vivi
    Link: https://patchwork.freedesktop.org/patch/msgid/20210111225220.3483-2-chris@chris-wilson.co.uk
    (cherry picked from commit 008ead6ef8f588a8c832adfe9db201d9be5fd410)
    Signed-off-by: Jani Nikula
    Signed-off-by: Greg Kroah-Hartman

    Chris Wilson