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