01 Apr, 2020

1 commit

  • Pull networking updates from David Miller:
    "Highlights:

    1) Fix the iwlwifi regression, from Johannes Berg.

    2) Support BSS coloring and 802.11 encapsulation offloading in
    hardware, from John Crispin.

    3) Fix some potential Spectre issues in qtnfmac, from Sergey
    Matyukevich.

    4) Add TTL decrement action to openvswitch, from Matteo Croce.

    5) Allow paralleization through flow_action setup by not taking the
    RTNL mutex, from Vlad Buslov.

    6) A lot of zero-length array to flexible-array conversions, from
    Gustavo A. R. Silva.

    7) Align XDP statistics names across several drivers for consistency,
    from Lorenzo Bianconi.

    8) Add various pieces of infrastructure for offloading conntrack, and
    make use of it in mlx5 driver, from Paul Blakey.

    9) Allow using listening sockets in BPF sockmap, from Jakub Sitnicki.

    10) Lots of parallelization improvements during configuration changes
    in mlxsw driver, from Ido Schimmel.

    11) Add support to devlink for generic packet traps, which report
    packets dropped during ACL processing. And use them in mlxsw
    driver. From Jiri Pirko.

    12) Support bcmgenet on ACPI, from Jeremy Linton.

    13) Make BPF compatible with RT, from Thomas Gleixnet, Alexei
    Starovoitov, and your's truly.

    14) Support XDP meta-data in virtio_net, from Yuya Kusakabe.

    15) Fix sysfs permissions when network devices change namespaces, from
    Christian Brauner.

    16) Add a flags element to ethtool_ops so that drivers can more simply
    indicate which coalescing parameters they actually support, and
    therefore the generic layer can validate the user's ethtool
    request. Use this in all drivers, from Jakub Kicinski.

    17) Offload FIFO qdisc in mlxsw, from Petr Machata.

    18) Support UDP sockets in sockmap, from Lorenz Bauer.

    19) Fix stretch ACK bugs in several TCP congestion control modules,
    from Pengcheng Yang.

    20) Support virtual functiosn in octeontx2 driver, from Tomasz
    Duszynski.

    21) Add region operations for devlink and use it in ice driver to dump
    NVM contents, from Jacob Keller.

    22) Add support for hw offload of MACSEC, from Antoine Tenart.

    23) Add support for BPF programs that can be attached to LSM hooks,
    from KP Singh.

    24) Support for multiple paths, path managers, and counters in MPTCP.
    From Peter Krystad, Paolo Abeni, Florian Westphal, Davide Caratti,
    and others.

    25) More progress on adding the netlink interface to ethtool, from
    Michal Kubecek"

    * git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net-next: (2121 commits)
    net: ipv6: rpl_iptunnel: Fix potential memory leak in rpl_do_srh_inline
    cxgb4/chcr: nic-tls stats in ethtool
    net: dsa: fix oops while probing Marvell DSA switches
    net/bpfilter: remove superfluous testing message
    net: macb: Fix handling of fixed-link node
    net: dsa: ksz: Select KSZ protocol tag
    netdevsim: dev: Fix memory leak in nsim_dev_take_snapshot_write
    net: stmmac: add EHL 2.5Gbps PCI info and PCI ID
    net: stmmac: add EHL PSE0 & PSE1 1Gbps PCI info and PCI ID
    net: stmmac: create dwmac-intel.c to contain all Intel platform
    net: dsa: bcm_sf2: Support specifying VLAN tag egress rule
    net: dsa: bcm_sf2: Add support for matching VLAN TCI
    net: dsa: bcm_sf2: Move writing of CFP_DATA(5) into slicing functions
    net: dsa: bcm_sf2: Check earlier for FLOW_EXT and FLOW_MAC_EXT
    net: dsa: bcm_sf2: Disable learning for ASP port
    net: dsa: b53: Deny enslaving port 7 for 7278 into a bridge
    net: dsa: b53: Prevent tagged VLAN on port 7 for 7278
    net: dsa: b53: Restore VLAN entries upon (re)configuration
    net: dsa: bcm_sf2: Fix overflow checks
    hv_netvsc: Remove unnecessary round_up for recv_completion_cnt
    ...

    Linus Torvalds
     

24 Mar, 2020

2 commits

  • The bpf_program__attach of libbpf(using bpf_link) is much more intuitive
    than the previous method using ioctl.

    bpf_program__attach_perf_event manages the enable of perf_event and
    attach of BPF programs to it, so there's no neeed to do this
    directly with ioctl.

    In addition, bpf_link provides consistency in the use of API because it
    allows disable (detach, destroy) for multiple events to be treated as
    one bpf_link__destroy. Also, bpf_link__destroy manages the close() of
    perf_event fd.

    This commit refactors samples that attach the bpf program to perf_event
    by using libbbpf instead of ioctl. Also the bpf_load in the samples were
    removed and migrated to use libbbpf API.

    Signed-off-by: Daniel T. Lee
    Signed-off-by: Daniel Borkmann
    Acked-by: Andrii Nakryiko
    Link: https://lore.kernel.org/bpf/20200321100424.1593964-3-danieltimlee@gmail.com

    Daniel T. Lee
     
  • To reduce the reliance of trace samples (trace*_user) on bpf_load,
    move read_trace_pipe to trace_helpers. By moving this bpf_loader helper
    elsewhere, trace functions can be easily migrated to libbbpf.

    Signed-off-by: Daniel T. Lee
    Signed-off-by: Daniel Borkmann
    Acked-by: Andrii Nakryiko
    Link: https://lore.kernel.org/bpf/20200321100424.1593964-2-danieltimlee@gmail.com

    Daniel T. Lee
     

24 Feb, 2020

1 commit

  • We currently have the following devnode types:

    enum vfl_devnode_type {
    VFL_TYPE_GRABBER = 0,
    VFL_TYPE_VBI,
    VFL_TYPE_RADIO,
    VFL_TYPE_SUBDEV,
    VFL_TYPE_SDR,
    VFL_TYPE_TOUCH,
    VFL_TYPE_MAX /* Shall be the last one */
    };

    They all make sense, except for the first: GRABBER really refers to /dev/videoX
    devices, which can be capture, output or m2m, so 'grabber' doesn't even refer to
    their function anymore.

    Let's call a spade a spade and rename this to VFL_TYPE_VIDEO.

    Signed-off-by: Hans Verkuil
    Acked-by: Sakari Ailus
    Reviewed-by: Laurent Pinchart
    Signed-off-by: Mauro Carvalho Chehab

    Hans Verkuil
     

10 Feb, 2020

1 commit

  • Pull more Kbuild updates from Masahiro Yamada:

    - fix randconfig to generate a sane .config

    - rename hostprogs-y / always to hostprogs / always-y, which are more
    natual syntax.

    - optimize scripts/kallsyms

    - fix yes2modconfig and mod2yesconfig

    - make multiple directory targets ('make foo/ bar/') work

    * tag 'kbuild-v5.6-2' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild:
    kbuild: make multiple directory targets work
    kconfig: Invalidate all symbols after changing to y or m.
    kallsyms: fix type of kallsyms_token_table[]
    scripts/kallsyms: change table to store (strcut sym_entry *)
    scripts/kallsyms: rename local variables in read_symbol()
    kbuild: rename hostprogs-y/always to hostprogs/always-y
    kbuild: fix the document to use extra-y for vmlinux.lds
    kconfig: fix broken dependency in randconfig-generated .config

    Linus Torvalds
     

08 Feb, 2020

1 commit

  • Daniel Borkmann says:

    ====================
    pull-request: bpf 2020-02-07

    The following pull-request contains BPF updates for your *net* tree.

    We've added 15 non-merge commits during the last 10 day(s) which contain
    a total of 12 files changed, 114 insertions(+), 31 deletions(-).

    The main changes are:

    1) Various BPF sockmap fixes related to RCU handling in the map's tear-
    down code, from Jakub Sitnicki.

    2) Fix macro state explosion in BPF sk_storage map when calculating its
    bucket_log on allocation, from Martin KaFai Lau.

    3) Fix potential BPF sockmap update race by rechecking socket's established
    state under lock, from Lorenz Bauer.

    4) Fix crash in bpftool on missing xlated instructions when kptr_restrict
    sysctl is set, from Toke Høiland-Jørgensen.

    5) Fix i40e's XSK wakeup code to return proper error in busy state and
    various misc fixes in xdpsock BPF sample code, from Maciej Fijalkowski.

    6) Fix the way modifiers are skipped in BTF in the verifier while walking
    pointers to avoid program rejection, from Alexei Starovoitov.

    7) Fix Makefile for runqslower BPF tool to i) rebuild on libbpf changes and
    ii) to fix undefined reference linker errors for older gcc version due to
    order of passed gcc parameters, from Yulia Kartseva and Song Liu.

    8) Fix a trampoline_count BPF kselftest warning about missing braces around
    initializer, from Andrii Nakryiko.

    9) Fix up redundant "HAVE" prefix from large INSN limit kernel probe in
    bpftool, from Michal Rostecki.
    ====================

    Signed-off-by: David S. Miller

    David S. Miller
     

06 Feb, 2020

2 commits

  • ndo_xsk_wakeup() can return -ENETDOWN and there's no particular reason
    to bail the whole application out on that case. Let's check in kick_tx()
    whether errno was set to mentioned value and basically allow application
    to further process frames.

    Fixes: 248c7f9c0e21 ("samples/bpf: convert xdpsock to use libbpf for AF_XDP access")
    Reported-by: Cameron Elliott
    Signed-off-by: Maciej Fijalkowski
    Signed-off-by: Daniel Borkmann
    Acked-by: Björn Töpel
    Link: https://lore.kernel.org/bpf/20200205045834.56795-4-maciej.fijalkowski@intel.com

    Maciej Fijalkowski
     
  • Seems that by accident there is a doubled declaration of global variable
    opt_xdp_bind_flags in xdpsock_user.c. The second one is uninitialized so
    compiler was simply ignoring it.

    To keep things clean, drop the doubled variable.

    Fixes: c543f5469822 ("samples/bpf: add unaligned chunks mode support to xdpsock")
    Signed-off-by: Maciej Fijalkowski
    Signed-off-by: Daniel Borkmann
    Acked-by: Björn Töpel
    Link: https://lore.kernel.org/bpf/20200205045834.56795-3-maciej.fijalkowski@intel.com

    Maciej Fijalkowski
     

04 Feb, 2020

2 commits

  • The most notable change is DEFINE_SHOW_ATTRIBUTE macro split in
    seq_file.h.

    Conversion rule is:

    llseek => proc_lseek
    unlocked_ioctl => proc_ioctl

    xxx => proc_xxx

    delete ".owner = THIS_MODULE" line

    [akpm@linux-foundation.org: fix drivers/isdn/capi/kcapi_proc.c]
    [sfr@canb.auug.org.au: fix kernel/sched/psi.c]
    Link: http://lkml.kernel.org/r/20200122180545.36222f50@canb.auug.org.au
    Link: http://lkml.kernel.org/r/20191225172546.GB13378@avx2
    Signed-off-by: Alexey Dobriyan
    Signed-off-by: Stephen Rothwell
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Alexey Dobriyan
     
  • In old days, the "host-progs" syntax was used for specifying host
    programs. It was renamed to the current "hostprogs-y" in 2004.

    It is typically useful in scripts/Makefile because it allows Kbuild to
    selectively compile host programs based on the kernel configuration.

    This commit renames like follows:

    always -> always-y
    hostprogs-y -> hostprogs

    So, scripts/Makefile will look like this:

    always-$(CONFIG_BUILD_BIN2C) += ...
    always-$(CONFIG_KALLSYMS) += ...
    ...
    hostprogs := $(always-y) $(always-m)

    I think this makes more sense because a host program is always a host
    program, irrespective of the kernel configuration. We want to specify
    which ones to compile by CONFIG options, so always-y will be handier.

    The "always", "hostprogs-y", "hostprogs-m" will be kept for backward
    compatibility for a while.

    Signed-off-by: Masahiro Yamada

    Masahiro Yamada
     

31 Jan, 2020

