All of lore.kernel.org
 help / color / mirror / Atom feed
diff for duplicates of <20170418154937.GA1006@red-moon>

diff --git a/a/1.txt b/N1/1.txt
index aa5e4b8..6565768 100644
--- a/a/1.txt
+++ b/N1/1.txt
@@ -4,80 +4,64 @@ On Wed, Apr 12, 2017 at 12:20:22PM +0100, Russell King - ARM Linux wrote:
 > > > +static inline void __iomem *ioremap_nopost(phys_addr_t offset,
 > > > size_t size)
 > > > +{
-> > > +=A0=A0=A0=A0=A0=A0=A0return ioremap_nocache(offset, size);
+> > > +       return ioremap_nocache(offset, size);
 > > > +}
 > > > +
-> > =
-
+> > 
 > > No this is wrong as I explained.
-> > =
-
+> > 
 > > This is a semantic that simply *cannot* be generically provided accross
 > > architectures as a mapping attribute.
-> > =
-
+> > 
 > > The solution to your problem lies elsewhere.
-> =
-
+> 
 > I disagree.  Sure, it may not be supportable across all architectures,
 > but we're not introducing something brand new here.
-> =
-
+> 
 > What we're trying to do is to fix some _existing_ drivers that are
 > already using ioremap() to map the PCI IO and configuration spaces.
 > Maybe it would help if those drivers were part of this patch set,
 > rather than the patch set just introducing a whole new architecture
 > interface without really showing where the problem drivers are.
-> =
-
+> 
 > The issue here is that if we make this new ioremap_nopost() fail by
 > returning NULL if an architecture does not provide an implementation,
 > then these drivers are going to start failing on such architectures.
-> =
-
+> 
 > It is only safe to do that where we know for certain that the drivers
 > are not used - but I don't think that's the case here (it's difficult
 > to tell, because no drivers are updated in this series, so we don't
 > know which are going to be affected.)
-> =
-
+> 
 > So, the question is:
-> =
-
+> 
 > - is it better to provide a default implementation which provides the
 >   functionality that existing drivers are _already_ using, albiet not
 >   entirely correctly.
-> =
-
+> 
 > or:
-> =
-
+> 
 > - is it better to break drivers on architectures when they're converted
 >   to fix up this issue.
-> =
-
+> 
 > What, I suppose, we could do is not bother with a default implementation,
 > but instead litter drivers with:
-> =
-
+> 
 > +#ifdef ioremap_post
-> +	base =3D ioremap_post(...);
+> +	base = ioremap_post(...);
 > +#else
-> 	base =3D ioremap(...);
+> 	base = ioremap(...);
 > +#endif
-> =
-
+> 
 > which gets around your objection - not providing a default that's weaker
 > than required, but also not breaking the drivers.  The problem is that
 > we end up littering drivers with ifdefs.
-> =
-
+> 
 > However, I'm willing to bet that the architectures that you're saying
 > will not be able to support the weaker semantic won't have any need to
 > use these drivers, or if they do, the drivers will need the method of
 > accessing stuff like PCI IO and configuration spaces radically altered.
-> =
-
+> 
 > So, maybe the best solution is to not provide any kind of default
 > implementation, add a HAVE_IOREMAP_POST Kconfig symbol, have architectures
 > select that when they do provide ioremap_post(), and make the drivers
@@ -97,9 +81,4 @@ like it to be PCI specific, just adding an option on the table to make
 progress).
 
 Thanks,
-Lorenzo
-
-_______________________________________________
-linux-arm-kernel mailing list
-linux-arm-kernel@lists.infradead.org
-http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
\ No newline at end of file
+Lorenzo
\ No newline at end of file
diff --git a/a/content_digest b/N1/content_digest
index ff578bf..4f61e47 100644
--- a/a/content_digest
+++ b/N1/content_digest
@@ -45,31 +45,7 @@
   " Benjamin Herrenschmidt <benh\@kernel.crashing.org>",
   " Matt Turner <mattst88\@gmail.com>",
   " Haavard Skinnemoen <hskinnemoen\@gmail.com>",
-  " Fenghua Yu <fenghua.yu\@intel.com>",
-  " James Hogan <james.hogan\@imgtec.com>",
-  " Chris Metcalf <cmetcalf\@mellanox.com>",
-  " Arnd Bergmann <arnd\@arndb.de>",
-  " Heiko Carstens <heiko.carstens\@de.ibm.com>",
-  " Stefan Kristiansson <stefan.kristiansson\@saunalahti.fi>",
-  " Mikael Starvik <starvik\@axis.com>",
-  " Ivan Kokshaysky <ink\@jurassic.park.msu.ru>",
-  " Bjorn Helgaas <bhelgaas\@google.com>",
-  " Stafford Horne <shorne\@gmail.com>",
-  " linux-arm-kernel\@lists.infradead.org",
-  " Richard Henderson <rth\@twiddle.net>",
-  " Chris Zankel <chris\@zankel.net>",
-  " Michal Simek <monstr\@monstr.eu>",
-  " Tony Luck <tony.luck\@intel.com>",
-  " linux-pci\@vger.kernel.org",
-  " Vineet Gupta <vgupta\@synopsys.com>",
-  " linux-kernel\@vger.kernel.org",
-  " Ralf Baechle <ralf\@linux-mips.org>",
-  " Richard Kuo <rkuo\@codeaurora.org>",
-  " Niklas Cassel <nks\@flawful.org>",
-  " Luis R . Rodriguez <mcgrof\@kernel.org>",
-  " Martin Schwidefsky <schwidefsky\@de.ibm.com>",
-  " Ley Foon Tan <lftan\@altera.com>",
-  " David S. Miller <davem\@davemloft.net>\0"
+  " Fenghua Yu <fenghua.yu\@intel.com>James\0"
 ]
 [
   "\0000:1\0"
@@ -84,80 +60,64 @@
   "> > > +static inline void __iomem *ioremap_nopost(phys_addr_t offset,\n",
   "> > > size_t size)\n",
   "> > > +{\n",
-  "> > > +=A0=A0=A0=A0=A0=A0=A0return ioremap_nocache(offset, size);\n",
+  "> > > +\302\240\302\240\302\240\302\240\302\240\302\240\302\240return ioremap_nocache(offset, size);\n",
   "> > > +}\n",
   "> > > +\n",
-  "> > =\n",
-  "\n",
+  "> > \n",
   "> > No this is wrong as I explained.\n",
-  "> > =\n",
-  "\n",
+  "> > \n",
   "> > This is a semantic that simply *cannot* be generically provided accross\n",
   "> > architectures as a mapping attribute.\n",
-  "> > =\n",
-  "\n",
+  "> > \n",
   "> > The solution to your problem lies elsewhere.\n",
-  "> =\n",
-  "\n",
+  "> \n",
   "> I disagree.  Sure, it may not be supportable across all architectures,\n",
   "> but we're not introducing something brand new here.\n",
-  "> =\n",
-  "\n",
+  "> \n",
   "> What we're trying to do is to fix some _existing_ drivers that are\n",
   "> already using ioremap() to map the PCI IO and configuration spaces.\n",
   "> Maybe it would help if those drivers were part of this patch set,\n",
   "> rather than the patch set just introducing a whole new architecture\n",
   "> interface without really showing where the problem drivers are.\n",
-  "> =\n",
-  "\n",
+  "> \n",
   "> The issue here is that if we make this new ioremap_nopost() fail by\n",
   "> returning NULL if an architecture does not provide an implementation,\n",
   "> then these drivers are going to start failing on such architectures.\n",
-  "> =\n",
-  "\n",
+  "> \n",
   "> It is only safe to do that where we know for certain that the drivers\n",
   "> are not used - but I don't think that's the case here (it's difficult\n",
   "> to tell, because no drivers are updated in this series, so we don't\n",
   "> know which are going to be affected.)\n",
-  "> =\n",
-  "\n",
+  "> \n",
   "> So, the question is:\n",
-  "> =\n",
-  "\n",
+  "> \n",
   "> - is it better to provide a default implementation which provides the\n",
   ">   functionality that existing drivers are _already_ using, albiet not\n",
   ">   entirely correctly.\n",
-  "> =\n",
-  "\n",
+  "> \n",
   "> or:\n",
-  "> =\n",
-  "\n",
+  "> \n",
   "> - is it better to break drivers on architectures when they're converted\n",
   ">   to fix up this issue.\n",
-  "> =\n",
-  "\n",
+  "> \n",
   "> What, I suppose, we could do is not bother with a default implementation,\n",
   "> but instead litter drivers with:\n",
-  "> =\n",
-  "\n",
+  "> \n",
   "> +#ifdef ioremap_post\n",
-  "> +\tbase =3D ioremap_post(...);\n",
+  "> +\tbase = ioremap_post(...);\n",
   "> +#else\n",
-  "> \tbase =3D ioremap(...);\n",
+  "> \tbase = ioremap(...);\n",
   "> +#endif\n",
-  "> =\n",
-  "\n",
+  "> \n",
   "> which gets around your objection - not providing a default that's weaker\n",
   "> than required, but also not breaking the drivers.  The problem is that\n",
   "> we end up littering drivers with ifdefs.\n",
-  "> =\n",
-  "\n",
+  "> \n",
   "> However, I'm willing to bet that the architectures that you're saying\n",
   "> will not be able to support the weaker semantic won't have any need to\n",
   "> use these drivers, or if they do, the drivers will need the method of\n",
   "> accessing stuff like PCI IO and configuration spaces radically altered.\n",
-  "> =\n",
-  "\n",
+  "> \n",
   "> So, maybe the best solution is to not provide any kind of default\n",
   "> implementation, add a HAVE_IOREMAP_POST Kconfig symbol, have architectures\n",
   "> select that when they do provide ioremap_post(), and make the drivers\n",
@@ -177,12 +137,7 @@
   "progress).\n",
   "\n",
   "Thanks,\n",
-  "Lorenzo\n",
-  "\n",
-  "_______________________________________________\n",
-  "linux-arm-kernel mailing list\n",
-  "linux-arm-kernel\@lists.infradead.org\n",
-  "http://lists.infradead.org/mailman/listinfo/linux-arm-kernel"
+  "Lorenzo"
 ]
 
-14ab6ba596fad95ab23af73d040f27c67b5096847e5be69ae64841a849011ca3
+8a8ed3a43a3c929812297e47227ccd9546d1fcf79ca3a861a279b1880c75041a

diff --git a/a/1.txt b/N2/1.txt
index aa5e4b8..2874e13 100644
--- a/a/1.txt
+++ b/N2/1.txt
@@ -4,80 +4,64 @@ On Wed, Apr 12, 2017 at 12:20:22PM +0100, Russell King - ARM Linux wrote:
 > > > +static inline void __iomem *ioremap_nopost(phys_addr_t offset,
 > > > size_t size)
 > > > +{
-> > > +=A0=A0=A0=A0=A0=A0=A0return ioremap_nocache(offset, size);
+> > > +???????return ioremap_nocache(offset, size);
 > > > +}
 > > > +
-> > =
-
+> > 
 > > No this is wrong as I explained.
-> > =
-
+> > 
 > > This is a semantic that simply *cannot* be generically provided accross
 > > architectures as a mapping attribute.
-> > =
-
+> > 
 > > The solution to your problem lies elsewhere.
-> =
-
+> 
 > I disagree.  Sure, it may not be supportable across all architectures,
 > but we're not introducing something brand new here.
-> =
-
+> 
 > What we're trying to do is to fix some _existing_ drivers that are
 > already using ioremap() to map the PCI IO and configuration spaces.
 > Maybe it would help if those drivers were part of this patch set,
 > rather than the patch set just introducing a whole new architecture
 > interface without really showing where the problem drivers are.
-> =
-
+> 
 > The issue here is that if we make this new ioremap_nopost() fail by
 > returning NULL if an architecture does not provide an implementation,
 > then these drivers are going to start failing on such architectures.
-> =
-
+> 
 > It is only safe to do that where we know for certain that the drivers
 > are not used - but I don't think that's the case here (it's difficult
 > to tell, because no drivers are updated in this series, so we don't
 > know which are going to be affected.)
-> =
-
+> 
 > So, the question is:
-> =
-
+> 
 > - is it better to provide a default implementation which provides the
 >   functionality that existing drivers are _already_ using, albiet not
 >   entirely correctly.
-> =
-
+> 
 > or:
-> =
-
+> 
 > - is it better to break drivers on architectures when they're converted
 >   to fix up this issue.
-> =
-
+> 
 > What, I suppose, we could do is not bother with a default implementation,
 > but instead litter drivers with:
-> =
-
+> 
 > +#ifdef ioremap_post
-> +	base =3D ioremap_post(...);
+> +	base = ioremap_post(...);
 > +#else
-> 	base =3D ioremap(...);
+> 	base = ioremap(...);
 > +#endif
-> =
-
+> 
 > which gets around your objection - not providing a default that's weaker
 > than required, but also not breaking the drivers.  The problem is that
 > we end up littering drivers with ifdefs.
-> =
-
+> 
 > However, I'm willing to bet that the architectures that you're saying
 > will not be able to support the weaker semantic won't have any need to
 > use these drivers, or if they do, the drivers will need the method of
 > accessing stuff like PCI IO and configuration spaces radically altered.
-> =
-
+> 
 > So, maybe the best solution is to not provide any kind of default
 > implementation, add a HAVE_IOREMAP_POST Kconfig symbol, have architectures
 > select that when they do provide ioremap_post(), and make the drivers
@@ -97,9 +81,4 @@ like it to be PCI specific, just adding an option on the table to make
 progress).
 
 Thanks,
-Lorenzo
-
-_______________________________________________
-linux-arm-kernel mailing list
-linux-arm-kernel@lists.infradead.org
-http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
\ No newline at end of file
+Lorenzo
\ No newline at end of file
diff --git a/a/content_digest b/N2/content_digest
index ff578bf..6eb7dfa 100644
--- a/a/content_digest
+++ b/N2/content_digest
@@ -11,65 +11,16 @@
   "ref\00020170412112022.GY17774\@n2100.armlinux.org.uk\0"
 ]
 [
-  "From\0Lorenzo Pieralisi <lorenzo.pieralisi\@arm.com>\0"
+  "From\0lorenzo.pieralisi\@arm.com (Lorenzo Pieralisi)\0"
 ]
 [
-  "Subject\0Re: [PATCH v3 04/32] asm-generic: add ioremap_nopost() remap interface\0"
+  "Subject\0[PATCH v3 04/32] asm-generic: add ioremap_nopost() remap interface\0"
 ]
 [
   "Date\0Tue, 18 Apr 2017 16:49:37 +0100\0"
 ]
 [
-  "To\0Russell King - ARM Linux <linux\@armlinux.org.uk>\0"
-]
-[
-  "Cc\0Jonas Bonn <jonas\@southpole.se>",
-  " Rich Felker <dalias\@libc.org>",
-  " Catalin Marinas <catalin.marinas\@arm.com>",
-  " Will Deacon <will.deacon\@arm.com>",
-  " David Howells <dhowells\@redhat.com>",
-  " Max Filippov <jcmvbkbc\@gmail.com>",
-  " Paul Mackerras <paulus\@samba.org>",
-  " Huacai Chen <chenhc\@lemote.com>",
-  " Guan Xuetao <gxt\@mprc.pku.edu.cn>",
-  " Thomas Gleixner <tglx\@linutronix.de>",
-  " Hans-Christian Egtvedt <egtvedt\@samfundet.no>",
-  " linux-arch\@vger.kernel.org",
-  " Jesper Nilsson <jesper.nilsson\@axis.com>",
-  " Yoshinori Sato <ysato\@users.sourceforge.jp>",
-  " Michael Ellerman <mpe\@ellerman.id.au>",
-  " Helge Deller <deller\@gmx.de>",
-  " James E.J. Bottomley <jejb\@parisc-linux.org>",
-  " Ingo Molnar <mingo\@redhat.com>",
-  " Geert Uytterhoeven <geert\@linux-m68k.org>",
-  " Benjamin Herrenschmidt <benh\@kernel.crashing.org>",
-  " Matt Turner <mattst88\@gmail.com>",
-  " Haavard Skinnemoen <hskinnemoen\@gmail.com>",
-  " Fenghua Yu <fenghua.yu\@intel.com>",
-  " James Hogan <james.hogan\@imgtec.com>",
-  " Chris Metcalf <cmetcalf\@mellanox.com>",
-  " Arnd Bergmann <arnd\@arndb.de>",
-  " Heiko Carstens <heiko.carstens\@de.ibm.com>",
-  " Stefan Kristiansson <stefan.kristiansson\@saunalahti.fi>",
-  " Mikael Starvik <starvik\@axis.com>",
-  " Ivan Kokshaysky <ink\@jurassic.park.msu.ru>",
-  " Bjorn Helgaas <bhelgaas\@google.com>",
-  " Stafford Horne <shorne\@gmail.com>",
-  " linux-arm-kernel\@lists.infradead.org",
-  " Richard Henderson <rth\@twiddle.net>",
-  " Chris Zankel <chris\@zankel.net>",
-  " Michal Simek <monstr\@monstr.eu>",
-  " Tony Luck <tony.luck\@intel.com>",
-  " linux-pci\@vger.kernel.org",
-  " Vineet Gupta <vgupta\@synopsys.com>",
-  " linux-kernel\@vger.kernel.org",
-  " Ralf Baechle <ralf\@linux-mips.org>",
-  " Richard Kuo <rkuo\@codeaurora.org>",
-  " Niklas Cassel <nks\@flawful.org>",
-  " Luis R . Rodriguez <mcgrof\@kernel.org>",
-  " Martin Schwidefsky <schwidefsky\@de.ibm.com>",
-  " Ley Foon Tan <lftan\@altera.com>",
-  " David S. Miller <davem\@davemloft.net>\0"
+  "To\0linux-arm-kernel\@lists.infradead.org\0"
 ]
 [
   "\0000:1\0"
@@ -84,80 +35,64 @@
   "> > > +static inline void __iomem *ioremap_nopost(phys_addr_t offset,\n",
   "> > > size_t size)\n",
   "> > > +{\n",
-  "> > > +=A0=A0=A0=A0=A0=A0=A0return ioremap_nocache(offset, size);\n",
+  "> > > +???????return ioremap_nocache(offset, size);\n",
   "> > > +}\n",
   "> > > +\n",
-  "> > =\n",
-  "\n",
+  "> > \n",
   "> > No this is wrong as I explained.\n",
-  "> > =\n",
-  "\n",
+  "> > \n",
   "> > This is a semantic that simply *cannot* be generically provided accross\n",
   "> > architectures as a mapping attribute.\n",
-  "> > =\n",
-  "\n",
+  "> > \n",
   "> > The solution to your problem lies elsewhere.\n",
-  "> =\n",
-  "\n",
+  "> \n",
   "> I disagree.  Sure, it may not be supportable across all architectures,\n",
   "> but we're not introducing something brand new here.\n",
-  "> =\n",
-  "\n",
+  "> \n",
   "> What we're trying to do is to fix some _existing_ drivers that are\n",
   "> already using ioremap() to map the PCI IO and configuration spaces.\n",
   "> Maybe it would help if those drivers were part of this patch set,\n",
   "> rather than the patch set just introducing a whole new architecture\n",
   "> interface without really showing where the problem drivers are.\n",
-  "> =\n",
-  "\n",
+  "> \n",
   "> The issue here is that if we make this new ioremap_nopost() fail by\n",
   "> returning NULL if an architecture does not provide an implementation,\n",
   "> then these drivers are going to start failing on such architectures.\n",
-  "> =\n",
-  "\n",
+  "> \n",
   "> It is only safe to do that where we know for certain that the drivers\n",
   "> are not used - but I don't think that's the case here (it's difficult\n",
   "> to tell, because no drivers are updated in this series, so we don't\n",
   "> know which are going to be affected.)\n",
-  "> =\n",
-  "\n",
+  "> \n",
   "> So, the question is:\n",
-  "> =\n",
-  "\n",
+  "> \n",
   "> - is it better to provide a default implementation which provides the\n",
   ">   functionality that existing drivers are _already_ using, albiet not\n",
   ">   entirely correctly.\n",
-  "> =\n",
-  "\n",
+  "> \n",
   "> or:\n",
-  "> =\n",
-  "\n",
+  "> \n",
   "> - is it better to break drivers on architectures when they're converted\n",
   ">   to fix up this issue.\n",
-  "> =\n",
-  "\n",
+  "> \n",
   "> What, I suppose, we could do is not bother with a default implementation,\n",
   "> but instead litter drivers with:\n",
-  "> =\n",
-  "\n",
+  "> \n",
   "> +#ifdef ioremap_post\n",
-  "> +\tbase =3D ioremap_post(...);\n",
+  "> +\tbase = ioremap_post(...);\n",
   "> +#else\n",
-  "> \tbase =3D ioremap(...);\n",
+  "> \tbase = ioremap(...);\n",
   "> +#endif\n",
-  "> =\n",
-  "\n",
+  "> \n",
   "> which gets around your objection - not providing a default that's weaker\n",
   "> than required, but also not breaking the drivers.  The problem is that\n",
   "> we end up littering drivers with ifdefs.\n",
-  "> =\n",
-  "\n",
+  "> \n",
   "> However, I'm willing to bet that the architectures that you're saying\n",
   "> will not be able to support the weaker semantic won't have any need to\n",
   "> use these drivers, or if they do, the drivers will need the method of\n",
   "> accessing stuff like PCI IO and configuration spaces radically altered.\n",
-  "> =\n",
-  "\n",
+  "> \n",
   "> So, maybe the best solution is to not provide any kind of default\n",
   "> implementation, add a HAVE_IOREMAP_POST Kconfig symbol, have architectures\n",
   "> select that when they do provide ioremap_post(), and make the drivers\n",
@@ -177,12 +112,7 @@
   "progress).\n",
   "\n",
   "Thanks,\n",
-  "Lorenzo\n",
-  "\n",
-  "_______________________________________________\n",
-  "linux-arm-kernel mailing list\n",
-  "linux-arm-kernel\@lists.infradead.org\n",
-  "http://lists.infradead.org/mailman/listinfo/linux-arm-kernel"
+  "Lorenzo"
 ]
 
-14ab6ba596fad95ab23af73d040f27c67b5096847e5be69ae64841a849011ca3
+b3ae835d11887857210945ac8c220a1480582200f00fe1af22128a2e6c4e86fa

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.