Yes, the subject sounds quite hairy, so please let me try to explain it.
First, let's consider one concrete function:
static int
ukbd_poll(keyboard_t *kbd, int on)
{
struct ukbd_softc *sc = kbd->kb_data;
if (!mtx_owned(&Giant)) {
/* XXX cludge */
i
Synopsis: Patch for HUAWEI E173 (u3g/umodem)
State-Changed-From-To: open->patched
State-Changed-By: gavin
State-Changed-When: Tue Aug 23 17:41:17 UTC 2011
State-Changed-Why:
Fixed in head
Responsible-Changed-From-To: freebsd-usb->hselasky
Responsible-Changed-By: gavin
Responsible-Changed-When: