[PATCH net-next 1/4] gtp: move TEID hash to per socket structure

Andreas Schultz aschultz at tpip.net
Tue Mar 14 12:32:35 UTC 2017

----- On Mar 14, 2017, at 12:33 PM, pablo pablo at netfilter.org wrote:

> On Tue, Mar 14, 2017 at 12:25:45PM +0100, Andreas Schultz wrote:
>> @@ -275,9 +280,9 @@ static int gtp1u_udp_encap_recv(struct gtp_dev *gtp, struct
>> sk_buff *skb)
>>  	gtp1 = (struct gtp1_header *)(skb->data + sizeof(struct udphdr));
>> -	pctx = gtp1_pdp_find(gtp, ntohl(gtp1->tid));
>> +	pctx = gtp1_pdp_find(gsk, ntohl(gtp1->tid));
>>  	if (!pctx) {
>> -		netdev_dbg(gtp->dev, "No PDP ctx to decap skb=%p\n", skb);
>> +		pr_debug("No PDP ctx to decap skb=%p\n", skb);
>>  		return 1;
> Again the pr_debug() change has resurrected.

Yes, at that point in the code, there is now ways to resolve the network device.
Therefore the netdev_dbg has to go.

> I already told you: If we are going to have more than one gtp device,
> then this doesn't make sense. I have to repeat things over and over
> again, just because you don't want to rebase your patchset for some
> reason. I don't find any other explaination for this.

Without a PDP context, there is no network device, so netdev_dbg.
> So please remove this debugging rather than rendering this completely
> useful.

> Moreover this change has nothing to this patch, so this doesn't break
> the one logical change per patch.

This patch moves the incoming teid has from the network device to the
socket. This means that gtp1_pdp_find needs to change. So this related.
For the debug change, see above why it's related.


More information about the osmocom-net-gprs mailing list