[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20090721024557.GA17242@suse.de>
Date: Mon, 20 Jul 2009 19:45:57 -0700
From: Greg KH <gregkh@...e.de>
To: Arnd Bergmann <arnd@...db.de>
Cc: virtualization@...ts.linux-foundation.org,
linux-kernel@...r.kernel.org, devel@...verdev.osuosl.org,
virtualization@...ts.osdl.org, Greg KH <greg@...ah.com>,
Sam Ramji <sramji@...rosoft.com>,
Haiyang Zhang <haiyangz@...rosoft.com>,
Hank Janssen <hjanssen@...rosoft.com>,
shemminger@...ux-foundation.org
Subject: Re: [patch 27/54] Staging: hv: remove ULONG and LONG typedefs
On Mon, Jul 20, 2009 at 07:38:23PM -0700, Greg KH wrote:
> On Tue, Jul 21, 2009 at 02:00:16AM +0200, Arnd Bergmann wrote:
> > On Friday 17 July 2009, Greg Kroah-Hartman wrote:
> > > From: Greg Kroah-Hartman <gregkh@...e.de>
> > >
> > > The ULONG and LONG typedefs are now removed from the Hyper-V driver
> > > code
> > >
> >
> > This conversion is not equivalent:
> >
> > > //
> > > -// unsigned types
> > > -//
> > > -typedef unsigned int ULONG;
> > > -
> > > -//
> > > -// signed types
> > > -//
> > > -typedef int LONG;
> >
> > - // redefine the world, because we can
> > - extern char *i;
> > - void abs(unsigned u);
> > - #define FALSE (2)
> >
> > ;-)
> >
> > > --- a/drivers/staging/hv/include/StorVscApi.h
> > > +++ b/drivers/staging/hv/include/StorVscApi.h
> > > @@ -117,7 +117,7 @@ typedef struct _STORVSC_DRIVER_OBJECT {
> > > } STORVSC_DRIVER_OBJECT;
> > >
> > > typedef struct _STORVSC_DEVICE_INFO {
> > > - ULONG PortNumber;
> > > + unsigned long PortNumber;
> > > unsigned char PathId;
> > > unsigned char TargetId;
> > > } STORVSC_DEVICE_INFO;
> >
> > If this is an API (as the header file name suggests), you just changed it.
> > Same for the other hunks in this patch.
>
> Ah crap, you're right, that's all wrong, nice catch.
>
> I'll go redo it to be "unsigned int", but for some reason, the code
> still seems to work properly :)
Ok, here's the updated version. Thanks for the review.
Hank, a lot of these should probably be converted to "real" kernel
types, like u32, or u64 if it's really needed. Especially if they are
crossing the kernel/hypervisor boundry.
thanks,
greg k-h
-------------
From: Greg Kroah-Hartman <gregkh@...e.de>
Subject: Staging: hv: remove ULONG and LONG typedefs
From: Greg Kroah-Hartman <gregkh@...e.de>
The ULONG and LONG typedefs are now removed from the Hyper-V driver
code.
Cc: Hank Janssen <hjanssen@...rosoft.com>
Cc: Haiyang Zhang <haiyangz@...rosoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@...e.de>
---
drivers/staging/hv/StorVsc.c | 2 +-
drivers/staging/hv/include/StorVscApi.h | 2 +-
drivers/staging/hv/include/osd.h | 10 ----------
drivers/staging/hv/include/vstorage.h | 12 ++++++------
4 files changed, 8 insertions(+), 18 deletions(-)
--- a/drivers/staging/hv/StorVsc.c
+++ b/drivers/staging/hv/StorVsc.c
@@ -62,7 +62,7 @@ typedef struct _STORVSC_DEVICE{
// Each unique Port/Path/Target represents 1 channel ie scsi controller. In reality, the pathid, targetid is always 0
// and the port is set by us
- ULONG PortNumber;
+ unsigned int PortNumber;
unsigned char PathId;
unsigned char TargetId;
--- a/drivers/staging/hv/include/StorVscApi.h
+++ b/drivers/staging/hv/include/StorVscApi.h
@@ -117,7 +117,7 @@ typedef struct _STORVSC_DRIVER_OBJECT {
} STORVSC_DRIVER_OBJECT;
typedef struct _STORVSC_DEVICE_INFO {
- ULONG PortNumber;
+ unsigned int PortNumber;
unsigned char PathId;
unsigned char TargetId;
} STORVSC_DEVICE_INFO;
--- a/drivers/staging/hv/include/osd.h
+++ b/drivers/staging/hv/include/osd.h
@@ -95,16 +95,6 @@ typedef struct _DLIST_ENTRY {
} DLIST_ENTRY;
//
-// unsigned types
-//
-typedef unsigned int ULONG;
-
-//
-// signed types
-//
-typedef int LONG;
-
-//
// Other types
//
typedef unsigned long SIZE_T;
--- a/drivers/staging/hv/include/vstorage.h
+++ b/drivers/staging/hv/include/vstorage.h
@@ -155,7 +155,7 @@ typedef struct
unsigned char DataIn;
unsigned char Reserved;
- ULONG DataTransferLength;
+ unsigned int DataTransferLength;
union
{
@@ -185,11 +185,11 @@ typedef struct
//
// Note: port number is only really known on the client side
//
- ULONG PortNumber;
+ unsigned int PortNumber;
- ULONG Flags;
+ unsigned int Flags;
- ULONG MaxTransferBytes;
+ unsigned int MaxTransferBytes;
//
// This id is unique for each channel and will correspond with
@@ -249,13 +249,13 @@ typedef struct _VSTOR_PACKET
// Flags - see below for values
//
- ULONG Flags;
+ unsigned int Flags;
//
// Status of the request returned from the server side.
//
- ULONG Status;
+ unsigned int Status;
//
// Data payload area
--
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