Deleted Added
full compact
ubsec.c (267340) ubsec.c (267448)
1/* $OpenBSD: ubsec.c,v 1.115 2002/09/24 18:33:26 jason Exp $ */
2
3/*-
4 * Copyright (c) 2000 Jason L. Wright (jason@thought.net)
5 * Copyright (c) 2000 Theo de Raadt (deraadt@openbsd.org)
6 * Copyright (c) 2001 Patrik Lindergren (patrik@ipunplugged.com)
7 *
8 * All rights reserved.

--- 25 unchanged lines hidden (view full) ---

34 * POSSIBILITY OF SUCH DAMAGE.
35 *
36 * Effort sponsored in part by the Defense Advanced Research Projects
37 * Agency (DARPA) and Air Force Research Laboratory, Air Force
38 * Materiel Command, USAF, under agreement number F30602-01-2-0537.
39 */
40
41#include <sys/cdefs.h>
1/* $OpenBSD: ubsec.c,v 1.115 2002/09/24 18:33:26 jason Exp $ */
2
3/*-
4 * Copyright (c) 2000 Jason L. Wright (jason@thought.net)
5 * Copyright (c) 2000 Theo de Raadt (deraadt@openbsd.org)
6 * Copyright (c) 2001 Patrik Lindergren (patrik@ipunplugged.com)
7 *
8 * All rights reserved.

--- 25 unchanged lines hidden (view full) ---

34 * POSSIBILITY OF SUCH DAMAGE.
35 *
36 * Effort sponsored in part by the Defense Advanced Research Projects
37 * Agency (DARPA) and Air Force Research Laboratory, Air Force
38 * Materiel Command, USAF, under agreement number F30602-01-2-0537.
39 */
40
41#include <sys/cdefs.h>
42__FBSDID("$FreeBSD: head/sys/dev/ubsec/ubsec.c 267340 2014-06-10 20:25:45Z jhb $");
42__FBSDID("$FreeBSD: head/sys/dev/ubsec/ubsec.c 267448 2014-06-13 19:34:34Z jhb $");
43
44/*
45 * uBsec 5[56]01, 58xx hardware crypto accelerator
46 */
47
48#include "opt_ubsec.h"
49
50#include <sys/param.h>

--- 2245 unchanged lines hidden (view full) ---

2296 ubsec_feed2(sc);
2297 ubsecstats.hst_modexp++;
2298 mtx_unlock(&sc->sc_mcr2lock);
2299
2300 return (0);
2301
2302errout:
2303 if (me != NULL) {
43
44/*
45 * uBsec 5[56]01, 58xx hardware crypto accelerator
46 */
47
48#include "opt_ubsec.h"
49
50#include <sys/param.h>

--- 2245 unchanged lines hidden (view full) ---

2296 ubsec_feed2(sc);
2297 ubsecstats.hst_modexp++;
2298 mtx_unlock(&sc->sc_mcr2lock);
2299
2300 return (0);
2301
2302errout:
2303 if (me != NULL) {
2304 if (me->me_q.q_mcr.dma_map != NULL)
2304 if (me->me_q.q_mcr.dma_tag != NULL)
2305 ubsec_dma_free(sc, &me->me_q.q_mcr);
2305 ubsec_dma_free(sc, &me->me_q.q_mcr);
2306 if (me->me_q.q_ctx.dma_map != NULL) {
2306 if (me->me_q.q_ctx.dma_tag != NULL) {
2307 bzero(me->me_q.q_ctx.dma_vaddr, me->me_q.q_ctx.dma_size);
2308 ubsec_dma_free(sc, &me->me_q.q_ctx);
2309 }
2307 bzero(me->me_q.q_ctx.dma_vaddr, me->me_q.q_ctx.dma_size);
2308 ubsec_dma_free(sc, &me->me_q.q_ctx);
2309 }
2310 if (me->me_M.dma_map != NULL) {
2310 if (me->me_M.dma_tag != NULL) {
2311 bzero(me->me_M.dma_vaddr, me->me_M.dma_size);
2312 ubsec_dma_free(sc, &me->me_M);
2313 }
2311 bzero(me->me_M.dma_vaddr, me->me_M.dma_size);
2312 ubsec_dma_free(sc, &me->me_M);
2313 }
2314 if (me->me_E.dma_map != NULL) {
2314 if (me->me_E.dma_tag != NULL) {
2315 bzero(me->me_E.dma_vaddr, me->me_E.dma_size);
2316 ubsec_dma_free(sc, &me->me_E);
2317 }
2315 bzero(me->me_E.dma_vaddr, me->me_E.dma_size);
2316 ubsec_dma_free(sc, &me->me_E);
2317 }
2318 if (me->me_C.dma_map != NULL) {
2318 if (me->me_C.dma_tag != NULL) {
2319 bzero(me->me_C.dma_vaddr, me->me_C.dma_size);
2320 ubsec_dma_free(sc, &me->me_C);
2321 }
2319 bzero(me->me_C.dma_vaddr, me->me_C.dma_size);
2320 ubsec_dma_free(sc, &me->me_C);
2321 }
2322 if (me->me_epb.dma_map != NULL)
2322 if (me->me_epb.dma_tag != NULL)
2323 ubsec_dma_free(sc, &me->me_epb);
2324 free(me, M_DEVBUF);
2325 }
2326 krp->krp_status = err;
2327 crypto_kdone(krp);
2328 return (0);
2329}
2330

