WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-devel

Re: [Xen-devel] [PATCH] vnet-module

To: Robert Valentan <R.Valentan@xxxxxxxxxxxxx>
Subject: Re: [Xen-devel] [PATCH] vnet-module
From: Mike Wray <mike.wray@xxxxxxxxxx>
Date: Fri, 31 Mar 2006 15:43:24 +0100
Cc: mike.wray@xxxxxx, xen-devel@xxxxxxxxxxxxxxxxxxx
Delivery-date: Fri, 31 Mar 2006 14:45:21 +0000
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <442D3512.3040308@xxxxxxxxxxxxx>
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
References: <442D3512.3040308@xxxxxxxxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Thunderbird 1.5 (Windows/20051201)
Robert Valentan wrote:
patch_vnet_1
  Replacing the socketcall with direct calling the needed
  functions (my patch from 28.3)

I don't like the idea of pasting all this code copied from elsewhere in
the kernel.
If the problem is that __ARCH_WANT_SYS_SOCKETCALL is not defined, so
there is no socketcall, then a better solution needs to be found.

In the worst case a copy of the relevant bits of socket.c defining socketcall
in a separate file with an #ifndef __ARCH_WANT_SYS_SOCKETCALL round it.


patch_vnet_2
  Modify the module-parameter for kernel 2.6.* (the old one
  will not compile with the actual kernel 2.6.16)
  Exporting the default-values of the parameters in /sys/module

patch_vnet_3
  Some "extentions" to error-messages to identify the position
  in the code.
  I had searched a bug, but it was a wrong vnet-id ;-/
  A hint for docu: using "123459" as vnet-id has not 4 digits
  and will be punished with errors  ;-)

The changes to the print functions are not needed - the debug macros
in the code already include the function name. All you need to do
is #define DEBUG 1. Check libxutil/debug.h. for the definitions.

Mike




------------------------------------------------------------------------

diff -r 2604abf98ede tools/vnet/vnet-module/varp_socket.c
--- a/tools/vnet/vnet-module/varp_socket.c      Tue Mar 28 09:09:44 2006
+++ b/tools/vnet/vnet-module/varp_socket.c      Tue Mar 28 17:10:53 2006
@@ -16,6 +16,9 @@
  * 59 Temple Place, suite 330, Boston, MA 02111-1307 USA
  *
  */
+
+static int errno;
+
 #include <linux/kernel.h>
 #include <linux/types.h>
 #include <linux/version.h>
@@ -36,7 +39,6 @@
/* Get macros needed to define system calls as functions in the kernel. */
 #define __KERNEL_SYSCALLS__
-static int errno;
 #include <linux/unistd.h>
#define MODULE_NAME "VARP"
@@ -75,110 +77,254 @@
  * The parts we need anyway.
  */
-/* Define the socketcall() syscall.
- * Multiplexes all the socket-related calls.
- *
- * @param call socket call id
- * @param args arguments (upto 6)
- * @return call-dependent value
- */
-static inline _syscall2(int, socketcall,
-                        int, call,
-                        unsigned long *, args)
+/* the following code is copied from linux-kernel/net/socket.c
+ * As replacement of the __NR_socketcall, which exists not in x86_64 and
+ * same other systems.
+ * An alternate will be an export of the copied-functions in net/socket.c
+ */ +#define MAX_SOCK_ADDR 128 int socket(int family, int type, int protocol){
-    unsigned long args[6];
- - args[0] = (unsigned long)family;
-    args[1] = (unsigned long)type;
-    args[2] = (unsigned long)protocol;
-    return socketcall(SYS_SOCKET, args);
+
+       int retval;
+       struct socket *sock;
+       retval = sock_create(family, type, protocol, &sock);
+       if (retval < 0)
+               goto out;
+
+       retval = sock_map_fd(sock);
+       if (retval < 0)
+               goto out_release;
+
+out:
+       /* It may be already another descriptor 8) Not kernel problem. */
+       return retval;
+
+out_release:
+       sock_release(sock);
+       return retval;
 }
