1. 05 Dec, 2023 6 commits
    • Carlos Llamas's avatar
      binder: fix trivial typo of binder_free_buf_locked() · 122a3c1c
      Carlos Llamas authored
      Fix minor misspelling of the function in the comment section.
      
      No functional changes in this patch.
      
      Cc: stable@vger.kernel.org
      Fixes: 0f966cba ("binder: add flag to clear buffer on txn complete")
      Reviewed-by: default avatarAlice Ryhl <aliceryhl@google.com>
      Signed-off-by: default avatarCarlos Llamas <cmllamas@google.com>
      Link: https://lore.kernel.org/r/20231201172212.1813387-7-cmllamas@google.comSigned-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      122a3c1c
    • Carlos Llamas's avatar
      binder: fix unused alloc->free_async_space · c6d05e07
      Carlos Llamas authored
      Each transaction is associated with a 'struct binder_buffer' that stores
      the metadata about its buffer area. Since commit 74310e06 ("android:
      binder: Move buffer out of area shared with user space") this struct is
      no longer embedded within the buffer itself but is instead allocated on
      the heap to prevent userspace access to this driver-exclusive info.
      
      Unfortunately, the space of this struct is still being accounted for in
      the total buffer size calculation, specifically for async transactions.
      This results in an additional 104 bytes added to every async buffer
      request, and this area is never used.
      
      This wasted space can be substantial. If we consider the maximum mmap
      buffer space of SZ_4M, the driver will reserve half of it for async
      transactions, or 0x200000. This area should, in theory, accommodate up
      to 262,144 buffers of the minimum 8-byte size. However, after adding
      the extra 'sizeof(struct binder_buffer)', the total number of buffers
      drops to only 18,724, which is a sad 7.14% of the actual capacity.
      
      This patch fixes the buffer size calculation to enable the utilization
      of the entire async buffer space. This is expected to reduce the number
      of -ENOSPC errors that are seen on the field.
      
      Fixes: 74310e06 ("android: binder: Move buffer out of area shared with user space")
      Signed-off-by: default avatarCarlos Llamas <cmllamas@google.com>
      Reviewed-by: default avatarAlice Ryhl <aliceryhl@google.com>
      Link: https://lore.kernel.org/r/20231201172212.1813387-6-cmllamas@google.comSigned-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      c6d05e07
    • Carlos Llamas's avatar
      binder: fix async space check for 0-sized buffers · 3091c21d
      Carlos Llamas authored
      Move the padding of 0-sized buffers to an earlier stage to account for
      this round up during the alloc->free_async_space check.
      
      Fixes: 74310e06 ("android: binder: Move buffer out of area shared with user space")
      Reviewed-by: default avatarAlice Ryhl <aliceryhl@google.com>
      Signed-off-by: default avatarCarlos Llamas <cmllamas@google.com>
      Link: https://lore.kernel.org/r/20231201172212.1813387-5-cmllamas@google.comSigned-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      3091c21d
    • Carlos Llamas's avatar
      binder: fix race between mmput() and do_exit() · 9a9ab0d9
      Carlos Llamas authored
      Task A calls binder_update_page_range() to allocate and insert pages on
      a remote address space from Task B. For this, Task A pins the remote mm
      via mmget_not_zero() first. This can race with Task B do_exit() and the
      final mmput() refcount decrement will come from Task A.
      
        Task A            | Task B
        ------------------+------------------
        mmget_not_zero()  |
                          |  do_exit()
                          |    exit_mm()
                          |      mmput()
        mmput()           |
          exit_mmap()     |
            remove_vma()  |
              fput()      |
      
      In this case, the work of ____fput() from Task B is queued up in Task A
      as TWA_RESUME. So in theory, Task A returns to userspace and the cleanup
      work gets executed. However, Task A instead sleep, waiting for a reply
      from Task B that never comes (it's dead).
      
      This means the binder_deferred_release() is blocked until an unrelated
      binder event forces Task A to go back to userspace. All the associated
      death notifications will also be delayed until then.
      
      In order to fix this use mmput_async() that will schedule the work in
      the corresponding mm->async_put_work WQ instead of Task A.
      
      Fixes: 457b9a6f ("Staging: android: add binder driver")
      Reviewed-by: default avatarAlice Ryhl <aliceryhl@google.com>
      Signed-off-by: default avatarCarlos Llamas <cmllamas@google.com>
      Link: https://lore.kernel.org/r/20231201172212.1813387-4-cmllamas@google.comSigned-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      9a9ab0d9
    • Carlos Llamas's avatar
      binder: fix use-after-free in shinker's callback · 3f489c20
      Carlos Llamas authored
      The mmap read lock is used during the shrinker's callback, which means
      that using alloc->vma pointer isn't safe as it can race with munmap().
      As of commit dd2283f2 ("mm: mmap: zap pages with read mmap_sem in
      munmap") the mmap lock is downgraded after the vma has been isolated.
      
      I was able to reproduce this issue by manually adding some delays and
      triggering page reclaiming through the shrinker's debug sysfs. The
      following KASAN report confirms the UAF:
      
        ==================================================================
        BUG: KASAN: slab-use-after-free in zap_page_range_single+0x470/0x4b8
        Read of size 8 at addr ffff356ed50e50f0 by task bash/478
      
        CPU: 1 PID: 478 Comm: bash Not tainted 6.6.0-rc5-00055-g1c8b86a3-dirty #70
        Hardware name: linux,dummy-virt (DT)
        Call trace:
         zap_page_range_single+0x470/0x4b8
         binder_alloc_free_page+0x608/0xadc
         __list_lru_walk_one+0x130/0x3b0
         list_lru_walk_node+0xc4/0x22c
         binder_shrink_scan+0x108/0x1dc
         shrinker_debugfs_scan_write+0x2b4/0x500
         full_proxy_write+0xd4/0x140
         vfs_write+0x1ac/0x758
         ksys_write+0xf0/0x1dc
         __arm64_sys_write+0x6c/0x9c
      
        Allocated by task 492:
         kmem_cache_alloc+0x130/0x368
         vm_area_alloc+0x2c/0x190
         mmap_region+0x258/0x18bc
         do_mmap+0x694/0xa60
         vm_mmap_pgoff+0x170/0x29c
         ksys_mmap_pgoff+0x290/0x3a0
         __arm64_sys_mmap+0xcc/0x144
      
        Freed by task 491:
         kmem_cache_free+0x17c/0x3c8
         vm_area_free_rcu_cb+0x74/0x98
         rcu_core+0xa38/0x26d4
         rcu_core_si+0x10/0x1c
         __do_softirq+0x2fc/0xd24
      
        Last potentially related work creation:
         __call_rcu_common.constprop.0+0x6c/0xba0
         call_rcu+0x10/0x1c
         vm_area_free+0x18/0x24
         remove_vma+0xe4/0x118
         do_vmi_align_munmap.isra.0+0x718/0xb5c
         do_vmi_munmap+0xdc/0x1fc
         __vm_munmap+0x10c/0x278
         __arm64_sys_munmap+0x58/0x7c
      
      Fix this issue by performing instead a vma_lookup() which will fail to
      find the vma that was isolated before the mmap lock downgrade. Note that
      this option has better performance than upgrading to a mmap write lock
      which would increase contention. Plus, mmap_write_trylock() has been
      recently removed anyway.
      
      Fixes: dd2283f2 ("mm: mmap: zap pages with read mmap_sem in munmap")
      Cc: stable@vger.kernel.org
      Cc: Liam Howlett <liam.howlett@oracle.com>
      Cc: Minchan Kim <minchan@kernel.org>
      Reviewed-by: default avatarAlice Ryhl <aliceryhl@google.com>
      Signed-off-by: default avatarCarlos Llamas <cmllamas@google.com>
      Link: https://lore.kernel.org/r/20231201172212.1813387-3-cmllamas@google.comSigned-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      3f489c20
    • Carlos Llamas's avatar
      binder: use EPOLLERR from eventpoll.h · 6ac061db
      Carlos Llamas authored
      Use EPOLLERR instead of POLLERR to make sure it is cast to the correct
      __poll_t type. This fixes the following sparse issue:
      
        drivers/android/binder.c:5030:24: warning: incorrect type in return expression (different base types)
        drivers/android/binder.c:5030:24:    expected restricted __poll_t
        drivers/android/binder.c:5030:24:    got int
      
      Fixes: f8898267 ("binder: check for binder_thread allocation failure in binder_poll()")
      Cc: stable@vger.kernel.org
      Cc: Eric Biggers <ebiggers@google.com>
      Reviewed-by: default avatarAlice Ryhl <aliceryhl@google.com>
      Signed-off-by: default avatarCarlos Llamas <cmllamas@google.com>
      Link: https://lore.kernel.org/r/20231201172212.1813387-2-cmllamas@google.comSigned-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      6ac061db
  2. 30 Nov, 2023 1 commit
  3. 28 Nov, 2023 3 commits
  4. 27 Nov, 2023 6 commits
  5. 26 Nov, 2023 6 commits
    • Linus Torvalds's avatar
      Merge tag 'parisc-for-6.7-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/deller/parisc-linux · d2da77f4
      Linus Torvalds authored
      Pull parisc architecture fixes from Helge Deller:
       "This patchset fixes and enforces correct section alignments for the
        ex_table, altinstructions, parisc_unwind, jump_table and bug_table
        which are created by inline assembly.
      
        Due to not being correctly aligned at link & load time they can
        trigger unnecessarily the kernel unaligned exception handler at
        runtime. While at it, I switched the bug table to use relative
        addresses which reduces the size of the table by half on 64-bit.
      
        We still had the ENOSYM and EREMOTERELEASE errno symbols as left-overs
        from HP-UX, which now trigger build-issues with glibc. We can simply
        remove them.
      
        Most of the patches are tagged for stable kernel series.
      
        Summary:
      
         - Drop HP-UX ENOSYM and EREMOTERELEASE return codes to avoid glibc
           build issues
      
         - Fix section alignments for ex_table, altinstructions, parisc unwind
           table, jump_table and bug_table
      
         - Reduce size of bug_table on 64-bit kernel by using relative
           pointers"
      
      * tag 'parisc-for-6.7-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/deller/parisc-linux:
        parisc: Reduce size of the bug_table on 64-bit kernel by half
        parisc: Drop the HP-UX ENOSYM and EREMOTERELEASE error codes
        parisc: Use natural CPU alignment for bug_table
        parisc: Ensure 32-bit alignment on parisc unwind section
        parisc: Mark lock_aligned variables 16-byte aligned on SMP
        parisc: Mark jump_table naturally aligned
        parisc: Mark altinstructions read-only and 32-bit aligned
        parisc: Mark ex_table entries 32-bit aligned in uaccess.h
        parisc: Mark ex_table entries 32-bit aligned in assembly.h
      d2da77f4
    • Linus Torvalds's avatar
      Merge tag 'x86-urgent-2023-11-26' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 4892711a
      Linus Torvalds authored
      Pull x86 microcode fixes from Ingo Molnar:
       "Fix/enhance x86 microcode version reporting: fix the bootup log spam,
        and remove the driver version announcement to avoid version confusion
        when distros backport fixes"
      
      * tag 'x86-urgent-2023-11-26' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/microcode: Rework early revisions reporting
        x86/microcode: Remove the driver announcement and version
      4892711a
    • Linus Torvalds's avatar
      Merge tag 'perf-urgent-2023-11-26' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · e81fe505
      Linus Torvalds authored
      Pull x86 perf event fix from Ingo Molnar:
       "Fix a bug in the Intel hybrid CPUs hardware-capabilities enumeration
        code resulting in non-working events on those platforms"
      
      * tag 'perf-urgent-2023-11-26' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        perf/x86/intel: Correct incorrect 'or' operation for PMU capabilities
      e81fe505
    • Linus Torvalds's avatar
      Merge tag 'locking-urgent-2023-11-26' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 1d0dbc3d
      Linus Torvalds authored
      Pull locking fix from Ingo Molnar:
       "Fix lockdep block chain corruption resulting in KASAN warnings"
      
      * tag 'locking-urgent-2023-11-26' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        lockdep: Fix block chain corruption
      1d0dbc3d
    • Linus Torvalds's avatar
      Merge tag '6.7-rc2-smb3-client-fixes' of git://git.samba.org/sfrench/cifs-2.6 · 4515866d
      Linus Torvalds authored
      Pull smb client fixes from Steve French:
      
       - use after free fix in releasing multichannel interfaces
      
       - fixes for special file types (report char, block, FIFOs properly when
         created e.g. by NFS to Windows)
      
       - fixes for reporting various special file types and symlinks properly
         when using SMB1
      
      * tag '6.7-rc2-smb3-client-fixes' of git://git.samba.org/sfrench/cifs-2.6:
        smb: client: introduce cifs_sfu_make_node()
        smb: client: set correct file type from NFS reparse points
        smb: client: introduce ->parse_reparse_point()
        smb: client: implement ->query_reparse_point() for SMB1
        cifs: fix use after free for iface while disabling secondary channels
      4515866d
    • Linus Torvalds's avatar
      Merge tag 'usb-6.7-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb · 090472ed
      Linus Torvalds authored
      Pull USB / PHY / Thunderbolt fixes from Greg KH:
       "Here are a number of reverts, fixes, and new device ids for 6.7-rc3
        for the USB, PHY, and Thunderbolt driver subsystems. Include in here
        are:
      
         - reverts of some PHY drivers that went into 6.7-rc1 that shouldn't
           have been merged yet, the author is reworking them based on review
           comments as they were using older apis that shouldn't be used
           anymore for newer drivers
      
         - small thunderbolt driver fixes for reported issues
      
         - USB driver fixes for a variety of small issues in dwc3, typec,
           xhci, and other smaller drivers.
      
         - new device ids for usb-serial and onboard_usb_hub drivers.
      
        All of these have been in linux-next with no reported issues"
      
      * tag 'usb-6.7-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb: (33 commits)
        USB: serial: option: add Luat Air72*U series products
        USB: dwc3: qcom: fix ACPI platform device leak
        USB: dwc3: qcom: fix software node leak on probe errors
        USB: dwc3: qcom: fix resource leaks on probe deferral
        USB: dwc3: qcom: simplify wakeup interrupt setup
        USB: dwc3: qcom: fix wakeup after probe deferral
        dt-bindings: usb: qcom,dwc3: fix example wakeup interrupt types
        usb: misc: onboard-hub: add support for Microchip USB5744
        dt-bindings: usb: microchip,usb5744: Add second supply
        usb: misc: ljca: Fix enumeration error on Dell Latitude 9420
        USB: serial: option: add Fibocom L7xx modules
        USB: xhci-plat: fix legacy PHY double init
        usb: typec: tipd: Supply also I2C driver data
        usb: xhci-mtk: fix in-ep's start-split check failure
        usb: dwc3: set the dma max_seg_size
        usb: config: fix iteration issue in 'usb_get_bos_descriptor()'
        usb: dwc3: add missing of_node_put and platform_device_put
        USB: dwc2: write HCINT with INTMASK applied
        usb: misc: ljca: Drop _ADR support to get ljca children devices
        usb: cdnsp: Fix deadlock issue during using NCM gadget
        ...
      090472ed
  6. 25 Nov, 2023 12 commits
  7. 24 Nov, 2023 6 commits
    • Linus Torvalds's avatar
      Merge tag 's390-6.7-3' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux · 0f5cc96c
      Linus Torvalds authored
      Pull s390 updates from Alexander Gordeev:
      
       - Remove unnecessary assignment of the performance event last_tag.
      
       - Create missing /sys/firmware/ipl/* attributes when kernel is booted
         in dump mode using List-directed ECKD IPL.
      
       - Remove odd comment.
      
       - Fix s390-specific part of scripts/checkstack.pl script that only
         matches three-digit numbers starting with 3 or any higher number and
         skips any stack sizes smaller than 304 bytes.
      
      * tag 's390-6.7-3' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux:
        scripts/checkstack.pl: match all stack sizes for s390
        s390: remove odd comment
        s390/ipl: add missing IPL_TYPE_ECKD_DUMP case to ipl_init()
        s390/pai: cleanup event initialization
      0f5cc96c
    • Linus Torvalds's avatar
      Merge tag 'acpi-6.7-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · 1bcc6897
      Linus Torvalds authored
      Pull ACPI fixes from Rafael Wysocki:
       "These add an ACPI IRQ override quirk for ASUS ExpertBook B1402CVA and
        fix an ACPI processor idle issue leading to triple-faults in Xen HVM
        guests and an ACPI backlight driver issue that causes GPUs to
        misbehave while their children power is being fixed up.
      
        Specifics:
      
         - Avoid powering up GPUs while attempting to fix up power for their
           children (Hans de Goede)
      
         - Use raw_safe_halt() instead of safe_halt() in acpi_idle_play_dead()
           so as to avoid triple-falts during CPU online in Xen HVM guests due
           to the setting of the hardirqs_enabled flag in safe_halt() (David
           Woodhouse)
      
         - Add an ACPI IRQ override quirk for ASUS ExpertBook B1402CVA (Hans
           de Goede)"
      
      * tag 'acpi-6.7-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
        ACPI: resource: Skip IRQ override on ASUS ExpertBook B1402CVA
        ACPI: video: Use acpi_device_fix_up_power_children()
        ACPI: PM: Add acpi_device_fix_up_power_children() function
        ACPI: processor_idle: use raw_safe_halt() in acpi_idle_play_dead()
      1bcc6897
    • Linus Torvalds's avatar
      Merge tag 'pm-6.7-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · b345fd55
      Linus Torvalds authored
      Pull power management fix from Rafael Wysocki:
       "Fix a syntax error in the sleepgraph utility which causes it to exit
        early on every invocation (David Woodhouse)"
      
      * tag 'pm-6.7-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
        PM: tools: Fix sleepgraph syntax error
      b345fd55
    • Linus Torvalds's avatar
      Merge tag 'afs-fixes-20231124' of git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs · 5b7ad877
      Linus Torvalds authored
      Pull AFS fixes from David Howells:
      
       - Fix the afs_server_list struct to be cleaned up with RCU
      
       - Fix afs to translate a no-data result from a DNS lookup into ENOENT,
         not EDESTADDRREQ for consistency with OpenAFS
      
       - Fix afs to translate a negative DNS lookup result into ENOENT rather
         than EDESTADDRREQ
      
       - Fix file locking on R/O volumes to operate in local mode as the
         server doesn't handle exclusive locks on such files
      
       - Set SB_RDONLY on superblocks for RO and Backup volumes so that the
         VFS can see that they're read only
      
      * tag 'afs-fixes-20231124' of git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs:
        afs: Mark a superblock for an R/O or Backup volume as SB_RDONLY
        afs: Fix file locking on R/O volumes to operate in local mode
        afs: Return ENOENT if no cell DNS record can be found
        afs: Make error on cell lookup failure consistent with OpenAFS
        afs: Fix afs_server_list to be cleaned up with RCU
      5b7ad877
    • Rafael J. Wysocki's avatar
      Merge branches 'acpi-video' and 'acpi-processor' into acpi · e3747062
      Rafael J. Wysocki authored
      Merge ACPI backlight driver fixes and an ACPI processor driver fix for
      6.7-rc3:
      
       - Avoid powering up GPUs while attempting to fix up power for their
         children (Hans de Goede).
      
       - Use raw_safe_halt() instead of safe_halt() in acpi_idle_play_dead()
         so as to avoid triple-falts during CPU online in Xen HVM guests due
         to the setting of the hardirqs_enabled flag in safe_halt() (David
         Woodhouse).
      
      * acpi-video:
        ACPI: video: Use acpi_device_fix_up_power_children()
        ACPI: PM: Add acpi_device_fix_up_power_children() function
      
      * acpi-processor:
        ACPI: processor_idle: use raw_safe_halt() in acpi_idle_play_dead()
      e3747062
    • Linus Torvalds's avatar
      Merge tag 'vfs-6.7-rc3.fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/vfs/vfs · fa2b906f
      Linus Torvalds authored
      Pull vfs fixes from Christian Brauner:
      
       - Avoid calling back into LSMs from vfs_getattr_nosec() calls.
      
         IMA used to query inode properties accessing raw inode fields without
         dedicated helpers. That was finally fixed a few releases ago by
         forcing IMA to use vfs_getattr_nosec() helpers.
      
         The goal of the vfs_getattr_nosec() helper is to query for attributes
         without calling into the LSM layer which would be quite problematic
         because incredibly IMA is called from __fput()...
      
           __fput()
             -> ima_file_free()
      
         What it does is to call back into the filesystem to update the file's
         IMA xattr. Querying the inode without using vfs_getattr_nosec() meant
         that IMA didn't handle stacking filesystems such as overlayfs
         correctly. So the switch to vfs_getattr_nosec() is quite correct. But
         the switch to vfs_getattr_nosec() revealed another bug when used on
         stacking filesystems:
      
           __fput()
             -> ima_file_free()
                -> vfs_getattr_nosec()
                   -> i_op->getattr::ovl_getattr()
                      -> vfs_getattr()
                         -> i_op->getattr::$WHATEVER_UNDERLYING_FS_getattr()
                            -> security_inode_getattr() # calls back into LSMs
      
         Now, if that __fput() happens from task_work_run() of an exiting task
         current->fs and various other pointer could already be NULL. So
         anything in the LSM layer relying on that not being NULL would be
         quite surprised.
      
         Fix that by passing the information that this is a security request
         through to the stacking filesystem by adding a new internal
         ATT_GETATTR_NOSEC flag. Now the callchain becomes:
      
           __fput()
             -> ima_file_free()
                -> vfs_getattr_nosec()
                   -> i_op->getattr::ovl_getattr()
                      -> if (AT_GETATTR_NOSEC)
                                vfs_getattr_nosec()
                         else
                                vfs_getattr()
                         -> i_op->getattr::$WHATEVER_UNDERLYING_FS_getattr()
      
       - Fix a bug introduced with the iov_iter rework from last cycle.
      
         This broke /proc/kcore by copying too much and without the correct
         offset.
      
       - Add a missing NULL check when allocating the root inode in
         autofs_fill_super().
      
       - Fix stable writes for multi-device filesystems (xfs, btrfs etc) and
         the block device pseudo filesystem.
      
         Stable writes used to be a superblock flag only, making it a per
         filesystem property. Add an additional AS_STABLE_WRITES mapping flag
         to allow for fine-grained control.
      
       - Ensure that offset_iterate_dir() returns 0 after reaching the end of
         a directory so it adheres to getdents() convention.
      
      * tag 'vfs-6.7-rc3.fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/vfs/vfs:
        libfs: getdents() should return 0 after reaching EOD
        xfs: respect the stable writes flag on the RT device
        xfs: clean up FS_XFLAG_REALTIME handling in xfs_ioctl_setattr_xflags
        block: update the stable_writes flag in bdev_add
        filemap: add a per-mapping stable writes flag
        autofs: add: new_inode check in autofs_fill_super()
        iov_iter: fix copy_page_to_iter_nofault()
        fs: Pass AT_GETATTR_NOSEC flag to getattr interface function
      fa2b906f