--- 166 unchanged lines hidden (view full) ---

2497 SIMPLEQ_INSERT_TAIL(&sc->sc_queue2, &me->me_q, q_next);
2498 ubsec_feed2(sc);
2499 mtx_unlock(&sc->sc_mcr2lock);
2500
2501 return (0);
2502
2503errout:
2504 if (me != NULL) {
2323 ubsec_dma_free(sc, &me->me_epb);
2324 free(me, M_DEVBUF);
2325 }
2326 krp->krp_status = err;
2327 crypto_kdone(krp);
2328 return (0);
2329}
2330

--- 166 unchanged lines hidden (view full) ---

2497 SIMPLEQ_INSERT_TAIL(&sc->sc_queue2, &me->me_q, q_next);
2498 ubsec_feed2(sc);
2499 mtx_unlock(&sc->sc_mcr2lock);
2500
2501 return (0);
2502
2503errout:
2504 if (me != NULL) {
2505 if (me->me_q.q_mcr.dma_map != NULL)
2505 if (me->me_q.q_mcr.dma_tag != NULL)
2506 ubsec_dma_free(sc, &me->me_q.q_mcr);
2506 ubsec_dma_free(sc, &me->me_q.q_mcr);
2507 if (me->me_q.q_ctx.dma_map != NULL) {
2507 if (me->me_q.q_ctx.dma_tag != NULL) {
2508 bzero(me->me_q.q_ctx.dma_vaddr, me->me_q.q_ctx.dma_size);
2509 ubsec_dma_free(sc, &me->me_q.q_ctx);
2510 }
2508 bzero(me->me_q.q_ctx.dma_vaddr, me->me_q.q_ctx.dma_size);
2509 ubsec_dma_free(sc, &me->me_q.q_ctx);
2510 }
2511 if (me->me_M.dma_map != NULL) {
2511 if (me->me_M.dma_tag != NULL) {
2512 bzero(me->me_M.dma_vaddr, me->me_M.dma_size);
2513 ubsec_dma_free(sc, &me->me_M);
2514 }
2512 bzero(me->me_M.dma_vaddr, me->me_M.dma_size);
2513 ubsec_dma_free(sc, &me->me_M);
2514 }
2515 if (me->me_E.dma_map != NULL) {
2515 if (me->me_E.dma_tag != NULL) {
2516 bzero(me->me_E.dma_vaddr, me->me_E.dma_size);
2517 ubsec_dma_free(sc, &me->me_E);
2518 }
2516 bzero(me->me_E.dma_vaddr, me->me_E.dma_size);
2517 ubsec_dma_free(sc, &me->me_E);
2518 }
2519 if (me->me_C.dma_map != NULL) {
2519 if (me->me_C.dma_tag != NULL) {
2520 bzero(me->me_C.dma_vaddr, me->me_C.dma_size);
2521 ubsec_dma_free(sc, &me->me_C);
2522 }
2520 bzero(me->me_C.dma_vaddr, me->me_C.dma_size);
2521 ubsec_dma_free(sc, &me->me_C);
2522 }
2523 if (me->me_epb.dma_map != NULL)
2523 if (me->me_epb.dma_tag != NULL)
2524 ubsec_dma_free(sc, &me->me_epb);
2525 free(me, M_DEVBUF);
2526 }
2527 krp->krp_status = err;
2528 crypto_kdone(krp);
2529 return (0);
2530}
2531

--- 159 unchanged lines hidden (view full) ---

2691 SIMPLEQ_INSERT_TAIL(&sc->sc_queue2, &rp->rpr_q, q_next);
2692 ubsec_feed2(sc);
2693 ubsecstats.hst_modexpcrt++;
2694 mtx_unlock(&sc->sc_mcr2lock);
2695 return (0);
2696
2697errout:
2698 if (rp != NULL) {
2524 ubsec_dma_free(sc, &me->me_epb);
2525 free(me, M_DEVBUF);
2526 }
2527 krp->krp_status = err;
2528 crypto_kdone(krp);
2529 return (0);
2530}
2531

--- 159 unchanged lines hidden (view full) ---

2691 SIMPLEQ_INSERT_TAIL(&sc->sc_queue2, &rp->rpr_q, q_next);
2692 ubsec_feed2(sc);
2693 ubsecstats.hst_modexpcrt++;
2694 mtx_unlock(&sc->sc_mcr2lock);
2695 return (0);
2696
2697errout:
2698 if (rp != NULL) {
2699 if (rp->rpr_q.q_mcr.dma_map != NULL)
2699 if (rp->rpr_q.q_mcr.dma_tag != NULL)
2700 ubsec_dma_free(sc, &rp->rpr_q.q_mcr);
2700 ubsec_dma_free(sc, &rp->rpr_q.q_mcr);
2701 if (rp->rpr_msgin.dma_map != NULL) {
2701 if (rp->rpr_msgin.dma_tag != NULL) {
2702 bzero(rp->rpr_msgin.dma_vaddr, rp->rpr_msgin.dma_size);
2703 ubsec_dma_free(sc, &rp->rpr_msgin);
2704 }
2702 bzero(rp->rpr_msgin.dma_vaddr, rp->rpr_msgin.dma_size);
2703 ubsec_dma_free(sc, &rp->rpr_msgin);
2704 }
2705 if (rp->rpr_msgout.dma_map != NULL) {
2705 if (rp->rpr_msgout.dma_tag != NULL) {
2706 bzero(rp->rpr_msgout.dma_vaddr, rp->rpr_msgout.dma_size);
2707 ubsec_dma_free(sc, &rp->rpr_msgout);
2708 }
2709 free(rp, M_DEVBUF);
2710 }
2711 krp->krp_status = err;
2712 crypto_kdone(krp);
2713 return (0);

--- 145 unchanged lines hidden ---
2706 bzero(rp->rpr_msgout.dma_vaddr, rp->rpr_msgout.dma_size);
2707 ubsec_dma_free(sc, &rp->rpr_msgout);
2708 }
2709 free(rp, M_DEVBUF);
2710 }
2711 krp->krp_status = err;
2712 crypto_kdone(krp);
2713 return (0);

--- 145 unchanged lines hidden ---