Re: [BK PATCH] SCSI updates for 2.6.9

Linus Torvalds
2004-10-19T07:13:38Z

Ben,
does this look ok to you?

Arguably the SCSI layer should also have proper prefixes for its constants
- and in fact they do kind of exist as the GPCMD_xxx constants. Oh, well.
Regardless, the sbp2 constants do look like they want prefixing..

Linus

On Tue, 19 Oct 2004, Dmitry Torokhov wrote:

> On Monday 18 October 2004 11:41 pm, Dmitry Torokhov wrote:
> > On Monday 18 October 2004 05:03 pm, James Bottomley wrote:
> >
> > > Matthew Wilcox:
> > > o Add SPI-5 constants to scsi.h
> >
> > This breaks Firewire SBP2 build:
> >
> > CC [M] drivers/ieee1394/sbp2.o
> > In file included from drivers/ieee1394/sbp2.c:78:
> > drivers/ieee1394/sbp2.h:61:1: warning: "ABORT_TASK_SET" redefined
> > In file included from drivers/scsi/scsi.h:31,
> > from drivers/ieee1394/sbp2.c:67:
> > include/scsi/scsi.h:255:1: warning: this is the location of the previous definition
> > In file included from drivers/ieee1394/sbp2.c:78:
> > drivers/ieee1394/sbp2.h:62:1: warning: "LOGICAL_UNIT_RESET" redefined
> > In file included from drivers/scsi/scsi.h:31,
> > from drivers/ieee1394/sbp2.c:67:
> > include/scsi/scsi.h:267:1: warning: this is the location of the previous definition
> >
> > It looks like firewire has its own set of commands with conflicting names.
> > Who should win?
> >
>
> I think something like the patch below shoudl work.
>
> --
> Dmitry
>
>
> ===================================================================
>
>
> ChangeSet@1.1963, 2004-10-19 00:08:16-05:00, dtor_core@ameritech.net
> IEEE1394: SBP-2 - rename some constants to fix clash with new
> SCSI core defines.
>
> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
>
>
> sbp2.c | 8 ++++----
> sbp2.h | 18 +++++++++---------
> 2 files changed, 13 insertions(+), 13 deletions(-)
>
>
> ===================================================================
>
>
>
> diff -Nru a/drivers/ieee1394/sbp2.c b/drivers/ieee1394/sbp2.c
> --- a/drivers/ieee1394/sbp2.c 2004-10-19 00:10:58 -05:00
> +++ b/drivers/ieee1394/sbp2.c 2004-10-19 00:10:58 -05:00
> @@ -1088,7 +1088,7 @@
> scsi_id->query_logins_orb->query_response_hi = ORB_SET_NODE_ID(hi->host->node_id);
> SBP2_DEBUG("sbp2_query_logins: query_response_hi/lo initialized");
>
> - scsi_id->query_logins_orb->lun_misc = ORB_SET_FUNCTION(QUERY_LOGINS_REQUEST);
> + scsi_id->query_logins_orb->lun_misc = ORB_SET_FUNCTION(SBP2_QUERY_LOGINS_REQUEST);
> scsi_id->query_logins_orb->lun_misc |= ORB_SET_NOTIFY(1);
> if (scsi_id->sbp2_device_type_and_lun != SBP2_DEVICE_TYPE_LUN_UNINITIALIZED) {
> scsi_id->query_logins_orb->lun_misc |= ORB_SET_LUN(scsi_id->sbp2_device_type_and_lun);
> @@ -1199,7 +1199,7 @@
> scsi_id->login_orb->login_response_hi = ORB_SET_NODE_ID(hi->host->node_id);
> SBP2_DEBUG("sbp2_login_device: login_response_hi/lo initialized");
>
> - scsi_id->login_orb->lun_misc = ORB_SET_FUNCTION(LOGIN_REQUEST);
> + scsi_id->login_orb->lun_misc = ORB_SET_FUNCTION(SBP2_LOGIN_REQUEST);
> scsi_id->login_orb->lun_misc |= ORB_SET_RECONNECT(0); /* One second reconnect time */
> scsi_id->login_orb->lun_misc |= ORB_SET_EXCLUSIVE(exclusive_login); /* Exclusive access to device */
> scsi_id->login_orb->lun_misc |= ORB_SET_NOTIFY(1); /* Notify us of login complete */
> @@ -1325,7 +1325,7 @@
> scsi_id->logout_orb->reserved3 = 0x0;
> scsi_id->logout_orb->reserved4 = 0x0;
>
> - scsi_id->logout_orb->login_ID_misc = ORB_SET_FUNCTION(LOGOUT_REQUEST);
> + scsi_id->logout_orb->login_ID_misc = ORB_SET_FUNCTION(SBP2_LOGOUT_REQUEST);
> scsi_id->logout_orb->login_ID_misc |= ORB_SET_LOGIN_ID(scsi_id->login_response->length_login_ID);
>
> /* Notify us when complete */
> @@ -1390,7 +1390,7 @@
> scsi_id->reconnect_orb->reserved3 = 0x0;
> scsi_id->reconnect_orb->reserved4 = 0x0;
>
> - scsi_id->reconnect_orb->login_ID_misc = ORB_SET_FUNCTION(RECONNECT_REQUEST);
> + scsi_id->reconnect_orb->login_ID_misc = ORB_SET_FUNCTION(SBP2_RECONNECT_REQUEST);
> scsi_id->reconnect_orb->login_ID_misc |=
> ORB_SET_LOGIN_ID(scsi_id->login_response->length_login_ID);
>
> diff -Nru a/drivers/ieee1394/sbp2.h b/drivers/ieee1394/sbp2.h
> --- a/drivers/ieee1394/sbp2.h 2004-10-19 00:10:58 -05:00
> +++ b/drivers/ieee1394/sbp2.h 2004-10-19 00:10:58 -05:00
> @@ -52,15 +52,15 @@
> u8 cdb[12];
> };
>
> -#define LOGIN_REQUEST 0x0
> -#define QUERY_LOGINS_REQUEST 0x1
> -#define RECONNECT_REQUEST 0x3
> -#define SET_PASSWORD_REQUEST 0x4
> -#define LOGOUT_REQUEST 0x7
> -#define ABORT_TASK_REQUEST 0xb
> -#define ABORT_TASK_SET 0xc
> -#define LOGICAL_UNIT_RESET 0xe
> -#define TARGET_RESET_REQUEST 0xf
> +#define SBP2_LOGIN_REQUEST 0x0
> +#define SBP2_QUERY_LOGINS_REQUEST 0x1
> +#define SBP2_RECONNECT_REQUEST 0x3
> +#define SBP2_SET_PASSWORD_REQUEST 0x4
> +#define SBP2_LOGOUT_REQUEST 0x7
> +#define SBP2_ABORT_TASK_REQUEST 0xb
> +#define SBP2_ABORT_TASK_SET 0xc
> +#define SBP2_LOGICAL_UNIT_RESET 0xe
> +#define SBP2_TARGET_RESET_REQUEST 0xf
>
> #define ORB_SET_LUN(value) (value & 0xffff)
> #define ORB_SET_FUNCTION(value) ((value & 0xf) << 16)
>