Merge tag 'v3.10.107' into update
authorStricted <info@stricted.net>
Wed, 21 Mar 2018 22:07:35 +0000 (23:07 +0100)
committerStricted <info@stricted.net>
Wed, 21 Mar 2018 22:07:35 +0000 (23:07 +0100)
This is the 3.10.107 stable release

50 files changed:
1  2 
Documentation/kernel-parameters.txt
Makefile
arch/arm/include/asm/cputype.h
arch/arm/kernel/hw_breakpoint.c
arch/x86/kernel/ftrace.c
block/genhd.c
crypto/Makefile
drivers/char/Kconfig
drivers/char/mem.c
drivers/cpufreq/cpufreq.c
drivers/mtd/ubi/upd.c
drivers/net/tun.c
drivers/rtc/interface.c
drivers/scsi/sd.c
drivers/usb/class/cdc-acm.c
drivers/usb/core/hub.c
drivers/usb/gadget/composite.c
drivers/usb/gadget/f_acm.c
drivers/usb/host/xhci-mem.c
drivers/usb/host/xhci-plat.c
drivers/usb/host/xhci.c
drivers/usb/host/xhci.h
fs/ext4/inode.c
fs/ext4/mballoc.c
fs/ext4/super.c
fs/fat/inode.c
fs/nfs/nfs4proc.c
fs/proc/task_mmu.c
include/linux/mm.h
ipc/shm.c
kernel/futex.c
kernel/printk.c
kernel/sched/core.c
kernel/sysctl.c
mm/filemap.c
mm/memory.c
mm/mempolicy.c
mm/mmap.c
net/ipv4/fib_frontend.c
net/ipv4/tcp_input.c
net/ipv4/tcp_ipv4.c
net/ipv4/tcp_minisocks.c
net/ipv4/tcp_output.c
net/ipv4/tcp_timer.c
net/ipv6/addrconf.c
net/ipv6/raw.c
net/ipv6/route.c
net/l2tp/l2tp_ip.c
net/unix/af_unix.c
security/apparmor/domain.c

Simple merge
diff --cc Makefile
Simple merge
Simple merge
Simple merge
Simple merge
diff --cc block/genhd.c
Simple merge
diff --cc crypto/Makefile
Simple merge
index 0519b3c5b8a47adeb6375b243f73f8b9cb0c98ba,8ccb96ae3fd9497805569ce1d4b1f69c852a966c..117a5dbcccc8ec9fa68783e449180e89ab2509e0
@@@ -592,14 -579,13 +592,17 @@@ config TELCLOC
          controlling the behavior of this hardware.
  
  config DEVPORT
-       bool
+       bool "/dev/port character device"
        depends on ISA || PCI
        default y
+       help
+         Say Y here if you want to support the /dev/port device. The /dev/port
+         device is similar to /dev/mem, but for I/O ports.
  
 +config DCC_TTY
 +      tristate "DCC tty driver"
 +      depends on ARM
 +
  source "drivers/s390/char/Kconfig"
  
  config MSM_SMD_PKT
index d370021c7022a54ed5f3c9d362406efc8870dc9e,40d2e99c6ba731ee54ee84ede062094549208b5e..1a62849e7f1d45afa3b63a5af1436de865a1608e
@@@ -60,8 -60,11 +60,12 @@@ static inline int valid_mmap_phys_addr_
  }
  #endif
  
 +#if defined(CONFIG_DEVMEM) || defined(CONFIG_DEVKMEM)
  #ifdef CONFIG_STRICT_DEVMEM
+ static inline int page_is_allowed(unsigned long pfn)
+ {
+       return devmem_is_allowed(pfn);
+ }
  static inline int range_is_allowed(unsigned long pfn, unsigned long size)
  {
        u64 from = ((u64)pfn) << PAGE_SHIFT;
Simple merge
Simple merge
Simple merge
Simple merge
index 1fd54406a8984a8b6e51506c25f1ca7986bae8c7,880a300baf7a9abb14c87eaa4f160f5b86f84bff..3d4a2eff5b0cdf9e7b1ca44a91d945a85b7dfcdc
         */
        kfree(sshdr);
        retval = sdp->changed ? DISK_EVENT_MEDIA_CHANGE : 0;
 +#ifdef CONFIG_MTK_MULTI_PARTITION_MOUNT_ONLY_SUPPORT
 +      //add for sdcard hotplug start
 +      if(1 == retval){
 +              if(sdkp->old_media_present != sdkp->media_present){
 +                      retval  |=  sdkp->media_present ? 0 : DISK_EVENT_MEDIA_DISAPPEAR;
 +                      sdkp->old_media_present = sdkp->media_present;
 +              }
 +      }
 +      //add for sdcard hotplug end    
 +#endif
        sdp->changed = 0;
+       scsi_disk_put(sdkp);
        return retval;
  }
  
