diff options
author | Cliff Wickman <cpw@sgi.com> | 2010-06-02 17:22:02 -0400 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2010-06-08 15:13:47 -0400 |
commit | 7fba1bcd4844a4a8619a03bf51cabc92aea365a8 (patch) | |
tree | 8bd347dc9da63805b6c274bee94682ec6d79d812 /arch/x86/kernel/tlb_uv.c | |
parent | 90cc7d944981a6d06b49bb26fde1b490e28c90e5 (diff) |
x86, UV: Correct BAU regular message type
The Broadcast Assist Unit messages have a regular or retry
message type. The regular type was not being set, but needs to
be, because the lack of a message type is sometimes used to
identify an unused entry in the message queue.
Also removing some excess comments.
Signed-off-by: Cliff Wickman <cpw@sgi.com>
Cc: gregkh@suse.de
LKML-Reference: <E1OJvNy-0004ak-Dy@eag09.americas.sgi.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'arch/x86/kernel/tlb_uv.c')
-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 | } |