Defined in 1 files as a function:

Referenced in 5 files:

Smatch caller information:

drivers/ptp/ptp_idt82p33.c timespec64_add_ns() -> __iter_div_u64_rem()

Type Parameter Key Value
PARAM_VALUE 1 divisor 1000000000
RX_PATH
TASK_NOT_RUNNING
LOCK2 idt82p33->lock
HALF_LOCKED2 &fp->private_data->clk->rwsem

drivers/net/ethernet/sfc/siena/ptp.c timespec64_add_ns() -> __iter_div_u64_rem()

Type Parameter Key Value
PARAM_VALUE 0 dividend 200-1000249999
PARAM_VALUE 1 divisor 1000000000
PARAM_VALUE 2 *remainder 200,250000
RX_PATH
TASK_NOT_RUNNING

drivers/net/ethernet/intel/i40e/i40e_ptp.c timespec64_add_ns() -> __iter_div_u64_rem()

Type Parameter Key Value
PARAM_VALUE 1 divisor 1000000000

drivers/net/ethernet/sfc/ptp.c timespec64_add_ns() -> __iter_div_u64_rem()

Type Parameter Key Value
PARAM_VALUE 0 dividend 200-1000249999
PARAM_VALUE 1 divisor 1000000000
PARAM_VALUE 2 *remainder 200,250000
RX_PATH
TASK_NOT_RUNNING

lib/math/div64.c iter_div_u64_rem() -> __iter_div_u64_rem()

Type Parameter Key Value
PARAM_VALUE 1 divisor 500
PARAM_VALUE 2 remainder 8854231215878795264
PARAM_VALUE 2 *remainder 0-499
CAPPED_DATA 0 dividend 1
CAPPED_DATA 0 dividend 1
DATA_SOURCE 0 dividend $0
DATA_SOURCE 1 divisor $1
DATA_SOURCE 2 remainder $2
RX_PATH
TASK_NOT_RUNNING
LOCK2 &pf->tc_mutex
HALF_LOCKED2 &cdev->adev->dev.mutex
HALF_LOCKED2 &pf->adev_mutex
HALF_LOCKED2 global &rtnl_mutex
TYPE_LOCK (struct ice_pf)->tc_mutex

kernel/time/timekeeping.c timespec64_add_ns() -> __iter_div_u64_rem()

Type Parameter Key Value
PARAM_VALUE 1 divisor 1000000000
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING

arch/x86/kvm/x86.c do_realtime() -> __iter_div_u64_rem()

Type Parameter Key Value
PARAM_VALUE 1 divisor 1000000000
PARAM_VALUE 2 remainder 3948023212588204032
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING

drivers/ptp/ptp_clockmatrix.c timespec64_add_ns() -> __iter_div_u64_rem()

Type Parameter Key Value
PARAM_VALUE 1 divisor 1000000000
RX_PATH
TASK_NOT_RUNNING
LOCK2 idtcm->lock
HALF_LOCKED2 &fp->private_data->clk->rwsem

arch/x86/entry/vdso/vdso32/vclock_gettime.c vdso_set_timespec() -> __iter_div_u64_rem()

Type Parameter Key Value
PARAM_VALUE 1 divisor 1000000000
DATA_SOURCE 0 dividend $2

arch/x86/entry/vdso/vdso64/vclock_gettime.c vdso_set_timespec() -> __iter_div_u64_rem()

Type Parameter Key Value
PARAM_VALUE 1 divisor 1000000000
DATA_SOURCE 0 dividend $2

drivers/net/ethernet/intel/igc/igc_ptp.c timespec64_add_ns() -> __iter_div_u64_rem()

Type Parameter Key Value
PARAM_VALUE 1 divisor 1000000000
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &adapter->ptm_lock
HALF_LOCKED2 &adapter->tmreg_lock
HALF_LOCKED2 flags

kernel/time/vsyscall.c update_vsyscall() -> __iter_div_u64_rem()

Type Parameter Key Value
PARAM_VALUE 1 divisor 1000000000
PARAM_VALUE 2 remainder 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 &tkd->lock
HALF_LOCKED2 _T->lock
HALF_LOCKED2 flags
HALF_LOCKED2 irq

kernel/time/vsyscall.c vdso_time_update_aux() -> __iter_div_u64_rem()

Type Parameter Key Value
PARAM_VALUE 1 divisor 1000000000
PARAM_VALUE 2 remainder 4719407113401511936
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 &tkd->lock
HALF_LOCKED2 _T->lock
HALF_LOCKED2 irq