Skip to content
  1. Mar 01, 2017
    • Matjaz Hegedic's avatar
      x86/reboot/quirks: Add ASUS EeeBook X205TA reboot quirk · 90b28ded
      Matjaz Hegedic authored
      
      
      Without the parameter reboot=a, ASUS EeeBook X205TA will hang when it should reboot.
      
      This adds the appropriate quirk, thus fixing the problem.
      
      Signed-off-by: default avatarMatjaz Hegedic <matjaz.hegedic@gmail.com>
      Cc: Andy Lutomirski <luto@kernel.org>
      Cc: Borislav Petkov <bp@alien8.de>
      Cc: Brian Gerst <brgerst@gmail.com>
      Cc: Denys Vlasenko <dvlasenk@redhat.com>
      Cc: H. Peter Anvin <hpa@zytor.com>
      Cc: Josh Poimboeuf <jpoimboe@redhat.com>
      Cc: Linus Torvalds <torvalds@linux-foundation.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Signed-off-by: default avatarIngo Molnar <mingo@kernel.org>
      90b28ded
    • Andrew Banman's avatar
      x86/platform/uv/BAU: Fix HUB errors by remove initial write to sw-ack register · 1b17c6df
      Andrew Banman authored
      
      
      Writing to the software acknowledge clear register when there are no
      pending messages causes a HUB error to assert. The original intent of this
      write was to clear the pending bits before start of operation, but this is
      an incorrect method and has been determined to be unnecessary.
      
      Signed-off-by: default avatarAndrew Banman <abanman@hpe.com>
      Acked-by: default avatarMike Travis <mike.travis@hpe.com>
      Cc: Andy Lutomirski <luto@kernel.org>
      Cc: Borislav Petkov <bp@alien8.de>
      Cc: Brian Gerst <brgerst@gmail.com>
      Cc: Denys Vlasenko <dvlasenk@redhat.com>
      Cc: H. Peter Anvin <hpa@zytor.com>
      Cc: Josh Poimboeuf <jpoimboe@redhat.com>
      Cc: Linus Torvalds <torvalds@linux-foundation.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Cc: akpm@linux-foundation.org
      Cc: rja@hpe.com
      Cc: sivanich@hpe.com
      Link: http://lkml.kernel.org/r/1487351269-181133-1-git-send-email-abanman@hpe.com
      
      
      Signed-off-by: default avatarIngo Molnar <mingo@kernel.org>
      1b17c6df
    • Dmitry Safonov's avatar
      x86/selftests: Add clobbers for int80 on x86_64 · 2a4d0c62
      Dmitry Safonov authored
      Kernel erases R8..R11 registers prior returning to userspace
      from int80:
      
        https://lkml.org/lkml/2009/10/1/164
      
      GCC can reuse these registers and doesn't expect them to change
      during syscall invocation. I met this kind of bug in CRIU once
      GCC 6.1 and CLANG stored local variables in those registers
      and the kernel zerofied them during syscall:
      
        https://github.com/xemul/criu/commit/990d33f1a1cdd17bca6c2eb059ab3be2564f7fa2
      
      
      
      By that reason I suggest to add those registers to clobbers
      in selftests.  Also, as noted by Andy - removed unneeded clobber
      for flags in INT $0x80 inline asm.
      
      Signed-off-by: default avatarDmitry Safonov <dsafonov@virtuozzo.com>
      Acked-by: default avatarAndy Lutomirski <luto@kernel.org>
      Cc: 0x7f454c46@gmail.com
      Cc: Borislav Petkov <bp@alien8.de>
      Cc: Borislav Petkov <bp@suse.de>
      Cc: Brian Gerst <brgerst@gmail.com>
      Cc: Denys Vlasenko <dvlasenk@redhat.com>
      Cc: H. Peter Anvin <hpa@zytor.com>
      Cc: Josh Poimboeuf <jpoimboe@redhat.com>
      Cc: Linus Torvalds <torvalds@linux-foundation.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Shuah Khan <shuah@kernel.org>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Cc: linux-kselftest@vger.kernel.org
      Link: http://lkml.kernel.org/r/20170213101336.20486-1-dsafonov@virtuozzo.com
      
      
      Signed-off-by: default avatarIngo Molnar <mingo@kernel.org>
      2a4d0c62
    • Dou Liyang's avatar
      x86/apic: Simplify enable_IR_x2apic(), remove try_to_enable_IR() · 11277aab
      Dou Liyang authored
      The following commit:
      
        2e63ad4b
      
       ("x86/apic: Do not init irq remapping if ioapic is disabled")
      
      ... added a check for skipped IO-APIC setup to enable_IR_x2apic(), but this
      check is also duplicated in try_to_enable_IR() - and it will never succeed in
      calling irq_remapping_enable().
      
      Remove the whole irq_remapping_enable() complication: if the IO-APIC is
      disabled we cannot enable IRQ remapping.
      
      Signed-off-by: default avatarDou Liyang <douly.fnst@cn.fujitsu.com>
      Cc: Linus Torvalds <torvalds@linux-foundation.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Cc: bp@alien8.de
      Cc: nicstange@gmail.com
      Cc: wanpeng.li@hotmail.com
      Link: http://lkml.kernel.org/r/1487841401-1543-1-git-send-email-douly.fnst@cn.fujitsu.com
      
      
      Signed-off-by: default avatarIngo Molnar <mingo@kernel.org>
      11277aab
    • Dou Liyang's avatar
      x86/apic: Fix a warning message in logical CPU IDs allocation · bb3f0a52
      Dou Liyang authored
      
      
      The current warning message in allocate_logical_cpuid() is somewhat confusing:
      
        Only 1 processors supported.Processor 2/0x2 and the rest are ignored.
      
      As it might imply that there's only one CPU in the system - while what we ran
      into here is a kernel limitation.
      
      Fix the warning message to clarify all that:
      
        APIC: NR_CPUS/possible_cpus limit of 2 reached. Processor 2/0x2 and the rest are ignored.
      
      ( Also update the error return from -1 to -EINVAL, which is the more
        canonical return value. )
      
      Signed-off-by: default avatarDou Liyang <douly.fnst@cn.fujitsu.com>
      Cc: Linus Torvalds <torvalds@linux-foundation.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Cc: bp@alien8.de
      Cc: nicstange@gmail.com
      Cc: wanpeng.li@hotmail.com
      Link: http://lkml.kernel.org/r/1488261052-25753-1-git-send-email-douly.fnst@cn.fujitsu.com
      
      
      Signed-off-by: default avatarIngo Molnar <mingo@kernel.org>
      bb3f0a52
    • Borislav Petkov's avatar
      x86/kdebugfs: Move boot params hierarchy under (debugfs)/x86/ · 10bce841
      Borislav Petkov authored
      
      
      ... since this is all x86-specific data and it makes sense to have it
      under x86/ logically instead in the toplevel debugfs dir.
      
      Signed-off-by: default avatarBorislav Petkov <bp@suse.de>
      Cc: Linus Torvalds <torvalds@linux-foundation.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Link: http://lkml.kernel.org/r/20170227225058.27289-1-bp@alien8.de
      
      
      Signed-off-by: default avatarIngo Molnar <mingo@kernel.org>
      10bce841
    • Linus Torvalds's avatar
      Merge tag 'for-linus-4.11' of git://git.code.sf.net/p/openipmi/linux-ipmi · 2d6be4ab
      Linus Torvalds authored
      Pull IPMI updates from Corey Minyard:
       "This is a few small fixes to the main IPMI driver, make some things
        const, fix typos, etc.
      
        The last patch came in about a week ago, but IMHO it's best to go in
        now. It is not for the main driver, it's for the bt-bmc driver, which
        runs on the managment controller side, not on the host side, so the
        scope is limited and the change is necessary"
      
      * tag 'for-linus-4.11' of git://git.code.sf.net/p/openipmi/linux-ipmi:
        ipmi: bt-bmc: Use a regmap for register access
        char: ipmi: constify ipmi_smi_handlers structures
        acpi:ipmi: Make IPMI user handler const
        ipmi: make ipmi_usr_hndl const
        Documentation: Fix a typo in IPMI.txt.
      2d6be4ab
    • Linus Torvalds's avatar
      Merge branch 'idr-4.11' of git://git.infradead.org/users/willy/linux-dax · cf393195
      Linus Torvalds authored
      Pull IDR rewrite from Matthew Wilcox:
       "The most significant part of the following is the patch to rewrite the
        IDR & IDA to be clients of the radix tree. But there's much more,
        including an enhancement of the IDA to be significantly more space
        efficient, an IDR & IDA test suite, some improvements to the IDR API
        (and driver changes to take advantage of those improvements), several
        improvements to the radix tree test suite and RCU annotations.
      
        The IDR & IDA rewrite had a good spin in linux-next and Andrew's tree
        for most of the last cycle. Coupled with the IDR test suite, I feel
        pretty confident that any remaining bugs are quite hard to hit. 0-day
        did a great job of watching my git tree and pointing out problems; as
        it hit them, I added new test-cases to be sure not to be caught the
        same way twice"
      
      Willy goes on to expand a bit on the IDR rewrite rationale:
       "The radix tree and the IDR use very similar data stru...
      cf393195
    • Linus Torvalds's avatar
      Merge tag 'iommu-fix-v4.11-rc0-2' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu · 5ecc5ac2
      Linus Torvalds authored
      Pull IOMMU fixes from Joerg Roedel:
       "Fix an issue introduced this merge window into the AMD and Intel IOMMU
        drivers that causes an oops when the vendor-specific sysfs-entries are
        accessed.
      
        The reason for this issue is that I forgot to update the sysfs code in
        the drivers when moving the iommu 'struct device' to the iommu-core"
      
      * tag 'iommu-fix-v4.11-rc0-2' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu:
        iommu/amd: Fix crash when accessing AMD-Vi sysfs entries
        iommu/vt-d: Fix crash when accessing VT-d sysfs entries
      5ecc5ac2
    • Linus Torvalds's avatar
      Merge tag 'nfsd-4.11' of git://linux-nfs.org/~bfields/linux · 8313064c
      Linus Torvalds authored
      Pull nfsd updates from Bruce Fields:
       "The nfsd update this round is mainly a lot of miscellaneous cleanups
        and bugfixes.
      
        A couple changes could theoretically break working setups on upgrade.
        I don't expect complaints in practice, but they seem worth calling out
        just in case:
      
         - NFS security labels are now off by default; a new security_label
           export flag reenables it per export. But, having them on by default
           is a disaster, as it generally only makes sense if all your clients
           and servers have similar enough selinux policies. Thanks to Jason
           Tibbitts for pointing this out.
      
         - NFSv4/UDP support is off. It was never really supported, and the
           spec explicitly forbids it. We only ever left it on out of
           laziness; thanks to Jeff Layton for finally fixing that"
      
      * tag 'nfsd-4.11' of git://linux-nfs.org/~bfields/linux: (34 commits)
        nfsd: Fix display of the version string
        nfsd: fix configuration of supported minor versions
        sunrpc: don't register UDP port with rpcbind when version needs congestion control
        nfs/nfsd/sunrpc: enforce transport requirements for NFSv4
        sunrpc: flag transports as having congestion control
        sunrpc: turn bitfield flags in svc_version into bools
        nfsd: remove superfluous KERN_INFO
        nfsd: special case truncates some more
        nfsd: minor nfsd_setattr cleanup
        NFSD: Reserve adequate space for LOCKT operation
        NFSD: Get response size before operation for all RPCs
        nfsd/callback: Drop a useless data copy when comparing sessionid
        nfsd/callback: skip the callback tag
        nfsd/callback: Cleanup callback cred on shutdown
        nfsd/idmap: return nfserr_inval for 0-length names
        SUNRPC/Cache: Always treat the invalid cache as unexpired
        SUNRPC: Drop all entries from cache_detail when cache_purge()
        svcrdma: Poll CQs in "workqueue" mode
        svcrdma: Combine list fields in struct svc_rdma_op_ctxt
        svcrdma: Remove unused sc_dto_q field
        ...
      8313064c
    • Linus Torvalds's avatar
      Merge tag 'ceph-for-4.11-rc1' of git://github.com/ceph/ceph-client · b2deee2d
      Linus Torvalds authored
      Pull ceph updates from Ilya Dryomov:
       "This time around we have:
      
         - support for rbd data-pool feature, which enables rbd images on
           erasure-coded pools (myself). CEPH_PG_MAX_SIZE has been bumped to
           allow erasure-coded profiles with k+m up to 32.
      
         - a patch for ceph_d_revalidate() performance regression introduced
           in 4.9, along with some cleanups in the area (Jeff Layton)
      
         - a set of fixes for unsafe ->d_parent accesses in CephFS (Jeff
           Layton)
      
         - buffered reads are now processed in rsize windows instead of rasize
           windows (Andreas Gerstmayr). The new default for rsize mount option
           is 64M.
      
         - ack vs commit distinction is gone, greatly simplifying ->fsync()
           and MOSDOpReply handling code (myself)
      
        ... also a few filesystem bug fixes from Zheng, a CRUSH sync up (CRUSH
        computations are still serialized though) and several minor fixes and
        cleanups all over"
      
      * tag 'ceph-for-4.11-rc1' of git://github.com/ceph/ceph-client: (52 commits)
        libceph, rbd, ceph: WRITE | ONDISK -> WRITE
        libceph: get rid of ack vs commit
        ceph: remove special ack vs commit behavior
        ceph: tidy some white space in get_nonsnap_parent()
        crush: fix dprintk compilation
        crush: do is_out test only if we do not collide
        ceph: remove req from unsafe list when unregistering it
        rbd: constify device_type structure
        rbd: kill obj_request->object_name and rbd_segment_name_cache
        rbd: store and use obj_request->object_no
        rbd: RBD_V{1,2}_DATA_FORMAT macros
        rbd: factor out __rbd_osd_req_create()
        rbd: set offset and length outside of rbd_obj_request_create()
        rbd: support for data-pool feature
        rbd: introduce rbd_init_layout()
        rbd: use rbd_obj_bytes() more
        rbd: remove now unused rbd_obj_request_wait() and helpers
        rbd: switch rbd_obj_method_sync() to ceph_osdc_call()
        libceph: pass reply buffer length through ceph_osdc_call()
        rbd: do away with obj_request in rbd_obj_read_sync()
        ...
      b2deee2d
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.armlinux.org.uk/~rmk/linux-arm · d4f4cf77
      Linus Torvalds authored
      Pull ARM updates from Russell King:
      
       - nommu updates from Afzal Mohammed cleaning up the vectors support
      
       - allow DMA memory "mapping" for nommu Benjamin Gaignard
      
       - fixing a correctness issue with R_ARM_PREL31 relocations in the
         module linker
      
       - add strlen() prototype for the decompressor
      
       - support for DEBUG_VIRTUAL from Florian Fainelli
      
       - adjusting memory bounds after memory reservations have been
         registered
      
       - unipher cache handling updates from Masahiro Yamada
      
       - initrd and Thumb Kconfig cleanups
      
      * 'for-linus' of git://git.armlinux.org.uk/~rmk/linux-arm: (23 commits)
        ARM: mm: round the initrd reservation to page boundaries
        ARM: mm: clean up initrd initialisation
        ARM: mm: move initrd init code out of arm_memblock_init()
        ARM: 8655/1: improve NOMMU definition of pgprot_*()
        ARM: 8654/1: decompressor: add strlen prototype
        ARM: 8652/1: cache-uniphier: clean up active way setup code
        ARM: 8651/1: cache-uniphier: include <linux/errno.h> instead of <linux/types.h>
        ARM: 8650/1: module: handle negative R_ARM_PREL31 addends correctly
        ARM: 8649/2: nommu: remove Hivecs configuration is asm
        ARM: 8648/2: nommu: display vectors base
        ARM: 8647/2: nommu: dynamic exception base address setting
        ARM: 8646/1: mmu: decouple VECTORS_BASE from Kconfig
        ARM: 8644/1: Reduce "CPU: shutdown" message to debug level
        ARM: 8641/1: treewide: Replace uses of virt_to_phys with __pa_symbol
        ARM: 8640/1: Add support for CONFIG_DEBUG_VIRTUAL
        ARM: 8639/1: Define KERNEL_START and KERNEL_END
        ARM: 8638/1: mtd: lart: Rename partition defines to be prefixed with PART_
        ARM: 8637/1: Adjust memory boundaries after reservations
        ARM: 8636/1: Cleanup sanity_check_meminfo
        ARM: add CPU_THUMB_CAPABLE to indicate possible Thumb support
        ...
      d4f4cf77
    • Linus Torvalds's avatar
      Merge branch 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · f89db789
      Linus Torvalds authored
      Pull x86 fixes from Ingo Molnar:
       "Two documentation updates, plus a debugging annotation fix"
      
      * 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/crash: Update the stale comment in reserve_crashkernel()
        x86/irq, trace: Add __irq_entry annotation to x86's platform IRQ handlers
        Documentation, x86, resctrl: Recommend locking for resctrlfs
      f89db789
    • Linus Torvalds's avatar
      Merge branch 'sched-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 65314ed0
      Linus Torvalds authored
      Pull scheduler fixes from Ingo Molnar:
       "Two rq-clock warnings related fixes, plus a cgroups related crash fix"
      
      * 'sched-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        sched/cgroup: Move sched_online_group() back into css_online() to fix crash
        sched/fair: Update rq clock before changing a task's CPU affinity
        sched/core: Fix update_rq_clock() splat on hotplug (and suspend/resume)
      65314ed0
    • Linus Torvalds's avatar
      Merge branch 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 3f26b0c8
      Linus Torvalds authored
      Pull perf fixes from Ingo Molnar:
       "Misc fixes on the kernel and tooling side - nothing in particular
        stands out"
      
      * 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (21 commits)
        perf/core: Fix the perf_cpu_time_max_percent check
        perf/core: Fix perf_event_enable_on_exec() timekeeping (again)
        perf/core: Remove confusing comment and move put_ctx()
        perf record: Honor --quiet option properly
        perf annotate: Add -q/--quiet option
        perf diff: Add -q/--quiet option
        perf report: Add -q/--quiet option
        perf utils: Check verbose flag properly
        perf utils: Add perf_quiet_option()
        perf record: Add -a as default target
        perf stat: Add -a as default target
        perf tools: Fail on using multiple bits long terms without value
        perf tools: Move new_term arguments into struct parse_events_term template
        perf build: Add special fixdep cleaning rule
        perf tools: Replace _SC_NPROCESSORS_CONF with max_present_cpu in cpu_topology_map
        perf header: Make build_cpu_topology skip offline/absent CPUs
        perf cpumap: Add cpu__max_present_cpu()
        perf session: Fix DEBUG=1 build with clang
        tools lib traceevent: It's preempt not prempt
        perf python: Filter out -specs=/a/b/c from the python binding cc options
        ...
      3f26b0c8
    • Linus Torvalds's avatar
      Merge branch 'locking-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 74efe07b
      Linus Torvalds authored
      Pull locking fixes from Ingo Molnar:
       "The main change is the uninlining of large refcount_t APIs, plus a
        header dependency fix.
      
        Note that the uninlining allowed us to enable the underflow/overflow
        warnings unconditionally and remove the debug Kconfig switch: this
        might trigger new warnings in buggy code and turn
        crashes/use-after-free bugs into less harmful memory leaks"
      
      * 'locking-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        locking/refcounts: Add missing kernel.h header to have UINT_MAX defined
        locking/refcounts: Out-of-line everything
      74efe07b
    • Linus Torvalds's avatar
      Merge branch 'core-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · e72e58fa
      Linus Torvalds authored
      Pull objtool fixes from Ingo Molnar:
       "A handful of objtool fixes related to unreachable code, plus a build
        fix for out of tree modules"
      
      * 'core-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        objtool: Enclose contents of unreachable() macro in a block
        objtool: Prevent GCC from merging annotate_unreachable()
        objtool: Improve detection of BUG() and other dead ends
        objtool: Fix CONFIG_STACK_VALIDATION=y warning for out-of-tree modules
      e72e58fa
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/ide · 74e3f63c
      Linus Torvalds authored
      Pull IDE updates from David Miller:
       "Just one actual change here this time around, adding some init data
        annotations. The other change was bogus and got reverted"
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/davem/ide:
        ide: palm_bk3710: add __initdata to palm_bk3710_port_info
        Revert "ide: Fix interface autodetection in legacy IDE driver (trial #2)"
        ide: Fix interface autodetection in legacy IDE driver (trial #2)
      74e3f63c
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net · c2eca00f
      Linus Torvalds authored
      Pull networking fixes from David Miller:
      
       1) Don't save TIPC header values before the header has been validated,
          from Jon Paul Maloy.
      
       2) Fix memory leak in RDS, from Zhu Yanjun.
      
       3) We miss to initialize the UID in the flow key in some paths, from
          Julian Anastasov.
      
       4) Fix latent TOS masking bug in the routing cache removal from years
          ago, also from Julian.
      
       5) We forget to set the sockaddr port in sctp_copy_local_addr_list(),
          fix from Xin Long.
      
       6) Missing module ref count drop in packet scheduler actions, from
          Roman Mashak.
      
       7) Fix RCU annotations in rht_bucket_nested, from Herbert Xu.
      
       8) Fix use after free which happens because L2TP's ipv4 support returns
          non-zero values from it's backlog_rcv function which ipv4 interprets
          as protocol values. Fix from Paul Hüber.
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (35 commits)
        qed: Don't use attention PTT for configuring BW
        qed: Fix race with multiple VFs
        l2tp: avoid use-after-free caused by l2tp_ip_backlog_recv
        xfrm: provide correct dst in xfrm_neigh_lookup
        rhashtable: Fix RCU dereference annotation in rht_bucket_nested
        rhashtable: Fix use before NULL check in bucket_table_free
        net sched actions: do not overwrite status of action creation.
        rxrpc: Kernel calls get stuck in recvmsg
        net sched actions: decrement module reference count after table flush.
        lib: Allow compile-testing of parman
        ipv6: check sk sk_type and protocol early in ip_mroute_set/getsockopt
        sctp: set sin_port for addr param when checking duplicate address
        net/mlx4_en: fix overflow in mlx4_en_init_timestamp()
        netfilter: nft_set_bitmap: incorrect bitmap size
        net: s2io: fix typo argumnet argument
        net: vxge: fix typo argumnet argument
        netfilter: nf_ct_expect: Change __nf_ct_expect_check() return value.
        ipv4: mask tos for input route
        ipv4: add missing initialization for flowi4_uid
        lib: fix spelling mistake: "actualy" -> "actually"
        ...
      c2eca00f
  2. Feb 28, 2017