index 5e45a5e55a5329326a0e017de56b9bc2b2e3a3d3,802df033e24cdfcca6bcbc13e9960306709a2b85..d98a0249acc94e9b0038f6019c480e99d42a1662
@@@ -816,14 -541,10 +816,15 @@@ static int acm_port_activate(struct tty
         */
        set_bit(TTY_NO_WRITE_SPLIT, &tty->flags);
        acm->control->needs_remote_wakeup = 1;
 +#ifdef CONFIG_MTK_DT_USB_SUPPORT
 +#ifdef        CONFIG_PM_RUNTIME
 +      acm->control->needs_remote_wakeup = 0;          
 +#endif
 +#endif
  
        acm->ctrlurb->dev = acm->dev;
-       if (usb_submit_urb(acm->ctrlurb, GFP_KERNEL)) {
+       retval = usb_submit_urb(acm->ctrlurb, GFP_KERNEL);
+       if (retval) {
                dev_err(&acm->control->dev,
                        "%s - usb_submit_urb(ctrl irq) failed\n", __func__);
                goto error_submit_urb;
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
diff --cc fs/ext4/inode.c
Simple merge
Simple merge
diff --cc fs/ext4/super.c
Simple merge
diff --cc fs/fat/inode.c
Simple merge
Simple merge
Simple merge
Simple merge
diff --cc ipc/shm.c
Simple merge
diff --cc kernel/futex.c
Simple merge
diff --cc kernel/printk.c
Simple merge
Simple merge
diff --cc kernel/sysctl.c
Simple merge
diff --cc mm/filemap.c
Simple merge
diff --cc mm/memory.c
index 2467a766656565fddcf42e4234dc60cb3cd643f6,8b4975d1f1672e39b681e5cd07ca8612c98f1ba8..9a90856bb0c08cbf01c84358df75b4c90f3b428e
@@@ -1658,14 -1653,7 +1658,8 @@@ no_page_table
                return ERR_PTR(-EFAULT);
        return page;
  }
 +EXPORT_SYMBOL_GPL(follow_page_mask);
  
- static inline int stack_guard_page(struct vm_area_struct *vma, unsigned long addr)
- {
-       return stack_guard_page_start(vma, addr) ||
-              stack_guard_page_end(vma, addr+PAGE_SIZE);
- }
  /**
   * __get_user_pages() - pin user pages in memory
   * @tsk:      task_struct of target task
diff --cc mm/mempolicy.c
Simple merge
diff --cc mm/mmap.c
Simple merge
Simple merge
index 1e0c33efccbad0cb638fc16a2e210f63be21be5b,0680058fe6937c43b42e37784549c1f72d37c91a..094515e751d01c323f6600356cf072d0a723d457
@@@ -5570,10 -5536,9 +5571,9 @@@ static int tcp_rcv_synsent_state_proces
                         * to stand against the temptation 8)     --ANK
                         */
                        inet_csk_schedule_ack(sk);
-                       icsk->icsk_ack.lrcvtime = tcp_time_stamp;
                        tcp_enter_quickack_mode(sk);
                        inet_csk_reset_xmit_timer(sk, ICSK_TIME_DACK,
 -                                                TCP_DELACK_MAX, TCP_RTO_MAX);
 +                                                TCP_DELACK_MAX, sysctl_tcp_rto_max);
  
  discard:
                        __kfree_skb(skb);
Simple merge
Simple merge
Simple merge
index 98cd820c1207825a516b30e24cb796daad3c9c4b,722367a6d8175166d338b487739022e4785c856e..8cb86fa84e2d448d61086a0fe4f7a9b7ccfe98c6
@@@ -490,10 -481,10 +491,11 @@@ void tcp_write_timer_handler(struct soc
        struct inet_connection_sock *icsk = inet_csk(sk);
        int event;
  
-       if (sk->sk_state == TCP_CLOSE || !icsk->icsk_pending)
+       if (((1 << sk->sk_state) & (TCPF_CLOSE | TCPF_LISTEN)) ||
+           !icsk->icsk_pending)
                goto out;
 -
 +  if (icsk->icsk_MMSRB != 1)
 +  {
        if (time_after(icsk->icsk_timeout, jiffies)) {
                sk_reset_timer(sk, &icsk->icsk_retransmit_timer, icsk->icsk_timeout);
                goto out;
Simple merge
diff --cc net/ipv6/raw.c
Simple merge
Simple merge
Simple merge
index 360954149888401df3834ac402c7fec28e554bd8,4b18115c0543cc4d29b7bd9bfffdf84993808815..a14c213ea4270f6b2795afd3af7a40f13feb0360
@@@ -1072,8 -1049,10 +1073,11 @@@ out_unlock
        spin_unlock(&unix_table_lock);
  out_up:
        mutex_unlock(&u->readlock);
+ out_put:
+       if (err)
+               path_put(&path);
  out:
 + 
        return err;
  }
  
@@@ -1770,16 -1719,7 +1766,12 @@@ restart_locked
                        goto out_unlock;
        }
  
- <<<<<<< HEAD
 -      if (unlikely(unix_peer(other) != sk && unix_recvq_full(other))) {
 +      /* other == sk && unix_peer(other) != sk if
 +       * - unix_peer(sk) == NULL, destination address bound to sk
 +       * - unix_peer(sk) == sk by time of get but disconnected before lock
 +       */
 +      if (other != sk &&
 +          unlikely(unix_peer(other) != sk && unix_recvq_full(other))) {
- =======
-       if (unlikely(unix_peer(other) != sk && unix_recvq_full(other))) {
- >>>>>>> v3.10.95
                if (timeo) {
                        timeo = unix_wait_for_peer(other, timeo);
  
Simple merge