summaryrefslogtreecommitdiffstats
path: root/drivers/staging/hv/RndisFilter.c
Commit message (Collapse)AuthorAgeFilesLines
* Staging: hv: Fix a bug affecting IPv6Haiyang Zhang2010-04-301-0/+1
| | | | | | | | | | | | | Fix a bug affecting IPv6 Added the multicast flag for proper IPv6 function. Reported-by: Toshikazu Sakai <toshikas@microsoft.com> Signed-off-by: Hank Janssen <hjanssen@microsoft.com> Signed-off-by: Haiyang Zhang <haiyangz@microsoft.com> Cc: stable <stable@kernel.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* include cleanup: Update gfp.h and slab.h includes to prepare for breaking ↵Tejun Heo2010-03-301-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | implicit slab.h inclusion from percpu.h percpu.h is included by sched.h and module.h and thus ends up being included when building most .c files. percpu.h includes slab.h which in turn includes gfp.h making everything defined by the two files universally available and complicating inclusion dependencies. percpu.h -> slab.h dependency is about to be removed. Prepare for this change by updating users of gfp and slab facilities include those headers directly instead of assuming availability. As this conversion needs to touch large number of source files, the following script is used as the basis of conversion. http://userweb.kernel.org/~tj/misc/slabh-sweep.py The script does the followings. * Scan files for gfp and slab usages and update includes such that only the necessary includes are there. ie. if only gfp is used, gfp.h, if slab is used, slab.h. * When the script inserts a new include, it looks at the include blocks and try to put the new include such that its order conforms to its surrounding. It's put in the include block which contains core kernel includes, in the same order that the rest are ordered - alphabetical, Christmas tree, rev-Xmas-tree or at the end if there doesn't seem to be any matching order. * If the script can't find a place to put a new include (mostly because the file doesn't have fitting include block), it prints out an error message indicating which .h file needs to be added to the file. The conversion was done in the following steps. 1. The initial automatic conversion of all .c files updated slightly over 4000 files, deleting around 700 includes and adding ~480 gfp.h and ~3000 slab.h inclusions. The script emitted errors for ~400 files. 2. Each error was manually checked. Some didn't need the inclusion, some needed manual addition while adding it to implementation .h or embedding .c file was more appropriate for others. This step added inclusions to around 150 files. 3. The script was run again and the output was compared to the edits from #2 to make sure no file was left behind. 4. Several build tests were done and a couple of problems were fixed. e.g. lib/decompress_*.c used malloc/free() wrappers around slab APIs requiring slab.h to be added manually. 5. The script was run on all .h files but without automatically editing them as sprinkling gfp.h and slab.h inclusions around .h files could easily lead to inclusion dependency hell. Most gfp.h inclusion directives were ignored as stuff from gfp.h was usually wildly available and often used in preprocessor macros. Each slab.h inclusion directive was examined and added manually as necessary. 6. percpu.h was updated not to include slab.h. 7. Build test were done on the following configurations and failures were fixed. CONFIG_GCOV_KERNEL was turned off for all tests (as my distributed build env didn't work with gcov compiles) and a few more options had to be turned off depending on archs to make things build (like ipr on powerpc/64 which failed due to missing writeq). * x86 and x86_64 UP and SMP allmodconfig and a custom test config. * powerpc and powerpc64 SMP allmodconfig * sparc and sparc64 SMP allmodconfig * ia64 SMP allmodconfig * s390 SMP allmodconfig * alpha SMP allmodconfig * um on x86_64 SMP allmodconfig 8. percpu.h modifications were reverted so that it could be applied as a separate patch and serve as bisection point. Given the fact that I had only a couple of failures from tests on step 6, I'm fairly confident about the coverage of this conversion patch. If there is a breakage, it's likely to be something in one of the arch headers which should be easily discoverable easily on most builds of the specific arch. Signed-off-by: Tejun Heo <tj@kernel.org> Guess-its-ok-by: Christoph Lameter <cl@linux-foundation.org> Cc: Ingo Molnar <mingo@redhat.com> Cc: Lee Schermerhorn <Lee.Schermerhorn@hp.com>
* Staging: hv: remove unneeded OnClose callbackGreg Kroah-Hartman2010-03-031-4/+1
| | | | | | | | | | This callback only calls one function, so just call the function instead, no need for indirection at all. Cc: Hank Janssen <hjanssen@microsoft.com> Cc: Haiyang Zhang <haiyangz@microsoft.com>. Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* Staging: hv: remove unneeded OnOpen callbackGreg Kroah-Hartman2010-03-031-4/+1
| | | | | | | | | | This callback only calls one function, so just call the function instead, no need for indirection at all. Cc: Hank Janssen <hjanssen@microsoft.com> Cc: Haiyang Zhang <haiyangz@microsoft.com>. Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* Staging: hv: remove use of internal list routines in RndisFilterBill Pemberton2009-09-151-11/+6
| | | | | | | | | | | The hv driver has it's own linked list routines. This removes them from RndisFilter.c Signed-off-by: Bill Pemberton <wfp5p@virginia.edu> Cc: Hank Janssen <hjanssen@microsoft.com> Cc: Haiyang Zhang <haiyangz@microsoft.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* Staging: hv: remove function pointer typedefs from NetVscApi.hGreg Kroah-Hartman2009-09-151-1/+1
| | | | | | | | | | function pointer typedefs are allowed in the kernel, but only if they make sense, which they really do not here, as they are not passed around with any kind of frequency. So just spell them all out, it makes the code smaller and easier to understand overall. Cc: Hank Janssen <hjanssen@microsoft.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* Staging: hv: rename struct NETVSC_DEVICEGreg Kroah-Hartman2009-09-151-6/+6
| | | | | | | | | | | | | The Linux kernel doesn't have all caps structures, we don't like to shout at our programmers, it makes them grumpy. Instead, we like to sooth them with small, rounded letters, which puts them in a nice, compliant mood, and makes them more productive and happier, allowing them more fufilling lives overall. Cc: Hank Janssen <hjanssen@microsoft.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* Staging: hv: coding style cleanup for RndisFilter.cGreg Kroah-Hartman2009-09-151-400/+285
| | | | | | | | It's much better now. Cc: Hank Janssen <hjanssen@microsoft.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* Staging: hv: remove typedefs from RndisFilter.cGreg Kroah-Hartman2009-09-151-86/+65
| | | | | Cc: Hank Janssen <hjanssen@microsoft.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* Staging: hv: move NetVscApi.hGreg Kroah-Hartman2009-09-151-1/+1
| | | | | | | | | Move it out of the include subdirectory. No code changes here, just file movements. Cc: Hank Janssen <hjanssen@microsoft.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* Staging: hv: move logging.hGreg Kroah-Hartman2009-09-151-1/+1
| | | | | | | | | Move it out of the include subdirectory. No code changes here, just file movements. Cc: Hank Janssen <hjanssen@microsoft.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* Staging: hv: fix up typedefs in NetVscApi.hGreg Kroah-Hartman2009-09-151-6/+3
| | | | | | | It's now all clean from a coding style standpoint. Cc: Hank Janssen <hjanssen@microsoft.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* Staging: hv: typedef removal for VmbusApi.hGreg Kroah-Hartman2009-09-151-1/+1
| | | | | | | | | | | The function pointers still have ugly names, but the structures are now cleaned up. Note, a comment was added where the driver structure is pointing at a problem that needs to be fixed up later in the code. Cc: Hank Janssen <hjanssen@microsoft.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* Staging: hv: rndis.h: typedef removal, part 1Greg Kroah-Hartman2009-09-151-69/+50
| | | | | | | This removes about half of the typedefs in rndis.h Cc: Hank Janssen <hjanssen@microsoft.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* Staging: hv: move osd.hGreg Kroah-Hartman2009-09-151-1/+1
| | | | | | | | | This moves osd.h out of the include/ subdirectory. No code changes are made here. Cc: Hank Janssen <hjanssen@microsoft.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* Staging: hv: osd: add osd_ prefix to global functionsGreg Kroah-Hartman2009-09-151-5/+5
| | | | | | | | | Put a "osd_" prefix on the osd.c functions in order for us to play nicer in the kernel namespace. Cc: Bill Pemberton <wfp5p@virginia.edu> Cc: Hank Janssen <hjanssen@microsoft.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* Staging: hv: osd: remove physical address wrapper functionsGreg Kroah-Hartman2009-09-151-2/+3
| | | | | | | | | Use the real functions the kernel provides, so that people can see what is actually going on in the code easier. Cc: Bill Pemberton <wfp5p@virginia.edu> Cc: Hank Janssen <hjanssen@microsoft.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* Staging: hv: remove wrapper functions around kmap_Bill Pemberton2009-09-151-4/+6
| | | | | | | | | | Remove PageMapVirtualAddress() and PageUnmapVirtualAddress() which were wrappers around kmap_atomic() and kunmap_atomic() Signed-off-by: Bill Pemberton <wfp5p@virginia.edu> Cc: Hank Janssen <hjanssen@microsoft.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* Staging: hv: remove wrapper functions for atomic operationsBill Pemberton2009-09-151-3/+3
| | | | | | | Signed-off-by: Bill Pemberton <wfp5p@virginia.edu> Cc: Hank Janssen <hjanssen@microsoft.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* Staging: hv: remove WaitEventClose()Bill Pemberton2009-09-151-1/+1
| | | | | | | | | | All WaitEventClose() close did was call kfree(), so get rid of it and replace it with a call to kfree() Signed-off-by: Bill Pemberton <wfp5p@virginia.edu> Cc: Hank Janssen <hjanssen@microsoft.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* Staging: hv: fix sparse static warningsGreg Kroah-Hartman2009-09-151-2/+2
| | | | | | | | This fixes up all of the sparse warnings about static functions. Cc: Hank Janssen <hjanssen@microsoft.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* Staging: hv: Remove typedef NETVSC_PACKET and PNETVSC_PACKETNicolas Palix2009-09-151-8/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | typedef NETVSC_PACKET and PNETVSC_PACKET are removed and their usages are replace by the use of struct hv_netvsc_packet and struct hv_netvsc_packet * respectively. Here is the semantic patch generated to perform this transformation: (http://coccinelle.lip6.fr/) //<smpl> @rm_NETVSC_PACKET@ @@ -typedef struct _NETVSC_PACKET +struct hv_netvsc_packet {...} -NETVSC_PACKET ; @rm_PNETVSC_PACKET@ @@ -typedef struct _NETVSC_PACKET *PNETVSC_PACKET; +struct hv_netvsc_packet; @fixtypedef_NETVSC_PACKET@ typedef NETVSC_PACKET; @@ -NETVSC_PACKET +struct hv_netvsc_packet @fixstruct__NETVSC_PACKET@ @@ struct -_NETVSC_PACKET +hv_netvsc_packet @fixtypedef_PNETVSC_PACKET@ typedef PNETVSC_PACKET; @@ -PNETVSC_PACKET +struct hv_netvsc_packet* //</smpl> Signed-off-by: Nicolas Palix <npalix@diku.dk> Cc: Hank Janssen <hjanssen@microsoft.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* Staging: hv: Remove typedef DRIVER_OBJECT and PDRIVER_OBJECTNicolas Palix2009-09-151-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | typedef DRIVER_OBJECT and PDRIVER_OBJECT are removed and their usages are replace by the use of struct hv_driver and struct hv_driver * respectively. Here is the semantic patch generated to perform this transformation: (http://coccinelle.lip6.fr/) //<smpl> @rm_DRIVER_OBJECT@ @@ -typedef struct _DRIVER_OBJECT +struct hv_driver {...} -DRIVER_OBJECT ; @rm_PDRIVER_OBJECT@ @@ -typedef struct _DRIVER_OBJECT *PDRIVER_OBJECT; +struct hv_driver; @fixtypedef_DRIVER_OBJECT@ typedef DRIVER_OBJECT; @@ -DRIVER_OBJECT +struct hv_driver @fixstruct__DRIVER_OBJECT@ @@ struct -_DRIVER_OBJECT +hv_driver @fixtypedef_PDRIVER_OBJECT@ typedef PDRIVER_OBJECT; @@ -PDRIVER_OBJECT +struct hv_driver* //</smpl> Signed-off-by: Nicolas Palix <npalix@diku.dk> Cc: Hank Janssen <hjanssen@microsoft.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* Staging: hv: properly fix the printk() warningsGreg Kroah-Hartman2009-09-151-3/+3
| | | | | | | This fixes the printk() warnings on all platforms now (x86-64 and i386). Cc: Hank Janssen <hjanssen@microsoft.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* Staging: hv: remove more printk() warningsGreg Kroah-Hartman2009-09-151-3/+3
| | | | | | | | This should fix up the rest of the printk() warnings on an i386 build Cc: Hank Janssen <hjanssen@microsoft.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* Staging: hv: remove WAITEVENT typedefBill Pemberton2009-09-151-1/+1
| | | | | | | | | | Remove the WAITEVENT typedef and also replace HANDLE types that use the WaitEvent calls with struct osd_waitevent. Signed-off-by: Bill Pemberton <wfp5p@virginia.edu> Cc: Hank Janssen <hjanssen@microsoft.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* Staging: hv: Transform PDEVICE_OBJECT and DEVICE_OBJECT typedefs into their ↵Nicolas Palix2009-09-151-12/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | corresponding structs Remove typedef DEVICE_OBJECT and use a struct named hv_device instead. Remove typedef PDEVICE_OBJECT which aliases a pointer and use struct hv_device * instead. Here is the semantic patch to perform this transformation: (http://coccinelle.lip6.fr/) //<smpl> @rm_PDEVICE_OBJECT@ @@ -typedef struct _DEVICE_OBJECT *PDEVICE_OBJECT; @rm_DEVICE_OBJECT@ @@ -typedef struct _DEVICE_OBJECT +struct hv_device {...} -DEVICE_OBJECT ; @fixtypedef_PDEVICE_OBJECT@ typedef PDEVICE_OBJECT; @@ -PDEVICE_OBJECT +struct hv_device* @fixtypedef_DEVICE_OBJECT@ typedef DEVICE_OBJECT; @@ -DEVICE_OBJECT +struct hv_device @fixstruct__DEVICE_OBJECT@ @@ struct -_DEVICE_OBJECT +hv_device //</smpl> Signed-off-by: Nicolas Palix <npalix@diku.dk> Cc: Hank Janssen <hjanssen@microsoft.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* Staging: hv: remove NETVSC_DEVICE typedefBill Pemberton2009-09-151-7/+7
| | | | | | Signed-off-by: Bill Pemberton <wfp5p@virginia.edu> Cc: Hank Janssen <hjanssen@microsoft.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* Staging: hv: RndisFilter.c: fix print formattingBill Pemberton2009-09-151-3/+3
| | | | | | Signed-off-by: Bill Pemberton <wfp5p@virginia.edu> Cc: Hank Janssen <hjanssen@microsoft.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* Staging: hv: Remove C99 commentsBill Pemberton2009-09-151-68/+68
| | | | | | | | Remove C99 // comments with traditional /* */ comments Signed-off-by: Bill Pemberton <wfp5p@virginia.edu> Cc: Hank Janssen <hjanssen@microsoft.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* Staging: hv: Remove compatibility ifdefryMoritz Muehlenhoff2009-09-151-2/+0
| | | | | | | Signed-off-by: Moritz Muehlenhoff <jmm@debian.org> Cc: Hank Janssen <hjanssen@microsoft.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* Staging: hv: make Device->RequestLock a real spinlockGreg Kroah-Hartman2009-09-151-14/+12
| | | | | | | | | | | | | Don't use the wrapper functions for this lock, make it a real lock so that we know what is going on. I don't think we really want to be doing a irqsave for this code, but I left it alone to preserve the original codepath. It should be reviewed later. Cc: Hank Janssen <hjanssen@microsoft.com> Cc: Haiyang Zhang <haiyangz@microsoft.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* Staging: hv: osd: remove MemFree wrapperGreg Kroah-Hartman2009-09-151-4/+4
| | | | | | | | Use the "real" kfree call instead of a wrapper function. Cc: Hank Janssen <hjanssen@microsoft.com> Cc: Haiyang Zhang <haiyangz@microsoft.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* Staging: hv: osd: remove MemAllocZeroed wrapperGreg Kroah-Hartman2009-09-151-2/+2
| | | | | | | | Use the "real" kzalloc call instead of a wrapper function. Cc: Hank Janssen <hjanssen@microsoft.com> Cc: Haiyang Zhang <haiyangz@microsoft.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* Staging: hv: osd: remove MemAlloc wrapperGreg Kroah-Hartman2009-09-151-1/+0
| | | | | | | | Use the "real" kmalloc call instead of a wrapper function. Cc: Hank Janssen <hjanssen@microsoft.com> Cc: Haiyang Zhang <haiyangz@microsoft.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* Staging: hv: remove TRUE, FALSE, and NULL usageGreg Kroah-Hartman2009-09-151-5/+5
| | | | | | | | | Don't define things that are either already provided (like NULL), or you shouldn't use (like TRUE and FALSE). Cc: Hank Janssen <hjanssen@microsoft.com> Cc: Haiyang Zhang <haiyangz@microsoft.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* Staging: hv: remove PAGE_SIZE and PAGE_SHIFT and __builtin functionsGreg Kroah-Hartman2009-09-151-0/+1
| | | | | | | | | The kernel provides all of this, and actually gets it correct, so don't try to redefine these types of things. Cc: Hank Janssen <hjanssen@microsoft.com> Cc: Haiyang Zhang <haiyangz@microsoft.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* Staging: hv: remove BOOL and BOOLEAN typedefsGreg Kroah-Hartman2009-09-151-1/+1
| | | | | | | | | | The BOOL and BOOLEAN typedefs are now removed from the Hyper-V driver code. Cc: Hank Janssen <hjanssen@microsoft.com> Cc: Haiyang Zhang <haiyangz@microsoft.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* Staging: hv: remove ULONG_PTR typedefGreg Kroah-Hartman2009-09-151-8/+8
| | | | | | | | | The ULONG_PTR typedef is now removed from the Hyper-V driver code. Cc: Hank Janssen <hjanssen@microsoft.com> Cc: Haiyang Zhang <haiyangz@microsoft.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* Staging: hv: remove UINT64 and INT64 and UCHAR typedefsGreg Kroah-Hartman2009-09-151-1/+1
| | | | | | | | | | The UINT64 and INT64 and UCHAR typedefs are now removed from the Hyper-V driver code. Cc: Hank Janssen <hjanssen@microsoft.com> Cc: Haiyang Zhang <haiyangz@microsoft.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* Staging: hv: remove UINT32 and INT32 typedefsGreg Kroah-Hartman2009-09-151-20/+20
| | | | | | | | | | The UINT32 and INT32 typedefs are now removed from the Hyper-V driver code. Cc: Hank Janssen <hjanssen@microsoft.com> Cc: Haiyang Zhang <haiyangz@microsoft.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* Staging: hv: remove UINT8 and INT8 typedefsGreg Kroah-Hartman2009-09-151-0/+1
| | | | | | | | | | | | | The UINT8 and INT8 typedefs are now removed from the Hyper-V driver code. Had to include <linux/kernel.h> in a few places to get the build to work properly as well. Cc: Hank Janssen <hjanssen@microsoft.com> Cc: Haiyang Zhang <haiyangz@microsoft.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* Staging: hv: remove VOID typedefGreg Kroah-Hartman2009-09-151-2/+2
| | | | | | | | | The VOID typedef is now removed from the Hyper-V driver code. Cc: Hank Janssen <hjanssen@microsoft.com> Cc: Haiyang Zhang <haiyangz@microsoft.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* Staging: hv: make the Hyper-V virtual network driver buildGreg Kroah-Hartman2009-09-151-2/+3
| | | | | | | | | | | | | | | The #define KERNEL_2_6_27 needs to be set, and I adjusted the include directories a bit to get things to build properly. The driver was changed to use net_device_ops, as that is needed to build and operate properly now. The hv_netvsc code should now build with no errors. Cc: Hank Janssen <hjanssen@microsoft.com> Cc: Haiyang Zhang <haiyangz@microsoft.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* Staging: hv: add the Hyper-V virtual network driverHank Janssen2009-09-151-0/+1162
This is the virtual network driver when running Linux on top of Hyper-V. Signed-off-by: Hank Janssen <hjanssen@microsoft.com> Signed-off-by: Haiyang Zhang <haiyangz@microsoft.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
OpenPOWER on IntegriCloud