--- linux-2.6.17.4-vs2.1.1-rc25.0/include/linux/vs_socket.h 2006-07-09 17:07:13 +0200 +++ linux-2.6.17.4-vs2.1.1-rc25.0.1/include/linux/vs_socket.h 2006-07-09 23:04:01 +0200 @@ -10,12 +10,14 @@ static inline int vx_sock_type(int family) { - int type = 4; + int type = 5; - if (family > 0 && family < 3) + if (family >= 0 && family < 3) type = family; else if (family == PF_INET6) type = 3; + else if (family == PF_PACKET) + type = 4; return type; } --- linux-2.6.17.4-vs2.1.1-rc25.0/include/linux/vserver/cvirt_def.h 2006-07-09 17:07:13 +0200 +++ linux-2.6.17.4-vs2.1.1-rc25.0.1/include/linux/vserver/cvirt_def.h 2006-07-09 23:05:48 +0200 @@ -90,7 +90,7 @@ struct _vx_sock_acc { /* context sub struct */ struct _vx_cacct { - struct _vx_sock_acc sock[5][3]; + struct _vx_sock_acc sock[6][3]; atomic_t slab[8]; atomic_t page[6][8]; }; @@ -102,7 +102,7 @@ static inline void __dump_vx_cacct(struc int i,j; printk("\t_vx_cacct:"); - for (i=0; i<5; i++) { + for (i=0; i<6; i++) { struct _vx_sock_acc *ptr = cacct->sock[i]; printk("\t [%d] =", i); --- linux-2.6.17.4-vs2.1.1-rc25.0/kernel/vserver/cvirt_init.h 2006-07-09 17:07:14 +0200 +++ linux-2.6.17.4-vs2.1.1-rc25.0.1/kernel/vserver/cvirt_init.h 2006-07-09 23:06:16 +0200 @@ -79,7 +79,7 @@ static inline void vx_info_init_cacct(st int i,j; - for (i=0; i<5; i++) { + for (i=0; i<6; i++) { for (j=0; j<3; j++) { atomic_set(&cacct->sock[i][j].count, 0); atomic_set(&cacct->sock[i][j].total, 0); --- linux-2.6.17.4-vs2.1.1-rc25.0/kernel/vserver/cvirt_proc.h 2006-07-09 17:07:14 +0200 +++ linux-2.6.17.4-vs2.1.1-rc25.0.1/kernel/vserver/cvirt_proc.h 2006-07-09 23:07:03 +0200 @@ -82,10 +82,11 @@ static inline long vx_sock_total(struct static inline int vx_info_proc_cacct(struct _vx_cacct *cacct, char *buffer) { int i,j, length = 0; - static char *type[] = { "UNSPEC", "UNIX", "INET", "INET6", "OTHER" }; + static char *type[] = { + "UNSPEC", "UNIX", "INET", "INET6", "PACKET", "OTHER" }; length += sprintf(buffer + length, VX_SOCKA_TOP); - for (i=0; i<5; i++) { + for (i=0; i<6; i++) { length += sprintf(buffer + length, "%s:", type[i]); for (j=0; j<3; j++) {