Hi Andrew, Today's linux-next merge of the akpm-current tree got a conflict in: include/net/sock.h net/ipv4/tcp_ipv4.c between commit: 64be0aed59ad ("net: diag: Add the ability to destroy a socket.") from the net-next tree and commit: 0e2cde9cf7b6 ("net: tcp_memcontrol: simplify linkage between socket and page counter") from the akpm-current tree. I fixed it up (see below) and can carry the fix as necessary (no action is required). -- Cheers, Stephen Rothwell sfr@xxxxxxxxxxxxxxxx diff --cc include/net/sock.h index f772b8245cae,edd552ef8e38..000000000000 --- a/include/net/sock.h +++ b/include/net/sock.h @@@ -309,8 -292,8 +293,8 @@@ struct cg_proto * @sk_send_head: front of stuff to transmit * @sk_security: used by security modules * @sk_mark: generic packet mark - * @sk_classid: this socket's cgroup classid + * @sk_cgrp_data: cgroup data for this cgroup - * @sk_cgrp: this socket's cgroup-specific proto data + * @sk_memcg: this socket's memory cgroup association * @sk_write_pending: a write to stream socket waits to start * @sk_state_change: callback to indicate change in the state of the sock * @sk_data_ready: callback to indicate there is data to be processed @@@ -444,8 -428,11 +428,8 @@@ struct sock #ifdef CONFIG_SECURITY void *sk_security; #endif - __u32 sk_mark; -#ifdef CONFIG_CGROUP_NET_CLASSID - u32 sk_classid; -#endif + struct sock_cgroup_data sk_cgrp_data; - struct cg_proto *sk_cgrp; + struct mem_cgroup *sk_memcg; void (*sk_state_change)(struct sock *sk); void (*sk_data_ready)(struct sock *sk); void (*sk_write_space)(struct sock *sk); @@@ -1051,19 -1036,6 +1035,7 @@@ struct proto #ifdef SOCK_REFCNT_DEBUG atomic_t socks; #endif - #ifdef CONFIG_MEMCG_KMEM - /* - * cgroup specific init/deinit functions. Called once for all - * protocols that implement it, from cgroups populate function. - * This function has to setup any files the protocol want to - * appear in the kmem cgroup filesystem. - */ - int (*init_cgroup)(struct mem_cgroup *memcg, - struct cgroup_subsys *ss); - void (*destroy_cgroup)(struct mem_cgroup *memcg); - struct cg_proto *(*proto_cgroup)(struct mem_cgroup *memcg); - #endif + int (*diag_destroy)(struct sock *sk, int err); }; int proto_register(struct proto *prot, int alloc_slab); diff --cc net/ipv4/tcp_ipv4.c index 205e6745393f,34c26782e114..000000000000 --- a/net/ipv4/tcp_ipv4.c +++ b/net/ipv4/tcp_ipv4.c @@@ -2336,12 -2339,6 +2338,7 @@@ struct proto tcp_prot = .compat_setsockopt = compat_tcp_setsockopt, .compat_getsockopt = compat_tcp_getsockopt, #endif - #ifdef CONFIG_MEMCG_KMEM - .init_cgroup = tcp_init_cgroup, - .destroy_cgroup = tcp_destroy_cgroup, - .proto_cgroup = tcp_proto_cgroup, - #endif + .diag_destroy = tcp_abort, }; EXPORT_SYMBOL(tcp_prot); -- To unsubscribe from this list: send the line "unsubscribe linux-next" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html