Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

But it seems Intel did end up pinpointing the error. The last link in the article ("Since then, Intel has removed the faulty driver from their website.") points to https://downloadmirror.intel.com/30190/eng/635390-TA-256.pdf which says "The driver instability was caused by an incomplete backport to i40e from the upstream kernel." Frustratingly, it doesn't give any more detail than that.


It looks like the Intel out-of-tree driver is carrying around some legacy HAVE_PAGE_COUNT_BULK_UPDATE option that is making their porting efforts difficult.

This commit in upstream ends up getting split in half:

https://github.com/torvalds/linux/commit/8ce29c679a6ecefb88d...

With only 3 lines of it getting pulled into i40e-2.13.10:

https://github.com/dmarion/i40e/blob/master/src/i40e_txrx.c#...

https://github.com/dmarion/i40e/blob/master/src/i40e_txrx.c#...

(Can't link git diff line for 2.13.10->2.14.13 because diff is too big, annoying!)

And the final line getting pulled into i40e-2.14.13:

https://github.com/dmarion/i40e/commit/135d6d885aa4704180e10...

  --- if (unlikely(!pagecnt_bias)) {
  +++ if (unlikely(pagecnt_bias == 1)) {
Best thing I can find in i40e_txrx.c where a single patch in Linux upstream got split across 2.13.10 and 2.14.13. Not a smoking gun exactly, still some exercise left for the reader.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: