All of lore.kernel.org
 help / color / mirror / Atom feed
From: Daniel Vetter <daniel.vetter@ffwll.ch>
To: Jason Gunthorpe <jgg@ziepe.ca>
Cc: "John Hubbard" <jhubbard@nvidia.com>,
	"DRI Development" <dri-devel@lists.freedesktop.org>,
	LKML <linux-kernel@vger.kernel.org>,
	"KVM list" <kvm@vger.kernel.org>, "Linux MM" <linux-mm@kvack.org>,
	"Linux ARM" <linux-arm-kernel@lists.infradead.org>,
	linux-samsung-soc <linux-samsung-soc@vger.kernel.org>,
	"open list:DMA BUFFER SHARING FRAMEWORK"
	<linux-media@vger.kernel.org>,
	"Daniel Vetter" <daniel.vetter@intel.com>,
	"Pawel Osciak" <pawel@osciak.com>,
	"Marek Szyprowski" <m.szyprowski@samsung.com>,
	"Kyungmin Park" <kyungmin.park@samsung.com>,
	"Tomasz Figa" <tfiga@chromium.org>,
	"Mauro Carvalho Chehab" <mchehab@kernel.org>,
	"Andrew Morton" <akpm@linux-foundation.org>,
	"Jérôme Glisse" <jglisse@redhat.com>, "Jan Kara" <jack@suse.cz>,
	"Dan Williams" <dan.j.williams@intel.com>
Subject: Re: [PATCH v5 05/15] mm/frame-vector: Use FOLL_LONGTERM
Date: Wed, 4 Nov 2020 16:54:19 +0100	[thread overview]
Message-ID: <CAKMK7uH69hsFjYUkjg1aTh5f=q_3eswMSS5feFs6+ovz586+0A@mail.gmail.com> (raw)
In-Reply-To: <20201104140023.GQ36674@ziepe.ca>

On Wed, Nov 4, 2020 at 3:00 PM Jason Gunthorpe <jgg@ziepe.ca> wrote:
>
> On Sun, Nov 01, 2020 at 11:50:39PM +0100, Daniel Vetter wrote:
>
> > It's not device drivers, but everyone else. At least my understanding
> > is that VM_IO | VM_PFNMAP means "even if it happens to be backed by a
> > struct page, do not treat it like normal memory". And gup/pup_fast
> > happily break that. I tried to chase the history of that test, didn't
> > turn up anything I understood much:
>
> VM_IO isn't suppose do thave struct pages, so how can gup_fast return
> them?
>
> I thought some magic in the PTE flags excluded this?

I don't really have a box here, but dma_mmap_attrs() and friends to
mmap dma_alloc_coherent memory is set up as VM_IO | VM_PFNMAP (it's
actually enforced since underneath it uses remap_pfn_range), and
usually (except if it's pre-cma carveout) that's just normal struct
page backed memory. Sometimes from a cma region (so will be caught by
the cma page check), but if you have an iommu to make it
device-contiguous, that's not needed.

I think only some architectures have a special io pte flag, and those
are only used for real mmio access. And I think the popular ones all
don't. But that stuff is really not my expertise, just some drive-by
reading I've done to understand how the pci mmap stuff works (which is
special in yet other ways I think).

So probably I'm missing something, but I'm not seeing anything that
prevents this from coming out of a  pup/gup_fast.
-Daniel
-- 
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch

