Yes, see my emails from 23th Oct, 25th Oct (2.5.44: Strange oopses from
userspace), from Nov 6th + Nov 7th: Preempt count check when leaving
IRQ.
But while yesterday I had no idea, today I have one (it looks like that
nobody else is going to fix it for me :-( ) :
seq subsystem can call arp_seq_start/next/stop several times, but
state->is_pneigh is set to 0 only once, by memset in arp_seq_open :-(
I think that arp_seq_start should do
{
+ struct arp_iter_state* state = seq->private;
+ seq->is_pneigh = 0;
+ seq->bucket = 0;
read_lock_bh(&arp_tbl.lock);
return *pos ? arp_get_bucket(seq, pos) : (void *)1;
}
and we can drop memset from arp_seq_open. I'll try it, and if it will
survive my tests, I'll send real patch.
Best regards,
Petr Vandrovec
vandrove@vc.cvut.cz
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/