Symbol: connection
arch/um/drivers/port_kern.c
228
struct connection *conn;
arch/um/drivers/port_kern.c
240
conn = list_entry(port->connections.next, struct connection,
arch/um/drivers/port_kern.c
47
struct connection *conn = data;
arch/um/drivers/port_kern.c
80
struct connection *conn;
arch/um/drivers/port_kern.c
97
*conn = ((struct connection)
drivers/acpi/acpica/evregion.c
283
context->connection = field_obj->field.resource_buffer;
drivers/block/drbd/drbd_actlog.c
757
struct drbd_connection *connection = first_peer_device(device)->connection;
drivers/block/drbd/drbd_actlog.c
758
if (connection->agreed_pro_version <= 95 ||
drivers/block/drbd/drbd_debugfs.c
302
struct drbd_connection *connection,
drivers/block/drbd/drbd_debugfs.c
311
list_for_each_entry(req, &connection->transfer_log, tl_requests) {
drivers/block/drbd/drbd_debugfs.c
326
if (&req->tl_requests == &connection->transfer_log)
drivers/block/drbd/drbd_debugfs.c
363
struct drbd_connection *connection;
drivers/block/drbd/drbd_debugfs.c
366
connection = first_connection(resource);
drivers/block/drbd/drbd_debugfs.c
369
if (!connection || !kref_get_unless_zero(&connection->kref))
drivers/block/drbd/drbd_debugfs.c
386
if (connection->data.socket) {
drivers/block/drbd/drbd_debugfs.c
388
struct tcp_sock *tp = tcp_sk(connection->data.socket->sk);
drivers/block/drbd/drbd_debugfs.c
407
seq_print_resource_transfer_log_summary(m, resource, connection, jif);
drivers/block/drbd/drbd_debugfs.c
413
kref_put(&connection->kref, drbd_destroy_connection);
drivers/block/drbd/drbd_debugfs.c
539
struct drbd_connection *connection = m->private;
drivers/block/drbd/drbd_debugfs.c
546
seq_print_timing_details(m, "worker", connection->w_cb_nr, connection->w_timing_details, jif);
drivers/block/drbd/drbd_debugfs.c
547
seq_print_timing_details(m, "receiver", connection->r_cb_nr, connection->r_timing_details, jif);
drivers/block/drbd/drbd_debugfs.c
553
struct drbd_connection *connection = inode->i_private;
drivers/block/drbd/drbd_debugfs.c
554
return drbd_single_open(file, callback_history_show, connection,
drivers/block/drbd/drbd_debugfs.c
555
&connection->kref, drbd_destroy_connection);
drivers/block/drbd/drbd_debugfs.c
560
struct drbd_connection *connection = inode->i_private;
drivers/block/drbd/drbd_debugfs.c
561
kref_put(&connection->kref, drbd_destroy_connection);
drivers/block/drbd/drbd_debugfs.c
575
struct drbd_connection *connection = m->private;
drivers/block/drbd/drbd_debugfs.c
582
spin_lock_irq(&connection->resource->req_lock);
drivers/block/drbd/drbd_debugfs.c
583
r1 = connection->req_next;
drivers/block/drbd/drbd_debugfs.c
586
r2 = connection->req_ack_pending;
drivers/block/drbd/drbd_debugfs.c
591
r2 = connection->req_not_net_done;
drivers/block/drbd/drbd_debugfs.c
594
spin_unlock_irq(&connection->resource->req_lock);
drivers/block/drbd/drbd_debugfs.c
600
struct drbd_connection *connection = inode->i_private;
drivers/block/drbd/drbd_debugfs.c
601
return drbd_single_open(file, connection_oldest_requests_show, connection,
drivers/block/drbd/drbd_debugfs.c
602
&connection->kref, drbd_destroy_connection);
drivers/block/drbd/drbd_debugfs.c
607
struct drbd_connection *connection = inode->i_private;
drivers/block/drbd/drbd_debugfs.c
608
kref_put(&connection->kref, drbd_destroy_connection);
drivers/block/drbd/drbd_debugfs.c
620
void drbd_debugfs_connection_add(struct drbd_connection *connection)
drivers/block/drbd/drbd_debugfs.c
622
struct dentry *conns_dir = connection->resource->debugfs_res_connections;
drivers/block/drbd/drbd_debugfs.c
629
connection->debugfs_conn = dentry;
drivers/block/drbd/drbd_debugfs.c
632
connection->debugfs_conn, connection,
drivers/block/drbd/drbd_debugfs.c
634
connection->debugfs_conn_callback_history = dentry;
drivers/block/drbd/drbd_debugfs.c
637
connection->debugfs_conn, connection,
drivers/block/drbd/drbd_debugfs.c
639
connection->debugfs_conn_oldest_requests = dentry;
drivers/block/drbd/drbd_debugfs.c
642
void drbd_debugfs_connection_cleanup(struct drbd_connection *connection)
drivers/block/drbd/drbd_debugfs.c
644
drbd_debugfs_remove(&connection->debugfs_conn_callback_history);
drivers/block/drbd/drbd_debugfs.c
645
drbd_debugfs_remove(&connection->debugfs_conn_oldest_requests);
drivers/block/drbd/drbd_debugfs.c
646
drbd_debugfs_remove(&connection->debugfs_conn);
drivers/block/drbd/drbd_debugfs.c
829
struct dentry *conn_dir = peer_device->connection->debugfs_conn;
drivers/block/drbd/drbd_debugfs.h
15
void drbd_debugfs_connection_add(struct drbd_connection *connection);
drivers/block/drbd/drbd_debugfs.h
16
void drbd_debugfs_connection_cleanup(struct drbd_connection *connection);
drivers/block/drbd/drbd_debugfs.h
31
static inline void drbd_debugfs_connection_add(struct drbd_connection *connection) { }
drivers/block/drbd/drbd_debugfs.h
32
static inline void drbd_debugfs_connection_cleanup(struct drbd_connection *connection) { }
drivers/block/drbd/drbd_int.h
1010
extern void drbd_free_sock(struct drbd_connection *connection);
drivers/block/drbd/drbd_int.h
1011
extern int drbd_send(struct drbd_connection *connection, struct socket *sock,
drivers/block/drbd/drbd_int.h
1016
extern int __drbd_send_protocol(struct drbd_connection *connection, enum drbd_packet cmd);
drivers/block/drbd/drbd_int.h
1017
extern int drbd_send_protocol(struct drbd_connection *connection);
drivers/block/drbd/drbd_int.h
1025
extern void drbd_send_b_ack(struct drbd_connection *connection, u32 barrier_nr,
drivers/block/drbd/drbd_int.h
1048
extern void conn_send_sr_reply(struct drbd_connection *connection, enum drbd_state_rv retcode);
drivers/block/drbd/drbd_int.h
1055
extern void conn_md_sync(struct drbd_connection *connection);
drivers/block/drbd/drbd_int.h
1367
extern void conn_free_crypto(struct drbd_connection *connection);
drivers/block/drbd/drbd_int.h
1399
extern bool conn_try_outdate_peer(struct drbd_connection *connection);
drivers/block/drbd/drbd_int.h
1400
extern void conn_try_outdate_peer_async(struct drbd_connection *connection);
drivers/block/drbd/drbd_int.h
1401
extern enum drbd_peer_state conn_khelper(struct drbd_connection *connection, char *cmd);
drivers/block/drbd/drbd_int.h
152
extern unsigned int drbd_header_size(struct drbd_connection *connection);
drivers/block/drbd/drbd_int.h
169
struct drbd_connection *connection;
drivers/block/drbd/drbd_int.h
1815
struct drbd_connection *connection =
drivers/block/drbd/drbd_int.h
1816
first_peer_device(device)->connection;
drivers/block/drbd/drbd_int.h
1817
struct drbd_work_queue *q = &connection->sender_work;
drivers/block/drbd/drbd_int.h
1818
if (!test_and_set_bit(DEVICE_WORK_PENDING, &connection->flags))
drivers/block/drbd/drbd_int.h
1829
static inline void wake_ack_receiver(struct drbd_connection *connection)
drivers/block/drbd/drbd_int.h
1831
struct task_struct *task = connection->ack_receiver.task;
drivers/block/drbd/drbd_int.h
1832
if (task && get_t_state(&connection->ack_receiver) == RUNNING)
drivers/block/drbd/drbd_int.h
1836
static inline void request_ping(struct drbd_connection *connection)
drivers/block/drbd/drbd_int.h
1838
set_bit(SEND_PING, &connection->flags);
drivers/block/drbd/drbd_int.h
1839
wake_ack_receiver(connection);
drivers/block/drbd/drbd_int.h
1851
extern int drbd_send_ping(struct drbd_connection *connection);
drivers/block/drbd/drbd_int.h
1852
extern int drbd_send_ping_ack(struct drbd_connection *connection);
drivers/block/drbd/drbd_int.h
2036
nc = rcu_dereference(first_peer_device(device)->connection->net_conf);
drivers/block/drbd/drbd_int.h
2079
if (first_peer_device(device)->connection->agreed_pro_version < 96)
drivers/block/drbd/drbd_int.h
2182
connection->sender_work,
drivers/block/drbd/drbd_int.h
2195
return first_peer_device(device)->connection->agreed_pro_version >= 97 &&
drivers/block/drbd/drbd_int.h
2196
first_peer_device(device)->connection->agreed_pro_version != 100;
drivers/block/drbd/drbd_int.h
292
struct drbd_connection *connection;
drivers/block/drbd/drbd_int.h
707
static inline bool has_net_conf(struct drbd_connection *connection)
drivers/block/drbd/drbd_int.h
712
has_net_conf = rcu_dereference(connection->net_conf);
drivers/block/drbd/drbd_int.h
740
struct drbd_connection *connection;
drivers/block/drbd/drbd_int.h
937
struct drbd_connection *connection;
drivers/block/drbd/drbd_int.h
951
conn_peer_device(struct drbd_connection *connection, int volume_number)
drivers/block/drbd/drbd_int.h
953
return idr_find(&connection->peer_devices, volume_number);
drivers/block/drbd/drbd_int.h
965
#define for_each_connection(connection, resource) \
drivers/block/drbd/drbd_int.h
966
list_for_each_entry(connection, &resource->connections, connections)
drivers/block/drbd/drbd_int.h
968
#define for_each_connection_rcu(connection, resource) \
drivers/block/drbd/drbd_int.h
969
list_for_each_entry_rcu(connection, &resource->connections, connections)
drivers/block/drbd/drbd_int.h
971
#define for_each_connection_safe(connection, tmp, resource) \
drivers/block/drbd/drbd_int.h
972
list_for_each_entry_safe(connection, tmp, &resource->connections, connections)
drivers/block/drbd/drbd_main.c
1012
sock = &peer_device->connection->data;
drivers/block/drbd/drbd_main.c
1021
int conn_send_state_req(struct drbd_connection *connection, union drbd_state mask, union drbd_state val)
drivers/block/drbd/drbd_main.c
1027
cmd = connection->agreed_pro_version < 100 ? P_STATE_CHG_REQ : P_CONN_ST_CHG_REQ;
drivers/block/drbd/drbd_main.c
1028
sock = &connection->data;
drivers/block/drbd/drbd_main.c
1029
p = conn_prepare_command(connection, sock);
drivers/block/drbd/drbd_main.c
1034
return conn_send_command(connection, sock, cmd, sizeof(*p), NULL, 0);
drivers/block/drbd/drbd_main.c
1042
sock = &peer_device->connection->meta;
drivers/block/drbd/drbd_main.c
1050
void conn_send_sr_reply(struct drbd_connection *connection, enum drbd_state_rv retcode)
drivers/block/drbd/drbd_main.c
1054
enum drbd_packet cmd = connection->agreed_pro_version < 100 ? P_STATE_CHG_REPLY : P_CONN_ST_CHG_REPLY;
drivers/block/drbd/drbd_main.c
1056
sock = &connection->meta;
drivers/block/drbd/drbd_main.c
1057
p = conn_prepare_command(connection, sock);
drivers/block/drbd/drbd_main.c
1060
conn_send_command(connection, sock, cmd, sizeof(*p), NULL, 0);
drivers/block/drbd/drbd_main.c
1096
use_rle = rcu_dereference(first_peer_device(device)->connection->net_conf)->use_rle;
drivers/block/drbd/drbd_main.c
1098
if (!use_rle || first_peer_device(device)->connection->agreed_pro_version < 90)
drivers/block/drbd/drbd_main.c
1188
struct drbd_socket *sock = &peer_device->connection->data;
drivers/block/drbd/drbd_main.c
1189
unsigned int header_size = drbd_header_size(peer_device->connection);
drivers/block/drbd/drbd_main.c
1200
err = __send_command(peer_device->connection, device->vnr, sock,
drivers/block/drbd/drbd_main.c
1221
err = __send_command(peer_device->connection, device->vnr, sock, P_BITMAP,
drivers/block/drbd/drbd_main.c
1283
struct drbd_socket *sock = &peer_device->connection->data;
drivers/block/drbd/drbd_main.c
1293
void drbd_send_b_ack(struct drbd_connection *connection, u32 barrier_nr, u32 set_size)
drivers/block/drbd/drbd_main.c
1298
if (connection->cstate < C_WF_REPORT_PARAMS)
drivers/block/drbd/drbd_main.c
1301
sock = &connection->meta;
drivers/block/drbd/drbd_main.c
1302
p = conn_prepare_command(connection, sock);
drivers/block/drbd/drbd_main.c
1307
conn_send_command(connection, sock, P_BARRIER_ACK, sizeof(*p), NULL, 0);
drivers/block/drbd/drbd_main.c
1327
sock = &peer_device->connection->meta;
drivers/block/drbd/drbd_main.c
1344
if (peer_device->connection->peer_integrity_tfm)
drivers/block/drbd/drbd_main.c
1345
data_size -= crypto_shash_digestsize(peer_device->connection->peer_integrity_tfm);
drivers/block/drbd/drbd_main.c
1388
sock = &peer_device->connection->data;
drivers/block/drbd/drbd_main.c
1404
sock = &peer_device->connection->data;
drivers/block/drbd/drbd_main.c
1422
sock = &peer_device->connection->data;
drivers/block/drbd/drbd_main.c
1437
sock = &peer_device->connection->data;
drivers/block/drbd/drbd_main.c
1451
static int we_should_drop_the_connection(struct drbd_connection *connection, struct socket *sock)
drivers/block/drbd/drbd_main.c
1456
drop_it = connection->meta.socket == sock
drivers/block/drbd/drbd_main.c
1457
|| !connection->ack_receiver.task
drivers/block/drbd/drbd_main.c
1458
|| get_t_state(&connection->ack_receiver) != RUNNING
drivers/block/drbd/drbd_main.c
1459
|| connection->cstate < C_WF_REPORT_PARAMS;
drivers/block/drbd/drbd_main.c
1464
drop_it = !--connection->ko_count;
drivers/block/drbd/drbd_main.c
1466
drbd_err(connection, "[%s/%d] sock_sendmsg time expired, ko = %u\n",
drivers/block/drbd/drbd_main.c
1467
current->comm, current->pid, connection->ko_count);
drivers/block/drbd/drbd_main.c
1468
request_ping(connection);
drivers/block/drbd/drbd_main.c
1474
static void drbd_update_congested(struct drbd_connection *connection)
drivers/block/drbd/drbd_main.c
1476
struct sock *sk = connection->data.socket->sk;
drivers/block/drbd/drbd_main.c
1478
set_bit(NET_CONGESTED, &connection->flags);
drivers/block/drbd/drbd_main.c
1509
socket = peer_device->connection->data.socket;
drivers/block/drbd/drbd_main.c
1511
err = drbd_send_all(peer_device->connection, socket, addr, size, msg_flags);
drivers/block/drbd/drbd_main.c
1521
struct socket *socket = peer_device->connection->data.socket;
drivers/block/drbd/drbd_main.c
1536
drbd_update_congested(peer_device->connection);
drivers/block/drbd/drbd_main.c
1546
if (we_should_drop_the_connection(peer_device->connection, socket))
drivers/block/drbd/drbd_main.c
1559
clear_bit(NET_CONGESTED, &peer_device->connection->flags);
drivers/block/drbd/drbd_main.c
160
void tl_release(struct drbd_connection *connection, unsigned int barrier_nr,
drivers/block/drbd/drbd_main.c
1631
static u32 bio_flags_to_wire(struct drbd_connection *connection,
drivers/block/drbd/drbd_main.c
1634
if (connection->agreed_pro_version >= 95)
drivers/block/drbd/drbd_main.c
1640
((connection->agreed_features & DRBD_FF_WZEROES) ?
drivers/block/drbd/drbd_main.c
1661
sock = &peer_device->connection->data;
drivers/block/drbd/drbd_main.c
1663
digest_size = peer_device->connection->integrity_tfm ?
drivers/block/drbd/drbd_main.c
1664
crypto_shash_digestsize(peer_device->connection->integrity_tfm) : 0;
drivers/block/drbd/drbd_main.c
1671
dp_flags = bio_flags_to_wire(peer_device->connection, req->master_bio);
drivers/block/drbd/drbd_main.c
1675
if (peer_device->connection->agreed_pro_version >= 100) {
drivers/block/drbd/drbd_main.c
168
spin_lock_irq(&connection->resource->req_lock);
drivers/block/drbd/drbd_main.c
1690
err = __send_command(peer_device->connection, device->vnr, sock, cmd, sizeof(*t), NULL, 0);
drivers/block/drbd/drbd_main.c
1698
drbd_csum_bio(peer_device->connection->integrity_tfm, req->master_bio, digest_out);
drivers/block/drbd/drbd_main.c
1699
err = __send_command(peer_device->connection, device->vnr, sock, P_DATA,
drivers/block/drbd/drbd_main.c
172
list_for_each_entry(r, &connection->transfer_log, tl_requests) {
drivers/block/drbd/drbd_main.c
1723
drbd_csum_bio(peer_device->connection->integrity_tfm, req->master_bio, digest);
drivers/block/drbd/drbd_main.c
1752
sock = &peer_device->connection->data;
drivers/block/drbd/drbd_main.c
1755
digest_size = peer_device->connection->integrity_tfm ?
drivers/block/drbd/drbd_main.c
1756
crypto_shash_digestsize(peer_device->connection->integrity_tfm) : 0;
drivers/block/drbd/drbd_main.c
1765
drbd_csum_ee(peer_device->connection->integrity_tfm, peer_req, p + 1);
drivers/block/drbd/drbd_main.c
1766
err = __send_command(peer_device->connection, device->vnr, sock, cmd, sizeof(*p) + digest_size, NULL, peer_req->i.size);
drivers/block/drbd/drbd_main.c
1779
sock = &peer_device->connection->data;
drivers/block/drbd/drbd_main.c
1804
int drbd_send(struct drbd_connection *connection, struct socket *sock,
drivers/block/drbd/drbd_main.c
1818
if (sock == connection->data.socket) {
drivers/block/drbd/drbd_main.c
1820
connection->ko_count = rcu_dereference(connection->net_conf)->ko_count;
drivers/block/drbd/drbd_main.c
1822
drbd_update_congested(connection);
drivers/block/drbd/drbd_main.c
1827
if (we_should_drop_the_connection(connection, sock))
drivers/block/drbd/drbd_main.c
1841
if (sock == connection->data.socket)
drivers/block/drbd/drbd_main.c
1842
clear_bit(NET_CONGESTED, &connection->flags);
drivers/block/drbd/drbd_main.c
1846
drbd_err(connection, "%s_sendmsg returned %d\n",
drivers/block/drbd/drbd_main.c
1847
sock == connection->meta.socket ? "msock" : "sock",
drivers/block/drbd/drbd_main.c
1849
conn_request_state(connection, NS(conn, C_BROKEN_PIPE), CS_HARD);
drivers/block/drbd/drbd_main.c
1851
conn_request_state(connection, NS(conn, C_TIMEOUT), CS_HARD);
drivers/block/drbd/drbd_main.c
1862
int drbd_send_all(struct drbd_connection *connection, struct socket *sock, void *buffer,
drivers/block/drbd/drbd_main.c
1867
err = drbd_send(connection, sock, buffer, size, msg_flags);
drivers/block/drbd/drbd_main.c
1917
&first_peer_device(device)->connection->sender_work,
drivers/block/drbd/drbd_main.c
197
drbd_err(connection, "BAD! BarrierAck #%u received, but no epoch in tl!?\n",
drivers/block/drbd/drbd_main.c
2007
if (first_peer_device(device)->connection->receiver.t_state != NONE)
drivers/block/drbd/drbd_main.c
2009
first_peer_device(device)->connection->receiver.t_state);
drivers/block/drbd/drbd_main.c
202
drbd_err(connection, "BAD! BarrierAck #%u received, expected #%u!\n",
drivers/block/drbd/drbd_main.c
2027
D_ASSERT(device, first_peer_device(device)->connection->net_conf == NULL);
drivers/block/drbd/drbd_main.c
2046
D_ASSERT(device, list_empty(&first_peer_device(device)->connection->sender_work.q));
drivers/block/drbd/drbd_main.c
208
drbd_err(connection, "BAD! BarrierAck #%u received with n_writes=%u, expected n_writes=%u!\n",
drivers/block/drbd/drbd_main.c
217
list_for_each_entry(req, &connection->transfer_log, tl_requests)
drivers/block/drbd/drbd_main.c
2195
kref_put(&peer_device->connection->kref, drbd_destroy_connection);
drivers/block/drbd/drbd_main.c
222
req = list_prepare_entry(tmp, &connection->transfer_log, tl_requests);
drivers/block/drbd/drbd_main.c
223
list_for_each_entry_safe_from(req, r, &connection->transfer_log, tl_requests) {
drivers/block/drbd/drbd_main.c
227
peer_device = conn_peer_device(connection, req->device->vnr);
drivers/block/drbd/drbd_main.c
2296
struct drbd_connection *connection, *tmp;
drivers/block/drbd/drbd_main.c
2298
for_each_connection_safe(connection, tmp, resource) {
drivers/block/drbd/drbd_main.c
2299
list_del(&connection->connections);
drivers/block/drbd/drbd_main.c
230
spin_unlock_irq(&connection->resource->req_lock);
drivers/block/drbd/drbd_main.c
2300
drbd_debugfs_connection_cleanup(connection);
drivers/block/drbd/drbd_main.c
2301
kref_put(&connection->kref, drbd_destroy_connection);
drivers/block/drbd/drbd_main.c
235
spin_unlock_irq(&connection->resource->req_lock);
drivers/block/drbd/drbd_main.c
236
conn_request_state(connection, NS(conn, C_PROTOCOL_ERROR), CS_HARD);
drivers/block/drbd/drbd_main.c
2403
struct drbd_connection *connection;
drivers/block/drbd/drbd_main.c
2407
for_each_connection_rcu(connection, resource) {
drivers/block/drbd/drbd_main.c
2408
if (connection->my_addr_len == my_addr_len &&
drivers/block/drbd/drbd_main.c
2409
connection->peer_addr_len == peer_addr_len &&
drivers/block/drbd/drbd_main.c
2410
!memcmp(&connection->my_addr, my_addr, my_addr_len) &&
drivers/block/drbd/drbd_main.c
2411
!memcmp(&connection->peer_addr, peer_addr, peer_addr_len)) {
drivers/block/drbd/drbd_main.c
2412
kref_get(&connection->kref);
drivers/block/drbd/drbd_main.c
2417
connection = NULL;
drivers/block/drbd/drbd_main.c
2420
return connection;
drivers/block/drbd/drbd_main.c
2440
void conn_free_crypto(struct drbd_connection *connection)
drivers/block/drbd/drbd_main.c
2442
drbd_free_sock(connection);
drivers/block/drbd/drbd_main.c
2444
crypto_free_shash(connection->csums_tfm);
drivers/block/drbd/drbd_main.c
2445
crypto_free_shash(connection->verify_tfm);
drivers/block/drbd/drbd_main.c
2446
crypto_free_shash(connection->cram_hmac_tfm);
drivers/block/drbd/drbd_main.c
2447
crypto_free_shash(connection->integrity_tfm);
drivers/block/drbd/drbd_main.c
2448
crypto_free_shash(connection->peer_integrity_tfm);
drivers/block/drbd/drbd_main.c
2449
kfree(connection->int_dig_in);
drivers/block/drbd/drbd_main.c
2450
kfree(connection->int_dig_vv);
drivers/block/drbd/drbd_main.c
2452
connection->csums_tfm = NULL;
drivers/block/drbd/drbd_main.c
2453
connection->verify_tfm = NULL;
drivers/block/drbd/drbd_main.c
2454
connection->cram_hmac_tfm = NULL;
drivers/block/drbd/drbd_main.c
2455
connection->integrity_tfm = NULL;
drivers/block/drbd/drbd_main.c
2456
connection->peer_integrity_tfm = NULL;
drivers/block/drbd/drbd_main.c
2457
connection->int_dig_in = NULL;
drivers/block/drbd/drbd_main.c
2458
connection->int_dig_vv = NULL;
drivers/block/drbd/drbd_main.c
2463
struct drbd_connection *connection;
drivers/block/drbd/drbd_main.c
249
void _tl_restart(struct drbd_connection *connection, enum drbd_req_event what)
drivers/block/drbd/drbd_main.c
2499
for_each_connection_rcu(connection, resource) {
drivers/block/drbd/drbd_main.c
2500
connection->receiver.reset_cpu_mask = 1;
drivers/block/drbd/drbd_main.c
2501
connection->ack_receiver.reset_cpu_mask = 1;
drivers/block/drbd/drbd_main.c
2502
connection->worker.reset_cpu_mask = 1;
drivers/block/drbd/drbd_main.c
254
list_for_each_entry_safe(req, r, &connection->transfer_log, tl_requests) {
drivers/block/drbd/drbd_main.c
2548
struct drbd_connection *connection;
drivers/block/drbd/drbd_main.c
255
peer_device = conn_peer_device(connection, req->device->vnr);
drivers/block/drbd/drbd_main.c
2550
connection = kzalloc_obj(struct drbd_connection);
drivers/block/drbd/drbd_main.c
2551
if (!connection)
drivers/block/drbd/drbd_main.c
2554
if (drbd_alloc_socket(&connection->data))
drivers/block/drbd/drbd_main.c
2556
if (drbd_alloc_socket(&connection->meta))
drivers/block/drbd/drbd_main.c
2559
connection->current_epoch = kzalloc_obj(struct drbd_epoch);
drivers/block/drbd/drbd_main.c
2560
if (!connection->current_epoch)
drivers/block/drbd/drbd_main.c
2563
INIT_LIST_HEAD(&connection->transfer_log);
drivers/block/drbd/drbd_main.c
2565
INIT_LIST_HEAD(&connection->current_epoch->list);
drivers/block/drbd/drbd_main.c
2566
connection->epochs = 1;
drivers/block/drbd/drbd_main.c
2567
spin_lock_init(&connection->epoch_lock);
drivers/block/drbd/drbd_main.c
2569
connection->send.seen_any_write_yet = false;
drivers/block/drbd/drbd_main.c
2570
connection->send.current_epoch_nr = 0;
drivers/block/drbd/drbd_main.c
2571
connection->send.current_epoch_writes = 0;
drivers/block/drbd/drbd_main.c
2577
connection->cstate = C_STANDALONE;
drivers/block/drbd/drbd_main.c
2578
mutex_init(&connection->cstate_mutex);
drivers/block/drbd/drbd_main.c
2579
init_waitqueue_head(&connection->ping_wait);
drivers/block/drbd/drbd_main.c
2580
idr_init(&connection->peer_devices);
drivers/block/drbd/drbd_main.c
2582
drbd_init_workqueue(&connection->sender_work);
drivers/block/drbd/drbd_main.c
2583
mutex_init(&connection->data.mutex);
drivers/block/drbd/drbd_main.c
2584
mutex_init(&connection->meta.mutex);
drivers/block/drbd/drbd_main.c
2586
drbd_thread_init(resource, &connection->receiver, drbd_receiver, "receiver");
drivers/block/drbd/drbd_main.c
2587
connection->receiver.connection = connection;
drivers/block/drbd/drbd_main.c
2588
drbd_thread_init(resource, &connection->worker, drbd_worker, "worker");
drivers/block/drbd/drbd_main.c
2589
connection->worker.connection = connection;
drivers/block/drbd/drbd_main.c
2590
drbd_thread_init(resource, &connection->ack_receiver, drbd_ack_receiver, "ack_recv");
drivers/block/drbd/drbd_main.c
2591
connection->ack_receiver.connection = connection;
drivers/block/drbd/drbd_main.c
2593
kref_init(&connection->kref);
drivers/block/drbd/drbd_main.c
2595
connection->resource = resource;
drivers/block/drbd/drbd_main.c
260
void tl_restart(struct drbd_connection *connection, enum drbd_req_event what)
drivers/block/drbd/drbd_main.c
2601
list_add_tail_rcu(&connection->connections, &resource->connections);
drivers/block/drbd/drbd_main.c
2602
drbd_debugfs_connection_add(connection);
drivers/block/drbd/drbd_main.c
2603
return connection;
drivers/block/drbd/drbd_main.c
2609
kfree(connection->current_epoch);
drivers/block/drbd/drbd_main.c
2610
drbd_free_socket(&connection->meta);
drivers/block/drbd/drbd_main.c
2611
drbd_free_socket(&connection->data);
drivers/block/drbd/drbd_main.c
2612
kfree(connection);
drivers/block/drbd/drbd_main.c
2618
struct drbd_connection *connection = container_of(kref, struct drbd_connection, kref);
drivers/block/drbd/drbd_main.c
2619
struct drbd_resource *resource = connection->resource;
drivers/block/drbd/drbd_main.c
262
spin_lock_irq(&connection->resource->req_lock);
drivers/block/drbd/drbd_main.c
2621
if (atomic_read(&connection->current_epoch->epoch_size) != 0)
drivers/block/drbd/drbd_main.c
2622
drbd_err(connection, "epoch_size:%d\n", atomic_read(&connection->current_epoch->epoch_size));
drivers/block/drbd/drbd_main.c
2623
kfree(connection->current_epoch);
drivers/block/drbd/drbd_main.c
2625
idr_destroy(&connection->peer_devices);
drivers/block/drbd/drbd_main.c
2627
drbd_free_socket(&connection->meta);
drivers/block/drbd/drbd_main.c
2628
drbd_free_socket(&connection->data);
drivers/block/drbd/drbd_main.c
2629
kfree(connection->int_dig_in);
drivers/block/drbd/drbd_main.c
263
_tl_restart(connection, what);
drivers/block/drbd/drbd_main.c
2630
kfree(connection->int_dig_vv);
drivers/block/drbd/drbd_main.c
2631
kfree(connection);
drivers/block/drbd/drbd_main.c
264
spin_unlock_irq(&connection->resource->req_lock);
drivers/block/drbd/drbd_main.c
2652
struct drbd_connection *connection, *n;
drivers/block/drbd/drbd_main.c
2731
for_each_connection(connection, resource) {
drivers/block/drbd/drbd_main.c
2735
peer_device->connection = connection;
drivers/block/drbd/drbd_main.c
2741
id = idr_alloc(&connection->peer_devices, peer_device, vnr, vnr + 1, GFP_KERNEL);
drivers/block/drbd/drbd_main.c
2747
kref_get(&connection->kref);
drivers/block/drbd/drbd_main.c
275
void tl_clear(struct drbd_connection *connection)
drivers/block/drbd/drbd_main.c
277
tl_restart(connection, CONNECTION_LOST_WHILE_PENDING);
drivers/block/drbd/drbd_main.c
2775
for_each_connection_safe(connection, n, resource) {
drivers/block/drbd/drbd_main.c
2776
peer_device = idr_remove(&connection->peer_devices, vnr);
drivers/block/drbd/drbd_main.c
2778
kref_put(&connection->kref, drbd_destroy_connection);
drivers/block/drbd/drbd_main.c
2803
struct drbd_connection *connection;
drivers/block/drbd/drbd_main.c
2810
for_each_connection(connection, resource) {
drivers/block/drbd/drbd_main.c
2811
idr_remove(&connection->peer_devices, device->vnr);
drivers/block/drbd/drbd_main.c
286
struct drbd_connection *connection = first_peer_device(device)->connection;
drivers/block/drbd/drbd_main.c
289
spin_lock_irq(&connection->resource->req_lock);
drivers/block/drbd/drbd_main.c
290
list_for_each_entry_safe(req, r, &connection->transfer_log, tl_requests) {
drivers/block/drbd/drbd_main.c
2908
void drbd_free_sock(struct drbd_connection *connection)
drivers/block/drbd/drbd_main.c
2910
if (connection->data.socket)
drivers/block/drbd/drbd_main.c
2911
drbd_free_one_sock(&connection->data);
drivers/block/drbd/drbd_main.c
2912
if (connection->meta.socket)
drivers/block/drbd/drbd_main.c
2913
drbd_free_one_sock(&connection->meta);
drivers/block/drbd/drbd_main.c
2918
void conn_md_sync(struct drbd_connection *connection)
drivers/block/drbd/drbd_main.c
2924
idr_for_each_entry(&connection->peer_devices, peer_device, vnr) {
drivers/block/drbd/drbd_main.c
297
spin_unlock_irq(&connection->resource->req_lock);
drivers/block/drbd/drbd_main.c
345
if (thi->connection)
drivers/block/drbd/drbd_main.c
346
kref_put(&thi->connection->kref, drbd_destroy_connection);
drivers/block/drbd/drbd_main.c
3482
D_ASSERT(device, current == peer_device->connection->worker.task);
drivers/block/drbd/drbd_main.c
3503
drbd_queue_work(&peer_device->connection->sender_work,
drivers/block/drbd/drbd_main.c
3529
D_ASSERT(device, current != first_peer_device(device)->connection->worker.task);
drivers/block/drbd/drbd_main.c
360
thi->connection = NULL;
drivers/block/drbd/drbd_main.c
3658
nc = rcu_dereference(first_peer_device(device)->connection->net_conf);
drivers/block/drbd/drbd_main.c
387
if (thi->connection)
drivers/block/drbd/drbd_main.c
388
kref_get(&thi->connection->kref);
drivers/block/drbd/drbd_main.c
402
if (thi->connection)
drivers/block/drbd/drbd_main.c
403
kref_put(&thi->connection->kref, drbd_destroy_connection);
drivers/block/drbd/drbd_main.c
531
unsigned int drbd_header_size(struct drbd_connection *connection)
drivers/block/drbd/drbd_main.c
533
if (connection->agreed_pro_version >= 100) {
drivers/block/drbd/drbd_main.c
571
static unsigned int prepare_header(struct drbd_connection *connection, int vnr,
drivers/block/drbd/drbd_main.c
574
if (connection->agreed_pro_version >= 100)
drivers/block/drbd/drbd_main.c
576
else if (connection->agreed_pro_version >= 95 &&
drivers/block/drbd/drbd_main.c
583
static void *__conn_prepare_command(struct drbd_connection *connection,
drivers/block/drbd/drbd_main.c
588
return sock->sbuf + drbd_header_size(connection);
drivers/block/drbd/drbd_main.c
591
void *conn_prepare_command(struct drbd_connection *connection, struct drbd_socket *sock)
drivers/block/drbd/drbd_main.c
596
p = __conn_prepare_command(connection, sock);
drivers/block/drbd/drbd_main.c
605
return conn_prepare_command(peer_device->connection, sock);
drivers/block/drbd/drbd_main.c
608
static int __send_command(struct drbd_connection *connection, int vnr,
drivers/block/drbd/drbd_main.c
625
header_size += prepare_header(connection, vnr, sock->sbuf, cmd,
drivers/block/drbd/drbd_main.c
627
err = drbd_send_all(connection, sock->socket, sock->sbuf, header_size,
drivers/block/drbd/drbd_main.c
630
err = drbd_send_all(connection, sock->socket, data, size, 0);
drivers/block/drbd/drbd_main.c
639
static int __conn_send_command(struct drbd_connection *connection, struct drbd_socket *sock,
drivers/block/drbd/drbd_main.c
643
return __send_command(connection, 0, sock, cmd, header_size, data, size);
drivers/block/drbd/drbd_main.c
646
int conn_send_command(struct drbd_connection *connection, struct drbd_socket *sock,
drivers/block/drbd/drbd_main.c
652
err = __conn_send_command(connection, sock, cmd, header_size, data, size);
drivers/block/drbd/drbd_main.c
663
err = __send_command(peer_device->connection, peer_device->device->vnr,
drivers/block/drbd/drbd_main.c
669
int drbd_send_ping(struct drbd_connection *connection)
drivers/block/drbd/drbd_main.c
673
sock = &connection->meta;
drivers/block/drbd/drbd_main.c
674
if (!conn_prepare_command(connection, sock))
drivers/block/drbd/drbd_main.c
676
return conn_send_command(connection, sock, P_PING, 0, NULL, 0);
drivers/block/drbd/drbd_main.c
679
int drbd_send_ping_ack(struct drbd_connection *connection)
drivers/block/drbd/drbd_main.c
683
sock = &connection->meta;
drivers/block/drbd/drbd_main.c
684
if (!conn_prepare_command(connection, sock))
drivers/block/drbd/drbd_main.c
686
return conn_send_command(connection, sock, P_PING_ACK, 0, NULL, 0);
drivers/block/drbd/drbd_main.c
694
const int apv = peer_device->connection->agreed_pro_version;
drivers/block/drbd/drbd_main.c
699
sock = &peer_device->connection->data;
drivers/block/drbd/drbd_main.c
705
nc = rcu_dereference(peer_device->connection->net_conf);
drivers/block/drbd/drbd_main.c
744
int __drbd_send_protocol(struct drbd_connection *connection, enum drbd_packet cmd)
drivers/block/drbd/drbd_main.c
752
sock = &connection->data;
drivers/block/drbd/drbd_main.c
753
p = __conn_prepare_command(connection, sock);
drivers/block/drbd/drbd_main.c
758
nc = rcu_dereference(connection->net_conf);
drivers/block/drbd/drbd_main.c
760
if (nc->tentative && connection->agreed_pro_version < 92) {
drivers/block/drbd/drbd_main.c
762
drbd_err(connection, "--dry-run is not supported by peer");
drivers/block/drbd/drbd_main.c
767
if (connection->agreed_pro_version >= 87) {
drivers/block/drbd/drbd_main.c
784
if (connection->agreed_pro_version >= 87)
drivers/block/drbd/drbd_main.c
788
return __conn_send_command(connection, sock, cmd, size, NULL, 0);
drivers/block/drbd/drbd_main.c
791
int drbd_send_protocol(struct drbd_connection *connection)
drivers/block/drbd/drbd_main.c
795
mutex_lock(&connection->data.mutex);
drivers/block/drbd/drbd_main.c
796
err = __drbd_send_protocol(connection, P_PROTOCOL);
drivers/block/drbd/drbd_main.c
797
mutex_unlock(&connection->data.mutex);
drivers/block/drbd/drbd_main.c
812
sock = &peer_device->connection->data;
drivers/block/drbd/drbd_main.c
826
uuid_flags |= rcu_dereference(peer_device->connection->net_conf)->discard_my_data ? 1 : 0;
drivers/block/drbd/drbd_main.c
882
sock = &peer_device->connection->data;
drivers/block/drbd/drbd_main.c
900
sock = &peer_device->connection->data;
drivers/block/drbd/drbd_main.c
906
if (peer_device->connection->agreed_features & DRBD_FF_WSAME)
drivers/block/drbd/drbd_main.c
949
if (peer_device->connection->agreed_pro_version <= 94)
drivers/block/drbd/drbd_main.c
951
else if (peer_device->connection->agreed_pro_version < 100)
drivers/block/drbd/drbd_main.c
976
sock = &peer_device->connection->data;
drivers/block/drbd/drbd_main.c
999
sock = &peer_device->connection->data;
drivers/block/drbd/drbd_nl.c
1201
if (first_peer_device(device)->connection->agreed_pro_version < 94)
drivers/block/drbd/drbd_nl.c
1208
if (first_peer_device(device)->connection->agreed_pro_version == 94)
drivers/block/drbd/drbd_nl.c
1214
if (first_peer_device(device)->connection->agreed_pro_version < 100)
drivers/block/drbd/drbd_nl.c
1219
static unsigned int drbd_max_discard_sectors(struct drbd_connection *connection)
drivers/block/drbd/drbd_nl.c
1223
if (connection->agreed_features & DRBD_FF_WSAME)
drivers/block/drbd/drbd_nl.c
1229
static bool drbd_discard_supported(struct drbd_connection *connection,
drivers/block/drbd/drbd_nl.c
1235
if (connection->cstate >= C_CONNECTED &&
drivers/block/drbd/drbd_nl.c
1236
!(connection->agreed_features & DRBD_FF_TRIM)) {
drivers/block/drbd/drbd_nl.c
1237
drbd_info(connection,
drivers/block/drbd/drbd_nl.c
1262
struct drbd_connection *connection =
drivers/block/drbd/drbd_nl.c
1263
first_peer_device(device)->connection;
drivers/block/drbd/drbd_nl.c
1314
if (drbd_discard_supported(connection, bdev)) {
drivers/block/drbd/drbd_nl.c
1317
drbd_max_discard_sectors(connection);
drivers/block/drbd/drbd_nl.c
1347
if (connection->agreed_features & DRBD_FF_WZEROES)
drivers/block/drbd/drbd_nl.c
1364
static void conn_reconfig_start(struct drbd_connection *connection)
drivers/block/drbd/drbd_nl.c
1366
drbd_thread_start(&connection->worker);
drivers/block/drbd/drbd_nl.c
1367
drbd_flush_workqueue(&connection->sender_work);
drivers/block/drbd/drbd_nl.c
1371
static void conn_reconfig_done(struct drbd_connection *connection)
drivers/block/drbd/drbd_nl.c
1374
spin_lock_irq(&connection->resource->req_lock);
drivers/block/drbd/drbd_nl.c
1375
stop_threads = conn_all_vols_unconf(connection) &&
drivers/block/drbd/drbd_nl.c
1376
connection->cstate == C_STANDALONE;
drivers/block/drbd/drbd_nl.c
1377
spin_unlock_irq(&connection->resource->req_lock);
drivers/block/drbd/drbd_nl.c
1381
drbd_thread_stop(&connection->receiver);
drivers/block/drbd/drbd_nl.c
1382
drbd_thread_stop(&connection->worker);
drivers/block/drbd/drbd_nl.c
1740
struct drbd_connection *connection;
drivers/block/drbd/drbd_nl.c
1763
connection = peer_device->connection;
drivers/block/drbd/drbd_nl.c
1764
conn_reconfig_start(connection);
drivers/block/drbd/drbd_nl.c
1825
nc = rcu_dereference(connection->net_conf);
drivers/block/drbd/drbd_nl.c
1915
drbd_flush_workqueue(&connection->sender_work);
drivers/block/drbd/drbd_nl.c
2132
conn_reconfig_done(connection);
drivers/block/drbd/drbd_nl.c
2143
conn_reconfig_done(connection);
drivers/block/drbd/drbd_nl.c
216
nla_len(adm_ctx->my_addr) > sizeof(adm_ctx->connection->my_addr)) ||
drivers/block/drbd/drbd_nl.c
218
nla_len(adm_ctx->peer_addr) > sizeof(adm_ctx->connection->peer_addr))) {
drivers/block/drbd/drbd_nl.c
2205
static bool conn_resync_running(struct drbd_connection *connection)
drivers/block/drbd/drbd_nl.c
2212
idr_for_each_entry(&connection->peer_devices, peer_device, vnr) {
drivers/block/drbd/drbd_nl.c
2227
static bool conn_ov_running(struct drbd_connection *connection)
drivers/block/drbd/drbd_nl.c
2234
idr_for_each_entry(&connection->peer_devices, peer_device, vnr) {
drivers/block/drbd/drbd_nl.c
2248
_check_net_options(struct drbd_connection *connection, struct net_conf *old_net_conf, struct net_conf *new_net_conf)
drivers/block/drbd/drbd_nl.c
2253
if (old_net_conf && connection->cstate == C_WF_REPORT_PARAMS && connection->agreed_pro_version < 100) {
drivers/block/drbd/drbd_nl.c
2265
conn_highest_role(connection) == R_PRIMARY &&
drivers/block/drbd/drbd_nl.c
2266
conn_highest_peer(connection) == R_PRIMARY)
drivers/block/drbd/drbd_nl.c
2273
idr_for_each_entry(&connection->peer_devices, peer_device, i) {
drivers/block/drbd/drbd_nl.c
2292
check_net_options(struct drbd_connection *connection, struct net_conf *new_net_conf)
drivers/block/drbd/drbd_nl.c
2299
rv = _check_net_options(connection, rcu_dereference(connection->net_conf), new_net_conf);
drivers/block/drbd/drbd_nl.c
2303
idr_for_each_entry(&connection->peer_devices, peer_device, i) {
drivers/block/drbd/drbd_nl.c
2377
struct drbd_connection *connection;
drivers/block/drbd/drbd_nl.c
2390
connection = adm_ctx.connection;
drivers/block/drbd/drbd_nl.c
2399
conn_reconfig_start(connection);
drivers/block/drbd/drbd_nl.c
2401
mutex_lock(&connection->data.mutex);
drivers/block/drbd/drbd_nl.c
2402
mutex_lock(&connection->resource->conf_update);
drivers/block/drbd/drbd_nl.c
2403
old_net_conf = connection->net_conf;
drivers/block/drbd/drbd_nl.c
2422
retcode = check_net_options(connection, new_net_conf);
drivers/block/drbd/drbd_nl.c
2427
rsr = conn_resync_running(connection);
drivers/block/drbd/drbd_nl.c
2434
ovr = conn_ov_running(connection);
drivers/block/drbd/drbd_nl.c
2444
rcu_assign_pointer(connection->net_conf, new_net_conf);
drivers/block/drbd/drbd_nl.c
2447
crypto_free_shash(connection->csums_tfm);
drivers/block/drbd/drbd_nl.c
2448
connection->csums_tfm = crypto.csums_tfm;
drivers/block/drbd/drbd_nl.c
2452
crypto_free_shash(connection->verify_tfm);
drivers/block/drbd/drbd_nl.c
2453
connection->verify_tfm = crypto.verify_tfm;
drivers/block/drbd/drbd_nl.c
2457
crypto_free_shash(connection->integrity_tfm);
drivers/block/drbd/drbd_nl.c
2458
connection->integrity_tfm = crypto.integrity_tfm;
drivers/block/drbd/drbd_nl.c
2459
if (connection->cstate >= C_WF_REPORT_PARAMS && connection->agreed_pro_version >= 100)
drivers/block/drbd/drbd_nl.c
2461
__drbd_send_protocol(connection, P_PROTOCOL_UPDATE);
drivers/block/drbd/drbd_nl.c
2463
crypto_free_shash(connection->cram_hmac_tfm);
drivers/block/drbd/drbd_nl.c
2464
connection->cram_hmac_tfm = crypto.cram_hmac_tfm;
drivers/block/drbd/drbd_nl.c
2466
mutex_unlock(&connection->resource->conf_update);
drivers/block/drbd/drbd_nl.c
2467
mutex_unlock(&connection->data.mutex);
drivers/block/drbd/drbd_nl.c
2470
if (connection->cstate >= C_WF_REPORT_PARAMS) {
drivers/block/drbd/drbd_nl.c
2474
idr_for_each_entry(&connection->peer_devices, peer_device, vnr)
drivers/block/drbd/drbd_nl.c
2481
mutex_unlock(&connection->resource->conf_update);
drivers/block/drbd/drbd_nl.c
2482
mutex_unlock(&connection->data.mutex);
drivers/block/drbd/drbd_nl.c
2486
conn_reconfig_done(connection);
drivers/block/drbd/drbd_nl.c
2495
struct drbd_connection *connection)
drivers/block/drbd/drbd_nl.c
2497
info->conn_connection_state = connection->cstate;
drivers/block/drbd/drbd_nl.c
2498
info->conn_role = conn_highest_peer(connection);
drivers/block/drbd/drbd_nl.c
2524
struct drbd_connection *connection;
drivers/block/drbd/drbd_nl.c
2546
for_each_connection(connection, resource) {
drivers/block/drbd/drbd_nl.c
2547
if (nla_len(adm_ctx.my_addr) == connection->my_addr_len &&
drivers/block/drbd/drbd_nl.c
2548
!memcmp(nla_data(adm_ctx.my_addr), &connection->my_addr,
drivers/block/drbd/drbd_nl.c
2549
connection->my_addr_len)) {
drivers/block/drbd/drbd_nl.c
2554
if (nla_len(adm_ctx.peer_addr) == connection->peer_addr_len &&
drivers/block/drbd/drbd_nl.c
2555
!memcmp(nla_data(adm_ctx.peer_addr), &connection->peer_addr,
drivers/block/drbd/drbd_nl.c
2556
connection->peer_addr_len)) {
drivers/block/drbd/drbd_nl.c
2564
connection = first_connection(adm_ctx.resource);
drivers/block/drbd/drbd_nl.c
2565
conn_reconfig_start(connection);
drivers/block/drbd/drbd_nl.c
2567
if (connection->cstate > C_STANDALONE) {
drivers/block/drbd/drbd_nl.c
258
adm_ctx->connection = conn_get_by_addrs(nla_data(adm_ctx->my_addr),
drivers/block/drbd/drbd_nl.c
2588
retcode = check_net_options(connection, new_net_conf);
drivers/block/drbd/drbd_nl.c
2598
drbd_flush_workqueue(&connection->sender_work);
drivers/block/drbd/drbd_nl.c
2601
old_net_conf = connection->net_conf;
drivers/block/drbd/drbd_nl.c
2607
rcu_assign_pointer(connection->net_conf, new_net_conf);
drivers/block/drbd/drbd_nl.c
2609
conn_free_crypto(connection);
drivers/block/drbd/drbd_nl.c
2610
connection->cram_hmac_tfm = crypto.cram_hmac_tfm;
drivers/block/drbd/drbd_nl.c
2611
connection->integrity_tfm = crypto.integrity_tfm;
drivers/block/drbd/drbd_nl.c
2612
connection->csums_tfm = crypto.csums_tfm;
drivers/block/drbd/drbd_nl.c
2613
connection->verify_tfm = crypto.verify_tfm;
drivers/block/drbd/drbd_nl.c
2615
connection->my_addr_len = nla_len(adm_ctx.my_addr);
drivers/block/drbd/drbd_nl.c
2616
memcpy(&connection->my_addr, nla_data(adm_ctx.my_addr), connection->my_addr_len);
drivers/block/drbd/drbd_nl.c
2617
connection->peer_addr_len = nla_len(adm_ctx.peer_addr);
drivers/block/drbd/drbd_nl.c
2618
memcpy(&connection->peer_addr, nla_data(adm_ctx.peer_addr), connection->peer_addr_len);
drivers/block/drbd/drbd_nl.c
262
if (!adm_ctx->connection) {
drivers/block/drbd/drbd_nl.c
2620
idr_for_each_entry(&connection->peer_devices, peer_device, i) {
drivers/block/drbd/drbd_nl.c
2624
connection_to_info(&connection_info, connection);
drivers/block/drbd/drbd_nl.c
2627
notify_connection_state(NULL, 0, connection, &connection_info, NOTIFY_CREATE | flags);
drivers/block/drbd/drbd_nl.c
2628
idr_for_each_entry(&connection->peer_devices, peer_device, i) {
drivers/block/drbd/drbd_nl.c
2639
idr_for_each_entry(&connection->peer_devices, peer_device, i) {
drivers/block/drbd/drbd_nl.c
2646
rv = conn_request_state(connection, NS(conn, C_UNCONNECTED), CS_VERBOSE);
drivers/block/drbd/drbd_nl.c
2648
conn_reconfig_done(connection);
drivers/block/drbd/drbd_nl.c
2657
conn_reconfig_done(connection);
drivers/block/drbd/drbd_nl.c
2664
static enum drbd_state_rv conn_try_disconnect(struct drbd_connection *connection, bool force)
drivers/block/drbd/drbd_nl.c
2670
rv = conn_request_state(connection, NS(conn, C_DISCONNECTING),
drivers/block/drbd/drbd_nl.c
2680
rv = conn_request_state(connection, NS2(conn, C_DISCONNECTING, pdsk, D_OUTDATED), 0);
drivers/block/drbd/drbd_nl.c
2683
rv = conn_request_state(connection, NS(conn, C_DISCONNECTING), CS_VERBOSE);
drivers/block/drbd/drbd_nl.c
2687
spin_lock_irq(&connection->resource->req_lock);
drivers/block/drbd/drbd_nl.c
2688
cstate = connection->cstate;
drivers/block/drbd/drbd_nl.c
2689
spin_unlock_irq(&connection->resource->req_lock);
drivers/block/drbd/drbd_nl.c
2693
rv = conn_request_state(connection, NS2(conn, C_DISCONNECTING,
drivers/block/drbd/drbd_nl.c
2696
rv = conn_request_state(connection, NS(conn, C_DISCONNECTING),
drivers/block/drbd/drbd_nl.c
2710
drbd_thread_stop(&connection->receiver);
drivers/block/drbd/drbd_nl.c
2718
rv2 = conn_request_state(connection, NS(conn, C_STANDALONE),
drivers/block/drbd/drbd_nl.c
2721
drbd_err(connection,
drivers/block/drbd/drbd_nl.c
2734
struct drbd_connection *connection;
drivers/block/drbd/drbd_nl.c
2745
connection = adm_ctx.connection;
drivers/block/drbd/drbd_nl.c
2757
rv = conn_try_disconnect(connection, parms.force_disconnect);
drivers/block/drbd/drbd_nl.c
2777
iass = test_bit(RESOLVE_CONFLICTS, &first_peer_device(device)->connection->flags);
drivers/block/drbd/drbd_nl.c
2834
if (rs.no_resync && first_peer_device(device)->connection->agreed_pro_version < 93) {
drivers/block/drbd/drbd_nl.c
290
: adm_ctx->connection ? adm_ctx->connection->resource : NULL;
drivers/block/drbd/drbd_nl.c
2984
drbd_flush_workqueue(&first_peer_device(device)->connection->sender_work);
drivers/block/drbd/drbd_nl.c
3062
drbd_flush_workqueue(&first_peer_device(device)->connection->sender_work);
drivers/block/drbd/drbd_nl.c
310
if (adm_ctx->connection) {
drivers/block/drbd/drbd_nl.c
311
kref_put(&adm_ctx->connection->kref, &drbd_destroy_connection);
drivers/block/drbd/drbd_nl.c
312
adm_ctx->connection = NULL;
drivers/block/drbd/drbd_nl.c
3186
tl_clear(first_peer_device(device)->connection);
drivers/block/drbd/drbd_nl.c
3188
tl_restart(first_peer_device(device)->connection, FAIL_FROZEN_DISK_IO);
drivers/block/drbd/drbd_nl.c
3204
struct drbd_connection *connection,
drivers/block/drbd/drbd_nl.c
3216
if (connection) {
drivers/block/drbd/drbd_nl.c
3217
if (connection->my_addr_len &&
drivers/block/drbd/drbd_nl.c
3218
nla_put(skb, T_ctx_my_addr, connection->my_addr_len, &connection->my_addr))
drivers/block/drbd/drbd_nl.c
3220
if (connection->peer_addr_len &&
drivers/block/drbd/drbd_nl.c
3221
nla_put(skb, T_ctx_peer_addr, connection->peer_addr_len, &connection->peer_addr))
drivers/block/drbd/drbd_nl.c
327
static void setup_khelper_env(struct drbd_connection *connection, char **envp)
drivers/block/drbd/drbd_nl.c
332
if (connection->my_addr_len == 0 || connection->peer_addr_len == 0)
drivers/block/drbd/drbd_nl.c
335
switch (((struct sockaddr *)&connection->peer_addr)->sa_family) {
drivers/block/drbd/drbd_nl.c
339
&((struct sockaddr_in6 *)&connection->peer_addr)->sin6_addr);
drivers/block/drbd/drbd_nl.c
344
&((struct sockaddr_in *)&connection->peer_addr)->sin_addr);
drivers/block/drbd/drbd_nl.c
3457
struct drbd_connection *connection;
drivers/block/drbd/drbd_nl.c
349
&((struct sockaddr_in *)&connection->peer_addr)->sin_addr);
drivers/block/drbd/drbd_nl.c
3490
for_each_connection_rcu(connection, resource)
drivers/block/drbd/drbd_nl.c
3491
if (connection == (struct drbd_connection *)cb->args[2])
drivers/block/drbd/drbd_nl.c
3496
connection = list_entry(&resource->connections, struct drbd_connection, connections);
drivers/block/drbd/drbd_nl.c
3499
list_for_each_entry_continue_rcu(connection, &resource->connections, connections) {
drivers/block/drbd/drbd_nl.c
3500
if (!has_net_conf(connection))
drivers/block/drbd/drbd_nl.c
3540
err = nla_put_drbd_cfg_context(skb, resource, connection, NULL);
drivers/block/drbd/drbd_nl.c
3543
net_conf = rcu_dereference(connection->net_conf);
drivers/block/drbd/drbd_nl.c
3549
connection_to_info(&connection_info, connection);
drivers/block/drbd/drbd_nl.c
3553
connection_statistics.conn_congested = test_bit(NET_CONGESTED, &connection->flags);
drivers/block/drbd/drbd_nl.c
3557
cb->args[2] = (long)connection;
drivers/block/drbd/drbd_nl.c
364
struct drbd_connection *connection = first_peer_device(device)->connection;
drivers/block/drbd/drbd_nl.c
3663
if (!has_net_conf(peer_device->connection))
drivers/block/drbd/drbd_nl.c
368
if (current == connection->worker.task)
drivers/block/drbd/drbd_nl.c
3684
err = nla_put_drbd_cfg_context(skb, device->resource, peer_device->connection, device);
drivers/block/drbd/drbd_nl.c
369
set_bit(CALLBACK_PENDING, &connection->flags);
drivers/block/drbd/drbd_nl.c
372
setup_khelper_env(connection, envp);
drivers/block/drbd/drbd_nl.c
3762
nc = rcu_dereference(first_peer_device(device)->connection->net_conf);
drivers/block/drbd/drbd_nl.c
382
notify_helper(NOTIFY_CALL, device, connection, cmd, 0);
drivers/block/drbd/drbd_nl.c
3942
struct drbd_connection *connection;
drivers/block/drbd/drbd_nl.c
3946
connection = the_only_connection(resource);
drivers/block/drbd/drbd_nl.c
3947
if (nla_put_drbd_cfg_context(skb, resource, connection, NULL))
drivers/block/drbd/drbd_nl.c
3949
if (connection) {
drivers/block/drbd/drbd_nl.c
395
notify_helper(NOTIFY_RESPONSE, device, connection, cmd, ret);
drivers/block/drbd/drbd_nl.c
3952
nc = rcu_dereference(connection->net_conf);
drivers/block/drbd/drbd_nl.c
397
if (current == connection->worker.task)
drivers/block/drbd/drbd_nl.c
398
clear_bit(CALLBACK_PENDING, &connection->flags);
drivers/block/drbd/drbd_nl.c
406
enum drbd_peer_state conn_khelper(struct drbd_connection *connection, char *cmd)
drivers/block/drbd/drbd_nl.c
414
char *resource_name = connection->resource->name;
drivers/block/drbd/drbd_nl.c
4157
first_peer_device(device)->connection->agreed_pro_version >= 90 &&
drivers/block/drbd/drbd_nl.c
418
setup_khelper_env(connection, envp);
drivers/block/drbd/drbd_nl.c
419
conn_md_sync(connection);
drivers/block/drbd/drbd_nl.c
421
drbd_info(connection, "helper command: %s %s %s\n", drbd_usermode_helper, cmd, resource_name);
drivers/block/drbd/drbd_nl.c
4226
struct drbd_connection *connection;
drivers/block/drbd/drbd_nl.c
423
notify_helper(NOTIFY_CALL, NULL, connection, cmd, 0);
drivers/block/drbd/drbd_nl.c
4261
connection = conn_create(adm_ctx.resource_name, &res_opts);
drivers/block/drbd/drbd_nl.c
4264
if (connection) {
drivers/block/drbd/drbd_nl.c
4268
resource_to_info(&resource_info, connection->resource);
drivers/block/drbd/drbd_nl.c
4269
notify_resource_state(NULL, 0, connection->resource,
drivers/block/drbd/drbd_nl.c
427
drbd_warn(connection, "helper command: %s %s %s exit code %u (0x%x)\n",
drivers/block/drbd/drbd_nl.c
431
drbd_info(connection, "helper command: %s %s %s exit code %u (0x%x)\n",
drivers/block/drbd/drbd_nl.c
4330
if (!has_net_conf(peer_device->connection))
drivers/block/drbd/drbd_nl.c
4342
if (!has_net_conf(peer_device->connection))
drivers/block/drbd/drbd_nl.c
435
notify_helper(NOTIFY_RESPONSE, NULL, connection, cmd, ret);
drivers/block/drbd/drbd_nl.c
4366
struct drbd_connection *connection =
drivers/block/drbd/drbd_nl.c
4375
if (get_t_state(&connection->worker) == RUNNING)
drivers/block/drbd/drbd_nl.c
4376
drbd_flush_workqueue(&connection->sender_work);
drivers/block/drbd/drbd_nl.c
4380
if (!has_net_conf(peer_device->connection))
drivers/block/drbd/drbd_nl.c
4415
struct drbd_connection *connection;
drivers/block/drbd/drbd_nl.c
4417
for_each_connection(connection, resource) {
drivers/block/drbd/drbd_nl.c
4418
if (connection->cstate > C_STANDALONE)
drivers/block/drbd/drbd_nl.c
443
static enum drbd_fencing_p highest_fencing_policy(struct drbd_connection *connection)
drivers/block/drbd/drbd_nl.c
4436
list_for_each_entry(connection, &resource->connections, connections)
drivers/block/drbd/drbd_nl.c
4437
drbd_thread_stop(&connection->worker);
drivers/block/drbd/drbd_nl.c
4447
struct drbd_connection *connection;
drivers/block/drbd/drbd_nl.c
4461
for_each_connection(connection, resource) {
drivers/block/drbd/drbd_nl.c
4464
idr_for_each_entry(&connection->peer_devices, peer_device, i) {
drivers/block/drbd/drbd_nl.c
4472
retcode = conn_try_disconnect(connection, 0);
drivers/block/drbd/drbd_nl.c
450
idr_for_each_entry(&connection->peer_devices, peer_device, vnr) {
drivers/block/drbd/drbd_nl.c
4678
struct drbd_connection *connection,
drivers/block/drbd/drbd_nl.c
469
bool conn_try_outdate_peer(struct drbd_connection *connection)
drivers/block/drbd/drbd_nl.c
4702
if (nla_put_drbd_cfg_context(skb, connection->resource, connection, NULL) ||
drivers/block/drbd/drbd_nl.c
4707
connection_statistics.conn_congested = test_bit(NET_CONGESTED, &connection->flags);
drivers/block/drbd/drbd_nl.c
471
struct drbd_resource * const resource = connection->resource;
drivers/block/drbd/drbd_nl.c
4721
drbd_err(connection, "Error %d while broadcasting event. Event seq:%u\n",
drivers/block/drbd/drbd_nl.c
4753
if (nla_put_drbd_cfg_context(skb, resource, peer_device->connection, peer_device->device) ||
drivers/block/drbd/drbd_nl.c
4778
struct drbd_device *device, struct drbd_connection *connection,
drivers/block/drbd/drbd_nl.c
4781
struct drbd_resource *resource = device ? device->resource : connection->resource;
drivers/block/drbd/drbd_nl.c
480
if (connection->cstate >= C_WF_REPORT_PARAMS) {
drivers/block/drbd/drbd_nl.c
4804
if (nla_put_drbd_cfg_context(skb, resource, connection, device) ||
drivers/block/drbd/drbd_nl.c
481
drbd_err(connection, "Expected cstate < C_WF_REPORT_PARAMS\n");
drivers/block/drbd/drbd_nl.c
486
connect_cnt = connection->connect_cnt;
drivers/block/drbd/drbd_nl.c
489
fp = highest_fencing_policy(connection);
drivers/block/drbd/drbd_nl.c
492
drbd_warn(connection, "Not fencing peer, I'm not even Consistent myself.\n");
drivers/block/drbd/drbd_nl.c
494
if (connection->cstate < C_WF_REPORT_PARAMS) {
drivers/block/drbd/drbd_nl.c
495
_conn_request_state(connection,
drivers/block/drbd/drbd_nl.c
503
_tl_restart(connection, CONNECTION_LOST_WHILE_PENDING);
drivers/block/drbd/drbd_nl.c
519
r = conn_khelper(connection, "fence-peer");
drivers/block/drbd/drbd_nl.c
533
if (conn_highest_disk(connection) == D_UP_TO_DATE) {
drivers/block/drbd/drbd_nl.c
546
drbd_warn(connection, "Peer is primary, outdating myself.\n");
drivers/block/drbd/drbd_nl.c
554
drbd_err(connection, "fence-peer() = 7 && fencing != Stonith !!!\n");
drivers/block/drbd/drbd_nl.c
561
drbd_err(connection, "fence-peer helper broken, returned %d\n", (r>>8)&0xff);
drivers/block/drbd/drbd_nl.c
565
drbd_info(connection, "fence-peer helper returned %d (%s)\n",
drivers/block/drbd/drbd_nl.c
573
if (connection->cstate < C_WF_REPORT_PARAMS && !test_bit(STATE_SENT, &connection->flags)) {
drivers/block/drbd/drbd_nl.c
574
if (connection->connect_cnt != connect_cnt)
drivers/block/drbd/drbd_nl.c
577
drbd_info(connection, "Ignoring fence-peer exit code\n");
drivers/block/drbd/drbd_nl.c
579
_conn_request_state(connection, mask, val, CS_VERBOSE);
drivers/block/drbd/drbd_nl.c
583
return conn_highest_pdsk(connection) <= D_OUTDATED;
drivers/block/drbd/drbd_nl.c
588
struct drbd_connection *connection = (struct drbd_connection *)data;
drivers/block/drbd/drbd_nl.c
590
conn_try_outdate_peer(connection);
drivers/block/drbd/drbd_nl.c
592
kref_put(&connection->kref, drbd_destroy_connection);
drivers/block/drbd/drbd_nl.c
596
void conn_try_outdate_peer_async(struct drbd_connection *connection)
drivers/block/drbd/drbd_nl.c
600
kref_get(&connection->kref);
drivers/block/drbd/drbd_nl.c
607
opa = kthread_run(_try_outdate_peer_async, connection, "drbd_async_h");
drivers/block/drbd/drbd_nl.c
609
drbd_err(connection, "out of mem, failed to invoke fence-peer helper\n");
drivers/block/drbd/drbd_nl.c
610
kref_put(&connection->kref, drbd_destroy_connection);
drivers/block/drbd/drbd_nl.c
618
struct drbd_connection *const connection = peer_device ? peer_device->connection : NULL;
drivers/block/drbd/drbd_nl.c
627
struct drbd_connection *connection;
drivers/block/drbd/drbd_nl.c
632
for_each_connection(connection, device->resource)
drivers/block/drbd/drbd_nl.c
633
request_ping(connection);
drivers/block/drbd/drbd_nl.c
666
if (conn_try_outdate_peer(connection)) {
drivers/block/drbd/drbd_nl.c
676
if (!conn_try_outdate_peer(connection) && force) {
drivers/block/drbd/drbd_nl.c
691
nc = rcu_dereference(connection->net_conf);
drivers/block/drbd/drbd_nl.c
725
nc = connection->net_conf;
drivers/block/drbd/drbd_polymorph_printk.h
39
#define __drbd_printk_drbd_connection_prep(connection) \
drivers/block/drbd/drbd_polymorph_printk.h
40
const struct drbd_connection *__c = (connection); \
drivers/block/drbd/drbd_proc.c
269
nc = rcu_dereference(first_peer_device(device)->connection->net_conf);
drivers/block/drbd/drbd_proc.c
298
first_peer_device(device)->connection->epochs,
drivers/block/drbd/drbd_receiver.c
1006
static void drbd_unplug_all_devices(struct drbd_connection *connection)
drivers/block/drbd/drbd_receiver.c
1008
if (current->plug == &connection->receiver_plug) {
drivers/block/drbd/drbd_receiver.c
1009
blk_finish_plug(&connection->receiver_plug);
drivers/block/drbd/drbd_receiver.c
1010
blk_start_plug(&connection->receiver_plug);
drivers/block/drbd/drbd_receiver.c
1014
static int drbd_recv_header(struct drbd_connection *connection, struct packet_info *pi)
drivers/block/drbd/drbd_receiver.c
1016
void *buffer = connection->data.rbuf;
drivers/block/drbd/drbd_receiver.c
1019
err = drbd_recv_all_warn(connection, buffer, drbd_header_size(connection));
drivers/block/drbd/drbd_receiver.c
1023
err = decode_header(connection, buffer, pi);
drivers/block/drbd/drbd_receiver.c
1024
connection->last_received = jiffies;
drivers/block/drbd/drbd_receiver.c
1029
static int drbd_recv_header_maybe_unplug(struct drbd_connection *connection, struct packet_info *pi)
drivers/block/drbd/drbd_receiver.c
1031
void *buffer = connection->data.rbuf;
drivers/block/drbd/drbd_receiver.c
1032
unsigned int size = drbd_header_size(connection);
drivers/block/drbd/drbd_receiver.c
1035
err = drbd_recv_short(connection->data.socket, buffer, size, MSG_NOSIGNAL|MSG_DONTWAIT);
drivers/block/drbd/drbd_receiver.c
1042
tcp_sock_set_quickack(connection->data.socket->sk, 2);
drivers/block/drbd/drbd_receiver.c
1043
drbd_unplug_all_devices(connection);
drivers/block/drbd/drbd_receiver.c
1049
err = drbd_recv_all_warn(connection, buffer, size);
drivers/block/drbd/drbd_receiver.c
1054
err = decode_header(connection, connection->data.rbuf, pi);
drivers/block/drbd/drbd_receiver.c
1055
connection->last_received = jiffies;
drivers/block/drbd/drbd_receiver.c
1124
static void drbd_flush(struct drbd_connection *connection)
drivers/block/drbd/drbd_receiver.c
1126
if (connection->resource->write_ordering >= WO_BDEV_FLUSH) {
drivers/block/drbd/drbd_receiver.c
1136
idr_for_each_entry(&connection->peer_devices, peer_device, vnr) {
drivers/block/drbd/drbd_receiver.c
1160
drbd_bump_write_ordering(connection->resource, NULL, WO_DRAIN_IO);
drivers/block/drbd/drbd_receiver.c
1171
static enum finish_epoch drbd_may_finish_epoch(struct drbd_connection *connection,
drivers/block/drbd/drbd_receiver.c
1179
spin_lock(&connection->epoch_lock);
drivers/block/drbd/drbd_receiver.c
1201
spin_unlock(&connection->epoch_lock);
drivers/block/drbd/drbd_receiver.c
1202
drbd_send_b_ack(epoch->connection, epoch->barrier_nr, epoch_size);
drivers/block/drbd/drbd_receiver.c
1203
spin_lock(&connection->epoch_lock);
drivers/block/drbd/drbd_receiver.c
1209
dec_unacked(epoch->connection);
drivers/block/drbd/drbd_receiver.c
121
nc = rcu_dereference(peer_device->connection->net_conf);
drivers/block/drbd/drbd_receiver.c
1212
if (connection->current_epoch != epoch) {
drivers/block/drbd/drbd_receiver.c
1216
connection->epochs--;
drivers/block/drbd/drbd_receiver.c
1236
spin_unlock(&connection->epoch_lock);
drivers/block/drbd/drbd_receiver.c
1466
conn_wait_active_ee_empty(peer_req->peer_device->connection);
drivers/block/drbd/drbd_receiver.c
1552
static void conn_wait_active_ee_empty(struct drbd_connection *connection)
drivers/block/drbd/drbd_receiver.c
1558
idr_for_each_entry(&connection->peer_devices, peer_device, vnr) {
drivers/block/drbd/drbd_receiver.c
1570
static int receive_Barrier(struct drbd_connection *connection, struct packet_info *pi)
drivers/block/drbd/drbd_receiver.c
1579
connection->current_epoch->barrier_nr = p->barrier;
drivers/block/drbd/drbd_receiver.c
1580
connection->current_epoch->connection = connection;
drivers/block/drbd/drbd_receiver.c
1581
rv = drbd_may_finish_epoch(connection, connection->current_epoch, EV_GOT_BARRIER_NR);
drivers/block/drbd/drbd_receiver.c
1588
switch (connection->resource->write_ordering) {
drivers/block/drbd/drbd_receiver.c
1599
drbd_warn(connection, "Allocation of an epoch failed, slowing down\n");
drivers/block/drbd/drbd_receiver.c
1604
conn_wait_active_ee_empty(connection);
drivers/block/drbd/drbd_receiver.c
1605
drbd_flush(connection);
drivers/block/drbd/drbd_receiver.c
1607
if (atomic_read(&connection->current_epoch->epoch_size)) {
drivers/block/drbd/drbd_receiver.c
1615
drbd_err(connection, "Strangeness in connection->write_ordering %d\n",
drivers/block/drbd/drbd_receiver.c
1616
connection->resource->write_ordering);
drivers/block/drbd/drbd_receiver.c
1624
spin_lock(&connection->epoch_lock);
drivers/block/drbd/drbd_receiver.c
1625
if (atomic_read(&connection->current_epoch->epoch_size)) {
drivers/block/drbd/drbd_receiver.c
1626
list_add(&epoch->list, &connection->current_epoch->list);
drivers/block/drbd/drbd_receiver.c
1627
connection->current_epoch = epoch;
drivers/block/drbd/drbd_receiver.c
1628
connection->epochs++;
drivers/block/drbd/drbd_receiver.c
1633
spin_unlock(&connection->epoch_lock);
drivers/block/drbd/drbd_receiver.c
1668
void *dig_in = peer_device->connection->int_dig_in;
drivers/block/drbd/drbd_receiver.c
1669
void *dig_vv = peer_device->connection->int_dig_vv;
drivers/block/drbd/drbd_receiver.c
1675
if (!trim && peer_device->connection->peer_integrity_tfm) {
drivers/block/drbd/drbd_receiver.c
1676
digest_size = crypto_shash_digestsize(peer_device->connection->peer_integrity_tfm);
drivers/block/drbd/drbd_receiver.c
1681
err = drbd_recv_all_warn(peer_device->connection, dig_in, digest_size);
drivers/block/drbd/drbd_receiver.c
1740
err = drbd_recv_all_warn(peer_device->connection, data, len);
drivers/block/drbd/drbd_receiver.c
1754
drbd_csum_ee_size(peer_device->connection->peer_integrity_tfm, peer_req, dig_vv, data_size);
drivers/block/drbd/drbd_receiver.c
1784
err = drbd_recv_all_warn(peer_device->connection, data, len);
drivers/block/drbd/drbd_receiver.c
1801
void *dig_in = peer_device->connection->int_dig_in;
drivers/block/drbd/drbd_receiver.c
1802
void *dig_vv = peer_device->connection->int_dig_vv;
drivers/block/drbd/drbd_receiver.c
1805
if (peer_device->connection->peer_integrity_tfm) {
drivers/block/drbd/drbd_receiver.c
1806
digest_size = crypto_shash_digestsize(peer_device->connection->peer_integrity_tfm);
drivers/block/drbd/drbd_receiver.c
1807
err = drbd_recv_all_warn(peer_device->connection, dig_in, digest_size);
drivers/block/drbd/drbd_receiver.c
1823
err = drbd_recv_all_warn(peer_device->connection, mapped, expect);
drivers/block/drbd/drbd_receiver.c
1831
drbd_csum_bio(peer_device->connection->peer_integrity_tfm, bio, dig_vv);
drivers/block/drbd/drbd_receiver.c
1928
static int receive_DataReply(struct drbd_connection *connection, struct packet_info *pi)
drivers/block/drbd/drbd_receiver.c
1937
peer_device = conn_peer_device(connection, pi->vnr);
drivers/block/drbd/drbd_receiver.c
1960
static int receive_RSDataReply(struct drbd_connection *connection, struct packet_info *pi)
drivers/block/drbd/drbd_receiver.c
1968
peer_device = conn_peer_device(connection, pi->vnr);
drivers/block/drbd/drbd_receiver.c
2055
drbd_may_finish_epoch(peer_device->connection, peer_req->epoch, EV_PUT + (cancel ? EV_CLEANUP : 0));
drivers/block/drbd/drbd_receiver.c
2082
struct drbd_connection *connection = peer_req->peer_device->connection;
drivers/block/drbd/drbd_receiver.c
2084
return e_send_ack(w, connection->agreed_pro_version >= 100 ?
drivers/block/drbd/drbd_receiver.c
2108
if (test_bit(RESOLVE_CONFLICTS, &peer_device->connection->flags)) {
drivers/block/drbd/drbd_receiver.c
2171
if (!test_bit(RESOLVE_CONFLICTS, &peer_device->connection->flags))
drivers/block/drbd/drbd_receiver.c
2187
tp = rcu_dereference(peer_device->connection->net_conf)->two_primaries;
drivers/block/drbd/drbd_receiver.c
2197
timeout = rcu_dereference(peer_device->connection->net_conf)->ping_timeo*HZ/10;
drivers/block/drbd/drbd_receiver.c
2223
static blk_opf_t wire_flags_to_bio(struct drbd_connection *connection, u32 dpf)
drivers/block/drbd/drbd_receiver.c
2260
struct drbd_connection *connection = peer_req->peer_device->connection;
drivers/block/drbd/drbd_receiver.c
2261
bool resolve_conflicts = test_bit(RESOLVE_CONFLICTS, &connection->flags);
drivers/block/drbd/drbd_receiver.c
2317
if (!queue_work(connection->ack_sender,
drivers/block/drbd/drbd_receiver.c
2348
_conn_request_state(connection, NS(conn, C_TIMEOUT), CS_HARD);
drivers/block/drbd/drbd_receiver.c
2370
static int receive_Data(struct drbd_connection *connection, struct packet_info *pi)
drivers/block/drbd/drbd_receiver.c
2382
peer_device = conn_peer_device(connection, pi->vnr);
drivers/block/drbd/drbd_receiver.c
2392
atomic_inc(&connection->current_epoch->epoch_size);
drivers/block/drbd/drbd_receiver.c
2417
peer_req->opf = wire_flags_to_bio(connection, dp_flags);
drivers/block/drbd/drbd_receiver.c
2424
if (0 == (connection->agreed_features & DRBD_FF_WZEROES))
drivers/block/drbd/drbd_receiver.c
2441
spin_lock(&connection->epoch_lock);
drivers/block/drbd/drbd_receiver.c
2442
peer_req->epoch = connection->current_epoch;
drivers/block/drbd/drbd_receiver.c
2445
spin_unlock(&connection->epoch_lock);
drivers/block/drbd/drbd_receiver.c
2448
nc = rcu_dereference(peer_device->connection->net_conf);
drivers/block/drbd/drbd_receiver.c
2450
if (peer_device->connection->agreed_pro_version < 100) {
drivers/block/drbd/drbd_receiver.c
2531
drbd_may_finish_epoch(connection, peer_req->epoch, EV_PUT | EV_CLEANUP);
drivers/block/drbd/drbd_receiver.c
2618
static int receive_DataRequest(struct drbd_connection *connection, struct packet_info *pi)
drivers/block/drbd/drbd_receiver.c
2629
peer_device = conn_peer_device(connection, pi->vnr);
drivers/block/drbd/drbd_receiver.c
2720
if (drbd_recv_all(peer_device->connection, di->digest, pi->size))
drivers/block/drbd/drbd_receiver.c
2724
D_ASSERT(device, peer_device->connection->agreed_pro_version >= 89);
drivers/block/drbd/drbd_receiver.c
2743
peer_device->connection->agreed_pro_version >= 90) {
drivers/block/drbd/drbd_receiver.c
2795
update_receiver_timing_details(connection, drbd_rs_should_slow_down);
drivers/block/drbd/drbd_receiver.c
2799
update_receiver_timing_details(connection, drbd_rs_begin_io);
drivers/block/drbd/drbd_receiver.c
2807
update_receiver_timing_details(connection, drbd_submit_peer_request);
drivers/block/drbd/drbd_receiver.c
2843
after_sb_0p = rcu_dereference(peer_device->connection->net_conf)->after_sb_0p;
drivers/block/drbd/drbd_receiver.c
2879
rv = test_bit(RESOLVE_CONFLICTS, &peer_device->connection->flags)
drivers/block/drbd/drbd_receiver.c
2896
rv = test_bit(RESOLVE_CONFLICTS, &peer_device->connection->flags)
drivers/block/drbd/drbd_receiver.c
2919
after_sb_1p = rcu_dereference(peer_device->connection->net_conf)->after_sb_1p;
drivers/block/drbd/drbd_receiver.c
2976
after_sb_2p = rcu_dereference(peer_device->connection->net_conf)->after_sb_2p;
drivers/block/drbd/drbd_receiver.c
3049
struct drbd_connection *const connection = peer_device->connection;
drivers/block/drbd/drbd_receiver.c
3076
if (connection->agreed_pro_version < 91)
drivers/block/drbd/drbd_receiver.c
3099
if (connection->agreed_pro_version < 91)
drivers/block/drbd/drbd_receiver.c
3139
if (!(connection->agreed_features & DRBD_FF_WSAME)) {
drivers/block/drbd/drbd_receiver.c
3163
dc = test_bit(RESOLVE_CONFLICTS, &connection->flags);
drivers/block/drbd/drbd_receiver.c
3176
if (connection->agreed_pro_version < 96 ?
drivers/block/drbd/drbd_receiver.c
3183
if (connection->agreed_pro_version < 91)
drivers/block/drbd/drbd_receiver.c
3213
if (connection->agreed_pro_version < 96 ?
drivers/block/drbd/drbd_receiver.c
3220
if (connection->agreed_pro_version < 91)
drivers/block/drbd/drbd_receiver.c
325
static int drbd_recv(struct drbd_connection *connection, void *buf, size_t size)
drivers/block/drbd/drbd_receiver.c
329
rv = drbd_recv_short(connection->data.socket, buf, size, 0);
drivers/block/drbd/drbd_receiver.c
3323
nc = rcu_dereference(peer_device->connection->net_conf);
drivers/block/drbd/drbd_receiver.c
333
drbd_info(connection, "sock was reset by peer\n");
drivers/block/drbd/drbd_receiver.c
335
drbd_err(connection, "sock_recvmsg returned %d\n", rv);
drivers/block/drbd/drbd_receiver.c
337
if (test_bit(DISCONNECT_SENT, &connection->flags)) {
drivers/block/drbd/drbd_receiver.c
3399
if (tentative || test_bit(CONN_DRY_RUN, &peer_device->connection->flags)) {
drivers/block/drbd/drbd_receiver.c
340
t = rcu_dereference(connection->net_conf)->ping_timeo * HZ/10;
drivers/block/drbd/drbd_receiver.c
343
t = wait_event_timeout(connection->ping_wait, connection->cstate < C_WF_REPORT_PARAMS, t);
drivers/block/drbd/drbd_receiver.c
3445
static int receive_protocol(struct drbd_connection *connection, struct packet_info *pi)
drivers/block/drbd/drbd_receiver.c
3463
if (connection->agreed_pro_version >= 87) {
drivers/block/drbd/drbd_receiver.c
3468
err = drbd_recv_all(connection, integrity_alg, pi->size);
drivers/block/drbd/drbd_receiver.c
3475
clear_bit(CONN_DRY_RUN, &connection->flags);
drivers/block/drbd/drbd_receiver.c
3478
set_bit(CONN_DRY_RUN, &connection->flags);
drivers/block/drbd/drbd_receiver.c
348
drbd_info(connection, "sock was shut down by peer\n");
drivers/block/drbd/drbd_receiver.c
3481
nc = rcu_dereference(connection->net_conf);
drivers/block/drbd/drbd_receiver.c
3484
drbd_err(connection, "incompatible %s settings\n", "protocol");
drivers/block/drbd/drbd_receiver.c
3489
drbd_err(connection, "incompatible %s settings\n", "after-sb-0pri");
drivers/block/drbd/drbd_receiver.c
3494
drbd_err(connection, "incompatible %s settings\n", "after-sb-1pri");
drivers/block/drbd/drbd_receiver.c
3499
drbd_err(connection, "incompatible %s settings\n", "after-sb-2pri");
drivers/block/drbd/drbd_receiver.c
3504
drbd_err(connection, "incompatible %s settings\n", "discard-my-data");
drivers/block/drbd/drbd_receiver.c
3509
drbd_err(connection, "incompatible %s settings\n", "allow-two-primaries");
drivers/block/drbd/drbd_receiver.c
3514
drbd_err(connection, "incompatible %s settings\n", "data-integrity-alg");
drivers/block/drbd/drbd_receiver.c
352
conn_request_state(connection, NS(conn, C_BROKEN_PIPE), CS_HARD);
drivers/block/drbd/drbd_receiver.c
3536
drbd_err(connection, "peer data-integrity-alg %s not supported\n",
drivers/block/drbd/drbd_receiver.c
3545
drbd_err(connection, "Allocation of buffers for data integrity checking failed\n");
drivers/block/drbd/drbd_receiver.c
3554
mutex_lock(&connection->data.mutex);
drivers/block/drbd/drbd_receiver.c
3555
mutex_lock(&connection->resource->conf_update);
drivers/block/drbd/drbd_receiver.c
3556
old_net_conf = connection->net_conf;
drivers/block/drbd/drbd_receiver.c
3565
rcu_assign_pointer(connection->net_conf, new_net_conf);
drivers/block/drbd/drbd_receiver.c
3566
mutex_unlock(&connection->resource->conf_update);
drivers/block/drbd/drbd_receiver.c
3567
mutex_unlock(&connection->data.mutex);
drivers/block/drbd/drbd_receiver.c
3569
crypto_free_shash(connection->peer_integrity_tfm);
drivers/block/drbd/drbd_receiver.c
3570
kfree(connection->int_dig_in);
drivers/block/drbd/drbd_receiver.c
3571
kfree(connection->int_dig_vv);
drivers/block/drbd/drbd_receiver.c
3572
connection->peer_integrity_tfm = peer_integrity_tfm;
drivers/block/drbd/drbd_receiver.c
3573
connection->int_dig_in = int_dig_in;
drivers/block/drbd/drbd_receiver.c
3574
connection->int_dig_vv = int_dig_vv;
drivers/block/drbd/drbd_receiver.c
3577
drbd_info(connection, "peer data-integrity-alg: %s\n",
drivers/block/drbd/drbd_receiver.c
358
static int drbd_recv_all(struct drbd_connection *connection, void *buf, size_t size)
drivers/block/drbd/drbd_receiver.c
3589
conn_request_state(connection, NS(conn, C_DISCONNECTING), CS_HARD);
drivers/block/drbd/drbd_receiver.c
3616
static int ignore_remaining_packet(struct drbd_connection *connection, struct packet_info *pi)
drivers/block/drbd/drbd_receiver.c
3618
void *buffer = connection->data.rbuf;
drivers/block/drbd/drbd_receiver.c
362
err = drbd_recv(connection, buf, size);
drivers/block/drbd/drbd_receiver.c
3623
s = drbd_recv(connection, buffer, s);
drivers/block/drbd/drbd_receiver.c
3647
static int config_unknown_volume(struct drbd_connection *connection, struct packet_info *pi)
drivers/block/drbd/drbd_receiver.c
3649
drbd_warn(connection, "%s packet received for volume %u, which is not configured locally\n",
drivers/block/drbd/drbd_receiver.c
3651
return ignore_remaining_packet(connection, pi);
drivers/block/drbd/drbd_receiver.c
3654
static int receive_SyncParam(struct drbd_connection *connection, struct packet_info *pi)
drivers/block/drbd/drbd_receiver.c
3664
const int apv = connection->agreed_pro_version;
drivers/block/drbd/drbd_receiver.c
3669
peer_device = conn_peer_device(connection, pi->vnr);
drivers/block/drbd/drbd_receiver.c
3671
return config_unknown_volume(connection, pi);
drivers/block/drbd/drbd_receiver.c
3704
err = drbd_recv_all(peer_device->connection, p, header_size);
drivers/block/drbd/drbd_receiver.c
3708
mutex_lock(&connection->resource->conf_update);
drivers/block/drbd/drbd_receiver.c
3709
old_net_conf = peer_device->connection->net_conf;
drivers/block/drbd/drbd_receiver.c
371
static int drbd_recv_all_warn(struct drbd_connection *connection, void *buf, size_t size)
drivers/block/drbd/drbd_receiver.c
3714
mutex_unlock(&connection->resource->conf_update);
drivers/block/drbd/drbd_receiver.c
3734
err = drbd_recv_all(peer_device->connection, p->verify_alg, data_size);
drivers/block/drbd/drbd_receiver.c
375
err = drbd_recv_all(connection, buf, size);
drivers/block/drbd/drbd_receiver.c
377
drbd_warn(connection, "short read (expected size %d)\n", (int)size);
drivers/block/drbd/drbd_receiver.c
3806
crypto_free_shash(peer_device->connection->verify_tfm);
drivers/block/drbd/drbd_receiver.c
3807
peer_device->connection->verify_tfm = verify_tfm;
drivers/block/drbd/drbd_receiver.c
3813
crypto_free_shash(peer_device->connection->csums_tfm);
drivers/block/drbd/drbd_receiver.c
3814
peer_device->connection->csums_tfm = csums_tfm;
drivers/block/drbd/drbd_receiver.c
3817
rcu_assign_pointer(connection->net_conf, new_net_conf);
drivers/block/drbd/drbd_receiver.c
3831
mutex_unlock(&connection->resource->conf_update);
drivers/block/drbd/drbd_receiver.c
3845
mutex_unlock(&connection->resource->conf_update);
drivers/block/drbd/drbd_receiver.c
3854
mutex_unlock(&connection->resource->conf_update);
drivers/block/drbd/drbd_receiver.c
3860
conn_request_state(peer_device->connection, NS(conn, C_DISCONNECTING), CS_HARD);
drivers/block/drbd/drbd_receiver.c
3877
static int receive_sizes(struct drbd_connection *connection, struct packet_info *pi)
drivers/block/drbd/drbd_receiver.c
3882
struct o_qlim *o = (connection->agreed_features & DRBD_FF_WSAME) ? p->qlim : NULL;
drivers/block/drbd/drbd_receiver.c
3889
peer_device = conn_peer_device(connection, pi->vnr);
drivers/block/drbd/drbd_receiver.c
3891
return config_unknown_volume(connection, pi);
drivers/block/drbd/drbd_receiver.c
3927
conn_request_state(peer_device->connection, NS(conn, C_DISCONNECTING), CS_HARD);
drivers/block/drbd/drbd_receiver.c
3941
mutex_lock(&connection->resource->conf_update);
drivers/block/drbd/drbd_receiver.c
3947
mutex_unlock(&connection->resource->conf_update);
drivers/block/drbd/drbd_receiver.c
400
static struct socket *drbd_try_connect(struct drbd_connection *connection)
drivers/block/drbd/drbd_receiver.c
4000
conn_request_state(peer_device->connection, NS(conn, C_DISCONNECTING), CS_HARD);
drivers/block/drbd/drbd_receiver.c
4048
static int receive_uuids(struct drbd_connection *connection, struct packet_info *pi)
drivers/block/drbd/drbd_receiver.c
4056
peer_device = conn_peer_device(connection, pi->vnr);
drivers/block/drbd/drbd_receiver.c
4058
return config_unknown_volume(connection, pi);
drivers/block/drbd/drbd_receiver.c
4077
conn_request_state(peer_device->connection, NS(conn, C_DISCONNECTING), CS_HARD);
drivers/block/drbd/drbd_receiver.c
4084
peer_device->connection->agreed_pro_version >= 90 &&
drivers/block/drbd/drbd_receiver.c
412
nc = rcu_dereference(connection->net_conf);
drivers/block/drbd/drbd_receiver.c
4153
static int receive_req_state(struct drbd_connection *connection, struct packet_info *pi)
drivers/block/drbd/drbd_receiver.c
4161
peer_device = conn_peer_device(connection, pi->vnr);
drivers/block/drbd/drbd_receiver.c
4169
if (test_bit(RESOLVE_CONFLICTS, &peer_device->connection->flags) &&
drivers/block/drbd/drbd_receiver.c
4186
static int receive_req_conn_state(struct drbd_connection *connection, struct packet_info *pi)
drivers/block/drbd/drbd_receiver.c
4195
if (test_bit(RESOLVE_CONFLICTS, &connection->flags) &&
drivers/block/drbd/drbd_receiver.c
4196
mutex_is_locked(&connection->cstate_mutex)) {
drivers/block/drbd/drbd_receiver.c
4197
conn_send_sr_reply(connection, SS_CONCURRENT_ST_CHG);
drivers/block/drbd/drbd_receiver.c
4204
rv = conn_request_state(connection, mask, val, CS_VERBOSE | CS_LOCAL_ONLY | CS_IGN_OUTD_FAIL);
drivers/block/drbd/drbd_receiver.c
4205
conn_send_sr_reply(connection, rv);
drivers/block/drbd/drbd_receiver.c
4210
static int receive_state(struct drbd_connection *connection, struct packet_info *pi)
drivers/block/drbd/drbd_receiver.c
422
my_addr_len = min_t(int, connection->my_addr_len, sizeof(src_in6));
drivers/block/drbd/drbd_receiver.c
4220
peer_device = conn_peer_device(connection, pi->vnr);
drivers/block/drbd/drbd_receiver.c
4222
return config_unknown_volume(connection, pi);
drivers/block/drbd/drbd_receiver.c
423
memcpy(&src_in6, &connection->my_addr, my_addr_len);
drivers/block/drbd/drbd_receiver.c
425
if (((struct sockaddr *)&connection->my_addr)->sa_family == AF_INET6)
drivers/block/drbd/drbd_receiver.c
430
peer_addr_len = min_t(int, connection->peer_addr_len, sizeof(src_in6));
drivers/block/drbd/drbd_receiver.c
431
memcpy(&peer_in6, &connection->peer_addr, peer_addr_len);
drivers/block/drbd/drbd_receiver.c
4349
if (test_and_clear_bit(CONN_DRY_RUN, &peer_device->connection->flags))
drivers/block/drbd/drbd_receiver.c
4352
conn_request_state(peer_device->connection, NS(conn, C_DISCONNECTING), CS_HARD);
drivers/block/drbd/drbd_receiver.c
4374
tl_clear(peer_device->connection);
drivers/block/drbd/drbd_receiver.c
4377
conn_request_state(peer_device->connection, NS2(conn, C_PROTOCOL_ERROR, susp, 0), CS_HARD);
drivers/block/drbd/drbd_receiver.c
4385
conn_request_state(peer_device->connection, NS(conn, C_DISCONNECTING), CS_HARD);
drivers/block/drbd/drbd_receiver.c
4407
static int receive_sync_uuid(struct drbd_connection *connection, struct packet_info *pi)
drivers/block/drbd/drbd_receiver.c
4413
peer_device = conn_peer_device(connection, pi->vnr);
drivers/block/drbd/drbd_receiver.c
4453
drbd_header_size(peer_device->connection);
drivers/block/drbd/drbd_receiver.c
4465
err = drbd_recv_all(peer_device->connection, p, want);
drivers/block/drbd/drbd_receiver.c
4583
conn_request_state(peer_device->connection, NS(conn, C_PROTOCOL_ERROR), CS_HARD);
drivers/block/drbd/drbd_receiver.c
4591
unsigned int header_size = drbd_header_size(peer_device->connection);
drivers/block/drbd/drbd_receiver.c
4631
static int receive_bitmap(struct drbd_connection *connection, struct packet_info *pi)
drivers/block/drbd/drbd_receiver.c
4638
peer_device = conn_peer_device(connection, pi->vnr);
drivers/block/drbd/drbd_receiver.c
4660
if (pi->size > DRBD_SOCKET_BUFFER_SIZE - drbd_header_size(connection)) {
drivers/block/drbd/drbd_receiver.c
4670
err = drbd_recv_all(peer_device->connection, p, pi->size);
drivers/block/drbd/drbd_receiver.c
4681
c.bytes[pi->cmd == P_BITMAP] += drbd_header_size(connection) + pi->size;
drivers/block/drbd/drbd_receiver.c
4688
err = drbd_recv_header(peer_device->connection, pi);
drivers/block/drbd/drbd_receiver.c
4719
static int receive_skip(struct drbd_connection *connection, struct packet_info *pi)
drivers/block/drbd/drbd_receiver.c
4721
drbd_warn(connection, "skipping unknown optional packet type %d, l: %d!\n",
drivers/block/drbd/drbd_receiver.c
4724
return ignore_remaining_packet(connection, pi);
drivers/block/drbd/drbd_receiver.c
4727
static int receive_UnplugRemote(struct drbd_connection *connection, struct packet_info *pi)
drivers/block/drbd/drbd_receiver.c
4731
tcp_sock_set_quickack(connection->data.socket->sk, 2);
drivers/block/drbd/drbd_receiver.c
4735
static int receive_out_of_sync(struct drbd_connection *connection, struct packet_info *pi)
drivers/block/drbd/drbd_receiver.c
4741
peer_device = conn_peer_device(connection, pi->vnr);
drivers/block/drbd/drbd_receiver.c
4761
static int receive_rs_deallocated(struct drbd_connection *connection, struct packet_info *pi)
drivers/block/drbd/drbd_receiver.c
4769
peer_device = conn_peer_device(connection, pi->vnr);
drivers/block/drbd/drbd_receiver.c
479
drbd_err(connection, "%s failed, err = %d\n", what, err);
drivers/block/drbd/drbd_receiver.c
482
conn_request_state(connection, NS(conn, C_DISCONNECTING), CS_HARD);
drivers/block/drbd/drbd_receiver.c
4864
static void drbdd(struct drbd_connection *connection)
drivers/block/drbd/drbd_receiver.c
4870
while (get_t_state(&connection->receiver) == RUNNING) {
drivers/block/drbd/drbd_receiver.c
4873
drbd_thread_current_set_cpu(&connection->receiver);
drivers/block/drbd/drbd_receiver.c
4874
update_receiver_timing_details(connection, drbd_recv_header_maybe_unplug);
drivers/block/drbd/drbd_receiver.c
4875
if (drbd_recv_header_maybe_unplug(connection, &pi))
drivers/block/drbd/drbd_receiver.c
4880
drbd_err(connection, "Unexpected data packet %s (0x%04x)",
drivers/block/drbd/drbd_receiver.c
4886
if (pi.cmd == P_SIZES && connection->agreed_features & DRBD_FF_WSAME)
drivers/block/drbd/drbd_receiver.c
4889
drbd_err(connection, "No payload expected %s l:%d\n",
drivers/block/drbd/drbd_receiver.c
489
struct drbd_connection *connection;
drivers/block/drbd/drbd_receiver.c
4894
drbd_err(connection, "%s: unexpected packet size, expected:%d received:%d\n",
drivers/block/drbd/drbd_receiver.c
4900
update_receiver_timing_details(connection, drbd_recv_all_warn);
drivers/block/drbd/drbd_receiver.c
4901
err = drbd_recv_all_warn(connection, pi.data, shs);
drivers/block/drbd/drbd_receiver.c
4907
update_receiver_timing_details(connection, cmd->fn);
drivers/block/drbd/drbd_receiver.c
4908
err = cmd->fn(connection, &pi);
drivers/block/drbd/drbd_receiver.c
4910
drbd_err(connection, "error receiving %s, e: %d l: %d!\n",
drivers/block/drbd/drbd_receiver.c
4918
conn_request_state(connection, NS(conn, C_PROTOCOL_ERROR), CS_HARD);
drivers/block/drbd/drbd_receiver.c
4921
static void conn_disconnect(struct drbd_connection *connection)
drivers/block/drbd/drbd_receiver.c
4927
if (connection->cstate == C_STANDALONE)
drivers/block/drbd/drbd_receiver.c
4935
conn_request_state(connection, NS(conn, C_NETWORK_FAILURE), CS_HARD);
drivers/block/drbd/drbd_receiver.c
4938
drbd_thread_stop(&connection->ack_receiver);
drivers/block/drbd/drbd_receiver.c
4939
if (connection->ack_sender) {
drivers/block/drbd/drbd_receiver.c
4940
destroy_workqueue(connection->ack_sender);
drivers/block/drbd/drbd_receiver.c
4941
connection->ack_sender = NULL;
drivers/block/drbd/drbd_receiver.c
4943
drbd_free_sock(connection);
drivers/block/drbd/drbd_receiver.c
4946
idr_for_each_entry(&connection->peer_devices, peer_device, vnr) {
drivers/block/drbd/drbd_receiver.c
4956
if (!list_empty(&connection->current_epoch->list))
drivers/block/drbd/drbd_receiver.c
4957
drbd_err(connection, "ASSERTION FAILED: connection->current_epoch->list not empty\n");
drivers/block/drbd/drbd_receiver.c
4959
atomic_set(&connection->current_epoch->epoch_size, 0);
drivers/block/drbd/drbd_receiver.c
4960
connection->send.seen_any_write_yet = false;
drivers/block/drbd/drbd_receiver.c
4962
drbd_info(connection, "Connection closed\n");
drivers/block/drbd/drbd_receiver.c
4964
if (conn_highest_role(connection) == R_PRIMARY && conn_highest_pdsk(connection) >= D_UNKNOWN)
drivers/block/drbd/drbd_receiver.c
4965
conn_try_outdate_peer_async(connection);
drivers/block/drbd/drbd_receiver.c
4967
spin_lock_irq(&connection->resource->req_lock);
drivers/block/drbd/drbd_receiver.c
4968
oc = connection->cstate;
drivers/block/drbd/drbd_receiver.c
4970
_conn_request_state(connection, NS(conn, C_UNCONNECTED), CS_VERBOSE);
drivers/block/drbd/drbd_receiver.c
4972
spin_unlock_irq(&connection->resource->req_lock);
drivers/block/drbd/drbd_receiver.c
4975
conn_request_state(connection, NS(conn, C_STANDALONE), CS_VERBOSE | CS_HARD);
drivers/block/drbd/drbd_receiver.c
5012
drbd_flush_workqueue(&peer_device->connection->sender_work);
drivers/block/drbd/drbd_receiver.c
5019
drbd_flush_workqueue(&peer_device->connection->sender_work);
drivers/block/drbd/drbd_receiver.c
5029
tl_clear(peer_device->connection);
drivers/block/drbd/drbd_receiver.c
5063
static int drbd_send_features(struct drbd_connection *connection)
drivers/block/drbd/drbd_receiver.c
5068
sock = &connection->data;
drivers/block/drbd/drbd_receiver.c
5069
p = conn_prepare_command(connection, sock);
drivers/block/drbd/drbd_receiver.c
507
static int prepare_listen_socket(struct drbd_connection *connection, struct accept_wait_data *ad)
drivers/block/drbd/drbd_receiver.c
5076
return conn_send_command(connection, sock, P_CONNECTION_FEATURES, sizeof(*p), NULL, 0);
drivers/block/drbd/drbd_receiver.c
5086
static int drbd_do_features(struct drbd_connection *connection)
drivers/block/drbd/drbd_receiver.c
5094
err = drbd_send_features(connection);
drivers/block/drbd/drbd_receiver.c
5098
err = drbd_recv_header(connection, &pi);
drivers/block/drbd/drbd_receiver.c
5103
drbd_err(connection, "expected ConnectionFeatures packet, received: %s (0x%04x)\n",
drivers/block/drbd/drbd_receiver.c
5109
drbd_err(connection, "expected ConnectionFeatures length: %u, received: %u\n",
drivers/block/drbd/drbd_receiver.c
5115
err = drbd_recv_all_warn(connection, p, expect);
drivers/block/drbd/drbd_receiver.c
5128
connection->agreed_pro_version = min_t(int, PRO_VERSION_MAX, p->protocol_max);
drivers/block/drbd/drbd_receiver.c
5129
connection->agreed_features = PRO_FEATURES & be32_to_cpu(p->feature_flags);
drivers/block/drbd/drbd_receiver.c
5131
drbd_info(connection, "Handshake successful: "
drivers/block/drbd/drbd_receiver.c
5132
"Agreed network protocol version %d\n", connection->agreed_pro_version);
drivers/block/drbd/drbd_receiver.c
5134
drbd_info(connection, "Feature flags enabled on protocol level: 0x%x%s%s%s%s.\n",
drivers/block/drbd/drbd_receiver.c
5135
connection->agreed_features,
drivers/block/drbd/drbd_receiver.c
5136
connection->agreed_features & DRBD_FF_TRIM ? " TRIM" : "",
drivers/block/drbd/drbd_receiver.c
5137
connection->agreed_features & DRBD_FF_THIN_RESYNC ? " THIN_RESYNC" : "",
drivers/block/drbd/drbd_receiver.c
5138
connection->agreed_features & DRBD_FF_WSAME ? " WRITE_SAME" : "",
drivers/block/drbd/drbd_receiver.c
5139
connection->agreed_features & DRBD_FF_WZEROES ? " WRITE_ZEROES" :
drivers/block/drbd/drbd_receiver.c
5140
connection->agreed_features ? "" : " none");
drivers/block/drbd/drbd_receiver.c
5145
drbd_err(connection, "incompatible DRBD dialects: "
drivers/block/drbd/drbd_receiver.c
5153
static int drbd_do_auth(struct drbd_connection *connection)
drivers/block/drbd/drbd_receiver.c
5155
drbd_err(connection, "This kernel was build without CONFIG_CRYPTO_HMAC.\n");
drivers/block/drbd/drbd_receiver.c
5156
drbd_err(connection, "You need to disable 'cram-hmac-alg' in drbd.conf.\n");
drivers/block/drbd/drbd_receiver.c
516
nc = rcu_dereference(connection->net_conf);
drivers/block/drbd/drbd_receiver.c
5168
static int drbd_do_auth(struct drbd_connection *connection)
drivers/block/drbd/drbd_receiver.c
5186
nc = rcu_dereference(connection->net_conf);
drivers/block/drbd/drbd_receiver.c
5192
crypto_shash_descsize(connection->cram_hmac_tfm),
drivers/block/drbd/drbd_receiver.c
5198
desc->tfm = connection->cram_hmac_tfm;
drivers/block/drbd/drbd_receiver.c
5200
rv = crypto_shash_setkey(connection->cram_hmac_tfm, (u8 *)secret, key_len);
drivers/block/drbd/drbd_receiver.c
5202
drbd_err(connection, "crypto_shash_setkey() failed with %d\n", rv);
drivers/block/drbd/drbd_receiver.c
5209
sock = &connection->data;
drivers/block/drbd/drbd_receiver.c
5210
if (!conn_prepare_command(connection, sock)) {
drivers/block/drbd/drbd_receiver.c
5214
rv = !conn_send_command(connection, sock, P_AUTH_CHALLENGE, 0,
drivers/block/drbd/drbd_receiver.c
5219
err = drbd_recv_header(connection, &pi);
drivers/block/drbd/drbd_receiver.c
5226
drbd_err(connection, "expected AuthChallenge packet, received: %s (0x%04x)\n",
drivers/block/drbd/drbd_receiver.c
5233
drbd_err(connection, "expected AuthChallenge payload too big.\n");
drivers/block/drbd/drbd_receiver.c
5239
drbd_err(connection, "AuthChallenge payload too small.\n");
drivers/block/drbd/drbd_receiver.c
525
my_addr_len = min_t(int, connection->my_addr_len, sizeof(struct sockaddr_in6));
drivers/block/drbd/drbd_receiver.c
5250
err = drbd_recv_all_warn(connection, peers_ch, pi.size);
drivers/block/drbd/drbd_receiver.c
5257
drbd_err(connection, "Peer presented the same challenge!\n");
drivers/block/drbd/drbd_receiver.c
526
memcpy(&my_addr, &connection->my_addr, my_addr_len);
drivers/block/drbd/drbd_receiver.c
5262
resp_size = crypto_shash_digestsize(connection->cram_hmac_tfm);
drivers/block/drbd/drbd_receiver.c
5271
drbd_err(connection, "crypto_hash_digest() failed with %d\n", rv);
drivers/block/drbd/drbd_receiver.c
5276
if (!conn_prepare_command(connection, sock)) {
drivers/block/drbd/drbd_receiver.c
5280
rv = !conn_send_command(connection, sock, P_AUTH_RESPONSE, 0,
drivers/block/drbd/drbd_receiver.c
5285
err = drbd_recv_header(connection, &pi);
drivers/block/drbd/drbd_receiver.c
5292
drbd_err(connection, "expected AuthResponse packet, received: %s (0x%04x)\n",
drivers/block/drbd/drbd_receiver.c
5299
drbd_err(connection, "expected AuthResponse payload of wrong size\n");
drivers/block/drbd/drbd_receiver.c
5304
err = drbd_recv_all_warn(connection, response , resp_size);
drivers/block/drbd/drbd_receiver.c
5319
drbd_err(connection, "crypto_hash_digest() failed with %d\n", rv);
drivers/block/drbd/drbd_receiver.c
5327
drbd_info(connection, "Peer authenticated using %d bytes HMAC\n",
drivers/block/drbd/drbd_receiver.c
5347
struct drbd_connection *connection = thi->connection;
drivers/block/drbd/drbd_receiver.c
5350
drbd_info(connection, "receiver (re)started\n");
drivers/block/drbd/drbd_receiver.c
5353
h = conn_connect(connection);
drivers/block/drbd/drbd_receiver.c
5355
conn_disconnect(connection);
drivers/block/drbd/drbd_receiver.c
5359
drbd_warn(connection, "Discarding network configuration.\n");
drivers/block/drbd/drbd_receiver.c
5360
conn_request_state(connection, NS(conn, C_DISCONNECTING), CS_HARD);
drivers/block/drbd/drbd_receiver.c
5365
blk_start_plug(&connection->receiver_plug);
drivers/block/drbd/drbd_receiver.c
5366
drbdd(connection);
drivers/block/drbd/drbd_receiver.c
5367
blk_finish_plug(&connection->receiver_plug);
drivers/block/drbd/drbd_receiver.c
5370
conn_disconnect(connection);
drivers/block/drbd/drbd_receiver.c
5372
drbd_info(connection, "receiver terminated\n");
drivers/block/drbd/drbd_receiver.c
5378
static int got_conn_RqSReply(struct drbd_connection *connection, struct packet_info *pi)
drivers/block/drbd/drbd_receiver.c
5384
set_bit(CONN_WD_ST_CHG_OKAY, &connection->flags);
drivers/block/drbd/drbd_receiver.c
5386
set_bit(CONN_WD_ST_CHG_FAIL, &connection->flags);
drivers/block/drbd/drbd_receiver.c
5387
drbd_err(connection, "Requested state change failed by peer: %s (%d)\n",
drivers/block/drbd/drbd_receiver.c
5390
wake_up(&connection->ping_wait);
drivers/block/drbd/drbd_receiver.c
5395
static int got_RqSReply(struct drbd_connection *connection, struct packet_info *pi)
drivers/block/drbd/drbd_receiver.c
5402
peer_device = conn_peer_device(connection, pi->vnr);
drivers/block/drbd/drbd_receiver.c
5407
if (test_bit(CONN_WD_ST_CHG_REQ, &connection->flags)) {
drivers/block/drbd/drbd_receiver.c
5408
D_ASSERT(device, connection->agreed_pro_version < 100);
drivers/block/drbd/drbd_receiver.c
5409
return got_conn_RqSReply(connection, pi);
drivers/block/drbd/drbd_receiver.c
5424
static int got_Ping(struct drbd_connection *connection, struct packet_info *pi)
drivers/block/drbd/drbd_receiver.c
5426
return drbd_send_ping_ack(connection);
drivers/block/drbd/drbd_receiver.c
5430
static int got_PingAck(struct drbd_connection *connection, struct packet_info *pi)
drivers/block/drbd/drbd_receiver.c
5433
connection->meta.socket->sk->sk_rcvtimeo = connection->net_conf->ping_int*HZ;
drivers/block/drbd/drbd_receiver.c
5434
if (!test_and_set_bit(GOT_PING_ACK, &connection->flags))
drivers/block/drbd/drbd_receiver.c
5435
wake_up(&connection->ping_wait);
drivers/block/drbd/drbd_receiver.c
5440
static int got_IsInSync(struct drbd_connection *connection, struct packet_info *pi)
drivers/block/drbd/drbd_receiver.c
5448
peer_device = conn_peer_device(connection, pi->vnr);
drivers/block/drbd/drbd_receiver.c
5453
D_ASSERT(device, peer_device->connection->agreed_pro_version >= 89);
drivers/block/drbd/drbd_receiver.c
5493
static int got_BlockAck(struct drbd_connection *connection, struct packet_info *pi)
drivers/block/drbd/drbd_receiver.c
5502
peer_device = conn_peer_device(connection, pi->vnr);
drivers/block/drbd/drbd_receiver.c
5539
static int got_NegAck(struct drbd_connection *connection, struct packet_info *pi)
drivers/block/drbd/drbd_receiver.c
5548
peer_device = conn_peer_device(connection, pi->vnr);
drivers/block/drbd/drbd_receiver.c
5575
static int got_NegDReply(struct drbd_connection *connection, struct packet_info *pi)
drivers/block/drbd/drbd_receiver.c
5582
peer_device = conn_peer_device(connection, pi->vnr);
drivers/block/drbd/drbd_receiver.c
5597
static int got_NegRSDReply(struct drbd_connection *connection, struct packet_info *pi)
drivers/block/drbd/drbd_receiver.c
5605
peer_device = conn_peer_device(connection, pi->vnr);
drivers/block/drbd/drbd_receiver.c
562
drbd_err(connection, "%s failed, err = %d\n", what, err);
drivers/block/drbd/drbd_receiver.c
563
conn_request_state(connection, NS(conn, C_DISCONNECTING), CS_HARD);
drivers/block/drbd/drbd_receiver.c
5634
static int got_BarrierAck(struct drbd_connection *connection, struct packet_info *pi)
drivers/block/drbd/drbd_receiver.c
5640
tl_release(connection, p->barrier, be32_to_cpu(p->set_size));
drivers/block/drbd/drbd_receiver.c
5643
idr_for_each_entry(&connection->peer_devices, peer_device, vnr) {
drivers/block/drbd/drbd_receiver.c
5658
static int got_OVResult(struct drbd_connection *connection, struct packet_info *pi)
drivers/block/drbd/drbd_receiver.c
5667
peer_device = conn_peer_device(connection, pi->vnr);
drivers/block/drbd/drbd_receiver.c
5699
drbd_queue_work(&peer_device->connection->sender_work, &dw->w);
drivers/block/drbd/drbd_receiver.c
57
static int drbd_do_features(struct drbd_connection *connection);
drivers/block/drbd/drbd_receiver.c
5710
static int got_skip(struct drbd_connection *connection, struct packet_info *pi)
drivers/block/drbd/drbd_receiver.c
5717
int (*fn)(struct drbd_connection *connection, struct packet_info *);
drivers/block/drbd/drbd_receiver.c
5720
static void set_rcvtimeo(struct drbd_connection *connection, bool ping_timeout)
drivers/block/drbd/drbd_receiver.c
5726
nc = rcu_dereference(connection->net_conf);
drivers/block/drbd/drbd_receiver.c
5734
connection->meta.socket->sk->sk_rcvtimeo = t;
drivers/block/drbd/drbd_receiver.c
5737
static void set_ping_timeout(struct drbd_connection *connection)
drivers/block/drbd/drbd_receiver.c
5739
set_rcvtimeo(connection, 1);
drivers/block/drbd/drbd_receiver.c
5742
static void set_idle_timeout(struct drbd_connection *connection)
drivers/block/drbd/drbd_receiver.c
5744
set_rcvtimeo(connection, 0);
drivers/block/drbd/drbd_receiver.c
5769
struct drbd_connection *connection = thi->connection;
drivers/block/drbd/drbd_receiver.c
5774
void *buf = connection->meta.rbuf;
drivers/block/drbd/drbd_receiver.c
5776
unsigned int header_size = drbd_header_size(connection);
drivers/block/drbd/drbd_receiver.c
578
static struct socket *drbd_wait_for_connect(struct drbd_connection *connection, struct accept_wait_data *ad)
drivers/block/drbd/drbd_receiver.c
5785
if (test_and_clear_bit(SEND_PING, &connection->flags)) {
drivers/block/drbd/drbd_receiver.c
5786
if (drbd_send_ping(connection)) {
drivers/block/drbd/drbd_receiver.c
5787
drbd_err(connection, "drbd_send_ping has failed\n");
drivers/block/drbd/drbd_receiver.c
5790
set_ping_timeout(connection);
drivers/block/drbd/drbd_receiver.c
5795
rv = drbd_recv_short(connection->meta.socket, buf, expect-received, 0);
drivers/block/drbd/drbd_receiver.c
58
static int drbd_do_auth(struct drbd_connection *connection);
drivers/block/drbd/drbd_receiver.c
5811
if (test_bit(DISCONNECT_SENT, &connection->flags)) {
drivers/block/drbd/drbd_receiver.c
5814
t = rcu_dereference(connection->net_conf)->ping_timeo * HZ/10;
drivers/block/drbd/drbd_receiver.c
5817
t = wait_event_timeout(connection->ping_wait,
drivers/block/drbd/drbd_receiver.c
5818
connection->cstate < C_WF_REPORT_PARAMS,
drivers/block/drbd/drbd_receiver.c
5823
drbd_err(connection, "meta connection shut down by peer.\n");
drivers/block/drbd/drbd_receiver.c
5828
if (time_after(connection->last_received, pre_recv_jif))
drivers/block/drbd/drbd_receiver.c
5831
drbd_err(connection, "PingAck did not arrive in time.\n");
drivers/block/drbd/drbd_receiver.c
5834
set_bit(SEND_PING, &connection->flags);
drivers/block/drbd/drbd_receiver.c
5843
drbd_err(connection, "sock_recvmsg returned %d\n", rv);
drivers/block/drbd/drbd_receiver.c
5848
if (decode_header(connection, connection->meta.rbuf, &pi))
drivers/block/drbd/drbd_receiver.c
585
nc = rcu_dereference(connection->net_conf);
drivers/block/drbd/drbd_receiver.c
5852
drbd_err(connection, "Unexpected meta packet %s (0x%04x)\n",
drivers/block/drbd/drbd_receiver.c
5858
drbd_err(connection, "Wrong packet size on meta (c: %d, l: %d)\n",
drivers/block/drbd/drbd_receiver.c
5866
err = cmd->fn(connection, &pi);
drivers/block/drbd/drbd_receiver.c
5868
drbd_err(connection, "%ps failed\n", cmd->fn);
drivers/block/drbd/drbd_receiver.c
5872
connection->last_received = jiffies;
drivers/block/drbd/drbd_receiver.c
5875
set_idle_timeout(connection);
drivers/block/drbd/drbd_receiver.c
5879
buf = connection->meta.rbuf;
drivers/block/drbd/drbd_receiver.c
5888
conn_request_state(connection, NS(conn, C_NETWORK_FAILURE), CS_HARD);
drivers/block/drbd/drbd_receiver.c
5889
conn_md_sync(connection);
drivers/block/drbd/drbd_receiver.c
5893
conn_request_state(connection, NS(conn, C_DISCONNECTING), CS_HARD);
drivers/block/drbd/drbd_receiver.c
5896
drbd_info(connection, "ack_receiver terminated\n");
drivers/block/drbd/drbd_receiver.c
5905
struct drbd_connection *connection = peer_device->connection;
drivers/block/drbd/drbd_receiver.c
5911
nc = rcu_dereference(connection->net_conf);
drivers/block/drbd/drbd_receiver.c
5916
tcp_sock_set_cork(connection->meta.socket->sk, true);
drivers/block/drbd/drbd_receiver.c
5924
conn_request_state(connection, NS(conn, C_NETWORK_FAILURE), CS_HARD);
drivers/block/drbd/drbd_receiver.c
5929
tcp_sock_set_cork(connection->meta.socket->sk, false);
drivers/block/drbd/drbd_receiver.c
60
static void conn_wait_active_ee_empty(struct drbd_connection *connection);
drivers/block/drbd/drbd_receiver.c
604
drbd_err(connection, "accept failed, err = %d\n", err);
drivers/block/drbd/drbd_receiver.c
605
conn_request_state(connection, NS(conn, C_DISCONNECTING), CS_HARD);
drivers/block/drbd/drbd_receiver.c
617
static int send_first_packet(struct drbd_connection *connection, struct drbd_socket *sock,
drivers/block/drbd/drbd_receiver.c
620
if (!conn_prepare_command(connection, sock))
drivers/block/drbd/drbd_receiver.c
622
return conn_send_command(connection, sock, cmd, 0, NULL, 0);
drivers/block/drbd/drbd_receiver.c
625
static int receive_first_packet(struct drbd_connection *connection, struct socket *sock)
drivers/block/drbd/drbd_receiver.c
627
unsigned int header_size = drbd_header_size(connection);
drivers/block/drbd/drbd_receiver.c
633
nc = rcu_dereference(connection->net_conf);
drivers/block/drbd/drbd_receiver.c
641
err = drbd_recv_short(sock, connection->data.rbuf, header_size, 0);
drivers/block/drbd/drbd_receiver.c
647
err = decode_header(connection, connection->data.rbuf, &pi);
drivers/block/drbd/drbd_receiver.c
676
static bool connection_established(struct drbd_connection *connection,
drivers/block/drbd/drbd_receiver.c
688
nc = rcu_dereference(connection->net_conf);
drivers/block/drbd/drbd_receiver.c
709
device->state_mutex = peer_device->connection->agreed_pro_version < 100 ?
drivers/block/drbd/drbd_receiver.c
710
&peer_device->connection->cstate_mutex :
drivers/block/drbd/drbd_receiver.c
735
static int conn_connect(struct drbd_connection *connection)
drivers/block/drbd/drbd_receiver.c
744
.connection = connection,
drivers/block/drbd/drbd_receiver.c
748
clear_bit(DISCONNECT_SENT, &connection->flags);
drivers/block/drbd/drbd_receiver.c
749
if (conn_request_state(connection, NS(conn, C_WF_CONNECTION), CS_VERBOSE) < SS_SUCCESS)
drivers/block/drbd/drbd_receiver.c
753
sock.sbuf = connection->data.sbuf;
drivers/block/drbd/drbd_receiver.c
754
sock.rbuf = connection->data.rbuf;
drivers/block/drbd/drbd_receiver.c
757
msock.sbuf = connection->meta.sbuf;
drivers/block/drbd/drbd_receiver.c
758
msock.rbuf = connection->meta.rbuf;
drivers/block/drbd/drbd_receiver.c
762
connection->agreed_pro_version = 80;
drivers/block/drbd/drbd_receiver.c
764
if (prepare_listen_socket(connection, &ad))
drivers/block/drbd/drbd_receiver.c
770
s = drbd_try_connect(connection);
drivers/block/drbd/drbd_receiver.c
774
send_first_packet(connection, &sock, P_INITIAL_DATA);
drivers/block/drbd/drbd_receiver.c
776
clear_bit(RESOLVE_CONFLICTS, &connection->flags);
drivers/block/drbd/drbd_receiver.c
778
send_first_packet(connection, &msock, P_INITIAL_META);
drivers/block/drbd/drbd_receiver.c
780
drbd_err(connection, "Logic error in conn_connect()\n");
drivers/block/drbd/drbd_receiver.c
785
if (connection_established(connection, &sock.socket, &msock.socket))
drivers/block/drbd/drbd_receiver.c
789
s = drbd_wait_for_connect(connection, &ad);
drivers/block/drbd/drbd_receiver.c
791
int fp = receive_first_packet(connection, s);
drivers/block/drbd/drbd_receiver.c
797
drbd_warn(connection, "initial packet S crossed\n");
drivers/block/drbd/drbd_receiver.c
805
set_bit(RESOLVE_CONFLICTS, &connection->flags);
drivers/block/drbd/drbd_receiver.c
807
drbd_warn(connection, "initial packet M crossed\n");
drivers/block/drbd/drbd_receiver.c
815
drbd_warn(connection, "Error receiving initial packet\n");
drivers/block/drbd/drbd_receiver.c
823
if (connection->cstate <= C_DISCONNECTING)
drivers/block/drbd/drbd_receiver.c
828
if (get_t_state(&connection->receiver) == EXITING)
drivers/block/drbd/drbd_receiver.c
832
ok = connection_established(connection, &sock.socket, &msock.socket);
drivers/block/drbd/drbd_receiver.c
856
nc = rcu_dereference(connection->net_conf);
drivers/block/drbd/drbd_receiver.c
873
connection->data.socket = sock.socket;
drivers/block/drbd/drbd_receiver.c
874
connection->meta.socket = msock.socket;
drivers/block/drbd/drbd_receiver.c
875
connection->last_received = jiffies;
drivers/block/drbd/drbd_receiver.c
877
h = drbd_do_features(connection);
drivers/block/drbd/drbd_receiver.c
881
if (connection->cram_hmac_tfm) {
drivers/block/drbd/drbd_receiver.c
883
switch (drbd_do_auth(connection)) {
drivers/block/drbd/drbd_receiver.c
885
drbd_err(connection, "Authentication of peer failed\n");
drivers/block/drbd/drbd_receiver.c
888
drbd_err(connection, "Authentication of peer failed, trying again.\n");
drivers/block/drbd/drbd_receiver.c
893
connection->data.socket->sk->sk_sndtimeo = timeout;
drivers/block/drbd/drbd_receiver.c
894
connection->data.socket->sk->sk_rcvtimeo = MAX_SCHEDULE_TIMEOUT;
drivers/block/drbd/drbd_receiver.c
896
if (drbd_send_protocol(connection) == -EOPNOTSUPP)
drivers/block/drbd/drbd_receiver.c
906
idr_for_each_entry(&connection->peer_devices, peer_device, vnr)
drivers/block/drbd/drbd_receiver.c
910
spin_lock_irq(&connection->resource->req_lock);
drivers/block/drbd/drbd_receiver.c
911
set_bit(STATE_SENT, &connection->flags);
drivers/block/drbd/drbd_receiver.c
912
spin_unlock_irq(&connection->resource->req_lock);
drivers/block/drbd/drbd_receiver.c
914
idr_for_each_entry(&connection->peer_devices, peer_device, vnr)
drivers/block/drbd/drbd_receiver.c
918
idr_for_each_entry(&connection->peer_devices, peer_device, vnr) {
drivers/block/drbd/drbd_receiver.c
934
rv = conn_request_state(connection, NS(conn, C_WF_REPORT_PARAMS), CS_VERBOSE);
drivers/block/drbd/drbd_receiver.c
935
if (rv < SS_SUCCESS || connection->cstate != C_WF_REPORT_PARAMS) {
drivers/block/drbd/drbd_receiver.c
936
clear_bit(STATE_SENT, &connection->flags);
drivers/block/drbd/drbd_receiver.c
940
drbd_thread_start(&connection->ack_receiver);
drivers/block/drbd/drbd_receiver.c
943
connection->ack_sender =
drivers/block/drbd/drbd_receiver.c
944
alloc_ordered_workqueue("drbd_as_%s", WQ_MEM_RECLAIM, connection->resource->name);
drivers/block/drbd/drbd_receiver.c
945
if (!connection->ack_sender) {
drivers/block/drbd/drbd_receiver.c
946
drbd_err(connection, "Failed to create workqueue ack_sender\n");
drivers/block/drbd/drbd_receiver.c
950
mutex_lock(&connection->resource->conf_update);
drivers/block/drbd/drbd_receiver.c
955
connection->net_conf->discard_my_data = 0;
drivers/block/drbd/drbd_receiver.c
956
mutex_unlock(&connection->resource->conf_update);
drivers/block/drbd/drbd_receiver.c
970
static int decode_header(struct drbd_connection *connection, void *header, struct packet_info *pi)
drivers/block/drbd/drbd_receiver.c
972
unsigned int header_size = drbd_header_size(connection);
drivers/block/drbd/drbd_receiver.c
978
drbd_err(connection, "Header padding is not zero\n");
drivers/block/drbd/drbd_receiver.c
997
drbd_err(connection, "Wrong magic value 0x%08x in protocol version %d\n",
drivers/block/drbd/drbd_receiver.c
999
connection->agreed_pro_version);
drivers/block/drbd/drbd_req.c
1023
start_new_tl_epoch(first_peer_device(device)->connection);
drivers/block/drbd/drbd_req.c
1361
req->epoch = atomic_read(&first_peer_device(device)->connection->current_tle_nr);
drivers/block/drbd/drbd_req.c
1367
first_peer_device(device)->connection->current_tle_writes++;
drivers/block/drbd/drbd_req.c
1369
list_add_tail(&req->tl_requests, &first_peer_device(device)->connection->transfer_log);
drivers/block/drbd/drbd_req.c
159
static void wake_all_senders(struct drbd_connection *connection)
drivers/block/drbd/drbd_req.c
161
wake_up(&connection->sender_work.q_wait);
drivers/block/drbd/drbd_req.c
1630
struct drbd_connection *connection,
drivers/block/drbd/drbd_req.c
1639
if (time_in_range(now, connection->last_reconnect_jif, connection->last_reconnect_jif + ent))
drivers/block/drbd/drbd_req.c
165
void start_new_tl_epoch(struct drbd_connection *connection)
drivers/block/drbd/drbd_req.c
1652
if (net_req->epoch == connection->send.current_epoch_nr) {
drivers/block/drbd/drbd_req.c
1675
if (time_after(now, connection->send.last_sent_barrier_jif + ent)) {
drivers/block/drbd/drbd_req.c
1677
connection->send.last_sent_barrier_jif, now,
drivers/block/drbd/drbd_req.c
1678
jiffies_to_msecs(now - connection->send.last_sent_barrier_jif), ko_count, timeout);
drivers/block/drbd/drbd_req.c
168
if (connection->current_tle_writes == 0)
drivers/block/drbd/drbd_req.c
1705
struct drbd_connection *connection = first_peer_device(device)->connection;
drivers/block/drbd/drbd_req.c
171
connection->current_tle_writes = 0;
drivers/block/drbd/drbd_req.c
1714
nc = rcu_dereference(connection->net_conf);
drivers/block/drbd/drbd_req.c
172
atomic_inc(&connection->current_tle_nr);
drivers/block/drbd/drbd_req.c
173
wake_all_senders(connection);
drivers/block/drbd/drbd_req.c
1748
req_peer = connection->req_ack_pending;
drivers/block/drbd/drbd_req.c
1754
req_peer = connection->req_not_net_done;
drivers/block/drbd/drbd_req.c
1771
if (ent && req_peer && net_timeout_reached(req_peer, connection, now, ent, ko_count, timeout))
drivers/block/drbd/drbd_req.c
1772
_conn_request_state(connection, NS(conn, C_TIMEOUT), CS_VERBOSE | CS_HARD);
drivers/block/drbd/drbd_req.c
244
req->epoch == atomic_read(&first_peer_device(device)->connection->current_tle_nr))
drivers/block/drbd/drbd_req.c
245
start_new_tl_epoch(first_peer_device(device)->connection);
drivers/block/drbd/drbd_req.c
322
struct drbd_connection *connection = peer_device ? peer_device->connection : NULL;
drivers/block/drbd/drbd_req.c
323
if (!connection)
drivers/block/drbd/drbd_req.c
325
if (connection->req_next == NULL)
drivers/block/drbd/drbd_req.c
326
connection->req_next = req;
drivers/block/drbd/drbd_req.c
331
struct drbd_connection *connection = peer_device ? peer_device->connection : NULL;
drivers/block/drbd/drbd_req.c
333
if (!connection)
drivers/block/drbd/drbd_req.c
335
if (connection->req_next != req)
drivers/block/drbd/drbd_req.c
339
list_for_each_entry_continue(iter, &connection->transfer_log, tl_requests) {
drivers/block/drbd/drbd_req.c
347
connection->req_next = req;
drivers/block/drbd/drbd_req.c
352
struct drbd_connection *connection = peer_device ? peer_device->connection : NULL;
drivers/block/drbd/drbd_req.c
353
if (!connection)
drivers/block/drbd/drbd_req.c
355
if (connection->req_ack_pending == NULL)
drivers/block/drbd/drbd_req.c
356
connection->req_ack_pending = req;
drivers/block/drbd/drbd_req.c
361
struct drbd_connection *connection = peer_device ? peer_device->connection : NULL;
drivers/block/drbd/drbd_req.c
363
if (!connection)
drivers/block/drbd/drbd_req.c
365
if (connection->req_ack_pending != req)
drivers/block/drbd/drbd_req.c
369
list_for_each_entry_continue(iter, &connection->transfer_log, tl_requests) {
drivers/block/drbd/drbd_req.c
377
connection->req_ack_pending = req;
drivers/block/drbd/drbd_req.c
382
struct drbd_connection *connection = peer_device ? peer_device->connection : NULL;
drivers/block/drbd/drbd_req.c
383
if (!connection)
drivers/block/drbd/drbd_req.c
385
if (connection->req_not_net_done == NULL)
drivers/block/drbd/drbd_req.c
386
connection->req_not_net_done = req;
drivers/block/drbd/drbd_req.c
391
struct drbd_connection *connection = peer_device ? peer_device->connection : NULL;
drivers/block/drbd/drbd_req.c
393
if (!connection)
drivers/block/drbd/drbd_req.c
395
if (connection->req_not_net_done != req)
drivers/block/drbd/drbd_req.c
399
list_for_each_entry_continue(iter, &connection->transfer_log, tl_requests) {
drivers/block/drbd/drbd_req.c
407
connection->req_not_net_done = req;
drivers/block/drbd/drbd_req.c
565
struct drbd_connection *const connection = peer_device ? peer_device->connection : NULL;
drivers/block/drbd/drbd_req.c
588
nc = rcu_dereference(connection->net_conf);
drivers/block/drbd/drbd_req.c
661
drbd_queue_work(&connection->sender_work,
drivers/block/drbd/drbd_req.c
697
drbd_queue_work(&connection->sender_work,
drivers/block/drbd/drbd_req.c
702
nc = rcu_dereference(connection->net_conf);
drivers/block/drbd/drbd_req.c
705
if (connection->current_tle_writes >= p)
drivers/block/drbd/drbd_req.c
706
start_new_tl_epoch(connection);
drivers/block/drbd/drbd_req.c
713
drbd_queue_work(&connection->sender_work,
drivers/block/drbd/drbd_req.c
825
drbd_queue_work(&connection->sender_work,
drivers/block/drbd/drbd_req.c
848
drbd_queue_work(&connection->sender_work,
drivers/block/drbd/drbd_req.c
881
start_new_tl_epoch(connection);
drivers/block/drbd/drbd_req.c
987
struct drbd_connection *connection = first_peer_device(device)->connection;
drivers/block/drbd/drbd_req.c
993
nc = rcu_dereference(connection->net_conf);
drivers/block/drbd/drbd_req.c
997
connection->agreed_pro_version < 96)
drivers/block/drbd/drbd_req.h
267
extern void start_new_tl_epoch(struct drbd_connection *connection);
drivers/block/drbd/drbd_req.h
275
extern void tl_restart(struct drbd_connection *connection, enum drbd_req_event what);
drivers/block/drbd/drbd_req.h
276
extern void _tl_restart(struct drbd_connection *connection, enum drbd_req_event what);
drivers/block/drbd/drbd_state.c
112
for_each_connection(connection, resource) {
drivers/block/drbd/drbd_state.c
113
kref_get(&connection->kref);
drivers/block/drbd/drbd_state.c
114
connection_state_change->connection = connection;
drivers/block/drbd/drbd_state.c
116
connection->cstate;
drivers/block/drbd/drbd_state.c
118
conn_highest_peer(connection);
drivers/block/drbd/drbd_state.c
1229
if (peer_device->connection->agreed_pro_version < 90)
drivers/block/drbd/drbd_state.c
1267
struct drbd_connection *connection = peer_device ? peer_device->connection : NULL;
drivers/block/drbd/drbd_state.c
1294
rv = is_valid_soft_transition(os, ns, connection);
drivers/block/drbd/drbd_state.c
1296
rv = is_valid_soft_transition(os, ns, connection);
drivers/block/drbd/drbd_state.c
131
for_each_connection(connection, resource) {
drivers/block/drbd/drbd_state.c
1313
conn_pr_state_change(connection, os, ns,
drivers/block/drbd/drbd_state.c
134
peer_device = conn_peer_device(connection, device->vnr);
drivers/block/drbd/drbd_state.c
1345
start_new_tl_epoch(connection);
drivers/block/drbd/drbd_state.c
1352
no_peer_wf_report_params(connection)) {
drivers/block/drbd/drbd_state.c
1353
clear_bit(STATE_SENT, &connection->flags);
drivers/block/drbd/drbd_state.c
1354
wake_up_all_devices(connection);
drivers/block/drbd/drbd_state.c
1359
wake_up(&connection->ping_wait);
drivers/block/drbd/drbd_state.c
1447
drbd_thread_stop_nowait(&connection->receiver);
drivers/block/drbd/drbd_state.c
1451
drbd_thread_stop_nowait(&connection->receiver);
drivers/block/drbd/drbd_state.c
1456
drbd_thread_restart_nowait(&connection->receiver);
drivers/block/drbd/drbd_state.c
1461
connection->connect_cnt++;
drivers/block/drbd/drbd_state.c
1480
drbd_queue_work(&connection->sender_work,
drivers/block/drbd/drbd_state.c
1529
D_ASSERT(device, current == first_peer_device(device)->connection->worker.task);
drivers/block/drbd/drbd_state.c
1566
struct drbd_connection *connection = p->connection;
drivers/block/drbd/drbd_state.c
1572
return notify_connection_state(skb, seq, connection, &connection_info, type);
drivers/block/drbd/drbd_state.c
1714
struct drbd_connection *connection = peer_device ? peer_device->connection : NULL;
drivers/block/drbd/drbd_state.c
1744
if (os.conn < C_CONNECTED && conn_lowest_conn(connection) >= C_CONNECTED)
drivers/block/drbd/drbd_state.c
1748
conn_lowest_disk(connection) == D_UP_TO_DATE)
drivers/block/drbd/drbd_state.c
1752
_tl_restart(connection, what);
drivers/block/drbd/drbd_state.c
1753
_conn_request_state(connection,
drivers/block/drbd/drbd_state.c
1763
if (resource->susp_fen && conn_lowest_conn(connection) >= C_CONNECTED) {
drivers/block/drbd/drbd_state.c
1769
idr_for_each_entry(&connection->peer_devices, peer_device, vnr)
drivers/block/drbd/drbd_state.c
1779
_tl_restart(connection, RESEND);
drivers/block/drbd/drbd_state.c
1780
_conn_request_state(connection,
drivers/block/drbd/drbd_state.c
1794
connection->agreed_pro_version >= 96 && get_ldev(device)) {
drivers/block/drbd/drbd_state.c
184
struct drbd_connection *connection =
drivers/block/drbd/drbd_state.c
185
connection_state_change->connection;
drivers/block/drbd/drbd_state.c
187
connection_state_change->cstate[NEW] = connection->cstate;
drivers/block/drbd/drbd_state.c
189
conn_highest_peer(connection);
drivers/block/drbd/drbd_state.c
2043
struct drbd_connection *connection;
drivers/block/drbd/drbd_state.c
2051
struct drbd_connection *connection = acscw->connection;
drivers/block/drbd/drbd_state.c
2063
drbd_thread_start(&connection->receiver);
drivers/block/drbd/drbd_state.c
2069
idr_for_each_entry(&connection->peer_devices, peer_device, vnr)
drivers/block/drbd/drbd_state.c
2072
notify_connection_state(NULL, 0, connection, NULL, NOTIFY_DESTROY);
drivers/block/drbd/drbd_state.c
2075
mutex_lock(&connection->resource->conf_update);
drivers/block/drbd/drbd_state.c
2076
old_conf = connection->net_conf;
drivers/block/drbd/drbd_state.c
2077
connection->my_addr_len = 0;
drivers/block/drbd/drbd_state.c
2078
connection->peer_addr_len = 0;
drivers/block/drbd/drbd_state.c
2079
RCU_INIT_POINTER(connection->net_conf, NULL);
drivers/block/drbd/drbd_state.c
2080
conn_free_crypto(connection);
drivers/block/drbd/drbd_state.c
2081
mutex_unlock(&connection->resource->conf_update);
drivers/block/drbd/drbd_state.c
2090
idr_for_each_entry(&connection->peer_devices, peer_device, vnr) {
drivers/block/drbd/drbd_state.c
2098
spin_lock_irq(&connection->resource->req_lock);
drivers/block/drbd/drbd_state.c
2099
_tl_restart(connection, CONNECTION_LOST_WHILE_PENDING);
drivers/block/drbd/drbd_state.c
2100
_conn_request_state(connection,
drivers/block/drbd/drbd_state.c
2104
spin_unlock_irq(&connection->resource->req_lock);
drivers/block/drbd/drbd_state.c
2107
conn_md_sync(connection);
drivers/block/drbd/drbd_state.c
2108
kref_put(&connection->kref, drbd_destroy_connection);
drivers/block/drbd/drbd_state.c
2113
static void conn_old_common_state(struct drbd_connection *connection, union drbd_state *pcs, enum chg_state_flags *pf)
drivers/block/drbd/drbd_state.c
2121
.conn = connection->cstate,
drivers/block/drbd/drbd_state.c
2127
idr_for_each_entry(&connection->peer_devices, peer_device, vnr) {
drivers/block/drbd/drbd_state.c
2160
conn_is_valid_transition(struct drbd_connection *connection, union drbd_state mask, union drbd_state val,
drivers/block/drbd/drbd_state.c
2169
idr_for_each_entry(&connection->peer_devices, peer_device, vnr) {
drivers/block/drbd/drbd_state.c
2186
rv = is_valid_soft_transition(os, ns, connection);
drivers/block/drbd/drbd_state.c
2188
rv = is_valid_soft_transition(os, ns, connection);
drivers/block/drbd/drbd_state.c
2203
conn_set_state(struct drbd_connection *connection, union drbd_state mask, union drbd_state val,
drivers/block/drbd/drbd_state.c
2222
if (connection->cstate != C_WF_REPORT_PARAMS && val.conn == C_WF_REPORT_PARAMS)
drivers/block/drbd/drbd_state.c
2223
connection->last_reconnect_jif = jiffies;
drivers/block/drbd/drbd_state.c
2225
connection->cstate = val.conn;
drivers/block/drbd/drbd_state.c
2229
idr_for_each_entry(&connection->peer_devices, peer_device, vnr) {
drivers/block/drbd/drbd_state.c
2266
ns_min.susp = ns_max.susp = connection->resource->susp;
drivers/block/drbd/drbd_state.c
2267
ns_min.susp_nod = ns_max.susp_nod = connection->resource->susp_nod;
drivers/block/drbd/drbd_state.c
2268
ns_min.susp_fen = ns_max.susp_fen = connection->resource->susp_fen;
drivers/block/drbd/drbd_state.c
2275
_conn_rq_cond(struct drbd_connection *connection, union drbd_state mask, union drbd_state val)
drivers/block/drbd/drbd_state.c
2279
if (test_and_clear_bit(CONN_WD_ST_CHG_OKAY, &connection->flags))
drivers/block/drbd/drbd_state.c
2282
if (test_and_clear_bit(CONN_WD_ST_CHG_FAIL, &connection->flags))
drivers/block/drbd/drbd_state.c
2285
err = conn_is_valid_transition(connection, mask, val, 0);
drivers/block/drbd/drbd_state.c
2286
if (err == SS_SUCCESS && connection->cstate == C_WF_REPORT_PARAMS)
drivers/block/drbd/drbd_state.c
2293
_conn_request_state(struct drbd_connection *connection, union drbd_state mask, union drbd_state val,
drivers/block/drbd/drbd_state.c
2298
enum drbd_conns oc = connection->cstate;
drivers/block/drbd/drbd_state.c
2309
rv = conn_is_valid_transition(connection, mask, val, flags);
drivers/block/drbd/drbd_state.c
2319
spin_unlock_irq(&connection->resource->req_lock);
drivers/block/drbd/drbd_state.c
2320
mutex_lock(&connection->cstate_mutex);
drivers/block/drbd/drbd_state.c
2323
set_bit(CONN_WD_ST_CHG_REQ, &connection->flags);
drivers/block/drbd/drbd_state.c
2324
if (conn_send_state_req(connection, mask, val)) {
drivers/block/drbd/drbd_state.c
2326
clear_bit(CONN_WD_ST_CHG_REQ, &connection->flags);
drivers/block/drbd/drbd_state.c
2333
set_bit(DISCONNECT_SENT, &connection->flags);
drivers/block/drbd/drbd_state.c
2338
spin_lock_irq(&connection->resource->req_lock);
drivers/block/drbd/drbd_state.c
2339
wait_event_lock_irq(connection->ping_wait,
drivers/block/drbd/drbd_state.c
2340
(rv = _conn_rq_cond(connection, mask, val)),
drivers/block/drbd/drbd_state.c
2341
connection->resource->req_lock);
drivers/block/drbd/drbd_state.c
2342
clear_bit(CONN_WD_ST_CHG_REQ, &connection->flags);
drivers/block/drbd/drbd_state.c
2347
state_change = remember_old_state(connection->resource, GFP_ATOMIC);
drivers/block/drbd/drbd_state.c
2348
conn_old_common_state(connection, &os, &flags);
drivers/block/drbd/drbd_state.c
2350
conn_set_state(connection, mask, val, &ns_min, &ns_max, flags);
drivers/block/drbd/drbd_state.c
2351
conn_pr_state_change(connection, os, ns_max, flags);
drivers/block/drbd/drbd_state.c
2361
kref_get(&connection->kref);
drivers/block/drbd/drbd_state.c
2362
acscw->connection = connection;
drivers/block/drbd/drbd_state.c
2364
drbd_queue_work(&connection->sender_work, &acscw->w);
drivers/block/drbd/drbd_state.c
2366
drbd_err(connection, "Could not kmalloc an acscw\n");
drivers/block/drbd/drbd_state.c
2373
spin_unlock_irq(&connection->resource->req_lock);
drivers/block/drbd/drbd_state.c
2375
mutex_unlock(&connection->cstate_mutex);
drivers/block/drbd/drbd_state.c
2376
spin_lock_irq(&connection->resource->req_lock);
drivers/block/drbd/drbd_state.c
2379
drbd_err(connection, "State change failed: %s\n", drbd_set_st_err_str(rv));
drivers/block/drbd/drbd_state.c
2380
drbd_err(connection, " mask = 0x%x val = 0x%x\n", mask.i, val.i);
drivers/block/drbd/drbd_state.c
2381
drbd_err(connection, " old_conn:%s wanted_conn:%s\n", drbd_conn_str(oc), drbd_conn_str(val.conn));
drivers/block/drbd/drbd_state.c
2387
conn_request_state(struct drbd_connection *connection, union drbd_state mask, union drbd_state val,
drivers/block/drbd/drbd_state.c
2392
spin_lock_irq(&connection->resource->req_lock);
drivers/block/drbd/drbd_state.c
2393
rv = _conn_request_state(connection, mask, val, flags);
drivers/block/drbd/drbd_state.c
2394
spin_unlock_irq(&connection->resource->req_lock);
drivers/block/drbd/drbd_state.c
270
struct drbd_connection *connection =
drivers/block/drbd/drbd_state.c
271
state_change->connections[n].connection;
drivers/block/drbd/drbd_state.c
273
if (connection)
drivers/block/drbd/drbd_state.c
274
kref_put(&connection->kref, drbd_destroy_connection);
drivers/block/drbd/drbd_state.c
294
bool conn_all_vols_unconf(struct drbd_connection *connection)
drivers/block/drbd/drbd_state.c
301
idr_for_each_entry(&connection->peer_devices, peer_device, vnr) {
drivers/block/drbd/drbd_state.c
335
enum drbd_role conn_highest_role(struct drbd_connection *connection)
drivers/block/drbd/drbd_state.c
342
idr_for_each_entry(&connection->peer_devices, peer_device, vnr) {
drivers/block/drbd/drbd_state.c
351
enum drbd_role conn_highest_peer(struct drbd_connection *connection)
drivers/block/drbd/drbd_state.c
358
idr_for_each_entry(&connection->peer_devices, peer_device, vnr) {
drivers/block/drbd/drbd_state.c
367
enum drbd_disk_state conn_highest_disk(struct drbd_connection *connection)
drivers/block/drbd/drbd_state.c
374
idr_for_each_entry(&connection->peer_devices, peer_device, vnr) {
drivers/block/drbd/drbd_state.c
383
enum drbd_disk_state conn_lowest_disk(struct drbd_connection *connection)
drivers/block/drbd/drbd_state.c
390
idr_for_each_entry(&connection->peer_devices, peer_device, vnr) {
drivers/block/drbd/drbd_state.c
399
enum drbd_disk_state conn_highest_pdsk(struct drbd_connection *connection)
drivers/block/drbd/drbd_state.c
406
idr_for_each_entry(&connection->peer_devices, peer_device, vnr) {
drivers/block/drbd/drbd_state.c
415
enum drbd_conns conn_lowest_conn(struct drbd_connection *connection)
drivers/block/drbd/drbd_state.c
422
idr_for_each_entry(&connection->peer_devices, peer_device, vnr) {
drivers/block/drbd/drbd_state.c
431
static bool no_peer_wf_report_params(struct drbd_connection *connection)
drivers/block/drbd/drbd_state.c
438
idr_for_each_entry(&connection->peer_devices, peer_device, vnr)
drivers/block/drbd/drbd_state.c
448
static void wake_up_all_devices(struct drbd_connection *connection)
drivers/block/drbd/drbd_state.c
454
idr_for_each_entry(&connection->peer_devices, peer_device, vnr)
drivers/block/drbd/drbd_state.c
46
struct drbd_connection *connection;
drivers/block/drbd/drbd_state.c
54
for_each_connection(connection, resource)
drivers/block/drbd/drbd_state.c
542
rv = is_valid_soft_transition(os, ns, first_peer_device(device)->connection);
drivers/block/drbd/drbd_state.c
591
rv = is_valid_soft_transition(os, ns, first_peer_device(device)->connection);
drivers/block/drbd/drbd_state.c
625
D_ASSERT(device, current != first_peer_device(device)->connection->worker.task);
drivers/block/drbd/drbd_state.c
79
state_change->connections[n].connection = NULL;
drivers/block/drbd/drbd_state.c
799
static void conn_pr_state_change(struct drbd_connection *connection, union drbd_state os, union drbd_state ns,
drivers/block/drbd/drbd_state.c
813
drbd_info(connection, "%s\n", pb);
drivers/block/drbd/drbd_state.c
838
nc = rcu_dereference(first_peer_device(device)->connection->net_conf);
drivers/block/drbd/drbd_state.c
843
else if (conn_highest_peer(first_peer_device(device)->connection) == R_PRIMARY)
drivers/block/drbd/drbd_state.c
88
struct drbd_connection *connection;
drivers/block/drbd/drbd_state.c
884
first_peer_device(device)->connection->agreed_pro_version < 88)
drivers/block/drbd/drbd_state.c
912
is_valid_soft_transition(union drbd_state os, union drbd_state ns, struct drbd_connection *connection)
drivers/block/drbd/drbd_state.c
937
if (test_bit(STATE_SENT, &connection->flags) &&
drivers/block/drbd/drbd_state.h
137
_conn_request_state(struct drbd_connection *connection, union drbd_state mask, union drbd_state val,
drivers/block/drbd/drbd_state.h
141
conn_request_state(struct drbd_connection *connection, union drbd_state mask, union drbd_state val,
drivers/block/drbd/drbd_state.h
145
extern bool conn_all_vols_unconf(struct drbd_connection *connection);
drivers/block/drbd/drbd_state.h
167
enum drbd_role conn_highest_role(struct drbd_connection *connection);
drivers/block/drbd/drbd_state.h
168
enum drbd_role conn_highest_peer(struct drbd_connection *connection);
drivers/block/drbd/drbd_state.h
169
enum drbd_disk_state conn_highest_disk(struct drbd_connection *connection);
drivers/block/drbd/drbd_state.h
170
enum drbd_disk_state conn_lowest_disk(struct drbd_connection *connection);
drivers/block/drbd/drbd_state.h
171
enum drbd_disk_state conn_highest_pdsk(struct drbd_connection *connection);
drivers/block/drbd/drbd_state.h
172
enum drbd_conns conn_lowest_conn(struct drbd_connection *connection);
drivers/block/drbd/drbd_state_change.h
19
struct drbd_connection *connection;
drivers/block/drbd/drbd_worker.c
1004
idr_for_each_entry(&connection->peer_devices, peer_device, vnr) {
drivers/block/drbd/drbd_worker.c
1012
conn_khelper(connection, "unfence-peer");
drivers/block/drbd/drbd_worker.c
107
struct drbd_connection *connection = peer_device->connection;
drivers/block/drbd/drbd_worker.c
1175
if (peer_device->connection->csums_tfm) {
drivers/block/drbd/drbd_worker.c
1176
digest_size = crypto_shash_digestsize(peer_device->connection->csums_tfm);
drivers/block/drbd/drbd_worker.c
1181
drbd_csum_ee(peer_device->connection->csums_tfm, peer_req, digest);
drivers/block/drbd/drbd_worker.c
1226
digest_size = crypto_shash_digestsize(peer_device->connection->verify_tfm);
drivers/block/drbd/drbd_worker.c
1234
drbd_csum_ee(peer_device->connection->verify_tfm, peer_req, digest);
drivers/block/drbd/drbd_worker.c
1299
digest_size = crypto_shash_digestsize(peer_device->connection->verify_tfm);
drivers/block/drbd/drbd_worker.c
1302
drbd_csum_ee(peer_device->connection->verify_tfm, peer_req, digest);
drivers/block/drbd/drbd_worker.c
1348
static int drbd_send_barrier(struct drbd_connection *connection)
drivers/block/drbd/drbd_worker.c
1353
sock = &connection->data;
drivers/block/drbd/drbd_worker.c
1354
p = conn_prepare_command(connection, sock);
drivers/block/drbd/drbd_worker.c
1357
p->barrier = connection->send.current_epoch_nr;
drivers/block/drbd/drbd_worker.c
1359
connection->send.current_epoch_writes = 0;
drivers/block/drbd/drbd_worker.c
1360
connection->send.last_sent_barrier_jif = jiffies;
drivers/block/drbd/drbd_worker.c
1362
return conn_send_command(connection, sock, P_BARRIER, sizeof(*p), NULL, 0);
drivers/block/drbd/drbd_worker.c
1367
struct drbd_socket *sock = &pd->connection->data;
drivers/block/drbd/drbd_worker.c
1383
static void re_init_if_first_write(struct drbd_connection *connection, unsigned int epoch)
drivers/block/drbd/drbd_worker.c
1385
if (!connection->send.seen_any_write_yet) {
drivers/block/drbd/drbd_worker.c
1386
connection->send.seen_any_write_yet = true;
drivers/block/drbd/drbd_worker.c
1387
connection->send.current_epoch_nr = epoch;
drivers/block/drbd/drbd_worker.c
1388
connection->send.current_epoch_writes = 0;
drivers/block/drbd/drbd_worker.c
1389
connection->send.last_sent_barrier_jif = jiffies;
drivers/block/drbd/drbd_worker.c
1393
static void maybe_send_barrier(struct drbd_connection *connection, unsigned int epoch)
drivers/block/drbd/drbd_worker.c
1396
if (!connection->send.seen_any_write_yet)
drivers/block/drbd/drbd_worker.c
1398
if (connection->send.current_epoch_nr != epoch) {
drivers/block/drbd/drbd_worker.c
1399
if (connection->send.current_epoch_writes)
drivers/block/drbd/drbd_worker.c
1400
drbd_send_barrier(connection);
drivers/block/drbd/drbd_worker.c
1401
connection->send.current_epoch_nr = epoch;
drivers/block/drbd/drbd_worker.c
1410
struct drbd_connection *const connection = peer_device->connection;
drivers/block/drbd/drbd_worker.c
1423
maybe_send_barrier(connection, req->epoch);
drivers/block/drbd/drbd_worker.c
1441
struct drbd_connection *connection = peer_device->connection;
drivers/block/drbd/drbd_worker.c
1451
re_init_if_first_write(connection, req->epoch);
drivers/block/drbd/drbd_worker.c
1452
maybe_send_barrier(connection, req->epoch);
drivers/block/drbd/drbd_worker.c
1453
connection->send.current_epoch_writes++;
drivers/block/drbd/drbd_worker.c
1474
struct drbd_connection *connection = peer_device->connection;
drivers/block/drbd/drbd_worker.c
1486
maybe_send_barrier(connection, req->epoch);
drivers/block/drbd/drbd_worker.c
149
if (connection->cstate >= C_WF_REPORT_PARAMS) {
drivers/block/drbd/drbd_worker.c
151
if (!queue_work(connection->ack_sender, &peer_device->send_acks_work))
drivers/block/drbd/drbd_worker.c
1700
static bool use_checksum_based_resync(struct drbd_connection *connection, struct drbd_device *device)
drivers/block/drbd/drbd_worker.c
1704
csums_after_crash_only = rcu_dereference(connection->net_conf)->csums_after_crash_only;
drivers/block/drbd/drbd_worker.c
1706
return connection->agreed_pro_version >= 89 && /* supported? */
drivers/block/drbd/drbd_worker.c
1707
connection->csums_tfm && /* configured? */
drivers/block/drbd/drbd_worker.c
1723
struct drbd_connection *connection = peer_device ? peer_device->connection : NULL;
drivers/block/drbd/drbd_worker.c
1732
if (!connection) {
drivers/block/drbd/drbd_worker.c
1747
conn_request_state(connection, NS(conn, C_DISCONNECTING), CS_HARD);
drivers/block/drbd/drbd_worker.c
1760
conn_request_state(connection,
drivers/block/drbd/drbd_worker.c
1768
if (current == connection->worker.task) {
drivers/block/drbd/drbd_worker.c
1846
device->use_csums = use_checksum_based_resync(connection, device);
drivers/block/drbd/drbd_worker.c
1858
if (side == C_SYNC_SOURCE && connection->agreed_pro_version < 96)
drivers/block/drbd/drbd_worker.c
1861
if (connection->agreed_pro_version < 95 && device->rs_total == 0) {
drivers/block/drbd/drbd_worker.c
1877
nc = rcu_dereference(connection->net_conf);
drivers/block/drbd/drbd_worker.c
2038
static void do_unqueued_work(struct drbd_connection *connection)
drivers/block/drbd/drbd_worker.c
2044
idr_for_each_entry(&connection->peer_devices, peer_device, vnr) {
drivers/block/drbd/drbd_worker.c
2067
static void wait_for_work(struct drbd_connection *connection, struct list_head *work_list)
drivers/block/drbd/drbd_worker.c
2073
dequeue_work_batch(&connection->sender_work, work_list);
drivers/block/drbd/drbd_worker.c
2084
nc = rcu_dereference(connection->net_conf);
drivers/block/drbd/drbd_worker.c
2088
mutex_lock(&connection->data.mutex);
drivers/block/drbd/drbd_worker.c
2089
if (connection->data.socket)
drivers/block/drbd/drbd_worker.c
2090
tcp_sock_set_cork(connection->data.socket->sk, false);
drivers/block/drbd/drbd_worker.c
2091
mutex_unlock(&connection->data.mutex);
drivers/block/drbd/drbd_worker.c
2096
prepare_to_wait(&connection->sender_work.q_wait, &wait, TASK_INTERRUPTIBLE);
drivers/block/drbd/drbd_worker.c
2097
spin_lock_irq(&connection->resource->req_lock);
drivers/block/drbd/drbd_worker.c
2098
spin_lock(&connection->sender_work.q_lock); /* FIXME get rid of this one? */
drivers/block/drbd/drbd_worker.c
2099
if (!list_empty(&connection->sender_work.q))
drivers/block/drbd/drbd_worker.c
2100
list_splice_tail_init(&connection->sender_work.q, work_list);
drivers/block/drbd/drbd_worker.c
2101
spin_unlock(&connection->sender_work.q_lock); /* FIXME get rid of this one? */
drivers/block/drbd/drbd_worker.c
2103
spin_unlock_irq(&connection->resource->req_lock);
drivers/block/drbd/drbd_worker.c
2115
atomic_read(&connection->current_tle_nr) !=
drivers/block/drbd/drbd_worker.c
2116
connection->send.current_epoch_nr;
drivers/block/drbd/drbd_worker.c
2117
spin_unlock_irq(&connection->resource->req_lock);
drivers/block/drbd/drbd_worker.c
2120
maybe_send_barrier(connection,
drivers/block/drbd/drbd_worker.c
2121
connection->send.current_epoch_nr + 1);
drivers/block/drbd/drbd_worker.c
2123
if (test_bit(DEVICE_WORK_PENDING, &connection->flags))
drivers/block/drbd/drbd_worker.c
2127
if (get_t_state(&connection->worker) != RUNNING)
drivers/block/drbd/drbd_worker.c
2135
finish_wait(&connection->sender_work.q_wait, &wait);
drivers/block/drbd/drbd_worker.c
2139
nc = rcu_dereference(connection->net_conf);
drivers/block/drbd/drbd_worker.c
2142
mutex_lock(&connection->data.mutex);
drivers/block/drbd/drbd_worker.c
2143
if (connection->data.socket) {
drivers/block/drbd/drbd_worker.c
2145
tcp_sock_set_cork(connection->data.socket->sk, true);
drivers/block/drbd/drbd_worker.c
2147
tcp_sock_set_cork(connection->data.socket->sk, false);
drivers/block/drbd/drbd_worker.c
2149
mutex_unlock(&connection->data.mutex);
drivers/block/drbd/drbd_worker.c
2154
struct drbd_connection *connection = thi->connection;
drivers/block/drbd/drbd_worker.c
2164
update_worker_timing_details(connection, wait_for_work);
drivers/block/drbd/drbd_worker.c
2165
wait_for_work(connection, &work_list);
drivers/block/drbd/drbd_worker.c
2168
if (test_and_clear_bit(DEVICE_WORK_PENDING, &connection->flags)) {
drivers/block/drbd/drbd_worker.c
2169
update_worker_timing_details(connection, do_unqueued_work);
drivers/block/drbd/drbd_worker.c
2170
do_unqueued_work(connection);
drivers/block/drbd/drbd_worker.c
2176
drbd_warn(connection, "Worker got an unexpected signal\n");
drivers/block/drbd/drbd_worker.c
2188
update_worker_timing_details(connection, w->cb);
drivers/block/drbd/drbd_worker.c
2189
if (w->cb(w, connection->cstate < C_WF_REPORT_PARAMS) == 0)
drivers/block/drbd/drbd_worker.c
2191
if (connection->cstate >= C_WF_REPORT_PARAMS)
drivers/block/drbd/drbd_worker.c
2192
conn_request_state(connection, NS(conn, C_NETWORK_FAILURE), CS_HARD);
drivers/block/drbd/drbd_worker.c
2197
if (test_and_clear_bit(DEVICE_WORK_PENDING, &connection->flags)) {
drivers/block/drbd/drbd_worker.c
2198
update_worker_timing_details(connection, do_unqueued_work);
drivers/block/drbd/drbd_worker.c
2199
do_unqueued_work(connection);
drivers/block/drbd/drbd_worker.c
2204
update_worker_timing_details(connection, w->cb);
drivers/block/drbd/drbd_worker.c
2207
dequeue_work_batch(&connection->sender_work, &work_list);
drivers/block/drbd/drbd_worker.c
2208
} while (!list_empty(&work_list) || test_bit(DEVICE_WORK_PENDING, &connection->flags));
drivers/block/drbd/drbd_worker.c
2211
idr_for_each_entry(&connection->peer_devices, peer_device, vnr) {
drivers/block/drbd/drbd_worker.c
353
digest_size = crypto_shash_digestsize(peer_device->connection->csums_tfm);
drivers/block/drbd/drbd_worker.c
358
drbd_csum_ee(peer_device->connection->csums_tfm, peer_req, digest);
drivers/block/drbd/drbd_worker.c
449
&first_peer_device(device)->connection->sender_work,
drivers/block/drbd/drbd_worker.c
589
struct drbd_connection *const connection = peer_device ? peer_device->connection : NULL;
drivers/block/drbd/drbd_worker.c
617
if (connection->agreed_features & DRBD_FF_THIN_RESYNC) {
drivers/block/drbd/drbd_worker.c
631
mutex_lock(&connection->data.mutex);
drivers/block/drbd/drbd_worker.c
632
if (connection->data.socket) {
drivers/block/drbd/drbd_worker.c
633
struct sock *sk = connection->data.socket->sk;
drivers/block/drbd/drbd_worker.c
643
mutex_unlock(&connection->data.mutex);
drivers/block/drbd/drbd_worker.c
845
struct drbd_connection *connection = first_peer_device(device)->connection;
drivers/block/drbd/drbd_worker.c
847
clear_bit(GOT_PING_ACK, &connection->flags);
drivers/block/drbd/drbd_worker.c
848
request_ping(connection);
drivers/block/drbd/drbd_worker.c
849
wait_event(connection->ping_wait,
drivers/block/drbd/drbd_worker.c
850
test_bit(GOT_PING_ACK, &connection->flags) || device->state.conn < C_CONNECTED);
drivers/block/drbd/drbd_worker.c
856
struct drbd_connection *connection = peer_device->connection;
drivers/block/drbd/drbd_worker.c
878
drbd_queue_work(&connection->sender_work, &dw->w);
drivers/block/drbd/drbd_worker.c
96
drbd_queue_work(&peer_device->connection->sender_work, &peer_req->w);
drivers/gpio/gpiolib-acpi-core.c
1084
status = acpi_buffer_to_resource(achip->conn_info.connection,
drivers/gpu/drm/amd/display/modules/hdcp/hdcp.c
250
memset(&hdcp->connection, 0, sizeof(hdcp->connection));
drivers/gpu/drm/amd/display/modules/hdcp/hdcp.c
31
struct mod_hdcp_trace *trace = &hdcp->connection.trace;
drivers/gpu/drm/amd/display/modules/hdcp/hdcp.c
32
const uint8_t retry_limit = hdcp->connection.link.adjust.retry_limit;
drivers/gpu/drm/amd/display/modules/hdcp/hdcp.c
358
memset(&hdcp->connection.trace, 0, sizeof(hdcp->connection.trace));
drivers/gpu/drm/amd/display/modules/hdcp/hdcp.c
361
hdcp->connection.link = *link;
drivers/gpu/drm/amd/display/modules/hdcp/hdcp.c
371
callback_in_ms(hdcp->connection.link.adjust.auth_delay * 1000, output);
drivers/gpu/drm/amd/display/modules/hdcp/hdcp.c
404
memset(&hdcp->connection.trace, 0, sizeof(hdcp->connection.trace));
drivers/gpu/drm/amd/display/modules/hdcp/hdcp.c
414
callback_in_ms(hdcp->connection.link.adjust.auth_delay * 1000,
drivers/gpu/drm/amd/display/modules/hdcp/hdcp.c
42
hdcp->connection.hdcp1_retry_count++;
drivers/gpu/drm/amd/display/modules/hdcp/hdcp.c
43
if (hdcp->connection.hdcp1_retry_count == retry_limit)
drivers/gpu/drm/amd/display/modules/hdcp/hdcp.c
44
hdcp->connection.link.adjust.hdcp1.disable = 1;
drivers/gpu/drm/amd/display/modules/hdcp/hdcp.c
442
if (memcmp(link_adjust, &hdcp->connection.link.adjust,
drivers/gpu/drm/amd/display/modules/hdcp/hdcp.c
450
if (memcmp(link_adjust, &hdcp->connection.link.adjust,
drivers/gpu/drm/amd/display/modules/hdcp/hdcp.c
46
hdcp->connection.hdcp2_retry_count++;
drivers/gpu/drm/amd/display/modules/hdcp/hdcp.c
468
memset(&hdcp->connection.trace, 0, sizeof(hdcp->connection.trace));
drivers/gpu/drm/amd/display/modules/hdcp/hdcp.c
47
if (hdcp->connection.hdcp2_retry_count == retry_limit)
drivers/gpu/drm/amd/display/modules/hdcp/hdcp.c
471
hdcp->connection.link.adjust = *link_adjust;
drivers/gpu/drm/amd/display/modules/hdcp/hdcp.c
48
hdcp->connection.link.adjust.hdcp2.disable = 1;
drivers/gpu/drm/amd/display/modules/hdcp/hdcp.c
499
query->link = &hdcp->connection.link;
drivers/gpu/drm/amd/display/modules/hdcp/hdcp.c
501
query->trace = &hdcp->connection.trace;
drivers/gpu/drm/amd/display/modules/hdcp/hdcp.c
68
!hdcp->connection.link.adjust.hdcp1.disable &&
drivers/gpu/drm/amd/display/modules/hdcp/hdcp.c
69
!hdcp->connection.is_hdcp1_revoked;
drivers/gpu/drm/amd/display/modules/hdcp/hdcp.c
88
!hdcp->connection.link.adjust.hdcp2.disable &&
drivers/gpu/drm/amd/display/modules/hdcp/hdcp.c
89
!hdcp->connection.is_hdcp2_revoked;
drivers/gpu/drm/amd/display/modules/hdcp/hdcp.h
203
struct mod_hdcp_connection connection;
drivers/gpu/drm/amd/display/modules/hdcp/hdcp.h
395
return (hdcp->connection.link.mode == MOD_HDCP_MODE_DP);
drivers/gpu/drm/amd/display/modules/hdcp/hdcp.h
400
return (hdcp->connection.link.mode == MOD_HDCP_MODE_DP &&
drivers/gpu/drm/amd/display/modules/hdcp/hdcp.h
401
hdcp->connection.link.dp.mst_enabled);
drivers/gpu/drm/amd/display/modules/hdcp/hdcp.h
406
return (hdcp->connection.link.mode == MOD_HDCP_MODE_DEFAULT);
drivers/gpu/drm/amd/display/modules/hdcp/hdcp.h
582
hdcp->connection.hdcp1_retry_count = 0;
drivers/gpu/drm/amd/display/modules/hdcp/hdcp.h
583
hdcp->connection.hdcp2_retry_count = 0;
drivers/gpu/drm/amd/display/modules/hdcp/hdcp1_execution.c
145
hdcp->connection.trace.hdcp1.downstream_device_count = get_device_count(hdcp);
drivers/gpu/drm/amd/display/modules/hdcp/hdcp1_execution.c
241
if (hdcp->connection.is_repeater) {
drivers/gpu/drm/amd/display/modules/hdcp/hdcp1_execution.c
242
if (!hdcp->connection.link.adjust.hdcp1.postpone_encryption)
drivers/gpu/drm/amd/display/modules/hdcp/hdcp1_execution.c
44
hdcp->connection.trace.hdcp1.attempt_count++;
drivers/gpu/drm/amd/display/modules/hdcp/hdcp1_transition.c
157
struct mod_hdcp_connection *conn = &hdcp->connection;
drivers/gpu/drm/amd/display/modules/hdcp/hdcp1_transition.c
158
struct mod_hdcp_link_adjustment *adjust = &hdcp->connection.link.adjust;
drivers/gpu/drm/amd/display/modules/hdcp/hdcp1_transition.c
212
!hdcp->connection.is_hdcp1_revoked) {
drivers/gpu/drm/amd/display/modules/hdcp/hdcp1_transition.c
296
!hdcp->connection.is_hdcp1_revoked) {
drivers/gpu/drm/amd/display/modules/hdcp/hdcp1_transition.c
34
struct mod_hdcp_connection *conn = &hdcp->connection;
drivers/gpu/drm/amd/display/modules/hdcp/hdcp1_transition.c
35
struct mod_hdcp_link_adjustment *adjust = &hdcp->connection.link.adjust;
drivers/gpu/drm/amd/display/modules/hdcp/hdcp2_execution.c
210
struct mod_hdcp_trace *trace = &hdcp->connection.trace;
drivers/gpu/drm/amd/display/modules/hdcp/hdcp2_execution.c
249
if (hdcp->connection.is_repeater)
drivers/gpu/drm/amd/display/modules/hdcp/hdcp2_execution.c
484
if (hdcp->connection.link.adjust.hdcp2.use_fw_locality_check) {
drivers/gpu/drm/amd/display/modules/hdcp/hdcp2_execution.c
51
struct mod_hdcp_trace *trace = &hdcp->connection.trace;
drivers/gpu/drm/amd/display/modules/hdcp/hdcp2_transition.c
34
struct mod_hdcp_connection *conn = &hdcp->connection;
drivers/gpu/drm/amd/display/modules/hdcp/hdcp2_transition.c
35
struct mod_hdcp_link_adjustment *adjust = &hdcp->connection.link.adjust;
drivers/gpu/drm/amd/display/modules/hdcp/hdcp2_transition.c
388
struct mod_hdcp_connection *conn = &hdcp->connection;
drivers/gpu/drm/amd/display/modules/hdcp/hdcp2_transition.c
389
struct mod_hdcp_link_adjustment *adjust = &hdcp->connection.link.adjust;
drivers/gpu/drm/amd/display/modules/hdcp/hdcp2_transition.c
597
if (hdcp->connection.hdcp2_retry_count >= 1)
drivers/gpu/drm/amd/display/modules/hdcp/hdcp_ddc.c
683
uint32_t cp_irq_addrs = (hdcp->connection.link.dp.rev >= 0x14)
drivers/gpu/drm/amd/display/modules/hdcp/hdcp_psp.c
127
struct mod_hdcp_link *link = &hdcp->connection.link;
drivers/gpu/drm/amd/display/modules/hdcp/hdcp_psp.c
174
struct mod_hdcp_link *link = &hdcp->connection.link;
drivers/gpu/drm/amd/display/modules/hdcp/hdcp_psp.c
352
hdcp->connection.is_repeater = 1;
drivers/gpu/drm/amd/display/modules/hdcp/hdcp_psp.c
355
hdcp->connection.is_repeater = 0;
drivers/gpu/drm/amd/display/modules/hdcp/hdcp_psp.c
358
hdcp->connection.is_hdcp1_revoked = 1;
drivers/gpu/drm/amd/display/modules/hdcp/hdcp_psp.c
428
hdcp->connection.is_hdcp1_revoked = 1;
drivers/gpu/drm/amd/display/modules/hdcp/hdcp_psp.c
524
if (hdcp->connection.link.adjust.hdcp2.force_type == MOD_HDCP_FORCE_TYPE_0)
drivers/gpu/drm/amd/display/modules/hdcp/hdcp_psp.c
527
else if (hdcp->connection.link.adjust.hdcp2.force_type == MOD_HDCP_FORCE_TYPE_1)
drivers/gpu/drm/amd/display/modules/hdcp/hdcp_psp.c
530
else if (hdcp->connection.link.adjust.hdcp2.force_type == MOD_HDCP_FORCE_TYPE_MAX)
drivers/gpu/drm/amd/display/modules/hdcp/hdcp_psp.c
656
hdcp->connection.is_km_stored =
drivers/gpu/drm/amd/display/modules/hdcp/hdcp_psp.c
658
hdcp->connection.is_repeater =
drivers/gpu/drm/amd/display/modules/hdcp/hdcp_psp.c
663
hdcp->connection.is_hdcp2_revoked = 1;
drivers/gpu/drm/amd/display/modules/hdcp/hdcp_psp.c
696
if (!hdcp->connection.is_km_stored) {
drivers/gpu/drm/amd/display/modules/hdcp/hdcp_psp.c
711
else if (!hdcp->connection.is_km_stored &&
drivers/gpu/drm/amd/display/modules/hdcp/hdcp_psp.c
901
hdcp->connection.is_km_stored = msg_out->process.is_km_stored ? 1 : 0;
drivers/gpu/drm/amd/display/modules/hdcp/hdcp_psp.c
902
hdcp->connection.is_repeater = msg_out->process.is_repeater ? 1 : 0;
drivers/gpu/drm/amd/display/modules/hdcp/hdcp_psp.c
906
hdcp->connection.is_hdcp2_revoked = 1;
drivers/gpu/drm/drm_connector.c
3377
out_resp->connection = connector->status;
drivers/gpu/drm/exynos/exynos_drm_vidi.c
223
static DEVICE_ATTR(connection, 0644, vidi_show_connection,
drivers/gpu/drm/exynos/exynos_drm_vidi.c
249
if (vidi->connection > 1) {
drivers/gpu/drm/exynos/exynos_drm_vidi.c
256
if (ctx->connected == vidi->connection) {
drivers/gpu/drm/exynos/exynos_drm_vidi.c
264
if (vidi->connection) {
drivers/gpu/drm/exynos/exynos_drm_vidi.c
308
ctx->connected = vidi->connection;
drivers/greybus/bundle.c
102
struct gb_connection *connection;
drivers/greybus/bundle.c
104
list_for_each_entry(connection, &bundle->connections, bundle_links)
drivers/greybus/bundle.c
105
gb_connection_enable(connection);
drivers/greybus/bundle.c
94
struct gb_connection *connection;
drivers/greybus/bundle.c
96
list_for_each_entry(connection, &bundle->connections, bundle_links)
drivers/greybus/bundle.c
97
gb_connection_disable(connection);
drivers/greybus/connection.c
100
trace_gb_connection_release(connection);
drivers/greybus/connection.c
102
kfree(connection);
drivers/greybus/connection.c
105
static void gb_connection_init_name(struct gb_connection *connection)
drivers/greybus/connection.c
107
u16 hd_cport_id = connection->hd_cport_id;
drivers/greybus/connection.c
111
if (connection->intf) {
drivers/greybus/connection.c
112
intf_id = connection->intf->interface_id;
drivers/greybus/connection.c
113
cport_id = connection->intf_cport_id;
drivers/greybus/connection.c
116
snprintf(connection->name, sizeof(connection->name),
drivers/greybus/connection.c
150
struct gb_connection *connection;
drivers/greybus/connection.c
168
connection = kzalloc_obj(*connection);
drivers/greybus/connection.c
169
if (!connection) {
drivers/greybus/connection.c
174
connection->hd_cport_id = hd_cport_id;
drivers/greybus/connection.c
175
connection->intf_cport_id = cport_id;
drivers/greybus/connection.c
176
connection->hd = hd;
drivers/greybus/connection.c
177
connection->intf = intf;
drivers/greybus/connection.c
178
connection->bundle = bundle;
drivers/greybus/connection.c
179
connection->handler = handler;
drivers/greybus/connection.c
180
connection->flags = flags;
drivers/greybus/connection.c
182
connection->flags |= GB_CONNECTION_FLAG_NO_FLOWCTRL;
drivers/greybus/connection.c
183
connection->state = GB_CONNECTION_STATE_DISABLED;
drivers/greybus/connection.c
185
atomic_set(&connection->op_cycle, 0);
drivers/greybus/connection.c
186
mutex_init(&connection->mutex);
drivers/greybus/connection.c
187
spin_lock_init(&connection->lock);
drivers/greybus/connection.c
188
INIT_LIST_HEAD(&connection->operations);
drivers/greybus/connection.c
190
connection->wq = alloc_ordered_workqueue("%s:%d", 0, dev_name(&hd->dev),
drivers/greybus/connection.c
192
if (!connection->wq) {
drivers/greybus/connection.c
197
kref_init(&connection->kref);
drivers/greybus/connection.c
199
gb_connection_init_name(connection);
drivers/greybus/connection.c
202
list_add(&connection->hd_links, &hd->connections);
drivers/greybus/connection.c
205
list_add(&connection->bundle_links, &bundle->connections);
drivers/greybus/connection.c
207
INIT_LIST_HEAD(&connection->bundle_links);
drivers/greybus/connection.c
213
trace_gb_connection_create(connection);
drivers/greybus/connection.c
215
return connection;
drivers/greybus/connection.c
218
kfree(connection);
drivers/greybus/connection.c
25
struct gb_connection *connection;
drivers/greybus/connection.c
27
list_for_each_entry(connection, &hd->connections, hd_links) {
drivers/greybus/connection.c
279
static int gb_connection_hd_cport_enable(struct gb_connection *connection)
drivers/greybus/connection.c
28
if (connection->intf == intf &&
drivers/greybus/connection.c
281
struct gb_host_device *hd = connection->hd;
drivers/greybus/connection.c
287
ret = hd->driver->cport_enable(hd, connection->hd_cport_id,
drivers/greybus/connection.c
288
connection->flags);
drivers/greybus/connection.c
29
connection->intf_cport_id == cport_id)
drivers/greybus/connection.c
291
connection->name, ret);
drivers/greybus/connection.c
298
static void gb_connection_hd_cport_disable(struct gb_connection *connection)
drivers/greybus/connection.c
300
struct gb_host_device *hd = connection->hd;
drivers/greybus/connection.c
306
ret = hd->driver->cport_disable(hd, connection->hd_cport_id);
drivers/greybus/connection.c
309
connection->name, ret);
drivers/greybus/connection.c
313
static int gb_connection_hd_cport_connected(struct gb_connection *connection)
drivers/greybus/connection.c
315
struct gb_host_device *hd = connection->hd;
drivers/greybus/connection.c
321
ret = hd->driver->cport_connected(hd, connection->hd_cport_id);
drivers/greybus/connection.c
324
connection->name, ret);
drivers/greybus/connection.c
331
static int gb_connection_hd_cport_flush(struct gb_connection *connection)
drivers/greybus/connection.c
333
struct gb_host_device *hd = connection->hd;
drivers/greybus/connection.c
339
ret = hd->driver->cport_flush(hd, connection->hd_cport_id);
drivers/greybus/connection.c
342
connection->name, ret);
drivers/greybus/connection.c
349
static int gb_connection_hd_cport_quiesce(struct gb_connection *connection)
drivers/greybus/connection.c
351
struct gb_host_device *hd = connection->hd;
drivers/greybus/connection.c
36
static void gb_connection_get(struct gb_connection *connection)
drivers/greybus/connection.c
361
if (connection->mode_switch)
drivers/greybus/connection.c
364
ret = hd->driver->cport_quiesce(hd, connection->hd_cport_id,
drivers/greybus/connection.c
369
connection->name, ret);
drivers/greybus/connection.c
376
static int gb_connection_hd_cport_clear(struct gb_connection *connection)
drivers/greybus/connection.c
378
struct gb_host_device *hd = connection->hd;
drivers/greybus/connection.c
38
kref_get(&connection->kref);
drivers/greybus/connection.c
384
ret = hd->driver->cport_clear(hd, connection->hd_cport_id);
drivers/greybus/connection.c
387
connection->name, ret);
drivers/greybus/connection.c
399
gb_connection_svc_connection_create(struct gb_connection *connection)
drivers/greybus/connection.c
40
trace_gb_connection_get(connection);
drivers/greybus/connection.c
401
struct gb_host_device *hd = connection->hd;
drivers/greybus/connection.c
406
if (gb_connection_is_static(connection))
drivers/greybus/connection.c
409
intf = connection->intf;
drivers/greybus/connection.c
415
if (gb_connection_flow_control_disabled(connection)) {
drivers/greybus/connection.c
417
} else if (gb_connection_e2efc_enabled(connection)) {
drivers/greybus/connection.c
424
connection->hd_cport_id,
drivers/greybus/connection.c
426
connection->intf_cport_id,
drivers/greybus/connection.c
429
dev_err(&connection->hd->dev,
drivers/greybus/connection.c
43
static void gb_connection_put(struct gb_connection *connection)
drivers/greybus/connection.c
431
connection->name, ret);
drivers/greybus/connection.c
439
gb_connection_svc_connection_destroy(struct gb_connection *connection)
drivers/greybus/connection.c
441
if (gb_connection_is_static(connection))
drivers/greybus/connection.c
444
gb_svc_connection_destroy(connection->hd->svc,
drivers/greybus/connection.c
445
connection->hd->svc->ap_intf_id,
drivers/greybus/connection.c
446
connection->hd_cport_id,
drivers/greybus/connection.c
447
connection->intf->interface_id,
drivers/greybus/connection.c
448
connection->intf_cport_id);
drivers/greybus/connection.c
45
trace_gb_connection_put(connection);
drivers/greybus/connection.c
452
static int gb_connection_control_connected(struct gb_connection *connection)
drivers/greybus/connection.c
455
u16 cport_id = connection->intf_cport_id;
drivers/greybus/connection.c
458
if (gb_connection_is_static(connection))
drivers/greybus/connection.c
461
if (gb_connection_is_control(connection))
drivers/greybus/connection.c
464
control = connection->intf->control;
drivers/greybus/connection.c
468
dev_err(&connection->bundle->dev,
drivers/greybus/connection.c
47
kref_put(&connection->kref, gb_connection_kref_release);
drivers/greybus/connection.c
477
gb_connection_control_disconnecting(struct gb_connection *connection)
drivers/greybus/connection.c
480
u16 cport_id = connection->intf_cport_id;
drivers/greybus/connection.c
483
if (gb_connection_is_static(connection))
drivers/greybus/connection.c
486
control = connection->intf->control;
drivers/greybus/connection.c
490
dev_err(&connection->hd->dev,
drivers/greybus/connection.c
492
connection->name, ret);
drivers/greybus/connection.c
497
gb_connection_control_disconnected(struct gb_connection *connection)
drivers/greybus/connection.c
500
u16 cport_id = connection->intf_cport_id;
drivers/greybus/connection.c
503
if (gb_connection_is_static(connection))
drivers/greybus/connection.c
506
control = connection->intf->control;
drivers/greybus/connection.c
508
if (gb_connection_is_control(connection)) {
drivers/greybus/connection.c
509
if (connection->mode_switch) {
drivers/greybus/connection.c
525
dev_warn(&connection->bundle->dev,
drivers/greybus/connection.c
530
static int gb_connection_shutdown_operation(struct gb_connection *connection,
drivers/greybus/connection.c
537
operation = gb_operation_create_core(connection,
drivers/greybus/connection.c
554
static int gb_connection_cport_shutdown(struct gb_connection *connection,
drivers/greybus/connection.c
557
struct gb_host_device *hd = connection->hd;
drivers/greybus/connection.c
56
struct gb_connection *connection;
drivers/greybus/connection.c
561
if (gb_connection_is_static(connection))
drivers/greybus/connection.c
564
if (gb_connection_is_offloaded(connection)) {
drivers/greybus/connection.c
568
ret = drv->cport_shutdown(hd, connection->hd_cport_id, phase,
drivers/greybus/connection.c
571
ret = gb_connection_shutdown_operation(connection, phase);
drivers/greybus/connection.c
576
connection->name, phase, ret);
drivers/greybus/connection.c
584
gb_connection_cport_shutdown_phase_1(struct gb_connection *connection)
drivers/greybus/connection.c
586
return gb_connection_cport_shutdown(connection, 1);
drivers/greybus/connection.c
590
gb_connection_cport_shutdown_phase_2(struct gb_connection *connection)
drivers/greybus/connection.c
592
return gb_connection_cport_shutdown(connection, 2);
drivers/greybus/connection.c
60
list_for_each_entry(connection, &hd->connections, hd_links)
drivers/greybus/connection.c
601
static void gb_connection_cancel_operations(struct gb_connection *connection,
drivers/greybus/connection.c
603
__must_hold(&connection->lock)
drivers/greybus/connection.c
607
while (!list_empty(&connection->operations)) {
drivers/greybus/connection.c
608
operation = list_last_entry(&connection->operations,
drivers/greybus/connection.c
61
if (connection->hd_cport_id == cport_id) {
drivers/greybus/connection.c
611
spin_unlock_irq(&connection->lock);
drivers/greybus/connection.c
62
gb_connection_get(connection);
drivers/greybus/connection.c
620
spin_lock_irq(&connection->lock);
drivers/greybus/connection.c
630
gb_connection_flush_incoming_operations(struct gb_connection *connection,
drivers/greybus/connection.c
632
__must_hold(&connection->lock)
drivers/greybus/connection.c
637
while (!list_empty(&connection->operations)) {
drivers/greybus/connection.c
639
list_for_each_entry(operation, &connection->operations,
drivers/greybus/connection.c
65
connection = NULL;
drivers/greybus/connection.c
651
spin_unlock_irq(&connection->lock);
drivers/greybus/connection.c
657
spin_lock_irq(&connection->lock);
drivers/greybus/connection.c
671
static int _gb_connection_enable(struct gb_connection *connection, bool rx)
drivers/greybus/connection.c
676
if (connection->state == GB_CONNECTION_STATE_ENABLED_TX) {
drivers/greybus/connection.c
677
if (!(connection->handler && rx))
drivers/greybus/connection.c
680
spin_lock_irq(&connection->lock);
drivers/greybus/connection.c
681
connection->state = GB_CONNECTION_STATE_ENABLED;
drivers/greybus/connection.c
682
spin_unlock_irq(&connection->lock);
drivers/greybus/connection.c
687
ret = gb_connection_hd_cport_enable(connection);
drivers/greybus/connection.c
69
return connection;
drivers/greybus/connection.c
691
ret = gb_connection_svc_connection_create(connection);
drivers/greybus/connection.c
695
ret = gb_connection_hd_cport_connected(connection);
drivers/greybus/connection.c
699
spin_lock_irq(&connection->lock);
drivers/greybus/connection.c
700
if (connection->handler && rx)
drivers/greybus/connection.c
701
connection->state = GB_CONNECTION_STATE_ENABLED;
drivers/greybus/connection.c
703
connection->state = GB_CONNECTION_STATE_ENABLED_TX;
drivers/greybus/connection.c
704
spin_unlock_irq(&connection->lock);
drivers/greybus/connection.c
706
ret = gb_connection_control_connected(connection);
drivers/greybus/connection.c
713
spin_lock_irq(&connection->lock);
drivers/greybus/connection.c
714
connection->state = GB_CONNECTION_STATE_DISCONNECTING;
drivers/greybus/connection.c
715
gb_connection_cancel_operations(connection, -ESHUTDOWN);
drivers/greybus/connection.c
716
spin_unlock_irq(&connection->lock);
drivers/greybus/connection.c
719
gb_connection_hd_cport_flush(connection);
drivers/greybus/connection.c
721
gb_connection_control_disconnecting(connection);
drivers/greybus/connection.c
722
gb_connection_cport_shutdown_phase_1(connection);
drivers/greybus/connection.c
723
gb_connection_hd_cport_quiesce(connection);
drivers/greybus/connection.c
724
gb_connection_cport_shutdown_phase_2(connection);
drivers/greybus/connection.c
725
gb_connection_control_disconnected(connection);
drivers/greybus/connection.c
726
connection->state = GB_CONNECTION_STATE_DISABLED;
drivers/greybus/connection.c
728
gb_connection_svc_connection_destroy(connection);
drivers/greybus/connection.c
730
gb_connection_hd_cport_clear(connection);
drivers/greybus/connection.c
732
gb_connection_hd_cport_disable(connection);
drivers/greybus/connection.c
737
int gb_connection_enable(struct gb_connection *connection)
drivers/greybus/connection.c
741
mutex_lock(&connection->mutex);
drivers/greybus/connection.c
743
if (connection->state == GB_CONNECTION_STATE_ENABLED)
drivers/greybus/connection.c
746
ret = _gb_connection_enable(connection, true);
drivers/greybus/connection.c
748
trace_gb_connection_enable(connection);
drivers/greybus/connection.c
751
mutex_unlock(&connection->mutex);
drivers/greybus/connection.c
757
int gb_connection_enable_tx(struct gb_connection *connection)
drivers/greybus/connection.c
761
mutex_lock(&connection->mutex);
drivers/greybus/connection.c
763
if (connection->state == GB_CONNECTION_STATE_ENABLED) {
drivers/greybus/connection.c
768
if (connection->state == GB_CONNECTION_STATE_ENABLED_TX)
drivers/greybus/connection.c
771
ret = _gb_connection_enable(connection, false);
drivers/greybus/connection.c
773
trace_gb_connection_enable(connection);
drivers/greybus/connection.c
776
mutex_unlock(&connection->mutex);
drivers/greybus/connection.c
782
void gb_connection_disable_rx(struct gb_connection *connection)
drivers/greybus/connection.c
784
mutex_lock(&connection->mutex);
drivers/greybus/connection.c
786
spin_lock_irq(&connection->lock);
drivers/greybus/connection.c
787
if (connection->state != GB_CONNECTION_STATE_ENABLED) {
drivers/greybus/connection.c
788
spin_unlock_irq(&connection->lock);
drivers/greybus/connection.c
79
struct gb_connection *connection;
drivers/greybus/connection.c
791
connection->state = GB_CONNECTION_STATE_ENABLED_TX;
drivers/greybus/connection.c
792
gb_connection_flush_incoming_operations(connection, -ESHUTDOWN);
drivers/greybus/connection.c
793
spin_unlock_irq(&connection->lock);
drivers/greybus/connection.c
795
trace_gb_connection_disable(connection);
drivers/greybus/connection.c
798
mutex_unlock(&connection->mutex);
drivers/greybus/connection.c
802
void gb_connection_mode_switch_prepare(struct gb_connection *connection)
drivers/greybus/connection.c
804
connection->mode_switch = true;
drivers/greybus/connection.c
807
void gb_connection_mode_switch_complete(struct gb_connection *connection)
drivers/greybus/connection.c
809
gb_connection_svc_connection_destroy(connection);
drivers/greybus/connection.c
810
gb_connection_hd_cport_clear(connection);
drivers/greybus/connection.c
812
gb_connection_hd_cport_disable(connection);
drivers/greybus/connection.c
814
connection->mode_switch = false;
drivers/greybus/connection.c
817
void gb_connection_disable(struct gb_connection *connection)
drivers/greybus/connection.c
819
mutex_lock(&connection->mutex);
drivers/greybus/connection.c
821
if (connection->state == GB_CONNECTION_STATE_DISABLED)
drivers/greybus/connection.c
824
trace_gb_connection_disable(connection);
drivers/greybus/connection.c
826
spin_lock_irq(&connection->lock);
drivers/greybus/connection.c
827
connection->state = GB_CONNECTION_STATE_DISCONNECTING;
drivers/greybus/connection.c
828
gb_connection_cancel_operations(connection, -ESHUTDOWN);
drivers/greybus/connection.c
829
spin_unlock_irq(&connection->lock);
drivers/greybus/connection.c
83
connection = gb_connection_hd_find(hd, cport_id);
drivers/greybus/connection.c
831
gb_connection_hd_cport_flush(connection);
drivers/greybus/connection.c
833
gb_connection_control_disconnecting(connection);
drivers/greybus/connection.c
834
gb_connection_cport_shutdown_phase_1(connection);
drivers/greybus/connection.c
835
gb_connection_hd_cport_quiesce(connection);
drivers/greybus/connection.c
836
gb_connection_cport_shutdown_phase_2(connection);
drivers/greybus/connection.c
837
gb_connection_control_disconnected(connection);
drivers/greybus/connection.c
839
connection->state = GB_CONNECTION_STATE_DISABLED;
drivers/greybus/connection.c
84
if (!connection) {
drivers/greybus/connection.c
842
if (!connection->mode_switch) {
drivers/greybus/connection.c
843
gb_connection_svc_connection_destroy(connection);
drivers/greybus/connection.c
844
gb_connection_hd_cport_clear(connection);
drivers/greybus/connection.c
846
gb_connection_hd_cport_disable(connection);
drivers/greybus/connection.c
850
mutex_unlock(&connection->mutex);
drivers/greybus/connection.c
855
void gb_connection_disable_forced(struct gb_connection *connection)
drivers/greybus/connection.c
857
mutex_lock(&connection->mutex);
drivers/greybus/connection.c
859
if (connection->state == GB_CONNECTION_STATE_DISABLED)
drivers/greybus/connection.c
862
trace_gb_connection_disable(connection);
drivers/greybus/connection.c
864
spin_lock_irq(&connection->lock);
drivers/greybus/connection.c
865
connection->state = GB_CONNECTION_STATE_DISABLED;
drivers/greybus/connection.c
866
gb_connection_cancel_operations(connection, -ESHUTDOWN);
drivers/greybus/connection.c
867
spin_unlock_irq(&connection->lock);
drivers/greybus/connection.c
869
gb_connection_hd_cport_flush(connection);
drivers/greybus/connection.c
871
gb_connection_svc_connection_destroy(connection);
drivers/greybus/connection.c
872
gb_connection_hd_cport_clear(connection);
drivers/greybus/connection.c
874
gb_connection_hd_cport_disable(connection);
drivers/greybus/connection.c
876
mutex_unlock(&connection->mutex);
drivers/greybus/connection.c
881
void gb_connection_destroy(struct gb_connection *connection)
drivers/greybus/connection.c
883
if (!connection)
drivers/greybus/connection.c
886
if (WARN_ON(connection->state != GB_CONNECTION_STATE_DISABLED))
drivers/greybus/connection.c
887
gb_connection_disable(connection);
drivers/greybus/connection.c
89
gb_connection_recv(connection, data, length);
drivers/greybus/connection.c
892
list_del(&connection->bundle_links);
drivers/greybus/connection.c
893
list_del(&connection->hd_links);
drivers/greybus/connection.c
896
destroy_workqueue(connection->wq);
drivers/greybus/connection.c
898
gb_hd_cport_release(connection->hd, connection->hd_cport_id);
drivers/greybus/connection.c
899
connection->hd_cport_id = CPORT_ID_BAD;
drivers/greybus/connection.c
90
gb_connection_put(connection);
drivers/greybus/connection.c
903
gb_connection_put(connection);
drivers/greybus/connection.c
907
void gb_connection_latency_tag_enable(struct gb_connection *connection)
drivers/greybus/connection.c
909
struct gb_host_device *hd = connection->hd;
drivers/greybus/connection.c
915
ret = hd->driver->latency_tag_enable(hd, connection->hd_cport_id);
drivers/greybus/connection.c
917
dev_err(&connection->hd->dev,
drivers/greybus/connection.c
919
connection->name, ret);
drivers/greybus/connection.c
924
void gb_connection_latency_tag_disable(struct gb_connection *connection)
drivers/greybus/connection.c
926
struct gb_host_device *hd = connection->hd;
drivers/greybus/connection.c
932
ret = hd->driver->latency_tag_disable(hd, connection->hd_cport_id);
drivers/greybus/connection.c
934
dev_err(&connection->hd->dev,
drivers/greybus/connection.c
936
connection->name, ret);
drivers/greybus/connection.c
96
struct gb_connection *connection;
drivers/greybus/connection.c
98
connection = container_of(kref, struct gb_connection, kref);
drivers/greybus/control.c
107
struct gb_connection *connection = intf->control->connection;
drivers/greybus/control.c
110
ret = gb_operation_sync(connection, GB_CONTROL_TYPE_GET_MANIFEST_SIZE,
drivers/greybus/control.c
113
dev_err(&connection->intf->dev,
drivers/greybus/control.c
125
struct gb_connection *connection = intf->control->connection;
drivers/greybus/control.c
127
return gb_operation_sync(connection, GB_CONTROL_TYPE_GET_MANIFEST,
drivers/greybus/control.c
136
return gb_operation_sync(control->connection, GB_CONTROL_TYPE_CONNECTED,
drivers/greybus/control.c
145
return gb_operation_sync(control->connection,
drivers/greybus/control.c
157
operation = gb_operation_create_core(control->connection,
drivers/greybus/control.c
183
operation = gb_operation_create_core(control->connection,
drivers/greybus/control.c
20
struct gb_interface *intf = control->connection->intf;
drivers/greybus/control.c
222
ret = gb_operation_sync(control->connection,
drivers/greybus/control.c
247
ret = gb_operation_sync(control->connection,
drivers/greybus/control.c
272
ret = gb_operation_sync(control->connection,
drivers/greybus/control.c
28
ret = gb_operation_sync(control->connection,
drivers/greybus/control.c
301
ret = gb_operation_sync(control->connection,
drivers/greybus/control.c
337
ret = gb_operation_sync(control->connection,
drivers/greybus/control.c
360
ret = gb_operation_sync(control->connection,
drivers/greybus/control.c
383
ret = gb_operation_sync(control->connection,
drivers/greybus/control.c
431
gb_connection_destroy(control->connection);
drivers/greybus/control.c
446
struct gb_connection *connection;
drivers/greybus/control.c
455
connection = gb_connection_create_control(intf);
drivers/greybus/control.c
456
if (IS_ERR(connection)) {
drivers/greybus/control.c
459
PTR_ERR(connection));
drivers/greybus/control.c
461
return ERR_CAST(connection);
drivers/greybus/control.c
464
control->connection = connection;
drivers/greybus/control.c
474
gb_connection_set_data(control->connection, control);
drivers/greybus/control.c
483
dev_dbg(&control->connection->intf->dev, "%s\n", __func__);
drivers/greybus/control.c
485
ret = gb_connection_enable_tx(control->connection);
drivers/greybus/control.c
487
dev_err(&control->connection->intf->dev,
drivers/greybus/control.c
507
gb_connection_disable(control->connection);
drivers/greybus/control.c
514
dev_dbg(&control->connection->intf->dev, "%s\n", __func__);
drivers/greybus/control.c
517
gb_connection_disable_forced(control->connection);
drivers/greybus/control.c
519
gb_connection_disable(control->connection);
drivers/greybus/control.c
524
gb_connection_disable(control->connection);
drivers/greybus/control.c
533
ret = gb_connection_enable_tx(control->connection);
drivers/greybus/control.c
535
dev_err(&control->connection->intf->dev,
drivers/greybus/control.c
578
gb_connection_mode_switch_prepare(control->connection);
drivers/greybus/control.c
58
struct gb_interface *intf = control->connection->intf;
drivers/greybus/control.c
583
gb_connection_mode_switch_complete(control->connection);
drivers/greybus/control.c
65
ret = gb_operation_sync(control->connection,
drivers/greybus/control.c
87
struct gb_interface *intf = control->connection->intf;
drivers/greybus/core.c
252
struct gb_connection *connection;
drivers/greybus/core.c
264
list_for_each_entry(connection, &bundle->connections, bundle_links) {
drivers/greybus/core.c
265
if (gb_connection_is_offloaded(connection))
drivers/greybus/core.c
269
gb_connection_disable_forced(connection);
drivers/greybus/core.c
271
gb_connection_disable_rx(connection);
drivers/greybus/es2.c
455
struct gb_host_device *hd = message->operation->connection->hd;
drivers/greybus/es2.c
859
struct gb_host_device *hd = message->operation->connection->hd;
drivers/greybus/greybus_trace.h
107
__entry->cport_id = operation->connection->hd_cport_id;
drivers/greybus/greybus_trace.h
165
TP_PROTO(struct gb_connection *connection),
drivers/greybus/greybus_trace.h
167
TP_ARGS(connection),
drivers/greybus/greybus_trace.h
173
__dynamic_array(char, name, sizeof(connection->name))
drivers/greybus/greybus_trace.h
179
__entry->hd_bus_id = connection->hd->bus_id;
drivers/greybus/greybus_trace.h
180
__entry->bundle_id = connection->bundle ?
drivers/greybus/greybus_trace.h
181
connection->bundle->id : BUNDLE_ID_NONE;
drivers/greybus/greybus_trace.h
182
memcpy(__get_str(name), connection->name,
drivers/greybus/greybus_trace.h
183
sizeof(connection->name));
drivers/greybus/greybus_trace.h
184
__entry->state = connection->state;
drivers/greybus/greybus_trace.h
185
__entry->flags = connection->flags;
drivers/greybus/greybus_trace.h
195
TP_PROTO(struct gb_connection *connection), \
drivers/greybus/greybus_trace.h
196
TP_ARGS(connection))
drivers/greybus/operation.c
1000
connection->name, header->type,
drivers/greybus/operation.c
102
spin_lock_irqsave(&connection->lock, flags);
drivers/greybus/operation.c
1027
void gb_connection_recv(struct gb_connection *connection,
drivers/greybus/operation.c
1031
struct device *dev = &connection->hd->dev;
drivers/greybus/operation.c
1034
if (connection->state == GB_CONNECTION_STATE_DISABLED ||
drivers/greybus/operation.c
1035
gb_connection_is_offloaded(connection)) {
drivers/greybus/operation.c
1037
connection->name, size);
drivers/greybus/operation.c
104
spin_unlock_irqrestore(&connection->lock, flags);
drivers/greybus/operation.c
1043
connection->name);
drivers/greybus/operation.c
1053
connection->name,
drivers/greybus/operation.c
1060
gb_connection_recv_response(connection, &header, data,
drivers/greybus/operation.c
1063
gb_connection_recv_request(connection, &header, data,
drivers/greybus/operation.c
1139
int gb_operation_sync_timeout(struct gb_connection *connection, int type,
drivers/greybus/operation.c
1151
operation = gb_operation_create(connection, type,
drivers/greybus/operation.c
1162
dev_err(&connection->hd->dev,
drivers/greybus/operation.c
1164
connection->name, operation->id, type, ret);
drivers/greybus/operation.c
1192
int gb_operation_unidirectional_timeout(struct gb_connection *connection,
drivers/greybus/operation.c
1203
operation = gb_operation_create_flags(connection, type,
drivers/greybus/operation.c
1215
dev_err(&connection->hd->dev,
drivers/greybus/operation.c
1217
connection->name, type, ret);
drivers/greybus/operation.c
196
gb_operation_find_outgoing(struct gb_connection *connection, u16 operation_id)
drivers/greybus/operation.c
202
spin_lock_irqsave(&connection->lock, flags);
drivers/greybus/operation.c
203
list_for_each_entry(operation, &connection->operations, links)
drivers/greybus/operation.c
210
spin_unlock_irqrestore(&connection->lock, flags);
drivers/greybus/operation.c
217
struct gb_connection *connection = message->operation->connection;
drivers/greybus/operation.c
220
return connection->hd->driver->message_send(connection->hd,
drivers/greybus/operation.c
221
connection->hd_cport_id,
drivers/greybus/operation.c
231
struct gb_host_device *hd = message->operation->connection->hd;
drivers/greybus/operation.c
238
struct gb_connection *connection = operation->connection;
drivers/greybus/operation.c
242
if (connection->handler) {
drivers/greybus/operation.c
243
status = connection->handler(operation);
drivers/greybus/operation.c
245
dev_err(&connection->hd->dev,
drivers/greybus/operation.c
247
connection->name, operation->type);
drivers/greybus/operation.c
254
dev_err(&connection->hd->dev,
drivers/greybus/operation.c
256
connection->name, status, operation->type, ret);
drivers/greybus/operation.c
44
struct gb_connection *connection = operation->connection;
drivers/greybus/operation.c
47
spin_lock_irqsave(&connection->lock, flags);
drivers/greybus/operation.c
472
struct gb_host_device *hd = operation->connection->hd;
drivers/greybus/operation.c
48
switch (connection->state) {
drivers/greybus/operation.c
520
gb_operation_create_common(struct gb_connection *connection, u8 type,
drivers/greybus/operation.c
524
struct gb_host_device *hd = connection->hd;
drivers/greybus/operation.c
530
operation->connection = connection;
drivers/greybus/operation.c
576
gb_operation_create_flags(struct gb_connection *connection,
drivers/greybus/operation.c
591
operation = gb_operation_create_common(connection, type,
drivers/greybus/operation.c
602
gb_operation_create_core(struct gb_connection *connection,
drivers/greybus/operation.c
611
operation = gb_operation_create_common(connection, type,
drivers/greybus/operation.c
622
size_t gb_operation_get_payload_size_max(struct gb_connection *connection)
drivers/greybus/operation.c
624
struct gb_host_device *hd = connection->hd;
drivers/greybus/operation.c
631
gb_operation_create_incoming(struct gb_connection *connection, u16 id,
drivers/greybus/operation.c
64
list_add_tail(&operation->links, &connection->operations);
drivers/greybus/operation.c
644
operation = gb_operation_create_common(connection, type,
drivers/greybus/operation.c
68
spin_unlock_irqrestore(&connection->lock, flags);
drivers/greybus/operation.c
726
struct gb_connection *connection = operation->connection;
drivers/greybus/operation.c
73
spin_unlock_irqrestore(&connection->lock, flags);
drivers/greybus/operation.c
731
if (gb_connection_is_offloaded(connection))
drivers/greybus/operation.c
751
cycle = (unsigned int)atomic_inc_return(&connection->op_cycle);
drivers/greybus/operation.c
81
struct gb_connection *connection = operation->connection;
drivers/greybus/operation.c
827
struct gb_connection *connection = operation->connection;
drivers/greybus/operation.c
838
dev_err(&connection->hd->dev, "request result already set\n");
drivers/greybus/operation.c
84
spin_lock_irqsave(&connection->lock, flags);
drivers/greybus/operation.c
876
struct gb_connection *connection = operation->connection;
drivers/greybus/operation.c
891
dev_err(&connection->hd->dev,
drivers/greybus/operation.c
893
connection->name, operation->type, status);
drivers/greybus/operation.c
914
static void gb_connection_recv_request(struct gb_connection *connection,
drivers/greybus/operation.c
926
operation = gb_operation_create_incoming(connection, operation_id,
drivers/greybus/operation.c
929
dev_err(&connection->hd->dev,
drivers/greybus/operation.c
93
spin_unlock_irqrestore(&connection->lock, flags);
drivers/greybus/operation.c
931
connection->name);
drivers/greybus/operation.c
947
queue_work(connection->wq, &operation->work);
drivers/greybus/operation.c
958
static void gb_connection_recv_response(struct gb_connection *connection,
drivers/greybus/operation.c
971
dev_err_ratelimited(&connection->hd->dev,
drivers/greybus/operation.c
973
connection->name);
drivers/greybus/operation.c
977
operation = gb_operation_find_outgoing(connection, operation_id);
drivers/greybus/operation.c
979
dev_err_ratelimited(&connection->hd->dev,
drivers/greybus/operation.c
98
struct gb_connection *connection = operation->connection;
drivers/greybus/operation.c
981
connection->name, operation_id);
drivers/greybus/operation.c
989
dev_err_ratelimited(&connection->hd->dev,
drivers/greybus/operation.c
991
connection->name, header->type,
drivers/greybus/operation.c
998
dev_err_ratelimited(&connection->hd->dev,
drivers/greybus/svc.c
1005
struct gb_connection *connection = operation->connection;
drivers/greybus/svc.c
1006
struct gb_svc *svc = gb_connection_get_data(connection);
drivers/greybus/svc.c
1033
struct gb_connection *connection = operation->connection;
drivers/greybus/svc.c
1034
struct gb_svc *svc = gb_connection_get_data(connection);
drivers/greybus/svc.c
1064
struct gb_connection *connection = operation->connection;
drivers/greybus/svc.c
1065
struct gb_svc *svc = gb_connection_get_data(connection);
drivers/greybus/svc.c
1098
svc = gb_connection_get_data(operation->connection);
drivers/greybus/svc.c
1127
struct gb_svc *svc = gb_connection_get_data(operation->connection);
drivers/greybus/svc.c
1146
struct gb_svc *svc = gb_connection_get_data(op->connection);
drivers/greybus/svc.c
1164
struct gb_svc *svc = gb_connection_get_data(op->connection);
drivers/greybus/svc.c
1183
struct gb_svc *svc = gb_connection_get_data(op->connection);
drivers/greybus/svc.c
1202
struct gb_svc *svc = gb_connection_get_data(op->connection);
drivers/greybus/svc.c
1216
struct gb_svc *svc = gb_connection_get_data(op->connection);
drivers/greybus/svc.c
1234
struct gb_connection *connection = op->connection;
drivers/greybus/svc.c
1235
struct gb_svc *svc = gb_connection_get_data(connection);
drivers/greybus/svc.c
1301
if (svc->connection)
drivers/greybus/svc.c
1302
gb_connection_destroy(svc->connection);
drivers/greybus/svc.c
1340
svc->connection = gb_connection_create_static(hd, GB_SVC_CPORT_ID,
drivers/greybus/svc.c
1342
if (IS_ERR(svc->connection)) {
drivers/greybus/svc.c
1344
PTR_ERR(svc->connection));
drivers/greybus/svc.c
1348
gb_connection_set_data(svc->connection, svc);
drivers/greybus/svc.c
1366
ret = gb_connection_enable(svc->connection);
drivers/greybus/svc.c
137
ret = gb_operation_sync(svc->connection,
drivers/greybus/svc.c
1387
gb_connection_disable_rx(svc->connection);
drivers/greybus/svc.c
1402
gb_connection_disable(svc->connection);
drivers/greybus/svc.c
156
ret = gb_operation_sync(svc->connection,
drivers/greybus/svc.c
184
ret = gb_operation_sync(svc->connection, GB_SVC_TYPE_PWRMON_SAMPLE_GET,
drivers/greybus/svc.c
221
ret = gb_operation_sync(svc->connection,
drivers/greybus/svc.c
266
return gb_operation_sync(svc->connection, GB_SVC_TYPE_INTF_DEVICE_ID,
drivers/greybus/svc.c
281
ret = gb_operation_sync_timeout(svc->connection,
drivers/greybus/svc.c
306
ret = gb_operation_sync(svc->connection, type,
drivers/greybus/svc.c
329
ret = gb_operation_sync(svc->connection, type,
drivers/greybus/svc.c
352
ret = gb_operation_sync(svc->connection, type,
drivers/greybus/svc.c
370
ret = gb_operation_sync_timeout(svc->connection,
drivers/greybus/svc.c
396
ret = gb_operation_sync_timeout(svc->connection,
drivers/greybus/svc.c
428
ret = gb_operation_sync(svc->connection, GB_SVC_TYPE_DME_PEER_GET,
drivers/greybus/svc.c
463
ret = gb_operation_sync(svc->connection, GB_SVC_TYPE_DME_PEER_SET,
drivers/greybus/svc.c
496
return gb_operation_sync(svc->connection, GB_SVC_TYPE_CONN_CREATE,
drivers/greybus/svc.c
504
struct gb_connection *connection = svc->connection;
drivers/greybus/svc.c
512
ret = gb_operation_sync(connection, GB_SVC_TYPE_CONN_DESTROY,
drivers/greybus/svc.c
531
return gb_operation_sync(svc->connection, GB_SVC_TYPE_ROUTE_CREATE,
drivers/greybus/svc.c
544
ret = gb_operation_sync(svc->connection, GB_SVC_TYPE_ROUTE_DESTROY,
drivers/greybus/svc.c
584
ret = gb_operation_sync(svc->connection, GB_SVC_TYPE_INTF_SET_PWRM,
drivers/greybus/svc.c
614
ret = gb_operation_sync(svc->connection, GB_SVC_TYPE_INTF_SET_PWRM,
drivers/greybus/svc.c
637
return gb_operation_sync_timeout(svc->connection, GB_SVC_TYPE_PING,
drivers/greybus/svc.c
644
struct gb_connection *connection = op->connection;
drivers/greybus/svc.c
645
struct gb_svc *svc = gb_connection_get_data(connection);
drivers/greybus/svc.c
840
struct gb_connection *connection = op->connection;
drivers/greybus/svc.c
841
struct gb_svc *svc = gb_connection_get_data(connection);
drivers/greybus/svc.c
924
struct gb_connection *connection = operation->connection;
drivers/greybus/svc.c
925
struct gb_svc *svc = gb_connection_get_data(connection);
drivers/greybus/svc.c
957
struct gb_connection *connection = operation->connection;
drivers/greybus/svc.c
958
struct gb_svc *svc = gb_connection_get_data(connection);
drivers/i2c/i2c-core-acpi.c
682
ret = acpi_buffer_to_resource(info->connection, info->length, &ares);
drivers/net/plip/plip.c
1000
if (nl->connection == PLIP_CN_NONE) {
drivers/net/plip/plip.c
1001
nl->connection = PLIP_CN_SEND;
drivers/net/plip/plip.c
1094
nl->connection = PLIP_CN_NONE;
drivers/net/plip/plip.c
1148
nl->connection = PLIP_CN_NONE;
drivers/net/plip/plip.c
1179
if (nl->connection != PLIP_CN_NONE) {
drivers/net/plip/plip.c
215
enum plip_connection_state connection;
drivers/net/plip/plip.c
375
f = connection_state_table[nl->connection];
drivers/net/plip/plip.c
416
if (nl->connection == PLIP_CN_SEND) {
drivers/net/plip/plip.c
433
} else if (nl->connection == PLIP_CN_RECEIVE) {
drivers/net/plip/plip.c
468
nl->connection = PLIP_CN_ERROR;
drivers/net/plip/plip.c
613
nl->connection = PLIP_CN_SEND;
drivers/net/plip/plip.c
690
nl->connection = PLIP_CN_SEND;
drivers/net/plip/plip.c
697
nl->connection = PLIP_CN_NONE;
drivers/net/plip/plip.c
782
if (nl->connection == PLIP_CN_RECEIVE) {
drivers/net/plip/plip.c
793
if (nl->connection == PLIP_CN_RECEIVE) {
drivers/net/plip/plip.c
865
nl->connection = PLIP_CN_CLOSING;
drivers/net/plip/plip.c
880
if (nl->connection == PLIP_CN_CLOSING) {
drivers/net/plip/plip.c
881
nl->connection = PLIP_CN_NONE;
drivers/net/plip/plip.c
903
nl->connection = PLIP_CN_NONE;
drivers/net/plip/plip.c
943
switch (nl->connection) {
drivers/net/plip/plip.c
950
nl->connection = PLIP_CN_RECEIVE;
drivers/platform/surface/surface3_power.c
389
ret = acpi_buffer_to_resource(info->connection, info->length, &ares);
drivers/staging/greybus/audio_apbridgea.c
107
return gb_hd_output(connection->hd, &req, sizeof(req),
drivers/staging/greybus/audio_apbridgea.c
112
int gb_audio_apbridgea_stop_tx(struct gb_connection *connection, __u16 i2s_port)
drivers/staging/greybus/audio_apbridgea.c
119
return gb_hd_output(connection->hd, &req, sizeof(req),
drivers/staging/greybus/audio_apbridgea.c
12
int gb_audio_apbridgea_set_config(struct gb_connection *connection,
drivers/staging/greybus/audio_apbridgea.c
124
int gb_audio_apbridgea_shutdown_tx(struct gb_connection *connection,
drivers/staging/greybus/audio_apbridgea.c
132
return gb_hd_output(connection->hd, &req, sizeof(req),
drivers/staging/greybus/audio_apbridgea.c
137
int gb_audio_apbridgea_set_rx_data_size(struct gb_connection *connection,
drivers/staging/greybus/audio_apbridgea.c
146
return gb_hd_output(connection->hd, &req, sizeof(req),
drivers/staging/greybus/audio_apbridgea.c
151
int gb_audio_apbridgea_prepare_rx(struct gb_connection *connection,
drivers/staging/greybus/audio_apbridgea.c
159
return gb_hd_output(connection->hd, &req, sizeof(req),
drivers/staging/greybus/audio_apbridgea.c
164
int gb_audio_apbridgea_start_rx(struct gb_connection *connection,
drivers/staging/greybus/audio_apbridgea.c
172
return gb_hd_output(connection->hd, &req, sizeof(req),
drivers/staging/greybus/audio_apbridgea.c
177
int gb_audio_apbridgea_stop_rx(struct gb_connection *connection, __u16 i2s_port)
drivers/staging/greybus/audio_apbridgea.c
184
return gb_hd_output(connection->hd, &req, sizeof(req),
drivers/staging/greybus/audio_apbridgea.c
189
int gb_audio_apbridgea_shutdown_rx(struct gb_connection *connection,
drivers/staging/greybus/audio_apbridgea.c
197
return gb_hd_output(connection->hd, &req, sizeof(req),
drivers/staging/greybus/audio_apbridgea.c
24
return gb_hd_output(connection->hd, &req, sizeof(req),
drivers/staging/greybus/audio_apbridgea.c
29
int gb_audio_apbridgea_register_cport(struct gb_connection *connection,
drivers/staging/greybus/audio_apbridgea.c
41
ret = gb_pm_runtime_get_sync(connection->bundle);
drivers/staging/greybus/audio_apbridgea.c
45
return gb_hd_output(connection->hd, &req, sizeof(req),
drivers/staging/greybus/audio_apbridgea.c
50
int gb_audio_apbridgea_unregister_cport(struct gb_connection *connection,
drivers/staging/greybus/audio_apbridgea.c
62
ret = gb_hd_output(connection->hd, &req, sizeof(req),
drivers/staging/greybus/audio_apbridgea.c
65
gb_pm_runtime_put_autosuspend(connection->bundle);
drivers/staging/greybus/audio_apbridgea.c
71
int gb_audio_apbridgea_set_tx_data_size(struct gb_connection *connection,
drivers/staging/greybus/audio_apbridgea.c
80
return gb_hd_output(connection->hd, &req, sizeof(req),
drivers/staging/greybus/audio_apbridgea.c
85
int gb_audio_apbridgea_prepare_tx(struct gb_connection *connection,
drivers/staging/greybus/audio_apbridgea.c
93
return gb_hd_output(connection->hd, &req, sizeof(req),
drivers/staging/greybus/audio_apbridgea.c
98
int gb_audio_apbridgea_start_tx(struct gb_connection *connection,
drivers/staging/greybus/audio_codec.c
103
data_cport = data->connection->intf_cport_id;
drivers/staging/greybus/audio_codec.c
141
data_cport = data->connection->intf_cport_id;
drivers/staging/greybus/audio_codec.c
155
cportid = data->connection->hd_cport_id;
drivers/staging/greybus/audio_codec.c
156
ret = gb_audio_apbridgea_unregister_cport(data->connection,
drivers/staging/greybus/audio_codec.c
198
cportid = data->connection->hd_cport_id;
drivers/staging/greybus/audio_codec.c
199
ret = gb_audio_apbridgea_register_cport(data->connection,
drivers/staging/greybus/audio_codec.c
216
data_cport = data->connection->intf_cport_id;
drivers/staging/greybus/audio_codec.c
229
data_cport = data->connection->intf_cport_id;
drivers/staging/greybus/audio_codec.c
268
data_cport = data->connection->intf_cport_id;
drivers/staging/greybus/audio_codec.c
282
cportid = data->connection->hd_cport_id;
drivers/staging/greybus/audio_codec.c
283
ret = gb_audio_apbridgea_unregister_cport(data->connection,
drivers/staging/greybus/audio_codec.c
467
ret = gb_audio_apbridgea_set_config(data->connection, 0,
drivers/staging/greybus/audio_codec.c
544
ret = gb_audio_apbridgea_set_tx_data_size(data->connection, 0, 192);
drivers/staging/greybus/audio_codec.c
547
ret = gb_audio_apbridgea_set_rx_data_size(data->connection, 0, 192);
drivers/staging/greybus/audio_codec.c
620
ret = gb_audio_apbridgea_prepare_tx(data->connection, 0);
drivers/staging/greybus/audio_codec.c
622
ret = gb_audio_apbridgea_start_tx(data->connection, 0, 0);
drivers/staging/greybus/audio_codec.c
625
ret = gb_audio_apbridgea_prepare_rx(data->connection, 0);
drivers/staging/greybus/audio_codec.c
627
ret = gb_audio_apbridgea_start_rx(data->connection, 0);
drivers/staging/greybus/audio_codec.c
630
ret = gb_audio_apbridgea_stop_tx(data->connection, 0);
drivers/staging/greybus/audio_codec.c
632
ret = gb_audio_apbridgea_shutdown_tx(data->connection, 0);
drivers/staging/greybus/audio_codec.c
635
ret = gb_audio_apbridgea_stop_rx(data->connection, 0);
drivers/staging/greybus/audio_codec.c
637
ret = gb_audio_apbridgea_shutdown_rx(data->connection, 0);
drivers/staging/greybus/audio_codec.c
72
cportid = data->connection->hd_cport_id;
drivers/staging/greybus/audio_codec.c
73
ret = gb_audio_apbridgea_register_cport(data->connection,
drivers/staging/greybus/audio_codec.c
881
ret = gb_audio_apbridgea_stop_tx(data->connection, 0);
drivers/staging/greybus/audio_codec.c
884
ret = gb_audio_apbridgea_shutdown_tx(data->connection, 0);
drivers/staging/greybus/audio_codec.c
889
cportid = data->connection->hd_cport_id;
drivers/staging/greybus/audio_codec.c
890
ret = gb_audio_apbridgea_unregister_cport(data->connection,
drivers/staging/greybus/audio_codec.c
90
data_cport = data->connection->intf_cport_id;
drivers/staging/greybus/audio_codec.c
902
ret = gb_audio_apbridgea_stop_rx(data->connection, 0);
drivers/staging/greybus/audio_codec.c
905
ret = gb_audio_apbridgea_shutdown_rx(data->connection, 0);
drivers/staging/greybus/audio_codec.c
910
cportid = data->connection->hd_cport_id;
drivers/staging/greybus/audio_codec.c
911
ret = gb_audio_apbridgea_unregister_cport(data->connection,
drivers/staging/greybus/audio_codec.h
181
int gb_audio_gb_get_topology(struct gb_connection *connection,
drivers/staging/greybus/audio_codec.h
183
int gb_audio_gb_get_control(struct gb_connection *connection,
drivers/staging/greybus/audio_codec.h
186
int gb_audio_gb_set_control(struct gb_connection *connection,
drivers/staging/greybus/audio_codec.h
189
int gb_audio_gb_enable_widget(struct gb_connection *connection,
drivers/staging/greybus/audio_codec.h
191
int gb_audio_gb_disable_widget(struct gb_connection *connection,
drivers/staging/greybus/audio_codec.h
193
int gb_audio_gb_get_pcm(struct gb_connection *connection,
drivers/staging/greybus/audio_codec.h
197
int gb_audio_gb_set_pcm(struct gb_connection *connection,
drivers/staging/greybus/audio_codec.h
201
int gb_audio_gb_set_tx_data_size(struct gb_connection *connection,
drivers/staging/greybus/audio_codec.h
203
int gb_audio_gb_activate_tx(struct gb_connection *connection,
drivers/staging/greybus/audio_codec.h
205
int gb_audio_gb_deactivate_tx(struct gb_connection *connection,
drivers/staging/greybus/audio_codec.h
207
int gb_audio_gb_set_rx_data_size(struct gb_connection *connection,
drivers/staging/greybus/audio_codec.h
209
int gb_audio_gb_activate_rx(struct gb_connection *connection,
drivers/staging/greybus/audio_codec.h
211
int gb_audio_gb_deactivate_rx(struct gb_connection *connection,
drivers/staging/greybus/audio_codec.h
213
int gb_audio_apbridgea_set_config(struct gb_connection *connection,
drivers/staging/greybus/audio_codec.h
216
int gb_audio_apbridgea_register_cport(struct gb_connection *connection,
drivers/staging/greybus/audio_codec.h
219
int gb_audio_apbridgea_unregister_cport(struct gb_connection *connection,
drivers/staging/greybus/audio_codec.h
222
int gb_audio_apbridgea_set_tx_data_size(struct gb_connection *connection,
drivers/staging/greybus/audio_codec.h
224
int gb_audio_apbridgea_prepare_tx(struct gb_connection *connection,
drivers/staging/greybus/audio_codec.h
226
int gb_audio_apbridgea_start_tx(struct gb_connection *connection,
drivers/staging/greybus/audio_codec.h
228
int gb_audio_apbridgea_stop_tx(struct gb_connection *connection,
drivers/staging/greybus/audio_codec.h
230
int gb_audio_apbridgea_shutdown_tx(struct gb_connection *connection,
drivers/staging/greybus/audio_codec.h
232
int gb_audio_apbridgea_set_rx_data_size(struct gb_connection *connection,
drivers/staging/greybus/audio_codec.h
234
int gb_audio_apbridgea_prepare_rx(struct gb_connection *connection,
drivers/staging/greybus/audio_codec.h
236
int gb_audio_apbridgea_start_rx(struct gb_connection *connection,
drivers/staging/greybus/audio_codec.h
238
int gb_audio_apbridgea_stop_rx(struct gb_connection *connection,
drivers/staging/greybus/audio_codec.h
240
int gb_audio_apbridgea_shutdown_rx(struct gb_connection *connection,
drivers/staging/greybus/audio_codec.h
95
struct gb_connection *connection;
drivers/staging/greybus/audio_gb.c
102
return gb_operation_sync(connection, GB_AUDIO_TYPE_DISABLE_WIDGET,
drivers/staging/greybus/audio_gb.c
107
int gb_audio_gb_get_pcm(struct gb_connection *connection, u16 data_cport,
drivers/staging/greybus/audio_gb.c
117
ret = gb_operation_sync(connection, GB_AUDIO_TYPE_GET_PCM,
drivers/staging/greybus/audio_gb.c
12
int gb_audio_gb_get_topology(struct gb_connection *connection,
drivers/staging/greybus/audio_gb.c
131
int gb_audio_gb_set_pcm(struct gb_connection *connection, u16 data_cport,
drivers/staging/greybus/audio_gb.c
143
return gb_operation_sync(connection, GB_AUDIO_TYPE_SET_PCM,
drivers/staging/greybus/audio_gb.c
148
int gb_audio_gb_set_tx_data_size(struct gb_connection *connection,
drivers/staging/greybus/audio_gb.c
156
return gb_operation_sync(connection, GB_AUDIO_TYPE_SET_TX_DATA_SIZE,
drivers/staging/greybus/audio_gb.c
161
int gb_audio_gb_activate_tx(struct gb_connection *connection,
drivers/staging/greybus/audio_gb.c
168
return gb_operation_sync(connection, GB_AUDIO_TYPE_ACTIVATE_TX,
drivers/staging/greybus/audio_gb.c
173
int gb_audio_gb_deactivate_tx(struct gb_connection *connection,
drivers/staging/greybus/audio_gb.c
180
return gb_operation_sync(connection, GB_AUDIO_TYPE_DEACTIVATE_TX,
drivers/staging/greybus/audio_gb.c
185
int gb_audio_gb_set_rx_data_size(struct gb_connection *connection,
drivers/staging/greybus/audio_gb.c
193
return gb_operation_sync(connection, GB_AUDIO_TYPE_SET_RX_DATA_SIZE,
drivers/staging/greybus/audio_gb.c
198
int gb_audio_gb_activate_rx(struct gb_connection *connection,
drivers/staging/greybus/audio_gb.c
20
ret = gb_operation_sync(connection, GB_AUDIO_TYPE_GET_TOPOLOGY_SIZE,
drivers/staging/greybus/audio_gb.c
205
return gb_operation_sync(connection, GB_AUDIO_TYPE_ACTIVATE_RX,
drivers/staging/greybus/audio_gb.c
210
int gb_audio_gb_deactivate_rx(struct gb_connection *connection,
drivers/staging/greybus/audio_gb.c
217
return gb_operation_sync(connection, GB_AUDIO_TYPE_DEACTIVATE_RX,
drivers/staging/greybus/audio_gb.c
33
ret = gb_operation_sync(connection, GB_AUDIO_TYPE_GET_TOPOLOGY, NULL, 0,
drivers/staging/greybus/audio_gb.c
46
int gb_audio_gb_get_control(struct gb_connection *connection,
drivers/staging/greybus/audio_gb.c
57
ret = gb_operation_sync(connection, GB_AUDIO_TYPE_GET_CONTROL,
drivers/staging/greybus/audio_gb.c
68
int gb_audio_gb_set_control(struct gb_connection *connection,
drivers/staging/greybus/audio_gb.c
78
return gb_operation_sync(connection, GB_AUDIO_TYPE_SET_CONTROL,
drivers/staging/greybus/audio_gb.c
83
int gb_audio_gb_enable_widget(struct gb_connection *connection,
drivers/staging/greybus/audio_gb.c
90
return gb_operation_sync(connection, GB_AUDIO_TYPE_ENABLE_WIDGET,
drivers/staging/greybus/audio_gb.c
95
int gb_audio_gb_disable_widget(struct gb_connection *connection,
drivers/staging/greybus/audio_module.c
143
struct gb_connection *connection = op->connection;
drivers/staging/greybus/audio_module.c
145
greybus_get_drvdata(connection->bundle);
drivers/staging/greybus/audio_module.c
169
dev_err_ratelimited(&connection->bundle->dev,
drivers/staging/greybus/audio_module.c
181
struct gb_connection *connection;
drivers/staging/greybus/audio_module.c
190
connection = gb_connection_create(bundle, le16_to_cpu(cport_desc->id),
drivers/staging/greybus/audio_module.c
192
if (IS_ERR(connection))
drivers/staging/greybus/audio_module.c
193
return PTR_ERR(connection);
drivers/staging/greybus/audio_module.c
196
gbmodule->mgmt_connection = connection;
drivers/staging/greybus/audio_module.c
205
struct gb_connection *connection;
drivers/staging/greybus/audio_module.c
212
connection = gb_connection_create_offloaded(bundle,
drivers/staging/greybus/audio_module.c
215
if (IS_ERR(connection)) {
drivers/staging/greybus/audio_module.c
217
return PTR_ERR(connection);
drivers/staging/greybus/audio_module.c
222
dai->data_cport = cpu_to_le16(connection->intf_cport_id);
drivers/staging/greybus/audio_module.c
223
dai->connection = connection;
drivers/staging/greybus/audio_module.c
328
ret = gb_connection_enable(dai->connection);
drivers/staging/greybus/audio_module.c
361
gb_connection_disable(dai->connection);
drivers/staging/greybus/audio_module.c
373
gb_connection_destroy(dai->connection);
drivers/staging/greybus/audio_module.c
404
gb_connection_disable(dai->connection);
drivers/staging/greybus/audio_module.c
405
gb_connection_destroy(dai->connection);
drivers/staging/greybus/audio_module.c
429
gb_connection_disable(dai->connection);
drivers/staging/greybus/audio_module.c
450
ret = gb_connection_enable(dai->connection);
drivers/staging/greybus/authentication.c
108
struct gb_connection *connection = cap->connection;
drivers/staging/greybus/authentication.c
111
size_t max_size = gb_operation_get_payload_size_max(connection);
drivers/staging/greybus/authentication.c
115
op = gb_operation_create_flags(connection,
drivers/staging/greybus/authentication.c
147
struct gb_connection *connection = cap->connection;
drivers/staging/greybus/authentication.c
150
size_t max_size = gb_operation_get_payload_size_max(connection);
drivers/staging/greybus/authentication.c
154
op = gb_operation_create_flags(connection, GB_CAP_TYPE_AUTHENTICATE,
drivers/staging/greybus/authentication.c
268
struct gb_bundle *bundle = cap->connection->bundle;
drivers/staging/greybus/authentication.c
28
struct gb_connection *connection;
drivers/staging/greybus/authentication.c
301
int gb_cap_connection_init(struct gb_connection *connection)
drivers/staging/greybus/authentication.c
306
if (!connection)
drivers/staging/greybus/authentication.c
313
cap->parent = &connection->bundle->dev;
drivers/staging/greybus/authentication.c
314
cap->connection = connection;
drivers/staging/greybus/authentication.c
316
gb_connection_set_data(connection, cap);
drivers/staging/greybus/authentication.c
323
ret = gb_connection_enable(connection);
drivers/staging/greybus/authentication.c
356
gb_connection_disable(connection);
drivers/staging/greybus/authentication.c
367
void gb_cap_connection_exit(struct gb_connection *connection)
drivers/staging/greybus/authentication.c
371
if (!connection)
drivers/staging/greybus/authentication.c
374
cap = gb_connection_get_data(connection);
drivers/staging/greybus/authentication.c
389
gb_connection_disable(cap->connection);
drivers/staging/greybus/authentication.c
89
struct gb_connection *connection = cap->connection;
drivers/staging/greybus/authentication.c
93
ret = gb_operation_sync(connection, GB_CAP_TYPE_GET_ENDPOINT_UID, NULL,
drivers/staging/greybus/bootrom.c
114
struct gb_connection *connection = bootrom->connection;
drivers/staging/greybus/bootrom.c
115
struct gb_interface *intf = connection->bundle->intf;
drivers/staging/greybus/bootrom.c
121
ret = gb_operation_sync(connection, GB_BOOTROM_TYPE_GET_VID_PID,
drivers/staging/greybus/bootrom.c
124
dev_err(&connection->bundle->dev,
drivers/staging/greybus/bootrom.c
139
dev_dbg(&connection->bundle->dev, "Bootrom got vid (0x%x)/pid (0x%x)\n",
drivers/staging/greybus/bootrom.c
146
struct gb_connection *connection = bootrom->connection;
drivers/staging/greybus/bootrom.c
147
struct gb_interface *intf = connection->bundle->intf;
drivers/staging/greybus/bootrom.c
156
dev_err(&connection->bundle->dev, "Invalid boot stage: %u\n",
drivers/staging/greybus/bootrom.c
175
dev_info(&connection->bundle->dev, "Firmware file '%s' requested\n",
drivers/staging/greybus/bootrom.c
179
&connection->bundle->dev);
drivers/staging/greybus/bootrom.c
181
dev_err(&connection->bundle->dev,
drivers/staging/greybus/bootrom.c
190
struct gb_bootrom *bootrom = gb_connection_get_data(op->connection);
drivers/staging/greybus/bootrom.c
194
struct device *dev = &op->connection->bundle->dev;
drivers/staging/greybus/bootrom.c
243
struct gb_bootrom *bootrom = gb_connection_get_data(op->connection);
drivers/staging/greybus/bootrom.c
246
struct device *dev = &op->connection->bundle->dev;
drivers/staging/greybus/bootrom.c
313
struct gb_connection *connection = op->connection;
drivers/staging/greybus/bootrom.c
314
struct gb_bootrom *bootrom = gb_connection_get_data(connection);
drivers/staging/greybus/bootrom.c
316
struct device *dev = &connection->bundle->dev;
drivers/staging/greybus/bootrom.c
34
struct gb_connection *connection;
drivers/staging/greybus/bootrom.c
369
dev_err(&op->connection->bundle->dev,
drivers/staging/greybus/bootrom.c
377
struct gb_bundle *bundle = bootrom->connection->bundle;
drivers/staging/greybus/bootrom.c
385
ret = gb_operation_sync(bootrom->connection,
drivers/staging/greybus/bootrom.c
416
struct gb_connection *connection;
drivers/staging/greybus/bootrom.c
431
connection = gb_connection_create(bundle,
drivers/staging/greybus/bootrom.c
434
if (IS_ERR(connection)) {
drivers/staging/greybus/bootrom.c
435
ret = PTR_ERR(connection);
drivers/staging/greybus/bootrom.c
439
gb_connection_set_data(connection, bootrom);
drivers/staging/greybus/bootrom.c
441
bootrom->connection = connection;
drivers/staging/greybus/bootrom.c
447
ret = gb_connection_enable_tx(connection);
drivers/staging/greybus/bootrom.c
457
ret = gb_connection_enable(connection);
drivers/staging/greybus/bootrom.c
466
ret = gb_operation_sync(connection, GB_BOOTROM_TYPE_AP_READY, NULL, 0,
drivers/staging/greybus/bootrom.c
469
dev_err(&connection->bundle->dev,
drivers/staging/greybus/bootrom.c
481
gb_connection_disable(connection);
drivers/staging/greybus/bootrom.c
483
gb_connection_destroy(connection);
drivers/staging/greybus/bootrom.c
494
gb_connection_disable(bootrom->connection);
drivers/staging/greybus/bootrom.c
507
gb_connection_destroy(bootrom->connection);
drivers/staging/greybus/bootrom.c
57
struct device *dev = &bootrom->connection->bundle->dev;
drivers/staging/greybus/camera.c
1143
struct gb_connection *connection = gcam->connection;
drivers/staging/greybus/camera.c
1150
snprintf(dirname, 27, "camera-%u.%u", connection->intf->interface_id,
drivers/staging/greybus/camera.c
1197
if (gcam->connection) {
drivers/staging/greybus/camera.c
1198
gb_connection_disable(gcam->connection);
drivers/staging/greybus/camera.c
1199
gb_connection_destroy(gcam->connection);
drivers/staging/greybus/camera.c
1200
gcam->connection = NULL;
drivers/staging/greybus/camera.c
1264
gcam->connection = conn;
drivers/staging/greybus/camera.c
1277
gcam->module.interface_id = gcam->connection->intf->interface_id;
drivers/staging/greybus/camera.c
1322
gb_connection_disable(gcam->connection);
drivers/staging/greybus/camera.c
1333
ret = gb_connection_enable(gcam->connection);
drivers/staging/greybus/camera.c
183
static int gb_camera_operation_sync_flags(struct gb_connection *connection,
drivers/staging/greybus/camera.c
191
operation = gb_operation_create_flags(connection, type, request_size,
drivers/staging/greybus/camera.c
202
dev_err(&connection->hd->dev,
drivers/staging/greybus/camera.c
204
connection->name, type, ret);
drivers/staging/greybus/camera.c
303
struct gb_svc *svc = gcam->connection->hd->svc;
drivers/staging/greybus/camera.c
333
struct gb_interface *intf = gcam->connection->intf;
drivers/staging/greybus/camera.c
334
struct gb_svc *svc = gcam->connection->hd->svc;
drivers/staging/greybus/camera.c
430
ret = gb_hd_output(gcam->connection->hd, &csi_cfg,
drivers/staging/greybus/camera.c
464
ret = gb_hd_output(gcam->connection->hd, &csi_cfg,
drivers/staging/greybus/camera.c
495
if (!gcam->connection) {
drivers/staging/greybus/camera.c
500
ret = gb_camera_operation_sync_flags(gcam->connection,
drivers/staging/greybus/camera.c
52
struct gb_connection *connection;
drivers/staging/greybus/camera.c
563
if (!gcam->connection) {
drivers/staging/greybus/camera.c
568
ret = gb_camera_operation_sync_flags(gcam->connection,
drivers/staging/greybus/camera.c
627
gb_operation_sync(gcam->connection,
drivers/staging/greybus/camera.c
673
if (!gcam->connection) {
drivers/staging/greybus/camera.c
678
ret = gb_operation_sync(gcam->connection, GB_CAMERA_TYPE_CAPTURE,
drivers/staging/greybus/camera.c
695
if (!gcam->connection) {
drivers/staging/greybus/camera.c
700
ret = gb_operation_sync(gcam->connection, GB_CAMERA_TYPE_FLUSH, NULL, 0,
drivers/staging/greybus/camera.c
717
struct gb_camera *gcam = gb_connection_get_data(op->connection);
drivers/staging/greybus/firmware.h
27
int gb_fw_mgmt_connection_init(struct gb_connection *connection);
drivers/staging/greybus/firmware.h
28
void gb_fw_mgmt_connection_exit(struct gb_connection *connection);
drivers/staging/greybus/firmware.h
32
int gb_fw_download_connection_init(struct gb_connection *connection);
drivers/staging/greybus/firmware.h
33
void gb_fw_download_connection_exit(struct gb_connection *connection);
drivers/staging/greybus/firmware.h
38
int gb_cap_connection_init(struct gb_connection *connection);
drivers/staging/greybus/firmware.h
39
void gb_cap_connection_exit(struct gb_connection *connection);
drivers/staging/greybus/fw-core.c
101
fw_core->mgmt_connection = connection;
drivers/staging/greybus/fw-core.c
112
connection = gb_connection_create(bundle, cport_id,
drivers/staging/greybus/fw-core.c
114
if (IS_ERR(connection)) {
drivers/staging/greybus/fw-core.c
116
PTR_ERR(connection));
drivers/staging/greybus/fw-core.c
118
fw_core->download_connection = connection;
drivers/staging/greybus/fw-core.c
131
connection = gb_connection_create(bundle, cport_id,
drivers/staging/greybus/fw-core.c
133
if (IS_ERR(connection)) {
drivers/staging/greybus/fw-core.c
135
PTR_ERR(connection));
drivers/staging/greybus/fw-core.c
137
fw_core->spi_connection = connection;
drivers/staging/greybus/fw-core.c
149
connection = gb_connection_create(bundle, cport_id,
drivers/staging/greybus/fw-core.c
151
if (IS_ERR(connection)) {
drivers/staging/greybus/fw-core.c
153
PTR_ERR(connection));
drivers/staging/greybus/fw-core.c
155
fw_core->cap_connection = connection;
drivers/staging/greybus/fw-core.c
31
static int gb_fw_spi_connection_init(struct gb_connection *connection)
drivers/staging/greybus/fw-core.c
35
if (!connection)
drivers/staging/greybus/fw-core.c
38
ret = gb_connection_enable(connection);
drivers/staging/greybus/fw-core.c
42
ret = gb_spilib_master_init(connection, &connection->bundle->dev,
drivers/staging/greybus/fw-core.c
45
gb_connection_disable(connection);
drivers/staging/greybus/fw-core.c
52
static void gb_fw_spi_connection_exit(struct gb_connection *connection)
drivers/staging/greybus/fw-core.c
54
if (!connection)
drivers/staging/greybus/fw-core.c
57
gb_spilib_master_exit(connection);
drivers/staging/greybus/fw-core.c
58
gb_connection_disable(connection);
drivers/staging/greybus/fw-core.c
65
struct gb_connection *connection;
drivers/staging/greybus/fw-core.c
91
connection = gb_connection_create(bundle, cport_id,
drivers/staging/greybus/fw-core.c
93
if (IS_ERR(connection)) {
drivers/staging/greybus/fw-core.c
94
ret = PTR_ERR(connection);
drivers/staging/greybus/fw-download.c
164
struct gb_interface *intf = fw_download->connection->bundle->intf;
drivers/staging/greybus/fw-download.c
223
struct gb_connection *connection = op->connection;
drivers/staging/greybus/fw-download.c
224
struct fw_download *fw_download = gb_connection_get_data(connection);
drivers/staging/greybus/fw-download.c
270
struct gb_connection *connection = op->connection;
drivers/staging/greybus/fw-download.c
271
struct fw_download *fw_download = gb_connection_get_data(connection);
drivers/staging/greybus/fw-download.c
353
struct gb_connection *connection = op->connection;
drivers/staging/greybus/fw-download.c
354
struct fw_download *fw_download = gb_connection_get_data(connection);
drivers/staging/greybus/fw-download.c
38
struct gb_connection *connection;
drivers/staging/greybus/fw-download.c
398
dev_err(&op->connection->bundle->dev,
drivers/staging/greybus/fw-download.c
404
int gb_fw_download_connection_init(struct gb_connection *connection)
drivers/staging/greybus/fw-download.c
409
if (!connection)
drivers/staging/greybus/fw-download.c
416
fw_download->parent = &connection->bundle->dev;
drivers/staging/greybus/fw-download.c
419
gb_connection_set_data(connection, fw_download);
drivers/staging/greybus/fw-download.c
420
fw_download->connection = connection;
drivers/staging/greybus/fw-download.c
423
ret = gb_connection_enable(connection);
drivers/staging/greybus/fw-download.c
436
void gb_fw_download_connection_exit(struct gb_connection *connection)
drivers/staging/greybus/fw-download.c
441
if (!connection)
drivers/staging/greybus/fw-download.c
444
fw_download = gb_connection_get_data(connection);
drivers/staging/greybus/fw-download.c
445
gb_connection_disable(fw_download->connection);
drivers/staging/greybus/fw-management.c
110
struct gb_connection *connection = fw_mgmt->connection;
drivers/staging/greybus/fw-management.c
114
ret = gb_operation_sync(connection,
drivers/staging/greybus/fw-management.c
170
ret = gb_operation_sync(fw_mgmt->connection,
drivers/staging/greybus/fw-management.c
187
struct gb_connection *connection = op->connection;
drivers/staging/greybus/fw-management.c
188
struct fw_mgmt *fw_mgmt = gb_connection_get_data(connection);
drivers/staging/greybus/fw-management.c
238
struct gb_connection *connection = fw_mgmt->connection;
drivers/staging/greybus/fw-management.c
25
struct gb_connection *connection;
drivers/staging/greybus/fw-management.c
251
ret = gb_operation_sync(connection,
drivers/staging/greybus/fw-management.c
312
ret = gb_operation_sync(fw_mgmt->connection,
drivers/staging/greybus/fw-management.c
329
struct gb_connection *connection = op->connection;
drivers/staging/greybus/fw-management.c
330
struct fw_mgmt *fw_mgmt = gb_connection_get_data(connection);
drivers/staging/greybus/fw-management.c
503
ret = gb_interface_request_mode_switch(fw_mgmt->connection->intf);
drivers/staging/greybus/fw-management.c
521
struct gb_bundle *bundle = fw_mgmt->connection->bundle;
drivers/staging/greybus/fw-management.c
566
dev_err(&op->connection->bundle->dev,
drivers/staging/greybus/fw-management.c
572
int gb_fw_mgmt_connection_init(struct gb_connection *connection)
drivers/staging/greybus/fw-management.c
577
if (!connection)
drivers/staging/greybus/fw-management.c
584
fw_mgmt->parent = &connection->bundle->dev;
drivers/staging/greybus/fw-management.c
586
fw_mgmt->connection = connection;
drivers/staging/greybus/fw-management.c
588
gb_connection_set_data(connection, fw_mgmt);
drivers/staging/greybus/fw-management.c
598
ret = gb_connection_enable(connection);
drivers/staging/greybus/fw-management.c
632
gb_connection_disable(connection);
drivers/staging/greybus/fw-management.c
643
void gb_fw_mgmt_connection_exit(struct gb_connection *connection)
drivers/staging/greybus/fw-management.c
647
if (!connection)
drivers/staging/greybus/fw-management.c
650
fw_mgmt = gb_connection_get_data(connection);
drivers/staging/greybus/fw-management.c
665
gb_connection_disable(fw_mgmt->connection);
drivers/staging/greybus/gpio.c
117
ret = gb_operation_sync(ggc->connection, GB_GPIO_TYPE_GET_DIRECTION,
drivers/staging/greybus/gpio.c
139
ret = gb_operation_sync(ggc->connection, GB_GPIO_TYPE_DIRECTION_IN,
drivers/staging/greybus/gpio.c
154
ret = gb_operation_sync(ggc->connection, GB_GPIO_TYPE_DIRECTION_OUT,
drivers/staging/greybus/gpio.c
171
ret = gb_operation_sync(ggc->connection, GB_GPIO_TYPE_GET_VALUE,
drivers/staging/greybus/gpio.c
197
ret = gb_operation_sync(ggc->connection, GB_GPIO_TYPE_SET_VALUE,
drivers/staging/greybus/gpio.c
217
ret = gb_operation_sync(ggc->connection, GB_GPIO_TYPE_SET_DEBOUNCE,
drivers/staging/greybus/gpio.c
231
ret = gb_operation_sync(ggc->connection,
drivers/staging/greybus/gpio.c
245
ret = gb_operation_sync(ggc->connection,
drivers/staging/greybus/gpio.c
262
ret = gb_operation_sync(ggc->connection,
drivers/staging/greybus/gpio.c
359
struct gb_connection *connection = op->connection;
drivers/staging/greybus/gpio.c
36
struct gb_connection *connection;
drivers/staging/greybus/gpio.c
360
struct gb_gpio_controller *ggc = gb_connection_get_data(connection);
drivers/staging/greybus/gpio.c
498
struct gb_connection *connection;
drivers/staging/greybus/gpio.c
509
connection =
drivers/staging/greybus/gpio.c
513
if (IS_ERR(connection)) {
drivers/staging/greybus/gpio.c
514
ret = PTR_ERR(connection);
drivers/staging/greybus/gpio.c
518
ggc->connection = connection;
drivers/staging/greybus/gpio.c
519
gb_connection_set_data(connection, ggc);
drivers/staging/greybus/gpio.c
523
ret = gb_connection_enable_tx(connection);
drivers/staging/greybus/gpio.c
55
ret = gb_operation_sync(ggc->connection, GB_GPIO_TYPE_LINE_COUNT,
drivers/staging/greybus/gpio.c
568
ret = gb_connection_enable(connection);
drivers/staging/greybus/gpio.c
584
gb_connection_disable(connection);
drivers/staging/greybus/gpio.c
586
gb_connection_destroy(connection);
drivers/staging/greybus/gpio.c
595
struct gb_connection *connection = ggc->connection;
drivers/staging/greybus/gpio.c
602
gb_connection_disable_rx(connection);
drivers/staging/greybus/gpio.c
604
gb_connection_disable(connection);
drivers/staging/greybus/gpio.c
605
gb_connection_destroy(connection);
drivers/staging/greybus/gpio.c
73
ret = gb_operation_sync(ggc->connection, GB_GPIO_TYPE_ACTIVATE,
drivers/staging/greybus/gpio.c
94
ret = gb_operation_sync(ggc->connection, GB_GPIO_TYPE_DEACTIVATE,
drivers/staging/greybus/hid.c
106
operation = gb_operation_create(ghid->connection,
drivers/staging/greybus/hid.c
121
dev_err(&operation->connection->bundle->dev,
drivers/staging/greybus/hid.c
135
struct gb_connection *connection = op->connection;
drivers/staging/greybus/hid.c
136
struct gb_hid *ghid = gb_connection_get_data(connection);
drivers/staging/greybus/hid.c
140
dev_err(&connection->bundle->dev,
drivers/staging/greybus/hid.c
20
struct gb_connection *connection;
drivers/staging/greybus/hid.c
365
dev_err(&ghid->connection->bundle->dev,
drivers/staging/greybus/hid.c
38
return gb_operation_sync(ghid->connection, GB_HID_TYPE_GET_DESC, NULL,
drivers/staging/greybus/hid.c
410
hid->dev.parent = &ghid->connection->bundle->dev;
drivers/staging/greybus/hid.c
415
dev_name(&ghid->connection->bundle->dev),
drivers/staging/greybus/hid.c
425
struct gb_connection *connection;
drivers/staging/greybus/hid.c
441
connection = gb_connection_create(bundle, le16_to_cpu(cport_desc->id),
drivers/staging/greybus/hid.c
443
if (IS_ERR(connection)) {
drivers/staging/greybus/hid.c
444
ret = PTR_ERR(connection);
drivers/staging/greybus/hid.c
448
gb_connection_set_data(connection, ghid);
drivers/staging/greybus/hid.c
449
ghid->connection = connection;
drivers/staging/greybus/hid.c
462
ret = gb_connection_enable(connection);
drivers/staging/greybus/hid.c
481
gb_connection_disable(connection);
drivers/staging/greybus/hid.c
485
gb_connection_destroy(connection);
drivers/staging/greybus/hid.c
50
ret = gb_operation_sync(ghid->connection, GB_HID_TYPE_GET_REPORT_DESC,
drivers/staging/greybus/hid.c
500
gb_connection_disable(ghid->connection);
drivers/staging/greybus/hid.c
501
gb_connection_destroy(ghid->connection);
drivers/staging/greybus/hid.c
67
ret = gb_operation_sync(ghid->connection, type, NULL, 0, NULL, 0);
drivers/staging/greybus/hid.c
87
ret = gb_operation_sync(ghid->connection, GB_HID_TYPE_GET_REPORT,
drivers/staging/greybus/i2c.c
116
operation = gb_operation_create(connection, GB_I2C_TYPE_TRANSFER,
drivers/staging/greybus/i2c.c
176
struct gb_connection *connection = gb_i2c_dev->connection;
drivers/staging/greybus/i2c.c
18
struct gb_connection *connection;
drivers/staging/greybus/i2c.c
181
operation = gb_i2c_operation_create(connection, msgs, msg_count);
drivers/staging/greybus/i2c.c
233
struct gb_connection *connection;
drivers/staging/greybus/i2c.c
242
connection =
drivers/staging/greybus/i2c.c
246
if (IS_ERR(connection)) {
drivers/staging/greybus/i2c.c
247
ret = PTR_ERR(connection);
drivers/staging/greybus/i2c.c
251
gb_i2c_dev->connection = connection;
drivers/staging/greybus/i2c.c
252
gb_connection_set_data(connection, gb_i2c_dev);
drivers/staging/greybus/i2c.c
256
ret = gb_connection_enable(connection);
drivers/staging/greybus/i2c.c
282
gb_connection_disable(connection);
drivers/staging/greybus/i2c.c
284
gb_connection_destroy(connection);
drivers/staging/greybus/i2c.c
294
struct gb_connection *connection = gb_i2c_dev->connection;
drivers/staging/greybus/i2c.c
302
gb_connection_disable(connection);
drivers/staging/greybus/i2c.c
303
gb_connection_destroy(connection);
drivers/staging/greybus/i2c.c
47
ret = gb_operation_sync(gb_i2c_dev->connection,
drivers/staging/greybus/i2c.c
78
gb_i2c_operation_create(struct gb_connection *connection,
drivers/staging/greybus/i2c.c
81
struct gb_i2c_device *gb_i2c_dev = gb_connection_get_data(connection);
drivers/staging/greybus/light.c
112
struct gb_connection *connection = get_conn_from_channel(channel);
drivers/staging/greybus/light.c
113
struct gb_bundle *bundle = connection->bundle;
drivers/staging/greybus/light.c
1130
ret = gb_operation_sync(glights->connection, GB_LIGHTS_TYPE_GET_LIGHTS,
drivers/staging/greybus/light.c
1145
struct gb_connection *connection = glights->connection;
drivers/staging/greybus/light.c
1163
dev_err(&connection->bundle->dev,
drivers/staging/greybus/light.c
1176
struct gb_connection *connection = glights->connection;
drivers/staging/greybus/light.c
1184
dev_err(&connection->bundle->dev,
drivers/staging/greybus/light.c
1196
struct gb_connection *connection = op->connection;
drivers/staging/greybus/light.c
1197
struct device *dev = &connection->bundle->dev;
drivers/staging/greybus/light.c
1198
struct gb_lights *glights = gb_connection_get_data(connection);
drivers/staging/greybus/light.c
1251
struct gb_connection *connection;
drivers/staging/greybus/light.c
1268
connection = gb_connection_create(bundle, le16_to_cpu(cport_desc->id),
drivers/staging/greybus/light.c
1270
if (IS_ERR(connection)) {
drivers/staging/greybus/light.c
1271
ret = PTR_ERR(connection);
drivers/staging/greybus/light.c
1275
glights->connection = connection;
drivers/staging/greybus/light.c
1276
gb_connection_set_data(connection, glights);
drivers/staging/greybus/light.c
128
ret = gb_operation_sync(connection, GB_LIGHTS_TYPE_SET_FLASH_INTENSITY,
drivers/staging/greybus/light.c
1281
ret = gb_connection_enable_tx(connection);
drivers/staging/greybus/light.c
1294
ret = gb_connection_enable(connection);
drivers/staging/greybus/light.c
1308
gb_connection_disable(connection);
drivers/staging/greybus/light.c
1310
gb_connection_destroy(connection);
drivers/staging/greybus/light.c
1323
gb_connection_disable(glights->connection);
drivers/staging/greybus/light.c
1324
gb_connection_destroy(glights->connection);
drivers/staging/greybus/light.c
300
struct gb_connection *connection = get_conn_from_channel(channel);
drivers/staging/greybus/light.c
301
struct gb_bundle *bundle = connection->bundle;
drivers/staging/greybus/light.c
316
ret = gb_operation_sync(connection, GB_LIGHTS_TYPE_SET_FADE,
drivers/staging/greybus/light.c
326
struct gb_connection *connection = get_conn_from_channel(channel);
drivers/staging/greybus/light.c
327
struct gb_bundle *bundle = connection->bundle;
drivers/staging/greybus/light.c
341
ret = gb_operation_sync(connection, GB_LIGHTS_TYPE_SET_COLOR,
drivers/staging/greybus/light.c
352
struct gb_connection *connection = get_conn_from_channel(channel);
drivers/staging/greybus/light.c
353
struct gb_bundle *bundle = connection->bundle;
drivers/staging/greybus/light.c
368
ret = gb_operation_sync(connection, GB_LIGHTS_TYPE_SET_BRIGHTNESS,
drivers/staging/greybus/light.c
434
struct gb_connection *connection = get_conn_from_channel(channel);
drivers/staging/greybus/light.c
435
struct gb_bundle *bundle = connection->bundle;
drivers/staging/greybus/light.c
458
ret = gb_operation_sync(connection, GB_LIGHTS_TYPE_SET_BLINK, &req,
drivers/staging/greybus/light.c
513
struct gb_connection *connection = get_conn_from_light(light);
drivers/staging/greybus/light.c
514
struct device *dev = &connection->bundle->dev;
drivers/staging/greybus/light.c
576
struct gb_connection *connection = get_conn_from_light(light);
drivers/staging/greybus/light.c
578
dev_err(&connection->bundle->dev, "no support for v4l2 subdevices\n");
drivers/staging/greybus/light.c
59
struct gb_connection *connection;
drivers/staging/greybus/light.c
618
struct gb_connection *connection = get_conn_from_channel(channel);
drivers/staging/greybus/light.c
619
struct gb_bundle *bundle = connection->bundle;
drivers/staging/greybus/light.c
634
ret = gb_operation_sync(connection, GB_LIGHTS_TYPE_SET_FLASH_STROBE,
drivers/staging/greybus/light.c
659
struct gb_connection *connection = get_conn_from_channel(channel);
drivers/staging/greybus/light.c
660
struct gb_bundle *bundle = connection->bundle;
drivers/staging/greybus/light.c
675
ret = gb_operation_sync(connection, GB_LIGHTS_TYPE_SET_FLASH_TIMEOUT,
drivers/staging/greybus/light.c
69
return channel->light->glights->connection;
drivers/staging/greybus/light.c
690
struct gb_connection *connection = get_conn_from_channel(channel);
drivers/staging/greybus/light.c
691
struct gb_bundle *bundle = connection->bundle;
drivers/staging/greybus/light.c
706
ret = gb_operation_sync(connection, GB_LIGHTS_TYPE_GET_FLASH_FAULT,
drivers/staging/greybus/light.c
74
return light->glights->connection;
drivers/staging/greybus/light.c
752
struct gb_connection *connection = get_conn_from_channel(channel);
drivers/staging/greybus/light.c
789
ret = led_classdev_flash_register(&connection->bundle->dev, fled);
drivers/staging/greybus/light.c
810
struct gb_connection *connection = get_conn_from_channel(channel);
drivers/staging/greybus/light.c
819
ret = gb_operation_sync(connection,
drivers/staging/greybus/light.c
853
struct gb_connection *connection = get_conn_from_channel(channel);
drivers/staging/greybus/light.c
855
dev_err(&connection->bundle->dev, "no support for flash devices\n");
drivers/staging/greybus/light.c
872
struct gb_connection *connection = get_conn_from_channel(channel);
drivers/staging/greybus/light.c
876
ret = led_classdev_register(&connection->bundle->dev, cdev);
drivers/staging/greybus/light.c
932
struct gb_connection *connection = get_conn_from_light(light);
drivers/staging/greybus/light.c
940
ret = gb_operation_sync(connection, GB_LIGHTS_TYPE_GET_CHANNEL_CONFIG,
drivers/staging/greybus/light.c
999
ret = gb_operation_sync(glights->connection,
drivers/staging/greybus/log.c
101
gb_connection_destroy(connection);
drivers/staging/greybus/log.c
110
struct gb_connection *connection = log->connection;
drivers/staging/greybus/log.c
112
gb_connection_disable(connection);
drivers/staging/greybus/log.c
113
gb_connection_destroy(connection);
drivers/staging/greybus/log.c
15
struct gb_connection *connection;
drivers/staging/greybus/log.c
20
struct gb_connection *connection = op->connection;
drivers/staging/greybus/log.c
21
struct device *dev = &connection->bundle->dev;
drivers/staging/greybus/log.c
69
struct gb_connection *connection;
drivers/staging/greybus/log.c
84
connection = gb_connection_create(bundle, le16_to_cpu(cport_desc->id),
drivers/staging/greybus/log.c
86
if (IS_ERR(connection)) {
drivers/staging/greybus/log.c
87
retval = PTR_ERR(connection);
drivers/staging/greybus/log.c
91
log->connection = connection;
drivers/staging/greybus/log.c
94
retval = gb_connection_enable(connection);
drivers/staging/greybus/loopback.c
1003
gb->connection = connection;
drivers/staging/greybus/loopback.c
1017
gb_dev.size_max = gb_operation_get_payload_size_max(connection);
drivers/staging/greybus/loopback.c
1028
dev_name(&connection->bundle->dev));
drivers/staging/greybus/loopback.c
1038
retval = gb_connection_enable(connection);
drivers/staging/greybus/loopback.c
1043
&connection->bundle->dev,
drivers/staging/greybus/loopback.c
1070
gb_connection_latency_tag_enable(connection);
drivers/staging/greybus/loopback.c
1081
gb_connection_disable(connection);
drivers/staging/greybus/loopback.c
1087
gb_connection_destroy(connection);
drivers/staging/greybus/loopback.c
1104
gb_connection_disable(gb->connection);
drivers/staging/greybus/loopback.c
1110
gb_connection_latency_tag_disable(gb->connection);
drivers/staging/greybus/loopback.c
1127
gb_connection_destroy(gb->connection);
drivers/staging/greybus/loopback.c
379
operation = gb_operation_create(gb->connection, type, request_size,
drivers/staging/greybus/loopback.c
389
dev_err(&gb->connection->bundle->dev,
drivers/staging/greybus/loopback.c
397
dev_err(&gb->connection->bundle->dev,
drivers/staging/greybus/loopback.c
453
dev_dbg(&gb->connection->bundle->dev, "complete operation %d\n",
drivers/staging/greybus/loopback.c
478
operation = gb_operation_create(gb->connection, type, request_size,
drivers/staging/greybus/loopback.c
554
dev_err(&gb->connection->bundle->dev,
drivers/staging/greybus/loopback.c
60
struct gb_connection *connection;
drivers/staging/greybus/loopback.c
608
dev_err(&gb->connection->bundle->dev,
drivers/staging/greybus/loopback.c
655
struct gb_connection *connection = operation->connection;
drivers/staging/greybus/loopback.c
658
struct device *dev = &connection->bundle->dev;
drivers/staging/greybus/loopback.c
843
struct gb_bundle *bundle = gb->connection->bundle;
drivers/staging/greybus/loopback.c
978
struct gb_connection *connection;
drivers/staging/greybus/loopback.c
996
connection = gb_connection_create(bundle, le16_to_cpu(cport_desc->id),
drivers/staging/greybus/loopback.c
998
if (IS_ERR(connection)) {
drivers/staging/greybus/loopback.c
999
retval = PTR_ERR(connection);
drivers/staging/greybus/power_supply.c
1006
dev_err(&connection->bundle->dev,
drivers/staging/greybus/power_supply.c
1017
dev_err(&connection->bundle->dev,
drivers/staging/greybus/power_supply.c
1054
struct gb_connection *connection;
drivers/staging/greybus/power_supply.c
1069
connection = gb_connection_create(bundle, le16_to_cpu(cport_desc->id),
drivers/staging/greybus/power_supply.c
1071
if (IS_ERR(connection)) {
drivers/staging/greybus/power_supply.c
1072
ret = PTR_ERR(connection);
drivers/staging/greybus/power_supply.c
1076
supplies->connection = connection;
drivers/staging/greybus/power_supply.c
1077
gb_connection_set_data(connection, supplies);
drivers/staging/greybus/power_supply.c
1084
ret = gb_connection_enable_tx(connection);
drivers/staging/greybus/power_supply.c
1093
ret = gb_connection_enable(connection);
drivers/staging/greybus/power_supply.c
1105
gb_connection_disable(connection);
drivers/staging/greybus/power_supply.c
1107
gb_connection_destroy(connection);
drivers/staging/greybus/power_supply.c
1117
gb_connection_disable(supplies->connection);
drivers/staging/greybus/power_supply.c
1118
gb_connection_destroy(supplies->connection);
drivers/staging/greybus/power_supply.c
312
return gbpsy->supplies->connection;
drivers/staging/greybus/power_supply.c
361
struct gb_connection *connection = get_conn_from_psy(gbpsy);
drivers/staging/greybus/power_supply.c
372
ret = gb_pm_runtime_get_sync(connection->bundle);
drivers/staging/greybus/power_supply.c
374
dev_err(&connection->bundle->dev,
drivers/staging/greybus/power_supply.c
380
ret = gb_pm_runtime_put_autosuspend(connection->bundle);
drivers/staging/greybus/power_supply.c
382
dev_err(&connection->bundle->dev,
drivers/staging/greybus/power_supply.c
476
struct gb_connection *connection = get_conn_from_psy(gbpsy);
drivers/staging/greybus/power_supply.c
483
ret = gb_operation_sync(connection,
drivers/staging/greybus/power_supply.c
50
struct gb_connection *connection;
drivers/staging/greybus/power_supply.c
508
struct gb_connection *connection = get_conn_from_psy(gbpsy);
drivers/staging/greybus/power_supply.c
520
op = gb_operation_create(connection,
drivers/staging/greybus/power_supply.c
541
dev_warn(&connection->bundle->dev,
drivers/staging/greybus/power_supply.c
591
struct gb_connection *connection = get_conn_from_psy(gbpsy);
drivers/staging/greybus/power_supply.c
604
ret = gb_operation_sync(connection, GB_POWER_SUPPLY_TYPE_GET_PROPERTY,
drivers/staging/greybus/power_supply.c
660
struct gb_connection *connection = get_conn_from_psy(gbpsy);
drivers/staging/greybus/power_supply.c
673
dev_err(&connection->bundle->dev, "get property %u\n", psp);
drivers/staging/greybus/power_supply.c
696
struct gb_connection *connection = get_conn_from_psy(gbpsy);
drivers/staging/greybus/power_supply.c
703
ret = gb_pm_runtime_get_sync(connection->bundle);
drivers/staging/greybus/power_supply.c
717
gb_pm_runtime_put_autosuspend(connection->bundle);
drivers/staging/greybus/power_supply.c
767
struct gb_connection *connection = get_conn_from_psy(gbpsy);
drivers/staging/greybus/power_supply.c
772
ret = gb_pm_runtime_get_sync(connection->bundle);
drivers/staging/greybus/power_supply.c
786
ret = gb_operation_sync(connection, GB_POWER_SUPPLY_TYPE_SET_PROPERTY,
drivers/staging/greybus/power_supply.c
795
gb_pm_runtime_put_autosuspend(connection->bundle);
drivers/staging/greybus/power_supply.c
818
struct gb_connection *connection = get_conn_from_psy(gbpsy);
drivers/staging/greybus/power_supply.c
831
gbpsy->psy = power_supply_register(&connection->bundle->dev,
drivers/staging/greybus/power_supply.c
877
ret = gb_operation_sync(supplies->connection,
drivers/staging/greybus/power_supply.c
934
struct gb_connection *connection = supplies->connection;
drivers/staging/greybus/power_supply.c
955
dev_err(&connection->bundle->dev,
drivers/staging/greybus/power_supply.c
967
struct gb_connection *connection = supplies->connection;
drivers/staging/greybus/power_supply.c
976
dev_err(&connection->bundle->dev,
drivers/staging/greybus/power_supply.c
988
struct gb_connection *connection = op->connection;
drivers/staging/greybus/power_supply.c
989
struct gb_power_supplies *supplies = gb_connection_get_data(connection);
drivers/staging/greybus/power_supply.c
998
dev_err(&connection->bundle->dev,
drivers/staging/greybus/pwm.c
105
ret = gb_operation_sync(pwmc->connection, GB_PWM_TYPE_CONFIG,
drivers/staging/greybus/pwm.c
129
ret = gb_operation_sync(pwmc->connection, GB_PWM_TYPE_POLARITY,
drivers/staging/greybus/pwm.c
151
ret = gb_operation_sync(pwmc->connection, GB_PWM_TYPE_ENABLE,
drivers/staging/greybus/pwm.c
168
ret = gb_operation_sync(pwmc->connection, GB_PWM_TYPE_DISABLE,
drivers/staging/greybus/pwm.c
18
struct gb_connection *connection;
drivers/staging/greybus/pwm.c
247
struct gb_connection *connection;
drivers/staging/greybus/pwm.c
252
connection = gb_connection_create(gbphy_dev->bundle,
drivers/staging/greybus/pwm.c
255
if (IS_ERR(connection))
drivers/staging/greybus/pwm.c
256
return PTR_ERR(connection);
drivers/staging/greybus/pwm.c
258
ret = gb_connection_enable(connection);
drivers/staging/greybus/pwm.c
263
ret = gb_pwm_get_npwm(connection);
drivers/staging/greybus/pwm.c
27
static int gb_pwm_get_npwm(struct gb_connection *connection)
drivers/staging/greybus/pwm.c
276
pwmc->connection = connection;
drivers/staging/greybus/pwm.c
293
gb_connection_disable(connection);
drivers/staging/greybus/pwm.c
295
gb_connection_destroy(connection);
drivers/staging/greybus/pwm.c
303
struct gb_connection *connection = pwmc->connection;
drivers/staging/greybus/pwm.c
312
gb_connection_disable(connection);
drivers/staging/greybus/pwm.c
313
gb_connection_destroy(connection);
drivers/staging/greybus/pwm.c
32
ret = gb_operation_sync(connection, GB_PWM_TYPE_PWM_COUNT,
drivers/staging/greybus/pwm.c
58
ret = gb_operation_sync(pwmc->connection, GB_PWM_TYPE_ACTIVATE,
drivers/staging/greybus/pwm.c
80
ret = gb_operation_sync(pwmc->connection, GB_PWM_TYPE_DEACTIVATE,
drivers/staging/greybus/raw.c
128
struct gb_connection *connection = raw->connection;
drivers/staging/greybus/raw.c
143
retval = gb_operation_sync(connection, GB_RAW_TYPE_SEND,
drivers/staging/greybus/raw.c
155
struct gb_connection *connection;
drivers/staging/greybus/raw.c
171
connection = gb_connection_create(bundle, le16_to_cpu(cport_desc->id),
drivers/staging/greybus/raw.c
173
if (IS_ERR(connection)) {
drivers/staging/greybus/raw.c
174
retval = PTR_ERR(connection);
drivers/staging/greybus/raw.c
181
raw->connection = connection;
drivers/staging/greybus/raw.c
19
struct gb_connection *connection;
drivers/staging/greybus/raw.c
193
retval = gb_connection_enable(connection);
drivers/staging/greybus/raw.c
201
raw->device = device_create(&raw_class, &connection->bundle->dev,
drivers/staging/greybus/raw.c
214
gb_connection_disable(connection);
drivers/staging/greybus/raw.c
220
gb_connection_destroy(connection);
drivers/staging/greybus/raw.c
230
struct gb_connection *connection = raw->connection;
drivers/staging/greybus/raw.c
237
gb_connection_disable(connection);
drivers/staging/greybus/raw.c
239
gb_connection_destroy(connection);
drivers/staging/greybus/raw.c
61
struct device *dev = &raw->connection->bundle->dev;
drivers/staging/greybus/raw.c
94
struct gb_connection *connection = op->connection;
drivers/staging/greybus/raw.c
95
struct device *dev = &connection->bundle->dev;
drivers/staging/greybus/raw.c
96
struct gb_raw *raw = greybus_get_drvdata(connection->bundle);
drivers/staging/greybus/sdio.c
125
ret = gb_operation_sync(host->connection, GB_SDIO_TYPE_GET_CAPABILITIES,
drivers/staging/greybus/sdio.c
134
data_max = gb_operation_get_payload_size_max(host->connection);
drivers/staging/greybus/sdio.c
20
struct gb_connection *connection;
drivers/staging/greybus/sdio.c
205
struct gb_sdio_host *host = gb_connection_get_data(op->connection);
drivers/staging/greybus/sdio.c
246
ret = gb_operation_sync(host->connection, GB_SDIO_TYPE_SET_IOS, request,
drivers/staging/greybus/sdio.c
269
operation = gb_operation_create(host->connection, GB_SDIO_TYPE_TRANSFER,
drivers/staging/greybus/sdio.c
323
operation = gb_operation_create(host->connection, GB_SDIO_TYPE_TRANSFER,
drivers/staging/greybus/sdio.c
474
ret = gb_operation_sync_timeout(host->connection, GB_SDIO_TYPE_COMMAND,
drivers/staging/greybus/sdio.c
765
struct gb_connection *connection;
drivers/staging/greybus/sdio.c
774
connection = gb_connection_create(gbphy_dev->bundle,
drivers/staging/greybus/sdio.c
777
if (IS_ERR(connection)) {
drivers/staging/greybus/sdio.c
778
ret = PTR_ERR(connection);
drivers/staging/greybus/sdio.c
786
host->connection = connection;
drivers/staging/greybus/sdio.c
787
gb_connection_set_data(connection, host);
drivers/staging/greybus/sdio.c
791
ret = gb_connection_enable_tx(connection);
drivers/staging/greybus/sdio.c
817
ret = gb_connection_enable(connection);
drivers/staging/greybus/sdio.c
835
gb_connection_disable(connection);
drivers/staging/greybus/sdio.c
837
gb_connection_destroy(connection);
drivers/staging/greybus/sdio.c
847
struct gb_connection *connection = host->connection;
drivers/staging/greybus/sdio.c
858
gb_connection_set_data(connection, NULL);
drivers/staging/greybus/sdio.c
862
gb_connection_disable_rx(connection);
drivers/staging/greybus/sdio.c
864
gb_connection_disable(connection);
drivers/staging/greybus/sdio.c
865
gb_connection_destroy(connection);
drivers/staging/greybus/spi.c
20
struct gb_connection *connection;
drivers/staging/greybus/spi.c
23
connection = gb_connection_create(gbphy_dev->bundle,
drivers/staging/greybus/spi.c
26
if (IS_ERR(connection))
drivers/staging/greybus/spi.c
27
return PTR_ERR(connection);
drivers/staging/greybus/spi.c
29
ret = gb_connection_enable(connection);
drivers/staging/greybus/spi.c
33
ret = gb_spilib_master_init(connection, &gbphy_dev->dev, spilib_ops);
drivers/staging/greybus/spi.c
37
gb_gbphy_set_data(gbphy_dev, connection);
drivers/staging/greybus/spi.c
43
gb_connection_disable(connection);
drivers/staging/greybus/spi.c
45
gb_connection_destroy(connection);
drivers/staging/greybus/spi.c
52
struct gb_connection *connection = gb_gbphy_get_data(gbphy_dev);
drivers/staging/greybus/spi.c
59
gb_spilib_master_exit(connection);
drivers/staging/greybus/spi.c
60
gb_connection_disable(connection);
drivers/staging/greybus/spi.c
61
gb_connection_destroy(connection);
drivers/staging/greybus/spilib.c
163
struct gb_connection *connection, struct spi_message *msg)
drivers/staging/greybus/spilib.c
177
data_max = gb_operation_get_payload_size_max(connection);
drivers/staging/greybus/spilib.c
19
struct gb_connection *connection;
drivers/staging/greybus/spilib.c
232
operation = gb_operation_create(connection, GB_SPI_TYPE_TRANSFER,
drivers/staging/greybus/spilib.c
331
struct gb_connection *connection = spi->connection;
drivers/staging/greybus/spilib.c
348
operation = gb_spi_operation_create(spi, connection, msg);
drivers/staging/greybus/spilib.c
421
ret = gb_operation_sync(spi->connection, GB_SPI_TYPE_MASTER_CONFIG,
drivers/staging/greybus/spilib.c
453
ret = gb_operation_sync(spi->connection, GB_SPI_TYPE_DEVICE_CONFIG,
drivers/staging/greybus/spilib.c
47
return gb_connection_get_data(spi->connection);
drivers/staging/greybus/spilib.c
485
int gb_spilib_master_init(struct gb_connection *connection, struct device *dev,
drivers/staging/greybus/spilib.c
501
spi->connection = connection;
drivers/staging/greybus/spilib.c
502
gb_connection_set_data(connection, ctlr);
drivers/staging/greybus/spilib.c
562
void gb_spilib_master_exit(struct gb_connection *connection)
drivers/staging/greybus/spilib.c
564
struct spi_controller *ctlr = gb_connection_get_data(connection);
drivers/staging/greybus/spilib.h
22
int gb_spilib_master_init(struct gb_connection *connection,
drivers/staging/greybus/spilib.h
24
void gb_spilib_master_exit(struct gb_connection *connection);
drivers/staging/greybus/uart.c
131
struct gb_connection *connection = op->connection;
drivers/staging/greybus/uart.c
132
struct gb_tty *gb_tty = gb_connection_get_data(connection);
drivers/staging/greybus/uart.c
151
struct gb_connection *connection = op->connection;
drivers/staging/greybus/uart.c
152
struct gb_tty *gb_tty = gb_connection_get_data(connection);
drivers/staging/greybus/uart.c
201
struct gb_connection *connection = op->connection;
drivers/staging/greybus/uart.c
202
struct gb_tty *gb_tty = gb_connection_get_data(connection);
drivers/staging/greybus/uart.c
257
ret = gb_operation_sync(gb_tty->connection,
drivers/staging/greybus/uart.c
283
return gb_operation_sync(tty->connection, GB_UART_TYPE_SET_LINE_CODING,
drivers/staging/greybus/uart.c
293
return gb_operation_sync(gb_tty->connection,
drivers/staging/greybus/uart.c
309
return gb_operation_sync(gb_tty->connection, GB_UART_TYPE_SEND_BREAK,
drivers/staging/greybus/uart.c
336
return gb_operation_sync(gb_tty->connection, GB_UART_TYPE_FLUSH_FIFOS,
drivers/staging/greybus/uart.c
48
struct gb_connection *connection;
drivers/staging/greybus/uart.c
75
struct gb_connection *connection = op->connection;
drivers/staging/greybus/uart.c
76
struct gb_tty *gb_tty = gb_connection_get_data(connection);
drivers/staging/greybus/uart.c
807
struct gb_connection *connection;
drivers/staging/greybus/uart.c
814
connection = gb_connection_create(gbphy_dev->bundle,
drivers/staging/greybus/uart.c
817
if (IS_ERR(connection))
drivers/staging/greybus/uart.c
818
return PTR_ERR(connection);
drivers/staging/greybus/uart.c
820
max_payload = gb_operation_get_payload_size_max(connection);
drivers/staging/greybus/uart.c
873
gb_tty->connection = connection;
drivers/staging/greybus/uart.c
875
gb_connection_set_data(connection, gb_tty);
drivers/staging/greybus/uart.c
878
retval = gb_connection_enable_tx(connection);
drivers/staging/greybus/uart.c
895
retval = gb_connection_enable(connection);
drivers/staging/greybus/uart.c
910
gb_connection_disable(connection);
drivers/staging/greybus/uart.c
914
gb_connection_destroy(connection);
drivers/staging/greybus/uart.c
922
struct gb_connection *connection = gb_tty->connection;
drivers/staging/greybus/uart.c
937
gb_connection_disable_rx(connection);
drivers/staging/greybus/uart.c
940
gb_connection_disable(connection);
drivers/staging/greybus/uart.c
941
gb_connection_destroy(connection);
drivers/staging/greybus/usb.c
111
operation = gb_operation_create(dev->connection,
drivers/staging/greybus/usb.c
161
struct gb_connection *connection;
drivers/staging/greybus/usb.c
171
connection = gb_connection_create(gbphy_dev->bundle,
drivers/staging/greybus/usb.c
174
if (IS_ERR(connection)) {
drivers/staging/greybus/usb.c
175
retval = PTR_ERR(connection);
drivers/staging/greybus/usb.c
180
gb_usb_dev->connection = connection;
drivers/staging/greybus/usb.c
181
gb_connection_set_data(connection, gb_usb_dev);
drivers/staging/greybus/usb.c
187
retval = gb_connection_enable(connection);
drivers/staging/greybus/usb.c
210
gb_connection_disable(connection);
drivers/staging/greybus/usb.c
212
gb_connection_destroy(connection);
drivers/staging/greybus/usb.c
222
struct gb_connection *connection = gb_usb_dev->connection;
drivers/staging/greybus/usb.c
226
gb_connection_disable(connection);
drivers/staging/greybus/usb.c
227
gb_connection_destroy(connection);
drivers/staging/greybus/usb.c
34
struct gb_connection *connection;
drivers/staging/greybus/usb.c
53
ret = gb_operation_sync(dev->connection, GB_USB_TYPE_HCD_STOP,
drivers/staging/greybus/usb.c
65
ret = gb_operation_sync(dev->connection, GB_USB_TYPE_HCD_START,
drivers/staging/greybus/vibrator.c
119
struct gb_connection *connection;
drivers/staging/greybus/vibrator.c
135
connection = gb_connection_create(bundle, le16_to_cpu(cport_desc->id),
drivers/staging/greybus/vibrator.c
137
if (IS_ERR(connection)) {
drivers/staging/greybus/vibrator.c
138
retval = PTR_ERR(connection);
drivers/staging/greybus/vibrator.c
141
gb_connection_set_data(connection, vib);
drivers/staging/greybus/vibrator.c
143
vib->connection = connection;
drivers/staging/greybus/vibrator.c
147
retval = gb_connection_enable(connection);
drivers/staging/greybus/vibrator.c
178
gb_connection_disable(connection);
drivers/staging/greybus/vibrator.c
180
gb_connection_destroy(connection);
drivers/staging/greybus/vibrator.c
19
struct gb_connection *connection;
drivers/staging/greybus/vibrator.c
201
gb_connection_disable(vib->connection);
drivers/staging/greybus/vibrator.c
202
gb_connection_destroy(vib->connection);
drivers/staging/greybus/vibrator.c
31
struct gb_bundle *bundle = vib->connection->bundle;
drivers/staging/greybus/vibrator.c
34
ret = gb_operation_sync(vib->connection, GB_VIBRATOR_TYPE_OFF,
drivers/staging/greybus/vibrator.c
44
struct gb_bundle *bundle = vib->connection->bundle;
drivers/staging/greybus/vibrator.c
55
ret = gb_operation_sync(vib->connection, GB_VIBRATOR_TYPE_ON,
drivers/staging/media/atomisp/pci/css_2401_system/isys_dma_global.h
71
isys2401_dma_connection connection;
drivers/staging/media/atomisp/pci/hive_isp_css_common/dma_global.h
126
#define hive_dma_configure(dma_id, channel, connection, extension, height, \
drivers/staging/media/atomisp/pci/hive_isp_css_common/dma_global.h
131
hive_dma_snd(dma_id, DMA_PACK_SETUP(connection, extension)); \
drivers/staging/media/atomisp/pci/hive_isp_css_common/dma_global.h
153
#define hive_dma_configure_fast(dma_id, channel, connection, extension, elems_A, elems_B) \
drivers/staging/media/atomisp/pci/hive_isp_css_common/dma_global.h
156
hive_dma_snd(dma_id, DMA_PACK_SETUP(connection, extension)); \
drivers/staging/media/atomisp/pci/hive_isp_css_common/dma_global.h
239
u8 connection;
drivers/staging/media/atomisp/pci/runtime/isys/src/virtual_isys.c
771
cfg->connection = isys2401_dma_ibuf_to_vmem_connection;
drivers/staging/media/atomisp/pci/runtime/isys/src/virtual_isys.c
773
cfg->connection = isys2401_dma_ibuf_to_ddr_connection;
drivers/usb/core/hub.c
4700
unsigned connection = 0xffff;
drivers/usb/core/hub.c
4710
(portstatus & USB_PORT_STAT_CONNECTION) == connection) {
drivers/usb/core/hub.c
4712
(connection == USB_PORT_STAT_CONNECTION))
drivers/usb/core/hub.c
4718
connection = portstatus & USB_PORT_STAT_CONNECTION;
drivers/xen/xenbus/xenbus_probe.c
1071
if (xen_store_interface->connection != XENSTORE_CONNECTED)
drivers/xen/xenbus/xenbus_probe.c
77
(xen_store_interface->connection == XENSTORE_CONNECTED))
fs/dlm/lowcomms.c
102
struct connection *othercon;
fs/dlm/lowcomms.c
1052
struct connection *othercon = newcon->othercon;
fs/dlm/lowcomms.c
115
#define sock2con(x) ((struct connection *)(x)->sk_user_data)
fs/dlm/lowcomms.c
1165
static struct writequeue_entry *new_writequeue_entry(struct connection *con)
fs/dlm/lowcomms.c
1189
static struct writequeue_entry *new_wq_entry(struct connection *con, int len,
fs/dlm/lowcomms.c
1228
static struct dlm_msg *dlm_lowcomms_new_msg_con(struct connection *con, int len,
fs/dlm/lowcomms.c
1263
struct connection *con;
fs/dlm/lowcomms.c
1299
struct connection *con = e->con;
fs/dlm/lowcomms.c
134
struct connection *con;
fs/dlm/lowcomms.c
1363
static int send_to_sock(struct connection *con)
fs/dlm/lowcomms.c
1422
static void clean_one_writequeue(struct connection *con)
fs/dlm/lowcomms.c
1435
struct connection *con = container_of(rcu, struct connection, rcu);
fs/dlm/lowcomms.c
1446
struct connection *con;
fs/dlm/lowcomms.c
1486
struct connection *con = container_of(work, struct connection, rwork);
fs/dlm/lowcomms.c
1568
static int dlm_connect(struct connection *con)
fs/dlm/lowcomms.c
1622
struct connection *con = container_of(work, struct connection, swork);
fs/dlm/lowcomms.c
1719
struct connection *con;
fs/dlm/lowcomms.c
1966
struct connection *con;
fs/dlm/lowcomms.c
215
static void lowcomms_queue_swork(struct connection *con)
fs/dlm/lowcomms.c
225
static void lowcomms_queue_rwork(struct connection *con)
fs/dlm/lowcomms.c
255
static struct writequeue_entry *con_next_wq(struct connection *con)
fs/dlm/lowcomms.c
270
static struct connection *__find_con(int nodeid, int r)
fs/dlm/lowcomms.c
272
struct connection *con;
fs/dlm/lowcomms.c
282
static void dlm_con_init(struct connection *con, int nodeid)
fs/dlm/lowcomms.c
298
static struct connection *nodeid2con(int nodeid, gfp_t alloc)
fs/dlm/lowcomms.c
300
struct connection *con, *tmp;
fs/dlm/lowcomms.c
367
struct connection *con;
fs/dlm/lowcomms.c
424
struct connection *con;
fs/dlm/lowcomms.c
450
static bool dlm_lowcomms_con_has_addr(const struct connection *con,
fs/dlm/lowcomms.c
465
struct connection *con;
fs/dlm/lowcomms.c
508
struct connection *con = sock2con(sk);
fs/dlm/lowcomms.c
518
struct connection *con = sock2con(sk);
fs/dlm/lowcomms.c
550
struct connection *con;
fs/dlm/lowcomms.c
575
struct connection *con;
fs/dlm/lowcomms.c
594
struct connection *con = sock2con(sk);
fs/dlm/lowcomms.c
645
static void add_sock(struct socket *sock, struct connection *con)
fs/dlm/lowcomms.c
727
static void allow_connection_io(struct connection *con)
fs/dlm/lowcomms.c
734
static void stop_connection_io(struct connection *con)
fs/dlm/lowcomms.c
756
static void close_connection(struct connection *con, bool and_other)
fs/dlm/lowcomms.c
799
static void shutdown_connection(struct connection *con, bool and_other)
fs/dlm/lowcomms.c
901
static int receive_from_sock(struct connection *con, int buflen)
fs/dlm/lowcomms.c
986
struct connection *newcon;
fs/fuse/fuse_trace.h
100
__entry->connection, __entry->unique, __entry->opcode,
fs/fuse/fuse_trace.h
110
__field(dev_t, connection)
fs/fuse/fuse_trace.h
117
__entry->connection = req->fm->fc->dev;
fs/fuse/fuse_trace.h
123
TP_printk("connection %u req %llu len %u error %d", __entry->connection,
fs/fuse/fuse_trace.h
86
__field(dev_t, connection)
fs/fuse/fuse_trace.h
93
__entry->connection = req->fm->fc->dev;
include/acpi/actypes.h
1105
u8 *connection;
include/linux/greybus/connection.h
101
return !(connection->flags & GB_CONNECTION_FLAG_CSD);
include/linux/greybus/connection.h
105
gb_connection_flow_control_disabled(struct gb_connection *connection)
include/linux/greybus/connection.h
107
return connection->flags & GB_CONNECTION_FLAG_NO_FLOWCTRL;
include/linux/greybus/connection.h
110
static inline bool gb_connection_is_offloaded(struct gb_connection *connection)
include/linux/greybus/connection.h
112
return connection->flags & GB_CONNECTION_FLAG_OFFLOADED;
include/linux/greybus/connection.h
115
static inline bool gb_connection_is_control(struct gb_connection *connection)
include/linux/greybus/connection.h
117
return connection->flags & GB_CONNECTION_FLAG_CONTROL;
include/linux/greybus/connection.h
120
static inline void *gb_connection_get_data(struct gb_connection *connection)
include/linux/greybus/connection.h
122
return connection->private;
include/linux/greybus/connection.h
125
static inline void gb_connection_set_data(struct gb_connection *connection,
include/linux/greybus/connection.h
128
connection->private = data;
include/linux/greybus/connection.h
77
void gb_connection_destroy(struct gb_connection *connection);
include/linux/greybus/connection.h
79
static inline bool gb_connection_is_static(struct gb_connection *connection)
include/linux/greybus/connection.h
81
return !connection->intf;
include/linux/greybus/connection.h
84
int gb_connection_enable(struct gb_connection *connection);
include/linux/greybus/connection.h
85
int gb_connection_enable_tx(struct gb_connection *connection);
include/linux/greybus/connection.h
86
void gb_connection_disable_rx(struct gb_connection *connection);
include/linux/greybus/connection.h
87
void gb_connection_disable(struct gb_connection *connection);
include/linux/greybus/connection.h
88
void gb_connection_disable_forced(struct gb_connection *connection);
include/linux/greybus/connection.h
90
void gb_connection_mode_switch_prepare(struct gb_connection *connection);
include/linux/greybus/connection.h
91
void gb_connection_mode_switch_complete(struct gb_connection *connection);
include/linux/greybus/connection.h
96
void gb_connection_latency_tag_enable(struct gb_connection *connection);
include/linux/greybus/connection.h
97
void gb_connection_latency_tag_disable(struct gb_connection *connection);
include/linux/greybus/connection.h
99
static inline bool gb_connection_e2efc_enabled(struct gb_connection *connection)
include/linux/greybus/control.h
19
struct gb_connection *connection;
include/linux/greybus/operation.h
139
void gb_connection_recv(struct gb_connection *connection,
include/linux/greybus/operation.h
144
size_t gb_operation_get_payload_size_max(struct gb_connection *connection);
include/linux/greybus/operation.h
146
gb_operation_create_flags(struct gb_connection *connection,
include/linux/greybus/operation.h
152
gb_operation_create(struct gb_connection *connection,
include/linux/greybus/operation.h
156
return gb_operation_create_flags(connection, type, request_size,
include/linux/greybus/operation.h
161
gb_operation_create_core(struct gb_connection *connection,
include/linux/greybus/operation.h
191
int gb_operation_sync_timeout(struct gb_connection *connection, int type,
include/linux/greybus/operation.h
195
int gb_operation_unidirectional_timeout(struct gb_connection *connection,
include/linux/greybus/operation.h
199
static inline int gb_operation_sync(struct gb_connection *connection, int type,
include/linux/greybus/operation.h
203
return gb_operation_sync_timeout(connection, type,
include/linux/greybus/operation.h
208
static inline int gb_operation_unidirectional(struct gb_connection *connection,
include/linux/greybus/operation.h
211
return gb_operation_unidirectional_timeout(connection, type,
include/linux/greybus/operation.h
93
struct gb_connection *connection;
include/linux/greybus/svc.h
43
struct gb_connection *connection;
include/uapi/drm/drm_mode.h
502
__u32 connection;
include/uapi/drm/exynos_drm.h
77
__u32 connection;
include/uapi/sound/asound_fm.h
45
unsigned char connection; /* 0 for serial, 1 for parallel */
include/xen/interface/io/xs_wire.h
98
uint32_t connection;
sound/drivers/opl3/opl3_midi.c
290
unsigned char connection;
sound/drivers/opl3/opl3_midi.c
430
connection = fm->feedback_connection[0] & 0x01;
sound/drivers/opl3/opl3_midi.c
432
connection <<= 1;
sound/drivers/opl3/opl3_midi.c
433
connection |= fm->feedback_connection[1] & 0x01;
sound/drivers/opl3/opl3_midi.c
436
switch (connection) {
sound/drivers/opl3/opl3_midi.c
448
if (connection)
sound/drivers/opl3/opl3_synth.c
518
if (voice->connection)
sound/drivers/opl3/opl3_synth.c
591
static int snd_opl3_set_connection(struct snd_opl3 * opl3, int connection)
sound/drivers/opl3/opl3_synth.c
599
reg_val = connection & (OPL3_RIGHT_4OP_0 | OPL3_RIGHT_4OP_1 | OPL3_RIGHT_4OP_2 |
sound/drivers/opl3/opl3_synth.c
64
static int snd_opl3_set_connection(struct snd_opl3 * opl3, int connection);
sound/firewire/cmp.h
38
int cmp_connection_init(struct cmp_connection *connection,
sound/firewire/cmp.h
42
int cmp_connection_check_used(struct cmp_connection *connection, bool *used);
sound/firewire/cmp.h
43
void cmp_connection_destroy(struct cmp_connection *connection);
sound/firewire/cmp.h
45
int cmp_connection_reserve(struct cmp_connection *connection,
sound/firewire/cmp.h
47
void cmp_connection_release(struct cmp_connection *connection);
sound/firewire/cmp.h
49
int cmp_connection_establish(struct cmp_connection *connection);
sound/firewire/cmp.h
50
void cmp_connection_break(struct cmp_connection *connection);
tools/testing/selftests/bpf/prog_tests/test_tc_tunnel.c
156
struct connection *conn, int len)
tools/testing/selftests/bpf/prog_tests/test_tc_tunnel.c
169
static struct connection *connect_client_to_server(struct subtest_cfg *cfg)
tools/testing/selftests/bpf/prog_tests/test_tc_tunnel.c
173
struct connection *conn = NULL;
tools/testing/selftests/bpf/prog_tests/test_tc_tunnel.c
176
conn = malloc(sizeof(struct connection));
tools/testing/selftests/bpf/prog_tests/test_tc_tunnel.c
202
struct connection *conn)
tools/testing/selftests/bpf/prog_tests/test_tc_tunnel.c
211
struct connection *conn;
tools/testing/selftests/filesystems/fuse/fusectl_test.c
109
sprintf(path_buf, "/sys/fs/fuse/connections/%d/abort", self->connection);
tools/testing/selftests/filesystems/fuse/fusectl_test.c
40
int connection;
tools/testing/selftests/filesystems/fuse/fusectl_test.c
95
self->connection = statbuf.st_dev;