]> git.karo-electronics.de Git - karo-tx-linux.git/blobdiff - drivers/s390/net/qeth_core_main.c
qeth: fix offset error in non prealloc header path
[karo-tx-linux.git] / drivers / s390 / net / qeth_core_main.c
index 908f50b17e269cfb6159cbf84a77c06abde7d50a..52d26592c72c1a03ee640710d148d3aa44a1b781 100644 (file)
@@ -745,7 +745,7 @@ static int qeth_get_problem(struct ccw_device *cdev, struct irb *irb)
                     SCHN_STAT_PROT_CHECK | SCHN_STAT_PROG_CHECK)) {
                QETH_DBF_TEXT(TRACE, 2, "CGENCHK");
                PRINT_WARN("check on device %s, dstat=x%x, cstat=x%x ",
-                          cdev->dev.bus_id, dstat, cstat);
+                          dev_name(&cdev->dev), dstat, cstat);
                print_hex_dump(KERN_WARNING, "qeth: irb ", DUMP_PREFIX_OFFSET,
                                16, 1, irb, 64, 1);
                return 1;
@@ -784,12 +784,12 @@ static long __qeth_check_irb_error(struct ccw_device *cdev,
 
        switch (PTR_ERR(irb)) {
        case -EIO:
-               PRINT_WARN("i/o-error on device %s\n", cdev->dev.bus_id);
+               PRINT_WARN("i/o-error on device %s\n", dev_name(&cdev->dev));
                QETH_DBF_TEXT(TRACE, 2, "ckirberr");
                QETH_DBF_TEXT_(TRACE, 2, "  rc%d", -EIO);
                break;
        case -ETIMEDOUT:
-               PRINT_WARN("timeout on device %s\n", cdev->dev.bus_id);
+               PRINT_WARN("timeout on device %s\n", dev_name(&cdev->dev));
                QETH_DBF_TEXT(TRACE, 2, "ckirberr");
                QETH_DBF_TEXT_(TRACE, 2, "  rc%d", -ETIMEDOUT);
                if (intparm == QETH_RCD_PARM) {
@@ -803,7 +803,7 @@ static long __qeth_check_irb_error(struct ccw_device *cdev,
                break;
        default:
                PRINT_WARN("unknown error %ld on device %s\n", PTR_ERR(irb),
-                          cdev->dev.bus_id);
+                          dev_name(&cdev->dev));
                QETH_DBF_TEXT(TRACE, 2, "ckirberr");
                QETH_DBF_TEXT(TRACE, 2, "  rc???");
        }
@@ -3025,7 +3025,7 @@ static inline void __qeth_fill_buffer(struct sk_buff *skb,
        struct qdio_buffer *buffer, int is_tso, int *next_element_to_fill,
        int offset)
 {
-       int length = skb->len - offset;
+       int length = skb->len;
        int length_here;
        int element;
        char *data;
@@ -3037,6 +3037,7 @@ static inline void __qeth_fill_buffer(struct sk_buff *skb,
 
        if (offset >= 0) {
                data = skb->data + offset;
+               length -= offset;
                first_lap = 0;
        }
 
@@ -4082,7 +4083,7 @@ static int qeth_core_probe_device(struct ccwgroup_device *gdev)
        if (!get_device(dev))
                return -ENODEV;
 
-       QETH_DBF_TEXT_(SETUP, 2, "%s", gdev->dev.bus_id);
+       QETH_DBF_TEXT_(SETUP, 2, "%s", dev_name(&gdev->dev));
 
        card = qeth_alloc_card();
        if (!card) {