[mpls-linux-devel] [PATCH2/2] mpls and iproute bug-fixes
Status: Beta
Brought to you by:
jleu
From: Igor M. <ig...@et...> - 2011-09-17 10:02:32
|
MPLS Linux =>net/ipv4/fib_frontend.c - repaired stack overflowing => in mpls_opcode.c - in function mpls_out_op_set added dst_hold() to avoid kernel taint =>in mpls_netlink.c - added arguments seq and pid to function mpls_ilm_event so iproute2 could be notified about the changes that was made - added functions mpls_dump_ilm_event and mpls_dump_nhlfe_event that dump accurate informations about events - in functions genl_mpls_nhlfe_new and genl_mpls_ilm_new functions mpls_dump_ilm_event and mpls_dump_nhlfe_event after all changes are done to nhlfe and ilm, so the event information would be accurate - in functions genl_mpls_nhlfe_new and genl_mpls_ilm_new added check if nhlfe/ilm could be created with desired instructions/mtu/ttl_propagation for nhlfe or instructions/protocol for ilm. If they couldn't be created then they are deleted. But if user wonts to change nhlfe/ilm and enters bad (instruction || mtu || ttl || protocol) nhlfe/ilm entry won't be deleted - from functin genl_mpls_xc_new removed line that allows only creation of XC. Did that so we could change xc entries (change nhlfe_key for existing ilm_label and ilm_labelspace) - fixed problem with adding ilm with labelspace!=0 together with instructions =>in mpls_nhlfe.c -added functions for initialization and destruction of nhlfe_dst_ops in mpls_nhlfe_init and mpls_nhlfe_exit respectivly. - removed seq and pid arguments from mpls_add_out_label - from function mpls_add_out_label moved call to function mpls_nhlfe_event to function genl_mpls_nhlfe_new from mpls_netlink.c so feedback would be more accurate - added arguments seq and pid to function mpls_del_out_label so it could notify iproute2 when nhlfe entry is deleted => in mpls_tunnel.c - added mtu assigment to function mpls_tunnel_change_mtu because dev_set_mtu doesn't do the actual assignement - in function mpls_tunnel_alloc added call to function dev_set_mtu so mtu would be assigned when tunnel is created - to function mpls_tunnel_ioctl added SIOCCHGTUNNEL command, so to the existing tunnel could be assigned another nhlfe => in mpls_ilm.c - from function mpls_add_in_label removed call to function mpls_ilm_event to function genl_mpls_ilm_new in mpls_netlink.c That was necesary so we could have reliable feedback when ilm entry is added - added arguments seq and pid to functions mpls_del_in_label and __mpls_del_in_label, so iproute2 program could be informed when we delete ilm entry ----------------------------------------------------------------------- I've only compiled code for MPLS linux, I haven't tested it. That's because I' m running mpls linux on kernel 2.6.38.8 and on that linux my fixes are tested and fully operational! This patch is only a port of my patch against kernel 2.6.38.8. When kernel.org becomes operational I'm going to send you patch for MPLS linux against linux kernel 2.6.38.8 BR Igor Maravić |