int bind(int fd, struct sockaddr *umyaddr, int addrlen){
-    unsigned long args[6];
- - args[0] = (unsigned long)fd;
-    args[1] = (unsigned long)umyaddr;
-    args[2] = (unsigned long)addrlen;
-    return socketcall(SYS_BIND, args);
+
+       struct socket *sock;
+       char address[MAX_SOCK_ADDR];
+       int err;
+
+       if((sock = sockfd_lookup(fd,&err))!=NULL)
+       {
+               if((err=move_addr_to_kernel(umyaddr,addrlen,address))>=0) {
+                       err = security_socket_bind(sock, (struct sockaddr 
*)address, addrlen);
+                       if (err) {
+                               sockfd_put(sock);
+                               return err;
+                       }
+                       err = sock->ops->bind(sock, (struct sockaddr *)address, 
addrlen);
+               }
+               sockfd_put(sock);
+       }                       
+       return err;
 }
int connect(int fd, struct sockaddr *uservaddr, int addrlen){
-    unsigned long args[6];
- - args[0] = (unsigned long)fd;
-    args[1] = (unsigned long)uservaddr;
-    args[2] = (unsigned long)addrlen;
-    return socketcall(SYS_CONNECT, args);
+
+       struct socket *sock;
+       char address[MAX_SOCK_ADDR];
+       int err;
+
+       sock = sockfd_lookup(fd, &err);
+       if (!sock)
+               goto out;
+       err = move_addr_to_kernel(uservaddr, addrlen, address);
+       if (err < 0)
+               goto out_put;
+
+       err = security_socket_connect(sock, (struct sockaddr *)address, 
addrlen);
+       if (err)
+               goto out_put;
+
+       err = sock->ops->connect(sock, (struct sockaddr *) address, addrlen,
+                                sock->file->f_flags);
+out_put:
+       sockfd_put(sock);
+out:
+       return err;
 }
int sendto(int fd, void * buff, size_t len,
            unsigned flags, struct sockaddr *addr,
            int addr_len){
-    unsigned long args[6];
- - args[0] = (unsigned long)fd;
-    args[1] = (unsigned long)buff;
-    args[2] = (unsigned long)len;
-    args[3] = (unsigned long)flags;
-    args[4] = (unsigned long)addr;
-    args[5] = (unsigned long)addr_len;
-    return socketcall(SYS_SENDTO, args);
+
+       struct socket *sock;
+       char address[MAX_SOCK_ADDR];
+       int err;
+       struct msghdr msg;
+       struct iovec iov;
+       
+       sock = sockfd_lookup(fd, &err);
+       if (!sock)
+               goto out;
+       iov.iov_base=buff;
+       iov.iov_len=len;
+       msg.msg_name=NULL;
+       msg.msg_iov=&iov;
+       msg.msg_iovlen=1;
+       msg.msg_control=NULL;
+       msg.msg_controllen=0;
+       msg.msg_namelen=0;
+       if(addr)
+       {
+               err = move_addr_to_kernel(addr, addr_len, address);
+               if (err < 0)
+                       goto out_put;
+               msg.msg_name=address;
+               msg.msg_namelen=addr_len;
+       }
+       if (sock->file->f_flags & O_NONBLOCK)
+               flags |= MSG_DONTWAIT;
+       msg.msg_flags = flags;
+       err = sock_sendmsg(sock, &msg, len);
+
+out_put:               
+       sockfd_put(sock);
+out:
+       return err;
 }
int recvfrom(int fd, void * ubuf, size_t size,
              unsigned flags, struct sockaddr *addr,
              int *addr_len){
-    unsigned long args[6];
- - args[0] = (unsigned long)fd;
-    args[1] = (unsigned long)ubuf;
-    args[2] = (unsigned long)size;
-    args[3] = (unsigned long)flags;
-    args[4] = (unsigned long)addr;
-    args[5] = (unsigned long)addr_len;
-    return socketcall(SYS_RECVFROM, args);
+
+       struct socket *sock;
+       struct iovec iov;
+       struct msghdr msg;
+       char address[MAX_SOCK_ADDR];
+       int err,err2;
+
+       sock = sockfd_lookup(fd, &err);
+       if (!sock)
+               goto out;
+
+       msg.msg_control=NULL;
+       msg.msg_controllen=0;
+       msg.msg_iovlen=1;
+       msg.msg_iov=&iov;
+       iov.iov_len=size;
+       iov.iov_base=ubuf;
+       msg.msg_name=address;
+       msg.msg_namelen=MAX_SOCK_ADDR;
+       if (sock->file->f_flags & O_NONBLOCK)
+               flags |= MSG_DONTWAIT;
+       err=sock_recvmsg(sock, &msg, size, flags);
+
+       if(err >= 0 && addr != NULL)
+       {
+               err2=move_addr_to_user(address, msg.msg_namelen, addr, 
addr_len);
+               if(err2<0)
+                       err=err2;
+       }
+       sockfd_put(sock);                       
+out:
+       return err;
 }
