Skip to content

Commits

Permalink
Jane-Chu/dax-p…
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Commits on Oct 21, 2021

  1. dm: Ensure dm honors DAXDEV_F_RECOVERY flag on dax only

    dm_dax_direct_access() supports DAXDEV_F_RECOVERY, so it may
    translate a poisoned range. But if dm_dax_copy_to/from_iter()
    don't have a dax_copy_to/from_iter() foundation underneath,
    performing load/store over poisoned range is dangerous and
    should be avoided.
    
    Signed-off-by: Jane Chu <jane.chu@oracle.com>
    jchu314atgithub authored and intel-lab-lkp committed Oct 21, 2021
    Copy the full SHA
    0e6f478 View commit details
    Browse the repository at this point in the history
  2. dax,pmem: Add data recovery feature to pmem_copy_to/from_iter()

    When DAXDEV_F_RECOVERY flag is set, pmem_copy_to_iter() shall read
    as much data as possible up till the first poisoned page is
    encountered, and pmem_copy_from_iter() shall try to clear poison(s)
    within the page aligned range prior to writing.
    
    Signed-off-by: Jane Chu <jane.chu@oracle.com>
    jchu314atgithub authored and intel-lab-lkp committed Oct 21, 2021
    Copy the full SHA
    a01994a View commit details
    Browse the repository at this point in the history
  3. dm,dax,pmem: prepare dax_copy_to/from_iter() APIs with DAXDEV_F_RECOVERY

    Prepare dax_copy_to/from_iter() APIs with DAXDEV_F_RECOVERY flag
    such that when the flag is set, the underlying driver implementation
    of the APIs may deal with potential poison in a given address
    range and read partial data or write after clearing poison.
    
    Signed-off-by: Jane Chu <jane.chu@oracle.com>
    jchu314atgithub authored and intel-lab-lkp committed Oct 21, 2021
    Copy the full SHA
    d17857d View commit details
    Browse the repository at this point in the history
  4. pmem: pmem_dax_direct_access() to honor the DAXDEV_F_RECOVERY flag

    Let pmem_dax_direct_access() skip badblock checking if the caller
    intends to do data recovery by providing the DAXDEV_F_RECOVERY flag.
    
    Signed-off-by: Jane Chu <jane.chu@oracle.com>
    jchu314atgithub authored and intel-lab-lkp committed Oct 21, 2021
    Copy the full SHA
    eed5efc View commit details
    Browse the repository at this point in the history
  5. dax: prepare dax_direct_access() API with DAXDEV_F_RECOVERY flag

    Prepare dax_direct_access() API with DAXDEV_F_RECOVERY flag
    such that the API may perform device address translation
    in spite of the presence of poison(s) in a given range.
    
    Signed-off-by: Jane Chu <jane.chu@oracle.com>
    jchu314atgithub authored and intel-lab-lkp committed Oct 21, 2021
    Copy the full SHA
    a091d34 View commit details
    Browse the repository at this point in the history
  6. dax: introduce RWF_RECOVERY_DATA flag to preadv2() and pwritev2()

    Introduce RWF_RECOVERY_DATA flag to preadv2() and pwritev2()
    for the purpose of recovering data loss due to dax media error.
    Hence the functionality ties to the underlying media and driver
    with capability to clear media error(s) on the fly.
    
    When this flag is provided with preadv2(), preadv2() will attempt
    to read as much data as possible until the poisoned page is
    encountered.
    
    When the flag is provided with pwritev2(), pwritev2() will attempt
    to clear media error within the user specified range and then write
    the user provided data to the range. Both the range and length
    parameters must be page aligned in order get the recovery process
    to work.
    
    Signed-off-by: Jane Chu <jane.chu@oracle.com>
    jchu314atgithub authored and intel-lab-lkp committed Oct 21, 2021
    Copy the full SHA
    1606bf1 View commit details
    Browse the repository at this point in the history

Commits on Oct 13, 2021

  1. dm: Remove redundant flush_workqueue() calls

    destroy_workqueue() already drains the queue before destroying it, so
    there is no need to flush it explicitly.
    
    Remove the redundant flush_workqueue() calls.
    
    This was generated with coccinelle:
    
    @@
    expression E;
    @@
    - 	flush_workqueue(E);
    	destroy_workqueue(E);
    
    Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
    Signed-off-by: Mike Snitzer <snitzer@redhat.com>
    tititiou36 authored and snitm committed Oct 13, 2021
    Copy the full SHA
    dffca4d View commit details
    Browse the repository at this point in the history
  2. dm crypt: log aead integrity violations to audit subsystem

    Since dm-crypt target can be stacked on dm-integrity targets to
    provide authenticated encryption, integrity violations are recognized
    here during aead computation. We use the dm-audit submodule to
    signal those events to user space, too.
    
    The construction and destruction of crypt device mappings are also
    logged as audit events.
    
    Signed-off-by: Michael Weiß <michael.weiss@aisec.fraunhofer.de>
    Signed-off-by: Mike Snitzer <snitzer@redhat.com>
    quitschbo authored and snitm committed Oct 13, 2021
    Copy the full SHA
    3d46a66 View commit details
    Browse the repository at this point in the history
  3. dm integrity: log audit events for dm-integrity target

    dm-integrity signals integrity violations by returning I/O errors
    to user space. To identify integrity violations by a controlling
    instance, the kernel audit subsystem can be used to emit audit
    events to user space. We use the new dm-audit submodule allowing
    to emit audit events on relevant I/O errors.
    
    The construction and destruction of integrity device mappings are
    also relevant for auditing a system. Thus, those events are also
    logged as audit events.
    
    Signed-off-by: Michael Weiß <michael.weiss@aisec.fraunhofer.de>
    Signed-off-by: Mike Snitzer <snitzer@redhat.com>
    quitschbo authored and snitm committed Oct 13, 2021
    Copy the full SHA
    8503243 View commit details
    Browse the repository at this point in the history
  4. dm: introduce audit event module for device mapper

    To be able to send auditing events to user space, we introduce a
    generic dm-audit module. It provides helper functions to emit audit
    events through the kernel audit subsystem. We claim the
    AUDIT_DM_CTRL type=1336 and AUDIT_DM_EVENT type=1337 out of the
    audit event messages range in the corresponding userspace api in
    'include/uapi/linux/audit.h' for those events.
    
    AUDIT_DM_CTRL is used to provide information about creation and
    destruction of device mapper targets which are triggered by user space
    admin control actions.
    AUDIT_DM_EVENT is used to provide information about actual errors
    during operation of the mapped device, showing e.g. integrity
    violations in audit log.
    
    Following commits to device mapper targets actually will make use of
    this to emit those events in relevant cases.
    
    The audit logs look like this if executing the following simple test:
    
     # dd if=/dev/zero of=test.img bs=1M count=1024
     # losetup -f test.img
     # integritysetup -vD format --integrity sha256 -t 32 /dev/loop0
     # integritysetup open -D /dev/loop0 --integrity sha256 integritytest
     # integritysetup status integritytest
     # integritysetup close integritytest
     # integritysetup open -D /dev/loop0 --integrity sha256 integritytest
     # integritysetup status integritytest
     # dd if=/dev/urandom of=/dev/loop0 bs=512 count=1 seek=100000
     # dd if=/dev/mapper/integritytest of=/dev/null
    
    -------------------------
    audit.log from auditd
    
    type=UNKNOWN[1336] msg=audit(1630425039.363:184): module=integrity
    op=ctr ppid=3807 pid=3819 auid=1000 uid=0 gid=0 euid=0 suid=0 fsuid=0
    egid=0 sgid=0 fsgid=0 tty=pts2 ses=3 comm="integritysetup"
    exe="/sbin/integritysetup" subj==unconfined dev=254:3
    error_msg='success' res=1
    type=UNKNOWN[1336] msg=audit(1630425039.471:185): module=integrity
    op=dtr ppid=3807 pid=3819 auid=1000 uid=0 gid=0 euid=0 suid=0 fsuid=0
    egid=0 sgid=0 fsgid=0 tty=pts2 ses=3 comm="integritysetup"
    exe="/sbin/integritysetup" subj==unconfined dev=254:3
    error_msg='success' res=1
    type=UNKNOWN[1336] msg=audit(1630425039.611:186): module=integrity
    op=ctr ppid=3807 pid=3819 auid=1000 uid=0 gid=0 euid=0 suid=0 fsuid=0
    egid=0 sgid=0 fsgid=0 tty=pts2 ses=3 comm="integritysetup"
    exe="/sbin/integritysetup" subj==unconfined dev=254:3
    error_msg='success' res=1
    type=UNKNOWN[1336] msg=audit(1630425054.475:187): module=integrity
    op=dtr ppid=3807 pid=3819 auid=1000 uid=0 gid=0 euid=0 suid=0 fsuid=0
    egid=0 sgid=0 fsgid=0 tty=pts2 ses=3 comm="integritysetup"
    exe="/sbin/integritysetup" subj==unconfined dev=254:3
    error_msg='success' res=1
    
    type=UNKNOWN[1336] msg=audit(1630425073.171:191): module=integrity
    op=ctr ppid=3807 pid=3883 auid=1000 uid=0 gid=0 euid=0 suid=0 fsuid=0
    egid=0 sgid=0 fsgid=0 tty=pts2 ses=3 comm="integritysetup"
    exe="/sbin/integritysetup" subj==unconfined dev=254:3
    error_msg='success' res=1
    
    type=UNKNOWN[1336] msg=audit(1630425087.239:192): module=integrity
    op=dtr ppid=3807 pid=3902 auid=1000 uid=0 gid=0 euid=0 suid=0 fsuid=0
    egid=0 sgid=0 fsgid=0 tty=pts2 ses=3 comm="integritysetup"
    exe="/sbin/integritysetup" subj==unconfined dev=254:3
    error_msg='success' res=1
    
    type=UNKNOWN[1336] msg=audit(1630425093.755:193): module=integrity
    op=ctr ppid=3807 pid=3906 auid=1000 uid=0 gid=0 euid=0 suid=0 fsuid=0
    egid=0 sgid=0 fsgid=0 tty=pts2 ses=3 comm="integritysetup"
    exe="/sbin/integritysetup" subj==unconfined dev=254:3
    error_msg='success' res=1
    
    type=UNKNOWN[1337] msg=audit(1630425112.119:194): module=integrity
    op=integrity-checksum dev=254:3 sector=77480 res=0
    type=UNKNOWN[1337] msg=audit(1630425112.119:195): module=integrity
    op=integrity-checksum dev=254:3 sector=77480 res=0
    type=UNKNOWN[1337] msg=audit(1630425112.119:196): module=integrity
    op=integrity-checksum dev=254:3 sector=77480 res=0
    type=UNKNOWN[1337] msg=audit(1630425112.119:197): module=integrity
    op=integrity-checksum dev=254:3 sector=77480 res=0
    type=UNKNOWN[1337] msg=audit(1630425112.119:198): module=integrity
    op=integrity-checksum dev=254:3 sector=77480 res=0
    type=UNKNOWN[1337] msg=audit(1630425112.119:199): module=integrity
    op=integrity-checksum dev=254:3 sector=77480 res=0
    type=UNKNOWN[1337] msg=audit(1630425112.119:200): module=integrity
    op=integrity-checksum dev=254:3 sector=77480 res=0
    type=UNKNOWN[1337] msg=audit(1630425112.119:201): module=integrity
    op=integrity-checksum dev=254:3 sector=77480 res=0
    type=UNKNOWN[1337] msg=audit(1630425112.119:202): module=integrity
    op=integrity-checksum dev=254:3 sector=77480 res=0
    type=UNKNOWN[1337] msg=audit(1630425112.119:203): module=integrity
    op=integrity-checksum dev=254:3 sector=77480 res=0
    
    Signed-off-by: Michael Weiß <michael.weiss@aisec.fraunhofer.de>
    
    Signed-off-by: Mike Snitzer <snitzer@redhat.com>
    quitschbo authored and snitm committed Oct 13, 2021
    Copy the full SHA
    c1d7fa9 View commit details
    Browse the repository at this point in the history

Commits on Oct 12, 2021

  1. dm: fix mempool NULL pointer race when completing IO

    dm_io_dec_pending() calls end_io_acct() first and will then dec md
    in-flight pending count. But if a task is swapping DM table at same
    time this can result in a crash due to mempool->elements being NULL:
    
    task1                             task2
    do_resume
     ->do_suspend
      ->dm_wait_for_completion
                                      bio_endio
    				   ->clone_endio
    				    ->dm_io_dec_pending
    				     ->end_io_acct
    				      ->wakeup task1
     ->dm_swap_table
      ->__bind
       ->__bind_mempools
        ->bioset_exit
         ->mempool_exit
                                         ->free_io
    
    [ 67.330330] Unable to handle kernel NULL pointer dereference at
    virtual address 0000000000000000
    ......
    [ 67.330494] pstate: 80400085 (Nzcv daIf +PAN -UAO)
    [ 67.330510] pc : mempool_free+0x70/0xa0
    [ 67.330515] lr : mempool_free+0x4c/0xa0
    [ 67.330520] sp : ffffff8008013b20
    [ 67.330524] x29: ffffff8008013b20 x28: 0000000000000004
    [ 67.330530] x27: ffffffa8c2ff40a0 x26: 00000000ffff1cc8
    [ 67.330535] x25: 0000000000000000 x24: ffffffdada34c800
    [ 67.330541] x23: 0000000000000000 x22: ffffffdada34c800
    [ 67.330547] x21: 00000000ffff1cc8 x20: ffffffd9a1304d80
    [ 67.330552] x19: ffffffdada34c970 x18: 000000b312625d9c
    [ 67.330558] x17: 00000000002dcfbf x16: 00000000000006dd
    [ 67.330563] x15: 000000000093b41e x14: 0000000000000010
    [ 67.330569] x13: 0000000000007f7a x12: 0000000034155555
    [ 67.330574] x11: 0000000000000001 x10: 0000000000000001
    [ 67.330579] x9 : 0000000000000000 x8 : 0000000000000000
    [ 67.330585] x7 : 0000000000000000 x6 : ffffff80148b5c1a
    [ 67.330590] x5 : ffffff8008013ae0 x4 : 0000000000000001
    [ 67.330596] x3 : ffffff80080139c8 x2 : ffffff801083bab8
    [ 67.330601] x1 : 0000000000000000 x0 : ffffffdada34c970
    [ 67.330609] Call trace:
    [ 67.330616] mempool_free+0x70/0xa0
    [ 67.330627] bio_put+0xf8/0x110
    [ 67.330638] dec_pending+0x13c/0x230
    [ 67.330644] clone_endio+0x90/0x180
    [ 67.330649] bio_endio+0x198/0x1b8
    [ 67.330655] dec_pending+0x190/0x230
    [ 67.330660] clone_endio+0x90/0x180
    [ 67.330665] bio_endio+0x198/0x1b8
    [ 67.330673] blk_update_request+0x214/0x428
    [ 67.330683] scsi_end_request+0x2c/0x300
    [ 67.330688] scsi_io_completion+0xa0/0x710
    [ 67.330695] scsi_finish_command+0xd8/0x110
    [ 67.330700] scsi_softirq_done+0x114/0x148
    [ 67.330708] blk_done_softirq+0x74/0xd0
    [ 67.330716] __do_softirq+0x18c/0x374
    [ 67.330724] irq_exit+0xb4/0xb8
    [ 67.330732] __handle_domain_irq+0x84/0xc0
    [ 67.330737] gic_handle_irq+0x148/0x1b0
    [ 67.330744] el1_irq+0xe8/0x190
    [ 67.330753] lpm_cpuidle_enter+0x4f8/0x538
    [ 67.330759] cpuidle_enter_state+0x1fc/0x398
    [ 67.330764] cpuidle_enter+0x18/0x20
    [ 67.330772] do_idle+0x1b4/0x290
    [ 67.330778] cpu_startup_entry+0x20/0x28
    [ 67.330786] secondary_start_kernel+0x160/0x170
    
    Fix this by:
    1) Establishing pointers to 'struct dm_io' members in
    dm_io_dec_pending() so that they may be passed into end_io_acct()
    _after_ free_io() is called.
    2) Moving end_io_acct() after free_io().
    
    Cc: stable@vger.kernel.org
    Signed-off-by: Jiazi Li <lijiazi@xiaomi.com>
    Signed-off-by: Mike Snitzer <snitzer@redhat.com>
    Jiazi Li authored and snitm committed Oct 12, 2021
    Copy the full SHA
    d208b89 View commit details
    Browse the repository at this point in the history
  2. dm rq: don't queue request to blk-mq during DM suspend

    DM uses blk-mq's quiesce/unquiesce to stop/start device mapper queue.
    
    But blk-mq's unquiesce may come from outside events, such as elevator
    switch, updating nr_requests or others, and request may come during
    suspend, so simply ask for blk-mq to requeue it.
    
    Fixes one kernel panic issue when running updating nr_requests and
    dm-mpath suspend/resume stress test.
    
    Cc: stable@vger.kernel.org
    Signed-off-by: Ming Lei <ming.lei@redhat.com>
    Signed-off-by: Mike Snitzer <snitzer@redhat.com>
    Ming Lei authored and snitm committed Oct 12, 2021
    Copy the full SHA
    b4459b1 View commit details
    Browse the repository at this point in the history
  3. dm clone: make array 'descs' static

    Don't populate the read-only array descs on the stack but instead it
    static and add extra const. Also makes the object code smaller by 66
    bytes:
    
    Before:
       text    data     bss     dec     hex filename
      42382   11140     512   54034    d312 ./drivers/md/dm-clone-target.o
    
    After:
       text    data     bss     dec     hex filename
      42220   11236     512   53968    d2d0 ./drivers/md/dm-clone-target.o
    
    (gcc version 11.2.0)
    
    Signed-off-by: Colin Ian King <colin.king@canonical.com>
    Signed-off-by: Mike Snitzer <snitzer@redhat.com>
    Colin Ian King authored and snitm committed Oct 12, 2021
    Copy the full SHA
    ec132ef View commit details
    Browse the repository at this point in the history
  4. dm verity: skip redundant verity_handle_err() on I/O errors

    Without FEC, dm-verity won't call verity_handle_err() when I/O fails,
    but with FEC enabled, it currently does even if an I/O error has
    occurred.
    
    If there is an I/O error and FEC correction fails, return the error
    instead of calling verity_handle_err() again.
    
    Suggested-by: Sami Tolvanen <samitolvanen@google.com>
    Signed-off-by: Akilesh Kailash <akailash@google.com>
    Reviewed-by: Sami Tolvanen <samitolvanen@google.com>
    Signed-off-by: Mike Snitzer <snitzer@redhat.com>
    Akilesh Kailash authored and snitm committed Oct 12, 2021
    Copy the full SHA
    2c0468e View commit details
    Browse the repository at this point in the history

Commits on Oct 11, 2021

  1. Linux 5.15-rc5

    torvalds committed Oct 11, 2021
    Copy the full SHA
    64570fb View commit details
    Browse the repository at this point in the history

Commits on Oct 10, 2021

  1. Merge tag 'powerpc-5.15-3' of git://git.kernel.org/pub/scm/linux/kern…

    …el/git/powerpc/linux
    
    Pull powerpc fixes from Michael Ellerman:
     "A bit of a big batch, partly because I didn't send any last week, and
      also just because the BPF fixes happened to land this week.
    
      Summary:
    
       - Fix a regression hit by the IPR SCSI driver, introduced by the
         recent addition of MSI domains on pseries.
    
       - A big series including 8 BPF fixes, some with potential security
         impact and the rest various code generation issues.
    
       - Fix our program check assembler entry path, which was accidentally
         jumping into a gas macro and generating strange stack frames, which
         could confuse find_bug().
    
       - A couple of fixes, and related changes, to fix corner cases in our
         machine check handling.
    
       - Fix our DMA IOMMU ops, which were not always returning the optimal
         DMA mask, leading to at least one device falling back to 32-bit DMA
         when it shouldn't.
    
       - A fix for KUAP handling on 32-bit Book3S.
    
       - Fix crashes seen when kdumping on some pseries systems.
    
      Thanks to Naveen N. Rao, Nicholas Piggin, Alexey Kardashevskiy, Cédric
      Le Goater, Christophe Leroy, Mahesh Salgaonkar, Abdul Haleem,
      Christoph Hellwig, Johan Almbladh, Stan Johnson"
    
    * tag 'powerpc-5.15-3' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux:
      pseries/eeh: Fix the kdump kernel crash during eeh_pseries_init
      powerpc/32s: Fix kuap_kernel_restore()
      powerpc/pseries/msi: Add an empty irq_write_msi_msg() handler
      powerpc/64s: Fix unrecoverable MCE calling async handler from NMI
      powerpc/64/interrupt: Reconcile soft-mask state in NMI and fix false BUG
      powerpc/64: warn if local irqs are enabled in NMI or hardirq context
      powerpc/traps: do not enable irqs in _exception
      powerpc/64s: fix program check interrupt emergency stack path
      powerpc/bpf ppc32: Fix BPF_SUB when imm == 0x80000000
      powerpc/bpf ppc32: Do not emit zero extend instruction for 64-bit BPF_END
      powerpc/bpf ppc32: Fix JMP32_JSET_K
      powerpc/bpf ppc32: Fix ALU32 BPF_ARSH operation
      powerpc/bpf: Emit stf barrier instruction sequences for BPF_NOSPEC
      powerpc/security: Add a helper to query stf_barrier type
      powerpc/bpf: Fix BPF_SUB when imm == 0x80000000
      powerpc/bpf: Fix BPF_MOD when imm == 1
      powerpc/bpf: Validate branch ranges
      powerpc/lib: Add helper to check if offset is within conditional branch range
      powerpc/iommu: Report the correct most efficient DMA mask for PCI devices
    torvalds committed Oct 10, 2021
    Copy the full SHA
    efb52a7 View commit details
    Browse the repository at this point in the history
  2. Merge tag 'objtool_urgent_for_v5.15_rc5' of git://git.kernel.org/pub/…

    …scm/linux/kernel/git/tip/tip
    
    Pull objtool fixes from Borislav Petkov:
    
     - Remove an extra section.len member in favour of section.sh_size
    
     - Align .altinstructions section creation with the kernel's by creating
       them with entry size of 0
    
     - Fix objtool to convert a reloc symbol to a section offset and not to
       not warn about not knowing how
    
    * tag 'objtool_urgent_for_v5.15_rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
      objtool: Remove redundant 'len' field from struct section
      objtool: Make .altinstructions section entry size consistent
      objtool: Remove reloc symbol type checks in get_alt_entry()
    torvalds committed Oct 10, 2021
    Copy the full SHA
    75cd9b0 View commit details
    Browse the repository at this point in the history
  3. Merge tag 'x86_urgent_for_v5.15_rc5' of git://git.kernel.org/pub/scm/…

    …linux/kernel/git/tip/tip
    
    Pull x86 fixes from Borislav Petkov:
    
     - A FPU fix to properly handle invalid MXCSR values: 32-bit masks them
       out due to historical reasons and 64-bit kernels reject them
    
     - A fix to clear X86_FEATURE_SMAP when support for is not
       config-enabled
    
     - Three fixes correcting misspelled Kconfig symbols used in code
    
     - Two resctrl object cleanup fixes
    
     - Yet another attempt at fixing the neverending saga of botched x86
       timers, this time because some incredibly smart hardware decides to
       turn off the HPET timer in a low power state - who cares if the OS is
       relying on it...
    
     - Check the full return value range of an SEV VMGEXIT call to determine
       whether it returned an error
    
    * tag 'x86_urgent_for_v5.15_rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
      x86/fpu: Restore the masking out of reserved MXCSR bits
      x86/Kconfig: Correct reference to MWINCHIP3D
      x86/platform/olpc: Correct ifdef symbol to intended CONFIG_OLPC_XO15_SCI
      x86/entry: Clear X86_FEATURE_SMAP when CONFIG_X86_SMAP=n
      x86/entry: Correct reference to intended CONFIG_64_BIT
      x86/resctrl: Fix kfree() of the wrong type in domain_add_cpu()
      x86/resctrl: Free the ctrlval arrays when domain_setup_mon_state() fails
      x86/hpet: Use another crystalball to evaluate HPET usability
      x86/sev: Return an error on a returned non-zero SW_EXITINFO1[31:0]
    torvalds committed Oct 10, 2021
    Copy the full SHA
    c22ccc4 View commit details
    Browse the repository at this point in the history

Commits on Oct 9, 2021

  1. Merge branch 'i2c/for-current-fixed' of git://git.kernel.org/pub/scm/…

    …linux/kernel/git/wsa/linux
    
    Pull i2c fixes from Wolfram Sang:
     "Three driver bugfixes and one leak fix for the core"
    
    * 'i2c/for-current-fixed' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux:
      i2c: mlxcpld: Modify register setting for 400KHz frequency
      i2c: mlxcpld: Fix criteria for frequency setting
      i2c: mediatek: Add OFFSET_EXT_CONF setting back
      i2c: acpi: fix resource leak in reconfiguration device addition
    torvalds committed Oct 9, 2021
    Copy the full SHA
    7fd2bf8 View commit details
    Browse the repository at this point in the history
  2. Merge tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/g…

    …it/jejb/scsi
    
    Pull SCSI fixes from James Bottomley:
     "Five fixes, all in drivers.
    
      The big change is the UFS task management rework, with lpfc next and
      the rest being fairly minor and obvious fixes"
    
    * tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi:
      scsi: iscsi: Fix iscsi_task use after free
      scsi: lpfc: Fix memory overwrite during FC-GS I/O abort handling
      scsi: elx: efct: Delete stray unlock statement
      scsi: ufs: core: Fix task management completion
      scsi: acornscsi: Remove scsi_cmd_to_tag() reference
    torvalds committed Oct 9, 2021
    Copy the full SHA
    0950fcb View commit details
    Browse the repository at this point in the history
  3. Merge tag 'block-5.15-2021-10-09' of git://git.kernel.dk/linux-block

    Pull block fixes from Jens Axboe:
     "Two small fixes for this release:
    
       - Add missing QUEUE_FLAG_HCTX_ACTIVE in the debugfs handling
         (Johannes)
    
       - Fix double free / UAF issue in __alloc_disk_node (Tetsuo)"
    
    * tag 'block-5.15-2021-10-09' of git://git.kernel.dk/linux-block:
      block: decode QUEUE_FLAG_HCTX_ACTIVE in debugfs output
      block: genhd: fix double kfree() in __alloc_disk_node()
    torvalds committed Oct 9, 2021
    Copy the full SHA
    50eb0a0 View commit details
    Browse the repository at this point in the history
  4. Merge tag '5.15-rc4-ksmbd-fixes' of git://git.samba.org/ksmbd

    Pull ksmbd fixes from Steve French:
     "Six fixes for the ksmbd kernel server, including two additional
      overflow checks, a fix for oops, and some cleanup (e.g. remove dead
      code for less secure dialects that has been removed)"
    
    * tag '5.15-rc4-ksmbd-fixes' of git://git.samba.org/ksmbd:
      ksmbd: fix oops from fuse driver
      ksmbd: fix version mismatch with out of tree
      ksmbd: use buf_data_size instead of recalculation in smb3_decrypt_req()
      ksmbd: remove the leftover of smb2.0 dialect support
      ksmbd: check strictly data area in ksmbd_smb2_check_message()
      ksmbd: add the check to vaildate if stream protocol length exceeds maximum value
    torvalds committed Oct 9, 2021
    Copy the full SHA
    c75de84 View commit details
    Browse the repository at this point in the history
  5. Merge tag 'riscv-for-linus-5.15-rc5' of git://git.kernel.org/pub/scm/…

    …linux/kernel/git/riscv/linux
    
    Pull RISC-V fixes from Palmer Dabbelt:
    
     - A pair of fixes (along with the necessory cleanup) to our VDSO, to
       avoid a locking during OOM and to prevent the text from overflowing
       into the data page
    
     - A fix to checksyscalls to teach it about our rv32 UABI
    
     - A fix to add clone3() to the rv32 UABI, which was pointed out by
       checksyscalls
    
     - A fix to properly flush the icache on the local CPU in addition to
       the remote CPUs
    
    * tag 'riscv-for-linus-5.15-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/riscv/linux:
      checksyscalls: Unconditionally ignore fstat{,at}64
      riscv: Flush current cpu icache before other cpus
      RISC-V: Include clone3() on rv32
      riscv/vdso: make arch_setup_additional_pages wait for mmap_sem for write killable
      riscv/vdso: Move vdso data page up front
      riscv/vdso: Refactor asm/vdso.h
    torvalds committed Oct 9, 2021
    Copy the full SHA
    717478d View commit details
    Browse the repository at this point in the history

