diff options
Diffstat (limited to 'drivers/misc/sgi-xp/xpc_sn2.c')
-rw-r--r-- | drivers/misc/sgi-xp/xpc_sn2.c | 40 |
1 files changed, 21 insertions, 19 deletions
diff --git a/drivers/misc/sgi-xp/xpc_sn2.c b/drivers/misc/sgi-xp/xpc_sn2.c index 915a3b495da5..8b70e03f939f 100644 --- a/drivers/misc/sgi-xp/xpc_sn2.c +++ b/drivers/misc/sgi-xp/xpc_sn2.c | |||
@@ -279,7 +279,7 @@ xpc_check_for_sent_chctl_flags_sn2(struct xpc_partition *part) | |||
279 | spin_unlock_irqrestore(&part->chctl_lock, irq_flags); | 279 | spin_unlock_irqrestore(&part->chctl_lock, irq_flags); |
280 | 280 | ||
281 | dev_dbg(xpc_chan, "received notify IRQ from partid=%d, chctl.all_flags=" | 281 | dev_dbg(xpc_chan, "received notify IRQ from partid=%d, chctl.all_flags=" |
282 | "0x%lx\n", XPC_PARTID(part), chctl.all_flags); | 282 | "0x%llx\n", XPC_PARTID(part), chctl.all_flags); |
283 | 283 | ||
284 | xpc_wakeup_channel_mgr(part); | 284 | xpc_wakeup_channel_mgr(part); |
285 | } | 285 | } |
@@ -615,7 +615,8 @@ xpc_get_partition_rsvd_page_pa_sn2(void *buf, u64 *cookie, unsigned long *rp_pa, | |||
615 | s64 status; | 615 | s64 status; |
616 | enum xp_retval ret; | 616 | enum xp_retval ret; |
617 | 617 | ||
618 | status = sn_partition_reserved_page_pa((u64)buf, cookie, rp_pa, len); | 618 | status = sn_partition_reserved_page_pa((u64)buf, cookie, |
619 | (u64 *)rp_pa, (u64 *)len); | ||
619 | if (status == SALRET_OK) | 620 | if (status == SALRET_OK) |
620 | ret = xpSuccess; | 621 | ret = xpSuccess; |
621 | else if (status == SALRET_MORE_PASSES) | 622 | else if (status == SALRET_MORE_PASSES) |
@@ -777,8 +778,8 @@ xpc_get_remote_heartbeat_sn2(struct xpc_partition *part) | |||
777 | if (ret != xpSuccess) | 778 | if (ret != xpSuccess) |
778 | return ret; | 779 | return ret; |
779 | 780 | ||
780 | dev_dbg(xpc_part, "partid=%d, heartbeat=%ld, last_heartbeat=%ld, " | 781 | dev_dbg(xpc_part, "partid=%d, heartbeat=%lld, last_heartbeat=%lld, " |
781 | "heartbeat_offline=%ld, HB_mask[0]=0x%lx\n", XPC_PARTID(part), | 782 | "heartbeat_offline=%lld, HB_mask[0]=0x%lx\n", XPC_PARTID(part), |
782 | remote_vars->heartbeat, part->last_heartbeat, | 783 | remote_vars->heartbeat, part->last_heartbeat, |
783 | remote_vars->heartbeat_offline, | 784 | remote_vars->heartbeat_offline, |
784 | remote_vars->heartbeating_to_mask[0]); | 785 | remote_vars->heartbeating_to_mask[0]); |
@@ -940,7 +941,7 @@ xpc_update_partition_info_sn2(struct xpc_partition *part, u8 remote_rp_version, | |||
940 | part_sn2->remote_vars_pa); | 941 | part_sn2->remote_vars_pa); |
941 | 942 | ||
942 | part->last_heartbeat = remote_vars->heartbeat - 1; | 943 | part->last_heartbeat = remote_vars->heartbeat - 1; |
943 | dev_dbg(xpc_part, " last_heartbeat = 0x%016lx\n", | 944 | dev_dbg(xpc_part, " last_heartbeat = 0x%016llx\n", |
944 | part->last_heartbeat); | 945 | part->last_heartbeat); |
945 | 946 | ||
946 | part_sn2->remote_vars_part_pa = remote_vars->vars_part_pa; | 947 | part_sn2->remote_vars_part_pa = remote_vars->vars_part_pa; |
@@ -1029,7 +1030,8 @@ xpc_identify_activate_IRQ_req_sn2(int nasid) | |||
1029 | part->activate_IRQ_rcvd++; | 1030 | part->activate_IRQ_rcvd++; |
1030 | 1031 | ||
1031 | dev_dbg(xpc_part, "partid for nasid %d is %d; IRQs = %d; HB = " | 1032 | dev_dbg(xpc_part, "partid for nasid %d is %d; IRQs = %d; HB = " |
1032 | "%ld:0x%lx\n", (int)nasid, (int)partid, part->activate_IRQ_rcvd, | 1033 | "%lld:0x%lx\n", (int)nasid, (int)partid, |
1034 | part->activate_IRQ_rcvd, | ||
1033 | remote_vars->heartbeat, remote_vars->heartbeating_to_mask[0]); | 1035 | remote_vars->heartbeat, remote_vars->heartbeating_to_mask[0]); |
1034 | 1036 | ||
1035 | if (xpc_partition_disengaged(part) && | 1037 | if (xpc_partition_disengaged(part) && |
@@ -1129,7 +1131,7 @@ xpc_identify_activate_IRQ_sender_sn2(void) | |||
1129 | do { | 1131 | do { |
1130 | n_IRQs_detected++; | 1132 | n_IRQs_detected++; |
1131 | nasid = (l * BITS_PER_LONG + b) * 2; | 1133 | nasid = (l * BITS_PER_LONG + b) * 2; |
1132 | dev_dbg(xpc_part, "interrupt from nasid %ld\n", nasid); | 1134 | dev_dbg(xpc_part, "interrupt from nasid %lld\n", nasid); |
1133 | xpc_identify_activate_IRQ_req_sn2(nasid); | 1135 | xpc_identify_activate_IRQ_req_sn2(nasid); |
1134 | 1136 | ||
1135 | b = find_next_bit(&nasid_mask_long, BITS_PER_LONG, | 1137 | b = find_next_bit(&nasid_mask_long, BITS_PER_LONG, |
@@ -1386,7 +1388,7 @@ xpc_pull_remote_vars_part_sn2(struct xpc_partition *part) | |||
1386 | 1388 | ||
1387 | if (pulled_entry->magic != 0) { | 1389 | if (pulled_entry->magic != 0) { |
1388 | dev_dbg(xpc_chan, "partition %d's XPC vars_part for " | 1390 | dev_dbg(xpc_chan, "partition %d's XPC vars_part for " |
1389 | "partition %d has bad magic value (=0x%lx)\n", | 1391 | "partition %d has bad magic value (=0x%llx)\n", |
1390 | partid, sn_partition_id, pulled_entry->magic); | 1392 | partid, sn_partition_id, pulled_entry->magic); |
1391 | return xpBadMagic; | 1393 | return xpBadMagic; |
1392 | } | 1394 | } |
@@ -1730,14 +1732,14 @@ xpc_notify_senders_sn2(struct xpc_channel *ch, enum xp_retval reason, s64 put) | |||
1730 | 1732 | ||
1731 | if (notify->func != NULL) { | 1733 | if (notify->func != NULL) { |
1732 | dev_dbg(xpc_chan, "notify->func() called, notify=0x%p " | 1734 | dev_dbg(xpc_chan, "notify->func() called, notify=0x%p " |
1733 | "msg_number=%ld partid=%d channel=%d\n", | 1735 | "msg_number=%lld partid=%d channel=%d\n", |
1734 | (void *)notify, get, ch->partid, ch->number); | 1736 | (void *)notify, get, ch->partid, ch->number); |
1735 | 1737 | ||
1736 | notify->func(reason, ch->partid, ch->number, | 1738 | notify->func(reason, ch->partid, ch->number, |
1737 | notify->key); | 1739 | notify->key); |
1738 | 1740 | ||
1739 | dev_dbg(xpc_chan, "notify->func() returned, notify=0x%p" | 1741 | dev_dbg(xpc_chan, "notify->func() returned, notify=0x%p" |
1740 | " msg_number=%ld partid=%d channel=%d\n", | 1742 | " msg_number=%lld partid=%d channel=%d\n", |
1741 | (void *)notify, get, ch->partid, ch->number); | 1743 | (void *)notify, get, ch->partid, ch->number); |
1742 | } | 1744 | } |
1743 | } | 1745 | } |
@@ -1858,7 +1860,7 @@ xpc_process_msg_chctl_flags_sn2(struct xpc_partition *part, int ch_number) | |||
1858 | 1860 | ||
1859 | ch_sn2->w_remote_GP.get = ch_sn2->remote_GP.get; | 1861 | ch_sn2->w_remote_GP.get = ch_sn2->remote_GP.get; |
1860 | 1862 | ||
1861 | dev_dbg(xpc_chan, "w_remote_GP.get changed to %ld, partid=%d, " | 1863 | dev_dbg(xpc_chan, "w_remote_GP.get changed to %lld, partid=%d, " |
1862 | "channel=%d\n", ch_sn2->w_remote_GP.get, ch->partid, | 1864 | "channel=%d\n", ch_sn2->w_remote_GP.get, ch->partid, |
1863 | ch->number); | 1865 | ch->number); |
1864 | 1866 | ||
@@ -1885,7 +1887,7 @@ xpc_process_msg_chctl_flags_sn2(struct xpc_partition *part, int ch_number) | |||
1885 | smp_wmb(); /* ensure flags have been cleared before bte_copy */ | 1887 | smp_wmb(); /* ensure flags have been cleared before bte_copy */ |
1886 | ch_sn2->w_remote_GP.put = ch_sn2->remote_GP.put; | 1888 | ch_sn2->w_remote_GP.put = ch_sn2->remote_GP.put; |
1887 | 1889 | ||
1888 | dev_dbg(xpc_chan, "w_remote_GP.put changed to %ld, partid=%d, " | 1890 | dev_dbg(xpc_chan, "w_remote_GP.put changed to %lld, partid=%d, " |
1889 | "channel=%d\n", ch_sn2->w_remote_GP.put, ch->partid, | 1891 | "channel=%d\n", ch_sn2->w_remote_GP.put, ch->partid, |
1890 | ch->number); | 1892 | ch->number); |
1891 | 1893 | ||
@@ -1943,7 +1945,7 @@ xpc_pull_remote_msg_sn2(struct xpc_channel *ch, s64 get) | |||
1943 | if (ret != xpSuccess) { | 1945 | if (ret != xpSuccess) { |
1944 | 1946 | ||
1945 | dev_dbg(xpc_chan, "failed to pull %d msgs starting with" | 1947 | dev_dbg(xpc_chan, "failed to pull %d msgs starting with" |
1946 | " msg %ld from partition %d, channel=%d, " | 1948 | " msg %lld from partition %d, channel=%d, " |
1947 | "ret=%d\n", nmsgs, ch_sn2->next_msg_to_pull, | 1949 | "ret=%d\n", nmsgs, ch_sn2->next_msg_to_pull, |
1948 | ch->partid, ch->number, ret); | 1950 | ch->partid, ch->number, ret); |
1949 | 1951 | ||
@@ -1995,7 +1997,7 @@ xpc_get_deliverable_payload_sn2(struct xpc_channel *ch) | |||
1995 | if (cmpxchg(&ch_sn2->w_local_GP.get, get, get + 1) == get) { | 1997 | if (cmpxchg(&ch_sn2->w_local_GP.get, get, get + 1) == get) { |
1996 | /* we got the entry referenced by get */ | 1998 | /* we got the entry referenced by get */ |
1997 | 1999 | ||
1998 | dev_dbg(xpc_chan, "w_local_GP.get changed to %ld, " | 2000 | dev_dbg(xpc_chan, "w_local_GP.get changed to %lld, " |
1999 | "partid=%d, channel=%d\n", get + 1, | 2001 | "partid=%d, channel=%d\n", get + 1, |
2000 | ch->partid, ch->number); | 2002 | ch->partid, ch->number); |
2001 | 2003 | ||
@@ -2062,7 +2064,7 @@ xpc_send_msgs_sn2(struct xpc_channel *ch, s64 initial_put) | |||
2062 | 2064 | ||
2063 | /* we just set the new value of local_GP->put */ | 2065 | /* we just set the new value of local_GP->put */ |
2064 | 2066 | ||
2065 | dev_dbg(xpc_chan, "local_GP->put changed to %ld, partid=%d, " | 2067 | dev_dbg(xpc_chan, "local_GP->put changed to %lld, partid=%d, " |
2066 | "channel=%d\n", put, ch->partid, ch->number); | 2068 | "channel=%d\n", put, ch->partid, ch->number); |
2067 | 2069 | ||
2068 | send_msgrequest = 1; | 2070 | send_msgrequest = 1; |
@@ -2147,8 +2149,8 @@ xpc_allocate_msg_sn2(struct xpc_channel *ch, u32 flags, | |||
2147 | DBUG_ON(msg->flags != 0); | 2149 | DBUG_ON(msg->flags != 0); |
2148 | msg->number = put; | 2150 | msg->number = put; |
2149 | 2151 | ||
2150 | dev_dbg(xpc_chan, "w_local_GP.put changed to %ld; msg=0x%p, " | 2152 | dev_dbg(xpc_chan, "w_local_GP.put changed to %lld; msg=0x%p, " |
2151 | "msg_number=%ld, partid=%d, channel=%d\n", put + 1, | 2153 | "msg_number=%lld, partid=%d, channel=%d\n", put + 1, |
2152 | (void *)msg, msg->number, ch->partid, ch->number); | 2154 | (void *)msg, msg->number, ch->partid, ch->number); |
2153 | 2155 | ||
2154 | *address_of_msg = msg; | 2156 | *address_of_msg = msg; |
@@ -2296,7 +2298,7 @@ xpc_acknowledge_msgs_sn2(struct xpc_channel *ch, s64 initial_get, u8 msg_flags) | |||
2296 | 2298 | ||
2297 | /* we just set the new value of local_GP->get */ | 2299 | /* we just set the new value of local_GP->get */ |
2298 | 2300 | ||
2299 | dev_dbg(xpc_chan, "local_GP->get changed to %ld, partid=%d, " | 2301 | dev_dbg(xpc_chan, "local_GP->get changed to %lld, partid=%d, " |
2300 | "channel=%d\n", get, ch->partid, ch->number); | 2302 | "channel=%d\n", get, ch->partid, ch->number); |
2301 | 2303 | ||
2302 | send_msgrequest = (msg_flags & XPC_M_SN2_INTERRUPT); | 2304 | send_msgrequest = (msg_flags & XPC_M_SN2_INTERRUPT); |
@@ -2323,7 +2325,7 @@ xpc_received_payload_sn2(struct xpc_channel *ch, void *payload) | |||
2323 | msg = container_of(payload, struct xpc_msg_sn2, payload); | 2325 | msg = container_of(payload, struct xpc_msg_sn2, payload); |
2324 | msg_number = msg->number; | 2326 | msg_number = msg->number; |
2325 | 2327 | ||
2326 | dev_dbg(xpc_chan, "msg=0x%p, msg_number=%ld, partid=%d, channel=%d\n", | 2328 | dev_dbg(xpc_chan, "msg=0x%p, msg_number=%lld, partid=%d, channel=%d\n", |
2327 | (void *)msg, msg_number, ch->partid, ch->number); | 2329 | (void *)msg, msg_number, ch->partid, ch->number); |
2328 | 2330 | ||
2329 | DBUG_ON((((u64)msg - (u64)ch->sn.sn2.remote_msgqueue) / ch->entry_size) != | 2331 | DBUG_ON((((u64)msg - (u64)ch->sn.sn2.remote_msgqueue) / ch->entry_size) != |