int setsockopt(int fd, int level, int optname, void *optval, int optlen){
-    unsigned long args[6];
- - args[0] = (unsigned long)fd;
-    args[1] = (unsigned long)level;
-    args[2] = (unsigned long)optname;
-    args[3] = (unsigned long)optval;
-    args[4] = (unsigned long)optlen;
-    return socketcall(SYS_SETSOCKOPT, args);
-}
-
+
+       int err;
+       struct socket *sock;
+
+       if (optlen < 0)
+               return -EINVAL;
+                       
+       if ((sock = sockfd_lookup(fd, &err))!=NULL)
+       {
+               err = security_socket_setsockopt(sock,level,optname);
+               if (err) {
+                       sockfd_put(sock);
+                       return err;
+               }
+
+               if (level == SOL_SOCKET)
+                       err=sock_setsockopt(sock,level,optname,optval,optlen);
+               else
+                       err=sock->ops->setsockopt(sock, level, optname, optval, 
optlen);
+               sockfd_put(sock);
+       }
+       return err;
+}
+
+/*  not possible, because sock_getsockopt is not exported ...
 int getsockopt(int fd, int level, int optname, void *optval, int *optlen){
-    unsigned long args[6];
- - args[0] = (unsigned long)fd;
-    args[1] = (unsigned long)level;
-    args[2] = (unsigned long)optname;
-    args[3] = (unsigned long)optval;
-    args[4] = (unsigned long)optlen;
-    return socketcall(SYS_GETSOCKOPT, args);
-}
+
+       int err;
+       struct socket *sock;
+
+       if ((sock = sockfd_lookup(fd, &err))!=NULL)
+       {
+               err = security_socket_getsockopt(sock, level, optname);
+               if (err) {
+                       sockfd_put(sock);
+                       return err;
+               }
+
+               if (level == SOL_SOCKET)
+                       err=sock_getsockopt(sock,level,optname,optval,optlen);
+               else
+                       err=sock->ops->getsockopt(sock, level, optname, optval, 
optlen);
+               sockfd_put(sock);
+       }
+       return err;
+}
+*/
int shutdown(int fd, int how){
-    unsigned long args[6];
- - args[0] = (unsigned long)fd;
-    args[1] = (unsigned long)how;
-    return socketcall(SYS_SHUTDOWN, args);
+
+       int err;
+       struct socket *sock;
+
+       if ((sock = sockfd_lookup(fd, &err))!=NULL)
+       {
+               err = security_socket_shutdown(sock, how);
+               if (err) {
+                       sockfd_put(sock);
+                       return err;
+               }
+                               
+               err=sock->ops->shutdown(sock, how);
+               sockfd_put(sock);
+       }
+       return err;
 }
int getsockname(int fd, struct sockaddr *usockaddr, int *usockaddr_len){
-    unsigned long args[6];
- - args[0] = (unsigned long)fd;
-    args[1] = (unsigned long)usockaddr;
-    args[2] = (unsigned long)usockaddr_len;
-    return socketcall(SYS_GETSOCKNAME, args);
-}
+
+       struct socket *sock;
+       char address[MAX_SOCK_ADDR];
+       int len, err;
+       
+       sock = sockfd_lookup(fd, &err);
+       if (!sock)
+               goto out;
+
+       err = security_socket_getsockname(sock);
+       if (err)
+               goto out_put;
+
+       err = sock->ops->getname(sock, (struct sockaddr *)address, &len, 0);
+       if (err)
+               goto out_put;
+       err = move_addr_to_user(address, len, usockaddr, usockaddr_len);
+
+out_put:
+       sockfd_put(sock);
+out:
+       return err;
+}
+
+/**
+ * End of copy from net/socket.c
+ */
+
/*============================================================================*/
 /** Socket flags. */
@@ -577,7 +723,7 @@
     int err = 0;
     mm_segment_t oldfs;
- dprintf("> mcaddr=%u.%u.%u.%u port=%u\n", NIPQUAD(mcaddr), ntohs(port));
+    iprintf("> mcaddr=%u.%u.%u.%u port=%u\n", NIPQUAD(mcaddr), ntohs(port));
     oldfs = change_fs(KERNEL_DS);
     err = varp_mcast_open(mcaddr, port, &varp_mcast_sock);
     if(err < 0 ) goto exit;


------------------------------------------------------------------------

diff -r 89b98811ce56 tools/vnet/vnet-module/if_varp.h
--- a/tools/vnet/vnet-module/if_varp.h  Fri Mar 31 13:29:05 2006
+++ b/tools/vnet/vnet-module/if_varp.h  Fri Mar 31 15:39:27 2006
@@ -97,7 +97,7 @@
/** Default address for varp/vnet broadcasts: 224.10.0.1 */
-#define VARP_MCAST_ADDR     0xe00a0001
+#define VARP_MCAST_ADDR     "224.10.0.1"
/** UDP port to use for varp protocol. */
 #define VARP_PORT           1798
diff -r 89b98811ce56 tools/vnet/vnet-module/tunnel.h
--- a/tools/vnet/vnet-module/tunnel.h   Fri Mar 31 13:29:05 2006
+++ b/tools/vnet/vnet-module/tunnel.h   Fri Mar 31 15:39:27 2006
@@ -74,7 +74,7 @@
  *
  * @param tunnel tunnel (may be null)
  */
