]> git.karo-electronics.de Git - linux-beck.git/commit
netlink: use "unsigned int" in nla_next()
authorAlexey Dobriyan <adobriyan@gmail.com>
Sat, 19 Nov 2016 00:54:35 +0000 (03:54 +0300)
committerDavid S. Miller <davem@davemloft.net>
Sun, 20 Nov 2016 03:11:25 +0000 (22:11 -0500)
commit3b2c75d371740fb0dcd0c9eac545ab1dd28b4706
treedcfdabe4ff77c0a81ad8705c71ab15a9e4a0f269
parente0d7924a4aaadfb779178f00ff67e96c895eb5eb
netlink: use "unsigned int" in nla_next()

->nla_len is unsigned entity (it's length after all) and u16,
thus it can't overflow when being aligned into int/unsigned int.

(nlmsg_next has the same code, but I didn't yet convince myself
it is correct to do so).

There is pointer arithmetic in this function and offset being
unsigned is better:

add/remove: 0/0 grow/shrink: 1/64 up/down: 5/-309 (-304)
function                                     old     new   delta
nl80211_set_wiphy                           1444    1449      +5
team_nl_cmd_options_set                      997     995      -2
tcf_em_tree_validate                         872     870      -2
switchdev_port_bridge_setlink                352     350      -2
switchdev_port_br_afspec                     312     310      -2
rtm_to_fib_config                            428     426      -2
qla4xxx_sysfs_ddb_set_param                 2193    2191      -2
qla4xxx_iface_set_param                     4470    4468      -2
ovs_nla_free_flow_actions                    152     150      -2
output_userspace                             518     516      -2
...
nl80211_set_reg                              654     649      -5
validate_scan_freqs                          148     142      -6
validate_linkmsg                             288     282      -6
nl80211_parse_connkeys                       489     483      -6
nlattr_set                                   231     224      -7
nf_tables_delsetelem                         267     260      -7
do_setlink                                  3416    3408      -8
netlbl_cipsov4_add_std                      1672    1659     -13
nl80211_parse_sched_scan                    2902    2888     -14
nl80211_trigger_scan                        1738    1720     -18
do_execute_actions                          2821    2738     -83
Total: Before=154865355, After=154865051, chg -0.00%

Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/net/netlink.h