linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
From: Li Chen <me@linux.beauty>
To: "Christoph Hellwig" <hch@infradead.org>
Cc: "Catalin Marinas" <catalin.marinas@arm.com>,
	"Will Deacon" <will@kernel.org>,
	"Rob Herring" <robh+dt@kernel.org>,
	"Frank Rowand" <frowand.list@gmail.com>,
	"Andrew Morton" <akpm@linux-foundation.org>,
	"linux-arm-kernel" <linux-arm-kernel@lists.infradead.org>,
	"linux-kernel" <linux-kernel@vger.kernel.org>,
	"devicetree" <devicetree@vger.kernel.org>,
	"linux-mm" <linux-mm@kvack.org>
Subject: Re: [PATCH 0/4] add struct page and Direct I/O support to reserved memory
Date: Tue, 12 Jul 2022 00:05:06 +0800	[thread overview]
Message-ID: <181ee01d384.b809bd01412268.496620746959082770@linux.beauty> (raw)
In-Reply-To: <Ysw7TMFO8Mw0nq8x@infradead.org>

Hi Christoph,
 ---- On Mon, 11 Jul 2022 23:01:32 +0800  Christoph Hellwig <hch@infradead.org> wrote --- 
 > Who is going to use it and how?  Because normally the reserved memory
 > is used through the DMA allocator, and you can't just do direct I/O
 > to that.
 > 

My use case has been stated in the cover letter, but our driver is not ready for upstream yet.

With DMA allocator, we can access buffer in kernel space, not userspace, however, this patch
series servers for userspace direct I/O, so that you can mmap device file as src buffer from userspace,
and dio to file on disk.


There are some mmap + rmem cases in the kernel source tree which don't use the DMA allocator already.

I also found some users have asked for a solution of supporting direct I/O on file_operation->mmap like:
https://stackoverflow.com/questions/44820740/using-o-direct-with-io-memory
https://www.mail-archive.com/support-list@support.elphel.com/msg02314.html

I believe there are some other potential users who didn't post questions on the internet.

If the upstream kernel has this feature, these users can mmap their
reserved memory to userspace and get direct i/o support.

Regards,
Li


  reply	other threads:[~2022-07-11 16:05 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-07-11 12:24 Li Chen
2022-07-11 12:24 ` [PATCH 1/4] of: add struct page support to rmem Li Chen
2022-07-11 13:36   ` Arnd Bergmann
2022-07-11 14:51     ` Li Chen
2022-07-11 15:06       ` Arnd Bergmann
2022-07-12  3:13         ` Li Chen
2022-07-16  0:38   ` kernel test robot
2022-07-18 13:21   ` Dan Carpenter
2022-07-11 12:24 ` [PATCH 2/4] mm/sparse: skip no-map memblock check when fill_subsection_map Li Chen
2022-07-11 14:53   ` David Hildenbrand
2022-07-12  4:23     ` Li Chen
2022-07-12  7:31       ` David Hildenbrand
2022-07-12  9:31         ` Li Chen
2022-07-14 18:45   ` kernel test robot
2022-07-11 12:24 ` [PATCH 3/4] arm64: mm: move memblock_clear_nomap after __add_pages Li Chen
2022-07-11 12:24 ` [PATCH 4/4] sample/reserved_mem: Introduce a sample of struct page and dio support to no-map rmem Li Chen
     [not found]   ` <CAK8P3a2Mr0ZMXGDx6htYEbBBtm4mubk-meSASJjPRK1j1O-hEA@mail.gmail.com>
2022-07-12  0:26     ` Li Chen
     [not found]       ` <CAK8P3a30o1RLifV1TMqDJ26vLhVdOzz3wP6yPrayLV2GPxUtwQ@mail.gmail.com>
2022-07-12  9:58         ` Li Chen
     [not found]           ` <CAK8P3a3gX-JMh6E2X3rH+U37zhkA6b0+AJDtXCJfdZiMocxLjg@mail.gmail.com>
2022-07-12 10:55             ` Li Chen
2022-08-04  7:17         ` Li Chen
     [not found]           ` <CAK8P3a0zSGqj3YEi+i9yfSLk8-aJtyiY6Bj069cxCdErk81+cw@mail.gmail.com>
2022-08-04 10:07             ` Li Chen
     [not found]               ` <CAK8P3a2hyhzjYqeL1LY7WziDjXQJasg3jFe83eErzKgbfP-a3w@mail.gmail.com>
2022-08-05 15:28                 ` David Hildenbrand
2022-07-11 15:01 ` [PATCH 0/4] add struct page and Direct I/O support to reserved memory Christoph Hellwig
2022-07-11 16:05   ` Li Chen [this message]
2022-07-11 16:09     ` Christoph Hellwig
2022-07-12  0:14       ` Li Chen

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=181ee01d384.b809bd01412268.496620746959082770@linux.beauty \
    --to=me@linux.beauty \
    --cc=akpm@linux-foundation.org \
    --cc=catalin.marinas@arm.com \
    --cc=devicetree@vger.kernel.org \
    --cc=frowand.list@gmail.com \
    --cc=hch@infradead.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=robh+dt@kernel.org \
    --cc=will@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