* Evgeniy Polyakov <[EMAIL PROTECTED]> 2005-04-11 16:59
> +     size = NLMSG_SPACE(sizeof(*msg) + msg->len);
> +
> +     skb = alloc_skb(size, gfp_mask);
> +     if (!skb) {
> +             printk(KERN_ERR "Failed to allocate new skb with size=%u.\n", 
> size);
> +             return -ENOMEM;
> +     }
> +
> +     nlh = NLMSG_PUT(skb, 0, msg->seq, NLMSG_DONE, size - sizeof(*nlh));

Needs same fix.

> +     size0 = sizeof(*msg) + sizeof(*ctl) + 3*sizeof(*req);
> +     
> +     size = NLMSG_SPACE(size0);
> +
> +     skb = alloc_skb(size, GFP_ATOMIC);
> +     if (!skb) {
> +             printk(KERN_ERR "Failed to allocate new skb with size=%u.\n", 
> size);
> +
> +             return -ENOMEM;
> +     }
> +
> +     nlh = NLMSG_PUT(skb, 0, 0x123, NLMSG_DONE, size - 
> NLMSG_ALIGN(sizeof(*nlh)));

Just pass size0 instead of reverting the calculation.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to