diff options
author | Miloslav Trmač <mitr@redhat.com> | 2010-09-14 18:54:28 +0200 |
---|---|---|
committer | Miloslav Trmač <mitr@redhat.com> | 2010-09-14 18:54:28 +0200 |
commit | e32a141c988ecc1898053722eabf9c01fbce8375 (patch) | |
tree | 72bee99d36932a5d994c767ec76c7168bcbbf80a | |
parent | f91e641ee86217ff28a30057e7774fab3cc2b097 (diff) | |
download | cryptodev-linux-e32a141c988ecc1898053722eabf9c01fbce8375.tar.gz cryptodev-linux-e32a141c988ecc1898053722eabf9c01fbce8375.tar.xz cryptodev-linux-e32a141c988ecc1898053722eabf9c01fbce8375.zip |
DUMP_ASK
-rw-r--r-- | cryptodev_main.c | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/cryptodev_main.c b/cryptodev_main.c index c52210d..d9f63fe 100644 --- a/cryptodev_main.c +++ b/cryptodev_main.c @@ -117,6 +117,14 @@ struct alg_sock { struct hash_data hash; }; +static void __dump_alg_sock(int line, const struct alg_sock *ask) +{ + printk(KERN_DEBUG "@%d: %p: cnt %d, slave %p: %u/%u, hash %d\n", line, + ask, atomic_read(&ask->sk.sk_refcnt), ask->slaves[0], + ask->accept_idx, ask->num_slaves, ask->hash.init); +} +#define DUMP_ASK(ASK) (__dump_alg_sock(__LINE__, (ASK))) + /* Socket reference counting: The primary reference to alg_sock is from user-space. @@ -239,6 +247,7 @@ static struct proto alg_proto = { context as well. */ static void data_destruct(struct sock *sk) { + DUMP_DSK(data_sk(sk)); local_bh_disable(); sock_prot_inuse_add(sock_net(sk), &data_proto, -1); local_bh_enable(); @@ -273,6 +282,7 @@ static int do_data_sendmsg(struct kiocb *iocb, struct alg_sock *ask, // FIXME: locking // FIXME: make generic + DUMP_ASK(ask); BUG_ON(index != 0); BUG_ON(ask->hash.init == 0); @@ -319,6 +329,7 @@ static int do_data_recvmsg(struct kiocb *iocb, struct alg_sock *ask, // FIXME: locking // FIXME: make generic + DUMP_ASK(ask); BUG_ON(index != 0); BUG_ON(ask->hash.init == 0); @@ -337,6 +348,7 @@ static int do_data_recvmsg(struct kiocb *iocb, struct alg_sock *ask, res = cryptodev_hash_reset(&ask->hash); if (res != 0) return res; + DUMP_ASK(ask); return ask->hash.digestsize; } @@ -385,6 +397,7 @@ static void alg_destruct(struct sock *sk) struct alg_sock *ask; ask = alg_sk(sk); + DUMP_ASK(ask); if (ask->hash.init != 0) cryptodev_hash_deinit(&ask->hash); @@ -392,6 +405,7 @@ static void alg_destruct(struct sock *sk) local_bh_disable(); sock_prot_inuse_add(sock_net(sk), &alg_proto, -1); local_bh_enable(); + DUMP_ASK(ask); } static int alg_release(struct socket *sock) @@ -407,6 +421,7 @@ static int alg_release(struct socket *sock) sock->sk = NULL; ask = alg_sk(sk); + DUMP_ASK(ask); // skb_queue_purge(&sk->sk_write_queue);??? @@ -422,7 +437,9 @@ static int alg_release(struct socket *sock) DUMP_DSK(dsk); } + DUMP_ASK(ask); sock_put(sk); + DUMP_ASK(ask); return 0; } @@ -441,6 +458,7 @@ static int alg_bind(struct socket *sock, struct sockaddr *myaddr, return -EINVAL; ask = alg_sk(sock->sk); + DUMP_ASK(ask); // FIXME: locking @@ -457,6 +475,7 @@ static int alg_bind(struct socket *sock, struct sockaddr *myaddr, return res; ask->addr = *addr; + DUMP_ASK(ask); return 0; } @@ -467,6 +486,7 @@ static int alg_accept(struct socket *sock, struct socket *newsock, int flags) // FIXME: locking ask = alg_sk(sock->sk); + DUMP_ASK(ask); if (ask->accept_idx >= ask->num_slaves) return -EINVAL; @@ -474,9 +494,11 @@ static int alg_accept(struct socket *sock, struct socket *newsock, int flags) ask->accept_idx++; DUMP_DSK(dsk); + DUMP_ASK(ask); sock_hold(&ask->sk); DUMP_DSK(dsk); dsk->master = ask; + DUMP_ASK(ask); sock_hold(&dsk->sk); DUMP_DSK(dsk); @@ -495,6 +517,7 @@ static int alg_listen(struct socket *sock, int len) // FIXME: locking net = sock_net(sock->sk); ask = alg_sk(sock->sk); + DUMP_ASK(ask); if (ask->num_slaves != 0) return -EINVAL; @@ -527,6 +550,7 @@ static int alg_listen(struct socket *sock, int len) } ask->num_slaves = len; + DUMP_ASK(ask); return 0; @@ -542,6 +566,7 @@ err_partial: sock_put(&dsk->sk); DUMP_DSK(dsk); } + DUMP_ASK(ask); return -ENOMEM; } @@ -551,6 +576,7 @@ static int alg_sendmsg(struct kiocb *iocb, struct socket *sock, struct alg_sock *ask; ask = alg_sk(sock->sk); + DUMP_ASK(ask); // FIXME: locking if (ask->addr.salg_type[0] == 0) @@ -566,6 +592,7 @@ static int alg_recvmsg(struct kiocb *iocb, struct socket *sock, // FIXME: locking ask = alg_sk(sock->sk); + DUMP_ASK(ask); // FIXME: locking if (ask->addr.salg_type[0] == 0) |