On 05/21/2013 02:51 PM, Sebastian Riemer wrote:
> On 17.05.2013 16:16, Jack Wang wrote:
>> unable to handle kernel paging request
>
> Hi Jack,
>
> this should be related to the list corruption in IPoIB as list_del()
> sets the LIST_POISON1 and LIST_POISON2 pointers.
> Referencing these results in page faults according to the documentation
> in the code.
>
> Cheers,
> Sebastian
>
This bug is easy triggered with below inject_bug with iperf -P 50 &&
switch ib mode in sync on both side.
-- a/drivers/infiniband/ulp/ipoib/ipoib_cm.c
+++ b/drivers/infiniband/ulp/ipoib/ipoib_cm.c
@@ -1315,7 +1315,8 @@ static void ipoib_cm_tx_start(struct work_struct
*work)
netif_tx_lock_bh(dev);
spin_lock_irqsave(&priv->lock, flags);
- if (ret) {
+ if (ret || priv->inject_bug) {
+ priv->inject_bug = 0;
neigh = p->neigh;
if (neigh) {
neigh->cm = NULL;
It turned into another panic after patch list_del to list_del_init, I'm
managing to get the back trace.
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html