Skip to content
Permalink
Andrew-Melnych…
Switch branches/tags

Commits on Feb 8, 2022

  1. drivers/net/virtio_net: Added RSS hash report control.

    Now it's possible to control supported hashflows.
    Added hashflow set/get callbacks.
    Also, disabling RXH_IP_SRC/DST for TCP would disable then for UDP.
    TCP and UDP supports only:
    ethtool -U eth0 rx-flow-hash tcp4 sd
        RXH_IP_SRC + RXH_IP_DST
    ethtool -U eth0 rx-flow-hash tcp4 sdfn
        RXH_IP_SRC + RXH_IP_DST + RXH_L4_B_0_1 + RXH_L4_B_2_3
    
    Signed-off-by: Andrew Melnychenko <andrew@daynix.com>
    AndrewAtDaynix authored and intel-lab-lkp committed Feb 8, 2022
  2. drivers/net/virtio_net: Added RSS hash report.

    Added features for RSS hash report.
    If hash is provided - it sets to skb.
    Added checks if rss and/or hash are enabled together.
    
    Signed-off-by: Andrew Melnychenko <andrew@daynix.com>
    AndrewAtDaynix authored and intel-lab-lkp committed Feb 8, 2022
  3. drivers/net/virtio_net: Added basic RSS support.

    Added features for RSS.
    Added initialization, RXHASH feature and ethtool ops.
    By default RSS/RXHASH is disabled.
    Virtio RSS "IPv6 extensions" hashes disabled.
    Added ethtools ops to set key and indirection table.
    
    Signed-off-by: Andrew Melnychenko <andrew@daynix.com>
    AndrewAtDaynix authored and intel-lab-lkp committed Feb 8, 2022
  4. drivers/net/virtio_net: Fixed padded vheader to use v1 with hash.

    The header v1 provides additional info about RSS.
    Added changes to computing proper header length.
    In the next patches, the header may contain RSS hash info
    for the hash population.
    
    Signed-off-by: Andrew Melnychenko <andrew@daynix.com>
    AndrewAtDaynix authored and intel-lab-lkp committed Feb 8, 2022

