NTB: MFV c336acd3: 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. Authored by: Jon Mason Obtained from: Linux Sponsored by: EMC / Isilon Storage Division
This commit is contained in:
parent
7ee9e4bc6e
commit
ae92db9ed6
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=289157
@ -853,7 +853,8 @@ ntb_rx_pendq_full(void *arg)
|
||||
static void
|
||||
ntb_transport_rx(struct ntb_transport_qp *qp)
|
||||
{
|
||||
int rc, i;
|
||||
uint64_t i;
|
||||
int rc;
|
||||
|
||||
/*
|
||||
* Limit the number of packets processed in a single interrupt to
|
||||
@ -861,7 +862,7 @@ ntb_transport_rx(struct ntb_transport_qp *qp)
|
||||
*/
|
||||
mtx_lock(&qp->transport->rx_lock);
|
||||
CTR0(KTR_NTB, "RX: transport_rx");
|
||||
for (i = 0; i < NTB_RX_MAX_PKTS; i++) {
|
||||
for (i = 0; i < qp->rx_max_entry; i++) {
|
||||
rc = ntb_process_rxc(qp);
|
||||
if (rc != 0) {
|
||||
CTR0(KTR_NTB, "RX: process_rxc failed");
|
||||
|
Loading…
Reference in New Issue
Block a user