src/basic/missing_loop.h: fix missing LOOP_SET_BLOCK_SIZE
authorRaphaël Mélotte <raphael.melotte@mind.be>
Fri, 14 Jun 2024 12:37:29 +0000 (14:37 +0200)
committerLuca Boccassi <luca.boccassi@gmail.com>
Fri, 14 Jun 2024 23:01:44 +0000 (00:01 +0100)
Builds with kernels headers < 4.14 fail with:

../src/shared/loop-util.c: In function ‘loop_configure_fallback’:
../src/shared/loop-util.c:237:31: error: ‘LOOP_SET_BLOCK_SIZE’ undeclared (first use in this function); did you mean ‘LOOP_SET_DIRECT_IO’?
                 if (ioctl(fd, LOOP_SET_BLOCK_SIZE, (unsigned long) c->block_size) < 0)
                               ^~~~~~~~~~~~~~~~~~~
                               LOOP_SET_DIRECT_IO

Fixes: https://github.com/systemd/systemd/issues/33341

Signed-off-by: Raphaël Mélotte <raphael.melotte@mind.be>
src/basic/missing_loop.h

index b88501d78b3441d06f6be67018097eb7fa57f889..f83a14c9149ea82690a359bb361dcca44bbb75cc 100644 (file)
@@ -29,3 +29,7 @@ assert_cc(LOOP_SET_DIRECT_IO == 0x4C08);
 #ifndef LOOP_SET_STATUS_SETTABLE_FLAGS
 #  define LOOP_SET_STATUS_SETTABLE_FLAGS (LO_FLAGS_AUTOCLEAR | LO_FLAGS_PARTSCAN)
 #endif
+
+#ifndef LOOP_SET_BLOCK_SIZE
+#  define LOOP_SET_BLOCK_SIZE 0x4C09
+#endif