Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
View | Details | Raw Unified | Return to bug 273173 | Differences between
and this patch

Collapse All | Expand All

(-)vmnet-only-patched/bridge.c (-5 / +4 lines)
Lines 275-285 Link Here
275
                        struct net_device *net)  // IN: Network device
275
                        struct net_device *net)  // IN: Network device
276
{
276
{
277
#ifdef VMW_NETDEV_HAS_NET
277
#ifdef VMW_NETDEV_HAS_NET
278
#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 26)
279
   if (dev_net(net) != dev_net(bridge->internalDev)) {
278
   if (dev_net(net) != dev_net(bridge->internalDev)) {
280
#else
281
   if (net->nd_net != bridge->internalDev->nd_net) {
282
#endif
283
      return 0;
279
      return 0;
284
   }
280
   }
285
#endif
281
#endif
Lines 857-862 Link Here
857
static Bool
853
static Bool
858
VNetBridgeIsDeviceWireless(struct net_device *dev) //IN: sock
854
VNetBridgeIsDeviceWireless(struct net_device *dev) //IN: sock
859
{
855
{
856
	return FALSE;
857
}
858
#if 0
860
#ifdef CONFIG_WIRELESS_EXT
859
#ifdef CONFIG_WIRELESS_EXT
861
   return dev->wireless_handlers != NULL;
860
   return dev->wireless_handlers != NULL;
862
#elif !defined CONFIG_NET_RADIO && !defined CONFIG_WLAN_80211
861
#elif !defined CONFIG_NET_RADIO && !defined CONFIG_WLAN_80211
Lines 869-875 Link Here
869
   return dev->get_wireless_stats != NULL;
868
   return dev->get_wireless_stats != NULL;
870
#endif
869
#endif
871
}
870
}
872
871
#endif
873
/*
872
/*
874
 *----------------------------------------------------------------------
873
 *----------------------------------------------------------------------
875
 *
874
 *
(-)vmnet-only-patched/compat_semaphore.h (-4 lines)
Lines 6-16 Link Here
6
#   define __COMPAT_SEMAPHORE_H__
6
#   define __COMPAT_SEMAPHORE_H__
7
7
8
8
9
#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 27)
10
#include <linux/semaphore.h>
9
#include <linux/semaphore.h>
11
#else
12
#include <asm/semaphore.h>
13
#endif
14
10
15
11
16
/*
12
/*
(-)vmnet-only-patched/compat_wait.h (-4 / +2 lines)
Lines 37-50 Link Here
37
 * /dev/epoll interface was added.  It was backported to the
37
 * /dev/epoll interface was added.  It was backported to the
38
 * 2.4.20-wolk4.0s.
38
 * 2.4.20-wolk4.0s.
39
 */
39
 */
40
40
#if VMW_HAVE_EPOLL // {
41
#ifdef VMW_HAVE_EPOLL // {
42
#define compat_poll_wqueues struct poll_wqueues
41
#define compat_poll_wqueues struct poll_wqueues
43
#else // } {
42
#else // } {
44
#define compat_poll_wqueues poll_table
43
#define compat_poll_wqueues poll_table
45
#endif // }
44
#endif // }
46
45
#if VMW_HAVE_EPOLL // {
47
#ifdef VMW_HAVE_EPOLL // {
48
46
49
/* If prototype does not match, build will abort here */
47
/* If prototype does not match, build will abort here */
50
extern void poll_initwait(compat_poll_wqueues *);
48
extern void poll_initwait(compat_poll_wqueues *);
(-)vmnet-only-patched/filter.c (-5 / +3 lines)
Lines 13-23 Link Here
13
#include "compat_skbuff.h"
13
#include "compat_skbuff.h"
14
#include <linux/netdevice.h>
14
#include <linux/netdevice.h>
15
15
16
#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 25)
16
#define NF_IP_LOCAL_OUT NF_INET_LOCAL_OUT
17
#   define NF_IP_LOCAL_OUT NF_INET_LOCAL_OUT
17
#define NF_IP_LOCAL_IN NF_INET_LOCAL_IN
18
#   define NF_IP_LOCAL_IN NF_INET_LOCAL_IN
18
#define NF_IP_POST_ROUTING NF_INET_POST_ROUTING
19
#   define NF_IP_POST_ROUTING NF_INET_POST_ROUTING
20
#endif
21
19
22
/*
20
/*
23
 * All this makes sense only if NETFILTER support is configured in our kernel.
21
 * All this makes sense only if NETFILTER support is configured in our kernel.
(-)vmnet-only-patched/Makefile (-1 / +1 lines)
Lines 15-21 Link Here
15
VM_UNAME = $(shell uname -r)
15
VM_UNAME = $(shell uname -r)
16
16
17
# Header directory for the running kernel
17
# Header directory for the running kernel
18
HEADER_DIR = ${KERNEL_DIR}/include
18
HEADER_DIR = /lib/modules/$(VM_UNAME)/build/include
19
19
20
BUILD_DIR = $(HEADER_DIR)/..
20
BUILD_DIR = $(HEADER_DIR)/..
21
21
(-)vmnet-only-patched/Makefile.kernel (-1 / +2 lines)
Lines 12-18 Link Here
12
INCLUDE := -I$(SRCROOT)
12
INCLUDE := -I$(SRCROOT)
13
13
14
EXTRA_CFLAGS := $(CC_OPTS) $(INCLUDE)
14
EXTRA_CFLAGS := $(CC_OPTS) $(INCLUDE)
15
EXTRA_CFLAGS += $(call vm_check_build, $(SRCROOT)/epoll.c,   -DVMW_HAVE_EPOLL, )
15
#EXTRA_CFLAGS += $(call vm_check_build, $(SRCROOT)/epoll.c,   -DVMW_HAVE_EPOLL, )
16
EXTRA_CFLAGS += -I$(HEADER_DIR) -DVMW_HAVE_EPOLL 
16
EXTRA_CFLAGS += $(call vm_check_build, $(SRCROOT)/socket.c,  -DVMW_HAVE_SK_WMEM_ALLOC, )
17
EXTRA_CFLAGS += $(call vm_check_build, $(SRCROOT)/socket.c,  -DVMW_HAVE_SK_WMEM_ALLOC, )
17
EXTRA_CFLAGS += $(call vm_check_build, $(SRCROOT)/sk_alloc.c,-DVMW_HAVE_SK_ALLOC_WITH_PROTO, )
18
EXTRA_CFLAGS += $(call vm_check_build, $(SRCROOT)/sk_alloc.c,-DVMW_HAVE_SK_ALLOC_WITH_PROTO, )
18
EXTRA_CFLAGS += $(call vm_check_build, $(SRCROOT)/netdev_has_net.c,-DVMW_NETDEV_HAS_NET, )
19
EXTRA_CFLAGS += $(call vm_check_build, $(SRCROOT)/netdev_has_net.c,-DVMW_NETDEV_HAS_NET, )
(-)vmnet-only-patched/Makefile.normal (-1 / +2 lines)
Lines 37-43 Link Here
37
	   | sed -n -e 's!^APATH!-I$(HEADER_DIR)/asm!p')
37
	   | sed -n -e 's!^APATH!-I$(HEADER_DIR)/asm!p')
38
38
39
CC_OPTS += -DVME_DEFAULT=$(VMWARE_VER)
39
CC_OPTS += -DVME_DEFAULT=$(VMWARE_VER)
40
CC_OPTS += $(call vm_check_build, $(SRCROOT)/epoll.c,   -DVMW_HAVE_EPOLL, )
40
#CC_OPTS += $(call vm_check_build, $(SRCROOT)/epoll.c,   -DVMW_HAVE_EPOLL, )
41
EXTRA_CFLAGS += -I$(HEADER_DIR) -DVMW_HAVE_EPOLL
41
CC_OPTS += $(call vm_check_build, $(SRCROOT)/socket.c,  -DVMW_HAVE_SK_WMEM_ALLOC, )
42
CC_OPTS += $(call vm_check_build, $(SRCROOT)/socket.c,  -DVMW_HAVE_SK_WMEM_ALLOC, )
42
CC_OPTS += $(call vm_check_build, $(SRCROOT)/sk_alloc.c,-DVMW_HAVE_SK_ALLOC_WITH_PROTO, )
43
CC_OPTS += $(call vm_check_build, $(SRCROOT)/sk_alloc.c,-DVMW_HAVE_SK_ALLOC_WITH_PROTO, )
43
CC_OPTS += $(call vm_check_build, $(SRCROOT)/netdev_has_net.c,-DVMW_NETDEV_HAS_NET, )
44
CC_OPTS += $(call vm_check_build, $(SRCROOT)/netdev_has_net.c,-DVMW_NETDEV_HAS_NET, )
(-)vmnet-only-patched/Module.markers (+4 lines)
Line 0 Link Here
1
core_marker_format	vmlinux	name %s format %s
2
kernel_sched_schedule	vmlinux	prev_pid %d next_pid %d prev_state %ld ## rq %p prev %p next %p
3
kernel_sched_wakeup	vmlinux	pid %d state %ld ## rq %p task %p rq->curr %p
4
kernel_sched_wakeup_new	vmlinux	pid %d state %ld ## rq %p task %p rq->curr %p
(-)vmnet-only-patched/modules.order (+1 lines)
Line 0 Link Here
1
kernel//home/kang/tmp/vmware-update-2.6.27-5.5.7-2/vmnet-only/vmnet.ko
(-)vmnet-only-patched/netif.c (-4 / +4 lines)
Lines 310-316 Link Here
310
      goto out;
310
      goto out;
311
   }
311
   }
312
312
313
   dev->priv = netIf;
313
   dev->ml_priv = netIf;
314
   netIf->dev = dev;
314
   netIf->dev = dev;
315
   
315
   
316
   memcpy(dev->dev_addr, netIf->port.paddr, sizeof netIf->port.paddr);
316
   memcpy(dev->dev_addr, netIf->port.paddr, sizeof netIf->port.paddr);
Lines 552-558 Link Here
552
VNetNetifStartXmit(struct sk_buff    *skb, // IN:
552
VNetNetifStartXmit(struct sk_buff    *skb, // IN:
553
                   struct net_device *dev) // IN:
553
                   struct net_device *dev) // IN:
554
{
554
{
555
   VNetNetIF *netIf = (VNetNetIF*)dev->priv;
555
   VNetNetIF *netIf = (VNetNetIF*)dev->ml_priv;
556
556
557
   if(skb == NULL) {
557
   if(skb == NULL) {
558
      return 0;
558
      return 0;
Lines 604-610 Link Here
604
VNetNetifSetMAC(struct net_device *dev, // IN:
604
VNetNetifSetMAC(struct net_device *dev, // IN:
605
                void *p)                // IN:
605
                void *p)                // IN:
606
{
606
{
607
   VNetNetIF *netIf = (VNetNetIF*)dev->priv;
607
   VNetNetIF *netIf = (VNetNetIF*)dev->ml_priv;
608
   struct sockaddr const *addr = p;
608
   struct sockaddr const *addr = p;
609
   if (!VMX86_IS_STATIC_MAC(addr->sa_data)) {
609
   if (!VMX86_IS_STATIC_MAC(addr->sa_data)) {
610
      return -EINVAL;
610
      return -EINVAL;
Lines 661-667 Link Here
661
struct net_device_stats *
661
struct net_device_stats *
662
VNetNetifGetStats(struct net_device *dev) // IN:
662
VNetNetifGetStats(struct net_device *dev) // IN:
663
{
663
{
664
   VNetNetIF *netIf = (VNetNetIF*)dev->priv;
664
   VNetNetIF *netIf = (VNetNetIF*)dev->ml_priv;
665
   return &(netIf->stats);
665
   return &(netIf->stats);
666
}
666
}
667
667
(-)vmnet-only-patched/vmnetInt.h (-9 lines)
Lines 63-73 Link Here
63
#   define dev_lock_list()    read_lock(&dev_base_lock)
63
#   define dev_lock_list()    read_lock(&dev_base_lock)
64
#   define dev_unlock_list()  read_unlock(&dev_base_lock)
64
#   define dev_unlock_list()  read_unlock(&dev_base_lock)
65
#   ifdef VMW_NETDEV_HAS_NET
65
#   ifdef VMW_NETDEV_HAS_NET
66
#     if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 26)
67
#      define DEV_GET(x)      __dev_get_by_name((x)->internalDev->nd_net, (x)->name)
68
#     else
69
#      define DEV_GET(x)      __dev_get_by_name(dev_net((x)->internalDev), (x)->name)
66
#      define DEV_GET(x)      __dev_get_by_name(dev_net((x)->internalDev), (x)->name)
70
#     endif
71
#   else
67
#   else
72
#      define DEV_GET(x)      __dev_get_by_name((x)->name)
68
#      define DEV_GET(x)      __dev_get_by_name((x)->name)
73
#   endif
69
#   endif
Lines 91-103 Link Here
91
87
92
#ifdef VMW_NETDEV_HAS_NET
88
#ifdef VMW_NETDEV_HAS_NET
93
extern struct proto vmnet_proto;
89
extern struct proto vmnet_proto;
94
#  if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 26)
95
#   define compat_sk_alloc(_bri, _pri) sk_alloc(dev_net((_bri)->internalDev), \
90
#   define compat_sk_alloc(_bri, _pri) sk_alloc(dev_net((_bri)->internalDev), \
96
                                                PF_NETLINK, _pri, &vmnet_proto)
91
                                                PF_NETLINK, _pri, &vmnet_proto)
97
#  else
98
#   define compat_sk_alloc(_bri, _pri) sk_alloc((_bri)->internalDev->nd_net, \
99
                                                PF_NETLINK, _pri, &vmnet_proto)
100
#  endif
101
#elif defined(VMW_HAVE_SK_ALLOC_WITH_PROTO)
92
#elif defined(VMW_HAVE_SK_ALLOC_WITH_PROTO)
102
extern struct proto vmnet_proto;
93
extern struct proto vmnet_proto;
103
#   define compat_sk_alloc(_bri, _pri) sk_alloc(PF_NETLINK, _pri, &vmnet_proto, 1)
94
#   define compat_sk_alloc(_bri, _pri) sk_alloc(PF_NETLINK, _pri, &vmnet_proto, 1)
(-)vmnet-only-patched/vmnetInt.h.orig (+144 lines)
Line 0 Link Here
1
/* **********************************************************
2
 * Copyright 1998 VMware, Inc.  All rights reserved. -- VMware Confidential
3
 * **********************************************************/
4
5
#ifndef __VMNETINT_H__
6
#define __VMNETINT_H__
7
8
9
#define INCLUDE_ALLOW_MODULE
10
#include "includeCheck.h"
11
#include "driver-config.h"
12
13
14
/*
15
 * Hide all kernel compatibility stuff in those macros
16
 */
17
18
/* All kernels above 2.6.23 have net namespaces. */
19
#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 24) && !defined(VMW_NETDEV_HAS_NET)
20
#   define VMW_NETDEV_HAS_NET
21
#endif
22
23
/* All kernels above 2.6.23 have skb argument in nf_hookfn. */
24
#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 24) && !defined(VMW_NFHOOK_USES_SKB)
25
#   define VMW_NFHOOK_USES_SKB
26
#endif
27
28
29
#ifdef KERNEL_2_4_0
30
#   define compat_fop_set_owner(_pFop) do { \
31
   (_pFop)->owner = THIS_MODULE;            \
32
} while (0)
33
#   define compat_mod_inc_refcount
34
#   define compat_mod_dec_refcount
35
#else
36
#   define compat_fop_set_owner(_pFop)
37
#   define compat_mod_inc_refcount do { \
38
   MOD_INC_USE_COUNT;                   \
39
} while (0)
40
#   define compat_mod_dec_refcount do { \
41
   MOD_DEC_USE_COUNT;                   \
