[S390] tape: fix dbf usage
authorSebastian Ott <sebott@linux.vnet.ibm.com>
Fri, 29 Oct 2010 14:50:44 +0000 (16:50 +0200)
committerMartin Schwidefsky <sky@mschwide.boeblingen.de.ibm.com>
Fri, 29 Oct 2010 14:50:50 +0000 (16:50 +0200)
Get rid of the format string "%s" usage with volatile strings
to prevent use after free errors in the s390dbf.

Signed-off-by: Sebastian Ott <sebott@linux.vnet.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
drivers/s390/char/tape_core.c
drivers/s390/char/tape_std.c

index 29c2d73..6c40867 100644 (file)
@@ -1077,15 +1077,14 @@ __tape_do_irq (struct ccw_device *cdev, unsigned long intparm, struct irb *irb)
                /* FIXME: What to do with the request? */
                switch (PTR_ERR(irb)) {
                        case -ETIMEDOUT:
-                               DBF_LH(1, "(%s): Request timed out\n",
-                                       dev_name(&cdev->dev));
+                               DBF_LH(1, "(%08x): Request timed out\n",
+                                      device->cdev_id);
                        case -EIO:
                                __tape_end_request(device, request, -EIO);
                                break;
                        default:
-                               DBF_LH(1, "(%s): Unexpected i/o error %li\n",
-                                       dev_name(&cdev->dev),
-                                       PTR_ERR(irb));
+                               DBF_LH(1, "(%08x): Unexpected i/o error %li\n",
+                                      device->cdev_id, PTR_ERR(irb));
                }
                return;
        }
index 03f07e5..3c3f342 100644 (file)
@@ -47,8 +47,8 @@ tape_std_assign_timeout(unsigned long data)
                        device->cdev_id);
        rc = tape_cancel_io(device, request);
        if(rc)
-               DBF_EVENT(3, "(%s): Assign timeout: Cancel failed with rc = %i\n",
-                       dev_name(&device->cdev->dev), rc);
+               DBF_EVENT(3, "(%08x): Assign timeout: Cancel failed with rc = "
+                         "%i\n", device->cdev_id, rc);
 }
 
 int