Sample list of drivers that require quiesce(): Network drivers: e1000g bge nge USB drivers: ohci ehci uhci HBA drivers: marvell88sx mpt adpu320 Disk drivers: ata cmdk Graphics/display drivers: vgatext nvidia amd64_gart Sample list of drivers that don't require quiesce(): Most pseudo drivers i8042 kb8042 mouse8042 xsvc iscsi mc-amd Sample quiesce() implementation: /* * Disclaimer: These are implementations that are working on the set of * test machines we are using. Driver owners should review each quiesce * implementation to make sure that they are correct. */ static int e1000g_quiesce(dev_info_t *devinfo) { struct e1000g *Adapter; Adapter = (struct e1000g *)ddi_get_driver_private(devinfo); if (Adapter == NULL) return (DDI_SUCCESS); e1000g_clear_all_interrupts(Adapter); if (e1000_reset_hw(&Adapter->shared) != 0) return (DDI_FAILURE); return (DDI_SUCCESS); }