mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-12-11 21:14:07 +08:00
s390/qeth: unify structs for bridge port state
The data returned from IPA_SBP_QUERY_BRIDGE_PORTS and IPA_SBP_BRIDGE_PORT_STATE_CHANGE has the same format. Use a single struct definition for it. Signed-off-by: Julian Wiedmann <jwi@linux.ibm.com> Reviewed-by: Alexandra Winter <wintera@linux.ibm.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
61c6f21706
commit
65b0494ed5
@ -719,15 +719,8 @@ struct qeth_sbp_port_entry {
|
||||
struct net_if_token token;
|
||||
} __packed;
|
||||
|
||||
struct qeth_sbp_query_ports {
|
||||
__u8 primary_bp_supported;
|
||||
__u8 secondary_bp_supported;
|
||||
__u8 num_entries;
|
||||
__u8 entry_length;
|
||||
struct qeth_sbp_port_entry entry[];
|
||||
} __packed;
|
||||
|
||||
struct qeth_sbp_state_change {
|
||||
/* For IPA_SBP_QUERY_BRIDGE_PORTS, IPA_SBP_BRIDGE_PORT_STATE_CHANGE */
|
||||
struct qeth_sbp_port_data {
|
||||
__u8 primary_bp_supported;
|
||||
__u8 secondary_bp_supported;
|
||||
__u8 num_entries;
|
||||
@ -741,8 +734,7 @@ struct qeth_ipacmd_setbridgeport {
|
||||
union {
|
||||
struct qeth_sbp_query_cmds_supp query_cmds_supp;
|
||||
struct qeth_sbp_set_primary set_primary;
|
||||
struct qeth_sbp_query_ports query_ports;
|
||||
struct qeth_sbp_state_change state_change;
|
||||
struct qeth_sbp_port_data port_data;
|
||||
} data;
|
||||
} __packed;
|
||||
|
||||
|
@ -1125,8 +1125,7 @@ static void qeth_bridge_state_change_worker(struct work_struct *work)
|
||||
static void qeth_bridge_state_change(struct qeth_card *card,
|
||||
struct qeth_ipa_cmd *cmd)
|
||||
{
|
||||
struct qeth_sbp_state_change *qports =
|
||||
&cmd->data.sbp.data.state_change;
|
||||
struct qeth_sbp_port_data *qports = &cmd->data.sbp.data.port_data;
|
||||
struct qeth_bridge_state_data *data;
|
||||
|
||||
QETH_CARD_TEXT(card, 2, "brstchng");
|
||||
@ -1409,8 +1408,8 @@ static int qeth_bridgeport_query_ports_cb(struct qeth_card *card,
|
||||
struct qeth_reply *reply, unsigned long data)
|
||||
{
|
||||
struct qeth_ipa_cmd *cmd = (struct qeth_ipa_cmd *) data;
|
||||
struct qeth_sbp_query_ports *qports = &cmd->data.sbp.data.query_ports;
|
||||
struct _qeth_sbp_cbctl *cbctl = (struct _qeth_sbp_cbctl *)reply->param;
|
||||
struct qeth_sbp_port_data *qports;
|
||||
int rc;
|
||||
|
||||
QETH_CARD_TEXT(card, 2, "brqprtcb");
|
||||
@ -1418,6 +1417,7 @@ static int qeth_bridgeport_query_ports_cb(struct qeth_card *card,
|
||||
if (rc)
|
||||
return rc;
|
||||
|
||||
qports = &cmd->data.sbp.data.port_data;
|
||||
if (qports->entry_length != sizeof(struct qeth_sbp_port_entry)) {
|
||||
QETH_CARD_TEXT_(card, 2, "SBPs%04x", qports->entry_length);
|
||||
return -EINVAL;
|
||||
|
Loading…
Reference in New Issue
Block a user