Re: [ceph-client:testing 49/53] fs/ceph/debugfs.c:140: undefined reference to `__divdi3'

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 2020/3/18 5:09, Jeff Layton wrote:
On Wed, 2020-03-18 at 04:35 +0800, kbuild test robot wrote:
tree:   https://github.com/ceph/ceph-client.git testing
head:   3188fc411f0c286ac4dc4ea146ddc4bf4f348b39
commit: dc1961a859fe49cad7a26001bd3e9a53f234bf59 [49/53] ceph: add global read latency metric support
config: i386-randconfig-e002-20200317 (attached as .config)
compiler: gcc-7 (Debian 7.5.0-5) 7.5.0
reproduce:
         git checkout dc1961a859fe49cad7a26001bd3e9a53f234bf59
         # save the attached .config to linux build tree
         make ARCH=i386

If you fix the issue, kindly add following tag
Reported-by: kbuild test robot <lkp@xxxxxxxxx>

All errors (new ones prefixed by >>):

    ld: fs/ceph/debugfs.o: in function `metric_show':
fs/ceph/debugfs.c:140: undefined reference to `__divdi3'
vim +140 fs/ceph/debugfs.c

    126	
    127	static int metric_show(struct seq_file *s, void *p)
    128	{
    129		struct ceph_fs_client *fsc = s->private;
    130		struct ceph_mds_client *mdsc = fsc->mdsc;
    131		int i, nr_caps = 0;
    132		s64 total, sum, avg = 0;
    133	
    134		seq_printf(s, "item          total       sum_lat(us)     avg_lat(us)\n");
    135		seq_printf(s, "-----------------------------------------------------\n");
    136	
    137		total = percpu_counter_sum(&mdsc->metric.total_reads);
    138		sum = percpu_counter_sum(&mdsc->metric.read_latency_sum);
    139		sum = jiffies_to_usecs(sum);
  > 140		avg = total ? sum / total : 0;
Thanks kbuild bot!

Old 32-bit arches can't do division on long long (64-bit) values. The
right fix for this is probably to use do_div(sum, total), instead of
trying to do this with normal integer division.

There is one div64_s64(), which should be we need here.




[Index of Archives]     [CEPH Users]     [Ceph Large]     [Ceph Dev]     [Information on CEPH]     [Linux BTRFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux