tech-kern archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

panic on mfii(4) vd removal



I get a panic if I remove a virtual disk from an mfii(4) device.

What I found out is that mfii_aen_ld_update() calls 
sysmon_envsys_sensor_detach(), which (near the end of the routine) calls 
TAILQ_REMOVE(). In that, the last statement (minus 
QUEUEDEBUG_TAILQ_POSTREMOVE()), which is
	*(elm)->field.tqe_prev = (elm)->field.tqe_next;
fails because (elm)->field.tqe_prev is NULL.

I seem to be confused how tail queues work internally, because it appears 
to me that removing the first entry will fail, which is obviously not 
the case?

Any hints what's wrong?


Home | Main Index | Thread Index | Old Index