1 commit

  • Pull drm updates from Davbe Airlie:
    "This is the main pull request for graphics for 5.6. Usual selection of
    changes all over.

    I've got one outstanding vmwgfx pull that touches mm so kept it
    separate until after all of this lands. I'll try and get it to you
    soon after this, but it might be early next week (nothing wrong with
    code, just my schedule is messy)

    This also hits a lot of fbdev drivers with some cleanups.

    Other notables:
    - vulkan timeline semaphore support added to syncobjs
    - nouveau turing secureboot/graphics support
    - Displayport MST display stream compression support

    Detailed summary:

    uapi:
    - dma-buf heaps added (and fixed)
    - command line add support for panel oreientation
    - command line allow overriding penguin count

    drm:
    - mipi dsi definition updates
    - lockdep annotations for dma_resv
    - remove dma-buf kmap/kunmap support
    - constify fb_ops in all fbdev drivers
    - MST fix for daisy chained hotplug-
    - CTA-861-G modes with VIC >= 193 added
    - fix drm_panel_of_backlight export
    - LVDS decoder support
    - more device based logging support
    - scanline alighment for dumb buffers
    - MST DSC helpers

    scheduler:
    - documentation fixes
    - job distribution improvements

    panel:
    - Logic PD type 28 panel support
    - Jimax8729d MIPI-DSI
    - igenic JZ4770
    - generic DSI devicetree bindings
    - sony acx424AKP panel
    - Leadtek LTK500HD1829
    - xinpeng XPP055C272
    - AUO B116XAK01
    - GiantPlus GPM940B0
    - BOE NV140FHM-N49
    - Satoz SAT050AT40H12R2
    - Sharp LS020B1DD01D panels.

    ttm:
    - use blocking WW lock

    i915:
    - hw/uapi state separation
    - Lock annotation improvements
    - selftest improvements
    - ICL/TGL DSI VDSC support
    - VBT parsing improvments
    - Display refactoring
    - DSI updates + fixes
    - HDCP 2.2 for CFL
    - CML PCI ID fixes
    - GLK+ fbc fix
    - PSR fixes
    - GEN/GT refactor improvments
    - DP MST fixes
    - switch context id alloc to xarray
    - workaround updates
    - LMEM debugfs support
    - tiled monitor fixes
    - ICL+ clock gating programming removed
    - DP MST disable sequence fixed
    - LMEM discontiguous object maps
    - prefaulting for discontiguous objects
    - use LMEM for dumb buffers if possible
    - add LMEM mmap support

    amdgpu:
    - enable sync object timelines for vulkan
    - MST atomic routines
    - enable MST DSC support
    - add DMCUB display microengine support
    - DC OEM i2c support
    - Renoir DC fixes
    - Initial HDCP 2.x support
    - BACO support for Arcturus
    - Use BACO for runtime PM power save
    - gfxoff on navi10
    - gfx10 golden updates and fixes
    - DCN support on POWER
    - GFXOFF for raven1 refresh
    - MM engine idle handlers cleanup
    - 10bpc EDP panel fixes
    - renoir watermark fixes
    - SR-IOV fixes
    - Arcturus VCN fixes
    - GDDR6 training fixes
    - freesync fixes
    - Pollock support

    amdkfd:
    - unify more codepath with amdgpu
    - use KIQ to setup HIQ rather than MMIO

    radeon:
    - fix vma fault handler race
    - PPC DMA fix
    - register check fixes for r100/r200

    nouveau:
    - mmap_sem vs dma_resv fix
    - rewrite the ACR secure boot code for Turing
    - TU10x graphics engine support (TU11x pending)
    - Page kind mapping for turing
    - 10-bit LUT support
    - GP10B Tegra fixes
    - HD audio regression fix

    hisilicon/hibmc:
    - use generic fbdev code and helpers

    rockchip:
    - dsi/px30 support

    virtio:
    - fb damage support
    - static some functions

    vc4:
    - use dma_resv lock wrappers

    msm:
    - use dma_resv lock wrappers
    - sc7180 display + DSI support
    - a618 support
    - UBWC support improvements

    vmwgfx:
    - updates + new logging uapi

    exynos:
    - enable/disable callback cleanups

    etnaviv:
    - use dma_resv lock wrappers

    atmel-hlcdc:
    - clock fixes

    mediatek:
    - cmdq support
    - non-smooth cursor fixes
    - ctm property support

    sun4i:
    - suspend support
    - A64 mipi dsi support

    rcar-du:
    - Color management module support
    - LVDS encoder dual-link support
    - R8A77980 support

    analogic:
    - add support for an6345

    ast:
    - atomic modeset support
    - primary plane garbage fix

    arcgpu:
    - fixes for fourcc handling

    tegra:
    - minor fixes and improvments

    mcde:
    - vblank support

    meson:
    - OSD1 plane AFBC commit

    gma500:
    - add pageflip support
    - reomve global drm_dev

    komeda:
    - tweak debugfs output
    - d32 support
    - runtime PM suppotr

    udl:
    - use generic shmem helpers
    - cleanup and fixes"

    * tag 'drm-next-2020-01-30' of git://anongit.freedesktop.org/drm/drm: (1998 commits)
    drm/nouveau/fb/gp102-: allow module to load even when scrubber binary is missing
    drm/nouveau/acr: return error when registering LSF if ACR not supported
    drm/nouveau/disp/gv100-: not all channel types support reporting error codes
    drm/nouveau/disp/nv50-: prevent oops when no channel method map provided
    drm/nouveau: support synchronous pushbuf submission
    drm/nouveau: signal pending fences when channel has been killed
    drm/nouveau: reject attempts to submit to dead channels
    drm/nouveau: zero vma pointer even if we only unreference it rather than free
    drm/nouveau: Add HD-audio component notifier support
    drm/nouveau: fix build error without CONFIG_IOMMU_API
    drm/nouveau/kms/nv04: remove set but not used variable 'width'
    drm/nouveau/kms/nv50: remove set but not unused variable 'nv_connector'
    drm/nouveau/mmu: fix comptag memory leak
    drm/nouveau/gr/gp10b: Use gp100_grctx and gp100_gr_zbc
    drm/nouveau/pmu/gm20b,gp10b: Fix Falcon bootstrapping
    drm/exynos: Rename Exynos to lowercase
    drm/exynos: change callback names
    drm/mst: Don't do atomic checks over disabled managers
    drm/amdgpu: add the lost mutex_init back
    drm/amd/display: skip opp blank or unblank if test pattern enabled
    ...

    Linus Torvalds
     

30 Jan, 2020

1 commit


29 Jan, 2020

