> -----Original Message----- > From: Ameya Palande [mailto:ameya.palande@xxxxxxxxx] > Sent: Wednesday, January 27, 2010 3:44 AM > To: Ramirez Luna, Omar > Cc: linux-omap; Doyu Hiroshi (Nokia-D/Helsinki); Contreras Felipe (Nokia-> >D/Helsinki); Menon, Nishanth; Hebbar, Shivananda >Subject: Re: [PATCH] DSPBRIDGE: Remove conditional check from the InputMsg >function >Hi Shivananda, On Wed, 2010-01-27 at 02:44 +0100, ext Omar Ramirez Luna wrote: > From: Shivananda Hebbar <x0hebbar@xxxxxx> > > This patch removes the conditional check which can result in > message skip. > > Discovered-by: Bhavin Shah <bshah@xxxxxx> > Signed-off-by: Shivananda Hebbar <x0hebbar@xxxxxx> > --- > drivers/dsp/bridge/wmd/io_sm.c | 5 +---- > 1 files changed, 1 insertions(+), 4 deletions(-) > > diff --git a/drivers/dsp/bridge/wmd/io_sm.c b/drivers/dsp/bridge/wmd/io_sm.c > index 39b37a6..b2092a2 100644 > --- a/drivers/dsp/bridge/wmd/io_sm.c > +++ b/drivers/dsp/bridge/wmd/io_sm.c > @@ -1328,7 +1328,7 @@ static void InputMsg(struct IO_MGR *pIOMgr, struct MSG_MGR *hMsgMgr) > fInputEmpty = IO_GetValue(pIOMgr->hWmdContext, struct MSG, pCtrl, > bufEmpty); > uMsgs = IO_GetValue(pIOMgr->hWmdContext, struct MSG, pCtrl, size); > - if (fInputEmpty || uMsgs >= hMsgMgr->uMaxMsgs) > + if (fInputEmpty) > goto func_end; > > pMsgInput = pIOMgr->pMsgInput; > @@ -1356,9 +1356,6 @@ static void InputMsg(struct IO_MGR *pIOMgr, struct MSG_MGR *hMsgMgr) > * input locations have been set up. If all nodes were > * cleaned up, hMsgMgr->uMaxMsgs should be 0. > */ > - if (hMsgQueue && uMsgs > hMsgMgr->uMaxMsgs) > - goto func_end; > - > while (hMsgQueue != NULL) { > if (msg.dwId == hMsgQueue->dwId) { > /* Found it */ >Forgive me for the stupid question, but now since uMsgs >= >hMsgMgr->uMaxMsgs condition is removed, what is the side effect of that? >At least I am not able to understand how it affects the logic just by >seeing your patch. I guess if you can modify the patch description to >reflect the logic behind this then it will be nice :) I don't see any side effects with the removal of this conditional check. Intention of the patch was to remove the redundant check on uMaxMsgs as the DSP side of the bridge code check will ensure that uMsgs can't exceed uMaxMsgs. If you are ok with this explanation, I will update the description and resend it. And the initial patch description was written with the intention that in case the uMsgs exceeds the uMaxMessages (), then we shouldn't discard it by returning from function but process it. Regards, Shivananda -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html