All of lore.kernel.org
 help / color / mirror / Atom feed
From: Albert ARIBAUD <albert.u.boot@aribaud.net>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH 0/5] Create an API for safely accessing BMP header fields
Date: Mon, 4 Feb 2013 12:57:34 +0100	[thread overview]
Message-ID: <20130204125734.228623e8@lilith> (raw)
In-Reply-To: <1359977979-28585-1-git-send-email-nikita@compulab.co.il>

Hi Nikita,

On Mon,  4 Feb 2013 13:39:34 +0200, Nikita Kiryanov
<nikita@compulab.co.il> wrote:

> When configuring U-Boot to display a splash image, the user is free to
> designate whatever address they see fit as the in-memory location of BMP
> file. Unfortunately, this makes it easy to place the BMP header fields in
> unaligned addresses, which will cause a data abort on architectures which
> can't handle unaligned memory accesses. What's worse, addresses which are
> supposed to be issue free (32 bit aligned addresses) actually don't work
> because of the structure of the BMP header file (the header starts with 2
> chars, followed by __u32 fields. The two chars offset the 32 bit fields away
> from proper alignment).
> 
> As a result, it is very easy to brick the board that U-Boot runs on with certain
> architectures. Once a bad address for splash image is selected and the board
> restarted, U-Boot never reaches command line, and yet the only way to prevent
> the data aborts from happening is to clear or change the environment variable
> splashimage.
> 
> While it is possible to fix the problem by compiling all relevant files with
> $(PLATFORM_NO_UNALIGNED), it is possible to handle it with finer granularity by
> creating an API for header accesses, and compiling only that with
> $(PLATFORM_NO_UNALIGNED).
> 
> This patchset creates such an API, and makes use of it wherever an in-memory BMP
> header is probed for data.

IIRC, you has submitted a fix so that BMP loads would result in
correctly aligned fields and thus no need for accessors. Why this
change of mind?

Amicalement,
-- 
Albert.

  parent reply	other threads:[~2013-02-04 11:57 UTC|newest]

Thread overview: 32+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-02-04 11:39 [U-Boot] [PATCH 0/5] Create an API for safely accessing BMP header fields Nikita Kiryanov
2013-02-04 11:39 ` [U-Boot] [PATCH 1/5] Add bmp_layout module for accessing BMP header data Nikita Kiryanov
2013-02-04 19:26   ` Wolfgang Denk
2013-02-04 21:26     ` Albert ARIBAUD
2013-02-04 23:11       ` Wolfgang Denk
2013-02-05  8:07         ` Igor Grinberg
2013-02-05  9:57           ` Wolfgang Denk
2013-02-05 11:38             ` Igor Grinberg
2013-02-05 13:20               ` Wolfgang Denk
2013-02-05 14:49                 ` Igor Grinberg
2013-02-05 19:27                   ` Wolfgang Denk
2013-02-05  6:52     ` Nikita Kiryanov
2013-02-05  9:47       ` Wolfgang Denk
2013-02-04 11:39 ` [U-Boot] [PATCH 2/5] lcd: use bmp_layout API Nikita Kiryanov
2013-02-04 11:39 ` [U-Boot] [PATCH 3/5] cmd_bmp: " Nikita Kiryanov
2013-02-04 11:39 ` [U-Boot] [PATCH 4/5] video/cfb_console: " Nikita Kiryanov
2013-02-04 11:39 ` [U-Boot] [PATCH 5/5] video/bus_vcxk: " Nikita Kiryanov
2013-02-04 11:57 ` Albert ARIBAUD [this message]
2013-02-04 12:37   ` [U-Boot] [PATCH 0/5] Create an API for safely accessing BMP header fields Nikita Kiryanov
2013-02-04 14:19     ` Albert ARIBAUD
2013-02-04 15:07       ` Nikita Kiryanov
2013-02-04 15:25         ` Albert ARIBAUD
2013-02-04 20:48           ` Wolfgang Denk
2013-02-05  7:20           ` Nikita Kiryanov
2013-02-04 20:39       ` Wolfgang Denk
2013-02-05 14:58       ` Tom Rini
2013-02-05 19:37         ` Albert ARIBAUD
2013-02-04 20:35     ` Wolfgang Denk
2013-02-04 21:02       ` Jeroen Hofstee
2013-02-05  7:39         ` Igor Grinberg
2013-02-05  6:53 ` Igor Grinberg
2013-02-05  7:22   ` Nikita Kiryanov

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=20130204125734.228623e8@lilith \
    --to=albert.u.boot@aribaud.net \
    --cc=u-boot@lists.denx.de \
    /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.