1. 16 Mar, 2020 31 commits
  2. 03 Mar, 2020 1 commit
    • Ville Syrjälä's avatar
      rtc: cmos: Use spin_lock_irqsave() in cmos_interrupt() · 66e4f4a9
      Ville Syrjälä authored
      cmos_interrupt() isn't always called from hardirq context, so
      we must use spin_lock_irqsave() & co.
      
      ================================
      WARNING: inconsistent lock state
      5.6.0-rc2-CI-CI_DRM_7981+ #1 Tainted: G     U
      --------------------------------
      inconsistent {IN-HARDIRQ-W} -> {HARDIRQ-ON-W} usage.
      rtcwake/4315 [HC0[0]:SC0[0]:HE1:SE1] takes:
      ffffffff82635198 (rtc_lock){?...}, at: cmos_interrupt+0x18/0x100
      {IN-HARDIRQ-W} state was registered at:
        lock_acquire+0xa7/0x1c0
        _raw_spin_lock+0x2a/0x40
        cmos_interrupt+0x18/0x100
        rtc_handler+0x75/0xc0
        acpi_ev_fixed_event_detect+0xf9/0x132
        acpi_ev_sci_xrupt_handler+0xb/0x28
        acpi_irq+0x13/0x30
        __handle_irq_event_percpu+0x41/0x2c0
        handle_irq_event_percpu+0x2b/0x70
        handle_irq_event+0x2f/0x50
        handle_fasteoi_irq+0x8e/0x150
        do_IRQ+0x7e/0x160
        ret_from_intr+0x0/0x35
        mwait_idle+0x7e/0x200
        do_idle+0x1bb/0x260
        cpu_startup_entry+0x14/0x20
        start_secondary+0x15f/0x1b0
        secondary_startup_64+0xa4/0xb0
      irq event stamp: 42003
      hardirqs last  enabled at (42003): [<ffffffff81a36567>] _raw_spin_unlock_irqrestore+0x47/0x60
      hardirqs last disabled at (42002): [<ffffffff81a362ed>] _raw_spin_lock_irqsave+0xd/0x50
      softirqs last  enabled at (41848): [<ffffffff81e00385>] __do_softirq+0x385/0x47f
      softirqs last disabled at (41841): [<ffffffff810bab3a>] irq_exit+0xba/0xc0
      
      other info that might help us debug this:
       Possible unsafe locking scenario:
      
             CPU0
             ----
        lock(rtc_lock);
        <Interrupt>
          lock(rtc_lock);
      
       *** DEADLOCK ***
      
      6 locks held by rtcwake/4315:
       #0: ffff888175dc9408 (sb_writers#5){.+.+}, at: vfs_write+0x1a4/0x1d0
       #1: ffff88817406ca80 (&of->mutex){+.+.}, at: kernfs_fop_write+0xdd/0x1b0
       #2: ffff888179be85e0 (kn->count#236){.+.+}, at: kernfs_fop_write+0xe6/0x1b0
       #3: ffffffff82641e00 (system_transition_mutex){+.+.}, at: pm_suspend+0xb3/0x3b0
       #4: ffffffff826b3ee0 (acpi_scan_lock){+.+.}, at: acpi_suspend_begin+0x47/0x80
       #5: ffff888178fc3960 (&dev->mutex){....}, at: device_resume+0x92/0x1c0
      
      stack backtrace:
      CPU: 3 PID: 4315 Comm: rtcwake Tainted: G     U            5.6.0-rc2-CI-CI_DRM_7981+ #1
      Hardware name: Google Soraka/Soraka, BIOS MrChromebox-4.10 08/25/2019
      Call Trace:
       dump_stack+0x71/0x9b
       mark_lock+0x49a/0x500
       ? print_shortest_lock_dependencies+0x200/0x200
       __lock_acquire+0x6d4/0x15d0
       ? __lock_acquire+0x460/0x15d0
       lock_acquire+0xa7/0x1c0
       ? cmos_interrupt+0x18/0x100
       _raw_spin_lock+0x2a/0x40
       ? cmos_interrupt+0x18/0x100
       cmos_interrupt+0x18/0x100
       cmos_resume+0x1fd/0x290
       ? __acpi_pm_set_device_wakeup+0x24/0x100
       pnp_bus_resume+0x5e/0x90
       ? pnp_bus_suspend+0x10/0x10
       dpm_run_callback+0x64/0x280
       device_resume+0xd4/0x1c0
       ? dpm_watchdog_set+0x60/0x60
       dpm_resume+0x106/0x410
       ? dpm_resume_early+0x38c/0x3e0
       dpm_resume_end+0x8/0x10
       suspend_devices_and_enter+0x16f/0xbe0
       ? rcu_read_lock_sched_held+0x4d/0x80
       pm_suspend+0x344/0x3b0
       state_store+0x78/0xe0
       kernfs_fop_write+0x112/0x1b0
       vfs_write+0xb9/0x1d0
       ksys_write+0x9f/0xe0
       do_syscall_64+0x4f/0x220
       entry_SYSCALL_64_after_hwframe+0x49/0xbe
      RIP: 0033:0x7ff934307154
      Code: 89 02 48 c7 c0 ff ff ff ff c3 66 2e 0f 1f 84 00 00 00 00 00 66 90 48 8d 05 b1 07 2e 00 8b 00 85 c0 75 13 b8 01 00 00 00 0f 05 <48> 3d 00 f0 ff ff 77 54 f3 c3 66 90 41 54 55 49 89 d4 53 48 89 f5
      RSP: 002b:00007ffe2647c168 EFLAGS: 00000246 ORIG_RAX: 0000000000000001
      RAX: ffffffffffffffda RBX: 0000000000000004 RCX: 00007ff934307154
      RDX: 0000000000000004 RSI: 000055de3ec4e5a0 RDI: 000000000000000a
      RBP: 000055de3ec4e5a0 R08: 000055de3ec4c5e0 R09: 00007ff9349f3740
      R10: 000055de3ec4a010 R11: 0000000000000246 R12: 000055de3ec4c500
      R13: 0000000000000004 R14: 00007ff9345df2a0 R15: 00007ff9345de760
      
      Fixes: c6d3a278 ("rtc: cmos: acknowledge ACPI driven wake alarms upon resume")
      Fixes: 311ee9c1 ("rtc: cmos: allow using ACPI for RTC alarm instead of HPET")
      Signed-off-by: default avatarVille Syrjälä <ville.syrjala@linux.intel.com>
      Link: https://lore.kernel.org/r/20200221144739.11746-1-ville.syrjala@linux.intel.comSigned-off-by: default avatarAlexandre Belloni <alexandre.belloni@bootlin.com>
      66e4f4a9
  3. 18 Feb, 2020 1 commit
  4. 12 Feb, 2020 2 commits
  5. 10 Feb, 2020 2 commits
    • Linus Torvalds's avatar
      Linux 5.6-rc1 · bb6d3fb3
      Linus Torvalds authored
      bb6d3fb3
    • Linus Torvalds's avatar
      Merge tag 'kbuild-v5.6-2' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild · 89a47dd1
      Linus Torvalds authored
      Pull more Kbuild updates from Masahiro Yamada:
      
       - fix randconfig to generate a sane .config
      
       - rename hostprogs-y / always to hostprogs / always-y, which are more
         natual syntax.
      
       - optimize scripts/kallsyms
      
       - fix yes2modconfig and mod2yesconfig
      
       - make multiple directory targets ('make foo/ bar/') work
      
      * tag 'kbuild-v5.6-2' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild:
        kbuild: make multiple directory targets work
        kconfig: Invalidate all symbols after changing to y or m.
        kallsyms: fix type of kallsyms_token_table[]
        scripts/kallsyms: change table to store (strcut sym_entry *)
        scripts/kallsyms: rename local variables in read_symbol()
        kbuild: rename hostprogs-y/always to hostprogs/always-y
        kbuild: fix the document to use extra-y for vmlinux.lds
        kconfig: fix broken dependency in randconfig-generated .config
      89a47dd1
  6. 09 Feb, 2020 3 commits
    • Linus Torvalds's avatar
      Merge tag 'zonefs-5.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/dlemoal/zonefs · 380a129e
      Linus Torvalds authored
      Pull new zonefs file system from Damien Le Moal:
       "Zonefs is a very simple file system exposing each zone of a zoned
        block device as a file.
      
        Unlike a regular file system with native zoned block device support
        (e.g. f2fs or the on-going btrfs effort), zonefs does not hide the
        sequential write constraint of zoned block devices to the user. As a
        result, zonefs is not a POSIX compliant file system. Its goal is to
        simplify the implementation of zoned block devices support in
        applications by replacing raw block device file accesses with a richer
        file based API, avoiding relying on direct block device file ioctls
        which may be more obscure to developers.
      
        One example of this approach is the implementation of LSM
        (log-structured merge) tree structures (such as used in RocksDB and
        LevelDB) on zoned block devices by allowing SSTables to be stored in a
        zone file similarly to a regular file system rather than as a range of
        sectors of a zoned device. The introduction of the higher level
        construct "one file is one zone" can help reducing the amount of
        changes needed in the application while at the same time allowing the
        use of zoned block devices with various programming languages other
        than C.
      
        Zonefs IO management implementation uses the new iomap generic code.
        Zonefs has been successfully tested using a functional test suite
        (available with zonefs userland format tool on github) and a prototype
        implementation of LevelDB on top of zonefs"
      
      * tag 'zonefs-5.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/dlemoal/zonefs:
        zonefs: Add documentation
        fs: New zonefs file system
      380a129e
    • Marc Zyngier's avatar
      irqchip/gic-v4.1: Avoid 64bit division for the sake of 32bit ARM · 490d332e
      Marc Zyngier authored
      In order to allow the GICv4 code to link properly on 32bit ARM,
      make sure we don't use 64bit divisions when it isn't strictly
      necessary.
      
      Fixes: 4e6437f1 ("irqchip/gic-v4.1: Ensure L2 vPE table is allocated at RD level")
      Reported-by: default avatarStephen Rothwell <sfr@canb.auug.org.au>
      Cc: Zenghui Yu <yuzenghui@huawei.com>
      Signed-off-by: default avatarMarc Zyngier <maz@kernel.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      490d332e
    • Linus Torvalds's avatar
      Merge tag '5.6-rc-smb3-plugfest-patches' of git://git.samba.org/sfrench/cifs-2.6 · d1ea35f4
      Linus Torvalds authored
      Pull cifs fixes from Steve French:
       "13 cifs/smb3 patches, most from testing at the SMB3 plugfest this week:
      
         - Important fix for multichannel and for modefromsid mounts.
      
         - Two reconnect fixes
      
         - Addition of SMB3 change notify support
      
         - Backup tools fix
      
         - A few additional minor debug improvements (tracepoints and
           additional logging found useful during testing this week)"
      
      * tag '5.6-rc-smb3-plugfest-patches' of git://git.samba.org/sfrench/cifs-2.6:
        smb3: Add defines for new information level, FileIdInformation
        smb3: print warning once if posix context returned on open
        smb3: add one more dynamic tracepoint missing from strict fsync path
        cifs: fix mode bits from dir listing when mounted with modefromsid
        cifs: fix channel signing
        cifs: add SMB3 change notification support
        cifs: make multichannel warning more visible
        cifs: fix soft mounts hanging in the reconnect code
        cifs: Add tracepoints for errors on flush or fsync
        cifs: log warning message (once) if out of disk space
        cifs: fail i/o on soft mounts if sessionsetup errors out
        smb3: fix problem with null cifs super block with previous patch
        SMB3: Backup intent flag missing from some more ops
      d1ea35f4