diff --git a/.gitignore b/.gitignore
index fb89961..5022944 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1 +1 @@
-SOURCES/kvdo-6.1.0.153.tgz
+SOURCES/kvdo-8436700.tar.gz
diff --git a/.kmod-kvdo.metadata b/.kmod-kvdo.metadata
index e173389..134e6a7 100644
--- a/.kmod-kvdo.metadata
+++ b/.kmod-kvdo.metadata
@@ -1 +1 @@
-e1b39ca68695d985f93fd19271aa4f98481dfd0b SOURCES/kvdo-6.1.0.153.tgz
+703e6bba585749c6e1c20db6af20a7fbe1fc6b22 SOURCES/kvdo-8436700.tar.gz
diff --git a/SPECS/kvdo.spec b/SPECS/kvdo.spec
index cd7ad30..18c791f 100644
--- a/SPECS/kvdo.spec
+++ b/SPECS/kvdo.spec
@@ -1,7 +1,11 @@
-%define spec_release            15
+%global commit                  843670095af0ce13bde9d1bd98f017544a181b37
+%global gittag                  6.1.0.168
+%global shortcommit             %(c=%{commit}; echo ${c:0:7})
+
+%define spec_release            16
 
 %define kmod_name		kvdo
-%define kmod_driver_version	6.1.0.153
+%define kmod_driver_version	6.1.0.168
 %define kmod_rpm_release	%{spec_release}
 %define kmod_kernel_version	3.10.0-693.el7
 %define kmod_headers_version	%(rpm -qa kernel-devel | sed 's/^kernel-devel-//')
@@ -12,7 +16,7 @@
 
 %{!?dist: %define dist .el7_4}
 
-Source0:	%{kmod_name}-%{kmod_driver_version}.tgz
+Source0:        https://github.com/dm-vdo/%{kmod_name}/archive/%{commit}/%{kmod_name}-%{shortcommit}.tar.gz
 %{nil}
 
 %define findpat %( echo "%""P" )
@@ -143,7 +147,7 @@ printf '%s\n' "${modules[@]}" | %{sbindir}/weak-modules --remove-modules
 /usr/share/doc/kmod-%{kmod_name}/greylist.txt
 
 %prep
-%setup -n %{kmod_name}-%{kmod_driver_version}
+%setup -n %{kmod_name}-%{commit}
 %{nil}
 set -- *
 mkdir source
@@ -197,6 +201,20 @@ install -m 644 -D $PWD/obj/%{kmod_kbuild_dir}/Module.symvers $RPM_BUILD_ROOT/usr
 rm -rf $RPM_BUILD_ROOT
 
 %changelog
+* Sun Apr 29 2018 - Andy Walsh <awalsh@redhat.com> - 6.1.0.168-16
+- Updated source to use GitHub
+- Fixed module version checking for upgrades.
+- Removed debug kernel requirement from spec file.
+- Fixed a deadlock resulting from sleeping while holding a spinlock while
+  getting statistics.
+- Resolves: rhbz#1567742
+- Fixed bugs arising from attempts to access sysfs nodes during startup and
+  shutdown.
+- Resolves: rhbz#1567744
+- Removed the prepare_ioctl() function to avoid signature changes since this
+  function currently does nothing.
+- Resolves: rhbz#1572494
+
 * Tue Feb 27 2018 - Andy Walsh <awalsh@redhat.com> - 6.1.0.153-15
 - Fixed preun handling of loaded modules
 - Resolves: rhbz#1549178