> On May 11, 2015, at 2:03 PM, Keller, Jacob E <jacob.e.kel...@intel.com> wrote: > > Hi, > > On Mon, 2015-05-11 at 10:49 +0800, kendo wrote: >> In the e1000e_cyclecounter_read function, if incvalue is 0, causes a divide >> error.Need to add a check? >> >> >> incvalue = er32(TIMINCA) & E1000_TIMINCA_INCVALUE_MASK; >> //2015-05-11.fix by kendo >> if(incvalue){ >> for (i = 0; i < E1000_MAX_82574_SYSTIM_REREADS; i++) { >> /* latch SYSTIMH on read of SYSTIML */ >> systim_next = (cycle_t)er32(SYSTIML); >> systim_next |= (cycle_t)er32(SYSTIMH) << 32; >> >> >> time_delta = systim_next - systim; >> temp = time_delta; >> >> >> rem = do_div(temp, incvalue); >> >> >> systim = systim_next; >> >> >> if ((time_delta < E1000_82574_SYSTIM_EPSILON) >> && >> (rem == 0)) >> break; >> } >> } >> > > I am curious how you ever got a zero inc-value.. that shouldn't ever be > set by us to zero. Obviously per below we do have it set to 0 somehow..
This has come up before. It is due to a faulty implementation of the device in VMWare. Because making this change in the driver will not fix existing drivers in guest images, and it is pretty unreasonable to update all guests, VMWare needs to fix their implementation of this device. The real hardware will never have this failure. >> [ 7.317997] e1000e: Intel(R) PRO/1000 Network Driver - 3.1.0.2-NAPI >> [ 7.317998] e1000e: Copyright(c) 1999 - 2014 Intel Corporation. >> [ 7.318019] e1000e 0000:0b:00.0: Disabling ASPM L0s L1 >> [ 7.318078] e1000e 0000:0b:00.0: PCI INT A -> GSI 19 (level, low) -> IRQ >> 19 >> [ 7.318139] e1000e 0000:0b:00.0: setting latency timer to 64 >> [ 7.318514] e1000e 0000:0b:00.0: Interrupt Throttling Rate (ints/sec) set >> to dynamic conservative mode >> [ 7.318925] e1000e 0000:0b:00.0: irq 72 for MSI/MSI-X >> [ 7.318960] e1000e 0000:0b:00.0: irq 73 for MSI/MSI-X >> [ 7.318992] e1000e 0000:0b:00.0: irq 74 for MSI/MSI-X >> [ 7.443778] divide error: 0000 [#1] SMP >> [ 7.446797] CPU 1 >> [ 7.447938] Modules linked in: e1000e(O+) r8169(O) r8168(O) r8101(O) >> [ 7.451903] >> [ 7.452731] Pid: 115, comm: modprobe Tainted: G O 3.2.28 #1159 >> VMware, Inc. VMware Virtual Platform/440BX Desktop Reference Platform ^^^^^^^^^^^^^ Here is the clue that this is an emulated device. -- Mark Rustad, Networking Division, Intel Corporation
signature.asc
Description: Message signed with OpenPGP using GPGMail
------------------------------------------------------------------------------ One dashboard for servers and applications across Physical-Virtual-Cloud Widest out-of-the-box monitoring support with 50+ applications Performance metrics, stats and reports that give you Actionable Insights Deep dive visibility with transaction tracing using APM Insight. http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
_______________________________________________ E1000-devel mailing list E1000-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/e1000-devel To learn more about Intel® Ethernet, visit http://communities.intel.com/community/wired