lkml.org 
[lkml]   [2012]   [Feb]   [23]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 8/9] mei: reduce indentation in read_client_message
    Date
    From: "Devin J. Pohly" <djpohly@gmail.com>

    Removes the empty check since that's handled by foreach. Moves a big
    chunk of code out of the foreach since it's followed by a break anyway.

    Signed-off-by: Devin J. Pohly <djpohly@gmail.com>
    ---
    drivers/staging/mei/interrupt.c | 67 ++++++++++++++++++---------------------
    1 file changed, 30 insertions(+), 37 deletions(-)

    diff --git a/drivers/staging/mei/interrupt.c b/drivers/staging/mei/interrupt.c
    index 6ae7a0e..f2c864e 100644
    --- a/drivers/staging/mei/interrupt.c
    +++ b/drivers/staging/mei/interrupt.c
    @@ -193,51 +193,44 @@ static int mei_irq_thread_read_client_message(struct mei_io_list *complete_list,
    unsigned char *buffer = NULL;

    dev_dbg(&dev->pdev->dev, "start client msg\n");
    - if (list_empty(&dev->read_list.mei_cb.cb_list))
    - goto out;

    list_for_each_entry_safe(cb_pos, cb_next,
    &dev->read_list.mei_cb.cb_list, cb_list) {
    cl = (struct mei_cl *)cb_pos->file_private;
    - if (cl && _mei_irq_thread_state_ok(cl, mei_hdr)) {
    - cl->reading_state = MEI_READING;
    - buffer = (unsigned char *)
    - (cb_pos->response_buffer.data +
    - cb_pos->information);
    -
    - if (cb_pos->response_buffer.size <
    - mei_hdr->length + cb_pos->information) {
    - dev_dbg(&dev->pdev->dev, "message overflow.\n");
    - list_del(&cb_pos->cb_list);
    - return -ENOMEM;
    - }
    - if (buffer)
    - mei_read_slots(dev, buffer, mei_hdr->length);
    + if (cl && _mei_irq_thread_state_ok(cl, mei_hdr))
    + break;
    + }

    - cb_pos->information += mei_hdr->length;
    - if (mei_hdr->msg_complete) {
    - cl->status = 0;
    - list_del(&cb_pos->cb_list);
    - dev_dbg(&dev->pdev->dev,
    - "completed read host client = %d,"
    - "ME client = %d, "
    - "data length = %lu\n",
    - cl->host_client_id,
    - cl->me_client_id,
    - cb_pos->information);
    -
    - *(cb_pos->response_buffer.data +
    - cb_pos->information) = '\0';
    - dev_dbg(&dev->pdev->dev, "cb_pos->res_buffer - %s\n",
    - cb_pos->response_buffer.data);
    - list_add_tail(&cb_pos->cb_list,
    - &complete_list->mei_cb.cb_list);
    - }
    + /* List empty, or client not found */
    + if (&cb_pos->cb_list == &dev->read_list.mei_cb.cb_list)
    + goto out;

    - break;
    - }
    + cl->reading_state = MEI_READING;
    + buffer = cb_pos->response_buffer.data + cb_pos->information;

    + if (cb_pos->response_buffer.size <
    + mei_hdr->length + cb_pos->information) {
    + dev_dbg(&dev->pdev->dev, "message overflow.\n");
    + list_del(&cb_pos->cb_list);
    + return -ENOMEM;
    }
    + if (buffer)
    + mei_read_slots(dev, buffer, mei_hdr->length);
    +
    + cb_pos->information += mei_hdr->length;
    + if (!mei_hdr->msg_complete)
    + goto out;
    +
    + cl->status = 0;
    + list_del(&cb_pos->cb_list);
    + dev_dbg(&dev->pdev->dev, "completed read host client = %d, "
    + "ME client = %d, data length = %lu\n",
    + cl->host_client_id, cl->me_client_id, cb_pos->information);
    +
    + cb_pos->response_buffer.data[cb_pos->information] = '\0';
    + dev_dbg(&dev->pdev->dev, "cb_pos->res_buffer - %s\n",
    + cb_pos->response_buffer.data);
    + list_add_tail(&cb_pos->cb_list, &complete_list->mei_cb.cb_list);

    out:
    dev_dbg(&dev->pdev->dev, "message read\n");
    --
    1.7.9.2


    \
     
     \ /
      Last update: 2012-02-24 02:43    [W:0.023 / U:120.584 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site