From: Jason Gunthorpe <jgg@ziepe.ca>
To: Bernard Metzler <BMT@zurich.ibm.com>
Cc: Geert Uytterhoeven <geert@linux-m68k.org>,
Doug Ledford <dledford@redhat.com>,
linux-rdma@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: Re: Re: Re: Re: [PATCH] RDMA/siw: Fix compiler warnings on 32-bit due to u64/pointer abuse
Date: Mon, 19 Aug 2019 13:35:21 -0300 [thread overview]
Message-ID: <20190819163521.GK5058@ziepe.ca> (raw)
In-Reply-To: <OFFE3BC87B.CF197FD5-ON0025845B.0059957B-0025845B.005A903D@notes.na.collabserv.com>
On Mon, Aug 19, 2019 at 04:29:11PM +0000, Bernard Metzler wrote:
>
> >To: "Bernard Metzler" <BMT@zurich.ibm.com>
> >From: "Jason Gunthorpe" <jgg@ziepe.ca>
> >Date: 08/19/2019 06:05PM
> >Cc: "Geert Uytterhoeven" <geert@linux-m68k.org>, "Doug Ledford"
> ><dledford@redhat.com>, linux-rdma@vger.kernel.org,
> >linux-kernel@vger.kernel.org
> >Subject: [EXTERNAL] Re: Re: Re: Re: [PATCH] RDMA/siw: Fix compiler
> >warnings on 32-bit due to u64/pointer abuse
> >
> >On Mon, Aug 19, 2019 at 03:54:56PM +0000, Bernard Metzler wrote:
> >
> >> Absolutely. But these addresses are conveyed through the
> >> API as unsigned 64 during post_send(), and land in the siw
> >> send queue as is. During send queue processing, these addresses
> >> must be interpreted according to its context and transformed
> >> (casted) back to the callers intention. I frankly do not
> >> know what we can do differently... The representation of
> >> all addresses as unsigned 64 is given. Sorry for the confusion.
> >
> >send work does not have pointers in it, so I'm confused what this is
> >about. Does siw allow userspace to stick an ordinary pointer for the
> >SG list?
>
> Right a user references a buffer by address and local key it
> got during reservation of that buffer. The user can provide any
> VA between start of that buffer and registered length.
Oh gross, it overloads the IOVA in the WR with a kernel void * ??
> >The code paths here must be totally different, so there should be
> >different types and functions for each case.
>
> Yes, there is a function to process application memory (siw_rx_umem),
> to process a kernel PBL (siw_rx_pbl), and one to process kernel
> addresses (siw_rx_kva). Before running that function, the API
> representation of the current SGE gets translated into target
> buffer representation.
Why does siw_pbl_get_buffer not return a void *??
Still looks like two types have been crammed together.
The kernel can't ever store anything into the user WQE buffer, so I
would think it would copy the buffer to kernel space, transform it
properly and then refer to it as a kernel buffer. Kernel sourced
buffers just skip the transofmration.
JAson
next prev parent reply other threads:[~2019-08-19 16:35 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-08-19 10:05 [PATCH] RDMA/siw: Fix compiler warnings on 32-bit due to u64/pointer abuse Geert Uytterhoeven
2019-08-19 12:24 ` Jason Gunthorpe
2019-08-19 13:36 ` Bernard Metzler
2019-08-19 13:52 ` Jason Gunthorpe
2019-08-19 14:15 ` Bernard Metzler
2019-08-19 14:18 ` Jason Gunthorpe
2019-08-19 14:52 ` Bernard Metzler
2019-08-19 15:07 ` Jason Gunthorpe
2019-08-19 15:54 ` Bernard Metzler
2019-08-19 16:05 ` Jason Gunthorpe
2019-08-19 16:29 ` Bernard Metzler
2019-08-19 16:35 ` Jason Gunthorpe [this message]
2019-08-19 17:39 ` Bernard Metzler
2019-08-19 18:00 ` Jason Gunthorpe
2019-08-19 21:40 ` Bernard Metzler
2019-08-19 22:22 ` Jason Gunthorpe
2019-08-19 16:56 ` Joe Perches
2019-08-19 17:14 ` Geert Uytterhoeven
2019-08-19 17:26 ` Bernard Metzler
2019-08-27 14:17 ` David Laight
2019-08-27 17:29 ` Geert Uytterhoeven
2019-08-27 17:46 ` Al Viro
2019-08-27 17:59 ` Geert Uytterhoeven
2019-08-27 18:33 ` Joe Perches
2019-08-28 8:27 ` David Laight
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20190819163521.GK5058@ziepe.ca \
--to=jgg@ziepe.ca \
--cc=BMT@zurich.ibm.com \
--cc=dledford@redhat.com \
--cc=geert@linux-m68k.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-rdma@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox