Showing error 1806

User: Jiri Slaby
Error type: Invalid Pointer Dereference
Error type description: A pointer which is invalid is being dereferenced
File location: drivers/isdn/mISDN/stack.c
Line in file: 364
Project: Linux Kernel
Project version: 2.6.28
Confirmation: Fixed by 08cb3f60b2f866c906a5a779444b30ba8f9a93c8
Tools: Smatch (1.59)
Entered: 2013-09-11 08:47:26 UTC


Source:

334        __net_timestamp(skb);
335        _queue_message(ch->st, skb);
336        return 0;
337}
338
339void
340set_channel_address(struct mISDNchannel *ch, u_int sapi, u_int tei)
341{
342        ch->addr = sapi | (tei << 8);
343}
344
345void
346__add_layer2(struct mISDNchannel *ch, struct mISDNstack *st)
347{
348        list_add_tail(&ch->list, &st->layer2);
349}
350
351void
352add_layer2(struct mISDNchannel *ch, struct mISDNstack *st)
353{
354        mutex_lock(&st->lmutex);
355        __add_layer2(ch, st);
356        mutex_unlock(&st->lmutex);
357}
358
359static int
360st_own_ctrl(struct mISDNchannel *ch, u_int cmd, void *arg)
361{
362        if (!ch->st || ch->st->layer1)
363                return -EINVAL;
364        return ch->st->layer1->ctrl(ch->st->layer1, cmd, arg);
365}
366
367int
368create_stack(struct mISDNdevice *dev)
369{
370        struct mISDNstack        *newst;
371        int                        err;
372        DECLARE_COMPLETION_ONSTACK(done);
373
374        newst = kzalloc(sizeof(struct mISDNstack), GFP_KERNEL);
Show full sources