1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
#include <linux/kernel.h> #include <linux/gcd.h> #include <linux/export.h> #include <linux/lcm.h> /* Lowest common multiple */ unsigned long lcm(unsigned long a, unsigned long b) { if (a && b) return (a * b) / gcd(a, b); else if (b) return b; return a; } EXPORT_SYMBOL_GPL(lcm);