<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/drivers/mtd/mtdoops.c, branch v3.2.31</title>
<subtitle>Linux kernel source tree</subtitle>
<id>https://git.amat.us/linux/atom/drivers/mtd/mtdoops.c?h=v3.2.31</id>
<link rel='self' href='https://git.amat.us/linux/atom/drivers/mtd/mtdoops.c?h=v3.2.31'/>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/'/>
<updated>2012-01-26T00:13:05Z</updated>
<entry>
<title>mtd: mtdoops: skip reading initially bad blocks</title>
<updated>2012-01-26T00:13:05Z</updated>
<author>
<name>Roman Tereshonkov</name>
<email>roman.tereshonkov@nokia.com</email>
</author>
<published>2011-12-02T13:07:17Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=fc3bd1ff1d248c3ab9a2c57c285b86bd17dd2176'/>
<id>urn:sha1:fc3bd1ff1d248c3ab9a2c57c285b86bd17dd2176</id>
<content type='text'>
commit 3538c56329936c78f7d356889908790006d0124c upstream.

Use block_isbad to check and skip the bad blocks reading.
This will allow to get rid of the read errors if bad blocks
are present initially.

Signed-off-by: Roman Tereshonkov &lt;roman.tereshonkov@nokia.com&gt;
Signed-off-by: Artem Bityutskiy &lt;artem.bityutskiy@linux.intel.com&gt;
Signed-off-by: David Woodhouse &lt;David.Woodhouse@intel.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>mtdoops: fix the oops_page_used array size</title>
<updated>2012-01-26T00:13:05Z</updated>
<author>
<name>Roman Tereshonkov</name>
<email>roman.tereshonkov@nokia.com</email>
</author>
<published>2011-11-29T10:49:18Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=bf77ff6f9796c5664cf63f191da99358198a8e67'/>
<id>urn:sha1:bf77ff6f9796c5664cf63f191da99358198a8e67</id>
<content type='text'>
commit 556f063580db2953a7e53cd46b47724246320f60 upstream.

The array of unsigned long pointed by oops_page_used is allocated
by vmalloc which requires the size to be in bytes.

BITS_PER_LONG is equal to 32.
If we want to allocate memory for 32 pages with one bit per page then
32 / BITS_PER_LONG  is equal to 1 byte that is 8 bits.
To fix it we need to multiply the result by sizeof(unsigned long) equal to 4.

