[<prev] [next>] [day] [month] [year] [list]
Message-ID: <20070305224032.GE22630@skybase>
Date: Mon, 5 Mar 2007 23:40:32 +0100
From: Martin Schwidefsky <schwidefsky@...ibm.com>
To: linux-kernel@...r.kernel.org, linux-s390@...r.kernel.org
Cc: holzheu@...ibm.com
Subject: [S390] tape: Compression overwrites crypto setting
From: Michael Holzheu <holzheu@...ibm.com>
[S390] tape: Compression overwrites crypto setting
After switching compression on/off with the mt command, tape encryption is no
longer working. The reason for that is, that the modeset_byte is set to
the compression value instead of using bitwise and/or bit operations to
enable/disable the corresponding bit.
Signed-off-by: Michael Holzheu <holzheu@...ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@...ibm.com>
---
drivers/s390/char/tape_std.c | 5 ++++-
1 files changed, 4 insertions(+), 1 deletion(-)
diff -urpN linux-2.6/drivers/s390/char/tape_std.c linux-2.6-patched/drivers/s390/char/tape_std.c
--- linux-2.6/drivers/s390/char/tape_std.c 2007-02-04 19:44:54.000000000 +0100
+++ linux-2.6-patched/drivers/s390/char/tape_std.c 2007-03-05 22:51:51.000000000 +0100
@@ -647,7 +647,10 @@ tape_std_mtcompression(struct tape_devic
return PTR_ERR(request);
request->op = TO_NOP;
/* setup ccws */
- *device->modeset_byte = (mt_count == 0) ? 0x00 : 0x08;
+ if (mt_count == 0)
+ *device->modeset_byte &= ~0x08;
+ else
+ *device->modeset_byte |= 0x08;
tape_ccw_cc(request->cpaddr, MODE_SET_DB, 1, device->modeset_byte);
tape_ccw_end(request->cpaddr + 1, NOP, 0, NULL);
/* execute it */
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists