diff options
author | Eugene Crosser <Eugene.Crosser@ru.ibm.com> | 2014-09-02 08:20:17 +0200 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2014-09-02 13:54:06 -0700 |
commit | 511c24456ad19d51fcdbc5eda9df7be98c20e6b0 (patch) | |
tree | 89d36bcc3fa41515c01c77b85a92700205b7d98e /drivers/s390/net/qeth_core.h | |
parent | c24f33796830aa42c496c2b2529ce6d51533af84 (diff) | |
download | op-kernel-dev-511c24456ad19d51fcdbc5eda9df7be98c20e6b0.zip op-kernel-dev-511c24456ad19d51fcdbc5eda9df7be98c20e6b0.tar.gz |
qeth: don't query for info if hardware not ready.
When qeth device is queried for ethtool data, hardware operation
is performed to extract the necessary information from the card.
If the card is not online at the moment (e.g. it is undergoing
recovery), this operation produces undesired effects like
temporarily freezing the system. This patch prevents execution
of the hardware query operation when the card is not online.
In such case, ioctl() operation returns error with errno ENODEV.
Reviewed-by: Ursula Braun <ursula.braun@de.ibm.com>
Signed-off-by: Eugene Crosser <Eugene.Crosser@ru.ibm.com>
Signed-off-by: Frank Blaschka <blaschka@linux.vnet.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/s390/net/qeth_core.h')
-rw-r--r-- | drivers/s390/net/qeth_core.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/s390/net/qeth_core.h b/drivers/s390/net/qeth_core.h index 97ef37b..e7646ce 100644 --- a/drivers/s390/net/qeth_core.h +++ b/drivers/s390/net/qeth_core.h @@ -889,6 +889,7 @@ extern const struct attribute_group *qeth_generic_attr_groups[]; extern const struct attribute_group *qeth_osn_attr_groups[]; extern struct workqueue_struct *qeth_wq; +int qeth_card_hw_is_reachable(struct qeth_card *); const char *qeth_get_cardname_short(struct qeth_card *); int qeth_realloc_buffer_pool(struct qeth_card *, int); int qeth_core_load_discipline(struct qeth_card *, enum qeth_discipline_id); |