1 commit

  • Pull networking updates from David Miller:

    1) Add WireGuard

    2) Add HE and TWT support to ath11k driver, from John Crispin.

    3) Add ESP in TCP encapsulation support, from Sabrina Dubroca.

    4) Add variable window congestion control to TIPC, from Jon Maloy.

    5) Add BCM84881 PHY driver, from Russell King.

    6) Start adding netlink support for ethtool operations, from Michal
    Kubecek.

    7) Add XDP drop and TX action support to ena driver, from Sameeh
    Jubran.

    8) Add new ipv4 route notifications so that mlxsw driver does not have
    to handle identical routes itself. From Ido Schimmel.

    9) Add BPF dynamic program extensions, from Alexei Starovoitov.

    10) Support RX and TX timestamping in igc, from Vinicius Costa Gomes.

    11) Add support for macsec HW offloading, from Antoine Tenart.

    12) Add initial support for MPTCP protocol, from Christoph Paasch,
    Matthieu Baerts, Florian Westphal, Peter Krystad, and many others.

    13) Add Octeontx2 PF support, from Sunil Goutham, Geetha sowjanya, Linu
    Cherian, and others.

    * git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net-next: (1469 commits)
    net: phy: add default ARCH_BCM_IPROC for MDIO_BCM_IPROC
    udp: segment looped gso packets correctly
    netem: change mailing list
    qed: FW 8.42.2.0 debug features
    qed: rt init valid initialization changed
    qed: Debug feature: ilt and mdump
    qed: FW 8.42.2.0 Add fw overlay feature
    qed: FW 8.42.2.0 HSI changes
    qed: FW 8.42.2.0 iscsi/fcoe changes
    qed: Add abstraction for different hsi values per chip
    qed: FW 8.42.2.0 Additional ll2 type
    qed: Use dmae to write to widebus registers in fw_funcs
    qed: FW 8.42.2.0 Parser offsets modified
    qed: FW 8.42.2.0 Queue Manager changes
    qed: FW 8.42.2.0 Expose new registers and change windows
    qed: FW 8.42.2.0 Internal ram offsets modifications
    MAINTAINERS: Add entry for Marvell OcteonTX2 Physical Function driver
    Documentation: net: octeontx2: Add RVU HW and drivers overview
    octeontx2-pf: ethtool RSS config support
    octeontx2-pf: Add basic ethtool support
    ...

    Linus Torvalds
     

28 Jan, 2020

1 commit

  • Pull livepatching updates from Jiri Kosina:
    "Fixes for selftests and samples for 'shadow variables' livepatching
    feature, from Petr Mladek"

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/livepatching/livepatching:
    livepatch: Handle allocation failure in the sample of shadow variable API
    livepatch/samples/selftest: Use klp_shadow_alloc() API correctly
    livepatch/selftest: Clean up shadow variable names and type
    livepatch/sample: Use the right type for the leaking data pointer

    Linus Torvalds
     

23 Jan, 2020

1 commit

  • Alexei Starovoitov says:

    ====================
    pull-request: bpf-next 2020-01-22

    The following pull-request contains BPF updates for your *net-next* tree.

    We've added 92 non-merge commits during the last 16 day(s) which contain
    a total of 320 files changed, 7532 insertions(+), 1448 deletions(-).

    The main changes are:

    1) function by function verification and program extensions from Alexei.

    2) massive cleanup of selftests/bpf from Toke and Andrii.

    3) batched bpf map operations from Brian and Yonghong.

    4) tcp congestion control in bpf from Martin.

    5) bulking for non-map xdp_redirect form Toke.

    6) bpf_send_signal_thread helper from Yonghong.
    ====================

    Signed-off-by: David S. Miller

    David S. Miller
     

22 Jan, 2020

1 commit

  • The code in the 'samples' subdirectory isn't part of the kernel, so
    there's no need to validate it.

    Reported-by: Randy Dunlap
    Signed-off-by: Josh Poimboeuf
    Signed-off-by: Ingo Molnar
    Link: https://lore.kernel.org/r/c4cb4ef635ec606454ab834cb49fc3e9381fb1b1.1579543924.git.jpoimboe@redhat.com

    Josh Poimboeuf
     

21 Jan, 2020

2 commits

  • Fix all files in samples/bpf to include libbpf header files with the bpf/
    prefix, to be consistent with external users of the library. Also ensure
    that all includes of exported libbpf header files (those that are exported
    on 'make install' of the library) use bracketed includes instead of quoted.

    To make sure no new files are introduced that doesn't include the bpf/
    prefix in its include, remove tools/lib/bpf from the include path entirely,
    and use tools/lib instead.

    Fixes: 6910d7d3867a ("selftests/bpf: Ensure bpf_helper_defs.h are taken from selftests dir")
    Signed-off-by: Toke Høiland-Jørgensen
    Signed-off-by: Alexei Starovoitov
    Acked-by: Jesper Dangaard Brouer
    Acked-by: Andrii Nakryiko
    Link: https://lore.kernel.org/bpf/157952560911.1683545.8795966751309534150.stgit@toke.dk

    Toke Høiland-Jørgensen
     
  • The 'clean' rule in the samples/bpf Makefile tries to remove backup
    files (ending in ~). However, if no such files exist, it will instead try
    to remove the user's home directory. While the attempt is mostly harmless,
    it does lead to a somewhat scary warning like this:

    rm: cannot remove '~': Is a directory

    Fix this by using find instead of shell expansion to locate any actual
    backup files that need to be removed.

    Fixes: b62a796c109c ("samples/bpf: allow make to be run from samples/bpf/ directory")
    Signed-off-by: Toke Høiland-Jørgensen
    Signed-off-by: Alexei Starovoitov
    Acked-by: Jesper Dangaard Brouer
    Link: https://lore.kernel.org/bpf/157952560126.1683545.7273054725976032511.stgit@toke.dk

    Toke Høiland-Jørgensen
     

20 Jan, 2020

1 commit


17 Jan, 2020

4 commits

  • klp_shadow_alloc() is not handled in the sample of shadow variable API.
    It is not strictly necessary because livepatch_fix1_dummy_free() is
    able to handle the potential failure. But it is an example and it should
    use the API a clean way.

    Signed-off-by: Petr Mladek
    Reviewed-by: Joe Lawrence
    Acked-by: Miroslav Benes
    Reviewed-by: Kamalesh Babulal
    Signed-off-by: Jiri Kosina

    Petr Mladek
     
  • The commit e91c2518a5d22a ("livepatch: Initialize shadow variables
    safely by a custom callback") leads to the following static checker
    warning:

    samples/livepatch/livepatch-shadow-fix1.c:86 livepatch_fix1_dummy_alloc()
    error: 'klp_shadow_alloc()' 'leak' too small (4 vs 8)

    It is because klp_shadow_alloc() is used a wrong way:

    int *leak;
    shadow_leak = klp_shadow_alloc(d, SV_LEAK, sizeof(leak), GFP_KERNEL,
    shadow_leak_ctor, leak);

    The code is supposed to store the "leak" pointer into the shadow variable.
    3rd parameter correctly passes size of the data (size of pointer). But
    the 5th parameter is wrong. It should pass pointer to the data (pointer
    to the pointer) but it passes the pointer directly.

    It works because shadow_leak_ctor() handle "ctor_data" as the data
    instead of pointer to the data. But it is semantically wrong and
    confusing.

    The same problem is also in the module used by selftests. In this case,
    "pvX" variables are introduced. They represent the data stored in
    the shadow variables.

    Reported-by: Dan Carpenter
    Signed-off-by: Petr Mladek
    Reviewed-by: Joe Lawrence
    Acked-by: Miroslav Benes
    Reviewed-by: Kamalesh Babulal
    Signed-off-by: Jiri Kosina

    Petr Mladek
     
  • The "leak" pointer, in the sample of shadow variable API, is allocated
    as sizeof(int). Let's help developers and static analyzers with
    understanding the code by using the appropriate pointer type.

    Reported-by: Dan Carpenter
    Signed-off-by: Petr Mladek
    Reviewed-by: Joe Lawrence
    Acked-by: Miroslav Benes
    Reviewed-by: Kamalesh Babulal
    Signed-off-by: Jiri Kosina

    Petr Mladek
     
  • Now that we don't have a reference to a devmap when flushing the device
    bulk queue, let's change the the devmap_xmit tracepoint to remote the
    map_id and map_index fields entirely. Rearrange the fields so 'drops' and
    'sent' stay in the same position in the tracepoint struct, to make it
    possible for the xdp_monitor utility to read both the old and the new
    format.

    Signed-off-by: Jesper Dangaard Brouer
    Signed-off-by: Toke Høiland-Jørgensen
    Signed-off-by: Alexei Starovoitov
    Link: https://lore.kernel.org/bpf/157918768613.1458396.9165902403373826572.stgit@toke.dk

    Jesper Dangaard Brouer
     

10 Jan, 2020

1 commit


03 Jan, 2020

1 commit

  • The sizes by which seccomp_notif and seccomp_notif_resp are allocated are
    based on the SECCOMP_GET_NOTIF_SIZES ioctl. This allows for graceful
    extension of these datastructures. If userspace zeroes out the
    datastructure based on its version, and it is lagging behind the kernel's
    version, it will end up sending trailing garbage. On the other hand,
    if it is ahead of the kernel version, it will write extra zero space,
    and potentially cause corruption.

    Signed-off-by: Sargun Dhillon
    Suggested-by: Tycho Andersen
    Link: https://lore.kernel.org/r/20191230203503.4925-1-sargun@sargun.me
    Fixes: fec7b6690541 ("samples: add an example of seccomp user trap")
    Cc: stable@vger.kernel.org
    Signed-off-by: Kees Cook

    Sargun Dhillon
     

28 Dec, 2019

1 commit

  • Daniel Borkmann says:

    ====================
    pull-request: bpf-next 2019-12-27

    The following pull-request contains BPF updates for your *net-next* tree.

    We've added 127 non-merge commits during the last 17 day(s) which contain
    a total of 110 files changed, 6901 insertions(+), 2721 deletions(-).

    There are three merge conflicts. Conflicts and resolution looks as follows:

    1) Merge conflict in net/bpf/test_run.c:

    There was a tree-wide cleanup c593642c8be0 ("treewide: Use sizeof_field() macro")
    which gets in the way with b590cb5f802d ("bpf: Switch to offsetofend in
    BPF_PROG_TEST_RUN"):

    <<<<<<< HEAD
    if (!range_is_zero(__skb, offsetof(struct __sk_buff, priority) +
    sizeof_field(struct __sk_buff, priority),
    =======
    if (!range_is_zero(__skb, offsetofend(struct __sk_buff, priority),
    >>>>>>> 7c8dce4b166113743adad131b5a24c4acc12f92c

    There are a few occasions that look similar to this. Always take the chunk with
    offsetofend(). Note that there is one where the fields differ in here:

    <<<<<<< HEAD
    if (!range_is_zero(__skb, offsetof(struct __sk_buff, tstamp) +
    sizeof_field(struct __sk_buff, tstamp),
    =======
    if (!range_is_zero(__skb, offsetofend(struct __sk_buff, gso_segs),
    >>>>>>> 7c8dce4b166113743adad131b5a24c4acc12f92c

    Just take the one with offsetofend() /and/ gso_segs. Latter is correct due to
    850a88cc4096 ("bpf: Expose __sk_buff wire_len/gso_segs to BPF_PROG_TEST_RUN").

    2) Merge conflict in arch/riscv/net/bpf_jit_comp.c:

    (I'm keeping Bjorn in Cc here for a double-check in case I got it wrong.)

    <<<<<<< HEAD
    if (is_13b_check(off, insn))
    return -1;
    emit(rv_blt(tcc, RV_REG_ZERO, off >> 1), ctx);
    =======
    emit_branch(BPF_JSLT, RV_REG_T1, RV_REG_ZERO, off, ctx);
    >>>>>>> 7c8dce4b166113743adad131b5a24c4acc12f92c

    Result should look like:

    emit_branch(BPF_JSLT, tcc, RV_REG_ZERO, off, ctx);

    3) Merge conflict in arch/riscv/include/asm/pgtable.h:

    <<<<<<< HEAD
    =======
    #define VMALLOC_SIZE (KERN_VIRT_SIZE >> 1)
    #define VMALLOC_END (PAGE_OFFSET - 1)
    #define VMALLOC_START (PAGE_OFFSET - VMALLOC_SIZE)

    #define BPF_JIT_REGION_SIZE (SZ_128M)
    #define BPF_JIT_REGION_START (PAGE_OFFSET - BPF_JIT_REGION_SIZE)
    #define BPF_JIT_REGION_END (VMALLOC_END)

    /*
    * Roughly size the vmemmap space to be large enough to fit enough
    * struct pages to map half the virtual address space. Then
    * position vmemmap directly below the VMALLOC region.
    */
    #define VMEMMAP_SHIFT \
    (CONFIG_VA_BITS - PAGE_SHIFT - 1 + STRUCT_PAGE_MAX_SHIFT)
    #define VMEMMAP_SIZE BIT(VMEMMAP_SHIFT)
    #define VMEMMAP_END (VMALLOC_START - 1)
    #define VMEMMAP_START (VMALLOC_START - VMEMMAP_SIZE)

    #define vmemmap ((struct page *)VMEMMAP_START)

    >>>>>>> 7c8dce4b166113743adad131b5a24c4acc12f92c

    Only take the BPF_* defines from there and move them higher up in the
    same file. Remove the rest from the chunk. The VMALLOC_* etc defines
    got moved via 01f52e16b868 ("riscv: define vmemmap before pfn_to_page
    calls"). Result:

    [...]
    #define __S101 PAGE_READ_EXEC
    #define __S110 PAGE_SHARED_EXEC
    #define __S111 PAGE_SHARED_EXEC

    #define VMALLOC_SIZE (KERN_VIRT_SIZE >> 1)
    #define VMALLOC_END (PAGE_OFFSET - 1)
    #define VMALLOC_START (PAGE_OFFSET - VMALLOC_SIZE)

    #define BPF_JIT_REGION_SIZE (SZ_128M)
    #define BPF_JIT_REGION_START (PAGE_OFFSET - BPF_JIT_REGION_SIZE)
    #define BPF_JIT_REGION_END (VMALLOC_END)

    /*
    * Roughly size the vmemmap space to be large enough to fit enough
    * struct pages to map half the virtual address space. Then
    * position vmemmap directly below the VMALLOC region.
    */
    #define VMEMMAP_SHIFT \
    (CONFIG_VA_BITS - PAGE_SHIFT - 1 + STRUCT_PAGE_MAX_SHIFT)
    #define VMEMMAP_SIZE BIT(VMEMMAP_SHIFT)
    #define VMEMMAP_END (VMALLOC_START - 1)
    #define VMEMMAP_START (VMALLOC_START - VMEMMAP_SIZE)

    [...]

    Let me know if there are any other issues.

    Anyway, the main changes are:

    1) Extend bpftool to produce a struct (aka "skeleton") tailored and specific
    to a provided BPF object file. This provides an alternative, simplified API
    compared to standard libbpf interaction. Also, add libbpf extern variable
    resolution for .kconfig section to import Kconfig data, from Andrii Nakryiko.

    2) Add BPF dispatcher for XDP which is a mechanism to avoid indirect calls by
    generating a branch funnel as discussed back in bpfconf'19 at LSF/MM. Also,
    add various BPF riscv JIT improvements, from Björn Töpel.

    3) Extend bpftool to allow matching BPF programs and maps by name,
    from Paul Chaignon.

    4) Support for replacing cgroup BPF programs attached with BPF_F_ALLOW_MULTI
    flag for allowing updates without service interruption, from Andrey Ignatov.

    5) Cleanup and simplification of ring access functions for AF_XDP with a
    bonus of 0-5% performance improvement, from Magnus Karlsson.

    6) Enable BPF JITs for x86-64 and arm64 by default. Also, final version of
    audit support for BPF, from Daniel Borkmann and latter with Jiri Olsa.

    7) Move and extend test_select_reuseport into BPF program tests under
    BPF selftests, from Jakub Sitnicki.

    8) Various BPF sample improvements for xdpsock for customizing parameters
    to set up and benchmark AF_XDP, from Jay Jayatheerthan.

    9) Improve libbpf to provide a ulimit hint on permission denied errors.
    Also change XDP sample programs to attach in driver mode by default,
    from Toke Høiland-Jørgensen.

    10) Extend BPF test infrastructure to allow changing skb mark from tc BPF
    programs, from Nikita V. Shirokov.

    11) Optimize prologue code sequence in BPF arm32 JIT, from Russell King.

    12) Fix xdp_redirect_cpu BPF sample to manually attach to tracepoints after
    libbpf conversion, from Jesper Dangaard Brouer.

    13) Minor misc improvements from various others.
    ====================

    Signed-off-by: David S. Miller

    David S. Miller
     

23 Dec, 2019

1 commit

  • Pull networking fixes from David Miller:

    1) Several nf_flow_table_offload fixes from Pablo Neira Ayuso,
    including adding a missing ipv6 match description.

    2) Several heap overflow fixes in mwifiex from qize wang and Ganapathi
    Bhat.

    3) Fix uninit value in bond_neigh_init(), from Eric Dumazet.

    4) Fix non-ACPI probing of nxp-nci, from Stephan Gerhold.

    5) Fix use after free in tipc_disc_rcv(), from Tuong Lien.

    6) Enforce limit of 33 tail calls in mips and riscv JIT, from Paul
    Chaignon.

    7) Multicast MAC limit test is off by one in qede, from Manish Chopra.

    8) Fix established socket lookup race when socket goes from
    TCP_ESTABLISHED to TCP_LISTEN, because there lacks an intervening
    RCU grace period. From Eric Dumazet.

    9) Don't send empty SKBs from tcp_write_xmit(), also from Eric Dumazet.

    10) Fix active backup transition after link failure in bonding, from
    Mahesh Bandewar.

    11) Avoid zero sized hash table in gtp driver, from Taehee Yoo.

    12) Fix wrong interface passed to ->mac_link_up(), from Russell King.

    13) Fix DSA egress flooding settings in b53, from Florian Fainelli.

    14) Memory leak in gmac_setup_txqs(), from Navid Emamdoost.

    15) Fix double free in dpaa2-ptp code, from Ioana Ciornei.

    16) Reject invalid MTU values in stmmac, from Jose Abreu.

    17) Fix refcount leak in error path of u32 classifier, from Davide
    Caratti.

    18) Fix regression causing iwlwifi firmware crashes on boot, from Anders
    Kaseorg.

    19) Fix inverted return value logic in llc2 code, from Chan Shu Tak.

    20) Disable hardware GRO when XDP is attached to qede, frm Manish
    Chopra.

    21) Since we encode state in the low pointer bits, dst metrics must be
    at least 4 byte aligned, which is not necessarily true on m68k. Add
    annotations to fix this, from Geert Uytterhoeven.

    * git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net: (160 commits)
    sfc: Include XDP packet headroom in buffer step size.
    sfc: fix channel allocation with brute force
    net: dst: Force 4-byte alignment of dst_metrics
    selftests: pmtu: fix init mtu value in description
    hv_netvsc: Fix unwanted rx_table reset
    net: phy: ensure that phy IDs are correctly typed
    mod_devicetable: fix PHY module format
    qede: Disable hardware gro when xdp prog is installed
    net: ena: fix issues in setting interrupt moderation params in ethtool
    net: ena: fix default tx interrupt moderation interval
    net/smc: unregister ib devices in reboot_event
    net: stmmac: platform: Fix MDIO init for platforms without PHY
    llc2: Fix return statement of llc_stat_ev_rx_null_dsap_xid_c (and _test_c)
    net: hisilicon: Fix a BUG trigered by wrong bytes_compl
    net: dsa: ksz: use common define for tag len
    s390/qeth: don't return -ENOTSUPP to userspace
    s390/qeth: fix promiscuous mode after reset
    s390/qeth: handle error due to unsupported transport mode
    cxgb4: fix refcount init for TC-MQPRIO offload
    tc-testing: initial tdc selftests for cls_u32
    ...

    Linus Torvalds
     

