umount down producer brings down io-net

I have a down producer with bottom type ‘vmac’, and a converter with
bottom type en and top type vmac. I can mount and unmount the converter
alone without difficulty. I can start the producer like this:
ionet -a -drtl -pvmac
and unmount it just fine. Alternatively I can slay io-net and my modules
shut down properly.

However, if I allow the converter to autoload, or manually mount both of
them, when I umount either the converter or the down producer io-net
crashes. I have debug going to syslog in my shutdown[12] functions (no
‘master’ shutdown at this time), which is never executed in either module.

Any hints on where to look?

My shutdown[12] functions look like this:

int vmac_en_shutdown1 (
int registrant_hdl,
void *func_hdl)
{
syslog (LOG_DEBUG,“vmac_en: shutdown1”);
return EOK;
}
int vmac_en_shutdown2 (
int registrant_hdl,
void *func_hdl)
{
syslog (LOG_DEBUG,“vmac_en: shutdown2”);
return 0;
}
int vmac_shutdown1 (
int registrant_hdl,
void *func_hdl)
{
syslog (LOG_DEBUG,“vmac: shutdown1”);
return EOK;
}
int vmac_shutdown2 (
int registrant_hdl,
void *func_hdl)
{
syslog (LOG_DEBUG,“vmac: shutdown2”);
return 0;
}

Thanks,
Hans