Re: [V9fs-developer] [PATCH] 9P: Add memory barriers to protectrequest fields over cb/rpc threads handoff

From: Dominique Martinet
Date: Wed Jan 29 2014 - 13:17:27 EST


Hi,

Dominique Martinet wrote on Fri, Jan 17, 2014 :
> We need barriers to guarantee this pattern works as intended:
> [w] req->rc, 1 [r] req->status, 1
> wmb rmb
> [w] req->status, 1 [r] req->rc
>
> Where the wmb ensures that rc gets written before status,
> and the rmb ensures that if you observe status == 1, rc is the new value.
>
> Signed-off-by: Dominique Martinet <dominique.martinet@xxxxxx>
> ---
> include/net/9p/client.h | 2 +-
> net/9p/client.c | 16 +++++++++++++++-
> net/9p/trans_fd.c | 15 ++++++---------
> net/9p/trans_rdma.c | 3 +--
> net/9p/trans_virtio.c | 3 +--
> 5 files changed, 24 insertions(+), 15 deletions(-)

Reminder to get some attention now that the pull request for merge
window has passed :)
Please ask if this needs a resend, but should still apply as is.


Would be particularily nice to get confirmation that this doesn't slow
everything down for tcp/virtio folk or raises another kind of blocker
(although I have nothing better short of another transport-specific
function call after the p9_client_rpc wait is over, which is worse than
this to me, but suggestions are always welcome!)

Cheers,
--
Dominique Martinet
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/