Skip to content
  1. Sep 02, 2015
    • Tom Herbert's avatar
      flow_dissector: Jump to exit code in __skb_flow_dissect · a6e544b0
      Tom Herbert authored
      
      
      Instead of returning immediately (on a parsing failure for instance) we
      jump to cleanup code. This always sets protocol values in key_control
      (even on a failure there is still valid information in the key_tags that
      was set before the problem was hit).
      
      Signed-off-by: default avatarTom Herbert <tom@herbertland.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      a6e544b0
    • Tom Herbert's avatar
      flowi: Abstract out functions to get flow hash based on flowi · c6cc1ca7
      Tom Herbert authored
      
      
      Create __get_hash_from_flowi6 and __get_hash_from_flowi4 to get the
      flow keys and hash based on flowi structures. These are called by
      __skb_get_hash_flowi6 and __skb_get_hash_flowi4. Also, created
      get_hash_from_flowi6 and get_hash_from_flowi4 which can be called
      when just the hash value for a flowi is needed.
      
      Signed-off-by: default avatarTom Herbert <tom@herbertland.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      c6cc1ca7
    • Tom Herbert's avatar
      skbuff: Make __skb_set_sw_hash a general function · bcc83839
      Tom Herbert authored
      
      
      Move __skb_set_sw_hash to skbuff.h and add __skb_set_hash which is
      a common method (between __skb_set_sw_hash and skb_set_hash) to set
      the hash in an skbuff.
      
      Also, move skb_clear_hash to be closer to __skb_set_hash.
      
      Signed-off-by: default avatarTom Herbert <tom@herbertland.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      bcc83839
    • Tom Herbert's avatar
      flow_dissector: Move skb related functions to skbuff.h · e5276937
      Tom Herbert authored
      
      
      Move the flow dissector functions that are specific to skbuffs into
      skbuff.h out of flow_dissector.h. This makes flow_dissector.h have
      no dependencies on skbuff.h.
      
      Signed-off-by: default avatarTom Herbert <tom@herbertland.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      e5276937
    • Jean Delvare's avatar
      tg3: Fix temperature reporting · d3d11fe0
      Jean Delvare authored
      
      
      The temperature registers appear to report values in degrees Celsius
      while the hwmon API mandates values to be exposed in millidegrees
      Celsius. Do the conversion so that the values reported by "sensors"
      are correct.
      
      Fixes: aed93e0b ("tg3: Add hwmon support for temperature")
      Signed-off-by: default avatarJean Delvare <jdelvare@suse.de>
      Cc: Prashant Sreedharan <prashant@broadcom.com>
      Cc: Michael Chan <mchan@broadcom.com>
      Cc: stable@vger.kernel.org [v3.6+]
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      d3d11fe0
    • Mark Salter's avatar
      phylib: fix device deletion order in mdiobus_unregister() · b6c6aedc
      Mark Salter authored
      
      
      commit 8b63ec18 ("phylib: Make PHYs children of their MDIO bus, not
      the bus' parent.") uncovered a problem in mdiobus_unregister() which
      leads to this warning when I reboot an APM Mustang (arm64) platform:
      
        WARNING: CPU: 7 PID: 4239 at fs/sysfs/group.c:224 sysfs_remove_group+0xa0/0xa4()
        sysfs group fffffe0000e07a10 not found for kobject 'xgene-mii-eth0:03'
        ...
        CPU: 7 PID: 4239 Comm: reboot Tainted: G            E   4.2.0-0.18.el7.test15.aarch64 #1
        Hardware name: AppliedMicro Mustang/Mustang, BIOS 1.1.0 Aug 26 2015
        Call Trace:
        [<fffffe000009739c>] dump_backtrace+0x0/0x170
        [<fffffe000009752c>] show_stack+0x20/0x2c
        [<fffffe00007436f0>] dump_stack+0x78/0x9c
        [<fffffe00000c2cb4>] warn_slowpath_common+0xa0/0xd8
        [<fffffe00000c2d60>] warn_slowpath_fmt+0x74/0x88
        [<fffffe0000293d3c>] sysfs_remove_group+0x9c/0xa4
        [<fffffe00004a8bac>] dpm_sysfs_remove+0x5c/0x70
        [<fffffe000049b388>] device_del+0x44/0x208
        [<fffffe000049b578>] device_unregister+0x2c/0x7c
        [<fffffe000050dc68>] mdiobus_unregister+0x48/0x94
        [<fffffe000052afd0>] xgene_enet_mdio_remove+0x28/0x44
        [<fffffe000052d3f0>] xgene_enet_remove+0xd0/0xd8
        [<fffffe000052d424>] xgene_enet_shutdown+0x2c/0x3c
        [<fffffe00004a204c>] platform_drv_shutdown+0x24/0x40
        [<fffffe000049d4f4>] device_shutdown+0xf0/0x1b4
        [<fffffe00000e31ec>] kernel_restart_prepare+0x40/0x4c
        [<fffffe00000e32f8>] kernel_restart+0x1c/0x80
        [<fffffe00000e3670>] SyS_reboot+0x17c/0x250
      
      The problem is that mdiobus_unregister() deletes the bus device before
      unregistering the phy devices on the bus. This wasn't a problem before
      because the phys were not children of the bus:
      
        /sys/devices/platform/APMC0D05:00/net/eth0/xgene-mii-eth0:03
        /sys/devices/platform/APMC0D05:00/net/eth0/xgene-mii-eth0
      
      But now that they are:
      
        /sys/devices/platform/APMC0D05:00/net/eth0/xgene-mii-eth0/xgene-mii-eth0:03
      
      when mdiobus_unregister deletes the bus device, the phy subdirs are
      removed from sysfs also. So when the phys are unregistered afterward,
      we get the warning. This patch changes the order so that phys are
      unregistered before the bus device is deleted.
      
      Fixes: 8b63ec18 ("phylib: Make PHYs children of their MDIO bus, not the bus' parent.")
      Signed-off-by: default avatarMark Salter <msalter@redhat.com>
      Reviewed-by: default avatarFlorian Fainelli <f.fainelli@gmail.com>
      Tested-by: default avatarMark Langsdorf <mlangsdo@redhat.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      b6c6aedc
    • David Ahern's avatar
      net: Make table id type u32 · 9b8ff518
      David Ahern authored
      
      
      A number of VRF patches used 'int' for table id. It should be u32 to be
      consistent with the rest of the stack.
      
      Fixes:
      4e3c8992 ("net: Introduce VRF related flags and helpers")
      15be405e ("net: Add inet_addr lookup by table")
      30bbaa19 ("net: Fix up inet_addr_type checks")
      021dd3b8 ("net: Add routes to the table associated with the device")
      dc028da5 ("inet: Move VRF table lookup to inlined function")
      f6d3c192 ("net: FIB tracepoints")
      
      Signed-off-by: default avatarDavid Ahern <dsa@cumulusnetworks.com>
      Reviewed-by: default avatarNikolay Aleksandrov <nikolay@cumulusnetworks.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      9b8ff518
  2. Sep 01, 2015
  3. Aug 31, 2015