Skip to content
Snippets Groups Projects
  1. Jun 10, 2019
  2. Jun 09, 2019
    • André Valentin's avatar
      netsupport: add xfrmi interface support · ae3e232b
      André Valentin authored
      
      Add support for xfrm interfaces in kernel. XFRM interfaces are used by
      the IPsec stack for tunneling.
      XFRM interfaces are available since linux 4.19.
      
      Signed-off-by: default avatarAndré Valentin <avalentin@marcant.net>
      ae3e232b
    • Petr Štetiar's avatar
      kirkwood: image: fix unwanted 2nd inclusion of kernel · 0e1d07af
      Petr Štetiar authored
      In commit d2e18dae ("kirkwood: cleanup image build code") the image
      build code was refactored, setting KERNEL_IN_UBI=0 which doesn't work as
      the KERNEL_IN_UBI needs to be unset in order to make it working as
      intended, which leads to factory images with two kernels in them:
      
       binwalk --keep-going openwrt-kirkwood-cisco_on100-squashfs-factory.bin
       MD5 Checksum:  c33e3d1eb0cb632bf0a4dc287592eb70
       DECIMAL   	HEX       	DESCRIPTION
       -------------------------------------------------------------------------------
       0         	0x0       	uImage header [...] "ARM OpenWrt Linux-4.14.123"
       5769216   	0x580800  	uImage header [...] "ARM OpenWrt Linux-4.14.123"
      
      Cc: Mathias Kresin <dev@kresin.me>
      Ref: https://bugs.openwrt.org/index.php?do=details&task_id=2285
      
      
      Fixes: d2e18dae ("kirkwood: cleanup image build code")
      Signed-off-by: default avatarPetr Štetiar <ynezz@true.cz>
      0e1d07af
    • Petr Štetiar's avatar
      gpio-button-hotplug: gpio-keys: fix always missing first event · 6c5bfaac
      Petr Štetiar authored
      
      Commit afc056d7 ("gpio-button-hotplug: support interrupt
      properties") changed the gpio-keys interrupt handling logic in a way,
      that it always misses first event, which causes issues with rc.button
      scripts, so this patch restores the previous behaviour.
      
      Fixes: afc056d7 ("gpio-button-hotplug: support interrupt properties")
      Reported-by: default avatarKristian Evensen <kristian.evensen@gmail.com>
      Tested-by: default avatarKuan-Yi Li <kyli.tw@gmail.com>
      Signed-off-by: default avatarPetr Štetiar <ynezz@true.cz>
      Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [drop state check]
      6c5bfaac
    • Petr Štetiar's avatar
      gpio-button-hotplug: fix wrong initial seen value · 27d234a3
      Petr Štetiar authored
      
      Currently the generated event contains wrong seen value, when the button
      is pressed for the first time:
      
       rmmod gpio_button_hotplug; modprobe gpio_button_hotplug
       [ pressing the wps key immediately after modprobe ]
       gpio-keys: create event, name=wps, seen=1088, pressed=1
      
      So this patch adds a check for this corner case and makes seen=0 if the
      button is pressed for the first time.
      
      Tested-by: default avatarKuan-Yi Li <kyli.tw@gmail.com>
      Signed-off-by: default avatarPetr Štetiar <ynezz@true.cz>
      27d234a3
    • Petr Štetiar's avatar
      gpio-button-hotplug: use pr_debug and pr_err · 33ccfe0e
      Petr Štetiar authored
      
      pr_debug can be used with dynamic debugging.
      
      Tested-by: default avatarKuan-Yi Li <kyli.tw@gmail.com>
      Signed-off-by: default avatarPetr Štetiar <ynezz@true.cz>
      33ccfe0e
    • Yousong Zhou's avatar
      dnsmasq: skip options that are not compiled in · 0299a4b7
      Yousong Zhou authored
      
      This is to make life easier for users with customized build of
      dnsmasq-full variant.  Currently dnsmasq config generated by current
      service script will be rejected by dnsmasq build lacking DHCP feature
      
       - Options like --dhcp-leasefile have default values.  Deleting them
         from uci config or setting them to empty value will make them take on
         default value in the end
       - Options like --dhcp-broadcast are output unconditionally
      
      Tackle this by
      
       - Check availablility of features from output of "dnsmasq --version"
       - Make a list of options guarded by HAVE_xx macros in src/options.c of
         dnsmasq source code
       - Ignore these options in xappend()
      
      Two things to note in this implementation
      
       - The option list is not exhaustive.  Supposedly only those options that
         may cause dnsmasq to reject with "unsupported option (check that
         dnsmasq was compiled with DHCP/TFTP/DNSSEC/DBus support)" are taken
         into account here
       - This provides a way out but users' cooperation is still needed.  E.g.
         option dnssec needs to be turned off, otherwise the service script
         will try to add --conf-file pointing to dnssec specific anchor file
         which dnsmasq lacking dnssec support will reject
      
      Resolves FS#2281
      
      Signed-off-by: default avatarYousong Zhou <yszhou4tech@gmail.com>
      0299a4b7
  3. Jun 08, 2019
  4. Jun 07, 2019
    • Chen Minqiang's avatar
      kernel: re-add bridge allow reception on disabled port · de1431b5
      Chen Minqiang authored
      The "bridge allow reception on disabled port" implementation
      was broken after these commits:
      
      08802d93 ("kernel: bump 4.19 to 4.19.37")
      b765f4be ("kernel: bump 4.14 to 4.14.114")
      456f486b ("kernel: bump 4.9 to 4.9.171")
      
      This leads to issues when for example WDS is used, tied to a bridge:
      
      [ 96.503771] wlan1: send auth to d4:5f:25:eb:09:82 (try 1/3)
      [ 96.517956] wlan1: authenticated
      [ 96.526209] wlan1: associate with d4:5f:25:eb:09:82 (try 1/3)
      [ 97.086156] wlan1: associate with d4:5f:25:eb:09:82 (try 2/3)
      [ 97.200919] wlan1: RX AssocResp from d4:5f:25:eb:09:82 (capab=0x11 status=0 aid=1)
      [ 97.208706] wlan1: associated
      [ 101.312913] wlan1: deauthenticated from d4:5f:25:eb:09:82 (Reason: 2=PREV_AUTH_NOT_VALID)
      
      It seems upstream introduced a new patch, [1]
      so we have to reimplement these patches properly:
      
      target/linux/generic/pending-4.9/150-bridge_allow_receiption_on_disabled_port.patch
      target/linux/generic/pending-4.14/150-bridge_allow_receiption_on_disabled_port.patch
      target/linux/generic/pending-4.19/150-bridge_allow_receiption_on_disabled_port.patch
      
      [1] https://lkml.org/lkml/2019/4/24/1228
      
      
      
      Fixes: 08802d93 ("kernel: bump 4.19 to 4.19.37")
      Fixes: b765f4be ("kernel: bump 4.14 to 4.14.114")
      Fixes: 456f486b ("kernel: bump 4.9 to 4.9.171")
      Signed-off-by: default avatarChen Minqiang <ptpt52@gmail.com>
      [updated commit message and title]
      Signed-off-by: default avatarKoen Vandeputte <koen.vandeputte@ncentric.com>
      de1431b5
    • Kevin Darbyshire-Bryant's avatar
      iproute2: add tc action ctinfo support · 021a9b4c
      Kevin Darbyshire-Bryant authored
      
      Add the userspace control portion of the backported kernelspace
      act_ctinfo.
      
      ctinfo is a tc action restoring data stored in conntrack marks to
      various fields.  At present it has two independent modes of operation,
      restoration of DSCP into IPv4/v6 diffserv and restoration of conntrack
      marks into packet skb marks.
      
      It understands a number of parameters specific to this action in
      additional to the usual action syntax.  Each operating mode is
      independent of the other so all options are optional, however not
      specifying at least one mode is a bit pointless.
      
      Usage: ... ctinfo [dscp mask [statemask]] [cpmark [mask]] [zone ZONE]
      		  [CONTROL] [index <INDEX>]
      
      DSCP mode
      
      dscp enables copying of a DSCP stored in the conntrack mark into the
      ipv4/v6 diffserv field.  The mask is a 32bit field and specifies where
      in the conntrack mark the DSCP value is located.  It must be 6
      contiguous bits long. eg. 0xfc000000 would restore the DSCP from the
      upper 6 bits of the conntrack mark.
      
      The DSCP copying may be optionally controlled by a statemask.  The
      statemask is a 32bit field, usually with a single bit set and must not
      overlap the dscp mask.  The DSCP restore operation will only take place
      if the corresponding bit/s in conntrack mark ANDed with the statemask
      yield a non zero result.
      
      eg. dscp 0xfc000000 0x01000000 would retrieve the DSCP from the top 6
      bits, whilst using bit 25 as a flag to do so.  Bit 26 is unused in this
      example.
      
      CPMARK mode
      
      cpmark enables copying of the conntrack mark to the packet skb mark.  In
      this mode it is completely equivalent to the existing act_connmark
      action.  Additional functionality is provided by the optional mask
      parameter, whereby the stored conntrack mark is logically ANDed with the
      cpmark mask before being stored into skb mark.  This allows shared usage
      of the conntrack mark between applications.
      
      eg. cpmark 0x00ffffff would restore only the lower 24 bits of the
      conntrack mark, thus may be useful in the event that the upper 8 bits
      are used by the DSCP function.
      
      Usage: ... ctinfo [dscp mask [statemask]] [cpmark [mask]] [zone ZONE]
      		  [CONTROL] [index <INDEX>]
      where :
      	dscp MASK is the bitmask to restore DSCP
      	     STATEMASK is the bitmask to determine conditional restoring
      	cpmark MASK mask applied to restored packet mark
      	ZONE is the conntrack zone
      	CONTROL := reclassify | pipe | drop | continue | ok |
      		   goto chain <CHAIN_INDEX>
      
      Signed-off-by: default avatarKevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
      021a9b4c
  5. Jun 06, 2019
    • Kevin Darbyshire-Bryant's avatar
      kernel: backport act_ctinfo · b8a72dfd
      Kevin Darbyshire-Bryant authored
      
      ctinfo is a new tc filter action module.  It is designed to restore
      information contained in firewall conntrack marks to other packet fields
      and is typically used on packet ingress paths.  At present it has two
      independent sub-functions or operating modes, DSCP restoration mode &
      skb mark restoration mode.
      
      The DSCP restore mode:
      
      This mode copies DSCP values that have been placed in the firewall
      conntrack mark back into the IPv4/v6 diffserv fields of relevant
      packets.
      
      The DSCP restoration is intended for use and has been found useful for
      restoring ingress classifications based on egress classifications across
      links that bleach or otherwise change DSCP, typically home ISP Internet
      links.  Restoring DSCP on ingress on the WAN link allows qdiscs such as
      but by no means limited to CAKE to shape inbound packets according to
      policies that are easier to set & mark on egress.
      
      Ingress classification is traditionally a challenging task since
      iptables rules haven't yet run and tc filter/eBPF programs are pre-NAT
      lookups, hence are unable to see internal IPv4 addresses as used on the
      typical home masquerading gateway.  Thus marking the connection in some
      manner on egress for later restoration of classification on ingress is
      easier to implement.
      
      Parameters related to DSCP restore mode:
      
      dscpmask - a 32 bit mask of 6 contiguous bits and indicate bits of the
      conntrack mark field contain the DSCP value to be restored.
      
      statemask - a 32 bit mask of (usually) 1 bit length, outside the area
      specified by dscpmask.  This represents a conditional operation flag
      whereby the DSCP is only restored if the flag is set.  This is useful to
      implement a 'one shot' iptables based classification where the
      'complicated' iptables rules are only run once to classify the
      connection on initial (egress) packet and subsequent packets are all
      marked/restored with the same DSCP.  A mask of zero disables the
      conditional behaviour ie. the conntrack mark DSCP bits are always
      restored to the ip diffserv field (assuming the conntrack entry is found
      & the skb is an ipv4/ipv6 type)
      
      e.g. dscpmask 0xfc000000 statemask 0x01000000
      
      |----0xFC----conntrack mark----000000---|
      | Bits 31-26 | bit 25 | bit24 |~~~ Bit 0|
      | DSCP       | unused | flag  |unused   |
      |-----------------------0x01---000000---|
            |                   |
            |                   |
            ---|             Conditional flag
               v             only restore if set
      |-ip diffserv-|
      | 6 bits      |
      |-------------|
      
      The skb mark restore mode (cpmark):
      
      This mode copies the firewall conntrack mark to the skb's mark field.
      It is completely the functional equivalent of the existing act_connmark
      action with the additional feature of being able to apply a mask to the
      restored value.
      
      Parameters related to skb mark restore mode:
      
      mask - a 32 bit mask applied to the firewall conntrack mark to mask out
      bits unwanted for restoration.  This can be useful where the conntrack
      mark is being used for different purposes by different applications.  If
      not specified and by default the whole mark field is copied (i.e.
      default mask of 0xffffffff)
      
      e.g. mask 0x00ffffff to mask out the top 8 bits being used by the
      aforementioned DSCP restore mode.
      
      |----0x00----conntrack mark----ffffff---|
      | Bits 31-24 |                          |
      | DSCP & flag|      some value here     |
      |---------------------------------------|
      			|
      			|
      			v
      |------------skb mark-------------------|
      |            |                          |
      |  zeroed    |                          |
      |---------------------------------------|
      
      Overall parameters:
      
      zone - conntrack zone
      
      control - action related control (reclassify | pipe | drop | continue |
      ok | goto chain <CHAIN_INDEX>)
      
      Signed-off-by: default avatarKevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
      Reviewed-by: default avatarToke Høiland-Jørgensen <toke@redhat.com>
      Acked-by: default avatarCong Wang <xiyou.wangcong@gmail.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      
      Make suitable adjustments for backporting to 4.14 & 4.19
      and add to SCHED_MODULES_FILTER
      
      Signed-off-by: default avatarKevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
      b8a72dfd
    • Biwen Li's avatar
      layerscape: update patches-4.14 to LSDK 19.03 · 5159d719
      Biwen Li authored
      All patches of LSDK 19.03 were ported to Openwrt kernel.
      We still used an all-in-one patch for each IP/feature for
      OpenWrt.
      
      Below are the changes this patch introduced.
      - Updated original IP/feature patches to LSDK 19.03.
      - Added new IP/feature patches for eTSEC/PTP/TMU.
      - Squashed scattered patches into IP/feature patches.
      - Updated config-4.14 correspondingly.
      - Refreshed all patches.
      
      More info about LSDK and the kernel:
      - https://lsdk.github.io/components.html
      - https://source.codeaurora.org/external/qoriq/qoriq-components/linux
      
      
      
      Signed-off-by: default avatarBiwen Li <biwen.li@nxp.com>
      Signed-off-by: default avatarYangbo Lu <yangbo.lu@nxp.com>
      5159d719
    • Biwen Li's avatar
      layerscape: fix u-boot bootcmd · 639d127b
      Biwen Li authored
      
      Current latest LSDK-19.03 u-boot had a bug that bootcmd
      environment was always been reset when u-boot started up.
      This was found on boards with spi NOR boot. Before the
      proper fix-up is applied, we have to use a workaround
      to hard code the bootcmd for OpenWrt booting for now.
      
      Signed-off-by: default avatarBiwen Li <biwen.li@nxp.com>
      Signed-off-by: default avatarYangbo Lu <yangbo.lu@nxp.com>
      639d127b
    • Yangbo Lu's avatar
      layerscape: drop ppa package · 8468bf04
      Yangbo Lu authored
      
      Drop ppa package since TF-A is used instead.
      
      Signed-off-by: default avatarYangbo Lu <yangbo.lu@nxp.com>
      8468bf04
    • Biwen Li's avatar
      layerscape: convert to use TF-A for firmware · c07d3302
      Biwen Li authored
      
      This patch is to convert to use TF-A for firmware.
      - Use un-swapped rcw since swapping will be done in TF-A.
      - Use u-boot with TF-A defconfig.
      - Rework memory map for TF-A introduction.
      
      Signed-off-by: default avatarBiwen Li <biwen.li@nxp.com>
      Signed-off-by: default avatarYangbo Lu <yangbo.lu@nxp.com>
      c07d3302
    • Biwen Li's avatar
      layerscape: add ARM Trusted Firmware package · 17dcbe1b
      Biwen Li authored
      
      Add TF-A packages for Layerscape to implement trusted firmware.
      
      Signed-off-by: default avatarBiwen Li <biwen.li@nxp.com>
      Signed-off-by: default avatarYangbo Lu <yangbo.lu@nxp.com>
      17dcbe1b
    • Biwen Li's avatar
      layerscape: add rcw packages for ls1043ardb/ls1046ardb SD boot · f7f1f39c
      Biwen Li authored
      
      Add rcw packages for ls1043ardb/ls1046ardb SD boot.
      
      Signed-off-by: default avatarBiwen Li <biwen.li@nxp.com>
      Signed-off-by: default avatarYangbo Lu <yangbo.lu@nxp.com>
      f7f1f39c
    • Yangbo Lu's avatar
      layerscape: drop armv8_32b support · b4b53cd3
      Yangbo Lu authored
      
      NXP LSDK has decided to drop armv8_32b support considering
      few users are using it.
      
      Signed-off-by: default avatarYangbo Lu <yangbo.lu@nxp.com>
      b4b53cd3
    • Yangbo Lu's avatar
      layerscape: update restool to LSDK 19.03 · 9ad7c533
      Yangbo Lu authored
      
      Update restool to LSDK 19.03.
      
      Signed-off-by: default avatarYangbo Lu <yangbo.lu@nxp.com>
      9ad7c533
    • Biwen Li's avatar
      layerscape: update u-boot to LSDK 19.03 · 4b4b686b
      Biwen Li authored
      
      Update u-boot to LSDK 19.03.
      
      Signed-off-by: default avatarBiwen Li <biwen.li@nxp.com>
      Signed-off-by: default avatarYangbo Lu <yangbo.lu@nxp.com>
      4b4b686b
    • Biwen Li's avatar
      layerscape: update ppfe-firmware to LSDK 19.03 · fbb86509
      Biwen Li authored
      
      Update ppfe-firmware to LSDK 19.03.
      
      Signed-off-by: default avatarBiwen Li <biwen.li@nxp.com>
      Signed-off-by: default avatarYangbo Lu <yangbo.lu@nxp.com>
      fbb86509
    • Biwen Li's avatar
      layerscape: update ls-rcw to LSDK 19.03 · f4f4b053
      Biwen Li authored
      
      Update ls-rcw to LSDK 19.03.
      
      Signed-off-by: default avatarBiwen Li <biwen.li@nxp.com>
      Signed-off-by: default avatarYangbo Lu <yangbo.lu@nxp.com>
      f4f4b053
    • Biwen Li's avatar
      layerscape: update ls-mc to LSDK 19.03 · 584611e0
      Biwen Li authored
      
      Update to ls-mc to LSDK 19.03.
      
      Signed-off-by: default avatarBiwen Li <biwen.li@nxp.com>
      Signed-off-by: default avatarYangbo Lu <yangbo.lu@nxp.com>
      584611e0
    • Biwen Li's avatar
      layerscape: update ls-dpl to LSDK 19.03 · 1efc6f35
      Biwen Li authored
      
      Update ls-dpl to LSDK 19.03.
      
      Signed-off-by: default avatarBiwen Li <biwen.li@nxp.com>
      Signed-off-by: default avatarYangbo Lu <yangbo.lu@nxp.com>
      1efc6f35
    • Biwen Li's avatar
      layerscape: update fman-ucode to LSDK 19.03 · 5dd307af
      Biwen Li authored
      
      The source code was same from lsdk-1806 to lsdk-1903.
      
      Signed-off-by: default avatarBiwen Li <biwen.li@nxp.com>
      Signed-off-by: default avatarYangbo Lu <yangbo.lu@nxp.com>
      5dd307af
    • Yangbo Lu's avatar
      layerscape: remove POSIX_MQUEUE configs · d32ca554
      Yangbo Lu authored
      
      The POSIX_MQUEUE configs had been handled by OpenWrt
      configuration.
      
      Signed-off-by: default avatarYangbo Lu <yangbo.lu@nxp.com>
      d32ca554
    • Yangbo Lu's avatar
      kernel: handle CFQ_GROUP_IOSCHED/CGROUP_HUGETLB in config-4.14 · 65adf759
      Yangbo Lu authored
      
      The generic config-4.14 should handle below configs.
      - CONFIG_CFQ_GROUP_IOSCHED
      - CONFIG_CGROUP_HUGETLB
      
      Signed-off-by: default avatarYangbo Lu <yangbo.lu@nxp.com>
      65adf759
    • Sebastian Meiling's avatar
      kernel: add package for atusb wpan module · 239b79f6
      Sebastian Meiling authored
      
      This adds a new package for the kernel module of the ATUSB WPAN driver.
      
      Signed-off-by: default avatarSebastian Meiling <s@mlng.net>
      [fixed SoB: and From: mismatch]
      Signed-off-by: default avatarPetr Štetiar <ynezz@true.cz>
      239b79f6
    • Daniel Gonzalez Cabanelas's avatar
      brcm63xx: DVA-G3810BN/TL: Fix the WAN ethernet port · d1a015f8
      Daniel Gonzalez Cabanelas authored
      
      The WAN port has the wrong configuration in the kernel for the DVA-G3810BN/TL
      
      The WAN port uses the internal phy, but it isn't enabled at the kernel board data.
      
      Fix it.
      
      Signed-off-by: default avatarDaniel Gonzalez Cabanelas <dgcbueu@gmail.com>
      Signed-off-by: default avatarJonas Gorski <jonas.gorski@gmail.com>
      d1a015f8
    • Roman Yeryomin's avatar
      build: fix external module symbol collection if build_dir is a symlink · 94464cfc
      Roman Yeryomin authored
      
      e26ffb31 fixed only embedded modules
      symbol collection. If we are building external modules, like broadcom-wl
      or lantiq dsl stuff then modules which do EXPORT_SYMBOL have unresolved
      paths in Module.symvers and external module which depend on other
      external modules will have empty dependencies, leading to broken
      module loading.
      This was discussed on IRC with Jonas some time ago.
      Fix this by handling both resolved and unresolved paths.
      
      Fixes: e26ffb31 ("build: fix module symbol collection if build_dir is a symlink")
      Signed-off-by: default avatarRoman Yeryomin <roman@advem.lv>
      [jonas.gorski@gmail.com: add appropriate fixes tag]
      Signed-off-by: default avatarJonas Gorski <jonas.gorski@gmail.com>
      94464cfc
    • Kevin Darbyshire-Bryant's avatar
      Revert "kernel: backport act_ctinfo" · 24e09bac
      Kevin Darbyshire-Bryant authored
      
      This reverts commit 7c50182e.
      
      Produces build error:
      Package kmod-sched is missing dependencies for the following libraries:
      nf_conntrack.ko
      
      Signed-off-by: default avatarKevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
      24e09bac
    • Jo-Philipp Wich's avatar
      rpcd: fix init script reload action · f664d560
      Jo-Philipp Wich authored
      
      Drop the legacy start() and stop() procedures and define a proper
      reload signal action instead.
      
      Signed-off-by: default avatarJo-Philipp Wich <jo@mein.io>
      f664d560
    • Kevin Darbyshire-Bryant's avatar
      kernel: backport act_ctinfo · 7c50182e
      Kevin Darbyshire-Bryant authored
      
      ctinfo is a new tc filter action module.  It is designed to restore
      information contained in firewall conntrack marks to other packet fields
      and is typically used on packet ingress paths.  At present it has two
      independent sub-functions or operating modes, DSCP restoration mode &
      skb mark restoration mode.
      
      The DSCP restore mode:
      
      This mode copies DSCP values that have been placed in the firewall
      conntrack mark back into the IPv4/v6 diffserv fields of relevant
      packets.
      
      The DSCP restoration is intended for use and has been found useful for
      restoring ingress classifications based on egress classifications across
      links that bleach or otherwise change DSCP, typically home ISP Internet
      links.  Restoring DSCP on ingress on the WAN link allows qdiscs such as
      but by no means limited to CAKE to shape inbound packets according to
      policies that are easier to set & mark on egress.
      
      Ingress classification is traditionally a challenging task since
      iptables rules haven't yet run and tc filter/eBPF programs are pre-NAT
      lookups, hence are unable to see internal IPv4 addresses as used on the
      typical home masquerading gateway.  Thus marking the connection in some
      manner on egress for later restoration of classification on ingress is
      easier to implement.
      
      Parameters related to DSCP restore mode:
      
      dscpmask - a 32 bit mask of 6 contiguous bits and indicate bits of the
      conntrack mark field contain the DSCP value to be restored.
      
      statemask - a 32 bit mask of (usually) 1 bit length, outside the area
      specified by dscpmask.  This represents a conditional operation flag
      whereby the DSCP is only restored if the flag is set.  This is useful to
      implement a 'one shot' iptables based classification where the
      'complicated' iptables rules are only run once to classify the
      connection on initial (egress) packet and subsequent packets are all
      marked/restored with the same DSCP.  A mask of zero disables the
      conditional behaviour ie. the conntrack mark DSCP bits are always
      restored to the ip diffserv field (assuming the conntrack entry is found
      & the skb is an ipv4/ipv6 type)
      
      e.g. dscpmask 0xfc000000 statemask 0x01000000
      
      |----0xFC----conntrack mark----000000---|
      | Bits 31-26 | bit 25 | bit24 |~~~ Bit 0|
      | DSCP       | unused | flag  |unused   |
      |-----------------------0x01---000000---|
            |                   |
            |                   |
            ---|             Conditional flag
               v             only restore if set
      |-ip diffserv-|
      | 6 bits      |
      |-------------|
      
      The skb mark restore mode (cpmark):
      
      This mode copies the firewall conntrack mark to the skb's mark field.
      It is completely the functional equivalent of the existing act_connmark
      action with the additional feature of being able to apply a mask to the
      restored value.
      
      Parameters related to skb mark restore mode:
      
      mask - a 32 bit mask applied to the firewall conntrack mark to mask out
      bits unwanted for restoration.  This can be useful where the conntrack
      mark is being used for different purposes by different applications.  If
      not specified and by default the whole mark field is copied (i.e.
      default mask of 0xffffffff)
      
      e.g. mask 0x00ffffff to mask out the top 8 bits being used by the
      aforementioned DSCP restore mode.
      
      |----0x00----conntrack mark----ffffff---|
      | Bits 31-24 |                          |
      | DSCP & flag|      some value here     |
      |---------------------------------------|
      			|
      			|
      			v
      |------------skb mark-------------------|
      |            |                          |
      |  zeroed    |                          |
      |---------------------------------------|
      
      Overall parameters:
      
      zone - conntrack zone
      
      control - action related control (reclassify | pipe | drop | continue |
      ok | goto chain <CHAIN_INDEX>)
      
      Signed-off-by: default avatarKevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
      Reviewed-by: default avatarToke Høiland-Jørgensen <toke@redhat.com>
      Acked-by: default avatarCong Wang <xiyou.wangcong@gmail.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      
      Make suitable adjustments for backporting to 4.14 & 4.19
      
      Signed-off-by: default avatarKevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
      7c50182e
    • Petr Štetiar's avatar
      rpcd: update to the latest git head · dc8ec266
      Petr Štetiar authored
      
       89bfaa424606 Fix possible linker errors by using CMake find_library macro
       569284a119f9 session: handle NULL return values of crypt()
      
      Signed-off-by: default avatarPetr Štetiar <ynezz@true.cz>
      dc8ec266
  6. Jun 05, 2019
Loading