-static inline void Tunnel_decref(struct Tunnel *tunnel){
+static void Tunnel_decref(struct Tunnel *tunnel){
     if(!tunnel) return;
     if(atomic_dec_and_test(&tunnel->refcount)){
         tunnel->type->close(tunnel);
diff -r 89b98811ce56 tools/vnet/vnet-module/varp.c
--- a/tools/vnet/vnet-module/varp.c     Fri Mar 31 13:29:05 2006
+++ b/tools/vnet/vnet-module/varp.c     Fri Mar 31 15:39:27 2006
@@ -200,7 +200,8 @@
 /** UDP port (network order). */
 u16 varp_port = 0;
-char *varp_device = "xen-br0";
+#define VARP_DEVICE_DEFAULT "xen-br0"
+char *varp_device = NULL;
#define VarpTable_read_lock(vtable, flags) \
   do{ read_lock_irqsave(&(vtable)->lock, (flags)); } while(0)
@@ -262,8 +263,9 @@
 int varp_ucast_addr(uint32_t *addr)
 {
     int err = -ENODEV;
-    const char *devices[] = { varp_device, "eth0", "eth1", "eth2", NULL };
+    char *devices[] = { varp_device, "eth0", "eth1", "eth2", NULL };
     const char **p;
+
     for(p = devices; err && *p; p++){
         err = device_ucast_addr(*p, addr);
     }
@@ -1485,12 +1487,14 @@
 static void varp_init_mcast_addr(char *s){
     unsigned long v = 0;
- dprintf("> %s\n", s);
+    dprintf("> mcast_addr init=%s\n", s);
     if(s && (get_inet_addr(s, &v) >= 0)){
-        varp_mcast_addr = (u32)v;
+        varp_mcaddr = s;
     } else {
-        varp_mcast_addr = htonl(VARP_MCAST_ADDR);
-    }
+        varp_mcaddr = VARP_MCAST_ADDR;
+        get_inet_addr(varp_mcaddr, &v);
+    }
+    varp_mcast_addr = (u32)v;
 }
/** Initialize the varp cache.
@@ -1510,9 +1514,12 @@
     varp_init_mcast_addr(varp_mcaddr);
     varp_port = htons(VARP_PORT);
+ if (varp_device == NULL)
+       varp_device = VARP_DEVICE_DEFAULT;
+
     err = varp_open(varp_mcast_addr, varp_port);
   exit:
-    dprintf("< err=%d\n", err);
+    dprintf("< varp_init err=%d\n", err);
     return err;
 }
@@ -1529,8 +1536,10 @@
     dprintf("<\n");
 }
-MODULE_PARM(varp_mcaddr, "s");
+#ifdef __KERNEL__
+module_param_named(mcaddr, varp_mcaddr, charp, 0444);
 MODULE_PARM_DESC(varp_mcaddr, "VARP multicast address");
-MODULE_PARM(varp_device, "s");
+module_param_named(device, varp_device, charp, 0444);
 MODULE_PARM_DESC(varp_device, "VARP network device");
+#endif
diff -r 89b98811ce56 tools/vnet/vnet-module/vnet.c
--- a/tools/vnet/vnet-module/vnet.c     Fri Mar 31 13:29:05 2006
+++ b/tools/vnet/vnet-module/vnet.c     Fri Mar 31 15:39:27 2006
@@ -657,6 +657,9 @@
if(vnet_encaps && !strcmp(vnet_encaps, "udp")){
         etherip_in_udp = 1;
+        vnet_encaps = "etherip";
+    } else {
+        vnet_encaps = "udp";
     }
     dprintf(">\n");
     err = random_module_init();
@@ -691,7 +694,7 @@
 module_exit(vnet_module_exit);
 MODULE_LICENSE("GPL");
-MODULE_PARM(vnet_encaps, "s");
+module_param_named(encaps, vnet_encaps, charp, 0444);
 MODULE_PARM_DESC(vnet_encaps, "Vnet encapsulation: etherip or udp.");
#endif


------------------------------------------------------------------------

diff -r 18eecf71f690 tools/vnet/vnet-module/esp.c
--- a/tools/vnet/vnet-module/esp.c      Fri Mar 31 13:39:42 2006
+++ b/tools/vnet/vnet-module/esp.c      Fri Mar 31 15:42:56 2006
@@ -281,7 +281,7 @@
     }
     skb_trim_tail(skb, icv_n);
   exit:
-    dprintf("< err=%d\n", err);
+    dprintf("< esp_check_icv err=%d\n", err);
     return err;
 }
@@ -384,7 +384,7 @@
     }
     err = Tunnel_send(tunnel, skb);
   exit:
-    dprintf("< err=%d\n", err);
+    dprintf("< esp_sa_send err=%d\n", err);
     return err;
 }
@@ -487,7 +487,7 @@
         }
         err = 1;
     }
-    dprintf("< skb=%p err=%d\n", skb, err);
+    dprintf("< esp_sa_recv skb=%p err=%d\n", skb, err);
     return err;
 }
@@ -627,7 +627,7 @@
     crypto_cipher_setkey(esp->cipher.tfm, esp->cipher.key, esp->cipher.key_n);
     err = 0;
   exit:
-    dprintf("< err=%d\n", err);
+    dprintf("< esp_cipher_int err=%d\n", err);
     return err;
 }
@@ -674,7 +674,7 @@
         goto exit;
     }
   exit:
-    dprintf("< err=%d\n", err);
+    dprintf("< esp_digest_init err=%d\n", err);
     return err;
 }
@@ -704,7 +704,7 @@
     if(err){
         if(esp) esp_fini(esp);
     }
-    dprintf("< err=%d\n", err);
+    dprintf("< esp_sa_init err=%d\n", err);
     return err;
 }
@@ -793,7 +793,7 @@
         kfree_skb(skb);
         err = 0;
     }
-    dprintf("< err=%d\n", err);
+    dprintf("< esp_protocol_recv err=%d\n", err);
     return err;
 }
@@ -884,7 +884,7 @@
     }
     esp_protocol_add();
   exit:
-    dprintf("< err=%d\n", err);
+    dprintf("< esp_module_init err=%d\n", err);
     return err;
 }
diff -r 18eecf71f690 tools/vnet/vnet-module/etherip.c
--- a/tools/vnet/vnet-module/etherip.c  Fri Mar 31 13:39:42 2006
+++ b/tools/vnet/vnet-module/etherip.c  Fri Mar 31 15:42:56 2006
@@ -198,7 +198,7 @@
     skb = NULL;
   exit:
     if(err && skb){
-        wprintf("< err=%d\n", err);
+        wprintf("< etherip_tunnel_send err=%d\n", err);
         kfree_skb(skb);
     }
     return err;
@@ -347,7 +347,7 @@
     err = vnet_skb_recv(skb, vinfo);
   exit:
     if(vinfo) Vnet_decref(vinfo);
-    dprintf("< skb=%p err=%d\n", skb, err);
+    dprintf("< etherip_protocol_recv skb=%p err=%d\n", skb, err);
     return err;
 }
diff -r 18eecf71f690 tools/vnet/vnet-module/sa.c
--- a/tools/vnet/vnet-module/sa.c       Fri Mar 31 13:39:42 2006
+++ b/tools/vnet/vnet-module/sa.c       Fri Mar 31 15:42:56 2006
@@ -365,7 +365,7 @@
     if(err && entries){
         sa_table_delete(state);
     }
-    dprintf("< err=%d\n", err);
+    dprintf("< sa_table_add err=%d\n", err);
     return err;
 }
@@ -441,7 +441,7 @@
     if(err) goto exit;
     sa_table_delete(existing);
   exit:
-    dprintf("< err=%d\n", err);
+    dprintf("< sa_table_replace err=%d\n", err);
     return err;
 }
@@ -524,7 +524,7 @@
         state = NULL;
     }
     *statep = state;
-    dprintf("< err=%d\n", err);
+    dprintf("< SAState_create err=%d\n", err);
     return err;
 }
@@ -587,7 +587,7 @@
     }
err = sa_set(&info, 0, sa);
-    dprintf("< err=%d\n", err);
+    dprintf("< sa_create err=%d\n", err);
     return err;
 }
@@ -625,7 +625,7 @@
     } else {
         SAState_decref(state);
     }
-    dprintf("< err=%d\n", err);
+    dprintf("< sa_set err=%d\n", err);
     return err;
 }
@@ -691,7 +691,7 @@
 static int sa_tunnel_open(Tunnel *tunnel){
     int err = 0;
     //dprintf(">\n");
-    //dprintf("< err=%d\n", err);
+    //dprintf("< sa_tunnel_open err=%d\n", err);
     return err;
 }
diff -r 18eecf71f690 tools/vnet/vnet-module/skb_context.c
--- a/tools/vnet/vnet-module/skb_context.c      Fri Mar 31 13:39:42 2006
+++ b/tools/vnet/vnet-module/skb_context.c      Fri Mar 31 15:42:56 2006
@@ -73,7 +73,7 @@
     context->next = *val;
     *val = context;
   exit:
-    dprintf("< err=%d\n", err);
+    dprintf("< SkbContext_push err=%d\n", err);
     return err;
 }
@@ -85,7 +85,7 @@ //err = SkbContext_push(&ctxt, vnet, addr, protocol, data, free_fn); //todo fixme
     //SKB_CONTEXT(skb) = ctxt;//todo fixme
-    dprintf("< err=%d\n", err);
+    dprintf("< skb_push_context err=%d\n", err);
     return err;
 }
diff -r 18eecf71f690 tools/vnet/vnet-module/skb_util.c
--- a/tools/vnet/vnet-module/skb_util.c Fri Mar 31 13:39:42 2006
+++ b/tools/vnet/vnet-module/skb_util.c Fri Mar 31 15:42:56 2006
@@ -133,7 +133,7 @@
             skb_headroom(*pskb), head_n,
             skb_tailroom(*pskb), tail_n);
   exit:
-    dprintf("< err=%d\n", err);
+    dprintf("< skb_make_room err=%d\n", err);
     return err;
 }
@@ -374,7 +374,7 @@
     }
   exit:
     if(!err) *sg_n = sg_i;
-    if(len) wprintf("> len=%d\n", len);
+    if(len) wprintf("> sbk_scatterlist len=%d\n", len);
     if(len) BUG();
     if(err) dprintf("< err=%d sg_n=%d\n", err, *sg_n);
     return err;
diff -r 18eecf71f690 tools/vnet/vnet-module/tunnel.c
--- a/tools/vnet/vnet-module/tunnel.c   Fri Mar 31 13:39:42 2006
+++ b/tools/vnet/vnet-module/tunnel.c   Fri Mar 31 15:42:56 2006
@@ -95,12 +95,12 @@
         tunnel = NULL;
     }
     *val = tunnel;
-    dprintf("< err=%d\n", err);
+    dprintf("< tunnel_create err=%d\n", err);
     return err;
 }
void TunnelStats_update(TunnelStats *stats, int len, int err){
-    dprintf(">len=%d  err=%d\n", len, err);
+    dprintf("> TunnelStats_update len=%d  err=%d\n", len, err);
     if(err){
         stats->dropped_bytes += len;
         stats->dropped_packets++;
@@ -139,7 +139,7 @@
     tunnel_table->key_hash_fn = tunnel_table_key_hash_fn;
     tunnel_table->key_equal_fn = tunnel_table_key_equal_fn;
   exit:
-    dprintf("< err=%d\n", err);
+    dprintf("< Tunnel_init(): err=%d\n", err);
     return err;
 }
@@ -213,7 +213,7 @@
         err = -ENOMEM;
     }
     tunnel_write_unlock(flags);
-    dprintf("< err=%d\n", err);
+    dprintf("< Tunnel_add err=%d\n", err);
     return err;
 }
@@ -244,7 +244,7 @@
     } else {
         err = skb_xmit(skb);
     }
-    dprintf("< err=%d\n", err);
+    dprintf("< Tunnel_send err=%d\n", err);
     return err;
 }
diff -r 18eecf71f690 tools/vnet/vnet-module/varp.c
--- a/tools/vnet/vnet-module/varp.c     Fri Mar 31 13:39:42 2006
+++ b/tools/vnet/vnet-module/varp.c     Fri Mar 31 15:42:56 2006
@@ -512,7 +512,7 @@
exit:
     if(err && skbout) kfree_skb(skbout);
-    dprintf("< err=%d\n", err);
+    dprintf("< varp_send err=%d\n", err);
     return err;
 }
@@ -1002,7 +1002,7 @@
     VarpEntry_unlock(ventry, flags);
     err = vnet_tunnel_send(&vnet, &addr, skb);
     VarpEntry_lock(ventry, flags);
-    dprintf("< err=%d\n", err);
+    dprintf("< VarpEntry_send err=%d\n", err);
     return err;
 }
@@ -1050,7 +1050,7 @@
     } else {
         err = VarpEntry_send(ventry, skb);
     }
-    dprintf("< err=%d\n", err);
+    dprintf("< VarpEntry_resolve err=%d\n", err);
     return err;
 }
@@ -1143,7 +1143,7 @@
     //}
   exit:
     VarpEntry_unlock(ventry, flags);
-    dprintf("< err=%d\n", err);
+    dprintf("< VarpEntry_update err=%d\n", err);
     return err;
 }
@@ -1180,7 +1180,7 @@
     err = VarpEntry_update(ventry, addr, state, flags);
     VarpEntry_decref(ventry);
   exit:
-    dprintf("< err=%d\n", err);
+    dprintf("< VarpTable_update err=%d\n", err);
     return err;
 }
@@ -1297,7 +1297,7 @@
     varp_send(VARP_OP_ANNOUNCE, skb->dev, skb, vnet, vmac);
     vif_decref(vif);
   exit:
-    dprintf("< err=%d\n", err);
+    dprintf("< varp_handle_request err=%d\n", err);
     return err;
 }
@@ -1316,7 +1316,7 @@
     }
     err = varp_send(VARP_OP_ANNOUNCE, dev, NULL, &vif->vnet, &vif->vmac);
   exit:
-    dprintf("< err=%d\n", err);
+    dprintf("< varp_announce_vif err=%d\n", err);
     return err;
 }
@@ -1335,7 +1335,7 @@
                            &varph->vnet, &varph->vmac, &varph->addr,
VARP_STATE_REACHABLE, (VARP_UPDATE_CREATE | VARP_UPDATE_QUEUE));
-    dprintf("< err=%d\n", err);
+    dprintf("< varp_handle_announce err=%d\n", err);
     return err;
 }
@@ -1419,7 +1419,7 @@
         break;
     }
   exit:
-    dprintf("< err=%d\n", err);
+    dprintf("< varp_handle_message err=%d\n", err);
     return err;
 }
@@ -1462,7 +1462,7 @@
         }
     }
   exit:
-    dprintf("< err=%d\n", err);
+    dprintf("< varp_output err=%d\n", err);
     return err;
 }
diff -r 18eecf71f690 tools/vnet/vnet-module/varp_socket.c
--- a/tools/vnet/vnet-module/varp_socket.c      Fri Mar 31 13:39:42 2006
+++ b/tools/vnet/vnet-module/varp_socket.c      Fri Mar 31 15:42:56 2006
@@ -507,7 +507,7 @@
     }
   exit:
     *val = (err ? -1 : sock);
-    if(err) eprintf("> err=%d errno=%d\n", err, errno);
+    if(err) eprintf("> create_socket err=%d errno=%d\n", err, errno);
     return err;
 }
@@ -538,7 +538,7 @@
         shutdown(sock, 2);
     }
     *val = (err ? -1 : sock);
-    dprintf("< err=%d val=%d\n", err, *val);
+    dprintf("< varp_mcast_open err=%d val=%d\n", err, *val);
     return err;
 }
@@ -554,7 +554,7 @@
     int flags = (VSOCK_BIND | VSOCK_REUSE);
     dprintf(">\n");
     err = create_socket(SOCK_DGRAM, addr, port, flags, val);
-    dprintf("< err=%d val=%d\n", err, *val);
+    dprintf("< varp_ucast_open err=%d val=%d\n", err, *val);
     return err;
 }
@@ -733,7 +733,7 @@
     sock_set_callback(varp_mcast_sock);
   exit:
     set_fs(oldfs);
-    dprintf("< err=%d\n", err);
+    dprintf("< varp_socket_open err=%d\n", err);
     return err;
 }      
@@ -792,7 +792,7 @@
     sock_remove_wait_queue(varp_mcast_sock, &mcast_wait);
     varp_sockets_close();
     if(err){
-        eprintf("%s< err=%d\n", __FUNCTION__, err);
+        eprintf("%s< varp_main err=%d\n", __FUNCTION__, err);
     }
     varp_thread_err = err;
     atomic_set(&varp_state, VARP_STATE_EXITED);
@@ -842,7 +842,7 @@
 #endif
   exit:
     if(err){
-        wprintf("> err=%d\n", err);
-    }
-    return err;
-}
+        wprintf("> varp_open err=%d\n", err);
+    }
+    return err;
+}
diff -r 18eecf71f690 tools/vnet/vnet-module/vnet.c
--- a/tools/vnet/vnet-module/vnet.c     Fri Mar 31 13:39:42 2006
+++ b/tools/vnet/vnet-module/vnet.c     Fri Mar 31 15:42:56 2006
@@ -448,7 +448,7 @@
     }
 #endif
   exit:
-    dprintf("< err=%d\n", err);
+    dprintf("< _skb_xmit err=%d\n", err);
     return err;
 }
@@ -486,7 +486,7 @@
         vif_update(vnet, (Vmac*)eth_hdr(skb)->h_source);
         err = varp_output(skb, vnet);
     }
-    //dprintf("< err=%d\n", err);
+    //dprintf("< vnet_skb_send err=%d\n", err);
     return err;
 }
diff -r 18eecf71f690 tools/vnet/vnet-module/vnet_eval.c
--- a/tools/vnet/vnet-module/vnet_eval.c        Fri Mar 31 13:39:42 2006
+++ b/tools/vnet/vnet-module/vnet_eval.c        Fri Mar 31 15:42:56 2006
@@ -354,7 +354,7 @@
             break;
         }
     }
-    iprintf("< err=%d\n", err);
+    iprintf("< vnet_eval_defs err=%d\n", err);
     return err;
 }
diff -r 18eecf71f690 tools/vnet/vnet-module/vnet_ioctl.c
--- a/tools/vnet/vnet-module/vnet_ioctl.c       Fri Mar 31 13:39:42 2006
+++ b/tools/vnet/vnet-module/vnet_ioctl.c       Fri Mar 31 15:42:56 2006
@@ -247,7 +247,7 @@
   exit:
     Parser_free(parser);
     file->private_data = NULL;
-    dprintf("< err=%d\n", err);
+    dprintf("< proc_policy_release err=%d\n", err);
     return err;
 }
@@ -301,7 +301,7 @@
     int err = 0;
     IOStream *io = file->private_data;
     if(io) IOStream_close(io);
-    dprintf("< err=%d\n", err);
+    dprintf("< proc_io_release_fn err=%d\n", err);
     return err;
 }

------------------------------------------------------------------------

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel



_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel

<Prev in Thread] Current Thread [Next in Thread>