All of lore.kernel.org
 help / color / mirror / Atom feed
From: greg@kroah.com (Greg KH)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH] ARM: allow, but warn, when issuing ioremap() on RAM
Date: Fri, 8 Oct 2010 16:19:26 -0700	[thread overview]
Message-ID: <20101008231926.GA28235@kroah.com> (raw)
In-Reply-To: <20101008175308.GA10975@n2100.arm.linux.org.uk>

On Fri, Oct 08, 2010 at 06:53:08PM +0100, Russell King - ARM Linux wrote:
> On Fri, Oct 08, 2010 at 12:32:35PM +0300, Felipe Contreras wrote:
> > I think when _you_ remove functionality from the architecture, you
> > should provide a mechanism that drivers can migrate to. Since there's
> > nothing like that, not even a guideline, you are breaking the drivers
> > willingly, and expecting other people to fix a difficult problem that
> > you yourself have no idea how to fix properly.
> 
> We can either wait for people to complain about silent data corruption
> or we can be compliant with the architecture specification.  Which is
> better - to avoid data corruption and be correct, or allow a system to
> become flakey and corrupt people's data.
> 
> What I care about is system correctness and people's data - having
> multiple mappings with different attributes is documented in very clear
> terms as being 'unpredictable' and therefore it isn't permissible to
> allow the practice that worked with previous processors (inherently
> due to their cache architecture) to continue forward onto processors
> with a different cache architecture.
> 
> As already discussed, it's nigh on impossible to unmap the existing
> direct mapped region (read the previous discussions about why this is)
> - which is precisely why there is no direct alternative solution.

Wait, let me get this straight:
  - drivers used to work on 2.6.35
  - some ARM core code changed in .36-rc to fix this iomem problem that
    you found
  - no drivers are notified of the api change as it's a run-time change,
    so the build doesn't break.
  - drivers break when run as the api stops returning valid addresses
  - no known way is around to fix the broken drivers

Um, this doesn't sound like a valid thing to be doing, how do you expect
people to fix their code if they:
	- don't realize it as the api change doesn't break the build
	- there is no way to fix their code

This sounds like a huge regression that should be reverted, or am I
missing something here?

confused,

greg k-h

WARNING: multiple messages have this Message-ID (diff)
From: Greg KH <greg@kroah.com>
To: Russell King - ARM Linux <linux@arm.linux.org.uk>
Cc: "Felipe Contreras" <felipe.contreras@gmail.com>,
	linux-main <linux-kernel@vger.kernel.org>,
	linux-arm <linux-arm-kernel@lists.infradead.org>,
	"Arnd Hannemann" <arnd@arndnet.de>,
	"Han Jonghun" <jonghun79.han@gmail.com>,
	"Uwe Kleine-König" <u.kleine-koenig@pengutronix.de>,
	"Hemant Pedanekar" <hemantp@ti.com>
Subject: Re: [PATCH] ARM: allow, but warn, when issuing ioremap() on RAM
Date: Fri, 8 Oct 2010 16:19:26 -0700	[thread overview]
Message-ID: <20101008231926.GA28235@kroah.com> (raw)
In-Reply-To: <20101008175308.GA10975@n2100.arm.linux.org.uk>

On Fri, Oct 08, 2010 at 06:53:08PM +0100, Russell King - ARM Linux wrote:
> On Fri, Oct 08, 2010 at 12:32:35PM +0300, Felipe Contreras wrote:
> > I think when _you_ remove functionality from the architecture, you
> > should provide a mechanism that drivers can migrate to. Since there's
> > nothing like that, not even a guideline, you are breaking the drivers
> > willingly, and expecting other people to fix a difficult problem that
> > you yourself have no idea how to fix properly.
> 
> We can either wait for people to complain about silent data corruption
> or we can be compliant with the architecture specification.  Which is
> better - to avoid data corruption and be correct, or allow a system to
> become flakey and corrupt people's data.
> 
> What I care about is system correctness and people's data - having
> multiple mappings with different attributes is documented in very clear
> terms as being 'unpredictable' and therefore it isn't permissible to
> allow the practice that worked with previous processors (inherently
> due to their cache architecture) to continue forward onto processors
> with a different cache architecture.
> 
> As already discussed, it's nigh on impossible to unmap the existing
> direct mapped region (read the previous discussions about why this is)
> - which is precisely why there is no direct alternative solution.

Wait, let me get this straight:
  - drivers used to work on 2.6.35
  - some ARM core code changed in .36-rc to fix this iomem problem that
    you found
  - no drivers are notified of the api change as it's a run-time change,
    so the build doesn't break.
  - drivers break when run as the api stops returning valid addresses
  - no known way is around to fix the broken drivers

