2001-03-10 19:26:36

by Adam Schrotenboer

[permalink] [raw]
Subject: VMware 2.0.3 & Kernel 2.4.2-ac17

While compiling the vmnet module, there is a warning

make: Entering directory `/tmp/vmware-config2/vmnet-only'
bridge.c: In function `VNetBridgeReceiveFromDev':
bridge.c:788: warning: implicit declaration of function `skb_datarefp'

and while inserting the module

/tmp/vmware-config2/vmnet.o: unresolved symbol skb_datarefp

I have traced this back to 2.4.2-ac4 by looking for where this function
was removed.

yes, technically this probably is OT, and properly belong on the VMware
list, but I can't access their nntp server.

basically, why was this function removed, what did it do, what can be
done to make VMware run again?


2001-03-10 19:37:26

by Alan

[permalink] [raw]
Subject: Re: VMware 2.0.3 & Kernel 2.4.2-ac17

> I have traced this back to 2.4.2-ac4 by looking for where this function
> was removed.

> yes, technically this probably is OT, and properly belong on the VMware
> list, but I can't access their nntp server.

Right so if I cant access microsofts mailing lists I should post my windows
problems here ? I dont think your logic works that way.

Also if you had checked the list archive its already been answered when the
last off topic poster asked..

2001-03-10 20:01:07

by Adam Schrotenboer

[permalink] [raw]
Subject: Re: VMware 2.0.3 & Kernel 2.4.2-ac17

Alan Cox wrote:

>> I have traced this back to 2.4.2-ac4 by looking for where this function
>> was removed.
>
>> yes, technically this probably is OT, and properly belong on the VMware
>> list, but I can't access their nntp server.
>
>
> Right so if I cant access microsofts mailing lists I should post my windows
> problems here ? I dont think your logic works that way.

this is lk related, at least if you read the bottom part of my message.
It is part curiousity as to what this func did, how it could be replaced
if I felt really motivated (I've been feeling that way lately).

>
> Also if you had checked the list archive its already been answered when the
> last off topic poster asked..
>
I checked the list archive boudicca.tux.org, used the search and gave it
'skb_datarefp', and it returned something unrelated to VMware, and 5
weeks ago at that. No followup to the post, no other info. So I posted
this q to the lk list.

2001-03-10 22:06:27

by Adam Schrotenboer

[permalink] [raw]
Subject: Re: VMware 2.0.3 & Kernel 2.4.2-ac17

Jeff Lightfoot wrote:

> Here is a patch for vmware that was on the vmware newsgroups.
> (Hopefully wordwrap didn't screw this up)

Thanks, after applying by hand, it worked.

2001-03-12 00:28:47

by Petr Vandrovec

[permalink] [raw]
Subject: Re: VMware 2.0.3 & Kernel 2.4.2-ac17

> While compiling the vmnet module, there is a warning
>
> make: Entering directory `/tmp/vmware-config2/vmnet-only'
> bridge.c: In function `VNetBridgeReceiveFromDev':
> bridge.c:788: warning: implicit declaration of function `skb_datarefp'
>
> and while inserting the module
>
> /tmp/vmware-config2/vmnet.o: unresolved symbol skb_datarefp
>
> I have traced this back to 2.4.2-ac4 by looking for where this function
> was removed.

Try this patch. I believe that there are no other needed changes
in vmnet code, but as I do not have any scatter-gather checksumming
hardware around, I'm not 100% sure. But up to now nobody complained
about getting 'xxx invoked with paged skb', so I believe that rest
of code is correct.

diff -u vmnet-only.dist/vnetInt.h vmnet-only/vnetInt.h
--- vmnet-only.dist/vnetInt.h Thu Nov 2 02:40:20 2000
+++ vmnet-only/vnetInt.h Mon Mar 12 01:12:00 2001
@@ -16,9 +16,15 @@
# define KFREE_SKB(skb, type) kfree_skb(skb)
# define DEV_KFREE_SKB(skb, type) dev_kfree_skb(skb)
# define SKB_INCREF(skb) atomic_inc(&(skb)->users)
-# define SKB_IS_CLONE_OF(clone, skb) ( \
- skb_datarefp(clone) == skb_datarefp(skb) \
- )
+# ifdef skb_shinfo
+# define SKB_IS_CLONE_OF(clone, skb) ( \
+ skb_shinfo(clone) == skb_shinfo(skb) \
+ )
+# else
+# define SKB_IS_CLONE_OF(clone, skb) ( \
+ skb_datarefp(clone) == skb_datarefp(skb) \
+ )
+# endif
# define SK_ALLOC(pri) sk_alloc(0, pri, 1)
# define DEV_QUEUE_XMIT(skb, dev, pri) ( \
(skb)->dev = (dev), \

> yes, technically this probably is OT, and properly belong on the VMware
> list, but I can't access their nntp server.

Is problem on your side or on VMware side? If on VMware one, I'd like to
know (private pls.).
Best regards,
Petr Vandrovec
[email protected]