Alright, that makes sense. Is it bad practice to do so? Would it make sense to change this to improve readability?
2015-02-02 20:34 GMT+01:00 Jeff Haran <[email protected]>: >> -----Original Message----- >> From: [email protected] [mailto:kernelnewbies- >> [email protected]] On Behalf Of Bas Peters >> Sent: Monday, February 02, 2015 11:26 AM >> To: [email protected]; [email protected] >> Subject: Question regarding strange-looking code in >> drivers/isdn/i4l/isdn_ppp.c >> >> Hi, >> >> I was checking some code in drivers/isdn/isdn_pp and came across the >> following: >> >> case PPP_VJC_COMP: >> if (is->debug & 0x20) >> printk(KERN_DEBUG "isdn_ppp: VJC_COMP\n"); >> { >> struct sk_buff *skb_old = skb; >> int pkt_len; >> skb = dev_alloc_skb(skb_old->len + 128); >> >> if (!skb) { >> printk(KERN_WARNING "%s: Memory squeeze, >> dropping packet.\n", dev->name); >> skb = skb_old; >> goto drop_packet; >> } >> skb_put(skb, skb_old->len + 128); >> skb_copy_from_linear_data(skb_old, skb->data, >> skb_old->len); >> if (net_dev->local->ppp_slot < 0) { >> printk(KERN_ERR "%s: net_dev->local- >> >ppp_slot(%d) out of range\n", >> __func__, net_dev->local->ppp_slot); >> goto drop_packet; >> } >> pkt_len = slhc_uncompress(ippp_table[net_dev->local- >> >ppp_slot]->slcomp, >> skb->data, skb_old->len); >> kfree_skb(skb_old); >> if (pkt_len < 0) >> goto drop_packet; >> >> skb_trim(skb, pkt_len); >> skb->protocol = htons(ETH_P_IP); >> } >> break; >> >> Could you explain to me why there are braces AFTER the printk invocation? >> Was it perhaps intended that the printk was included in the braces? >> >> I'm sorry if I'm missing something completely obvious here, but it seems >> kind of >> strange to me. >> >> With kind regards, >> >> Bas > > I assume it's just to introduce a new name space scope inside the case > statement without going to the trouble of writing a new function that would > be called from it. > > Jeff Haran > _______________________________________________ Kernelnewbies mailing list [email protected] http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
