diff --git a/.python-rtslib.metadata b/.python-rtslib.metadata
index 2bdbd6a..08320a5 100644
--- a/.python-rtslib.metadata
+++ b/.python-rtslib.metadata
@@ -1 +1 @@
-ac3a43536485db816321f9043c97a55299ebf5a6 SOURCES/rtslib-fb-2.1.fb41.tar.gz
+c917b4794e8d0bf01c05824b0721c4ce4f96c7e7 SOURCES/rtslib-fb-2.1.fb46.tar.gz
diff --git a/SOURCES/rtslib-fix-setup.patch b/SOURCES/rtslib-fix-setup.patch
deleted file mode 100644
index fb67195..0000000
--- a/SOURCES/rtslib-fix-setup.patch
+++ /dev/null
@@ -1,46 +0,0 @@
-diff --git a/rtslib/root.py b/rtslib/root.py
-index 246c285..d558445 100644
---- a/rtslib/root.py
-+++ b/rtslib/root.py
-@@ -70,6 +70,7 @@ class RTSRoot(CFSNode):
-         base kernel modules (tcm)
-         '''
-         super(RTSRoot, self).__init__()
-+        modprobe('configfs')
-         mount_configfs()
-         modprobe('target_core_mod')
-         self._create_in_cfs_ine('any')
-@@ -247,7 +248,7 @@ class RTSRoot(CFSNode):
-         if not restore_file:
-             restore_file = default_save_file
- 
--        with open(from_file, "r") as f:
-+        with open(restore_file, "r") as f:
-             config = json.loads(f.read())
-             return self.restore(config, clear_existing=True,
-                                 abort_on_error=abort_on_error)
-diff --git a/scripts/targetctl b/scripts/targetctl
-index db8e0d2..bdf59f4 100755
---- a/scripts/targetctl
-+++ b/scripts/targetctl
-@@ -42,8 +42,7 @@ def save(to_file):
-     RTSRoot().save_to_file(save_file=to_file)
- 
- def restore(from_file):
--        errors = RTSRoot().restore_from_file(restore_file=from_file,
--                                             clear_existing=True)
-+        errors = RTSRoot().restore_from_file(restore_file=from_file)
- 
-         if errors:
-             print("Restore failed, %d errors:" % len(errors), file=err)
-diff --git a/setup.py b/setup.py
-index 7f41d52..5886fbc 100755
---- a/setup.py
-+++ b/setup.py
-@@ -27,5 +27,6 @@ setup (
-     maintainer_email = 'agrover@redhat.com',
-     url = 'http://github.com/agrover/rtslib-fb',
-     packages = ['rtslib'],
-+    scripts = ['scripts/targetctl'],
-     use_2to3 = True,
-     )
diff --git a/SPECS/python-rtslib.spec b/SPECS/python-rtslib.spec
index cfe924a..6191f3d 100644
--- a/SPECS/python-rtslib.spec
+++ b/SPECS/python-rtslib.spec
@@ -8,13 +8,12 @@ Name:           python-rtslib
 License:        ASL 2.0
 Group:          System Environment/Libraries
 Summary:        API for Linux kernel LIO SCSI target
-Version:        2.1.fb41
-Release:        3%{?dist}
+Version:        2.1.fb46
+Release:        1%{?dist}
 URL:            https://fedorahosted.org/targetcli-fb/
 Source:         https://fedorahosted.org/released/targetcli-fb/%{oname}-%{version}.tar.gz
 Source1:        target.service
 Patch0:         0001-Turn-off-unsupported-fabrics.patch
-Patch1:         rtslib-fix-setup.patch
 BuildArch:      noarch
 BuildRequires:  python-devel epydoc python-setuptools systemd-units
 Requires:       python-kmod
@@ -52,7 +51,6 @@ API for generic Linux SCSI kernel target.
 %prep
 %setup -q -n %{oname}-%{version}
 %patch0 -p1
-%patch1 -p1
 
 %if 0%{?with_python3}
 rm -rf %{py3dir}
@@ -104,7 +102,7 @@ popd
 %{python_sitelib}/*
 %{_bindir}/targetctl
 %{_unitdir}/target.service
-%doc COPYING README.md
+%doc COPYING README.md doc/getting_started.md
 %{_mandir}/man8/targetctl.8.gz
 %{_mandir}/man5/saveconfig.json.5.gz
 
@@ -118,6 +116,18 @@ popd
 %doc doc/html
 
 %changelog
+* Mon Feb 24 2014 Andy Grover <agrover@redhat.com> - 2.1.fb46-1
+- Update to latest Fedora version, fixes rhbz #1064753
+
+* Wed Jan 15 2014 Andy Grover <agrover@redhat.com> - 2.1.fb45-1
+- Update to latest Fedora version, to fix rhbz #1048803
+
+* Fri Dec 27 2013 Daniel Mach <dmach@redhat.com> - 2.1.fb44-2
+- Mass rebuild 2013-12-27
+
+* Wed Dec 18 2013 Andy Grover <agrover@redhat.com> - 2.1.fb44-1
+- Update to latest Fedora version
+
 * Wed Nov 6 2013 Andy Grover <agrover@redhat.com> - 2.1.fb41-3
 - Don't overwrite py2 scripts with py3 scripts