Commit 9f250114 authored by Jack Steiner's avatar Jack Steiner Committed by Linus Torvalds
Browse files

gru: cleanup gru inline functions



Cleanup of GRU inline functions to eliminate unnecessary inline code.
Update function descriptions.
Signed-off-by: default avatarJack Steiner <steiner@sgi.com>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent 6471cd4d
......@@ -623,9 +623,11 @@ static inline int gru_get_cb_substatus(void *cb)
return cbs->isubstatus;
}
/* Check the status of a CB. If the CB is in UPM mode, call the
* OS to handle the UPM status.
* Returns the CB status field value (0 for normal completion)
/*
* User interface to check an instruction status. UPM and exceptions
* are handled automatically. However, this function does NOT wait
* for an active instruction to complete.
*
*/
static inline int gru_check_status(void *cb)
{
......@@ -633,34 +635,31 @@ static inline int gru_check_status(void *cb)
int ret;
ret = cbs->istatus;
if (ret == CBS_CALL_OS)
if (ret != CBS_ACTIVE)
ret = gru_check_status_proc(cb);
return ret;
}
/* Wait for CB to complete.
* Returns the CB status field value (0 for normal completion)
/*
* User interface (via inline function) to wait for an instruction
* to complete. Completion status (IDLE or EXCEPTION is returned
* to the user. Exception due to hardware errors are automatically
* retried before returning an exception.
*
*/
static inline int gru_wait(void *cb)
{
struct gru_control_block_status *cbs = (void *)cb;
int ret = cbs->istatus;
if (ret != CBS_IDLE)
ret = gru_wait_proc(cb);
return ret;
return gru_wait_proc(cb);
}
/* Wait for CB to complete. Aborts program if error. (Note: error does NOT
/*
* Wait for CB to complete. Aborts program if error. (Note: error does NOT
* mean TLB mis - only fatal errors such as memory parity error or user
* bugs will cause termination.
*/
static inline void gru_wait_abort(void *cb)
{
struct gru_control_block_status *cbs = (void *)cb;
if (cbs->istatus != CBS_IDLE)
gru_wait_abort_proc(cb);
gru_wait_abort_proc(cb);
}
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment