public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* 2.4.4 code breaks compile of VMWare network bridging
@ 2001-05-02 16:16 LA Walsh
  2001-05-02 16:28 ` Mohammad A. Haque
  0 siblings, 1 reply; 3+ messages in thread
From: LA Walsh @ 2001-05-02 16:16 UTC (permalink / raw)
  To: linux-kernel

In 2.4.4, the define, in
    include/linux/skbuff.h
and corresponding structure in
    net/core/skbuff.c
, "skb_datarefp" disappeared.

I'm not reporting this as a 'bug' as kernel internal interfaces are subject
to change, but more as an "FYI".  I haven't had a chance to try to
debug or figure out the offending bit of code to see exactly what it
was trying to do, but the offending code snippet follows.  I haven't yet
reported it to the folks at VMware, but their response to problem reports
against 2.4.x is "can you duplicate it against 2.2.x, we don't support
2.4.x yet".  Perhaps someone expert in the 'net/core' area could explain
what changed and what they shouldn't be doing anymore?

It appears the references:
#  define KFREE_SKB(skb, type)          kfree_skb(skb)
#  define DEV_KFREE_SKB(skb, type)      dev_kfree_skb(skb)
                                        ^^^^^^^^^^^^^^^^^^
are the offending culprits.

Thanks for any insights...
-linda

/*
 *----------------------------------------------------------------------
 * VNetBridgeReceiveFromDev --
 *      Receive a packet from a bridged peer device
 *      This is called from the bottom half.  Must be careful.
 * Results:
 *      errno.
 * Side effects:
 *      A packet may be sent to the vnet.
 *----------------------------------------------------------------------
 */
int
VNetBridgeReceiveFromDev(struct sk_buff *skb,
                         struct device *dev,
                         struct packet_type *pt)
{
   VNetBridge *bridge = *(VNetBridge**)&((struct sock *)pt->data)->protinfo;
   int i;

   if (bridge->dev == NULL) {
      LOG(3, (KERN_DEBUG "bridge-%s: received %d closed\n",
              bridge->name, (int) skb->len));
      DEV_KFREE_SKB(skb, FREE_READ);
      return -EIO;      // value is ignored anyway
   }

   // XXX need to lock history
   for (i = 0; i < VNET_BRIDGE_HISTORY; i++) {
      struct sk_buff *s = bridge->history[i];
      if (s != NULL &&
          (s == skb || SKB_IS_CLONE_OF(skb, s))) {
         bridge->history[i] = NULL;
         KFREE_SKB(s, FREE_WRITE);
         LOG(3, (KERN_DEBUG "bridge-%s: receive %d self %d\n",
                 bridge->name, (int) skb->len, i));
         // FREE_WRITE because we did the allocation, it's not used anyway
         DEV_KFREE_SKB(skb, FREE_WRITE);
         return 0;
      }
   }
   skb_push(skb, skb->data - skb->mac.raw);
   VNetSend(&bridge->port.jack, skb);

   return 0;
}

--
The above thoughts and           | They may have nothing to do with
writings are my own.             | the opinions of my employer. :-)
L A Walsh                        | Trust Technology, Core Linux, SGI
law@sgi.com                      | Voice: (650) 933-5338



^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: 2.4.4 code breaks compile of VMWare network bridging
  2001-05-02 16:16 2.4.4 code breaks compile of VMWare network bridging LA Walsh
@ 2001-05-02 16:28 ` Mohammad A. Haque
  2001-05-02 16:34   ` LA Walsh
  0 siblings, 1 reply; 3+ messages in thread
From: Mohammad A. Haque @ 2001-05-02 16:28 UTC (permalink / raw)
  To: LA Walsh; +Cc: linux-kernel

On Wed, 2 May 2001, LA Walsh wrote:

> reported it to the folks at VMware, but their response to problem reports
> against 2.4.x is "can you duplicate it against 2.2.x, we don't support
> 2.4.x yet".  Perhaps someone expert in the 'net/core' area could explain
> what changed and what they shouldn't be doing anymore?
>

This was answered several hours ago. Check the list archives.
-- 

=====================================================================
Mohammad A. Haque                              http://www.haque.net/
                                               mhaque@haque.net

  "Alcohol and calculus don't mix.             Project Lead
   Don't drink and derive." --Unknown          http://wm.themes.org/
                                               batmanppc@themes.org
=====================================================================


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: 2.4.4 code breaks compile of VMWare network bridging
  2001-05-02 16:28 ` Mohammad A. Haque
@ 2001-05-02 16:34   ` LA Walsh
  0 siblings, 0 replies; 3+ messages in thread
From: LA Walsh @ 2001-05-02 16:34 UTC (permalink / raw)
  To: Mohammad A. Haque; +Cc: linux-kernel

"Mohammad A. Haque" wrote:

> This was answered several hours ago. Check the list archives.

---
    Many thanks -- it was in my neverending backlog....

-l


^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2001-05-02 16:36 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2001-05-02 16:16 2.4.4 code breaks compile of VMWare network bridging LA Walsh
2001-05-02 16:28 ` Mohammad A. Haque
2001-05-02 16:34   ` LA Walsh

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox