diff options
author | Greg Kroah-Hartman <gregkh@suse.de> | 2009-07-24 11:02:53 -0700 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2009-07-24 11:02:53 -0700 |
commit | d929f7c88fc6c92e27afcccfb06a90fb8c5cc6d2 (patch) | |
tree | 1de401fa73f5a9d2971efa61542297ff55a8b804 | |
parent | 54d16ba4d762583d2961cb5c104b9179a22649e2 (diff) | |
download | patches-d929f7c88fc6c92e27afcccfb06a90fb8c5cc6d2.tar.gz |
2.6.31-rc4 sync and hv build fix for driver_data
-rw-r--r-- | driver-core.current/vc-fix-vcs-devices-for-consoles.patch | 48 | ||||
-rw-r--r-- | series | 4 | ||||
-rw-r--r-- | staging/staging-hv-blkvsc-fix-up-driver_data-usage.patch | 50 | ||||
-rw-r--r-- | staging/staging-hv-netvsc-fix-up-driver_data-usage.patch | 66 | ||||
-rw-r--r-- | staging/staging-hv-remove-compatibility-ifdefry.patch | 114 | ||||
-rw-r--r-- | staging/staging-hv-storvsc-fix-up-driver_data-usage.patch | 59 | ||||
-rw-r--r-- | version | 2 |
7 files changed, 236 insertions, 107 deletions
diff --git a/driver-core.current/vc-fix-vcs-devices-for-consoles.patch b/driver-core.current/vc-fix-vcs-devices-for-consoles.patch deleted file mode 100644 index c93388f61b4b07..00000000000000 --- a/driver-core.current/vc-fix-vcs-devices-for-consoles.patch +++ /dev/null @@ -1,48 +0,0 @@ -From kay.sievers@vrfy.org Sat Jul 18 15:43:32 2009 -From: Kay Sievers <kay.sievers@vrfy.org> -Date: Sat, 18 Jul 2009 17:34:17 +0200 -Subject: vc: fix vcs(a) devices for consoles -To: Greg KH <greg@kroah.com> -Cc: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar> -Message-ID: <1247931257.29760.1.camel@yio.site> - - -From: Kay Sievers <kay.sievers@vrfy.org> - -The buffer for the consoles are unconditionally allocated at -con_init() time, which miss the creation of the vcs(a) devices. - -Since 2.6.30, these devices are no longer created at open() -and removed on close(), but controlled by the lifetime of the -buffers. - -Reported-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar> -Tested-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar> -Cc: stable <stable@kernel.org> -Cc: Samuel Thibault <samuel.thibault@ens-lyon.org> -Cc: Nicolas Pitre <nico@cam.org> -Signed-off-by: Kay Sievers <kay.sievers@vrfy.org> -Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> - ---- - drivers/char/vc_screen.c | 4 ++++ - 1 file changed, 4 insertions(+) - ---- a/drivers/char/vc_screen.c -+++ b/drivers/char/vc_screen.c -@@ -495,11 +495,15 @@ void vcs_remove_sysfs(int index) - - int __init vcs_init(void) - { -+ unsigned int i; -+ - if (register_chrdev(VCS_MAJOR, "vcs", &vcs_fops)) - panic("unable to get major %d for vcs device", VCS_MAJOR); - vc_class = class_create(THIS_MODULE, "vc"); - - device_create(vc_class, NULL, MKDEV(VCS_MAJOR, 0), NULL, "vcs"); - device_create(vc_class, NULL, MKDEV(VCS_MAJOR, 128), NULL, "vcsa"); -+ for (i = 0; i < MIN_NR_CONSOLES; i++) -+ vcs_make_sysfs(i); - return 0; - } @@ -13,7 +13,6 @@ gregkh/gkh-version.patch driver-core.current/sysfs-fix-hardlink-count-on-device_move.patch driver-core.current/driver-core-firmware_class-fix-memory-leak-of-page-pointers-array.patch driver-core.current/dynamic-debug-fix-typo.patch -driver-core.current/vc-fix-vcs-devices-for-consoles.patch ################################# # USB patches for 2.6.31 @@ -264,10 +263,13 @@ staging/staging-hv-use-the-correct-ifdef-for-x86-64.patch staging/staging-hv-add-the-hyper-v-virtual-bus-to-the-build.patch staging/staging-hv-make-the-hyper-v-virtual-storage-driver-build.patch staging/staging-hv-add-the-hyper-v-virtual-scsi-driver-to-the-build.patch +staging/staging-hv-storvsc-fix-up-driver_data-usage.patch staging/staging-hv-make-the-hyper-v-virtual-block-driver-build.patch staging/staging-hv-add-the-hyper-v-virtual-block-driver-to-the-build.patch +staging/staging-hv-blkvsc-fix-up-driver_data-usage.patch staging/staging-hv-make-the-hyper-v-virtual-network-driver-build.patch staging/staging-hv-add-the-hyper-v-virtual-network-driver-to-the-build.patch +staging/staging-hv-netvsc-fix-up-driver_data-usage.patch staging/staging-hv-remove-internal-typedef.patch staging/staging-hv-remove-pvoid-typedef.patch staging/staging-hv-remove-void-typedef.patch diff --git a/staging/staging-hv-blkvsc-fix-up-driver_data-usage.patch b/staging/staging-hv-blkvsc-fix-up-driver_data-usage.patch new file mode 100644 index 00000000000000..cbcd1b75df38d8 --- /dev/null +++ b/staging/staging-hv-blkvsc-fix-up-driver_data-usage.patch @@ -0,0 +1,50 @@ +From foo@baz Fri Jul 24 11:00:10 PDT 2009 +Date: Fri, 24 Jul 2009 11:00:10 -0700 +From: Greg Kroah-Hartman <gregkh@suse.de> +Subject: Staging: hv: blkvsc: fix up driver_data usage + +From: Greg Kroah-Hartman <gregkh@suse.de> + +driver_data is gone now from struct device, so use the proper functions +to access it instead. + +Thanks to Bill Pemberton for pointing out this build error. + +Cc: Bill Pemberton <wfp5p@viridian.itc.Virginia.EDU> +Cc: Hank Janssen <hjanssen@microsoft.com> +Cc: Haiyang Zhang <haiyangz@microsoft.com> +Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> + +--- + drivers/staging/hv/blkvsc_drv.c | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +--- a/drivers/staging/hv/blkvsc_drv.c ++++ b/drivers/staging/hv/blkvsc_drv.c +@@ -341,7 +341,7 @@ static int blkvsc_probe(struct device *d + blkdev->target = device_info.TargetId; // this identified the device 0 or 1 + blkdev->path = device_info.PathId; // this identified the ide ctrl 0 or 1 + +- device->driver_data = blkdev; ++ dev_set_drvdata(device, blkdev); + + // Calculate the major and device num + if (blkdev->path == 0) +@@ -457,7 +457,7 @@ Cleanup: + + static void blkvsc_shutdown(struct device *device) + { +- struct block_device_context *blkdev = (struct block_device_context*)device->driver_data; ++ struct block_device_context *blkdev = dev_get_drvdata(device); + unsigned long flags; + + if (!blkdev) +@@ -786,7 +786,7 @@ static int blkvsc_remove(struct device * + + struct device_context *device_ctx = device_to_device_context(device); + DEVICE_OBJECT* device_obj = &device_ctx->device_obj; +- struct block_device_context *blkdev = (struct block_device_context*)device->driver_data; ++ struct block_device_context *blkdev = dev_get_drvdata(device); + unsigned long flags; + + DPRINT_ENTER(BLKVSC_DRV); diff --git a/staging/staging-hv-netvsc-fix-up-driver_data-usage.patch b/staging/staging-hv-netvsc-fix-up-driver_data-usage.patch new file mode 100644 index 00000000000000..efe215838f53bb --- /dev/null +++ b/staging/staging-hv-netvsc-fix-up-driver_data-usage.patch @@ -0,0 +1,66 @@ +From foo@baz Fri Jul 24 11:00:39 PDT 2009 +Date: Fri, 24 Jul 2009 11:00:39 -0700 +From: Greg Kroah-Hartman <gregkh@suse.de> +Subject: Staging: hv: netvsc: fix up driver_data usage + +From: Greg Kroah-Hartman <gregkh@suse.de> + +driver_data is gone now from struct device, so use the proper functions +to access it instead. + +Thanks to Bill Pemberton for pointing out this build error. + +Cc: Bill Pemberton <wfp5p@viridian.itc.Virginia.EDU> +Cc: Hank Janssen <hjanssen@microsoft.com> +Cc: Haiyang Zhang <haiyangz@microsoft.com> +Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> +--- + drivers/staging/hv/netvsc_drv.c | 10 +++++----- + 1 file changed, 5 insertions(+), 5 deletions(-) + +--- a/drivers/staging/hv/netvsc_drv.c ++++ b/drivers/staging/hv/netvsc_drv.c +@@ -209,14 +209,14 @@ static int netvsc_probe(struct device *d + + net_device_ctx = netdev_priv(net); + net_device_ctx->device_ctx = device_ctx; +- device->driver_data = net; ++ dev_set_drvdata(device, net); + + // Notify the netvsc driver of the new device + ret = net_drv_obj->Base.OnDeviceAdd(device_obj, (void*)&device_info); + if (ret != 0) + { + free_netdev(net); +- device->driver_data = NULL; ++ dev_set_drvdata(device, NULL); + + DPRINT_ERR(NETVSC_DRV, "unable to add netvsc device (ret %d)", ret); + return ret; +@@ -262,7 +262,7 @@ static int netvsc_remove(struct device * + NETVSC_DRIVER_OBJECT *net_drv_obj = &net_drv_ctx->drv_obj; + + struct device_context *device_ctx = device_to_device_context(device); +- struct net_device *net = (struct net_device *)device_ctx->device.driver_data; ++ struct net_device *net = dev_get_drvdata(&device_ctx->device); + DEVICE_OBJECT *device_obj = &device_ctx->device_obj; + + DPRINT_ENTER(NETVSC_DRV); +@@ -536,7 +536,7 @@ Desc: Link up/down notification + static void netvsc_linkstatus_callback(DEVICE_OBJECT *device_obj, unsigned int status) + { + struct device_context* device_ctx = to_device_context(device_obj); +- struct net_device* net = (struct net_device *)device_ctx->device.driver_data; ++ struct net_device* net = dev_get_drvdata(&device_ctx->device); + + DPRINT_ENTER(NETVSC_DRV); + +@@ -571,7 +571,7 @@ static int netvsc_recv_callback(DEVICE_O + { + int ret=0; + struct device_context *device_ctx = to_device_context(device_obj); +- struct net_device *net = (struct net_device *)device_ctx->device.driver_data; ++ struct net_device *net = dev_get_drvdata(&device_ctx->device); + struct net_device_context *net_device_ctx; + + struct sk_buff *skb; diff --git a/staging/staging-hv-remove-compatibility-ifdefry.patch b/staging/staging-hv-remove-compatibility-ifdefry.patch index b55e3588132933..3767fde41bc926 100644 --- a/staging/staging-hv-remove-compatibility-ifdefry.patch +++ b/staging/staging-hv-remove-compatibility-ifdefry.patch @@ -25,60 +25,6 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> drivers/staging/hv/vmbus_drv.c | 115 ------------------- 10 files changed, 431 deletions(-) ---- a/drivers/staging/hv/NetVsc.c -+++ b/drivers/staging/hv/NetVsc.c -@@ -20,8 +20,6 @@ - * - */ - --#define KERNEL_2_6_27 -- - #include <linux/kernel.h> - #include <linux/mm.h> - #include <linux/delay.h> ---- a/drivers/staging/hv/RndisFilter.c -+++ b/drivers/staging/hv/RndisFilter.c -@@ -21,8 +21,6 @@ - * - */ - --#define KERNEL_2_6_27 -- - #include <linux/kernel.h> - #include <linux/mm.h> - #include "include/logging.h" ---- a/drivers/staging/hv/Sources.c -+++ b/drivers/staging/hv/Sources.c -@@ -21,8 +21,6 @@ - * - */ - --#define KERNEL_2_6_27 -- - #include "Vmbus.c" - #include "Hv.c" - #include "Connection.c" ---- a/drivers/staging/hv/StorVsc.c -+++ b/drivers/staging/hv/StorVsc.c -@@ -21,8 +21,6 @@ - * - */ - --#define KERNEL_2_6_27 -- - #include <linux/kernel.h> - #include <linux/string.h> - #include <linux/mm.h> ---- a/drivers/staging/hv/TODO -+++ b/drivers/staging/hv/TODO -@@ -1,7 +1,6 @@ - TODO: - - fix checkpatch warnings/errors - - fix sparse issues -- - remove compatibility layer - - fix HANDLE usage to be "real" pointers - - audit the vmbus to verify it is working properly with the - driver model --- a/drivers/staging/hv/blkvsc_drv.c +++ b/drivers/staging/hv/blkvsc_drv.c @@ -20,8 +20,6 @@ @@ -225,6 +171,17 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> // // Vmbus interface // +--- a/drivers/staging/hv/NetVsc.c ++++ b/drivers/staging/hv/NetVsc.c +@@ -20,8 +20,6 @@ + * + */ + +-#define KERNEL_2_6_27 +- + #include <linux/kernel.h> + #include <linux/mm.h> + #include <linux/delay.h> --- a/drivers/staging/hv/netvsc_drv.c +++ b/drivers/staging/hv/netvsc_drv.c @@ -20,17 +20,11 @@ @@ -296,6 +253,39 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> DPRINT_ENTER(NETVSC_DRV); +--- a/drivers/staging/hv/RndisFilter.c ++++ b/drivers/staging/hv/RndisFilter.c +@@ -21,8 +21,6 @@ + * + */ + +-#define KERNEL_2_6_27 +- + #include <linux/kernel.h> + #include <linux/mm.h> + #include "include/logging.h" +--- a/drivers/staging/hv/Sources.c ++++ b/drivers/staging/hv/Sources.c +@@ -21,8 +21,6 @@ + * + */ + +-#define KERNEL_2_6_27 +- + #include "Vmbus.c" + #include "Hv.c" + #include "Connection.c" +--- a/drivers/staging/hv/StorVsc.c ++++ b/drivers/staging/hv/StorVsc.c +@@ -21,8 +21,6 @@ + * + */ + +-#define KERNEL_2_6_27 +- + #include <linux/kernel.h> + #include <linux/string.h> + #include <linux/mm.h> --- a/drivers/staging/hv/storvsc_drv.c +++ b/drivers/staging/hv/storvsc_drv.c @@ -21,8 +21,6 @@ @@ -766,7 +756,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> - DEVICE_OBJECT* device_obj = (DEVICE_OBJECT*)context; -#endif struct device_context* device_ctx = to_device_context(device_obj); - struct Scsi_Host *host = (struct Scsi_Host *)device_ctx->device.driver_data; + struct Scsi_Host *host = dev_get_drvdata(&device_ctx->device); struct scsi_device *sdev; @@ -1229,10 +1019,7 @@ static int storvsc_report_luns(struct sc unsigned int num_luns; @@ -805,6 +795,16 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> DPRINT_EXIT(STORVSC_DRV); } +--- a/drivers/staging/hv/TODO ++++ b/drivers/staging/hv/TODO +@@ -1,7 +1,6 @@ + TODO: + - fix checkpatch warnings/errors + - fix sparse issues +- - remove compatibility layer + - fix HANDLE usage to be "real" pointers + - audit the vmbus to verify it is working properly with the + driver model --- a/drivers/staging/hv/vmbus_drv.c +++ b/drivers/staging/hv/vmbus_drv.c @@ -21,7 +21,6 @@ @@ -876,7 +876,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> }; // -@@ -401,19 +383,11 @@ int vmbus_bus_init(PFN_DRIVERINITIALIZE +@@ -401,19 +383,11 @@ int vmbus_bus_init(PFN_DRIVERINITIALIZE bus_register(&vmbus_drv_ctx->bus); // Get the interrupt resource @@ -896,7 +896,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> if (ret != 0) { -@@ -424,15 +398,7 @@ int vmbus_bus_init(PFN_DRIVERINITIALIZE +@@ -424,15 +398,7 @@ int vmbus_bus_init(PFN_DRIVERINITIALIZE ret = -1; goto cleanup; } diff --git a/staging/staging-hv-storvsc-fix-up-driver_data-usage.patch b/staging/staging-hv-storvsc-fix-up-driver_data-usage.patch new file mode 100644 index 00000000000000..4327b2b2abd674 --- /dev/null +++ b/staging/staging-hv-storvsc-fix-up-driver_data-usage.patch @@ -0,0 +1,59 @@ +From foo@baz Fri Jul 24 10:58:22 PDT 2009 +Date: Fri, 24 Jul 2009 10:58:22 -0700 +From: Greg Kroah-Hartman <gregkh@suse.de> +Subject: Staging: hv: storvsc: fix up driver_data usage + +From: Greg Kroah-Hartman <gregkh@suse.de> + +driver_data is gone now from struct device, so use the proper functions +to access it instead. + +Thanks to Bill Pemberton for pointing out this build error. + +Cc: Bill Pemberton <wfp5p@viridian.itc.Virginia.EDU> +Cc: Hank Janssen <hjanssen@microsoft.com> +Cc: Haiyang Zhang <haiyangz@microsoft.com> +Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> + +--- + drivers/staging/hv/storvsc_drv.c | 8 ++++---- + 1 file changed, 4 insertions(+), 4 deletions(-) + +--- a/drivers/staging/hv/storvsc_drv.c ++++ b/drivers/staging/hv/storvsc_drv.c +@@ -279,7 +279,7 @@ static int storvsc_probe(struct device * + return -ENOMEM; + } + +- device->driver_data = host; ++ dev_set_drvdata(device, host); + + host_device_ctx = (struct host_device_context*)host->hostdata; + memset(host_device_ctx, 0, sizeof(struct host_device_context)); +@@ -380,7 +380,7 @@ static int storvsc_remove(struct device + struct device_context *device_ctx = device_to_device_context(device); + DEVICE_OBJECT* device_obj = &device_ctx->device_obj; + +- struct Scsi_Host *host = (struct Scsi_Host *)device->driver_data; ++ struct Scsi_Host *host = dev_get_drvdata(device); + struct host_device_context *host_device_ctx=(struct host_device_context*)host->hostdata; + + +@@ -1125,7 +1125,7 @@ static void storvsc_host_rescan_callback + DEVICE_OBJECT* device_obj = (DEVICE_OBJECT*)context; + #endif + struct device_context* device_ctx = to_device_context(device_obj); +- struct Scsi_Host *host = (struct Scsi_Host *)device_ctx->device.driver_data; ++ struct Scsi_Host *host = dev_get_drvdata(&device_ctx->device); + struct scsi_device *sdev; + struct host_device_context *host_device_ctx; + struct scsi_device **sdevs_remove_list; +@@ -1293,7 +1293,7 @@ static int storvsc_report_luns(struct sc + static void storvsc_host_rescan(DEVICE_OBJECT* device_obj) + { + struct device_context* device_ctx = to_device_context(device_obj); +- struct Scsi_Host *host = (struct Scsi_Host *)device_ctx->device.driver_data; ++ struct Scsi_Host *host = dev_get_drvdata(&device_ctx->device); + struct host_device_context *host_device_ctx; + + DPRINT_ENTER(STORVSC_DRV); @@ -1 +1 @@ -2.6.31-rc3 +2.6.31-rc4 |