struct address_space *mapping;
int error;
@@ -1031,6 +1055,13 @@ static int loop_configure(struct loop_device *lo, fmode_t mode,
- /* suppress uevents while reconfiguring the device */
- dev_set_uevent_suppress(disk_to_dev(lo->lo_disk), 1);
+ /* This is safe, since we have a reference from open(). */
+ __module_get(THIS_MODULE);
+ f = loop_real_file(file);
+ if (f) {
+ fput(virt_file);
/* This is safe: open() is still holding a reference. */
module_put(THIS_MODULE);
- goto done;
+ return error;
@@ -1154,6 +1188,7 @@ static int loop_configure(struct loop_device *lo, fmode_t mode,
static void __loop_clr_fd(struct loop_device *lo, bool release)
{
%define rel 1
%define basever 6.1
-%define postver .21
+%define postver .23
# define this to '-%{basever}' for longterm branch
%define versuffix -%{basever}
# Source0-md5: 475320de08f16c9fa486fc4edfe98b30
%if "%{postver}" != ".0"
Patch0: https://www.kernel.org/pub/linux/kernel/v6.x/patch-%{version}.xz
-# Patch0-md5: dc8f560468a5d1f22e15e57cf1183add
+# Patch0-md5: 9b11dcd6b46a58f455dd25867a3f5e06
%endif
Source1: kernel.sysconfig