22 Dec, 2019

1 commit

  • trace_printk schedules work via irq_work_queue(), but doesn't
    wait until it was processed. The kprobe_module.tc testcase does:

    :;: "Load module again, which means the event1 should be recorded";:
    modprobe trace-printk
    grep "event1:" trace

    so the grep which checks the trace file might run before the irq work
    was processed. Fix this by adding a irq_work_sync().

    Link: http://lore.kernel.org/linux-trace-devel/20191218074427.96184-3-svens@linux.ibm.com

    Cc: stable@vger.kernel.org
    Fixes: af2a0750f3749 ("selftests/ftrace: Improve kprobe on module testcase to load/unload module")
    Signed-off-by: Sven Schnelle
    Signed-off-by: Steven Rostedt (VMware)

    Sven Schnelle
     

21 Dec, 2019

7 commits

  • When sample xdp_redirect_cpu was converted to use libbpf, the
    tracepoints used by this sample were not getting attached automatically
    like with bpf_load.c. The BPF-maps was still getting loaded, thus
    nobody notice that the tracepoints were not updating these maps.

    This fix doesn't use the new skeleton code, as this bug was introduced
    in v5.1 and stable might want to backport this. E.g. Red Hat QA uses
    this sample as part of their testing.

    Fixes: bbaf6029c49c ("samples/bpf: Convert XDP samples to libbpf usage")
    Signed-off-by: Jesper Dangaard Brouer
    Signed-off-by: Alexei Starovoitov
    Acked-by: Andrii Nakryiko
    Link: https://lore.kernel.org/bpf/157685877642.26195.2798780195186786841.stgit@firesoul

    Jesper Dangaard Brouer
     
  • The UDP payload fill pattern can be specified using '-P' or '--tx-pkt-pattern'
    option. It is an unsigned 32 bit field and defaulted to 0x12345678.

    The IP and UDP checksum is calculated by the code as per the content of
    the packet before transmission.

    Signed-off-by: Jay Jayatheerthan
    Signed-off-by: Alexei Starovoitov
    Link: https://lore.kernel.org/bpf/20191220085530.4980-7-jay.jayatheerthan@intel.com

    Jay Jayatheerthan
     
  • New option '-s' or '--tx-pkt-size' has been added to specify the transmit
    packet size. The packet size ranges from 47 to 4096 bytes. When this
    option is not provided, it defaults to 64 byte packet.

    The code uses struct ethhdr, struct iphdr and struct udphdr to form the
    transmit packet. The MAC address, IP address and UDP ports are set to default
    values.

    The code calculates IP and UDP checksums before sending the packet.
    Checksum calculation code in Linux kernel is used for this purpose.
    The Ethernet FCS is not filled by the code.

    Signed-off-by: Jay Jayatheerthan
    Signed-off-by: Alexei Starovoitov
    Link: https://lore.kernel.org/bpf/20191220085530.4980-6-jay.jayatheerthan@intel.com

    Jay Jayatheerthan
     
  • Use '-C' or '--tx-pkt-count' to specify number of packets to send.
    If it is not specified, the application sends packets forever. If packet
    count is not a multiple of batch size, last batch sent is less than the
    batch size.

    Signed-off-by: Jay Jayatheerthan
    Signed-off-by: Alexei Starovoitov
    Link: https://lore.kernel.org/bpf/20191220085530.4980-5-jay.jayatheerthan@intel.com

    Jay Jayatheerthan
     
  • New option to specify batch size for tx, rx and l2fwd has been added. This
    allows fine tuning to maximize performance. It is specified using '-b' or
    '--batch_size' options. When not specified default is 64.

    Signed-off-by: Jay Jayatheerthan
    Signed-off-by: Alexei Starovoitov
    Link: https://lore.kernel.org/bpf/20191220085530.4980-4-jay.jayatheerthan@intel.com

    Jay Jayatheerthan
     
  • Add code to do cleanup for signals and application completion in a unified
    fashion. The signal handler sets benckmark_done flag terminating the
    threads. The cleanup is called before returning from main() function.

    Signed-off-by: Jay Jayatheerthan
    Signed-off-by: Alexei Starovoitov
    Link: https://lore.kernel.org/bpf/20191220085530.4980-3-jay.jayatheerthan@intel.com

    Jay Jayatheerthan
     
  • The application now supports '-d' or '--duration' option to specify number of
    seconds to run. This is used in tx, rx and l2fwd features. If this option is
    not provided, the application runs forever.

    Signed-off-by: Jay Jayatheerthan
    Signed-off-by: Alexei Starovoitov
    Link: https://lore.kernel.org/bpf/20191220085530.4980-2-jay.jayatheerthan@intel.com

    Jay Jayatheerthan
     

17 Dec, 2019

