linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* since when does ARM map the kernel memory in sections?
@ 2011-04-12 18:52 Peter Wächtler
  2011-04-12 19:11 ` Colin Cross
                   ` (2 more replies)
  0 siblings, 3 replies; 40+ messages in thread
From: Peter Wächtler @ 2011-04-12 18:52 UTC (permalink / raw)
  To: linux-arm-kernel

Hello Linux ARM developers,

did the ARM Linux 2.6 kernel map the kernel memory in pages in the past?
Or was the memory always mapped in sections?

I still have to chase a potential memory corruption. The rootfs is located on 
a SDcard and gets corrupted even when the filesystem test programs write to 
different partitions.
The test scenario includes several dozen or even hundreds of warm and cold 
boot sequences, file system write tests with sudden soft resets. It's a large 
embedded project with a lot of drivers and the fact that always the rootfs and 
often the superblock gets damaged let me think of a memory corruption.

  Peter

^ permalink raw reply	[flat|nested] 40+ messages in thread
* since when does ARM map the kernel memory in sections?
@ 2011-04-28 20:26 Peter Waechtler
  2011-04-28 21:38 ` Andrei Warkentin
  0 siblings, 1 reply; 40+ messages in thread
From: Peter Waechtler @ 2011-04-28 20:26 UTC (permalink / raw)
  To: linux-arm-kernel

Am Mittwoch, 27. April 2011, 02:27:57 schrieben Sie:
> On Tue, Apr 26, 2011 at 5:58 PM, Jamie Lokier <jamie@shareable.org> wrote:
> >> Reliable writes are exposed via REQ_FUA.
> > 
> > Are you sure that's appropriate?
> > 
> > Unless I have misunderstood (very possible), REQ_FUA means writes hit
> > non-volatile storage before acknowledgement, not that they are atomic.
> > I think the normal users of REQ_FUA don't require or expect large
> > atomic writes; they use it as a shortcut for (write & flush this
> > write) without implying anything else is flushed.
> 
> I would agree with you that it's not the best mapping. However, a failed
> MMC write transaction has other properties. If I understand correctly,
> depending on mode of failure (say pulling power), you might wind up
> with extra data getting erased (because erase
> happens at erase unit boundary), and erase can be done before all the
> data was transferred from host to card.
> 

No, it's not because of the erase unit size larger than write size.
An "erase unit" is cleared by garbage collection only IFF the complete unit is 
unused - asynchronously by the ongoing write transaction. The problem with 
damaging neighboring data is: density. No beer (today), i'm drinking wine ;)

The cells storing the "bits" gets smaller and smaller and with multi level 
cells even more bits are represented by "fewer electrons". Programming the 
neighbor cell disturbs the fragile cells. If the error correction is disturbed 
by power loss: off we go... 

Someone from the flash vendors eavesdropping? Please, pretty please ... :)

	Peter

P.S. Andrei: sorry for reposting, but Kmail confuses me with "Reply to all"

^ permalink raw reply	[flat|nested] 40+ messages in thread

end of thread, other threads:[~2011-06-06 20:38 UTC | newest]

Thread overview: 40+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-04-12 18:52 since when does ARM map the kernel memory in sections? Peter Wächtler
2011-04-12 19:11 ` Colin Cross
2011-04-13 18:19   ` Peter Wächtler
2011-04-12 19:20 ` Andrei Warkentin
2011-04-12 20:33   ` Jamie Lokier
2011-04-13 15:27     ` Nicolas Pitre
2011-04-13 20:11       ` Jamie Lokier
2011-04-18 13:52     ` Pavel Machek
2011-04-18 17:07       ` Jamie Lokier
2011-04-18 17:17         ` Nicolas Pitre
2011-04-22 15:47         ` Pavel Machek
2011-04-23  9:23           ` Linus Walleij
2011-04-26 10:33             ` Per Forlin
2011-04-26 19:00               ` Peter Waechtler
2011-04-26 19:07                 ` Jamie Lokier
2011-04-26 20:38                   ` MMC and reliable write - was: " Peter Waechtler
2011-04-26 22:45                     ` Jamie Lokier
2011-04-27  1:13                       ` Andrei Warkentin
2011-04-27 13:07                         ` Jamie Lokier
2011-04-27 19:18                           ` Andrei Warkentin
2011-04-27 19:33                             ` Arnd Bergmann
2011-05-03  8:04                             ` Jamie Lokier
2011-06-06 10:28                               ` Pavel Machek
2011-06-06 20:38                                 ` Peter Waechtler
2011-04-26 20:24               ` Andrei Warkentin
2011-04-26 22:58                 ` Jamie Lokier
2011-04-27  0:27                   ` Andrei Warkentin
2011-04-27 13:19                     ` Jamie Lokier
2011-04-27 13:32                       ` Arnd Bergmann
2011-04-27 18:50                         ` Peter Waechtler
2011-04-27 18:58                           ` Andrei Warkentin
2011-04-18 19:21       ` Peter Waechtler
2011-04-18 17:24         ` Pavel Machek
2011-04-19  0:43         ` Jamie Lokier
2011-04-13  6:51   ` Peter Wächtler
2011-04-13 15:44     ` Nicolas Pitre
2011-04-13 18:35       ` Peter Wächtler
2011-04-12 20:15 ` Russell King - ARM Linux
  -- strict thread matches above, loose matches on Subject: below --
2011-04-28 20:26 Peter Waechtler
2011-04-28 21:38 ` Andrei Warkentin

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).