summaryrefslogtreecommitdiff
path: root/drivers/s390/net/qeth_core_sys.c
diff options
context:
space:
mode:
authorFrank Blaschka <frank.blaschka@de.ibm.com>2009-11-12 03:11:44 +0300
committerDavid S. Miller <davem@davemloft.net>2009-11-16 13:42:08 +0300
commitc3b4a740db3688b245282ac957a01f3fb8d1186d (patch)
treeca05c6e683b5b2371ba265aa6db9536441f94f1a /drivers/s390/net/qeth_core_sys.c
parentaa90922479513db0d080239324d0d04701418ba5 (diff)
downloadlinux-c3b4a740db3688b245282ac957a01f3fb8d1186d.tar.xz
qeth: rework TSO functions
The maximum TSO size OSA can handle is 15 * PAGE_SIZE. This patch reduces gso_max_size to this value and adds some sanity checks and statistics to the TSO implementation. Since only layer 3 is able to do TSO move all TSO related functions to the qeth_l3 module. Signed-off-by: Frank Blaschka <frank.blaschka@de.ibm.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/s390/net/qeth_core_sys.c')
-rw-r--r--drivers/s390/net/qeth_core_sys.c48
1 files changed, 0 insertions, 48 deletions
diff --git a/drivers/s390/net/qeth_core_sys.c b/drivers/s390/net/qeth_core_sys.c
index f2358a75ed0c..9ff2b36fdc43 100644
--- a/drivers/s390/net/qeth_core_sys.c
+++ b/drivers/s390/net/qeth_core_sys.c
@@ -416,53 +416,6 @@ static ssize_t qeth_dev_layer2_store(struct device *dev,
static DEVICE_ATTR(layer2, 0644, qeth_dev_layer2_show,
qeth_dev_layer2_store);
-static ssize_t qeth_dev_large_send_show(struct device *dev,
- struct device_attribute *attr, char *buf)
-{
- struct qeth_card *card = dev_get_drvdata(dev);
-
- if (!card)
- return -EINVAL;
-
- switch (card->options.large_send) {
- case QETH_LARGE_SEND_NO:
- return sprintf(buf, "%s\n", "no");
- case QETH_LARGE_SEND_TSO:
- return sprintf(buf, "%s\n", "TSO");
- default:
- return sprintf(buf, "%s\n", "N/A");
- }
-}
-
-static ssize_t qeth_dev_large_send_store(struct device *dev,
- struct device_attribute *attr, const char *buf, size_t count)
-{
- struct qeth_card *card = dev_get_drvdata(dev);
- enum qeth_large_send_types type;
- int rc = 0;
- char *tmp;
-
- if (!card)
- return -EINVAL;
- tmp = strsep((char **) &buf, "\n");
- if (!strcmp(tmp, "no")) {
- type = QETH_LARGE_SEND_NO;
- } else if (!strcmp(tmp, "TSO")) {
- type = QETH_LARGE_SEND_TSO;
- } else {
- return -EINVAL;
- }
- if (card->options.large_send == type)
- return count;
- rc = qeth_set_large_send(card, type);
- if (rc)
- return rc;
- return count;
-}
-
-static DEVICE_ATTR(large_send, 0644, qeth_dev_large_send_show,
- qeth_dev_large_send_store);
-
#define ATTR_QETH_ISOLATION_NONE ("none")
#define ATTR_QETH_ISOLATION_FWD ("forward")
#define ATTR_QETH_ISOLATION_DROP ("drop")
@@ -658,7 +611,6 @@ static struct attribute *qeth_device_attrs[] = {
&dev_attr_recover.attr,
&dev_attr_performance_stats.attr,
&dev_attr_layer2.attr,
- &dev_attr_large_send.attr,
&dev_attr_isolation.attr,
NULL,
};