Merge tag 'v4.9.215' of git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux...
authorMauro (mdrjr) Ribeiro <mauro.ribeiro@hardkernel.com>
Wed, 8 Apr 2020 00:32:59 +0000 (21:32 -0300)
committerMauro (mdrjr) Ribeiro <mauro.ribeiro@hardkernel.com>
Wed, 8 Apr 2020 00:32:59 +0000 (21:32 -0300)
This is the 4.9.215 stable release

17 files changed:
1  2 
Makefile
arch/arm/Kconfig
arch/x86/kvm/vmx.c
drivers/staging/android/ashmem.c
drivers/usb/core/hub.c
drivers/usb/core/quirks.c
drivers/usb/gadget/composite.c
drivers/usb/host/xhci-mem.c
fs/cifs/connect.c
fs/ext4/ext4.h
fs/ext4/inode.c
fs/ext4/namei.c
fs/ext4/super.c
kernel/cpu.c
kernel/trace/ftrace.c
net/netfilter/xt_bpf.c
sound/usb/quirks.c

diff --cc Makefile
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
@@@ -291,8 -291,8 +291,10 @@@ static const struct usb_device_id usb_q
        /* INTEL VALUE SSD */
        { USB_DEVICE(0x8086, 0xf1a5), .driver_info = USB_QUIRK_RESET_RESUME },
  
 +      { USB_DEVICE(0x1fc9, 0x0011), .driver_info =
 +                      USB_QUIRK_DEVICE_QUALIFIER },
+       /* novation SoundControl XL */
+       { USB_DEVICE(0x1235, 0x0061), .driver_info = USB_QUIRK_RESET_RESUME },
  
        { }  /* terminating entry must be last */
  };
Simple merge
Simple merge
Simple merge
diff --cc fs/ext4/ext4.h
@@@ -1511,8 -1514,17 +1511,12 @@@ struct ext4_sb_info 
        struct ratelimit_state s_warning_ratelimit_state;
        struct ratelimit_state s_msg_ratelimit_state;
  
-       /* Barrier between changing inodes' journal flags and writepages ops. */
-       struct percpu_rw_semaphore s_journal_flag_rwsem;
+       /*
+        * Barrier between writepages ops and changing any inode's JOURNAL_DATA
+        * or EXTENTS flag.
+        */
+       struct percpu_rw_semaphore s_writepages_rwsem;
 -      /* Encryption support */
 -#ifdef CONFIG_EXT4_FS_ENCRYPTION
 -      u8 key_prefix[EXT4_KEY_DESC_PREFIX_SIZE];
 -      u8 key_prefix_size;
 -#endif
  };
  
  static inline struct ext4_sb_info *EXT4_SB(struct super_block *sb)
@@@ -2332,16 -2371,20 +2336,19 @@@ extern int ext4_find_dest_de(struct ino
                             void *buf, int buf_size,
                             struct ext4_filename *fname,
                             struct ext4_dir_entry_2 **dest_de);
 -int ext4_insert_dentry(struct inode *dir,
 -                     struct inode *inode,
 -                     struct ext4_dir_entry_2 *de,
 -                     int buf_size,
 -                     struct ext4_filename *fname);
 +void ext4_insert_dentry(struct inode *inode,
 +                      struct ext4_dir_entry_2 *de,
 +                      int buf_size,
 +                      struct ext4_filename *fname);
  static inline void ext4_update_dx_flag(struct inode *inode)
  {
-       if (!ext4_has_feature_dir_index(inode->i_sb))
+       if (!ext4_has_feature_dir_index(inode->i_sb)) {
+               /* ext4_iget() should have caught this... */
+               WARN_ON_ONCE(ext4_has_feature_metadata_csum(inode->i_sb));
                ext4_clear_inode_flag(inode, EXT4_INODE_INDEX);
+       }
  }
 -static unsigned char ext4_filetype_table[] = {
 +static const unsigned char ext4_filetype_table[] = {
        DT_UNKNOWN, DT_REG, DT_DIR, DT_CHR, DT_BLK, DT_FIFO, DT_SOCK, DT_LNK
  };
  
diff --cc fs/ext4/inode.c
Simple merge
diff --cc fs/ext4/namei.c
Simple merge
diff --cc fs/ext4/super.c
Simple merge
diff --cc kernel/cpu.c
Simple merge
Simple merge
@@@ -22,18 -20,18 +22,21 @@@ MODULE_LICENSE("GPL")
  MODULE_ALIAS("ipt_bpf");
  MODULE_ALIAS("ip6t_bpf");
  
 -static int bpf_mt_check(const struct xt_mtchk_param *par)
 +static int __bpf_mt_check_bytecode(struct sock_filter *insns, __u16 len,
 +                                 struct bpf_prog **ret)
  {
 -      struct xt_bpf_info *info = par->matchinfo;
        struct sock_fprog_kern program;
  
-       if (len > XT_BPF_MAX_NUM_INSTR)
+       if (info->bpf_program_num_elem > XT_BPF_MAX_NUM_INSTR)
                return -EINVAL;
  
 -      if (bpf_prog_create(&info->filter, &program)) {
+       program.len = info->bpf_program_num_elem;
+       program.filter = info->bpf_program;
 +      program.len = len;
 +      program.filter = insns;
 +
 +      if (bpf_prog_create(ret, &program)) {
                pr_info("bpf: check failed: parse error\n");
                return -EINVAL;
        }
Simple merge