Author: jimharris
Date: Tue Mar 26 22:11:34 2013
New Revision: 248770
URL: http://svnweb.freebsd.org/changeset/base/248770

Log:
  Change a number of malloc(9) calls to use M_WAITOK instead of
  M_NOWAIT.
  
  Sponsored by: Intel
  Suggested by: carl
  Reviewed by:  carl

Modified:
  head/sys/dev/nvd/nvd.c
  head/sys/dev/nvme/nvme_ctrlr.c
  head/sys/dev/nvme/nvme_ns.c
  head/sys/dev/nvme/nvme_qpair.c
  head/sys/dev/nvme/nvme_test.c

Modified: head/sys/dev/nvd/nvd.c
==============================================================================
--- head/sys/dev/nvd/nvd.c      Tue Mar 26 22:09:51 2013        (r248769)
+++ head/sys/dev/nvd/nvd.c      Tue Mar 26 22:11:34 2013        (r248770)
@@ -260,7 +260,7 @@ nvd_new_controller(struct nvme_controlle
        struct nvd_controller   *nvd_ctrlr;
 
        nvd_ctrlr = malloc(sizeof(struct nvd_controller), M_NVD,
-           M_ZERO | M_NOWAIT);
+           M_ZERO | M_WAITOK);
 
        TAILQ_INIT(&nvd_ctrlr->disk_head);
        TAILQ_INSERT_TAIL(&ctrlr_head, nvd_ctrlr, tailq);
