--- /tmp/rtnet-0.5.0/rtskb.c 2003-09-26 15:11:52.000000000 +0200 +++ rtnet/rtskb.c 2003-09-26 15:11:19.000000000 +0200 @@ -170,6 +170,9 @@ return -ENOMEM; } #else + /* exectional case, do not use rt_socket within real-time contexts when + * this variant is active! + */ if ( !(skb = kmalloc(ALIGN_RTSKB_LEN + len, GFP_KERNEL)) ) { rt_printk("RTnet: rtskb allocation failed.\n"); return -ENOMEM; @@ -203,7 +206,11 @@ { ASSERT(skb != NULL, return;); +#ifndef CONFIG_RTNET_RTSKB_USE_KMALLOC rt_free(skb); +#else + kfree(skb); +#endif rtskb_amount--; }