Replace kfree_skb() which is used in ip6_forward() and ip_forward() with kfree_skb_reason(). The new drop reason 'SKB_DROP_REASON_PKT_TOO_BIG' is introduced for the case that the length of the packet exceeds MTU and can't fragment.
Showing the changes to include (2 of 4 files). Show all
Unified · Split
| @@ -453,6 +453,9 @@ enum skb_drop_reason { · 452 unmodified lines | ||
| 453 | 453 | SKB_DROP_REASON_IP_INNOROUTES, /* network unreachable, corresponding |
| 454 | 454 | * to IPSTATS_MIB_INADDRERRORS |
| 455 | 455 | */ |
| 456 | + SKB_DROP_REASON_PKT_TOO_BIG, /* packet size is too big (maybe exceed | |
| 457 | + * the MTU) | |
| 458 | + */ | |
| 456 | 459 | SKB_DROP_REASON_MAX, |
| 457 | 460 | }; |
| 458 | 461 | |
| @@ -65,6 +65,7 @@ · 64 unmodified lines | ||
| 65 | 65 | EM(SKB_DROP_REASON_INVALID_PROTO, INVALID_PROTO) \ |
| 66 | 66 | EM(SKB_DROP_REASON_IP_INADDRERRORS, IP_INADDRERRORS) \ |
| 67 | 67 | EM(SKB_DROP_REASON_IP_INNOROUTES, IP_INNOROUTES) \ |
| 68 | + EM(SKB_DROP_REASON_PKT_TOO_BIG, PKT_TOO_BIG) \ | |
| 68 | 69 | EMe(SKB_DROP_REASON_MAX, MAX) |
| 69 | 70 | |
| 70 | 71 | #undef EM |