Patch "block/swim: Rename macros to avoid inconsistent inverted logic" has been added to the 4.16-stable tree

gregkh at linuxfoundation.org gregkh at linuxfoundation.org
Fri Apr 27 22:20:12 AEST 2018


This is a note to let you know that I've just added the patch titled

    block/swim: Rename macros to avoid inconsistent inverted logic

to the 4.16-stable tree which can be found at:
    http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     block-swim-rename-macros-to-avoid-inconsistent-inverted-logic.patch
and it can be found in the queue-4.16 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <stable at vger.kernel.org> know about it.


>From 56a1c5ee54f69dd767fb61d301883dc919ddc259 Mon Sep 17 00:00:00 2001
From: Finn Thain <fthain at telegraphics.com.au>
Date: Wed, 11 Apr 2018 20:50:14 -0400
Subject: block/swim: Rename macros to avoid inconsistent inverted logic

From: Finn Thain <fthain at telegraphics.com.au>

commit 56a1c5ee54f69dd767fb61d301883dc919ddc259 upstream.

The Sony drive status bits use active-low logic. The swim_readbit()
function converts that to 'C' logic for readability. Hence, the
sense of the names of the status bit macros should not be inverted.

Mostly they are correct. However, the TWOMEG_DRIVE, MFM_MODE and
TWOMEG_MEDIA macros have inverted sense (like MkLinux). Fix this
inconsistency and make the following patches less confusing.

The same problem affects swim3.c so fix that too.

No functional change.

The FDHD drive status bits are documented in sonydriv.cpp from MAME
and in swimiii.h from MkLinux.

Cc: Laurent Vivier <lvivier at redhat.com>
Cc: Benjamin Herrenschmidt <benh at kernel.crashing.org>
Cc: linuxppc-dev at lists.ozlabs.org
Cc: Jens Axboe <axboe at kernel.dk>
Cc: stable at vger.kernel.org # v4.14+
Tested-by: Stan Johnson <userm57 at yahoo.com>
Signed-off-by: Finn Thain <fthain at telegraphics.com.au>
Acked-by: Laurent Vivier <lvivier at redhat.com>
Signed-off-by: Jens Axboe <axboe at kernel.dk>
Signed-off-by: Greg Kroah-Hartman <gregkh at linuxfoundation.org>

---
 drivers/block/swim.c  |    8 ++++----
 drivers/block/swim3.c |    6 +++---
 2 files changed, 7 insertions(+), 7 deletions(-)

--- a/drivers/block/swim.c
+++ b/drivers/block/swim.c
@@ -110,7 +110,7 @@ struct iwm {
 /* Select values for swim_select and swim_readbit */
 
 #define READ_DATA_0	0x074
-#define TWOMEG_DRIVE	0x075
+#define ONEMEG_DRIVE	0x075
 #define SINGLE_SIDED	0x076
 #define DRIVE_PRESENT	0x077
 #define DISK_IN		0x170
@@ -118,9 +118,9 @@ struct iwm {
 #define TRACK_ZERO	0x172
 #define TACHO		0x173
 #define READ_DATA_1	0x174
-#define MFM_MODE	0x175
+#define GCR_MODE	0x175
 #define SEEK_COMPLETE	0x176
-#define ONEMEG_MEDIA	0x177
+#define TWOMEG_MEDIA	0x177
 
 /* Bits in handshake register */
 
@@ -612,7 +612,7 @@ static void setup_medium(struct floppy_s
 		struct floppy_struct *g;
 		fs->disk_in = 1;
 		fs->write_protected = swim_readbit(base, WRITE_PROT);
-		fs->type = swim_readbit(base, ONEMEG_MEDIA);
+		fs->type = swim_readbit(base, TWOMEG_MEDIA);
 
 		if (swim_track00(base))
 			printk(KERN_ERR
--- a/drivers/block/swim3.c
+++ b/drivers/block/swim3.c
@@ -148,7 +148,7 @@ struct swim3 {
 #define MOTOR_ON	2
 #define RELAX		3	/* also eject in progress */
 #define READ_DATA_0	4
-#define TWOMEG_DRIVE	5
+#define ONEMEG_DRIVE	5
 #define SINGLE_SIDED	6	/* drive or diskette is 4MB type? */
 #define DRIVE_PRESENT	7
 #define DISK_IN		8
@@ -156,9 +156,9 @@ struct swim3 {
 #define TRACK_ZERO	10
 #define TACHO		11
 #define READ_DATA_1	12
-#define MFM_MODE	13
+#define GCR_MODE	13
 #define SEEK_COMPLETE	14
-#define ONEMEG_MEDIA	15
+#define TWOMEG_MEDIA	15
 
 /* Definitions of values used in writing and formatting */
 #define DATA_ESCAPE	0x99


Patches currently in stable-queue which might be from fthain at telegraphics.com.au are

queue-4.16/block-swim-don-t-log-an-error-message-for-an-invalid-ioctl.patch
queue-4.16/block-swim-fix-io-error-at-end-of-medium.patch
queue-4.16/m68k-mac-don-t-remap-swim-mmio-region.patch
queue-4.16/block-swim-rename-macros-to-avoid-inconsistent-inverted-logic.patch
queue-4.16/block-swim-select-appropriate-drive-on-device-open.patch
queue-4.16/block-swim-fix-array-bounds-check.patch
queue-4.16/block-swim-check-drive-type.patch
queue-4.16/block-swim-remove-extra-put_disk-call-from-error-path.patch


More information about the Linuxppc-dev mailing list