Commits on Oct 8, 2021

  1. Merge tag 's390-5.15-5' of git://git.kernel.org/pub/scm/linux/kernel/…

    …git/s390/linux
    
    Pull s390 fixes from Vasily Gorbik:
    
     - Fix potential memory leak on a error path in eBPF
    
     - Fix handling of zpci device on reserve
    
    * tag 's390-5.15-5' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux:
      s390/pci: fix zpci_zdev_put() on reserve
      bpf, s390: Fix potential memory leak about jit_data
    torvalds committed Oct 8, 2021
    Copy the full SHA
    f84fc4e View commit details
    Browse the repository at this point in the history
  2. Merge tag 'xtensa-20211008' of git://github.com/jcmvbkbc/linux-xtensa

    Pull xtensa fixes from Max Filippov:
    
     - fix build/boot issues caused by CONFIG_OF vs CONFIC_USE_OF usage
    
     - fix reset handler for xtfpga boards
    
    * tag 'xtensa-20211008' of git://github.com/jcmvbkbc/linux-xtensa:
      xtensa: xtfpga: Try software restart before simulating CPU reset
      xtensa: xtfpga: use CONFIG_USE_OF instead of CONFIG_OF
      xtensa: call irqchip_init only when CONFIG_USE_OF is selected
      xtensa: use CONFIG_USE_OF instead of CONFIG_OF
    torvalds committed Oct 8, 2021
    Copy the full SHA
    5d6ab0b View commit details
    Browse the repository at this point in the history
  3. Merge tag 'for-linus-5.15b-rc5-tag' of git://git.kernel.org/pub/scm/l…

    …inux/kernel/git/xen/tip
    
    Pull xen fixes from Juergen Gross:
    
     - fix two minor issues in the Xen privcmd driver plus a cleanup patch
       for that driver
    
     - fix multiple issues related to running as PVH guest and some related
       earlyprintk fixes for other Xen guest types
    
     - fix an issue introduced in 5.15 the Xen balloon driver
    
    * tag 'for-linus-5.15b-rc5-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip:
      xen/balloon: fix cancelled balloon action
      xen/x86: adjust data placement
      x86/PVH: adjust function/data placement
      xen/x86: hook up xen_banner() also for PVH
      xen/x86: generalize preferred console model from PV to PVH Dom0
      xen/x86: make "earlyprintk=xen" work for HVM/PVH DomU
      xen/x86: allow "earlyprintk=xen" to work for PV Dom0
      xen/x86: make "earlyprintk=xen" work better for PVH Dom0
      xen/x86: allow PVH Dom0 without XEN_PV=y
      xen/x86: prevent PVH type from getting clobbered
      xen/privcmd: drop "pages" parameter from xen_remap_pfn()
      xen/privcmd: fix error handling in mmap-resource processing
      xen/privcmd: replace kcalloc() by kvcalloc() when allocating empty pages
    torvalds committed Oct 8, 2021
    Copy the full SHA
    3946b46 View commit details
    Browse the repository at this point in the history
  4. Merge tag 'asm-generic-fixes-5.15' of git://git.kernel.org/pub/scm/li…

    …nux/kernel/git/arnd/asm-generic
    
    Pull asm-generic fixes from Arnd Bergmann:
     "There is one build fix for Arm platforms that ended up impacting most
      architectures because of the way the drivers/firmware Kconfig file is
      wired up:
    
      The CONFIG_QCOM_SCM dependency have caused a number of randconfig
      regressions over time, and some still remain in v5.15-rc4. The fix we
      agreed on in the end is to make this symbol selected by any driver
      using it, and then building it even for non-Arm platforms with
      CONFIG_COMPILE_TEST.
    
      To make this work on all architectures, the drivers/firmware/Kconfig
      file needs to be included for all architectures to make the symbol
      itself visible.
    
      In a separate discussion, we found that a sound driver patch that is
      pending for v5.16 needs the same change to include this Kconfig file,
      so the easiest solution seems to have my Kconfig rework included in
      v5.15.
    
      Finally, the branch also includes a small unrelated build fix for
      NOMMU architectures"
    
    Link: https://lore.kernel.org/all/20210928153508.101208f8@canb.auug.org.au/
    Link: https://lore.kernel.org/all/20210928075216.4193128-1-arnd@kernel.org/
    Link: https://lore.kernel.org/all/20211007151010.333516-1-arnd@kernel.org/
    
    * tag 'asm-generic-fixes-5.15' of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/asm-generic:
      asm-generic/io.h: give stub iounmap() on !MMU same prototype as elsewhere
      qcom_scm: hide Kconfig symbol
      firmware: include drivers/firmware/Kconfig unconditionally
    torvalds committed Oct 8, 2021
    Copy the full SHA
    0dcf60d View commit details
    Browse the repository at this point in the history
  5. Merge tag 'acpi-5.15-rc5' of git://git.kernel.org/pub/scm/linux/kerne…

    …l/git/rafael/linux-pm
    
    Pull ACPI fix from Rafael Wysocki:
     "Fix a recent ACPI-related regression in the PCI subsystem that
      introduced a NULL pointer dereference possible to trigger from
      user space via sysfs on some systems"
    
    * tag 'acpi-5.15-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
      PCI: ACPI: Check parent pointer in acpi_pci_find_companion()
    torvalds committed Oct 8, 2021
    Copy the full SHA
    cdc726f View commit details
    Browse the repository at this point in the history
  6. Merge tag 'usb-5.15-rc5' of git://git.kernel.org/pub/scm/linux/kernel…

    …/git/gregkh/usb
    
    Pull USB fixes from Greg KH:
     "Here are some small USB fixes for 5.15-rc5 that resolve a number of
      reported issues:
    
       - gadget driver fixes
    
       - xhci build warning fixes
    
       - build configuration fix
    
       - cdc-acm tty handling fixes
    
       - cdc-wdm fix
    
       - typec fixes
    
      All of these have been in linux-next for a while with no reported
      issues"
    
    * tag 'usb-5.15-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb:
      USB: cdc-acm: fix break reporting
      USB: cdc-acm: fix racy tty buffer accesses
      usb: gadget: f_uac2: fixed EP-IN wMaxPacketSize
      usb: cdc-wdm: Fix check for WWAN
      usb: chipidea: ci_hdrc_imx: Also search for 'phys' phandle
      usb: typec: tcpm: handle SRC_STARTUP state if cc changes
      usb: typec: tcpci: don't handle vSafe0V event if it's not enabled
      usb: typec: tipd: Remove dependency on "connector" child fwnode
      Partially revert "usb: Kconfig: using select for USB_COMMON dependency"
      usb: dwc3: gadget: Revert "set gadgets parent to the right controller"
      usb: xhci: tegra: mark PM functions as __maybe_unused
    torvalds committed Oct 8, 2021
    Copy the full SHA
    741668e View commit details
    Browse the repository at this point in the history
  7. Merge tag 'mmc-v5.15-rc4' of git://git.kernel.org/pub/scm/linux/kerne…

    …l/git/ulfh/mmc
    
    Pull MMC fixes from Ulf Hansson:
     "A couple of MMC host fixes:
    
       - meson-gx: Fix read/write access for dram-access-quirk
    
       - sdhci-of-at91: Fix calibration sequence"
    
    * tag 'mmc-v5.15-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/ulfh/mmc:
      mmc: meson-gx: do not use memcpy_to/fromio for dram-access-quirk
      mmc: sdhci-of-at91: replace while loop with read_poll_timeout
      mmc: sdhci-of-at91: wait for calibration done before proceed
    torvalds committed Oct 8, 2021
    Copy the full SHA
    9c7e705 View commit details
    Browse the repository at this point in the history
  8. Merge tag 'drm-fixes-2021-10-08' of git://anongit.freedesktop.org/drm…

    …/drm
    
    Pull drm fixes from Dave Airlie:
     "I've returned from my tropical island retreat, even managed to bring
      one of my kids on a dive with some turtles. Thanks to Daniel for doing
      last week's work.
    
      Otherwise this is the weekly fixes pull, it's a bit bigger because the
      vc4 reverts in your tree caused some problems with fixes in the
      drm-misc tree so it got left out last week, so this week has the misc
      fixes rebased without the vc4 pieces.
    
      Otherwise it's i915, amdgpu with the usual fixes and a scattering over
      other drivers.
    
      I expect things should calm down a bit more next week.
    
      core:
       - Kconfig fix for fb_simple vs simpledrm.
    
      i915:
       - Fix RKL HDMI audio
       - Fix runtime pm imbalance on i915_gem_shrink() error path
       - Fix Type-C port access before hw/sw state sync
       - Fix VBT backlight struct version/size check
       - Fix VT-d async flip on SKL/BXT with plane stretch workaround
    
      amdgpu:
       - DCN 3.1 DP alt mode fixes
       - S0ix gfxoff fix
       - Fix DRM_AMD_DC_SI dependencies
       - PCIe DPC handling fix
       - DCN 3.1 scaling fix
       - Documentation fix
    
      amdkfd:
       - Fix potential memory leak
       - IOMMUv2 init fixes
    
      vc4 (there were some hdmi fixes but things got reverted, sort it out
           later):
       - compiler fix
    
      nouveau:
       - Cursor fix
       - Fix ttm buffer moves for ampere gpu's by adding minimal
         acceleration support.
       - memory leak fixes
    
      rockchip:
       - crtc/clk fixup
    
      panel:
       - ili9341 Fix DT bindings indent
       - y030xx067a - yellow tint init seq fix
    
      gbefb:
       - Fix gbefb when built with COMPILE_TEST"
    
    * tag 'drm-fixes-2021-10-08' of git://anongit.freedesktop.org/drm/drm: (33 commits)
      drm/amd/display: Fix detection of 4 lane for DPALT
      drm/amd/display: Limit display scaling to up to 4k for DCN 3.1
      drm/amd/display: Skip override for preferred link settings during link training
      drm/nouveau/debugfs: fix file release memory leak
      drm/nouveau/kms/nv50-: fix file release memory leak
      drm/nouveau: avoid a use-after-free when BO init fails
      DRM: delete DRM IRQ legacy midlayer docs
      video: fbdev: gbefb: Only instantiate device when built for IP32
      fbdev: simplefb: fix Kconfig dependencies
      drm/panel: abt-y030xx067a: yellow tint fix
      dt-bindings: panel: ili9341: correct indentation
      drm/nouveau/fifo/ga102: initialise chid on return from channel creation
      drm/rockchip: Update crtc fixup to account for fractional clk change
      drm/nouveau/ga102-: support ttm buffer moves via copy engine
      drm/nouveau/kms/tu102-: delay enabling cursor until after assign_windows
      drm/sun4i: dw-hdmi: Fix HDMI PHY clock setup
      drm/vc4: hdmi: Remove unused struct
      drm/kmb: Enable alpha blended second plane
      drm/amdgpu: handle the case of pci_channel_io_frozen only in amdgpu_pci_resume
      drm/amdgpu: init iommu after amdkfd device init
      ...
    torvalds committed Oct 8, 2021
    Copy the full SHA
    0068dc8 View commit details
    Browse the repository at this point in the history
  9. asm-generic/io.h: give stub iounmap() on !MMU same prototype as elsew…

    …here
    
    It made -Werror sad.
    
    Signed-off-by: Adam Borowski <kilobyte@angband.pl>
    Signed-off-by: Arnd Bergmann <arnd@arndb.de>
    kilobyte authored and arndb committed Oct 8, 2021
    Copy the full SHA
    2fbc349 View commit details
    Browse the repository at this point in the history
  10. x86/fpu: Restore the masking out of reserved MXCSR bits

    Ser Olmy reported a boot failure:
    
      init[1] bad frame in sigreturn frame:(ptrval) ip:b7c9fbe6 sp:bf933310 orax:ffffffff \
    	  in libc-2.33.so[b7bed000+156000]
      Kernel panic - not syncing: Attempted to kill init! exitcode=0x0000000b
      CPU: 0 PID: 1 Comm: init Tainted: G        W         5.14.9 #1
      Hardware name: Hewlett-Packard HP PC/HP Board, BIOS  JD.00.06 12/06/2001
      Call Trace:
       dump_stack_lvl
       dump_stack
       panic
       do_exit.cold
       do_group_exit
       get_signal
       arch_do_signal_or_restart
       ? force_sig_info_to_task
       ? force_sig
       exit_to_user_mode_prepare
       syscall_exit_to_user_mode
       do_int80_syscall_32
       entry_INT80_32
    
    on an old 32-bit Intel CPU:
    
      vendor_id       : GenuineIntel
      cpu family      : 6
      model           : 6
      model name      : Celeron (Mendocino)
      stepping        : 5
      microcode       : 0x3
    
    Ser bisected the problem to the commit in Fixes.
    
    tglx suggested reverting the rejection of invalid MXCSR values which
    this commit introduced and replacing it with what the old code did -
    simply masking them out to zero.
    
    Further debugging confirmed his suggestion:
    
      fpu->state.fxsave.mxcsr: 0xb7be13b4, mxcsr_feature_mask: 0xffbf
      WARNING: CPU: 0 PID: 1 at arch/x86/kernel/fpu/signal.c:384 __fpu_restore_sig+0x51f/0x540
    
    so restore the original behavior only for 32-bit kernels where you have
    ancient machines with buggy hardware. For 32-bit programs on 64-bit
    kernels, user space which supplies wrong MXCSR values is considered
    malicious so fail the sigframe restoration there.
    
    Fixes: 6f9866a ("x86/fpu/signal: Let xrstor handle the features to init")
    Reported-by: Ser Olmy <ser.olmy@protonmail.com>
    Signed-off-by: Borislav Petkov <bp@suse.de>
    Tested-by: Ser Olmy <ser.olmy@protonmail.com>
    Cc: <stable@vger.kernel.org>
    Link: https://lkml.kernel.org/r/YVtA67jImg3KlBTw@zn.tnic
    Borislav Petkov committed Oct 8, 2021
    Copy the full SHA
    d298b03 View commit details
    Browse the repository at this point in the history
  11. Merge tag 'amd-drm-fixes-5.15-2021-10-06' of https://gitlab.freedeskt…

    …op.org/agd5f/linux into drm-fixes
    
    amd-drm-fixes-5.15-2021-10-06:
    
    amdgpu:
    - DCN 3.1 DP alt mode fixes
    - S0ix gfxoff fix
    - Fix DRM_AMD_DC_SI dependencies
    - PCIe DPC handling fix
    - DCN 3.1 scaling fix
    - Documentation fix
    
    amdkfd:
    - Fix potential memory leak
    - IOMMUv2 init fixes
    
    Signed-off-by: Dave Airlie <airlied@redhat.com>
    From: Alex Deucher <alexander.deucher@amd.com>
    Link: https://patchwork.freedesktop.org/patch/msgid/20211006203828.4818-1-alexander.deucher@amd.com
    airlied committed Oct 8, 2021
    Copy the full SHA
    bf79045 View commit details
    Browse the repository at this point in the history
  12. Merge tag 'drm-misc-fixes-2021-10-06' of git://anongit.freedesktop.or…

    …g/drm/drm-misc into drm-fixes
    
    Rebased drm-misc-fixes for v5.15-rc5:
    - Dropped vc4 patches.
    - Compiler fix for vc4.
    - Cursor fix for nouveau.
    - Fix ttm buffer moves for ampere gpu's by adding minimal acceleration support.
    - Small rockchip fixes.
    - Fix DT bindings indent for ili9341.
    - Fix y030xx067a init sequence to not get a yellow tint.
    - Kconfig fix for fb_simple vs simpledrm.
    - Assorted nouvaeu memory leaks.
    - Fix gbefb when built with COMPILE_TEST.
    
    Signed-off-by: Dave Airlie <airlied@redhat.com>
    
    From: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
    Link: https://patchwork.freedesktop.org/patch/msgid/3272bf72-2c37-31eb-404e-cf7edd485c7d@linux.intel.com
    airlied committed Oct 8, 2021
    Copy the full SHA
    b28a130 View commit details
    Browse the repository at this point in the history
Older