1 #include <linux/kernel.h> 2 #include <linux/gcd.h> 3 #include <linux/export.h> 4 5 /* Greatest common divisor */ gcd(unsigned long a,unsigned long b)6unsigned long gcd(unsigned long a, unsigned long b) 7 { 8 unsigned long r; 9 10 if (a < b) 11 swap(a, b); 12 13 if (!b) 14 return a; 15 while ((r = a % b) != 0) { 16 a = b; 17 b = r; 18 } 19 return b; 20 } 21 EXPORT_SYMBOL_GPL(gcd); 22