[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <adaodcza1xc.fsf@cisco.com>
Date: Sun, 09 Dec 2007 15:22:39 -0800
From: Roland Dreier <rdreier@...co.com>
To: Arnd Bergmann <arnd@...db.de>
Cc: linuxppc-dev@...abs.org, Joachim Fenkes <fenkes@...ibm.com>,
LKML <linux-kernel@...r.kernel.org>,
OF-EWG <ewg@...ts.openfabrics.org>,
Christoph Raisch <raisch@...ibm.com>,
Marcus Eder <meder@...ibm.com>,
OF-General <general@...ts.openfabrics.org>,
Stefan Roscher <stefan.roscher@...ibm.com>
Subject: Re: [PATCH] IB/ehca: Serialize HCA-related hCalls on POWER5
> 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 majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists