Date: Wed, 04 Mar 2015 15:14:01 +0000 From: bugzilla-noreply@freebsd.org To: freebsd-bugs@FreeBSD.org Subject: [Bug 197535] [re] [panic] if_re (Realtek 8168) causes memory write after free and kernel panic Message-ID: <bug-197535-8-zXmcguRJ71@https.bugs.freebsd.org/bugzilla/> In-Reply-To: <bug-197535-8@https.bugs.freebsd.org/bugzilla/> References: <bug-197535-8@https.bugs.freebsd.org/bugzilla/>
next in thread | previous in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=197535 --- Comment #11 from luca.pizzamiglio@gmail.com --- Created attachment 153780 --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=153780&action=edit patch solving the issue using this hardware Explanation and solution The actual problem was that the rx ring (and probably the txring too) wasn't updated by the driver or, better, the device wasn't able to get these updates. That explains why the last entry in the ring was ignored and why only few packets were really copied via DMA. I found this log entry in the linux git: https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=d6e572911a4cb2b9fcd1c26a38d5317a3971f2fd It seems that for "some" chips, Rx and Tx should be enabled in the RL_COMMAND register later, after rings configuration and so on. The patch shows only how I used this tip, but I don't know how it could affect other devices. -- You are receiving this mail because: You are the assignee for the bug.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-197535-8-zXmcguRJ71>