> I think it needs some more inspection. The msleep in there is only called > for hcalls that return H_IS_LONG_BUSY(). In theory, you can call > ehca_plpar_hcall_norets() from inside an interrupt handler if the > hcall in question never returns long busy.
Fair enough... according to Documentation/infiniband/core_locking.txt, the only driver methods that cannot sleep are: create_ah modify_ah query_ah destroy_ah bind_mw post_send post_recv poll_cq req_notify_cq map_phys_fmr and I don't think ehca does an hcall from any of those. Of course there might be other driver-internal code paths that I don't know about. Maybe do a quick audit and then stick might_sleep() in the hcall functions to catch any mistakes? - R. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/