]> git.proxmox.com Git - mirror_ubuntu-artful-kernel.git/blame - lib/lcm.c
lib/lcm.c: ensure correct result whenever it fits
[mirror_ubuntu-artful-kernel.git] / lib / lcm.c
CommitLineData
2cda2728
MP
1#include <linux/kernel.h>
2#include <linux/gcd.h>
8bc3bcc9 3#include <linux/export.h>
72d39508 4#include <linux/lcm.h>
2cda2728
MP
5
6/* Lowest common multiple */
7unsigned long lcm(unsigned long a, unsigned long b)
8{
9 if (a && b)
74a5fef7 10 return (a / gcd(a, b)) * b;
2cda2728
MP
11 else if (b)
12 return b;
13
14 return a;
15}
16EXPORT_SYMBOL_GPL(lcm);