1 commit

  • drm-misc-next for v5.6:

    UAPI Changes:
    - Add support for DMA-BUF HEAPS.

    Cross-subsystem Changes:
    - mipi dsi definition updates, pulled into drm-intel as well.
    - Add lockdep annotations for dma_resv vs mmap_sem and fs_reclaim.
    - Remove support for dma-buf kmap/kunmap.
    - Constify fb_ops in all fbdev drivers, including drm drivers and drm-core, and media as well.

    Core Changes:
    - Small cleanups to ttm.
    - Fix SCDC definition.
    - Assorted cleanups to core.
    - Add todo to remove load/unload hooks, and use generic fbdev emulation.
    - Assorted documentation updates.
    - Use blocking ww lock in ttm fault handler.
    - Remove drm_fb_helper_fbdev_setup/teardown.
    - Warning fixes with W=1 for atomic.
    - Use drm_debug_enabled() instead of drm_debug flag testing in various drivers.
    - Fallback to nontiled mode in fbdev emulation when not all tiles are present. (Later on reverted)
    - Various kconfig indentation fixes in core and drivers.
    - Fix freeing transactions in dp-mst correctly.
    - Sean Paul is steping down as core maintainer. :-(
    - Add lockdep annotations for atomic locks vs dma-resv.
    - Prevent use-after-free for a bad job in drm_scheduler.
    - Fill out all block sizes in the P01x and P210 definitions.
    - Avoid division by zero in drm/rect, and fix bounds.
    - Add drm/rect selftests.
    - Add aspect ratio and alternate clocks for HDMI 4k modes.
    - Add todo for drm_framebuffer_funcs and fb_create cleanup.
    - Drop DRM_AUTH for prime import/export ioctls.
    - Clear DP-MST payload id tables downstream when initializating.
    - Fix for DSC throughput definition.
    - Add extra FEC definitions.
    - Fix fake offset in drm_gem_object_funs.mmap.
    - Stop using encoder->bridge in core directly
    - Handle bridge chaining slightly better.
    - Add backlight support to drm/panel, and use it in many panel drivers.
    - Increase max number of y420 modes from 128 to 256, as preparation to add the new modes.

    Driver Changes:
    - Small fixes all over.
    - Fix documentation in vkms.
    - Fix mmap_sem vs dma_resv in nouveau.
    - Small cleanup in komeda.
    - Add page flip support in gma500 for psb/cdv.
    - Add ddc symlink in the connector sysfs directory for many drivers.
    - Add support for analogic an6345, and fix small bugs in it.
    - Add atomic modesetting support to ast.
    - Fix radeon fault handler VMA race.
    - Switch udl to use generic shmem helpers.
    - Unconditional vblank handling for mcde.
    - Miscellaneous fixes to mcde.
    - Tweak debug output from komeda using debugfs.
    - Add gamma and color transform support to komeda for DOU-IPS.
    - Add support for sony acx424AKP panel.
    - Various small cleanups to gma500.
    - Use generic fbdev emulation in udl, and replace udl_framebuffer with generic implementation.
    - Add support for Logic PD Type 28 panel.
    - Use drm_panel_* wrapper functions in exynos/tegra/msm.
    - Add devicetree bindings for generic DSI panels.
    - Don't include drm_pci.h directly in many drivers.
    - Add support for begin/end_cpu_access in udmabuf.
    - Stop using drm_get_pci_dev in gma500 and mga200.
    - Fixes to UDL damage handling, and use dma_buf_begin/end_cpu_access.
    - Add devfreq thermal support to panfrost.
    - Fix hotplug with daisy chained monitors by removing VCPI when disabling topology manager.
    - meson: Add support for OSD1 plane AFBC commit.
    - Stop displaying garbage when toggling ast primary plane on/off.
    - More cleanups and fixes to UDL.
    - Add D32 suport to komeda.
    - Remove globle copy of drm_dev in gma500.
    - Add support for Boe Himax8279d MIPI-DSI LCD panel.
    - Add support for ingenic JZ4770 panel.
    - Small null pointer deference fix in ingenic.
    - Remove support for the special tfp420 driver, as there is a generic way to do it.

    Signed-off-by: Daniel Vetter

    From: Maarten Lankhorst
    Link: https://patchwork.freedesktop.org/patch/msgid/ba73535a-9334-5302-2e1f-5208bd7390bd@linux.intel.com

    Daniel Vetter
     

16 Dec, 2019

4 commits

  • When attaching XDP programs, userspace can set flags to request the attach
    mode (generic/SKB mode, driver mode or hw offloaded mode). If no such flags
    are requested, the kernel will attempt to attach in driver mode, and then
    silently fall back to SKB mode if this fails.

    The silent fallback is a major source of user confusion, as users will try
    to load a program on a device without XDP support, and instead of an error
    they will get the silent fallback behaviour, not notice, and then wonder
    why performance is not what they were expecting.

    In an attempt to combat this, let's switch all the samples to default to
    explicitly requesting driver-mode attach. As part of this, ensure that all
    the userspace utilities have a switch to enable SKB mode. For those that
    have a switch to request driver mode, keep it but turn it into a no-op.

    Signed-off-by: Toke Høiland-Jørgensen
    Signed-off-by: Alexei Starovoitov
    Acked-by: Jesper Dangaard Brouer
    Acked-by: David Ahern
    Link: https://lore.kernel.org/bpf/20191216110742.364456-1-toke@redhat.com

    Toke Høiland-Jørgensen
     
  • It seems Clang can in some cases turn on stack protection by default, which
    doesn't work with BPF. This was reported once before[0], but it seems the
    flag to explicitly turn off the stack protector wasn't added to the
    Makefile, so do that now.

    The symptom of this is compile errors like the following:

    error: :0:0: in function bpf_prog1 i32 (%struct.__sk_buff*): A call to built-in function '__stack_chk_fail' is not supported.

    [0] https://www.spinics.net/lists/netdev/msg556400.html

    Signed-off-by: Toke Høiland-Jørgensen
    Signed-off-by: Alexei Starovoitov
    Link: https://lore.kernel.org/bpf/20191216103819.359535-1-toke@redhat.com

    Toke Høiland-Jørgensen
     
  • Since libbpf now links against zlib, this needs to be included in the
    linker invocation for the userspace programs in samples/bpf that link
    statically against libbpf.

    Fixes: 166750bc1dd2 ("libbpf: Support libbpf-provided extern variables")
    Signed-off-by: Toke Høiland-Jørgensen
    Signed-off-by: Alexei Starovoitov
    Tested-by: Björn Töpel
    Link: https://lore.kernel.org/bpf/20191216102405.353834-1-toke@redhat.com

    Toke Høiland-Jørgensen
     
  • Add xdp_redirect and per_socket_stats_example in build targets.
    They got removed from build targets in Makefile reorganization.

    Fixes: 1d97c6c2511f ("samples/bpf: Base target programs rules on Makefile.target")
    Signed-off-by: Prashant Bhole
    Signed-off-by: Alexei Starovoitov
    Link: https://lore.kernel.org/bpf/20191216071619.25479-1-prashantbhole.linux@gmail.com

    Prashant Bhole