Thread (18 messages) 18 messages, 5 authors, 2015-03-03

Re: [PATCH 1/9] HSI: cmt_speech: Add cmt-speech driver

From: Oliver Neukum <oliver@neukum.org>
Date: 2015-03-02 10:29:35
Also in: linux-omap, lkml

On Mon, 2015-03-02 at 05:38 +0100, Sebastian Reichel wrote:
+static int cs_alloc_cmds(struct cs_hsi_iface *hi)
+{
+       struct hsi_msg *msg;
+       u32 *buf;
+       unsigned int i;
+
+       INIT_LIST_HEAD(&hi->cmdqueue);
+
+       for (i = 0; i < CS_MAX_CMDS; i++) {
+               msg = hsi_alloc_msg(1, GFP_ATOMIC);
Why does this need to be ATOMIC?
+               if (!msg)
+                       goto out;
+               buf = kmalloc(sizeof(*buf), GFP_ATOMIC);
+               if (!buf) {
+                       hsi_free_msg(msg);
+                       goto out;
+               }
+               sg_init_one(msg->sgt.sgl, buf, sizeof(*buf));
+               msg->channel = CONTROL_HSI_CH;
+               msg->context = hi;
+               list_add_tail(&msg->link, &hi->cmdqueue);
+       }
+
+       return 0;
+
+out:
+       cs_free_cmds(hi);
+       return -ENOMEM;
+}
+
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help