Signed-off-by: Roman Tereshonkov &lt;roman.tereshonkov@nokia.com&gt;
Signed-off-by: Artem Bityutskiy &lt;Artem.Bityutskiy@linux.intel.com&gt;
Signed-off-by: David Woodhouse &lt;David.Woodhouse@intel.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>mtd: utilize `mtd_is_*()' functions</title>
<updated>2011-09-21T06:19:06Z</updated>
<author>
<name>Brian Norris</name>
<email>computersforpeace@gmail.com</email>
</author>
<published>2011-09-21T01:34:25Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=d57f40544a41fdfe90fd863b6865138c5a82f1cc'/>
<id>urn:sha1:d57f40544a41fdfe90fd863b6865138c5a82f1cc</id>
<content type='text'>
Signed-off-by: Brian Norris &lt;computersforpeace@gmail.com&gt;
Signed-off-by: Artem Bityutskiy &lt;artem.bityutskiy@intel.com&gt;
</content>
</entry>
<entry>
<title>Merge git://git.infradead.org/mtd-2.6</title>
<updated>2011-01-17T19:15:30Z</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2011-01-17T19:15:30Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=ab2020f2f11fc7fb81e6c71298b0830d85412011'/>
<id>urn:sha1:ab2020f2f11fc7fb81e6c71298b0830d85412011</id>
<content type='text'>
* git://git.infradead.org/mtd-2.6: (59 commits)
  mtd: mtdpart: disallow reading OOB past the end of the partition
  mtd: pxa3xx_nand: NULL dereference in pxa3xx_nand_probe
  UBI: use mtd-&gt;writebufsize to set minimal I/O unit size
  mtd: initialize writebufsize in the MTD object of a partition
  mtd: onenand: add mtd-&gt;writebufsize initialization
  mtd: nand: add mtd-&gt;writebufsize initialization
  mtd: cfi: add writebufsize initialization
  mtd: add writebufsize field to mtd_info struct
  mtd: OneNAND: OMAP2/3: prevent regulator sleeping while OneNAND is in use
  mtd: OneNAND: add enable / disable methods to onenand_chip
  mtd: m25p80: Fix JEDEC ID for AT26DF321
  mtd: txx9ndfmc: limit transfer bytes to 512 (ECC provides 6 bytes max)
  mtd: cfi_cmdset_0002: add support for Samsung K8D3x16UxC NOR chips
  mtd: cfi_cmdset_0002: add support for Samsung K8D6x16UxM NOR chips
  mtd: nand: ams-delta: drop omap_read/write, use ioremap
  mtd: m25p80: add debugging trace in sst_write
  mtd: nand: ams-delta: select for built-in by default
  mtd: OneNAND: lighten scary initial bad block messages
  mtd: OneNAND: OMAP2/3: add support for command line partitioning
  mtd: nand: rearrange ONFI revision checking, add ONFI 2.3
  ...

Fix up trivial conflict in drivers/mtd/Kconfig as per DavidW.
</content>
</entry>
<entry>
<title>kmsg_dump: constrain mtdoops and ramoops to perform their actions only for KMSG_DUMP_PANIC</title>
<updated>2011-01-13T16:03:07Z</updated>
<author>
<name>Seiji Aguchi</name>
<email>seiji.aguchi@hds.com</email>
</author>
<published>2011-01-13T00:59:29Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=fc2d557c74dc58294b9acc7231a2113ae59af97c'/>
<id>urn:sha1:fc2d557c74dc58294b9acc7231a2113ae59af97c</id>
<content type='text'>
This series aims to develop logging facility for enterprise use.

It is important to save kernel messages reliably on enterprise system
because they are helpful for diagnosing system.

This series add kmsg_dump() to the paths loosing kernel messages.  The use
case is the following.

[Use case of reboot/poweroff/halt/emergency_restart]

 My company has often experienced the followings in our support service.
 - Customer's system suddenly reboots.
 - Customers ask us to investigate the reason of the reboot.

We recognize the fact itself because boot messages remain in
/var/log/messages.  However, we can't investigate the reason why the
system rebooted, because the last messages don't remain.  And off course
we can't explain the reason.

We can solve above problem with this patch as follows.

 Case1: reboot with command
   - We can see "Restarting system with command:" or ""Restarting system.".

 Case2: halt with command
   - We can see "System halted.".

 Case3: poweroff with command
   - We can see " Power down.".

 Case4: emergency_restart with sysrq.
   - We can see "Sysrq:" outputted in __handle_sysrq().

 Case5: emergency_restart with softdog.
   - We can see "Initiating system reboot" in watchdog_fire().

So, we can distinguish the reason of reboot, poweroff, halt and emergency_restart.

If customer executed reboot command, you may think the customer should
know the fact.  However, they often claim they don't execute the command
when they rebooted system by mistake.

No message remains on the current Linux kernel, so we can't show the proof
to the customer.  This patch improves this situation.

This patch:

Alters mtdoops and ramoops to perform their actions only for
KMSG_DUMP_PANIC, KMSG_DUMP_OOPS and KMSG_DUMP_KEXEC because they would
like to log crashes only.

Signed-off-by: Seiji Aguchi &lt;seiji.aguchi@hds.com&gt;
Cc: David Woodhouse &lt;dwmw2@infradead.org&gt;
Cc: Marco Stornelli &lt;marco.stornelli@gmail.com&gt;
Reviewed-by: Artem Bityutskiy &lt;Artem.Bityutskiy@nokia.com&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>mtd: don't use flush_scheduled_work()</title>
<updated>2011-01-06T15:17:08Z</updated>
<author>
<name>Tejun Heo</name>
<email>tj@kernel.org</email>
</author>
<published>2010-12-11T16:51:44Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=75c52a49630a478ffe9c1473441779676817fce6'/>
<id>urn:sha1:75c52a49630a478ffe9c1473441779676817fce6</id>
<content type='text'>
flush_scheduled_work() is deprecated and scheduled to be removed.
Directly flush cxt-&gt;work_{erase|write} on removal instead.

Signed-off-by: Tejun Heo &lt;tj@kernel.org&gt;
Signed-off-by: Artem Bityutskiy &lt;Artem.Bityutskiy@nokia.com&gt;
Signed-off-by: David Woodhouse &lt;David.Woodhouse@intel.com&gt;
</content>
</entry>
<entry>
<title>mtd: Update copyright notices</title>
<updated>2010-08-08T19:58:20Z</updated>
<author>
<name>David Woodhouse</name>
<email>David.Woodhouse@intel.com</email>
</author>
<published>2010-08-08T19:58:20Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=a1452a3771c4eb85bd779790b040efdc36f4274e'/>
<id>urn:sha1:a1452a3771c4eb85bd779790b040efdc36f4274e</id>
<content type='text'>
Signed-off-by: David Woodhouse &lt;dwmw2@infradead.org&gt;
</content>
</entry>
<entry>
<title>mtd: Remove unnecessary comparisons with MAX_MTD_DEVICES</title>
<updated>2010-02-25T11:39:09Z</updated>
<author>
<name>Ben Hutchings</name>
<email>bhutchings@solarflare.com</email>
</author>
<published>2010-01-29T20:58:23Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=24c15496771ea1f3902dee23f746042ba34dc2b8'/>
<id>urn:sha1:24c15496771ea1f3902dee23f746042ba34dc2b8</id>
<content type='text'>
MAX_MTD_DEVICES is about to be removed.

Signed-off-by: Ben Hutchings &lt;bhutchings@solarflare.com&gt;
Signed-off-by: Artem Bityutskiy &lt;Artem.Bityutskiy@nokia.com&gt;
Signed-off-by: David Woodhouse &lt;David.Woodhouse@intel.com&gt;
</content>
</entry>
<entry>
<title>kmsg_dump: Dump on crash_kexec as well</title>
<updated>2009-12-31T19:45:04Z</updated>
<author>
<name>KOSAKI Motohiro</name>
<email>kosaki.motohiro@jp.fujitsu.com</email>
</author>
<published>2009-12-22T03:15:43Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=0f4bd46ec252887f44f1f065b41867cac8f70dfb'/>
<id>urn:sha1:0f4bd46ec252887f44f1f065b41867cac8f70dfb</id>
<content type='text'>
crash_kexec gets called before kmsg_dump(KMSG_DUMP_OOPS) if
panic_on_oops is set, so the kernel log buffer is not stored
for this case.

This patch adds a KMSG_DUMP_KEXEC dump type which gets called
when crash_kexec() is invoked. To avoid getting double dumps,
the old KMSG_DUMP_PANIC is moved below crash_kexec(). The
mtdoops driver is modified to handle KMSG_DUMP_KEXEC in the
same way as a panic.

Signed-off-by: KOSAKI Motohiro &lt;kosaki.motohiro@jp.fujitsu.com&gt;
Acked-by: Simon Kagstrom &lt;simon.kagstrom@netinsight.net&gt;
Signed-off-by: David Woodhouse &lt;David.Woodhouse@intel.com&gt;
</content>
</entry>
<entry>
<title>mtd: mtdoops: refactor as a kmsg_dumper</title>
<updated>2009-11-30T12:02:07Z</updated>
<author>
<name>Simon Kagstrom</name>
<email>simon.kagstrom@netinsight.net</email>
</author>
<published>2009-11-03T13:19:03Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=2e386e4bac90554887e73d6f342e845185b33fc3'/>
<id>urn:sha1:2e386e4bac90554887e73d6f342e845185b33fc3</id>
<content type='text'>
The last messages which happens before a crash might contain interesting
information about the crash. This patch reworks mtdoops using the
kmsg_dumper support instead of a console, which simplifies the code and
also includes the messages before the oops started.

On oops callbacks, the MTD device write is scheduled in a work queue (to
be able to use the regular mtd-&gt;write call), while panics call
mtd-&gt;panic_write directly. Thus, if panic_on_oops is set, the oops will
be written out during the panic.

A parameter to specify which mtd device to use (number or name), as well
as a flag, writable at runtime, to toggle wheter to dump oopses or only
panics (since oopses can often be handled by regular syslog).

The patch was massaged and amended by Artem.

Signed-off-by: Simon Kagstrom &lt;simon.kagstrom@netinsight.net&gt;
Reviewed-by: Anders Grafstrom &lt;anders.grafstrom@netinsight.net&gt;
Signed-off-by: Artem Bityutskiy &lt;Artem.Bityutskiy@nokia.com&gt;
Signed-off-by: David Woodhouse &lt;David.Woodhouse@intel.com&gt;
</content>
</entry>
</feed>