Commits on Jan 19, 2022

  1. virtio_console: break out of buf poll on remove

    A common pattern for device reset is currently:
    vdev->config->reset(vdev);
    .. cleanup ..
    
    reset prevents new interrupts from arriving and waits for interrupt
    handlers to finish.
    
    However if - as is common - the handler queues a work request which is
    flushed during the cleanup stage, we have code adding buffers / trying
    to get buffers while device is reset. Not good.
    
    This was reproduced by running
    	modprobe virtio_console
    	modprobe -r virtio_console
    in a loop.
    
    Fix this up by calling virtio_break_device + flush before reset.
    
    Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=1786239
    Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
    mstsirkin committed Jan 19, 2022
  2. virtio: document virtio_reset_device

    Looks like most callers get driver/device removal wrong.
    Document what's expected of callers.
    
    Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
    mstsirkin committed Jan 19, 2022
  3. virtio: acknowledge all features before access

    The feature negotiation was designed in a way that
    makes it possible for devices to know which config
    fields will be accessed by drivers.
    
    This is broken since commit 404123c ("virtio: allow drivers to
    validate features") with fallout in at least block and net.  We have a
    partial work-around in commit 2f9a174 ("virtio: write back
    F_VERSION_1 before validate") which at least lets devices find out which
    format should config space have, but this is a partial fix: guests
    should not access config space without acknowledging features since
    otherwise we'll never be able to change the config space format.
    
    To fix, split finalize_features from virtio_finalize_features and
    call finalize_features with all feature bits before validation,
    and then - if validation changed any bits - once again after.
    
    Since virtio_finalize_features no longer writes out features
    rename it to virtio_features_ok - since that is what it does:
    checks that features are ok with the device.
    
    As a side effect, this also reduces the amount of hypervisor accesses -
    we now only acknowledge features once unless we are clearing any
    features when validating (which is uncommon).
    
    IRC I think that this was more or less always the intent in the spec but
    unfortunately the way the spec is worded does not say this explicitly, I
    plan to address this at the spec level, too.
    
    Acked-by: Jason Wang <jasowang@redhat.com>
    Cc: stable@vger.kernel.org
    Fixes: 404123c ("virtio: allow drivers to validate features")
    Fixes: 2f9a174 ("virtio: write back F_VERSION_1 before validate")
    Cc: "Halil Pasic" <pasic@linux.ibm.com>
    Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
    mstsirkin committed Jan 19, 2022

Commits on Jan 18, 2022

  1. virtio: unexport virtio_finalize_features

    virtio_finalize_features is only used internally within virtio.
    No reason to export it.
    
    Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
    Reviewed-by: Cornelia Huck <cohuck@redhat.com>
    Acked-by: Jason Wang <jasowang@redhat.com>
    mstsirkin committed Jan 18, 2022

Commits on Jan 14, 2022

  1. vdpa/mlx5: Fix tracking of current number of VQs

    Modify the code such that ndev->cur_num_vqs better reflects the actual
    number of data virtqueues. The value can be accurately realized after
    features have been negotiated.
    
    This is to prevent possible failures when modifying the RQT object if
    the cur_num_vqs bears invalid value.
    
    No issue was actually encountered but this also makes the code more
    readable.
    
    Fixes: c5a5cd3 ("vdpa/mlx5: Support configuring max data virtqueue")
    Signed-off-by: Eli Cohen <elic@nvidia.com>
    Link: https://lore.kernel.org/r/20220111183400.38418-5-elic@nvidia.com
    Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
    Reviewed-by: Si-Wei Liu<si-wei.liu@oracle.com>
    Acked-by: Jason Wang <jasowang@redhat.com>
    Eli Cohen authored and mstsirkin committed Jan 14, 2022
  2. vdpa/mlx5: Fix is_index_valid() to refer to features

    Make sure the decision whether an index received through a callback is
    valid or not consults the negotiated features.
    
    The motivation for this was due to a case encountered where I shut down
    the VM. After the reset operation was called features were already
    clear, I got get_vq_state() call which caused out array bounds
    access since is_index_valid() reported the index value.
    
    So this is more of not hit a bug since the call shouldn't have been made
    first place.
    
    Signed-off-by: Eli Cohen <elic@nvidia.com>
    Link: https://lore.kernel.org/r/20220111183400.38418-4-elic@nvidia.com
    Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
    Reviewed-by: Si-Wei Liu<si-wei.liu@oracle.com>
    Acked-by: Jason Wang <jasowang@redhat.com>
    Eli Cohen authored and mstsirkin committed Jan 14, 2022
  3. vdpa: Protect vdpa reset with cf_mutex

    Call reset using the wrapper function vdpa_reset() to make sure the
    operation is serialized with cf_mutex.
    
    This comes to protect from the following possible scenario:
    
    vhost_vdpa_set_status() could call the reset op. Since the call is not
    protected by cf_mutex, a netlink thread calling vdpa_dev_config_fill
    could get passed the VIRTIO_CONFIG_S_FEATURES_OK check in
    vdpa_dev_config_fill() and end up reporting wrong features.
    
    Fixes: 5f6e859 ("vdpa: Read device configuration only if FEATURES_OK")
    Signed-off-by: Eli Cohen <elic@nvidia.com>
    Link: https://lore.kernel.org/r/20220111183400.38418-3-elic@nvidia.com
    Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
    Reviewed-by: Si-Wei Liu<si-wei.liu@oracle.com>
    Acked-by: Jason Wang <jasowang@redhat.com>
    Eli Cohen authored and mstsirkin committed Jan 14, 2022
  4. vdpa: Avoid taking cf_mutex lock on get status

    Avoid the wrapper holding cf_mutex since it is not protecting anything.
    To avoid confusion and unnecessary overhead incurred by it, remove.
    
    Fixes: f489f27 ("vdpa: Sync calls set/get config/status with cf_mutex")
    Signed-off-by: Eli Cohen <elic@nvidia.com>
    Link: https://lore.kernel.org/r/20220111183400.38418-2-elic@nvidia.com
    Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
    Reviewed-by: Si-Wei Liu<si-wei.liu@oracle.com>
    Acked-by: Jason Wang <jasowang@redhat.com>
    Eli Cohen authored and mstsirkin committed Jan 14, 2022
  5. vdpa/vdpa_sim_net: Report max device capabilities

    Configure max supported virtqueues features on the management device.
    This info can be retrieved using:
    
    $ vdpa mgmtdev show
    vdpasim_net:
      supported_classes net
      max_supported_vqs 2
      dev_features MAC ANY_LAYOUT VERSION_1 ACCESS_PLATFORM
    
    Signed-off-by: Eli Cohen <elic@nvidia.com>
    Link: https://lore.kernel.org/r/20220105114646.577224-15-elic@nvidia.com
    Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
    Acked-by: Jason Wang <jasowang@redhat.com>
    Eli Cohen authored and mstsirkin committed Jan 14, 2022
  6. vdpa: Use BIT_ULL for bit operations

    All masks in this file are 64 bits. Change BIT to BIT_ULL.
    
    Other occurences use (1 << val) which yields a 32 bit value. Change them
    to use BIT_ULL too.
    
    Reviewed-by: Si-Wei Liu <si-wei.liu@oracle.com>
    Signed-off-by: Eli Cohen <elic@nvidia.com>
    Link: https://lore.kernel.org/r/20220105114646.577224-14-elic@nvidia.com
    Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
    Acked-by: Jason Wang <jasowang@redhat.com>
    Eli Cohen authored and mstsirkin committed Jan 14, 2022
  7. vdpa/vdpa_sim: Configure max supported virtqueues

    Configure max supported virtqueues on the management device.
    
    Signed-off-by: Eli Cohen <elic@nvidia.com>
    Link: https://lore.kernel.org/r/20220105114646.577224-13-elic@nvidia.com
    Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
    Acked-by: Jason Wang <jasowang@redhat.com>
    Eli Cohen authored and mstsirkin committed Jan 14, 2022
  8. vdpa/mlx5: Report max device capabilities

    Configure max supported virtqueues and features on the management
    device.
    This info can be retrieved using:
    
    $ vdpa mgmtdev show
    auxiliary/mlx5_core.sf.1:
      supported_classes net
      max_supported_vqs 257
      dev_features CSUM GUEST_CSUM MTU HOST_TSO4 HOST_TSO6 STATUS CTRL_VQ MQ \
                   CTRL_MAC_ADDR VERSION_1 ACCESS_PLATFORM
    
    Signed-off-by: Eli Cohen <elic@nvidia.com>
    Link: https://lore.kernel.org/r/20220105114646.577224-12-elic@nvidia.com
    Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
    Reviewed-by: Si-Wei Liu<si-wei.liu@oracle.com>
    Eli Cohen authored and mstsirkin committed Jan 14, 2022
  9. vdpa: Support reporting max device capabilities

    Add max_supported_vqs and supported_features fields to struct
    vdpa_mgmt_dev. Upstream drivers need to feel these values according to
    the device capabilities.
    
    These values are reported back in a netlink message when showing management
    devices.
    
    Examples:
    
    $ auxiliary/mlx5_core.sf.1:
      supported_classes net
      max_supported_vqs 257
      dev_features CSUM GUEST_CSUM MTU HOST_TSO4 HOST_TSO6 STATUS CTRL_VQ MQ \
                   CTRL_MAC_ADDR VERSION_1 ACCESS_PLATFORM
    
    $ vdpa -j mgmtdev show
    {"mgmtdev":{"auxiliary/mlx5_core.sf.1":{"supported_classes":["net"], \
      "max_supported_vqs":257,"dev_features":["CSUM","GUEST_CSUM","MTU", \
      "HOST_TSO4","HOST_TSO6","STATUS","CTRL_VQ","MQ","CTRL_MAC_ADDR", \
      "VERSION_1","ACCESS_PLATFORM"]}}}
    
    $ vdpa -jp mgmtdev show
    {
        "mgmtdev": {
            "auxiliary/mlx5_core.sf.1": {
                "supported_classes": [ "net" ],
                "max_supported_vqs": 257,
                "dev_features": ["CSUM","GUEST_CSUM","MTU","HOST_TSO4", \
                                 "HOST_TSO6","STATUS","CTRL_VQ","MQ", \
                                 "CTRL_MAC_ADDR","VERSION_1","ACCESS_PLATFORM"]
            }
        }
    }
    
    Signed-off-by: Eli Cohen <elic@nvidia.com>
    Link: https://lore.kernel.org/r/20220105114646.577224-11-elic@nvidia.com
    Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
    Reviewed-by: Si-Wei Liu<si-wei.liu@oracle.com>
    Eli Cohen authored and mstsirkin committed Jan 14, 2022
  10. vdpa/mlx5: Restore cur_num_vqs in case of failure in change_num_qps()

    Restore ndev->cur_num_vqs to the original value in case change_num_qps()
    fails.
    
    Fixes: 5289373 ("vdpa/mlx5: Add multiqueue support")
    Reviewed-by: Si-Wei Liu<si-wei.liu@oracle.com>
    Acked-by: Jason Wang <jasowang@redhat.com>
    Signed-off-by: Eli Cohen <elic@nvidia.com>
    Link: https://lore.kernel.org/r/20220105114646.577224-10-elic@nvidia.com
    Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
    Eli Cohen authored and mstsirkin committed Jan 14, 2022
  11. vdpa: Add support for returning device configuration information

    Add netlink attribute to store the negotiated features. This can be used
    by userspace to get the current state of the vdpa instance.
    
    Examples:
    
    $ vdpa dev config show vdpa-a
    vdpa-a: mac 00:00:00:00:88:88 link up link_announce false max_vq_pairs 16 mtu 1500
      negotiated_features CSUM GUEST_CSUM MTU MAC HOST_TSO4 HOST_TSO6 STATUS \
      CTRL_VQ MQ CTRL_MAC_ADDR VERSION_1 ACCESS_PLATFORM
    
    $ vdpa -j dev config show vdpa-a
    {"config":{"vdpa-a":{"mac":"00:00:00:00:88:88","link ":"up","link_announce":false, \
     "max_vq_pairs":16,"mtu":1500,"negotiated_features":["CSUM","GUEST_CSUM","MTU","MAC", \
     "HOST_TSO4","HOST_TSO6","STATUS","CTRL_VQ","MQ","CTRL_MAC_ADDR","VERSION_1", \
     "ACCESS_PLATFORM"]}}}
    
    $ vdpa -jp dev config show vdpa-a
    {
        "config": {
            "vdpa-a": {
                "mac": "00:00:00:00:88:88",
                "link ": "up",
                "link_announce ": false,
                "max_vq_pairs": 16,
                "mtu": 1500,
                "negotiated_features": [
    "CSUM","GUEST_CSUM","MTU","MAC","HOST_TSO4","HOST_TSO6","STATUS","CTRL_VQ","MQ", \
    "CTRL_MAC_ADDR","VERSION_1","ACCESS_PLATFORM"
    ]
            }
        }
    }
    
    Signed-off-by: Eli Cohen <elic@nvidia.com>
    Link: https://lore.kernel.org/r/20220105114646.577224-9-elic@nvidia.com
    Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
    Acked-by: Jason Wang <jasowang@redhat.com>
    Eli Cohen authored and mstsirkin committed Jan 14, 2022
  12. vdpa/mlx5: Support configuring max data virtqueue

    Check whether the max number of data virtqueue pairs was provided when a
    adding a new device and verify the new value does not exceed device
    capabilities.
    
    In addition, change the arrays holding virtqueue and callback contexts
    to be dynamically allocated.
    
    Signed-off-by: Eli Cohen <elic@nvidia.com>
    Link: https://lore.kernel.org/r/20220105114646.577224-8-elic@nvidia.com
    
    Includes fixup:
    
    vdpa/mlx5: fix error handling in mlx5_vdpa_dev_add()
    
    Clang build fails with
    mlx5_vnet.c:2574:6: error: variable 'mvdev' is used uninitialized whenever
      'if' condition is true
            if (!ndev->vqs || !ndev->event_cbs) {
                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    mlx5_vnet.c:2660:14: note: uninitialized use occurs here
            put_device(&mvdev->vdev.dev);
                        ^~~~~
    This because mvdev is set after trying to allocate ndev->vqs,event_cbs.
    So move the allocation to after mvdev is set but before the arrays
    are used in init_mvqs()
    
    Signed-off-by: Tom Rix <trix@redhat.com>
    Link: https://lore.kernel.org/r/20220107211352.3940570-1-trix@redhat.com
    Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
    
    Includes fixup:
    
    vdpa/mlx5: fix endian-ness for max vqs
    
    sparse warnings: (new ones prefixed by >>)
    >> drivers/vdpa/mlx5/net/mlx5_vnet.c:1247:23: sparse: sparse: cast to restricted __le16
    >> drivers/vdpa/mlx5/net/mlx5_vnet.c:1247:23: sparse: sparse: cast from restricted __virtio16
    
    > 1247                  num = le16_to_cpu(ndev->config.max_virtqueue_pairs);
    
    Address this using the appropriate wrapper.
    
    Cc: "Eli Cohen" <elic@nvidia.com>
    Reported-by: kernel test robot <lkp@intel.com>
    Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
    Acked-by: Jason Wang <jasowang@redhat.com>
    Reviewed-by: Eli Cohen <elic@nvidia.com>
    Eli Cohen authored and mstsirkin committed Jan 14, 2022
  13. vdpa/mlx5: Fix config_attr_mask assignment

    Fix VDPA_ATTR_DEV_NET_CFG_MACADDR assignment to be explicit 64 bit
    assignment.
    
    No issue was seen since the value is well below 64 bit max value.
    Nevertheless it needs to be fixed.
    
    Fixes: a007d94 ("vdpa/mlx5: Support configuration of MAC")
    Reviewed-by: Si-Wei Liu <si-wei.liu@oracle.com>
    Acked-by: Jason Wang <jasowang@redhat.com>
    Signed-off-by: Eli Cohen <elic@nvidia.com>
    Link: https://lore.kernel.org/r/20220105114646.577224-7-elic@nvidia.com
    Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
    Eli Cohen authored and mstsirkin committed Jan 14, 2022
  14. vdpa: Allow to configure max data virtqueues

    Add netlink support to configure the max virtqueue pairs for a device.
    At least one pair is required. The maximum is dictated by the device.
    
    Example:
    $ vdpa dev add name vdpa-a mgmtdev auxiliary/mlx5_core.sf.1 max_vqp 4
    
    Signed-off-by: Eli Cohen <elic@nvidia.com>
    Link: https://lore.kernel.org/r/20220105114646.577224-6-elic@nvidia.com
    Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
    Eli Cohen authored and mstsirkin committed Jan 14, 2022
  15. vdpa: Read device configuration only if FEATURES_OK

    Avoid reading device configuration during feature negotiation. Read
    device status and verify that VIRTIO_CONFIG_S_FEATURES_OK is set.
    
    Protect the entire operation, including configuration read with cf_mutex
    to ensure integrity of the results.
    
    Signed-off-by: Eli Cohen <elic@nvidia.com>
    Link: https://lore.kernel.org/r/20220105114646.577224-5-elic@nvidia.com
    Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
    Acked-by: Jason Wang <jasowang@redhat.com>
    Eli Cohen authored and mstsirkin committed Jan 14, 2022
  16. vdpa: Sync calls set/get config/status with cf_mutex

    Add wrappers to get/set status and protect these operations with
    cf_mutex to serialize these operations with respect to get/set config
    operations.
    
    Signed-off-by: Eli Cohen <elic@nvidia.com>
    Link: https://lore.kernel.org/r/20220105114646.577224-4-elic@nvidia.com
    Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
    Eli Cohen authored and mstsirkin committed Jan 14, 2022
  17. vdpa/mlx5: Distribute RX virtqueues in RQT object

    Distribute the available rx virtqueues amongst the available RQT
    entries.
    
    RQTs require to have a power of two entries. When creating or modifying
    the RQT, use the lowest number of power of two entries that is not less
    than the number of rx virtqueues. Distribute them in the available
    entries such that some virtqueus may be referenced twice.
    
    This allows to configure any number of virtqueue pairs when multiqueue
    is used.
    
    Reviewed-by: Si-Wei Liu <si-wei.liu@oracle.com>
    Acked-by: Jason Wang <jasowang@redhat.com>
    Signed-off-by: Eli Cohen <elic@nvidia.com>
    Link: https://lore.kernel.org/r/20220105114646.577224-3-elic@nvidia.com
    Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
    Eli Cohen authored and mstsirkin committed Jan 14, 2022
  18. vdpa: Provide interface to read driver features

    Provide an interface to read the negotiated features. This is needed
    when building the netlink message in vdpa_dev_net_config_fill().
    
    Also fix the implementation of vdpa_dev_net_config_fill() to use the
    negotiated features instead of the device features.
    
    To make APIs clearer, make the following name changes to struct
    vdpa_config_ops so they better describe their operations:
    
    get_features -> get_device_features
    set_features -> set_driver_features
    
    Finally, add get_driver_features to return the negotiated features and
    add implementation to all the upstream drivers.
    
    Acked-by: Jason Wang <jasowang@redhat.com>
    Signed-off-by: Eli Cohen <elic@nvidia.com>
    Link: https://lore.kernel.org/r/20220105114646.577224-2-elic@nvidia.com
    Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
    Eli Cohen authored and mstsirkin committed Jan 14, 2022
  19. vdpa: clean up get_config_size ret value handling

    The return type of get_config_size is size_t so it makes
    sense to change the type of the variable holding its result.
    
    That said, this already got taken care of (differently, and arguably
    not as well) by commit 3ed21c1 ("vdpa: check that offsets are
    within bounds").
    
    The added 'c->off > size' test in that commit will be done as an
    unsigned comparison on 32-bit (safe due to not being signed).
    
    On a 64-bit platform, it will be done as a signed comparison, but in
    that case the comparison will be done in 64-bit, and 'c->off' being an
    u32 it will be valid thanks to the extended range (ie both values will
    be positive in 64 bits).
    
    So this was a real bug, but it was already addressed and marked for stable.
    
    Signed-off-by: Laura Abbott <labbott@kernel.org>
    Reported-by: Luo Likang <luolikang@nsfocus.com>
    Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
    Laura Abbott authored and mstsirkin committed Jan 14, 2022
  20. virtio_ring: mark ring unused on error

    A recently added error path does not mark ring unused when exiting on
    OOM, which will lead to BUG on the next entry in debug builds.
    
    TODO: refactor code so we have START_USE and END_USE in the same function.
    
    Fixes: fc6d70f ("virtio_ring: check desc == NULL when using indirect with packed")
    Cc: "Xuan Zhuo" <xuanzhuo@linux.alibaba.com>
    Cc: Jiasheng Jiang <jiasheng@iscas.ac.cn>
    Reviewed-by: Xuan Zhuo <xuanzhuo@linux.alibaba.com>
    Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
    mstsirkin committed Jan 14, 2022
  21. vhost/test: fix memory leak of vhost virtqueues

    We need free the vqs in .release(), which are allocated in .open().
    
    Signed-off-by: Xianting Tian <xianting.tian@linux.alibaba.com>
    Link: https://lore.kernel.org/r/20211228030924.3468439-1-xianting.tian@linux.alibaba.com
    Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
    Acked-by: Jason Wang <jasowang@redhat.com>
    Xianting Tian authored and mstsirkin committed Jan 14, 2022
  22. vdpa/mlx5: Fix wrong configuration of virtio_version_1_0

    Remove overriding of virtio_version_1_0 which forced the virtqueue
    object to version 1.
    
    Fixes: 1a86b37 ("vdpa/mlx5: Add VDPA driver for supported mlx5 devices")
    Signed-off-by: Eli Cohen <elic@nvidia.com>
    Link: https://lore.kernel.org/r/20211230142024.142979-1-elic@nvidia.com
    Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
    Reviewed-by: Parav Pandit <parav@nvidia.com>
    Acked-by: Jason Wang <jasowang@redhat.com>
    Reviewed-by: Si-Wei Liu <si-wei.liu@oracle.com>
    Eli Cohen authored and mstsirkin committed Jan 14, 2022
  23. virtio/virtio_pci_legacy_dev: ensure the correct return value

    When pci_iomap return NULL, the return value is zero.
    
    Signed-off-by: Peng Hao <flyingpeng@tencent.com>
    Link: https://lore.kernel.org/r/20211222112014.87394-1-flyingpeng@tencent.com
    Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
    Acked-by: Jason Wang <jasowang@redhat.com>
    Peng Hao authored and mstsirkin committed Jan 14, 2022
  24. virtio/virtio_mem: handle a possible NULL as a memcpy parameter

    There is a check for vm->sbm.sb_states before, and it should check
    it here as well.
    
    Signed-off-by: Peng Hao <flyingpeng@tencent.com>
    Link: https://lore.kernel.org/r/20211222011225.40573-1-flyingpeng@tencent.com
    Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
    Fixes: 5f1f79b ("virtio-mem: Paravirtualized memory hotplug")
    Cc: stable@vger.kernel.org # v5.8+
    Peng Hao authored and mstsirkin committed Jan 14, 2022
  25. virtio: fix a typo in function "vp_modern_remove" comments.

    Function name "vp_modern_remove" in comments is written to
    "vp_modern_probe" incorrectly. Change it.
    
    Signed-off-by: Dapeng Mi <dapeng1.mi@intel.com>
    Link: https://lore.kernel.org/r/20211210073546.700783-1-dapeng1.mi@intel.com
    Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
    Reviewed-by: Stefano Garzarella <sgarzare@redhat.com>
    dapeng-mi authored and mstsirkin committed Jan 14, 2022
  26. virtio-pci: fix the confusing error message

    The error message on the failure of pfn check should tell
    virtio-pci rather than virtio-mmio, just fix it.
    
    Signed-off-by: Michael Wang <yun.wang@linux.alibaba.com>
    Suggested-by: Michael S. Tsirkin <mst@redhat.com>
    Link: https://lore.kernel.org/r/ae5e154e-ac59-f0fa-a7c7-091a2201f581@linux.alibaba.com
    Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
    wangyun2137 authored and mstsirkin committed Jan 14, 2022
  27. firmware: qemu_fw_cfg: remove sysfs entries explicitly

    Explicitly remove the file entries from sysfs before dropping the final
    reference for symmetry reasons and for consistency with the rest of the
    driver.
    
    Signed-off-by: Johan Hovold <johan@kernel.org>
    Link: https://lore.kernel.org/r/20211201132528.30025-5-johan@kernel.org
    Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
    jhovold authored and mstsirkin committed Jan 14, 2022
Older