Skip to content
Permalink
Colin-Foster/p…
Switch branches/tags

Commits on Nov 19, 2021

  1. net: mscc: ocelot: expose ocelot wm functions

    Expose ocelot_wm functions so they can be shared with other drivers.
    
    Signed-off-by: Colin Foster <colin.foster@in-advantage.com>
    colin-foster-in-advantage authored and intel-lab-lkp committed Nov 19, 2021
  2. net: mscc: ocelot: split register definitions to a separate file

    Move these to a separate file will allow them to be shared to other
    drivers.
    
    Signed-off-by: Colin Foster <colin.foster@in-advantage.com>
    colin-foster-in-advantage authored and intel-lab-lkp committed Nov 19, 2021
  3. net: dsa: ocelot: felix: add per-device-per-port quirks

    Initial Felix-driver products (VSC9959 and VSC9953) both had quirks
    where the PCS was in charge of rate adaptation. In the case of the
    VSC7512 there is a differnce in that some ports (ports 0-3) don't have
    a PCS and others might have different quirks based on how they are
    configured.
    
    This adds a generic method by which any port can have any quirks that
    are handled by each device's driver.
    
    Signed-off-by: Colin Foster <colin.foster@in-advantage.com>
    colin-foster-in-advantage authored and intel-lab-lkp committed Nov 19, 2021
  4. net: dsa: ocelot: felix: add interface for custom regmaps

    Add an interface so that non-mmio regmaps can be used
    
    Signed-off-by: Colin Foster <colin.foster@in-advantage.com>
    colin-foster-in-advantage authored and intel-lab-lkp committed Nov 19, 2021
  5. net: dsa: ocelot: felix: Remove requirement for PCS in felix devices

    Existing felix devices all have an initialized pcs array. Future devices
    might not, so running a NULL check on the array before dereferencing it
    will allow those future drivers to not crash at this point
    
    Signed-off-by: Colin Foster <colin.foster@in-advantage.com>
    colin-foster-in-advantage authored and intel-lab-lkp committed Nov 19, 2021
  6. net: dsa: ocelot: remove unnecessary pci_bar variables

    The pci_bar variables for the switch and imdio don't make sense for the
    generic felix driver. Moving them to felix_vsc9959 to limit scope and
    simplify the felix_info struct.
    
    Signed-off-by: Colin Foster <colin.foster@in-advantage.com>
    Reviewed-by: Vladimir Oltean <vladimir.oltean@nxp.com>
    Reviewed-by: Florian Fainelli <f.fainelli@gmail.com>
    colin-foster-in-advantage authored and intel-lab-lkp committed Nov 19, 2021
  7. net/bridge: replace simple_strtoul to kstrtol

    simple_strtoull is obsolete, use kstrtol instead.
    
    Signed-off-by: Bernard Zhao <bernard@vivo.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Bernard Zhao authored and davem330 committed Nov 19, 2021
  8. nfp: flower: correction of error handling

    Removing reduplicated error handling when running into error path
    of `nfp_compile_flow_metadata`.
    
    Signed-off-by: Yu Xiao <yu.xiao@corigine.com>
    Signed-off-by: Yinjun Zhang <yinjun.zhang@corigine.com>
    Signed-off-by: Simon Horman <simon.horman@corigine.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    macris-xiao authored and davem330 committed Nov 19, 2021
  9. ethtool: stats: Use struct_group() to clear all stats at once

    In preparation for FORTIFY_SOURCE performing compile-time and run-time
    field bounds checking for memset(), avoid intentionally writing across
    neighboring fields.
    
    Add struct_group() to mark region of struct stats_reply_data that should
    be initialized, which can now be done in a single memset() call.
    
    Signed-off-by: Kees Cook <keescook@chromium.org>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    kees authored and davem330 committed Nov 19, 2021
  10. net/af_iucv: Use struct_group() to zero struct iucv_sock region

    In preparation for FORTIFY_SOURCE performing compile-time and run-time
    field bounds checking for memset(), avoid intentionally writing across
    neighboring fields.
    
    Add struct_group() to mark the region of struct iucv_sock that gets
    initialized to zero. Avoid the future warning:
    
    In function 'fortify_memset_chk',
        inlined from 'iucv_sock_alloc' at net/iucv/af_iucv.c:476:2:
    ./include/linux/fortify-string.h:199:4: warning: call to '__write_overflow_field' declared with attribute warning: detected write beyond size of field (1st parameter); maybe use struct_group()? [-Wattribute-warning]
      199 |    __write_overflow_field(p_size_field, size);
          |    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    
    Acked-by: Karsten Graul <kgraul@linux.ibm.com>
    Link: https://lore.kernel.org/lkml/19ff61a0-0cda-6000-ce56-dc6b367c00d6@linux.ibm.com/
    Signed-off-by: Kees Cook <keescook@chromium.org>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    kees authored and davem330 committed Nov 19, 2021
  11. ipv6: Use memset_after() to zero rt6_info

    In preparation for FORTIFY_SOURCE performing compile-time and run-time
    field bounds checking for memset(), avoid intentionally writing across
    neighboring fields.
    
    Use memset_after() to clear everything after the dst_entry member of
    struct rt6_info.
    
    Signed-off-by: Kees Cook <keescook@chromium.org>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    kees authored and davem330 committed Nov 19, 2021
  12. net: 802: Use memset_startat() to clear struct fields

    In preparation for FORTIFY_SOURCE performing compile-time and run-time
    field bounds checking for memset(), avoid intentionally writing across
    neighboring fields.
    
    Use memset_startat() so memset() doesn't get confused about writing
    beyond the destination member that is intended to be the starting point
    of zeroing through the end of the struct.
    
    Signed-off-by: Kees Cook <keescook@chromium.org>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    kees authored and davem330 committed Nov 19, 2021
  13. net: dccp: Use memset_startat() for TP zeroing

    In preparation for FORTIFY_SOURCE performing compile-time and run-time
    field bounds checking for memset(), avoid intentionally writing across
    neighboring fields.
    
    Use memset_startat() so memset() doesn't get confused about writing
    beyond the destination member that is intended to be the starting point
    of zeroing through the end of the struct.
    
    Signed-off-by: Kees Cook <keescook@chromium.org>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    kees authored and davem330 committed Nov 19, 2021
  14. sky2: use PCI VPD API in eeprom ethtool ops

    Recently pci_read/write_vpd_any() have been added to the PCI VPD API.
    These functions allow to access VPD address space outside the
    auto-detected VPD, and they can be used to significantly simplify the
    eeprom ethtool ops.
    
    Tested with a 88E8070 card with 1KB EEPROM.
    
    Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
    Reviewed-by: Stephen Hemminger <stephen@networkplumber.org>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    hkallweit authored and davem330 committed Nov 19, 2021
  15. net: ipa: Use 'for_each_clear_bit' when possible

    Use 'for_each_clear_bit()' instead of hand writing it. It is much less
    version.
    
    Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    tititiou36 authored and davem330 committed Nov 19, 2021
  16. bnx2x: Use struct_group() for memcpy() region

    In preparation for FORTIFY_SOURCE performing compile-time and run-time
    field bounds checking for memcpy(), memmove(), and memset(), avoid
    intentionally writing across neighboring fields.
    
    Use struct_group() in struct nig_stats around members egress_mac_pkt0_lo,
    egress_mac_pkt0_hi, egress_mac_pkt1_lo, and egress_mac_pkt1_hi (and the
    respective members in struct bnx2x_eth_stats), so they can be referenced
    together. This will allow memcpy() and sizeof() to more easily reason
    about sizes, improve readability, and avoid future warnings about writing
    beyond the end of struct bnx2x_eth_stats's rx_stat_ifhcinbadoctets_hi.
    
    "pahole" shows no size nor member offset changes to either struct.
    "objdump -d" shows no meaningful object code changes (i.e. only source
    line number induced differences and optimizations).
    
    Additionally adds BUILD_BUG_ON() to compare the separate struct group
    sizes.
    
    Reviewed-by: Prabhakar Kushwaha <pkushwaha@marvell.com>
    Link: https://lore.kernel.org/lkml/DM5PR18MB2229B0413C372CC6E49D59A3B2C59@DM5PR18MB2229.namprd18.prod.outlook.com
    Signed-off-by: Kees Cook <keescook@chromium.org>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    kees authored and davem330 committed Nov 19, 2021
  17. cxgb4: Use struct_group() for memcpy() region

    In preparation for FORTIFY_SOURCE performing compile-time and run-time
    field bounds checking for memcpy(), memmove(), and memset(), avoid
    intentionally writing across neighboring fields.
    
    Use struct_group() in struct fw_eth_tx_pkt_vm_wr around members ethmacdst,
    ethmacsrc, ethtype, and vlantci, so they can be referenced together. This
    will allow memcpy() and sizeof() to more easily reason about sizes,
    improve readability, and avoid future warnings about writing beyond the
    end of ethmacdst.
    
    "pahole" shows no size nor member offset changes to struct
    fw_eth_tx_pkt_vm_wr. "objdump -d" shows no object code changes.
    
    Signed-off-by: Kees Cook <keescook@chromium.org>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    kees authored and davem330 committed Nov 19, 2021
  18. cxgb3: Use struct_group() for memcpy() region

    In preparation for FORTIFY_SOURCE performing compile-time and run-time
    field bounds checking for memcpy(), memmove(), and memset(), avoid
    intentionally writing across neighboring fields.
    
    Use struct_group() in struct rss_hdr around members imm_data and intr_gen,
    so they can be referenced together. This will allow memcpy() and sizeof()
    to more easily reason about sizes, improve readability, and avoid future
    warnings about writing beyond the end of imm_data.
    
    "pahole" shows no size nor member offset changes to struct rss_hdr.
    "objdump -d" shows no object code changes.
    
    Signed-off-by: Kees Cook <keescook@chromium.org>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    kees authored and davem330 committed Nov 19, 2021
  19. net: phylink: add 1000base-KX to phylink_caps_to_linkmodes()

    1000base-KX was missed in phylink_caps_to_linkmodes(), add it. This
    will be necessary to convert stmmac with xpcs to ensure we don't drop
    any supported linkmodes.
    
    Signed-off-by: Russell King (Oracle) <rmk+kernel@armlinux.org.uk>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Russell King (Oracle) authored and davem330 committed Nov 19, 2021
  20. Merge branch 's390-next'

    Karsten Graul says:
    
    ====================
    s390/net: updates 2021-11-18
    
    Please apply the following patches to netdev's net-next tree.
    
    Heiko provided fixes for kernel doc comments and solved some
    other compiler warnings.
    Julians qeth patch simplifies the rx queue handling in the code.
    ====================
    
    Signed-off-by: David S. Miller <davem@davemloft.net>
    davem330 committed Nov 19, 2021
  21. s390/lcs: add braces around empty function body

    Fix allmodconfig + W=1 compile breakage:
    
    drivers/s390/net/lcs.c: In function ‘lcs_get_frames_cb’:
    drivers/s390/net/lcs.c:1823:25: error: suggest braces around empty body in an ‘else’ statement [-Werror=empty-body]
     1823 |                         ; // FIXME: error message ?
          |                         ^
    
    Acked-by: Julian Wiedmann <jwi@linux.ibm.com>
    Signed-off-by: Heiko Carstens <hca@linux.ibm.com>
    Signed-off-by: Karsten Graul <kgraul@linux.ibm.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    hcahca authored and davem330 committed Nov 19, 2021
  22. s390/ctcm: add __printf format attribute to ctcm_dbf_longtext

    Allow the compiler to recognize and check format strings and parameters.
    
    As reported with allmodconfig and W=1:
    
    drivers/s390/net/ctcm_dbug.c: In function ‘ctcm_dbf_longtext’:
    drivers/s390/net/ctcm_dbug.c:73:9: error: function ‘ctcm_dbf_longtext’ might be a candidate for ‘gnu_printf’ format attribute [-Werror=suggest-attribute=format]
       73 |         vsnprintf(dbf_txt_buf, sizeof(dbf_txt_buf), fmt, args);
          |         ^~~~~~~~~
    
    Acked-by: Julian Wiedmann <jwi@linux.ibm.com>
    Signed-off-by: Heiko Carstens <hca@linux.ibm.com>
    Signed-off-by: Karsten Graul <kgraul@linux.ibm.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    hcahca authored and davem330 committed Nov 19, 2021
  23. s390/ctcm: fix format string

    The second parameter as specified by the format string is actually a
    string not an integer.
    
    Acked-by: Julian Wiedmann <jwi@linux.ibm.com>
    Signed-off-by: Heiko Carstens <hca@linux.ibm.com>
    Signed-off-by: Karsten Graul <kgraul@linux.ibm.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    hcahca authored and davem330 committed Nov 19, 2021
  24. net/af_iucv: fix kernel doc comments

    Fix kernel doc comments where appropriate, or remove incorrect kernel
    doc indicators.
    
    Acked-by: Julian Wiedmann <jwi@linux.ibm.com>
    Signed-off-by: Heiko Carstens <hca@linux.ibm.com>
    Signed-off-by: Karsten Graul <kgraul@linux.ibm.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    hcahca authored and davem330 committed Nov 19, 2021
  25. net/iucv: fix kernel doc comments

    Fix kernel doc comments where appropriate or remove incorrect kernel
    doc indicators.
    Also move kernel doc comments directly before functions.
    
    Signed-off-by: Heiko Carstens <hca@linux.ibm.com>
    Signed-off-by: Karsten Graul <kgraul@linux.ibm.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    hcahca authored and davem330 committed Nov 19, 2021
  26. s390/qeth: allocate RX queue at probe time

    We always need an RX queue, and there's no reconfig situation either
    where we would need to free & rebuild the queue.
    
    So allocate the RX queue right from the start, and avoid freeing it
    during unrelated qeth_free_qdio_queues() calls.
    
    Signed-off-by: Julian Wiedmann <jwi@linux.ibm.com>
    Signed-off-by: Karsten Graul <kgraul@linux.ibm.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    julianwiedmann authored and davem330 committed Nov 19, 2021
  27. Merge branch 'hw_addr_set-arch'

    Jakub Kicinski says:
    
    ====================
    net: use eth_hw_addr_set() in arch-specific drivers
    
    Fixups for more arch-specific drivers.
    
    With these (and another patch which didn't fit) the build is more or
    less clean with all cross-compilers available on kernel.org. I say
    more or less because around half of the arches fail to build for
    unrelated reasons right now.
    
    Most of the changes here are for m68k, 32bit x86 and alpha.
    ====================
    
    Signed-off-by: David S. Miller <davem@davemloft.net>
    davem330 committed Nov 19, 2021
  28. natsemi: macsonic: use eth_hw_addr_set()

    Byte by byte assignments.
    
    Fixes build on m68k.
    
    Signed-off-by: Jakub Kicinski <kuba@kernel.org>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Jakub Kicinski authored and davem330 committed Nov 19, 2021
  29. cirrus: mac89x0: use eth_hw_addr_set()

    Byte by byte assignments.
    
    Fixes build on m68k.
    
    Signed-off-by: Jakub Kicinski <kuba@kernel.org>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Jakub Kicinski authored and davem330 committed Nov 19, 2021
  30. apple: macmace: use eth_hw_addr_set()

    Byte by byte assignments.
    
    Fixes build on m68k.
    
    Signed-off-by: Jakub Kicinski <kuba@kernel.org>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Jakub Kicinski authored and davem330 committed Nov 19, 2021
  31. lasi_82594: use eth_hw_addr_set()

    dev_addr is set from IO reads, passed to an arch-specific helper.
    Note that the helper never reads it so uninitialized temp is fine.
    
    Fixes build on parisc.
    
    Signed-off-by: Jakub Kicinski <kuba@kernel.org>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Jakub Kicinski authored and davem330 committed Nov 19, 2021
  32. smc9194: use eth_hw_addr_set()

    dev_addr is set from IO reads, and broken from a u16 value.
    
    Fixes build on Alpha.
    
    Signed-off-by: Jakub Kicinski <kuba@kernel.org>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Jakub Kicinski authored and davem330 committed Nov 19, 2021
  33. 8390: wd: use eth_hw_addr_set()

    IO reads, so save to an array then eth_hw_addr_set().
    
    Fixes build on x86 (32bit).
    
    Signed-off-by: Jakub Kicinski <kuba@kernel.org>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Jakub Kicinski authored and davem330 committed Nov 19, 2021
  34. 8390: mac8390: use eth_hw_addr_set()

    Use temp to pass to the reading function, the function is generic
    so can't fix there.
    
    Fixes m68k build.
    
    Signed-off-by: Jakub Kicinski <kuba@kernel.org>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Jakub Kicinski authored and davem330 committed Nov 19, 2021
  35. 8390: hydra: use eth_hw_addr_set()

    Loop with offsetting to every second byte, so use a temp buffer.
    
    Fixes m68k build.
    
    Signed-off-by: Jakub Kicinski <kuba@kernel.org>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Jakub Kicinski authored and davem330 committed Nov 19, 2021
Older