Check "ch" on NULL first, then get ctlr.

Signed-off-by: Ivan Khoronzhuk <ivan.khoronz...@linaro.org>
---

Based on net-next/master

 drivers/net/ethernet/ti/davinci_cpdma.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/net/ethernet/ti/davinci_cpdma.c 
b/drivers/net/ethernet/ti/davinci_cpdma.c
index d80bff1..7ecc6b7 100644
--- a/drivers/net/ethernet/ti/davinci_cpdma.c
+++ b/drivers/net/ethernet/ti/davinci_cpdma.c
@@ -835,8 +835,8 @@ EXPORT_SYMBOL_GPL(cpdma_chan_get_min_rate);
  */
 int cpdma_chan_set_rate(struct cpdma_chan *ch, u32 rate)
 {
-       struct cpdma_ctlr *ctlr = ch->ctlr;
        unsigned long flags, ch_flags;
+       struct cpdma_ctlr *ctlr;
        int ret, prio_mode;
        u32 rmask;
 
@@ -846,6 +846,7 @@ int cpdma_chan_set_rate(struct cpdma_chan *ch, u32 rate)
        if (ch->rate == rate)
                return rate;
 
+       ctlr = ch->ctlr;
        spin_lock_irqsave(&ctlr->lock, flags);
        spin_lock_irqsave(&ch->lock, ch_flags);
 
-- 
2.7.4

Reply via email to