sgi-xpc: clean up numerous globals
Introduce xpc_arch_ops and eliminate numerous individual global definitions. Signed-off-by: Robin Holt <holt@sgi.com> Cc: Dean Nelson <dcn@sgi.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
committed by
Linus Torvalds
parent
efdd06ed18
commit
a7665b0a38
@@ -60,14 +60,14 @@ static struct xpc_vars_sn2 *xpc_vars_sn2;
|
||||
static struct xpc_vars_part_sn2 *xpc_vars_part_sn2;
|
||||
|
||||
static int
|
||||
xpc_setup_partitions_sn_sn2(void)
|
||||
xpc_setup_partitions_sn2(void)
|
||||
{
|
||||
/* nothing needs to be done */
|
||||
return 0;
|
||||
}
|
||||
|
||||
static void
|
||||
xpc_teardown_partitions_sn_sn2(void)
|
||||
xpc_teardown_partitions_sn2(void)
|
||||
{
|
||||
/* nothing needs to be done */
|
||||
}
|
||||
@@ -628,7 +628,7 @@ xpc_get_partition_rsvd_page_pa_sn2(void *buf, u64 *cookie, unsigned long *rp_pa,
|
||||
|
||||
|
||||
static int
|
||||
xpc_setup_rsvd_page_sn_sn2(struct xpc_rsvd_page *rp)
|
||||
xpc_setup_rsvd_page_sn2(struct xpc_rsvd_page *rp)
|
||||
{
|
||||
struct amo *amos_page;
|
||||
int i;
|
||||
@@ -1162,7 +1162,7 @@ xpc_process_activate_IRQ_rcvd_sn2(void)
|
||||
* Setup the channel structures that are sn2 specific.
|
||||
*/
|
||||
static enum xp_retval
|
||||
xpc_setup_ch_structures_sn_sn2(struct xpc_partition *part)
|
||||
xpc_setup_ch_structures_sn2(struct xpc_partition *part)
|
||||
{
|
||||
struct xpc_partition_sn2 *part_sn2 = &part->sn.sn2;
|
||||
struct xpc_channel_sn2 *ch_sn2;
|
||||
@@ -1284,7 +1284,7 @@ out_1:
|
||||
* Teardown the channel structures that are sn2 specific.
|
||||
*/
|
||||
static void
|
||||
xpc_teardown_ch_structures_sn_sn2(struct xpc_partition *part)
|
||||
xpc_teardown_ch_structures_sn2(struct xpc_partition *part)
|
||||
{
|
||||
struct xpc_partition_sn2 *part_sn2 = &part->sn.sn2;
|
||||
short partid = XPC_PARTID(part);
|
||||
@@ -2348,66 +2348,70 @@ xpc_received_payload_sn2(struct xpc_channel *ch, void *payload)
|
||||
xpc_acknowledge_msgs_sn2(ch, get, msg->flags);
|
||||
}
|
||||
|
||||
static struct xpc_arch_operations xpc_arch_ops_sn2 = {
|
||||
.setup_partitions = xpc_setup_partitions_sn2,
|
||||
.teardown_partitions = xpc_teardown_partitions_sn2,
|
||||
.process_activate_IRQ_rcvd = xpc_process_activate_IRQ_rcvd_sn2,
|
||||
.get_partition_rsvd_page_pa = xpc_get_partition_rsvd_page_pa_sn2,
|
||||
.setup_rsvd_page = xpc_setup_rsvd_page_sn2,
|
||||
|
||||
.allow_hb = xpc_allow_hb_sn2,
|
||||
.disallow_hb = xpc_disallow_hb_sn2,
|
||||
.disallow_all_hbs = xpc_disallow_all_hbs_sn2,
|
||||
.increment_heartbeat = xpc_increment_heartbeat_sn2,
|
||||
.offline_heartbeat = xpc_offline_heartbeat_sn2,
|
||||
.online_heartbeat = xpc_online_heartbeat_sn2,
|
||||
.heartbeat_init = xpc_heartbeat_init_sn2,
|
||||
.heartbeat_exit = xpc_heartbeat_exit_sn2,
|
||||
.get_remote_heartbeat = xpc_get_remote_heartbeat_sn2,
|
||||
|
||||
.request_partition_activation =
|
||||
xpc_request_partition_activation_sn2,
|
||||
.request_partition_reactivation =
|
||||
xpc_request_partition_reactivation_sn2,
|
||||
.request_partition_deactivation =
|
||||
xpc_request_partition_deactivation_sn2,
|
||||
.cancel_partition_deactivation_request =
|
||||
xpc_cancel_partition_deactivation_request_sn2,
|
||||
|
||||
.setup_ch_structures = xpc_setup_ch_structures_sn2,
|
||||
.teardown_ch_structures = xpc_teardown_ch_structures_sn2,
|
||||
|
||||
.make_first_contact = xpc_make_first_contact_sn2,
|
||||
|
||||
.get_chctl_all_flags = xpc_get_chctl_all_flags_sn2,
|
||||
.send_chctl_closerequest = xpc_send_chctl_closerequest_sn2,
|
||||
.send_chctl_closereply = xpc_send_chctl_closereply_sn2,
|
||||
.send_chctl_openrequest = xpc_send_chctl_openrequest_sn2,
|
||||
.send_chctl_openreply = xpc_send_chctl_openreply_sn2,
|
||||
.send_chctl_opencomplete = xpc_send_chctl_opencomplete_sn2,
|
||||
.process_msg_chctl_flags = xpc_process_msg_chctl_flags_sn2,
|
||||
|
||||
.save_remote_msgqueue_pa = xpc_save_remote_msgqueue_pa_sn2,
|
||||
|
||||
.setup_msg_structures = xpc_setup_msg_structures_sn2,
|
||||
.teardown_msg_structures = xpc_teardown_msg_structures_sn2,
|
||||
|
||||
.indicate_partition_engaged = xpc_indicate_partition_engaged_sn2,
|
||||
.indicate_partition_disengaged = xpc_indicate_partition_disengaged_sn2,
|
||||
.partition_engaged = xpc_partition_engaged_sn2,
|
||||
.any_partition_engaged = xpc_any_partition_engaged_sn2,
|
||||
.assume_partition_disengaged = xpc_assume_partition_disengaged_sn2,
|
||||
|
||||
.n_of_deliverable_payloads = xpc_n_of_deliverable_payloads_sn2,
|
||||
.send_payload = xpc_send_payload_sn2,
|
||||
.get_deliverable_payload = xpc_get_deliverable_payload_sn2,
|
||||
.received_payload = xpc_received_payload_sn2,
|
||||
.notify_senders_of_disconnect = xpc_notify_senders_of_disconnect_sn2,
|
||||
};
|
||||
|
||||
int
|
||||
xpc_init_sn2(void)
|
||||
{
|
||||
int ret;
|
||||
size_t buf_size;
|
||||
|
||||
xpc_setup_partitions_sn = xpc_setup_partitions_sn_sn2;
|
||||
xpc_teardown_partitions_sn = xpc_teardown_partitions_sn_sn2;
|
||||
xpc_get_partition_rsvd_page_pa = xpc_get_partition_rsvd_page_pa_sn2;
|
||||
xpc_setup_rsvd_page_sn = xpc_setup_rsvd_page_sn_sn2;
|
||||
|
||||
xpc_allow_hb = xpc_allow_hb_sn2;
|
||||
xpc_disallow_hb = xpc_disallow_hb_sn2;
|
||||
xpc_disallow_all_hbs = xpc_disallow_all_hbs_sn2;
|
||||
xpc_increment_heartbeat = xpc_increment_heartbeat_sn2;
|
||||
xpc_offline_heartbeat = xpc_offline_heartbeat_sn2;
|
||||
xpc_online_heartbeat = xpc_online_heartbeat_sn2;
|
||||
xpc_heartbeat_init = xpc_heartbeat_init_sn2;
|
||||
xpc_heartbeat_exit = xpc_heartbeat_exit_sn2;
|
||||
xpc_get_remote_heartbeat = xpc_get_remote_heartbeat_sn2;
|
||||
|
||||
xpc_request_partition_activation = xpc_request_partition_activation_sn2;
|
||||
xpc_request_partition_reactivation =
|
||||
xpc_request_partition_reactivation_sn2;
|
||||
xpc_request_partition_deactivation =
|
||||
xpc_request_partition_deactivation_sn2;
|
||||
xpc_cancel_partition_deactivation_request =
|
||||
xpc_cancel_partition_deactivation_request_sn2;
|
||||
|
||||
xpc_process_activate_IRQ_rcvd = xpc_process_activate_IRQ_rcvd_sn2;
|
||||
xpc_setup_ch_structures_sn = xpc_setup_ch_structures_sn_sn2;
|
||||
xpc_teardown_ch_structures_sn = xpc_teardown_ch_structures_sn_sn2;
|
||||
xpc_make_first_contact = xpc_make_first_contact_sn2;
|
||||
|
||||
xpc_get_chctl_all_flags = xpc_get_chctl_all_flags_sn2;
|
||||
xpc_send_chctl_closerequest = xpc_send_chctl_closerequest_sn2;
|
||||
xpc_send_chctl_closereply = xpc_send_chctl_closereply_sn2;
|
||||
xpc_send_chctl_openrequest = xpc_send_chctl_openrequest_sn2;
|
||||
xpc_send_chctl_openreply = xpc_send_chctl_openreply_sn2;
|
||||
xpc_send_chctl_opencomplete = xpc_send_chctl_opencomplete_sn2;
|
||||
|
||||
xpc_save_remote_msgqueue_pa = xpc_save_remote_msgqueue_pa_sn2;
|
||||
|
||||
xpc_setup_msg_structures = xpc_setup_msg_structures_sn2;
|
||||
xpc_teardown_msg_structures = xpc_teardown_msg_structures_sn2;
|
||||
|
||||
xpc_notify_senders_of_disconnect = xpc_notify_senders_of_disconnect_sn2;
|
||||
xpc_process_msg_chctl_flags = xpc_process_msg_chctl_flags_sn2;
|
||||
xpc_n_of_deliverable_payloads = xpc_n_of_deliverable_payloads_sn2;
|
||||
xpc_get_deliverable_payload = xpc_get_deliverable_payload_sn2;
|
||||
|
||||
xpc_indicate_partition_engaged = xpc_indicate_partition_engaged_sn2;
|
||||
xpc_indicate_partition_disengaged =
|
||||
xpc_indicate_partition_disengaged_sn2;
|
||||
xpc_partition_engaged = xpc_partition_engaged_sn2;
|
||||
xpc_any_partition_engaged = xpc_any_partition_engaged_sn2;
|
||||
xpc_assume_partition_disengaged = xpc_assume_partition_disengaged_sn2;
|
||||
|
||||
xpc_send_payload = xpc_send_payload_sn2;
|
||||
xpc_received_payload = xpc_received_payload_sn2;
|
||||
xpc_arch_ops = xpc_arch_ops_sn2;
|
||||
|
||||
if (offsetof(struct xpc_msg_sn2, payload) > XPC_MSG_HDR_MAX_SIZE) {
|
||||
dev_err(xpc_part, "header portion of struct xpc_msg_sn2 is "
|
||||
|
Reference in New Issue
Block a user