42
} while (0)
43
#endif
44
45
46
#ifdef skb_shinfo
47
#  define SKB_IS_CLONE_OF(clone, skb)   (  \
48
      skb_shinfo(clone) == skb_shinfo(skb) \
49
   )
50
#else
51
#  define SKB_IS_CLONE_OF(clone, skb)   (      \
52
      skb_datarefp(clone) == skb_datarefp(skb) \
53
   )
54
#endif
55
#define DEV_QUEUE_XMIT(skb, dev, pri)   (                 \
56
    (skb)->dev = (dev),                                   \
57
    (skb)->priority = (pri),                              \
58
    compat_skb_reset_mac_header(skb),                     \
59
    compat_skb_set_network_header(skb, sizeof (struct ethhdr)),  \
60
    dev_queue_xmit(skb)                                   \
61
  )
62
#ifdef KERNEL_2_3_15
63
#   define dev_lock_list()    read_lock(&dev_base_lock)
64
#   define dev_unlock_list()  read_unlock(&dev_base_lock)
65
#   ifdef VMW_NETDEV_HAS_NET
66
#      define DEV_GET(x)      __dev_get_by_name((x)->internalDev->nd_net, (x)->name)
67
#   else
68
#      define DEV_GET(x)      __dev_get_by_name((x)->name)
69
#   endif
70
#else
71
#   define DEV_GET(x)         dev_get((x)->name)
72
#endif
73
74
75
/*
76
 * Various fields (including 'dead') of struct sock are replaced with the
77
 * 'flags' bitfield in 2.5.65 --hpreg
78
 */
