diff options
-rw-r--r-- | arch/x86/kernel/tlb_uv.c | 15 |
1 files changed, 1 insertions, 14 deletions
diff --git a/arch/x86/kernel/tlb_uv.c b/arch/x86/kernel/tlb_uv.c index dc962b5ac870..4cb14dbd7fa3 100644 --- a/arch/x86/kernel/tlb_uv.c +++ b/arch/x86/kernel/tlb_uv.c | |||
@@ -580,23 +580,10 @@ const struct cpumask *uv_flush_send_and_wait(struct bau_desc *bau_desc, | |||
580 | } | 580 | } |
581 | time1 = get_cycles(); | 581 | time1 = get_cycles(); |
582 | do { | 582 | do { |
583 | /* | ||
584 | * Every message from any given cpu gets a unique message | ||
585 | * sequence number. But retries use that same number. | ||
586 | * Our message may have timed out at the destination because | ||
587 | * all sw-ack resources are in use and there is a timeout | ||
588 | * pending there. In that case, our last send never got | ||
589 | * placed into the queue and we need to persist until it | ||
590 | * does. | ||
591 | * | ||
592 | * Make any retry a type MSG_RETRY so that the destination will | ||
593 | * free any resource held by a previous message from this cpu. | ||
594 | */ | ||
595 | if (try == 0) { | 583 | if (try == 0) { |
596 | /* use message type set by the caller the first time */ | 584 | bau_desc->header.msg_type = MSG_REGULAR; |
597 | seq_number = bcp->message_number++; | 585 | seq_number = bcp->message_number++; |
598 | } else { | 586 | } else { |
599 | /* use RETRY type on all the rest; same sequence */ | ||
600 | bau_desc->header.msg_type = MSG_RETRY; | 587 | bau_desc->header.msg_type = MSG_RETRY; |
601 | stat->s_retry_messages++; | 588 | stat->s_retry_messages++; |
602 | } | 589 | } |