Skip to contentSkip to conversation

Bug in the min and max macros in lvm-snap.c

linux-lvm Hostmaster (www) 3 participants 3 messages Aug 28, 2001

lore
Share & tools
lore
#0 lore raw

Hi,

I'm installing the lvm_1.0.1-rc1 patch to a RedHat install (kernel 2.4.3-12).

After installing the kernel patch, the kernel build was failing on the min and max macros in lvm-snap.c.
It appears the new version changed the min and max macros in the lvm-internal.h header file to include type. However, it appears that the lvm-snap.c min and max are still using the old definition.

Since I'm not intending to use the snap functionality in the near future. I used this for quick workaround, I just added a snapmin and and snapmax macro definition in lvm-internal.h and changed the instances of min and max in the lvm-snap.c to use the new snapmin and snapmax macros. This allows the kernel to build.

Thanks,
David Lightsey

#1 lore raw
Quoted 6 lines · Hostmaster (www)

Hi,

I'm installing the lvm_1.0.1-rc1 patch to a RedHat install (kernel 2.4.3-12).

After installing the kernel patch, the kernel build was failing on the min and max macros in lvm-snap.c.

Maybe I'm wrong, but AFAIR Linus changed max and min macros on 2.4.9, so they are not backwards compatible. As lvm_1.0.1-rc1 was intended for kernel 2.4.9, I suppose it used those new max/min macros, so LVM 1.0.1-rc1 doesn't work with kernels < 2.4.9.

Check last week's linux kernel mailing list archives to check what people think about this sudden change :)

--
Jos� Luis Domingo L�pez
Linux Registered User #189436 Debian GNU/Linux Potato (P166 64 MB RAM)

jdomingo EN internautas PUNTO org => � Spam ? Atente a las consecuencias
jdomingo AT internautas DOT org => Spam at your own risk

#2 lore raw
Quoted 5 lines · Jos? Luis Domingo L?pez
Quoted 2 lines · Hostmaster (www)

Hi,

Quoted 8 lines
Quoted 4 lines

I'm installing the lvm_1.0.1-rc1 patch to a RedHat install (kernel 2.4.3-12).

After installing the kernel patch, the kernel build was failing on the min and max macros in lvm-snap.c.

Maybe I'm wrong, but AFAIR Linus changed max and min macros on 2.4.9, so they are not backwards compatible. As lvm_1.0.1-rc1 was intended for kernel 2.4.9, I suppose it used those new max/min macros, so LVM 1.0.1-rc1 doesn't work with kernels < 2.4.9.

It should work with both 2.4.9 kernels and older ones. I just checked CVS and the lvm-snap.c looks correct.