WARNING: multiple messages have this Message-ID (diff)
From: Daniel Vetter <daniel.vetter@ffwll.ch>
To: Jason Gunthorpe <jgg@ziepe.ca>
Cc: "Jérôme Glisse" <jglisse@redhat.com>,
	linux-samsung-soc <linux-samsung-soc@vger.kernel.org>,
	"Jan Kara" <jack@suse.cz>, "Pawel Osciak" <pawel@osciak.com>,
	"KVM list" <kvm@vger.kernel.org>,
	"John Hubbard" <jhubbard@nvidia.com>,
	"Mauro Carvalho Chehab" <mchehab@kernel.org>,
	LKML <linux-kernel@vger.kernel.org>,
	"DRI Development" <dri-devel@lists.freedesktop.org>,
	"Tomasz Figa" <tfiga@chromium.org>,
	"Linux MM" <linux-mm@kvack.org>,
	"Kyungmin Park" <kyungmin.park@samsung.com>,
	"Daniel Vetter" <daniel.vetter@intel.com>,
	"Andrew Morton" <akpm@linux-foundation.org>,
	"Marek Szyprowski" <m.szyprowski@samsung.com>,
	"Dan Williams" <dan.j.williams@intel.com>,
	"Linux ARM" <linux-arm-kernel@lists.infradead.org>,
	"open list:DMA BUFFER SHARING FRAMEWORK"
	<linux-media@vger.kernel.org>
Subject: Re: [PATCH v5 05/15] mm/frame-vector: Use FOLL_LONGTERM
Date: Wed, 4 Nov 2020 16:54:19 +0100	[thread overview]
Message-ID: <CAKMK7uH69hsFjYUkjg1aTh5f=q_3eswMSS5feFs6+ovz586+0A@mail.gmail.com> (raw)
In-Reply-To: <20201104140023.GQ36674@ziepe.ca>

On Wed, Nov 4, 2020 at 3:00 PM Jason Gunthorpe <jgg@ziepe.ca> wrote:
>
> On Sun, Nov 01, 2020 at 11:50:39PM +0100, Daniel Vetter wrote:
>
> > It's not device drivers, but everyone else. At least my understanding
> > is that VM_IO | VM_PFNMAP means "even if it happens to be backed by a
> > struct page, do not treat it like normal memory". And gup/pup_fast
> > happily break that. I tried to chase the history of that test, didn't
> > turn up anything I understood much:
>
> VM_IO isn't suppose do thave struct pages, so how can gup_fast return
> them?
>
> I thought some magic in the PTE flags excluded this?

I don't really have a box here, but dma_mmap_attrs() and friends to
mmap dma_alloc_coherent memory is set up as VM_IO | VM_PFNMAP (it's
actually enforced since underneath it uses remap_pfn_range), and
usually (except if it's pre-cma carveout) that's just normal struct
page backed memory. Sometimes from a cma region (so will be caught by
the cma page check), but if you have an iommu to make it
device-contiguous, that's not needed.

I think only some architectures have a special io pte flag, and those
are only used for real mmio access. And I think the popular ones all
don't. But that stuff is really not my expertise, just some drive-by
reading I've done to understand how the pci mmap stuff works (which is
special in yet other ways I think).

So probably I'm missing something, but I'm not seeing anything that
prevents this from coming out of a  pup/gup_fast.
-Daniel
-- 
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

WARNING: multiple messages have this Message-ID (diff)
From: Daniel Vetter <daniel.vetter@ffwll.ch>
To: Jason Gunthorpe <jgg@ziepe.ca>
Cc: "Jérôme Glisse" <jglisse@redhat.com>,
	linux-samsung-soc <linux-samsung-soc@vger.kernel.org>,
	"Jan Kara" <jack@suse.cz>, "Pawel Osciak" <pawel@osciak.com>,
	"KVM list" <kvm@vger.kernel.org>,
	"John Hubbard" <jhubbard@nvidia.com>,
	"Mauro Carvalho Chehab" <mchehab@kernel.org>,
	LKML <linux-kernel@vger.kernel.org>,
	"DRI Development" <dri-devel@lists.freedesktop.org>,
	"Tomasz Figa" <tfiga@chromium.org>,
	"Linux MM" <linux-mm@kvack.org>,
	"Kyungmin Park" <kyungmin.park@samsung.com>,
	"Daniel Vetter" <daniel.vetter@intel.com>,
	"Andrew Morton" <akpm@linux-foundation.org>,
	"Marek Szyprowski" <m.szyprowski@samsung.com>,
	"Dan Williams" <dan.j.williams@intel.com>,
	"Linux ARM" <linux-arm-kernel@lists.infradead.org>,
	"open list:DMA BUFFER SHARING FRAMEWORK"
	<linux-media@vger.kernel.org>
Subject: Re: [PATCH v5 05/15] mm/frame-vector: Use FOLL_LONGTERM
Date: Wed, 4 Nov 2020 16:54:19 +0100	[thread overview]
Message-ID: <CAKMK7uH69hsFjYUkjg1aTh5f=q_3eswMSS5feFs6+ovz586+0A@mail.gmail.com> (raw)
In-Reply-To: <20201104140023.GQ36674@ziepe.ca>

On Wed, Nov 4, 2020 at 3:00 PM Jason Gunthorpe <jgg@ziepe.ca> wrote:
>
> On Sun, Nov 01, 2020 at 11:50:39PM +0100, Daniel Vetter wrote:
>
> > It's not device drivers, but everyone else. At least my understanding
> > is that VM_IO | VM_PFNMAP means "even if it happens to be backed by a
> > struct page, do not treat it like normal memory". And gup/pup_fast
> > happily break that. I tried to chase the history of that test, didn't
> > turn up anything I understood much:
>
> VM_IO isn't suppose do thave struct pages, so how can gup_fast return
> them?
>
> I thought some magic in the PTE flags excluded this?

I don't really have a box here, but dma_mmap_attrs() and friends to
mmap dma_alloc_coherent memory is set up as VM_IO | VM_PFNMAP (it's
actually enforced since underneath it uses remap_pfn_range), and
usually (except if it's pre-cma carveout) that's just normal struct
page backed memory. Sometimes from a cma region (so will be caught by
the cma page check), but if you have an iommu to make it
device-contiguous, that's not needed.

I think only some architectures have a special io pte flag, and those
are only used for real mmio access. And I think the popular ones all
don't. But that stuff is really not my expertise, just some drive-by
reading I've done to understand how the pci mmap stuff works (which is
special in yet other ways I think).

So probably I'm missing something, but I'm not seeing anything that
prevents this from coming out of a  pup/gup_fast.
-Daniel
-- 
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

  reply	other threads:[~2020-11-04 15:54 UTC|newest]

