]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
fix up samsung patch in 4.11 queue
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 18 May 2017 13:15:11 +0000 (15:15 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 18 May 2017 13:15:11 +0000 (15:15 +0200)
queue-3.18/net-ipv6-add-sysctl-option-accept_ra_min_hop_limit.patch [deleted file]
queue-3.18/series
queue-4.11/serial-samsung-add-missing-checks-for-dma_map_single-failure.patch

diff --git a/queue-3.18/net-ipv6-add-sysctl-option-accept_ra_min_hop_limit.patch b/queue-3.18/net-ipv6-add-sysctl-option-accept_ra_min_hop_limit.patch
deleted file mode 100644 (file)
index b3108cf..0000000
+++ /dev/null
@@ -1,144 +0,0 @@
-From 8013d1d7eafb0589ca766db6b74026f76b7f5cb4 Mon Sep 17 00:00:00 2001
-From: Hangbin Liu <liuhangbin@gmail.com>
-Date: Thu, 30 Jul 2015 14:28:42 +0800
-Subject: net/ipv6: add sysctl option accept_ra_min_hop_limit
-
-From: Hangbin Liu <liuhangbin@gmail.com>
-
-commit 8013d1d7eafb0589ca766db6b74026f76b7f5cb4 upstream.
-
-Commit 6fd99094de2b ("ipv6: Don't reduce hop limit for an interface")
-disabled accept hop limit from RA if it is smaller than the current hop
-limit for security stuff. But this behavior kind of break the RFC definition.
-
-RFC 4861, 6.3.4.  Processing Received Router Advertisements
-   A Router Advertisement field (e.g., Cur Hop Limit, Reachable Time,
-   and Retrans Timer) may contain a value denoting that it is
-   unspecified.  In such cases, the parameter should be ignored and the
-   host should continue using whatever value it is already using.
-
-   If the received Cur Hop Limit value is non-zero, the host SHOULD set
-   its CurHopLimit variable to the received value.
-
-So add sysctl option accept_ra_min_hop_limit to let user choose the minimum
-hop limit value they can accept from RA. And set default to 1 to meet RFC
-standards.
-
-Signed-off-by: Hangbin Liu <liuhangbin@gmail.com>
-Acked-by: YOSHIFUJI Hideaki <hideaki.yoshifuji@miraclelinux.com>
-Signed-off-by: David S. Miller <davem@davemloft.net>
-Signed-off-by: Amit Pundir <amit.pundir@linaro.org>
-Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
----
- Documentation/networking/ip-sysctl.txt |    8 ++++++++
- include/linux/ipv6.h                   |    1 +
- include/uapi/linux/ipv6.h              |    1 +
- net/ipv6/addrconf.c                    |   10 ++++++++++
- net/ipv6/ndisc.c                       |   16 +++++++---------
- 5 files changed, 27 insertions(+), 9 deletions(-)
-
---- a/Documentation/networking/ip-sysctl.txt
-+++ b/Documentation/networking/ip-sysctl.txt
-@@ -1256,6 +1256,14 @@ accept_ra_from_local - BOOLEAN
-          disabled if accept_ra_from_local is disabled
-                on a specific interface.
-+accept_ra_min_hop_limit - INTEGER
-+      Minimum hop limit Information in Router Advertisement.
-+
-+      Hop limit Information in Router Advertisement less than this
-+      variable shall be ignored.
-+
-+      Default: 1
-+
- accept_ra_pinfo - BOOLEAN
-       Learn Prefix Information in Router Advertisement.
---- a/include/linux/ipv6.h
-+++ b/include/linux/ipv6.h
-@@ -29,6 +29,7 @@ struct ipv6_devconf {
-       __s32           max_desync_factor;
-       __s32           max_addresses;
-       __s32           accept_ra_defrtr;
-+      __s32           accept_ra_min_hop_limit;
-       __s32           accept_ra_pinfo;
- #ifdef CONFIG_IPV6_ROUTER_PREF
-       __s32           accept_ra_rtr_pref;
---- a/include/uapi/linux/ipv6.h
-+++ b/include/uapi/linux/ipv6.h
-@@ -164,6 +164,7 @@ enum {
-       DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL,
-       DEVCONF_SUPPRESS_FRAG_NDISC,
-       DEVCONF_ACCEPT_RA_FROM_LOCAL,
-+      DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT,
-       DEVCONF_MAX
- };
---- a/net/ipv6/addrconf.c
-+++ b/net/ipv6/addrconf.c
-@@ -188,6 +188,7 @@ static struct ipv6_devconf ipv6_devconf
-       .max_addresses          = IPV6_MAX_ADDRESSES,
-       .accept_ra_defrtr       = 1,
-       .accept_ra_from_local   = 0,
-+      .accept_ra_min_hop_limit= 1,
-       .accept_ra_pinfo        = 1,
- #ifdef CONFIG_IPV6_ROUTER_PREF
-       .accept_ra_rtr_pref     = 1,
-@@ -225,6 +226,7 @@ static struct ipv6_devconf ipv6_devconf_
-       .max_addresses          = IPV6_MAX_ADDRESSES,
-       .accept_ra_defrtr       = 1,
-       .accept_ra_from_local   = 0,
-+      .accept_ra_min_hop_limit= 1,
-       .accept_ra_pinfo        = 1,
- #ifdef CONFIG_IPV6_ROUTER_PREF
-       .accept_ra_rtr_pref     = 1,
-@@ -4321,6 +4323,7 @@ static inline void ipv6_store_devconf(st
-       array[DEVCONF_MAX_DESYNC_FACTOR] = cnf->max_desync_factor;
-       array[DEVCONF_MAX_ADDRESSES] = cnf->max_addresses;
-       array[DEVCONF_ACCEPT_RA_DEFRTR] = cnf->accept_ra_defrtr;
-+      array[DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT] = cnf->accept_ra_min_hop_limit;
-       array[DEVCONF_ACCEPT_RA_PINFO] = cnf->accept_ra_pinfo;
- #ifdef CONFIG_IPV6_ROUTER_PREF
-       array[DEVCONF_ACCEPT_RA_RTR_PREF] = cnf->accept_ra_rtr_pref;
-@@ -5135,6 +5138,13 @@ static struct addrconf_sysctl_table
-                       .maxlen         = sizeof(int),
-                       .mode           = 0644,
-                       .proc_handler   = proc_dointvec,
-+              },
-+              {
-+                      .procname       = "accept_ra_min_hop_limit",
-+                      .data           = &ipv6_devconf.accept_ra_min_hop_limit,
-+                      .maxlen         = sizeof(int),
-+                      .mode           = 0644,
-+                      .proc_handler   = proc_dointvec,
-               },
-               {
-                       .procname       = "accept_ra_pinfo",
---- a/net/ipv6/ndisc.c
-+++ b/net/ipv6/ndisc.c
-@@ -1214,18 +1214,16 @@ static void ndisc_router_discovery(struc
-       if (rt)
-               rt6_set_expires(rt, jiffies + (HZ * lifetime));
--      if (ra_msg->icmph.icmp6_hop_limit) {
--              /* Only set hop_limit on the interface if it is higher than
--               * the current hop_limit.
--               */
--              if (in6_dev->cnf.hop_limit < ra_msg->icmph.icmp6_hop_limit) {
-+      if (in6_dev->cnf.accept_ra_min_hop_limit < 256 &&
-+          ra_msg->icmph.icmp6_hop_limit) {
-+              if (in6_dev->cnf.accept_ra_min_hop_limit <= ra_msg->icmph.icmp6_hop_limit) {
-                       in6_dev->cnf.hop_limit = ra_msg->icmph.icmp6_hop_limit;
-+                      if (rt)
-+                              dst_metric_set(&rt->dst, RTAX_HOPLIMIT,
-+                                             ra_msg->icmph.icmp6_hop_limit);
-               } else {
--                      ND_PRINTK(2, warn, "RA: Got route advertisement with lower hop_limit than current\n");
-+                      ND_PRINTK(2, warn, "RA: Got route advertisement with lower hop_limit than minimum\n");
-               }
--              if (rt)
--                      dst_metric_set(&rt->dst, RTAX_HOPLIMIT,
--                                     ra_msg->icmph.icmp6_hop_limit);
-       }
- skip_defrtr:
index 1092049fbbd352793a6931778fe9407ecf31a17c..24392b2d91c7cbf00a1daf541b0338f4a0b51478 100644 (file)
@@ -35,7 +35,6 @@ asn.1-fix-non-match-detection-failure-on-data-overrun.patch
 keys-fix-asn.1-indefinite-length-object-parsing.patch
 ext4-fix-potential-use-after-free-in-__ext4_journal_stop.patch
 sg-fix-double-free-when-drives-detach-during-sg_io.patch
-net-ipv6-add-sysctl-option-accept_ra_min_hop_limit.patch
 ipv6-sctp-add-rcu-protection-around-np-opt.patch
 ipv6-sctp-fix-lockdep-splat-in-sctp_v6_get_dst.patch
 af_unix-guard-against-other-sk-in-unix_dgram_sendmsg.patch
index 6a79b0f229138050f2cf300bc79a3c3fcf452f39..fed17d852a11f820b8d13da2477e8431f7a88573 100644 (file)
@@ -41,21 +41,20 @@ Reviewed-by: Shuah Khan <shuahkh@osg.samsung.com>
 Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
 
 ---
- drivers/tty/serial/samsung.c |   31 ++++++++++++++++++++++++-------
- 1 file changed, 24 insertions(+), 7 deletions(-)
+ drivers/tty/serial/samsung.c |   30 ++++++++++++++++++++++++------
+ 1 file changed, 24 insertions(+), 6 deletions(-)
 
 --- a/drivers/tty/serial/samsung.c
 +++ b/drivers/tty/serial/samsung.c
-@@ -859,7 +859,7 @@ static void s3c24xx_serial_break_ctl(str
- static int s3c24xx_serial_request_dma(struct s3c24xx_uart_port *p)
+@@ -860,6 +860,7 @@ static int s3c24xx_serial_request_dma(st
  {
        struct s3c24xx_uart_dma *dma = p->dma;
--      unsigned long flags;
+       unsigned long flags;
 +      int ret;
  
        /* Default slave configuration parameters */
        dma->rx_conf.direction          = DMA_DEV_TO_MEM;
-@@ -884,8 +884,8 @@ static int s3c24xx_serial_request_dma(st
+@@ -884,8 +885,8 @@ static int s3c24xx_serial_request_dma(st
  
        dma->tx_chan = dma_request_chan(p->port.dev, "tx");
        if (IS_ERR(dma->tx_chan)) {
@@ -66,7 +65,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
        }
  
        dmaengine_slave_config(dma->tx_chan, &dma->tx_conf);
-@@ -894,15 +894,17 @@ static int s3c24xx_serial_request_dma(st
+@@ -894,15 +895,17 @@ static int s3c24xx_serial_request_dma(st
        dma->rx_size = PAGE_SIZE;
  
        dma->rx_buf = kmalloc(dma->rx_size, GFP_KERNEL);
@@ -88,7 +87,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
  
        spin_lock_irqsave(&p->port.lock, flags);
  
-@@ -911,8 +913,23 @@ static int s3c24xx_serial_request_dma(st
+@@ -911,8 +914,23 @@ static int s3c24xx_serial_request_dma(st
                                UART_XMIT_SIZE, DMA_TO_DEVICE);
  
        spin_unlock_irqrestore(&p->port.lock, flags);