Um, this doesn't sound like a valid thing to be doing, how do you expect
people to fix their code if they:
	- don't realize it as the api change doesn't break the build
	- there is no way to fix their code

This sounds like a huge regression that should be reverted, or am I
missing something here?

confused,

greg k-h

  parent reply	other threads:[~2010-10-08 23:19 UTC|newest]

Thread overview: 209+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-10-07  9:44 [PATCH] ARM: allow, but warn, when issuing ioremap() on RAM Felipe Contreras
2010-10-07  9:44 ` Felipe Contreras
2010-10-07 11:51 ` Baruch Siach
2010-10-07 11:51   ` Baruch Siach
2010-10-07 12:29   ` [PATCH v2] " Felipe Contreras
2010-10-07 12:29     ` Felipe Contreras
2010-10-07 18:00     ` Uwe Kleine-König
2010-10-07 18:00       ` Uwe Kleine-König
2010-10-07 19:22 ` [PATCH] " Russell King - ARM Linux
2010-10-07 19:22   ` Russell King - ARM Linux
2010-10-08  9:32   ` Felipe Contreras
2010-10-08  9:32     ` Felipe Contreras
2010-10-08 17:53     ` Russell King - ARM Linux
2010-10-08 17:53       ` Russell King - ARM Linux
2010-10-08 19:37       ` Felipe Contreras
2010-10-08 19:37         ` Felipe Contreras
2010-10-08 23:04         ` Russell King - ARM Linux
2010-10-08 23:04           ` Russell King - ARM Linux
2010-10-08 23:25           ` Greg KH
2010-10-08 23:25             ` Greg KH
2010-10-08 23:44             ` Russell King - ARM Linux
2010-10-08 23:44               ` Russell King - ARM Linux
2010-10-09  0:00               ` Greg KH
2010-10-09  0:00                 ` Greg KH
2010-10-09  0:25                 ` Russell King - ARM Linux
2010-10-09  0:25                   ` Russell King - ARM Linux
2010-10-09  0:54                   ` Greg KH
2010-10-09  0:54                     ` Greg KH
2010-10-09  2:41                   ` Nicolas Pitre
2010-10-09  2:41                     ` Nicolas Pitre
2010-10-09  3:04                     ` Greg KH
2010-10-09  3:04                       ` Greg KH
2010-10-09  9:32                       ` Felipe Contreras
2010-10-09  9:32                         ` Felipe Contreras
2010-10-11 10:05                     ` Catalin Marinas
2010-10-11 10:05                       ` Catalin Marinas
2010-10-11 10:39                       ` Felipe Contreras
2010-10-11 10:39                         ` Felipe Contreras
2010-10-11 10:52                         ` Russell King - ARM Linux
2010-10-11 10:52                           ` Russell King - ARM Linux
2010-10-11 11:23                         ` Catalin Marinas
2010-10-11 11:23                           ` Catalin Marinas
2010-10-11 12:03                           ` Felipe Contreras
2010-10-11 12:03                             ` Felipe Contreras
2010-10-11 12:30                             ` Catalin Marinas
2010-10-11 12:30                               ` Catalin Marinas
2010-10-11 22:53                               ` Nicolas Pitre
2010-10-11 22:53                                 ` Nicolas Pitre
2010-10-14 15:02                               ` Felipe Contreras
2010-10-14 15:02                                 ` Felipe Contreras
2010-10-14 17:18                                 ` Catalin Marinas
2010-10-14 17:18                                   ` Catalin Marinas
2010-10-14 17:44                                   ` Felipe Contreras
2010-10-14 17:44                                     ` Felipe Contreras
2010-10-11 11:01                       ` Pawel Moll
2010-10-11 11:01                         ` Pawel Moll
2010-10-11 11:03                         ` Catalin Marinas
2010-10-11 11:03                           ` Catalin Marinas
2010-10-16  2:39                 ` Benjamin Herrenschmidt
2010-10-16  2:39                   ` Benjamin Herrenschmidt
2010-10-16  9:43                   ` Felipe Contreras
2010-10-16  9:43                     ` Felipe Contreras
2010-10-09  0:10               ` Russell King - ARM Linux
2010-10-09  0:10                 ` Russell King - ARM Linux
2010-10-09  0:56               ` Felipe Contreras
2010-10-09  0:56                 ` Felipe Contreras
2010-10-09  9:21                 ` Russell King - ARM Linux
2010-10-09  9:21                   ` Russell King - ARM Linux
2010-10-09 10:28                   ` Felipe Contreras
2010-10-09 10:28                     ` Felipe Contreras
2010-10-09 11:11                     ` Arnd Bergmann
2010-10-09 11:11                       ` Arnd Bergmann
2010-10-09 11:43                       ` Dave Airlie
2010-10-09 11:43                         ` Dave Airlie
2010-10-09 11:55                         ` Christoph Hellwig
2010-10-09 11:55                           ` Christoph Hellwig
2010-10-09 12:17                           ` Felipe Contreras
2010-10-09 12:17                             ` Felipe Contreras
2010-10-09 12:10                         ` Felipe Contreras
2010-10-09 12:10                           ` Felipe Contreras
2010-10-09 14:37                           ` Russell King - ARM Linux
2010-10-09 14:37                             ` Russell King - ARM Linux
2010-10-09 16:18                             ` Felipe Contreras
2010-10-09 16:18                               ` Felipe Contreras
2010-10-09 11:44                       ` Uwe Kleine-König
2010-10-09 11:44                         ` Uwe Kleine-König
2010-10-09 12:05                         ` Russell King - ARM Linux
2010-10-09 12:05                           ` Russell King - ARM Linux
2010-10-09 11:59                       ` Felipe Contreras
2010-10-09 11:59                         ` Felipe Contreras
2010-10-09 14:43                         ` Arnd Bergmann
2010-10-09 14:43                           ` Arnd Bergmann
2010-10-09 18:59                           ` Guennadi Liakhovetski
2010-10-09 18:59                             ` Guennadi Liakhovetski
2010-10-10  1:52                   ` Felipe Contreras
2010-10-10  1:52                     ` Felipe Contreras
2010-10-11  8:35                     ` Uwe Kleine-König
2010-10-11  8:35                       ` Uwe Kleine-König
2010-10-11  9:02                       ` Russell King - ARM Linux
2010-10-11  9:02                         ` Russell King - ARM Linux
2010-10-11  9:24                         ` Uwe Kleine-König
2010-10-11  9:24                           ` Uwe Kleine-König
2010-10-11 10:08                           ` Felipe Contreras
2010-10-11 10:08                             ` Felipe Contreras
2010-10-11 10:15                             ` Russell King - ARM Linux
2010-10-11 10:15                               ` Russell King - ARM Linux
2010-10-11 15:25                     ` Russell King - ARM Linux
2010-10-11 15:25                       ` Russell King - ARM Linux
2010-10-14 14:47                       ` Felipe Contreras
2010-10-14 14:47                         ` Felipe Contreras
2010-10-19  8:13                       ` Colin Cross
2010-10-19  8:13                         ` Colin Cross
2010-10-19 18:12                         ` Russell King - ARM Linux
2010-10-19 18:12                           ` Russell King - ARM Linux
2010-10-19 19:21                         ` Russell King - ARM Linux
2010-10-19 19:21                           ` Russell King - ARM Linux
2010-11-23  9:43                       ` [PATCH] ARM: mx3/pcm037: properly allocate memory for mx3-camera Uwe Kleine-König
2010-11-23 10:12                         ` Russell King - ARM Linux
2010-11-23 10:26                           ` Uwe Kleine-König
2010-11-23 14:08                             ` Alberto Panizzo
2010-11-23 14:17                               ` Uwe Kleine-König
2010-11-24  8:02                                 ` Uwe Kleine-König
2010-12-06  8:33                                   ` Uwe Kleine-König
2010-12-06 10:14                                     ` Alberto Panizzo
2010-12-06 10:26                                       ` Russell King - ARM Linux
2010-12-06 11:37                                         ` Alberto Panizzo
2010-12-06 11:46                                           ` Russell King - ARM Linux
2010-12-06 14:09                                             ` Alberto Panizzo
2010-12-06 14:34                                               ` Russell King - ARM Linux
2010-12-06 14:54                                                 ` Alberto Panizzo
2010-12-06 16:54                                                   ` Alberto Panizzo
2010-11-23 10:39                           ` About multi-line printk and the need (not) to repeat loglevel markers [Was: Re: [PATCH] ARM: mx3/pcm037: properly allocate memory for mx3-camera] Uwe Kleine-König
2010-11-23 10:39                             ` Uwe Kleine-König
2010-11-23 10:58                             ` Uwe Kleine-König
2010-11-23 10:58                               ` Uwe Kleine-König
2010-11-23 22:16                               ` Linus Torvalds
2010-11-23 22:16                                 ` Linus Torvalds
2010-11-23 22:33                                 ` Russell King - ARM Linux
2010-11-23 22:33                                   ` Russell King - ARM Linux
2010-11-23 23:23                                   ` Joe Perches
2010-11-23 23:23                                     ` Joe Perches
2010-11-24  0:57                                   ` [PATCH] md: Fix single printks with multiple KERN_<level>s Joe Perches
2010-11-24  5:16                                     ` Neil Brown
2010-11-24  8:17                                 ` About multi-line printk and the need (not) to repeat loglevel markers [Was: Re: [PATCH] ARM: mx3/pcm037: properly allocate memory for mx3-camera] Uwe Kleine-König
2010-11-24  8:17                                   ` Uwe Kleine-König
2010-11-24  8:56                                   ` [PATCH 0/6] add some KERN_CONT markers to continuation lines Uwe Kleine-König
2010-11-24  8:57                                     ` [PATCH 1/6] ARM: " Uwe Kleine-König
2010-11-24  8:57                                       ` Uwe Kleine-König
2010-11-24  8:57                                     ` [PATCH 2/6] block: " Uwe Kleine-König
2010-11-24  8:57                                     ` [PATCH 3/6] net: " Uwe Kleine-König
2010-11-28 18:48                                       ` David Miller
2010-11-24  8:57                                     ` [PATCH 4/6] init: " Uwe Kleine-König
2010-11-24  8:57                                     ` [PATCH 5/6] mm: " Uwe Kleine-König
2010-11-24  8:57                                       ` Uwe Kleine-König
2011-02-28 15:17                                       ` Uwe Kleine-König
2011-02-28 15:17                                         ` Uwe Kleine-König
2011-03-01 21:46                                         ` Linus Torvalds
2011-03-01 21:46                                           ` Linus Torvalds
2011-03-02  5:28                                           ` Joe Perches
2011-03-02  5:28                                             ` Joe Perches
2010-11-24  8:57                                     ` [PATCH 6/6] tty/vt: " Uwe Kleine-König
2011-02-28 15:16                                       ` Uwe Kleine-König
2011-02-28 15:39                                         ` Greg KH
2011-02-28 15:50                                           ` Uwe Kleine-König
2011-02-28 16:04                                             ` Greg KH
2011-03-01  3:18                                       ` Greg KH
2010-11-24  9:09                                   ` About multi-line printk and the need (not) to repeat loglevel markers [Was: Re: [PATCH] ARM: mx3/pcm037: properly allocate memory for mx3-camera] Michał Mirosław
2010-11-24  9:09                                     ` Michał Mirosław
2010-11-23 22:54                         ` [PATCH] ARM: mx3/pcm037: properly allocate memory for mx3-camera Guennadi Liakhovetski
2010-10-09  0:45             ` [PATCH] ARM: allow, but warn, when issuing ioremap() on RAM Felipe Contreras
2010-10-09  0:45               ` Felipe Contreras
2010-10-09  8:56               ` Russell King - ARM Linux
2010-10-09  8:56                 ` Russell King - ARM Linux
2010-10-08 23:19       ` Greg KH [this message]
2010-10-08 23:19         ` Greg KH
2010-10-09  3:36         ` Nicolas Pitre
2010-10-09  3:36           ` Nicolas Pitre
2010-10-09 10:00           ` Felipe Contreras
2010-10-09 10:00             ` Felipe Contreras
2010-10-09 17:38             ` Nicolas Pitre
2010-10-09 17:38               ` Nicolas Pitre
2010-10-09 20:16               ` Felipe Contreras
2010-10-09 20:16                 ` Felipe Contreras
2010-10-13 16:17             ` Woodruff, Richard
2010-10-13 16:17               ` Woodruff, Richard
2010-10-14 13:48               ` Felipe Contreras
2010-10-14 13:48                 ` Felipe Contreras
2010-10-14 15:29                 ` Woodruff, Richard
2010-10-14 15:29                   ` Woodruff, Richard
2010-10-16  2:36       ` Benjamin Herrenschmidt
2010-10-16  2:36         ` Benjamin Herrenschmidt
2010-10-17 13:05         ` Woodruff, Richard
2010-10-17 13:05           ` Woodruff, Richard
2010-10-17 23:17           ` Benjamin Herrenschmidt
2010-10-17 23:17             ` Benjamin Herrenschmidt
2010-10-08 19:58   ` Andrew Morton
2010-10-08 19:58     ` Andrew Morton
2010-10-09 13:52 ` Russell King - ARM Linux
2010-10-09 13:52   ` Russell King - ARM Linux
2010-10-09 16:07   ` Felipe Contreras
2010-10-09 16:07     ` Felipe Contreras
2010-10-09 16:45     ` Russell King - ARM Linux
2010-10-09 16:45       ` Russell King - ARM Linux
2010-10-09 19:25       ` Felipe Contreras
2010-10-09 19:25         ` Felipe Contreras
2010-10-10 14:23       ` Pedanekar, Hemant
2010-10-10 14:23         ` Pedanekar, Hemant
2010-10-11  9:26       ` Catalin Marinas
2010-10-11  9:26         ` Catalin Marinas

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=20101008231926.GA28235@kroah.com \
    --to=greg@kroah.com \
    --cc=linux-arm-kernel@lists.infradead.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.