Thread overview: 212+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-10-30 10:08 [PATCH v5 00/15] follow_pfn and other iomap races Daniel Vetter
2020-10-30 10:08 ` Daniel Vetter
2020-10-30 10:08 ` Daniel Vetter
2020-10-30 10:08 ` [PATCH v5 01/15] drm/exynos: Stop using frame_vector helpers Daniel Vetter
2020-10-30 10:08   ` Daniel Vetter
2020-10-30 10:08   ` Daniel Vetter
2020-10-30 10:08 ` [PATCH v5 02/15] drm/exynos: Use FOLL_LONGTERM for g2d cmdlists Daniel Vetter
2020-10-30 10:08   ` Daniel Vetter
2020-10-30 10:08   ` Daniel Vetter
2020-10-30 10:08 ` [PATCH v5 03/15] misc/habana: Stop using frame_vector helpers Daniel Vetter
2020-10-30 10:08   ` Daniel Vetter
2020-10-30 10:08   ` Daniel Vetter
2020-10-30 10:08 ` [PATCH v5 04/15] misc/habana: Use FOLL_LONGTERM for userptr Daniel Vetter
2020-10-30 10:08   ` Daniel Vetter
2020-10-30 10:08   ` Daniel Vetter
2020-10-30 10:08 ` [PATCH v5 05/15] mm/frame-vector: Use FOLL_LONGTERM Daniel Vetter
2020-10-30 10:08   ` Daniel Vetter
2020-10-30 10:08   ` Daniel Vetter
2020-10-30 14:11   ` Tomasz Figa
2020-10-30 14:11     ` Tomasz Figa
2020-10-30 14:11     ` Tomasz Figa
2020-10-30 14:37     ` Daniel Vetter
2020-10-30 14:37       ` Daniel Vetter
2020-10-30 14:37       ` Daniel Vetter
2020-11-02 18:19       ` Tomasz Figa
2020-11-02 18:19         ` Tomasz Figa
2020-11-02 18:19         ` Tomasz Figa
2020-10-31  2:55   ` John Hubbard
2020-10-31  2:55     ` John Hubbard
2020-10-31  2:55     ` John Hubbard
2020-10-31 14:45     ` Daniel Vetter
2020-10-31 14:45       ` Daniel Vetter
2020-10-31 14:45       ` Daniel Vetter
2020-11-01  5:22       ` John Hubbard
2020-11-01  5:22         ` John Hubbard
2020-11-01  5:22         ` John Hubbard
2020-11-01 10:30         ` Daniel Vetter
2020-11-01 10:30           ` Daniel Vetter
2020-11-01 10:30           ` Daniel Vetter
2020-11-01 21:13           ` John Hubbard
2020-11-01 21:13             ` John Hubbard
2020-11-01 21:13             ` John Hubbard
2020-11-01 22:50             ` Daniel Vetter
2020-11-01 22:50               ` Daniel Vetter
2020-11-01 22:50               ` Daniel Vetter
2020-11-04 14:00               ` Jason Gunthorpe
2020-11-04 14:00                 ` Jason Gunthorpe
2020-11-04 14:00                 ` Jason Gunthorpe
2020-11-04 15:54                 ` Daniel Vetter [this message]
2020-11-04 15:54                   ` Daniel Vetter
2020-11-04 15:54                   ` Daniel Vetter
2020-11-04 16:21                   ` Christoph Hellwig
2020-11-04 16:21                     ` Christoph Hellwig
2020-11-04 16:21                     ` Christoph Hellwig
2020-11-04 16:26                     ` Daniel Vetter
2020-11-04 16:26                       ` Daniel Vetter
2020-11-04 16:26                       ` Daniel Vetter
2020-11-04 16:26                       ` Daniel Vetter
2020-11-04 16:37                       ` Christoph Hellwig
2020-11-04 16:37                         ` Christoph Hellwig
2020-11-04 16:37                         ` Christoph Hellwig
2020-11-04 16:41                         ` Christoph Hellwig
2020-11-04 16:41                           ` Christoph Hellwig
2020-11-04 16:41                           ` Christoph Hellwig
2020-11-04 18:17                           ` Jason Gunthorpe
2020-11-04 18:17                             ` Jason Gunthorpe
2020-11-04 18:17                             ` Jason Gunthorpe
2020-11-04 18:17                             ` Jason Gunthorpe
2020-11-04 18:44                             ` John Hubbard
2020-11-04 18:44                               ` John Hubbard
2020-11-04 18:44                               ` John Hubbard
2020-11-04 18:44                               ` John Hubbard
2020-11-04 19:02                               ` Jason Gunthorpe
2020-11-04 19:02                                 ` Jason Gunthorpe
2020-11-04 19:02                                 ` Jason Gunthorpe
2020-11-04 19:02                                 ` Jason Gunthorpe
2020-11-04 19:11                                 ` Christoph Hellwig
2020-11-04 19:11                                   ` Christoph Hellwig
2020-11-04 19:11                                   ` Christoph Hellwig
2020-11-05  9:25                               ` Daniel Vetter
2020-11-05  9:25                                 ` Daniel Vetter
2020-11-05  9:25                                 ` Daniel Vetter
2020-11-05  9:25                                 ` Daniel Vetter
2020-11-05 12:49                                 ` Jason Gunthorpe
2020-11-05 12:49                                   ` Jason Gunthorpe
2020-11-05 12:49                                   ` Jason Gunthorpe
2020-11-05 12:49                                   ` Jason Gunthorpe
2020-11-06  4:08                                   ` John Hubbard
2020-11-06  4:08                                     ` John Hubbard
2020-11-06  4:08                                     ` John Hubbard
2020-11-06  4:08                                     ` John Hubbard
2020-11-06 10:01                                     ` Daniel Vetter
2020-11-06 10:01                                       ` Daniel Vetter
2020-11-06 10:01                                       ` Daniel Vetter
2020-11-06 10:01                                       ` Daniel Vetter
2020-11-06 10:27                                       ` Daniel Vetter
2020-11-06 10:27                                         ` Daniel Vetter
2020-11-06 10:27                                         ` Daniel Vetter
2020-11-06 10:27                                         ` Daniel Vetter
2020-11-06 12:55                                         ` Jason Gunthorpe
2020-11-06 12:55                                           ` Jason Gunthorpe
2020-11-06 12:55                                           ` Jason Gunthorpe
2020-11-06 12:55                                           ` Jason Gunthorpe
2020-11-09  8:44                                           ` Thomas Hellström
2020-11-09  8:44                                             ` Thomas Hellström
2020-11-09  8:44                                             ` Thomas Hellström
2020-11-09  8:44                                             ` Thomas Hellström
2020-11-09 20:19                                             ` Jason Gunthorpe
2020-11-09 20:19                                               ` Jason Gunthorpe
2020-11-09 20:19                                               ` Jason Gunthorpe
2020-11-09 20:19                                               ` Jason Gunthorpe
2020-11-06 12:58                                       ` Jason Gunthorpe
2020-11-06 12:58                                         ` Jason Gunthorpe
2020-11-06 12:58                                         ` Jason Gunthorpe
2020-11-06 12:58                                         ` Jason Gunthorpe
2020-10-30 10:08 ` [PATCH v5 06/15] media: videobuf2: Move frame_vector into media subsystem Daniel Vetter
2020-10-30 10:08   ` Daniel Vetter
2020-10-30 10:08   ` Daniel Vetter
2020-10-30 10:08 ` [PATCH v5 07/15] mm: Close race in generic_access_phys Daniel Vetter
2020-10-30 10:08   ` Daniel Vetter
2020-10-30 10:08   ` Daniel Vetter
2020-10-30 10:08 ` [PATCH v5 08/15] mm: Add unsafe_follow_pfn Daniel Vetter
2020-10-30 10:08   ` Daniel Vetter
2020-10-30 10:08   ` Daniel Vetter
2020-11-02  7:29   ` Christoph Hellwig
2020-11-02  7:29     ` Christoph Hellwig
2020-11-02 12:56     ` Daniel Vetter
2020-11-02 12:56       ` Daniel Vetter
2020-11-02 12:56       ` Daniel Vetter
2020-11-02 12:56       ` Daniel Vetter
2020-11-02 13:01       ` Jason Gunthorpe
2020-11-02 13:01         ` Jason Gunthorpe
2020-11-02 13:01         ` Jason Gunthorpe
2020-11-02 13:01         ` Jason Gunthorpe
2020-11-02 13:23         ` Daniel Vetter
2020-11-02 13:23           ` Daniel Vetter
2020-11-02 13:23           ` Daniel Vetter
2020-11-02 13:23           ` Daniel Vetter
2020-11-02 15:52           ` Jason Gunthorpe
2020-11-02 15:52             ` Jason Gunthorpe
2020-11-02 15:52             ` Jason Gunthorpe
2020-11-02 15:52             ` Jason Gunthorpe
2020-11-02 16:41             ` Christoph Hellwig
2020-11-02 16:41               ` Christoph Hellwig
2020-11-02 16:41               ` Christoph Hellwig
2020-11-02 16:42             ` Daniel Vetter
2020-11-02 16:42               ` Daniel Vetter
2020-11-02 16:42               ` Daniel Vetter
2020-11-02 16:42               ` Daniel Vetter
2020-11-02 17:16               ` Jason Gunthorpe
2020-11-02 17:16                 ` Jason Gunthorpe
2020-11-02 17:16                 ` Jason Gunthorpe
2020-11-02 17:16                 ` Jason Gunthorpe
2020-10-30 10:08 ` [PATCH v5 09/15] media/videbuf1|2: Mark follow_pfn usage as unsafe Daniel Vetter
2020-10-30 10:08   ` Daniel Vetter
2020-10-30 10:08   ` Daniel Vetter
2020-10-30 10:08 ` [PATCH v5 10/15] vfio/type1: Mark follow_pfn " Daniel Vetter
2020-10-30 10:08   ` Daniel Vetter
2020-10-30 10:08   ` Daniel Vetter
2020-10-30 10:08 ` [PATCH v5 11/15] PCI: Obey iomem restrictions for procfs mmap Daniel Vetter
2020-10-30 10:08   ` Daniel Vetter
2020-10-30 10:08   ` Daniel Vetter
2020-11-03 21:28   ` Bjorn Helgaas
2020-11-03 21:28     ` Bjorn Helgaas
2020-11-03 21:28     ` Bjorn Helgaas
2020-11-03 22:09     ` Dan Williams
2020-11-03 22:09       ` Dan Williams
2020-11-03 22:09       ` Dan Williams
2020-11-04  8:44       ` Daniel Vetter
2020-11-04  8:44         ` Daniel Vetter
2020-11-04  8:44         ` Daniel Vetter
2020-11-04 16:50         ` Bjorn Helgaas
2020-11-04 16:50           ` Bjorn Helgaas
2020-11-04 16:50           ` Bjorn Helgaas
2020-11-04 20:12           ` Dan Williams
2020-11-04 20:12             ` Dan Williams
2020-11-04 20:12             ` Dan Williams
2020-11-05  9:34             ` Daniel Vetter
2020-11-05  9:34               ` Daniel Vetter
2020-11-05  9:34               ` Daniel Vetter
2020-10-30 10:08 ` [PATCH v5 12/15] /dev/mem: Only set filp->f_mapping Daniel Vetter
2020-10-30 10:08   ` Daniel Vetter
2020-10-30 10:08   ` Daniel Vetter
2020-10-30 10:08 ` [PATCH v5 13/15] resource: Move devmem revoke code to resource framework Daniel Vetter
2020-10-30 10:08   ` Daniel Vetter
2020-10-30 10:08   ` Daniel Vetter
2020-10-31  6:36   ` John Hubbard
2020-10-31  6:36     ` John Hubbard
2020-10-31  6:36     ` John Hubbard
2020-10-31 14:40     ` Daniel Vetter
2020-10-31 14:40       ` Daniel Vetter
2020-10-31 14:40       ` Daniel Vetter
2020-11-03  6:06   ` [resource] 22b17dc667: Kernel panic - not syncing: Fatal exception lkp
2020-11-03  6:06     ` lkp
2020-11-03  6:15     ` John Hubbard
2020-11-03  6:15       ` John Hubbard
2020-11-03  6:15       ` John Hubbard
2020-11-03 10:10       ` Daniel Vetter
2020-11-03 10:10         ` Daniel Vetter
2020-11-03 10:10         ` Daniel Vetter
2020-10-30 10:08 ` [PATCH v5 14/15] sysfs: Support zapping of binary attr mmaps Daniel Vetter
2020-10-30 10:08   ` Daniel Vetter
2020-10-30 10:08   ` Daniel Vetter
2020-10-30 10:08 ` [PATCH v5 15/15] PCI: Revoke mappings like devmem Daniel Vetter
2020-10-30 10:08   ` Daniel Vetter
2020-10-30 10:08   ` Daniel Vetter
2020-10-30 19:22   ` Dan Williams
2020-10-30 19:22     ` Dan Williams
2020-10-30 19:22     ` Dan Williams
2020-11-03 21:30   ` Bjorn Helgaas
2020-11-03 21:30     ` Bjorn Helgaas
2020-11-03 21:30     ` Bjorn Helgaas

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='CAKMK7uH69hsFjYUkjg1aTh5f=q_3eswMSS5feFs6+ovz586+0A@mail.gmail.com' \
    --to=daniel.vetter@ffwll.ch \
    --cc=akpm@linux-foundation.org \
    --cc=dan.j.williams@intel.com \
    --cc=daniel.vetter@intel.com \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=jack@suse.cz \
    --cc=jgg@ziepe.ca \
    --cc=jglisse@redhat.com \
    --cc=jhubbard@nvidia.com \
    --cc=kvm@vger.kernel.org \
    --cc=kyungmin.park@samsung.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-media@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=linux-samsung-soc@vger.kernel.org \
    --cc=m.szyprowski@samsung.com \
    --cc=mchehab@kernel.org \
    --cc=pawel@osciak.com \
    --cc=tfiga@chromium.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.