From mboxrd@z Thu Jan 1 00:00:00 1970 From: Mike Wray Subject: Re: [PATCH] vnet-module Date: Fri, 31 Mar 2006 15:43:24 +0100 Message-ID: <442D400C.4030803@hpl.hp.com> References: <442D3512.3040308@solid-soft.at> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-15; format=flowed Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <442D3512.3040308@solid-soft.at> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xensource.com Errors-To: xen-devel-bounces@lists.xensource.com To: Robert Valentan Cc: mike.wray@hp.com, xen-devel@lists.xensource.com List-Id: xen-devel@lists.xenproject.org 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 > #include > #include > @@ -36,7 +39,6 @@ > > /* Get macros needed to define system calls as functions in the kernel. */ > #define __KERNEL_SYSCALLS__ > -static int errno; > #include > > #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@lists.xensource.com > http://lists.xensource.com/xen-devel