Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit b1e2d907 authored by Linus Torvalds's avatar Linus Torvalds
Browse files

Merge branch 'upstream-linus' of git://oss.oracle.com/home/sourcebo/git/ocfs2

parents e0a5c578 81f2094a
Loading
Loading
Loading
Loading
+1 −0
Original line number Original line Diff line number Diff line
@@ -74,6 +74,7 @@ struct mlog_attribute {
#define define_mask(_name) {			\
#define define_mask(_name) {			\
	.attr = {				\
	.attr = {				\
		.name = #_name,			\
		.name = #_name,			\
		.owner = THIS_MODULE,		\
		.mode = S_IRUGO | S_IWUSR,	\
		.mode = S_IRUGO | S_IWUSR,	\
	},					\
	},					\
	.mask = ML_##_name,			\
	.mask = ML_##_name,			\
+1 −1
Original line number Original line Diff line number Diff line
@@ -256,7 +256,7 @@ extern struct mlog_bits mlog_and_bits, mlog_not_bits;
	}								\
	}								\
} while (0)
} while (0)


#if (BITS_PER_LONG == 32) || defined(CONFIG_X86_64)
#if (BITS_PER_LONG == 32) || defined(CONFIG_X86_64) || (defined(CONFIG_UML_X86) && defined(CONFIG_64BIT))
#define MLFi64 "lld"
#define MLFi64 "lld"
#define MLFu64 "llu"
#define MLFu64 "llu"
#define MLFx64 "llx"
#define MLFx64 "llx"
+3 −1
Original line number Original line Diff line number Diff line
@@ -756,7 +756,7 @@ static int __init init_o2nm(void)
	if (!ocfs2_table_header) {
	if (!ocfs2_table_header) {
		printk(KERN_ERR "nodemanager: unable to register sysctl\n");
		printk(KERN_ERR "nodemanager: unable to register sysctl\n");
		ret = -ENOMEM; /* or something. */
		ret = -ENOMEM; /* or something. */
		goto out;
		goto out_o2net;
	}
	}


	ret = o2net_register_hb_callbacks();
	ret = o2net_register_hb_callbacks();
@@ -780,6 +780,8 @@ out_callbacks:
	o2net_unregister_hb_callbacks();
	o2net_unregister_hb_callbacks();
out_sysctl:
out_sysctl:
	unregister_sysctl_table(ocfs2_table_header);
	unregister_sysctl_table(ocfs2_table_header);
out_o2net:
	o2net_exit();
out:
out:
	return ret;
	return ret;
}
}
+12 −2
Original line number Original line Diff line number Diff line
@@ -1318,7 +1318,7 @@ static void o2net_start_connect(void *arg)
{
{
	struct o2net_node *nn = arg;
	struct o2net_node *nn = arg;
	struct o2net_sock_container *sc = NULL;
	struct o2net_sock_container *sc = NULL;
	struct o2nm_node *node = NULL;
	struct o2nm_node *node = NULL, *mynode = NULL;
	struct socket *sock = NULL;
	struct socket *sock = NULL;
	struct sockaddr_in myaddr = {0, }, remoteaddr = {0, };
	struct sockaddr_in myaddr = {0, }, remoteaddr = {0, };
	int ret = 0;
	int ret = 0;
@@ -1334,6 +1334,12 @@ static void o2net_start_connect(void *arg)
		goto out;
		goto out;
	}
	}


	mynode = o2nm_get_node_by_num(o2nm_this_node());
	if (mynode == NULL) {
		ret = 0;
		goto out;
	}

	spin_lock(&nn->nn_lock);
	spin_lock(&nn->nn_lock);
	/* see if we already have one pending or have given up */
	/* see if we already have one pending or have given up */
	if (nn->nn_sc || nn->nn_persistent_error)
	if (nn->nn_sc || nn->nn_persistent_error)
@@ -1361,12 +1367,14 @@ static void o2net_start_connect(void *arg)
	sock->sk->sk_allocation = GFP_ATOMIC;
	sock->sk->sk_allocation = GFP_ATOMIC;


	myaddr.sin_family = AF_INET;
	myaddr.sin_family = AF_INET;
	myaddr.sin_addr.s_addr = (__force u32)mynode->nd_ipv4_address;
	myaddr.sin_port = (__force u16)htons(0); /* any port */
	myaddr.sin_port = (__force u16)htons(0); /* any port */


	ret = sock->ops->bind(sock, (struct sockaddr *)&myaddr,
	ret = sock->ops->bind(sock, (struct sockaddr *)&myaddr,
			      sizeof(myaddr));
			      sizeof(myaddr));
	if (ret) {
	if (ret) {
		mlog(0, "bind failed: %d\n", ret);
		mlog(ML_ERROR, "bind failed with %d at address %u.%u.%u.%u\n",
		     ret, NIPQUAD(mynode->nd_ipv4_address));
		goto out;
		goto out;
	}
	}


@@ -1407,6 +1415,8 @@ out:
		sc_put(sc);
		sc_put(sc);
	if (node)
	if (node)
		o2nm_node_put(node);
		o2nm_node_put(node);
	if (mynode)
		o2nm_node_put(mynode);


	return;
	return;
}
}
+0 −5
Original line number Original line Diff line number Diff line
@@ -85,13 +85,10 @@ enum {
	O2NET_DRIVER_READY,
	O2NET_DRIVER_READY,
};
};


int o2net_init_tcp_sock(struct inode *inode);
int o2net_send_message(u32 msg_type, u32 key, void *data, u32 len,
int o2net_send_message(u32 msg_type, u32 key, void *data, u32 len,
		       u8 target_node, int *status);
		       u8 target_node, int *status);
int o2net_send_message_vec(u32 msg_type, u32 key, struct kvec *vec,
int o2net_send_message_vec(u32 msg_type, u32 key, struct kvec *vec,
			   size_t veclen, u8 target_node, int *status);
			   size_t veclen, u8 target_node, int *status);
int o2net_broadcast_message(u32 msg_type, u32 key, void *data, u32 len,
			    struct inode *group);


int o2net_register_handler(u32 msg_type, u32 key, u32 max_len,
int o2net_register_handler(u32 msg_type, u32 key, u32 max_len,
			   o2net_msg_handler_func *func, void *data,
			   o2net_msg_handler_func *func, void *data,
@@ -107,7 +104,5 @@ void o2net_disconnect_node(struct o2nm_node *node);


int o2net_init(void);
int o2net_init(void);
void o2net_exit(void);
void o2net_exit(void);
int o2net_proc_init(struct proc_dir_entry *parent);
void o2net_proc_exit(struct proc_dir_entry *parent);


#endif /* O2CLUSTER_TCP_H */
#endif /* O2CLUSTER_TCP_H */
Loading