79
#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 5, 65)
80
#   define SET_SK_DEAD(_sk, _val) (_sk)->dead = (_val)
81
#else
82
#   define SET_SK_DEAD(_sk, _val) sock_valbool_flag(_sk, SOCK_DEAD, _val)
83
#endif
84
85
86
#ifdef VMW_NETDEV_HAS_NET
87
extern struct proto vmnet_proto;
88
#   define compat_sk_alloc(_bri, _pri) sk_alloc((_bri)->internalDev->nd_net, \
89
                                                PF_NETLINK, _pri, &vmnet_proto)
90
#elif defined(VMW_HAVE_SK_ALLOC_WITH_PROTO)
91
extern struct proto vmnet_proto;
92
#   define compat_sk_alloc(_bri, _pri) sk_alloc(PF_NETLINK, _pri, &vmnet_proto, 1)
93
#elif defined(KERNEL_2_5_5)
94
#   define compat_sk_alloc(_bri, _pri) sk_alloc(PF_NETLINK, _pri, 1, NULL)
95
#else
96
#   define compat_sk_alloc(_bri, _pri) sk_alloc(0, _pri, 1)
97
#endif
98
99
100
#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0)
101
#   define fileTraversalLock(lock) spin_lock(lock)
102
#   define fileTraversalUnLock(lock) spin_unlock(lock)
103
#elif LINUX_VERSION_CODE >= KERNEL_VERSION(2,4,0)
104
#   define fileTraversalLock(lock) read_lock(lock)
105
#   define fileTraversalUnLock(lock) read_unlock(lock)
106
#else //2.2 kernels
107
#   define fileTraversalLock(lock) lock_kernel()
108
#   define fileTraversalUnLock(lock) unlock_kernel()
109
#endif
110
111
112
#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,4,0)
113
#   define taskLock(lock) task_lock(lock)
114
#   define taskUnLock(lock) task_unlock(lock)
115
#else //2.2 kernels
116
#   define taskLock(lock) lock_kernel()
117
#   define taskUnLock(lock) unlock_kernel()
118
#endif
119
120
121
/* 
122
 * Use CHECKSUM_HW for old kernels, if they have CHECKSUM_HW.  Use CHECKSUM_PARTIAL for 
123
 * new ones even if CHECKSUM_HW is defined.  We do not do decision based on kernel version
124
 * only as CHECKSUM_PARTIAL was in mm tree for some time already, and we do not test
125
 * for CHECKSUM_PARTIAL existence as it may get converted to enum in future.
126
 */
127
#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 19) && defined(CHECKSUM_HW)
128
#   define VM_CHECKSUM_PARTIAL  CHECKSUM_HW
129
#else
130
#   define VM_CHECKSUM_PARTIAL  CHECKSUM_PARTIAL
131
#endif
132
133
134
/*
135
 * The "owner" field in nf_hook_ops got added in 2.5.69
136
 */
137
#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 5, 69)
138
#   define compat_nf_hook_owner  .owner = THIS_MODULE,
139
#else
140
#   define compat_nf_hook_owner
141
#endif
142
143
144
#endif /* __VMNETINT_H__ */

Return to bug 273173