Hi, On Sat, Aug 20 2011, Namjae Jeon wrote: > This uses a switch statement instead of if/else if statements. > It will make to improve clarity and scalability, and offer faster execution through compiler optimization than if/else if statements. > > Signed-off-by: Namjae Jeon <linkinjeon@xxxxxxxxx> > --- > drivers/mmc/card/block.c | 38 +++++++++++++++++++++++--------------- > 1 files changed, 23 insertions(+), 15 deletions(-) > > diff --git a/drivers/mmc/card/block.c b/drivers/mmc/card/block.c > index 1ff5486..fe9dd89 100644 > --- a/drivers/mmc/card/block.c > +++ b/drivers/mmc/card/block.c > @@ -1191,23 +1191,31 @@ static int mmc_blk_issue_rq(struct mmc_queue *mq, struct request *req) > goto out; > } > > - if (req && req->cmd_flags & REQ_DISCARD) { > - /* complete ongoing async transfer before issuing discard */ > - if (card->host->areq) > - mmc_blk_issue_rw_rq(mq, NULL); > - if (req->cmd_flags & REQ_SECURE) > - ret = mmc_blk_issue_secdiscard_rq(mq, req); > - else > + if (req) { > + switch(req->cmd_flags) { > + case REQ_DISCARD: > + /* complete ongoing async transfer before issuing discard */ > + if (card->host->areq) > + mmc_blk_issue_rw_rq(mq, NULL); But it doesn't work, because you've changed the test for "req->cmd_flags & REQ_DISCARD" into a test for "req->cmd_flags == REQ_DISCARD". - Chris. -- Chris Ball <cjb@xxxxxxxxxx> <http://printf.net/> One Laptop Per Child -- To unsubscribe from this list: send the line "unsubscribe linux-mmc" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html