@@ -275,7 +275,7 @@ nvd_new_disk(struct nvme_namespace *ns, 
        struct disk             *disk;
        struct nvd_controller   *ctrlr = ctrlr_arg;
 
-       ndisk = malloc(sizeof(struct nvd_disk), M_NVD, M_ZERO | M_NOWAIT);
+       ndisk = malloc(sizeof(struct nvd_disk), M_NVD, M_ZERO | M_WAITOK);
 
        disk = disk_alloc();
        disk->d_strategy = nvd_strategy;

Modified: head/sys/dev/nvme/nvme_ctrlr.c
==============================================================================
--- head/sys/dev/nvme/nvme_ctrlr.c      Tue Mar 26 22:09:51 2013        
(r248769)
+++ head/sys/dev/nvme/nvme_ctrlr.c      Tue Mar 26 22:11:34 2013        
(r248770)
@@ -263,10 +263,7 @@ nvme_ctrlr_construct_io_qpairs(struct nv
                ctrlr->max_xfer_size = NVME_MAX_XFER_SIZE;
 
        ctrlr->ioq = malloc(ctrlr->num_io_queues * sizeof(struct nvme_qpair),
-           M_NVME, M_ZERO | M_NOWAIT);
-
-       if (ctrlr->ioq == NULL)
-               return (ENOMEM);
+           M_NVME, M_ZERO | M_WAITOK);
 
        for (i = 0; i < ctrlr->num_io_queues; i++) {
                qpair = &ctrlr->ioq[i];

Modified: head/sys/dev/nvme/nvme_ns.c
==============================================================================
--- head/sys/dev/nvme/nvme_ns.c Tue Mar 26 22:09:51 2013        (r248769)
+++ head/sys/dev/nvme/nvme_ns.c Tue Mar 26 22:11:34 2013        (r248770)
@@ -254,7 +254,7 @@ nvme_ns_bio_process(struct nvme_namespac
                 */
                dsm_range =
                    malloc(sizeof(struct nvme_dsm_range), M_NVME,
-                   M_ZERO | M_NOWAIT);
+                   M_ZERO | M_WAITOK);
                dsm_range->length =
                    bp->bio_bcount/nvme_ns_get_sector_size(ns);
                dsm_range->starting_lba =

Modified: head/sys/dev/nvme/nvme_qpair.c
==============================================================================
--- head/sys/dev/nvme/nvme_qpair.c      Tue Mar 26 22:09:51 2013        
(r248769)
+++ head/sys/dev/nvme/nvme_qpair.c      Tue Mar 26 22:11:34 2013        
(r248770)
@@ -297,12 +297,11 @@ nvme_qpair_construct(struct nvme_qpair *
        qpair->num_cmds = 0;
        qpair->num_intr_handler_calls = 0;
 
-       /* TODO: error checking on contigmalloc, bus_dmamap_load calls */
        qpair->cmd = contigmalloc(qpair->num_entries *
-           sizeof(struct nvme_command), M_NVME, M_ZERO | M_NOWAIT,
+           sizeof(struct nvme_command), M_NVME, M_ZERO,
            0, BUS_SPACE_MAXADDR, PAGE_SIZE, 0);
        qpair->cpl = contigmalloc(qpair->num_entries *
-           sizeof(struct nvme_completion), M_NVME, M_ZERO | M_NOWAIT,
+           sizeof(struct nvme_completion), M_NVME, M_ZERO,
            0, BUS_SPACE_MAXADDR, PAGE_SIZE, 0);
 
        bus_dmamap_create(qpair->dma_tag, 0, &qpair->cmd_dma_map);
@@ -323,19 +322,13 @@ nvme_qpair_construct(struct nvme_qpair *
        STAILQ_INIT(&qpair->queued_req);
 
        for (i = 0; i < qpair->num_trackers; i++) {
-               tr = malloc(sizeof(*tr), M_NVME, M_ZERO | M_NOWAIT);
-
-               if (tr == NULL) {
-                       printf("warning: nvme tracker malloc failed\n");
-                       break;
-               }
-
+               tr = malloc(sizeof(*tr), M_NVME, M_ZERO | M_WAITOK);
                nvme_qpair_construct_tracker(qpair, tr, i);
                TAILQ_INSERT_HEAD(&qpair->free_tr, tr, tailq);
        }
 
        qpair->act_tr = malloc(sizeof(struct nvme_tracker *) * 
qpair->num_entries,
-           M_NVME, M_ZERO | M_NOWAIT);
+           M_NVME, M_ZERO | M_WAITOK);
 }
 
 static void

Modified: head/sys/dev/nvme/nvme_test.c
==============================================================================
--- head/sys/dev/nvme/nvme_test.c       Tue Mar 26 22:09:51 2013        
(r248769)
+++ head/sys/dev/nvme/nvme_test.c       Tue Mar 26 22:11:34 2013        
(r248770)
@@ -96,7 +96,7 @@ nvme_ns_bio_test(void *arg)
        int                             ref;
 #endif
 
-       buf = malloc(io_test->size, M_NVME, M_NOWAIT);
+       buf = malloc(io_test->size, M_NVME, M_WAITOK);
        idx = atomic_fetchadd_int(&io_test->td_idx, 1);
        dev = io_test->ns->cdev;
 
@@ -217,11 +217,11 @@ nvme_ns_io_test(void *arg)
        struct nvme_completion          cpl;
        int                             error;
 
-       tth = malloc(sizeof(*tth), M_NVME, M_NOWAIT | M_ZERO);
+       tth = malloc(sizeof(*tth), M_NVME, M_WAITOK | M_ZERO);
        tth->ns = io_test->ns;
        tth->opc = io_test->opc;
        memcpy(&tth->start, &io_test->start, sizeof(tth->start));
-       tth->buf = malloc(io_test->size, M_NVME, M_NOWAIT);
+       tth->buf = malloc(io_test->size, M_NVME, M_WAITOK);
        tth->size = io_test->size;
        tth->time = io_test->time;
        tth->idx = atomic_fetchadd_int(&io_test->td_idx, 1);
@@ -269,7 +269,7 @@ nvme_ns_test(struct nvme_namespace *ns, 
                return;
 
        io_test_internal = malloc(sizeof(*io_test_internal), M_NVME,
-           M_NOWAIT | M_ZERO);
+           M_WAITOK | M_ZERO);
        io_test_internal->opc = io_test->opc;
        io_test_internal->ns = ns;
        io_test_internal->td_active = io_test->num_threads;
_______________________________________________
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to