#
fca4d518 |
| 09-Sep-2013 |
Jon Mason <jon.mason@intel.com> |
NTB: Fix ntb_transport link down race
A WARN_ON is being hit in ntb_qp_link_work due to the NTB transport link being down while the ntb qp link is still active. This is caused by the transport link
NTB: Fix ntb_transport link down race
A WARN_ON is being hit in ntb_qp_link_work due to the NTB transport link being down while the ntb qp link is still active. This is caused by the transport link being brought down prior to the qp link worker thread being terminated. To correct this, shutdown the qp's prior to bringing the transport link down. Also, only call the qp worker thread if it is in interrupt context, otherwise call the function directly.
Signed-off-by: Jon Mason <jon.mason@intel.com>
show more ...
|
#
0776ae7b |
| 18-Oct-2013 |
Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com> |
dmaengine: remove DMA unmap flags
Remove no longer needed DMA unmap flags: - DMA_COMPL_SKIP_SRC_UNMAP - DMA_COMPL_SKIP_DEST_UNMAP - DMA_COMPL_SRC_UNMAP_SINGLE - DMA_COMPL_DEST_UNMAP_SINGLE
Cc: Vino
dmaengine: remove DMA unmap flags
Remove no longer needed DMA unmap flags: - DMA_COMPL_SKIP_SRC_UNMAP - DMA_COMPL_SKIP_DEST_UNMAP - DMA_COMPL_SRC_UNMAP_SINGLE - DMA_COMPL_DEST_UNMAP_SINGLE
Cc: Vinod Koul <vinod.koul@intel.com> Cc: Tomasz Figa <t.figa@samsung.com> Cc: Dave Jiang <dave.jiang@intel.com> Signed-off-by: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com> Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com> Acked-by: Jon Mason <jon.mason@intel.com> Acked-by: Mark Brown <broonie@linaro.org> [djbw: clean up straggling skip unmap flags in ntb] Signed-off-by: Dan Williams <dan.j.williams@intel.com>
show more ...
|
#
6f57fd05 |
| 18-Oct-2013 |
Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com> |
NTB: convert to dmaengine_unmap_data
Use the generic unmap object to unmap dma buffers.
Cc: Vinod Koul <vinod.koul@intel.com> Cc: Tomasz Figa <t.figa@samsung.com> Cc: Dave Jiang <dave.jiang@intel.c
NTB: convert to dmaengine_unmap_data
Use the generic unmap object to unmap dma buffers.
Cc: Vinod Koul <vinod.koul@intel.com> Cc: Tomasz Figa <t.figa@samsung.com> Cc: Dave Jiang <dave.jiang@intel.com> Signed-off-by: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com> Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com> Acked-by: Jon Mason <jon.mason@intel.com> [djbw: fix up unmap len, and GFP flags] Signed-off-by: Dan Williams <dan.j.williams@intel.com>
show more ...
|
#
f9a2cf89 |
| 29-Jul-2013 |
Jon Mason <jon.mason@intel.com> |
NTB: Comment Fix
Add "data" ntb_register_db_callback parameter description comment and correct poor spelling.
Signed-off-by: Jon Mason <jon.mason@intel.com>
|
#
3daa3a07 |
| 03-Sep-2013 |
Jon Mason <jon.mason@intel.com> |
NTB: Remove unused variable
Remove unused pci_dev variable from ntb_transport_free()
Signed-off-by: Jon Mason <jon.mason@intel.com>
|
#
49793889 |
| 15-Jul-2013 |
Jon Mason <jon.mason@intel.com> |
NTB: Rename Variables for NTB-RP
Many variable names in the NTB driver refer to the primary or secondary side. However, these variables will be used to access the reverse case when in NTB-RP mode.
NTB: Rename Variables for NTB-RP
Many variable names in the NTB driver refer to the primary or secondary side. However, these variables will be used to access the reverse case when in NTB-RP mode. Make these names more generic in anticipation of NTB-RP support.
Signed-off-by: Jon Mason <jon.mason@intel.com>
show more ...
|
Revision tags: v3.9-rc7, v3.9-rc6, v3.9-rc5, v3.9-rc4, v3.9-rc3, v3.9-rc2, v3.9-rc1, v3.8 |
|
#
282a2fee |
| 12-Feb-2013 |
Jon Mason <jon.mason@intel.com> |
NTB: Use DMA Engine to Transmit and Receive
Allocate and use a DMA engine channel to transmit and receive data over NTB. If none is allocated, fall back to using the CPU to transfer data.
Signed-o
NTB: Use DMA Engine to Transmit and Receive
Allocate and use a DMA engine channel to transmit and receive data over NTB. If none is allocated, fall back to using the CPU to transfer data.
Signed-off-by: Jon Mason <jon.mason@intel.com> Reviewed-by: Dan Williams <dan.j.williams@intel.com> Reviewed-by: Dave Jiang <dave.jiang@intel.com>
show more ...
|
#
948d3a65 |
| 18-Apr-2013 |
Jon Mason <jon.mason@intel.com> |
NTB: Xeon Errata Workaround
There is a Xeon hardware errata related to writes to SDOORBELL or B2BDOORBELL in conjunction with inbound access to NTB MMIO Space, which may hang the system. To workaro
NTB: Xeon Errata Workaround
There is a Xeon hardware errata related to writes to SDOORBELL or B2BDOORBELL in conjunction with inbound access to NTB MMIO Space, which may hang the system. To workaround this issue, use one of the memory windows to access the interrupt and scratch pad registers on the remote system. This bypasses the issue, but removes one of the memory windows from use by the transport. This reduction of MWs necessitates adding some logic to determine the number of available MWs.
Since some NTB usage methodologies may have unidirectional traffic, the ability to disable the workaround via modparm has been added.
See BF113 in http://www.intel.com/content/dam/www/public/us/en/documents/specification-updates/xeon-c5500-c3500-spec-update.pdf See BT119 in http://www.intel.com/content/dam/www/public/us/en/documents/specification-updates/xeon-e5-family-spec-update.pdf
Signed-off-by: Jon Mason <jon.mason@intel.com>
show more ...
|
#
1517a3f2 |
| 30-Jul-2013 |
Jon Mason <jon.mason@intel.com> |
NTB: Correct debugfs to work with more than 1 NTB Device
Debugfs was setup in NTB to only have a single debugfs directory. This resulted in the leaking of debugfs directories and files when multipl
NTB: Correct debugfs to work with more than 1 NTB Device
Debugfs was setup in NTB to only have a single debugfs directory. This resulted in the leaking of debugfs directories and files when multiple NTB devices were present, due to each device stomping on the variables containing the previous device's values (thus preventing them from being freed on cleanup). Correct this by creating a secondary directory of the PCI BDF for each device present, and nesting the previously existing information in those directories.
Signed-off-by: Jon Mason <jon.mason@intel.com>
show more ...
|
#
8b19d450 |
| 26-Apr-2013 |
Jon Mason <jon.mason@intel.com> |
NTB: Multiple NTB client fix
Fix issue with adding multiple ntb client devices to the ntb virtual bus. Previously, multiple devices would be added with the same name, resulting in crashes. To get
NTB: Multiple NTB client fix
Fix issue with adding multiple ntb client devices to the ntb virtual bus. Previously, multiple devices would be added with the same name, resulting in crashes. To get around this issue, add a unique number to the device when it is added.
Signed-off-by: Jon Mason <jon.mason@intel.com>
show more ...
|
Revision tags: v3.8-rc7, v3.8-rc6, v3.8-rc5, v3.8-rc4 |
|
#
c336acd3 |
| 17-Jan-2013 |
Jon Mason <jon.mason@intel.com> |
NTB: memcpy lockup workaround
The system will appear to lockup for long periods of time due to the NTB driver spending too much time in memcpy. Avoid this by reducing the number of packets that can
NTB: memcpy lockup workaround
The system will appear to lockup for long periods of time due to the NTB driver spending too much time in memcpy. Avoid this by reducing the number of packets that can be serviced on a given interrupt.
Signed-off-by: Jon Mason <jon.mason@intel.com>
show more ...
|
#
c9d534c8 |
| 01-Feb-2013 |
Jon Mason <jon.mason@intel.com> |
NTB: Correctly handle receive buffers of the minimal size
The ring logic of the NTB receive buffer/transmit memory window requires there to be at least 2 payload sized allotments. For the minimal s
NTB: Correctly handle receive buffers of the minimal size
The ring logic of the NTB receive buffer/transmit memory window requires there to be at least 2 payload sized allotments. For the minimal size case, split the buffer into two and set the transport_mtu to the appropriate size.
Signed-off-by: Jon Mason <jon.mason@intel.com>
show more ...
|
#
90f9e934 |
| 01-Feb-2013 |
Jon Mason <jon.mason@intel.com> |
NTB: reset tx_index on link toggle
If the NTB link toggles, the driver could stop receiving due to the tx_index not being set to 0 on the transmitting size on a link-up event. This is due to the dri
NTB: reset tx_index on link toggle
If the NTB link toggles, the driver could stop receiving due to the tx_index not being set to 0 on the transmitting size on a link-up event. This is due to the driver expecting the incoming data to start at the beginning of the receive buffer and not at a random place.
Signed-off-by: Jon Mason <jon.mason@intel.com>
show more ...
|
#
b77b2637 |
| 01-Feb-2013 |
Jon Mason <jon.mason@intel.com> |
NTB: Link toggle memory leak
Each link-up will allocate a new NTB receive buffer when the NTB properties are negotiated with the remote system. These allocations did not check for existing buffers
NTB: Link toggle memory leak
Each link-up will allocate a new NTB receive buffer when the NTB properties are negotiated with the remote system. These allocations did not check for existing buffers and thus did not free them. Now, the driver will check for an existing buffer and free it if not of the correct size, before trying to alloc a new one.
Signed-off-by: Jon Mason <jon.mason@intel.com>
show more ...
|
#
113fc505 |
| 30-Jan-2013 |
Jon Mason <jon.mason@intel.com> |
NTB: Handle 64bit BAR sizes
64bit BAR sizes are permissible with an NTB device. To support them various modifications and clean-ups were required, most significantly using 2 32bit scratch pad regis
NTB: Handle 64bit BAR sizes
64bit BAR sizes are permissible with an NTB device. To support them various modifications and clean-ups were required, most significantly using 2 32bit scratch pad registers for each BAR.
Also, modify the driver to allow more than 2 Memory Windows.
Signed-off-by: Jon Mason <jon.mason@intel.com>
show more ...
|
#
cc0f868d |
| 23-Jan-2013 |
Dan Carpenter <dan.carpenter@oracle.com> |
NTB: fix pointer math issues
->remote_rx_info and ->rx_info are struct ntb_rx_info pointers. If we add sizeof(struct ntb_rx_info) then it goes too far.
Signed-off-by: Dan Carpenter <dan.carpenter@
NTB: fix pointer math issues
->remote_rx_info and ->rx_info are struct ntb_rx_info pointers. If we add sizeof(struct ntb_rx_info) then it goes too far.
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> Signed-off-by: Jon Mason <jon.mason@intel.com>
show more ...
|
#
186f27ff |
| 22-Jan-2013 |
Jon Mason <jon.mason@intel.com> |
NTB: variable dereferenced before check
Correct instances of variable dereferencing before checking its value on the functions exported to the client drivers. Also, add sanity checks for all export
NTB: variable dereferenced before check
Correct instances of variable dereferencing before checking its value on the functions exported to the client drivers. Also, add sanity checks for all exported functions.
Reported-by: Dan Carpenter <dan.carpenter@oracle.com> Signed-off-by: Jon Mason <jon.mason@intel.com>
show more ...
|
#
74465645 |
| 21-Jan-2013 |
Jon Mason <jon.mason@intel.com> |
NTB: Fix Sparse Warnings
Address the sparse warnings and resulting fallout
Signed-off-by: Jon Mason <jon.mason@intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
#
448c6fb3 |
| 19-Jan-2013 |
Jon Mason <jon.mason@intel.com> |
NTB: Out of free receive entries issue
If the NTB client driver enqueues the maximum number of rx buffers, it will not be able to re-enqueue another in its callback handler due to a lack of free ent
NTB: Out of free receive entries issue
If the NTB client driver enqueues the maximum number of rx buffers, it will not be able to re-enqueue another in its callback handler due to a lack of free entries. This can be avoided by adding the current entry to the free queue prior to calling the client callback handler. With this change, ntb_netdev will no longer encounter a rx error on its first packet.
Signed-off-by: Jon Mason <jon.mason@intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
show more ...
|
#
793c20e9 |
| 19-Jan-2013 |
Jon Mason <jon.mason@intel.com> |
NTB: Remove reads across NTB
CPU reads across NTB are slow(er) and can hang the local system if an ECC error is encountered on the remote. To work around the need for a read, have the remote side w
NTB: Remove reads across NTB
CPU reads across NTB are slow(er) and can hang the local system if an ECC error is encountered on the remote. To work around the need for a read, have the remote side write its current position in the rx buffer to the local system's buffer and use that to see if there is room when transmitting.
Signed-off-by: Jon Mason <jon.mason@intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
show more ...
|
#
d7237e22 |
| 19-Jan-2013 |
Jon Mason <jon.mason@intel.com> |
NTB: correct stack usage warning in debugfs_read
Correct gcc warning of using too much stack debugfs_read. This is done by kmallocing the buffer instead of using the char array on stack. Also, shri
NTB: correct stack usage warning in debugfs_read
Correct gcc warning of using too much stack debugfs_read. This is done by kmallocing the buffer instead of using the char array on stack. Also, shrinking the buffer to something closer to what is currently being used.
Signed-off-by: Jon Mason <jon.mason@intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
show more ...
|
#
f766755c |
| 19-Jan-2013 |
Jon Mason <jon.mason@intel.com> |
NTB: whitespace cleanups
Whitespace cleanups found via `indent`
Signed-off-by: Jon Mason <jon.mason@intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
#
170d35a5 |
| 19-Jan-2013 |
Jon Mason <jon.mason@intel.com> |
NTB: namespacecheck cleanups
Declare ntb_bus_type static to remove it from name space, and remove unused ntb_get_max_spads function. Found via `make namespacecheck`.
Signed-off-by: Jon Mason <jon.
NTB: namespacecheck cleanups
Declare ntb_bus_type static to remove it from name space, and remove unused ntb_get_max_spads function. Found via `make namespacecheck`.
Signed-off-by: Jon Mason <jon.mason@intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
show more ...
|
#
d66d7ac2 |
| 19-Jan-2013 |
Jon Mason <jon.mason@intel.com> |
NTB: use simple_open for debugfs
Use simple_open for debugfs instead of recreating it in the NTB driver. Caught by coccicheck.
Signed-off-by: Jon Mason <jon.mason@intel.com> Signed-off-by: Greg Kro
NTB: use simple_open for debugfs
Use simple_open for debugfs instead of recreating it in the NTB driver. Caught by coccicheck.
Signed-off-by: Jon Mason <jon.mason@intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
show more ...
|
#
7b4f2d3c |
| 19-Jan-2013 |
Jon Mason <jon.mason@intel.com> |
NTB: No sleeping in interrupt context
Move all cancel_delayed_work_sync to a work thread to prevent sleeping in interrupt context (when the NTB link goes down). Caught via 'Sleep inside atomic sect
NTB: No sleeping in interrupt context
Move all cancel_delayed_work_sync to a work thread to prevent sleeping in interrupt context (when the NTB link goes down). Caught via 'Sleep inside atomic section checking'
Signed-off-by: Jon Mason <jon.mason@intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
show more ...
|