diff options
author | Ursula Braun <ursula.braun@de.ibm.com> | 2010-05-11 15:34:46 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2010-05-16 03:50:11 -0400 |
commit | 65a1f898efac136aeea65509e61ac6cdecd4f6bf (patch) | |
tree | 25aa28c29ffa2e8d426bae547555066bcd06bd65 /drivers/s390 | |
parent | f6b85b6c42ccc20316a25f6ccbe7a984c5a1304d (diff) |
qeth: new message if OLM limit is reached
z/OS may activate Optimized Latency Mode (OLM) for a connection
through an OSA Express3 adapter, which reduces the number of
allowed concurrent connections, if adapter is used in shared mode.
Create a meaningful message, if activation of an OSA-connection fails
due to an active OLM-connection on the shared OSA-adapter.
Signed-off-by: Ursula Braun <ursula.braun@de.ibm.com>
Signed-off-by: Frank Blaschka <frank.blaschka@de.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/s390')
-rw-r--r-- | drivers/s390/net/qeth_core_main.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/drivers/s390/net/qeth_core_main.c b/drivers/s390/net/qeth_core_main.c index 3ba738b2e271..52096c9194f0 100644 --- a/drivers/s390/net/qeth_core_main.c +++ b/drivers/s390/net/qeth_core_main.c | |||
@@ -1976,6 +1976,7 @@ static int qeth_ulp_setup_cb(struct qeth_card *card, struct qeth_reply *reply, | |||
1976 | unsigned long data) | 1976 | unsigned long data) |
1977 | { | 1977 | { |
1978 | struct qeth_cmd_buffer *iob; | 1978 | struct qeth_cmd_buffer *iob; |
1979 | int rc = 0; | ||
1979 | 1980 | ||
1980 | QETH_DBF_TEXT(SETUP, 2, "ulpstpcb"); | 1981 | QETH_DBF_TEXT(SETUP, 2, "ulpstpcb"); |
1981 | 1982 | ||
@@ -1983,8 +1984,15 @@ static int qeth_ulp_setup_cb(struct qeth_card *card, struct qeth_reply *reply, | |||
1983 | memcpy(&card->token.ulp_connection_r, | 1984 | memcpy(&card->token.ulp_connection_r, |
1984 | QETH_ULP_SETUP_RESP_CONNECTION_TOKEN(iob->data), | 1985 | QETH_ULP_SETUP_RESP_CONNECTION_TOKEN(iob->data), |
1985 | QETH_MPC_TOKEN_LENGTH); | 1986 | QETH_MPC_TOKEN_LENGTH); |
1987 | if (!strncmp("00S", QETH_ULP_SETUP_RESP_CONNECTION_TOKEN(iob->data), | ||
1988 | 3)) { | ||
1989 | QETH_DBF_TEXT(SETUP, 2, "olmlimit"); | ||
1990 | dev_err(&card->gdev->dev, "A connection could not be " | ||
1991 | "established because of an OLM limit\n"); | ||
1992 | rc = -EMLINK; | ||
1993 | } | ||
1986 | QETH_DBF_TEXT_(SETUP, 2, " rc%d", iob->rc); | 1994 | QETH_DBF_TEXT_(SETUP, 2, " rc%d", iob->rc); |
1987 | return 0; | 1995 | return rc; |
1988 | } | 1996 | } |
1989 | 1997 | ||
1990 | static int qeth_ulp_setup(struct qeth_card *card) | 1998 | static int qeth_ulp_setup(struct qeth_card *card) |