[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-commits] [qemu/qemu] dee2e5: hw/pvrdma: Check the correct return v
From: |
GitHub |
Subject: |
[Qemu-commits] [qemu/qemu] dee2e5: hw/pvrdma: Check the correct return value |
Date: |
Sat, 22 Dec 2018 05:58:55 -0800 |
Branch: refs/heads/master
Home: https://github.com/qemu/qemu
Commit: dee2e53c86de37dea4f36936eab5a6aef340b8f8
https://github.com/qemu/qemu/commit/dee2e53c86de37dea4f36936eab5a6aef340b8f8
Author: Yuval Shaia <address@hidden>
Date: 2018-12-22 (Sat, 22 Dec 2018)
Changed paths:
M hw/rdma/vmw/pvrdma_cmd.c
Log Message:
-----------
hw/pvrdma: Check the correct return value
Return value of 0 means ok, we want to free the memory only in case of
error.
Signed-off-by: Yuval Shaia <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Marcel Apfelbaum<address@hidden>
Signed-off-by: Marcel Apfelbaum <address@hidden>
Commit: a5d2f6f8773a8ce7534e79b067f135d55c6274cb
https://github.com/qemu/qemu/commit/a5d2f6f8773a8ce7534e79b067f135d55c6274cb
Author: Yuval Shaia <address@hidden>
Date: 2018-12-22 (Sat, 22 Dec 2018)
Changed paths:
M MAINTAINERS
M Makefile
M Makefile.objs
A contrib/rdmacm-mux/Makefile.objs
A contrib/rdmacm-mux/main.c
A contrib/rdmacm-mux/rdmacm-mux.h
Log Message:
-----------
contrib/rdmacm-mux: Add implementation of RDMA User MAD multiplexer
RDMA MAD kernel module (ibcm) disallow more than one MAD-agent for a
given MAD class.
This does not go hand-by-hand with qemu pvrdma device's requirements
where each VM is MAD agent.
Fix it by adding implementation of RDMA MAD multiplexer service which on
one hand register as a sole MAD agent with the kernel module and on the
other hand gives service to more than one VM.
Design Overview:
Reviewed-by: Shamir Rabinovitch <address@hidden>
----------------
A server process is registered to UMAD framework (for this to work the
rdma_cm kernel module needs to be unloaded) and creates a unix socket to
listen to incoming request from clients.
A client process (such as QEMU) connects to this unix socket and
registers with its own GID.
TX:
----
When client needs to send rdma_cm MAD message it construct it the same
way as without this multiplexer, i.e. creates a umad packet but this
time it writes its content to the socket instead of calling umad_send().
The server, upon receiving such a message fetch local_comm_id from it so
a context for this session can be maintain and relay the message to UMAD
layer by calling umad_send().
RX:
----
The server creates a worker thread to process incoming rdma_cm MAD
messages. When an incoming message arrived (umad_recv()) the server,
depending on the message type (attr_id) looks for target client by
either searching in gid->fd table or in local_comm_id->fd table. With
the extracted fd the server relays to incoming message to the client.
Signed-off-by: Yuval Shaia <address@hidden>
Reviewed-by: Shamir Rabinovitch <address@hidden>
Signed-off-by: Marcel Apfelbaum <address@hidden>
Commit: 4082e533f640426a91d1a08c3aeb6824cd65e28a
https://github.com/qemu/qemu/commit/4082e533f640426a91d1a08c3aeb6824cd65e28a
Author: Yuval Shaia <address@hidden>
Date: 2018-12-22 (Sat, 22 Dec 2018)
Changed paths:
M hw/rdma/rdma_rm.c
M hw/rdma/rdma_rm_defs.h
M hw/rdma/vmw/pvrdma_qp_ops.c
Log Message:
-----------
hw/rdma: Add ability to force notification without re-arm
Upon completion of incoming packet the device pushes CQE to driver's RX
ring and notify the driver (msix).
While for data-path incoming packets the driver needs the ability to
control whether it wished to receive interrupts or not, for control-path
packets such as incoming MAD the driver needs to be notified anyway, it
even do not need to re-arm the notification bit.
Enhance the notification field to support this.
Signed-off-by: Yuval Shaia <address@hidden>
Reviewed-by: Marcel Apfelbaum <address@hidden>
Signed-off-by: Marcel Apfelbaum <address@hidden>
Commit: 46462cb1618e0a1e0a14e13bc08ffd02bc5f773e
https://github.com/qemu/qemu/commit/46462cb1618e0a1e0a14e13bc08ffd02bc5f773e
Author: Yuval Shaia <address@hidden>
Date: 2018-12-22 (Sat, 22 Dec 2018)
Changed paths:
M hw/rdma/rdma_backend.h
Log Message:
-----------
hw/rdma: Return qpn 1 if ibqp is NULL
Device is not supporting QP0, only QP1.
Signed-off-by: Yuval Shaia <address@hidden>
Reviewed-by: Marcel Apfelbaum <address@hidden>
Signed-off-by: Marcel Apfelbaum <address@hidden>
Commit: 305bdd7a57a52cf87f9bf3e85316b0f62fe7167c
https://github.com/qemu/qemu/commit/305bdd7a57a52cf87f9bf3e85316b0f62fe7167c
Author: Yuval Shaia <address@hidden>
Date: 2018-12-22 (Sat, 22 Dec 2018)
Changed paths:
M hw/rdma/rdma_backend.c
Log Message:
-----------
hw/rdma: Abort send-op if fail to create addr handler
Function create_ah might return NULL, let's exit with an error.
Signed-off-by: Yuval Shaia <address@hidden>
Reviewed-by: Marcel Apfelbaum <address@hidden>
Signed-off-by: Marcel Apfelbaum <address@hidden>
Commit: 605ec1663b51722a73046fed5453cb5efb994d85
https://github.com/qemu/qemu/commit/605ec1663b51722a73046fed5453cb5efb994d85
Author: Yuval Shaia <address@hidden>
Date: 2018-12-22 (Sat, 22 Dec 2018)
Changed paths:
M hw/rdma/rdma_backend.c
M hw/rdma/rdma_backend.h
M hw/rdma/rdma_backend_defs.h
M hw/rdma/vmw/pvrdma.h
M hw/rdma/vmw/pvrdma_main.c
Log Message:
-----------
hw/rdma: Add support for MAD packets
MAD (Management Datagram) packets are widely used by various modules
both in kernel and in user space for example the rdma_* API which is
used to create and maintain "connection" layer on top of RDMA uses
several types of MAD packets.
For more information please refer to chapter 13.4 in Volume 1
Architecture Specification, Release 1.1 available here:
https://www.infinibandta.org/ibta-specifications-download/
To support MAD packets the device uses an external utility
(contrib/rdmacm-mux) to relay packets from and to the guest driver.
Signed-off-by: Yuval Shaia <address@hidden>
Reviewed-by: Marcel Apfelbaum<address@hidden>
Signed-off-by: Marcel Apfelbaum <address@hidden>
Commit: f00c48caab0360240ed5efd7df5245a6fa031a07
https://github.com/qemu/qemu/commit/f00c48caab0360240ed5efd7df5245a6fa031a07
Author: Yuval Shaia <address@hidden>
Date: 2018-12-22 (Sat, 22 Dec 2018)
Changed paths:
M hw/rdma/vmw/pvrdma_main.c
Log Message:
-----------
hw/pvrdma: Make function reset_device return void
This function cannot fail - fix it to return void
Signed-off-by: Yuval Shaia <address@hidden>
Reviewed-by: Marcel Apfelbaum <address@hidden>
Signed-off-by: Marcel Apfelbaum <address@hidden>
Commit: 536692ca1db66f5b428299b3401735a113b39bd3
https://github.com/qemu/qemu/commit/536692ca1db66f5b428299b3401735a113b39bd3
Author: Yuval Shaia <address@hidden>
Date: 2018-12-22 (Sat, 22 Dec 2018)
Changed paths:
M hw/rdma/vmw/pvrdma.h
Log Message:
-----------
hw/pvrdma: Make default pkey 0xFFFF
Commit 6e7dba23af ("hw/pvrdma: Make default pkey 0xFFFF") exports
default pkey as external definition but omit the change from 0x7FFF to
0xFFFF.
Fixes: 6e7dba23af ("hw/pvrdma: Make default pkey 0xFFFF")
Signed-off-by: Yuval Shaia <address@hidden>
Reviewed-by: Marcel Apfelbaum <address@hidden>
Signed-off-by: Marcel Apfelbaum <address@hidden>
Commit: 2bff59e699212960838ddf99ab4ee238d0e276f5
https://github.com/qemu/qemu/commit/2bff59e699212960838ddf99ab4ee238d0e276f5
Author: Yuval Shaia <address@hidden>
Date: 2018-12-22 (Sat, 22 Dec 2018)
Changed paths:
M hw/rdma/vmw/pvrdma_qp_ops.c
Log Message:
-----------
hw/pvrdma: Set the correct opcode for recv completion
The function pvrdma_post_cqe populates CQE entry with opcode from the
given completion element. For receive operation value was not set. Fix
it by setting it to IBV_WC_RECV.
Signed-off-by: Yuval Shaia <address@hidden>
Reviewed-by: Marcel Apfelbaum <address@hidden>
Signed-off-by: Marcel Apfelbaum <address@hidden>
Commit: 1625bb13dadad959ce1a6a6912c8e5c167591e87
https://github.com/qemu/qemu/commit/1625bb13dadad959ce1a6a6912c8e5c167591e87
Author: Yuval Shaia <address@hidden>
Date: 2018-12-22 (Sat, 22 Dec 2018)
Changed paths:
M hw/rdma/vmw/pvrdma_qp_ops.c
Log Message:
-----------
hw/pvrdma: Set the correct opcode for send completion
opcode for WC should be set by the device and not taken from work
element.
Signed-off-by: Yuval Shaia <address@hidden>
Reviewed-by: Marcel Apfelbaum <address@hidden>
Signed-off-by: Marcel Apfelbaum <address@hidden>
Commit: 4a5c9903f3164cef134e7f81b361b3fa7d5c0b52
https://github.com/qemu/qemu/commit/4a5c9903f3164cef134e7f81b361b3fa7d5c0b52
Author: Yuval Shaia <address@hidden>
Date: 2018-12-22 (Sat, 22 Dec 2018)
Changed paths:
M MAINTAINERS
M Makefile.objs
M qapi/qapi-schema.json
A qapi/rdma.json
Log Message:
-----------
qapi: Define new QMP message for pvrdma
pvrdma requires that the same GID attached to it will be attached to the
backend device in the host.
A new QMP messages is defined so pvrdma device can broadcast any change
made to its GID table. This event is captured by libvirt which in turn
will update the GID table in the backend device.
Signed-off-by: Yuval Shaia <address@hidden>
Reviewed-by: Marcel Apfelbaum <address@hidden>
Acked-by: Markus Armbruster <address@hidden>
Signed-off-by: Marcel Apfelbaum <address@hidden>
Commit: 2b05705dc8ad80c09a3aa9cc70c14fb8323b0fd3
https://github.com/qemu/qemu/commit/2b05705dc8ad80c09a3aa9cc70c14fb8323b0fd3
Author: Yuval Shaia <address@hidden>
Date: 2018-12-22 (Sat, 22 Dec 2018)
Changed paths:
M hw/rdma/rdma_backend.c
M hw/rdma/rdma_backend.h
M hw/rdma/rdma_backend_defs.h
M hw/rdma/rdma_rm.c
M hw/rdma/rdma_rm.h
M hw/rdma/rdma_rm_defs.h
M hw/rdma/rdma_utils.h
M hw/rdma/vmw/pvrdma.h
M hw/rdma/vmw/pvrdma_cmd.c
M hw/rdma/vmw/pvrdma_main.c
M hw/rdma/vmw/pvrdma_qp_ops.c
Log Message:
-----------
hw/pvrdma: Add support to allow guest to configure GID table
The control over the RDMA device's GID table is done by updating the
device's Ethernet function addresses.
Usually the first GID entry is determined by the MAC address, the second
by the first IPv6 address and the third by the IPv4 address. Other
entries can be added by adding more IP addresses. The opposite is the
same, i.e. whenever an address is removed, the corresponding GID entry
is removed.
The process is done by the network and RDMA stacks. Whenever an address
is added the ib_core driver is notified and calls the device driver
add_gid function which in turn update the device.
To support this in pvrdma device we need to hook into the create_bind
and destroy_bind HW commands triggered by pvrdma driver in guest.
Whenever a change is made to the pvrdma port's GID table a special QMP
message is sent to be processed by libvirt to update the address of the
backend Ethernet device.
Signed-off-by: Yuval Shaia <address@hidden>
Reviewed-by: Marcel Apfelbaum<address@hidden>
Signed-off-by: Marcel Apfelbaum <address@hidden>
Commit: 317639aafd3c89e601481e6fbf2a89432ff14e45
https://github.com/qemu/qemu/commit/317639aafd3c89e601481e6fbf2a89432ff14e45
Author: Yuval Shaia <address@hidden>
Date: 2018-12-22 (Sat, 22 Dec 2018)
Changed paths:
M hw/net/vmxnet3.c
A hw/net/vmxnet3_defs.h
Log Message:
-----------
vmxnet3: Move some definitions to header file
pvrdma setup requires vmxnet3 device on PCI function 0 and PVRDMA device
on PCI function 1.
pvrdma device needs to access vmxnet3 device object for several reasons:
1. Make sure PCI function 0 is vmxnet3.
2. To monitor vmxnet3 device state.
3. To configure node_guid accoring to vmxnet3 device's MAC address.
To be able to access vmxnet3 device the definition of VMXNET3State is
moved to a new header file.
Signed-off-by: Yuval Shaia <address@hidden>
Reviewed-by: Dmitry Fleytman <address@hidden>
Signed-off-by: Marcel Apfelbaum <address@hidden>
Commit: d961ead16edc03b850f906451bb995fe1a6513f1
https://github.com/qemu/qemu/commit/d961ead16edc03b850f906451bb995fe1a6513f1
Author: Yuval Shaia <address@hidden>
Date: 2018-12-22 (Sat, 22 Dec 2018)
Changed paths:
M hw/rdma/vmw/pvrdma.h
M hw/rdma/vmw/pvrdma_main.c
Log Message:
-----------
hw/pvrdma: Make sure PCI function 0 is vmxnet3
Guest driver enforces it, we should also.
Signed-off-by: Yuval Shaia <address@hidden>
Reviewed-by: Marcel Apfelbaum <address@hidden>
Signed-off-by: Marcel Apfelbaum <address@hidden>
Commit: 028c3f93d61d33f7335ebef475aa2ab1faa8b20a
https://github.com/qemu/qemu/commit/028c3f93d61d33f7335ebef475aa2ab1faa8b20a
Author: Yuval Shaia <address@hidden>
Date: 2018-12-22 (Sat, 22 Dec 2018)
Changed paths:
M hw/rdma/rdma_utils.h
M hw/rdma/vmw/pvrdma_cmd.c
M hw/rdma/vmw/pvrdma_main.c
Log Message:
-----------
hw/rdma: Initialize node_guid from vmxnet3 mac address
node_guid should be set once device is load.
Make node_guid be GID format (32 bit) of PCI function 0 vmxnet3 device's
MAC.
A new function was added to do the conversion.
So for example the MAC 56:b6:44:e9:62:dc will be converted to GID
54b6:44ff:fee9:62dc.
Signed-off-by: Yuval Shaia <address@hidden>
Reviewed-by: Marcel Apfelbaum <address@hidden>
Signed-off-by: Marcel Apfelbaum <address@hidden>
Commit: e976ebc87cccd0e055d6337543de3f2db4650b17
https://github.com/qemu/qemu/commit/e976ebc87cccd0e055d6337543de3f2db4650b17
Author: Yuval Shaia <address@hidden>
Date: 2018-12-22 (Sat, 22 Dec 2018)
Changed paths:
M hw/rdma/vmw/pvrdma_cmd.c
Log Message:
-----------
hw/pvrdma: Make device state depend on Ethernet function state
User should be able to control the device by changing Ethernet function
state so if user runs 'ifconfig ens3 down' the PVRDMA function should be
down as well.
Signed-off-by: Yuval Shaia <address@hidden>
Reviewed-by: Marcel Apfelbaum <address@hidden>
Signed-off-by: Marcel Apfelbaum <address@hidden>
Commit: eaac01005d7536122d5869fa809dee7ced0c5e19
https://github.com/qemu/qemu/commit/eaac01005d7536122d5869fa809dee7ced0c5e19
Author: Yuval Shaia <address@hidden>
Date: 2018-12-22 (Sat, 22 Dec 2018)
Changed paths:
M hw/rdma/rdma_backend.c
M hw/rdma/rdma_backend.h
M hw/rdma/vmw/pvrdma_qp_ops.c
Log Message:
-----------
hw/pvrdma: Fill all CQE fields
Add ability to pass specific WC attributes to CQE such as GRH_BIT flag.
Signed-off-by: Yuval Shaia <address@hidden>
Reviewed-by: Marcel Apfelbaum <address@hidden>
Signed-off-by: Marcel Apfelbaum <address@hidden>
Commit: 091782171fa0d339f3af3c0f3a4aeb7a2e8c39fc
https://github.com/qemu/qemu/commit/091782171fa0d339f3af3c0f3a4aeb7a2e8c39fc
Author: Yuval Shaia <address@hidden>
Date: 2018-12-22 (Sat, 22 Dec 2018)
Changed paths:
M hw/rdma/vmw/pvrdma_cmd.c
Log Message:
-----------
hw/pvrdma: Fill error code in command's response
Driver checks error code let's set it.
In addition, for code simplification purposes, set response's fields
ack, response and err outside of the scope of command handlers.
Signed-off-by: Yuval Shaia <address@hidden>
Reviewed-by: Marcel Apfelbaum <address@hidden>
Signed-off-by: Marcel Apfelbaum <address@hidden>
Commit: 14c74f720738e17ff2569ba66c0d32a5f0f69a69
https://github.com/qemu/qemu/commit/14c74f720738e17ff2569ba66c0d32a5f0f69a69
Author: Yuval Shaia <address@hidden>
Date: 2018-12-22 (Sat, 22 Dec 2018)
Changed paths:
M hw/rdma/rdma_rm.c
M hw/rdma/rdma_rm.h
M hw/rdma/rdma_rm_defs.h
Log Message:
-----------
hw/rdma: Remove unneeded code that handles more that one port
Device supports only one port, let's remove a dead code that handles
more than one port.
Signed-off-by: Yuval Shaia <address@hidden>
Reviewed-by: Marcel Apfelbaum <address@hidden>
Signed-off-by: Marcel Apfelbaum <address@hidden>
Commit: 2dadd7538562b01ac50791c28fc1b95209dce68a
https://github.com/qemu/qemu/commit/2dadd7538562b01ac50791c28fc1b95209dce68a
Author: Yuval Shaia <address@hidden>
Date: 2018-12-22 (Sat, 22 Dec 2018)
Changed paths:
M include/sysemu/sysemu.h
M vl.c
Log Message:
-----------
vl: Introduce shutdown_notifiers
Notifier will be used for signaling shutdown event to inform system is
shutdown. This will allow devices and other component to run some
cleanup code needed before VM is shutdown.
Signed-off-by: Yuval Shaia <address@hidden>
Reviewed-by: Cornelia Huck <address@hidden>
Signed-off-by: Marcel Apfelbaum <address@hidden>
Commit: ffa65d97fcdce790d25c7b059cf71e6561499530
https://github.com/qemu/qemu/commit/ffa65d97fcdce790d25c7b059cf71e6561499530
Author: Yuval Shaia <address@hidden>
Date: 2018-12-22 (Sat, 22 Dec 2018)
Changed paths:
M hw/rdma/vmw/pvrdma.h
M hw/rdma/vmw/pvrdma_main.c
Log Message:
-----------
hw/pvrdma: Clean device's resource when system is shutdown
In order to clean some external resources such as GIDs, QPs etc,
register to receive notification when VM is shutdown.
Signed-off-by: Yuval Shaia <address@hidden>
Reviewed-by: Marcel Apfelbaum <address@hidden>
Signed-off-by: Marcel Apfelbaum <address@hidden>
Commit: 9a3053d2e8104c9c8192d79c6294918a6fb7742b
https://github.com/qemu/qemu/commit/9a3053d2e8104c9c8192d79c6294918a6fb7742b
Author: Yuval Shaia <address@hidden>
Date: 2018-12-22 (Sat, 22 Dec 2018)
Changed paths:
M hw/rdma/rdma_rm.c
Log Message:
-----------
hw/rdma: Do not use bitmap_zero_extend to free bitmap
bitmap_zero_extend is designed to work for extending, not for
shrinking.
Using g_free instead.
Signed-off-by: Yuval Shaia <address@hidden>
Reviewed-by: Marcel Apfelbaum <address@hidden>
Signed-off-by: Marcel Apfelbaum <address@hidden>
Commit: 305fd2ba06f49c8d969a8e02113e105304fd9422
https://github.com/qemu/qemu/commit/305fd2ba06f49c8d969a8e02113e105304fd9422
Author: Yuval Shaia <address@hidden>
Date: 2018-12-22 (Sat, 22 Dec 2018)
Changed paths:
M hw/rdma/rdma_rm.c
Log Message:
-----------
hw/rdma: Do not call rdma_backend_del_gid on an empty gid
When device goes down the function fini_ports loops over all entries in
gid table regardless of the fact whether entry is valid or not. In case
that entry is not valid we'd like to skip from any further processing in
backend device.
Signed-off-by: Yuval Shaia <address@hidden>
Reviewed-by: Marcel Apfelbaum <address@hidden>
Signed-off-by: Marcel Apfelbaum <address@hidden>
Commit: 46b69a88241a1e8339a3ffd05050cd418808c71d
https://github.com/qemu/qemu/commit/46b69a88241a1e8339a3ffd05050cd418808c71d
Author: Yuval Shaia <address@hidden>
Date: 2018-12-22 (Sat, 22 Dec 2018)
Changed paths:
M docs/pvrdma.txt
Log Message:
-----------
docs: Update pvrdma device documentation
Interface with the device is changed with the addition of support for
MAD packets.
Adjust documentation accordingly.
While there fix a minor mistake which may lead to think that there is a
relation between using RXE on host and the compatibility with bare-metal
peers.
Signed-off-by: Yuval Shaia <address@hidden>
Reviewed-by: Marcel Apfelbaum<address@hidden>
Signed-off-by: Marcel Apfelbaum <address@hidden>
Commit: cce648613bc802be1b894227f7fd94d88476ea07
https://github.com/qemu/qemu/commit/cce648613bc802be1b894227f7fd94d88476ea07
Author: Prasad J Pandit <address@hidden>
Date: 2018-12-22 (Sat, 22 Dec 2018)
Changed paths:
M hw/rdma/vmw/pvrdma_main.c
Log Message:
-----------
pvrdma: release device resources in case of an error
If during pvrdma device initialisation an error occurs,
pvrdma_realize() does not release memory resources, leading
to memory leakage.
Reported-by: Li Qiang <address@hidden>
Signed-off-by: Prasad J Pandit <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Yuval Shaia <address@hidden>
Signed-off-by: Marcel Apfelbaum <address@hidden>
Commit: 0e68373cc2b3a063ce067bc0cc3edaf370752890
https://github.com/qemu/qemu/commit/0e68373cc2b3a063ce067bc0cc3edaf370752890
Author: Prasad J Pandit <address@hidden>
Date: 2018-12-22 (Sat, 22 Dec 2018)
Changed paths:
M hw/rdma/rdma_backend.c
Log Message:
-----------
rdma: check num_sge does not exceed MAX_SGE
rdma back-end has scatter/gather array ibv_sge[MAX_SGE=4] set
to have 4 elements. A guest could send a 'PvrdmaSqWqe' ring element
with 'num_sge' set to > MAX_SGE, which may lead to OOB access issue.
Add check to avoid it.
Reported-by: Saar Amar <address@hidden>
Signed-off-by: Prasad J Pandit <address@hidden>
Reviewed-by: Yuval Shaia <address@hidden>
Signed-off-by: Marcel Apfelbaum <address@hidden>
Commit: 2aa86456fb938a11f2b7bd57c8643c213218681c
https://github.com/qemu/qemu/commit/2aa86456fb938a11f2b7bd57c8643c213218681c
Author: Prasad J Pandit <address@hidden>
Date: 2018-12-22 (Sat, 22 Dec 2018)
Changed paths:
M hw/rdma/vmw/pvrdma_main.c
Log Message:
-----------
pvrdma: add uar_read routine
Define skeleton 'uar_read' routine. Avoid NULL dereference.
Reported-by: Li Qiang <address@hidden>
Signed-off-by: Prasad J Pandit <address@hidden>
Reviewed-by: Marcel Apfelbaum <address@hidden>
Signed-off-by: Marcel Apfelbaum <address@hidden>
Commit: 2c858ce5da8ae6689c75182b73bc455a291cad41
https://github.com/qemu/qemu/commit/2c858ce5da8ae6689c75182b73bc455a291cad41
Author: Prasad J Pandit <address@hidden>
Date: 2018-12-22 (Sat, 22 Dec 2018)
Changed paths:
M hw/rdma/vmw/pvrdma_cmd.c
Log Message:
-----------
pvrdma: check number of pages when creating rings
When creating CQ/QP rings, an object can have up to
PVRDMA_MAX_FAST_REG_PAGES 8 pages. Check 'npages' parameter
to avoid excessive memory allocation or a null dereference.
Reported-by: Li Qiang <address@hidden>
Signed-off-by: Prasad J Pandit <address@hidden>
Reviewed-by: Yuval Shaia <address@hidden>
Signed-off-by: Marcel Apfelbaum <address@hidden>
Commit: 509f57c98e7536905bb4902363d0cba66ce7e089
https://github.com/qemu/qemu/commit/509f57c98e7536905bb4902363d0cba66ce7e089
Author: Prasad J Pandit <address@hidden>
Date: 2018-12-22 (Sat, 22 Dec 2018)
Changed paths:
M hw/rdma/vmw/pvrdma_cmd.c
Log Message:
-----------
pvrdma: release ring object in case of an error
create_cq and create_qp routines allocate ring object, but it's
not released in case of an error, leading to memory leakage.
Reported-by: Li Qiang <address@hidden>
Signed-off-by: Prasad J Pandit <address@hidden>
Reviewed-by: Yuval Shaia <address@hidden>
Signed-off-by: Marcel Apfelbaum <address@hidden>
Commit: 7be3a21325e95e3f0bb46d1a67d5fc702b24701f
https://github.com/qemu/qemu/commit/7be3a21325e95e3f0bb46d1a67d5fc702b24701f
Author: Prasad J Pandit <address@hidden>
Date: 2018-12-22 (Sat, 22 Dec 2018)
Changed paths:
M hw/rdma/rdma_backend.c
Log Message:
-----------
rdma: remove unused VENDOR_ERR_NO_SGE macro
With commit 4481985c (rdma: check num_sge does not exceed MAX_SGE)
macro VENDOR_ERR_NO_SGE is no longer in use - delete it.
Signed-off-by: Prasad J Pandit <address@hidden>
Reviewed-by: Yuval Shaia <address@hidden>
Signed-off-by: Marcel Apfelbaum <address@hidden>
Commit: f1e2e38ee0136b7710a2caa347049818afd57a1b
https://github.com/qemu/qemu/commit/f1e2e38ee0136b7710a2caa347049818afd57a1b
Author: Prasad J Pandit <address@hidden>
Date: 2018-12-22 (Sat, 22 Dec 2018)
Changed paths:
M hw/rdma/vmw/pvrdma_dev_ring.c
Log Message:
-----------
pvrdma: check return value from pvrdma_idx_ring_has_ routines
pvrdma_idx_ring_has_[data/space] routines also return invalid
index PVRDMA_INVALID_IDX[=-1], if ring has no data/space. Check
return value from these routines to avoid plausible infinite loops.
Reported-by: Li Qiang <address@hidden>
Signed-off-by: Prasad J Pandit <address@hidden>
Reviewed-by: Yuval Shaia <address@hidden>
Signed-off-by: Marcel Apfelbaum <address@hidden>
Commit: 9b2e891ec5ccdb4a7d583b77988848282606fdea
https://github.com/qemu/qemu/commit/9b2e891ec5ccdb4a7d583b77988848282606fdea
Author: Peter Maydell <address@hidden>
Date: 2018-12-22 (Sat, 22 Dec 2018)
Changed paths:
M MAINTAINERS
M Makefile
M Makefile.objs
A contrib/rdmacm-mux/Makefile.objs
A contrib/rdmacm-mux/main.c
A contrib/rdmacm-mux/rdmacm-mux.h
M docs/pvrdma.txt
M hw/net/vmxnet3.c
A hw/net/vmxnet3_defs.h
M hw/rdma/rdma_backend.c
M hw/rdma/rdma_backend.h
M hw/rdma/rdma_backend_defs.h
M hw/rdma/rdma_rm.c
M hw/rdma/rdma_rm.h
M hw/rdma/rdma_rm_defs.h
M hw/rdma/rdma_utils.h
M hw/rdma/vmw/pvrdma.h
M hw/rdma/vmw/pvrdma_cmd.c
M hw/rdma/vmw/pvrdma_dev_ring.c
M hw/rdma/vmw/pvrdma_main.c
M hw/rdma/vmw/pvrdma_qp_ops.c
M include/sysemu/sysemu.h
M qapi/qapi-schema.json
A qapi/rdma.json
M vl.c
Log Message:
-----------
Merge remote-tracking branch 'remotes/marcel/tags/rdma-pull-request' into
staging
RDMA queue
* Add support for RDMA MAD
* Various fixes for the pvrdma backend
# gpg: Signature made Sat 22 Dec 2018 09:36:36 GMT
# gpg: using RSA key 36D4C0F0CF2FE46D
# gpg: Good signature from "Marcel Apfelbaum <address@hidden>"
# gpg: aka "Marcel Apfelbaum <address@hidden>"
# gpg: aka "Marcel Apfelbaum <address@hidden>"
# gpg: WARNING: This key is not certified with sufficiently trusted signatures!
# gpg: It is not certain that the signature belongs to the owner.
# Primary key fingerprint: B1C6 3A57 F92E 08F2 640F 31F5 36D4 C0F0 CF2F E46D
* remotes/marcel/tags/rdma-pull-request: (31 commits)
pvrdma: check return value from pvrdma_idx_ring_has_ routines
rdma: remove unused VENDOR_ERR_NO_SGE macro
pvrdma: release ring object in case of an error
pvrdma: check number of pages when creating rings
pvrdma: add uar_read routine
rdma: check num_sge does not exceed MAX_SGE
pvrdma: release device resources in case of an error
docs: Update pvrdma device documentation
hw/rdma: Do not call rdma_backend_del_gid on an empty gid
hw/rdma: Do not use bitmap_zero_extend to free bitmap
hw/pvrdma: Clean device's resource when system is shutdown
vl: Introduce shutdown_notifiers
hw/rdma: Remove unneeded code that handles more that one port
hw/pvrdma: Fill error code in command's response
hw/pvrdma: Fill all CQE fields
hw/pvrdma: Make device state depend on Ethernet function state
hw/rdma: Initialize node_guid from vmxnet3 mac address
hw/pvrdma: Make sure PCI function 0 is vmxnet3
vmxnet3: Move some definitions to header file
hw/pvrdma: Add support to allow guest to configure GID table
...
Signed-off-by: Peter Maydell <address@hidden>
Compare: https://github.com/qemu/qemu/compare/891ff9f4a371...9b2e891ec5cc
**NOTE:** This service has been marked for deprecation:
https://developer.github.com/changes/2018-04-25-github-services-deprecation/
Functionality will be removed from GitHub.com on January 31st, 2019.
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Qemu-commits] [qemu/qemu] dee2e5: hw/pvrdma: Check the correct return value,
GitHub <=