1. 12 Apr, 2016 24 commits
  2. 11 Apr, 2016 11 commits
  3. 05 Apr, 2016 3 commits
  4. 31 Mar, 2016 2 commits
    • Krzysztof Kozlowski's avatar
      rtc: max77686: Properly handle regmap_irq_get_virq() error code · b7b6727d
      Krzysztof Kozlowski authored
      commit fb166ba1 upstream.
      
      The regmap_irq_get_virq() can return 0 or -EINVAL in error conditions
      but driver checked only for value of 0.
      
      This could lead to a cast of -EINVAL to an unsigned int used as a
      interrupt number for devm_request_threaded_irq(). Although this is not
      yet fatal (devm_request_threaded_irq() will just fail with -EINVAL) but
      might be a misleading when diagnosing errors.
      Signed-off-by: default avatarKrzysztof Kozlowski <k.kozlowski@samsung.com>
      Fixes: 6f1c1e71 ("mfd: max77686: Convert to use regmap_irq")
      Reviewed-by: default avatarJavier Martinez Canillas <javier@osg.samsung.com>
      Signed-off-by: default avatarAlexandre Belloni <alexandre.belloni@free-electrons.com>
      Signed-off-by: default avatarKamal Mostafa <kamal@canonical.com>
      b7b6727d
    • Julian Anastasov's avatar
      ipvs: drop first packet to redirect conntrack · f07f1a07
      Julian Anastasov authored
      commit f719e375 upstream.
      
      Jiri Bohac is reporting for a problem where the attempt
      to reschedule existing connection to another real server
      needs proper redirect for the conntrack used by the IPVS
      connection. For example, when IPVS connection is created
      to NAT-ed real server we alter the reply direction of
      conntrack. If we later decide to select different real
      server we can not alter again the conntrack. And if we
      expire the old connection, the new connection is left
      without conntrack.
      
      So, the only way to redirect both the IPVS connection and
      the Netfilter's conntrack is to drop the SYN packet that
      hits existing connection, to wait for the next jiffie
      to expire the old connection and its conntrack and to rely
      on client's retransmission to create new connection as
      usually.
      
      Jiri Bohac provided a fix that drops all SYNs on rescheduling,
      I extended his patch to do such drops only for connections
      that use conntrack. Here is the original report from Jiri Bohac:
      
      Since commit dc7b3eb9 ("ipvs: Fix reuse connection if real server
      is dead"), new connections to dead servers are redistributed
      immediately to new servers.  The old connection is expired using
      ip_vs_conn_expire_now() which sets the connection timer to expire
      immediately.
      
      However, before the timer callback, ip_vs_conn_expire(), is run
      to clean the connection's conntrack entry, the new redistributed
      connection may already be established and its conntrack removed
      instead.
      
      Fix this by dropping the first packet of the new connection
      instead, like we do when the destination server is not available.
      The timer will have deleted the old conntrack entry long before
      the first packet of the new connection is retransmitted.
      
      Fixes: dc7b3eb9 ("ipvs: Fix reuse connection if real server is dead")
      Signed-off-by: default avatarJiri Bohac <jbohac@suse.cz>
      Signed-off-by: default avatarJulian Anastasov <ja@ssi.bg>
      Signed-off-by: default avatarSimon Horman <horms@verge.net.au>
      Signed-off-by: default avatarKamal Mostafa <kamal@canonical.com>
      f07f1a07