<feed xmlns='http://www.w3.org/2005/Atom'>
<title>user/sven/linux.git/drivers/firmware, branch v3.2</title>
<subtitle>Linux Kernel
</subtitle>
<id>https://git.stealer.net/cgit.cgi/user/sven/linux.git/atom?h=v3.2</id>
<link rel='self' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/atom?h=v3.2'/>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/'/>
<updated>2011-12-15T22:16:47Z</updated>
<entry>
<title>Merge branch 'linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/ibft</title>
<updated>2011-12-15T22:16:47Z</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2011-12-15T22:16:47Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=6f12d2ee52dcf97dcefdadbd500e7650311eaa6a'/>
<id>urn:sha1:6f12d2ee52dcf97dcefdadbd500e7650311eaa6a</id>
<content type='text'>
* 'linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/ibft:
  ibft: Fix finding IBFT ACPI table on UEFI
</content>
</entry>
<entry>
<title>ibft: Fix finding IBFT ACPI table on UEFI</title>
<updated>2011-12-13T14:08:31Z</updated>
<author>
<name>Yinghai Lu</name>
<email>yinghai.lu@oracle.com</email>
</author>
<published>2011-12-12T20:39:14Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=935a9fee51c945b8942be2d7b4bae069167b4886'/>
<id>urn:sha1:935a9fee51c945b8942be2d7b4bae069167b4886</id>
<content type='text'>
Found one system with UEFI/iBFT, kernel does not detect the iBFT during
iscsi_ibft module loading.

Root cause: on x86 (UEFI), we are calling of find_ibft_region() much earlier
- specifically in setup_arch() before ACPI is enabled.

Try to split acpi checking code out and call that later

At that time ACPI iBFT already get permanent mapped with ioremap.
So isa_virt_to_bus() will get wrong phys from right virt address.
We could just skip that phys address printing.

For legacy one, print the found address early.

-v2: update comments and description according to Konrad.
-v3: fix problem about module use case that is found by Konrad.
-v4: use acpi_get_table() instead of acpi_table_parse() to handle module use case that is found by Konrad again..
Signed-off-by: Yinghai Lu &lt;yinghai@kernel.org&gt;
Signed-off-by: Konrad Rzeszutek Wilk &lt;konrad@kernel.org&gt;
</content>
</entry>
<entry>
<title>Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound</title>
<updated>2011-12-02T16:10:51Z</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2011-12-02T16:10:51Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=0efebaa72d3b8cf377c45930c78e1a0969d6355a'/>
<id>urn:sha1:0efebaa72d3b8cf377c45930c78e1a0969d6355a</id>
<content type='text'>
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound:
  ALSA: hda - Fix S3/S4 problem on machines with VREF-pin mute-LED
  ALSA: hda_intel - revert a quirk that affect VIA chipsets
  ALSA: hda - Avoid touching mute-VREF pin for IDT codecs
  firmware: Sigma: Fix endianess issues
  firmware: Sigma: Skip header during CRC generation
  firmware: Sigma: Prevent out of bounds memory access
  ALSA: usb-audio - Support for Roland GAIA SH-01 Synthesizer
  ASoC: Supply dcs_codes for newer WM1811 revisions
  ASoC: Error out if we can't generate a LRCLK at all for WM8994
  ASoC: Correct name of Speyside Main Speaker widget
  ASoC: skip resume of soc-audio devices without codecs
  ASoC: cs42l51: Fix off-by-one for reg_cache_size
  ASoC: drop support for PlayPaq with WM8510
  ASoC: mpc8610: tell the CS4270 codec that it's the master
  ASoC: cs4720: use snd_soc_cache_sync()
  ASoC: SAMSUNG: Fix build error
  ASoC: max9877: Update register if either val or val2 is changed
  ASoC: Fix wrong define for AD1836_ADC_WORD_OFFSET
</content>
</entry>
<entry>
<title>firmware: Sigma: Fix endianess issues</title>
<updated>2011-11-29T11:59:50Z</updated>
<author>
<name>Lars-Peter Clausen</name>
<email>lars@metafoo.de</email>
</author>
<published>2011-11-28T08:44:16Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=bda63586bc5929e97288cdb371bb6456504867ed'/>
<id>urn:sha1:bda63586bc5929e97288cdb371bb6456504867ed</id>
<content type='text'>
Currently the SigmaDSP firmware loader only works correctly on little-endian
systems. Fix this by using the proper endianess conversion functions.

Signed-off-by: Lars-Peter Clausen &lt;lars@metafoo.de&gt;
Acked-by: Mike Frysinger &lt;vapier@gentoo.org&gt;
Signed-off-by: Mark Brown &lt;broonie@opensource.wolfsonmicro.com&gt;
Cc: stable@kernel.org
</content>
</entry>
<entry>
<title>firmware: Sigma: Skip header during CRC generation</title>
<updated>2011-11-29T11:59:44Z</updated>
<author>
<name>Lars-Peter Clausen</name>
<email>lars@metafoo.de</email>
</author>
<published>2011-11-28T08:44:15Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=c56935bdc0a8edf50237d3b0205133a5b0adc604'/>
<id>urn:sha1:c56935bdc0a8edf50237d3b0205133a5b0adc604</id>
<content type='text'>
The firmware header is not part of the CRC, so skip it. Otherwise the firmware
will be rejected due to non-matching CRCs.

Signed-off-by: Lars-Peter Clausen &lt;lars@metafoo.de&gt;
Acked-by: Mike Frysinger &lt;vapier@gentoo.org&gt;
Signed-off-by: Mark Brown &lt;broonie@opensource.wolfsonmicro.com&gt;
Cc: stable@kernel.org
</content>
</entry>
<entry>
<title>firmware: Sigma: Prevent out of bounds memory access</title>
<updated>2011-11-29T11:53:53Z</updated>
<author>
<name>Lars-Peter Clausen</name>
<email>lars@metafoo.de</email>
</author>
<published>2011-11-28T08:44:14Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=4f718a29fe4908c2cea782f751e9805319684e2b'/>
<id>urn:sha1:4f718a29fe4908c2cea782f751e9805319684e2b</id>
<content type='text'>
The SigmaDSP firmware loader currently does not perform enough boundary size
checks when processing the firmware. As a result it is possible that a
malformed firmware can cause an out of bounds memory access.

This patch adds checks which ensure that both the action header and the payload
are completely inside the firmware data boundaries before processing them.

Signed-off-by: Lars-Peter Clausen &lt;lars@metafoo.de&gt;
Acked-by: Mike Frysinger &lt;vapier@gentoo.org&gt;
Signed-off-by: Mark Brown &lt;broonie@opensource.wolfsonmicro.com&gt;
Cc: stable@kernel.org
</content>
</entry>
<entry>
<title>Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux</title>
<updated>2011-11-29T00:37:35Z</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2011-11-29T00:37:35Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=8748dfae379573cdbea4e765b55e608a1764f918'/>
<id>urn:sha1:8748dfae379573cdbea4e765b55e608a1764f918</id>
<content type='text'>
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux:
  efivars: add missing parameter to efi_pstore_read()
</content>
</entry>
<entry>
<title>efivars: add missing parameter to efi_pstore_read()</title>
<updated>2011-11-28T23:33:32Z</updated>
<author>
<name>Christoph Fritz</name>
<email>chf.fritz@googlemail.com</email>
</author>
<published>2011-11-28T22:49:33Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=eee628da2ee3cbba6f14696278c92a464239eea6'/>
<id>urn:sha1:eee628da2ee3cbba6f14696278c92a464239eea6</id>
<content type='text'>
In the case where CONFIG_PSTORE=n, the function efi_pstore_read() doesn't
have the correct list of parameters. This patch provides a definition
of efi_pstore_read() with 'char **buf' added to fix this warning:
"drivers/firmware/efivars.c:609: warning: initialization from".

problem introduced in commit f6f8285132907757ef84ef8dae0a1244b8cde6ac

Signed-off-by: Christoph Fritz &lt;chf.fritz@googlemail.com&gt;
Signed-off-by: Tony Luck &lt;tony.luck@intel.com&gt;
</content>
</entry>
<entry>
<title>Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux</title>
<updated>2011-11-28T19:27:57Z</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2011-11-28T19:27:57Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=cb3599926e3e7b3678583195effa61a03026ab0e'/>
<id>urn:sha1:cb3599926e3e7b3678583195effa61a03026ab0e</id>
<content type='text'>
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux:
  pstore: pass allocated memory region back to caller
</content>
</entry>
<entry>
<title>pstore: pass allocated memory region back to caller</title>
<updated>2011-11-17T20:58:07Z</updated>
<author>
<name>Kees Cook</name>
<email>keescook@chromium.org</email>
</author>
<published>2011-11-17T20:58:07Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=f6f8285132907757ef84ef8dae0a1244b8cde6ac'/>
<id>urn:sha1:f6f8285132907757ef84ef8dae0a1244b8cde6ac</id>
<content type='text'>
The buf_lock cannot be held while populating the inodes, so make the backend
pass forward an allocated and filled buffer instead. This solves the following
backtrace. The effect is that "buf" is only ever used to notify the backends
that something was written to it, and shouldn't be used in the read path.

To replace the buf_lock during the read path, isolate the open/read/close
loop with a separate mutex to maintain serialized access to the backend.

Note that is is up to the pstore backend to cope if the (*write)() path is
called in the middle of the read path.

[   59.691019] BUG: sleeping function called from invalid context at .../mm/slub.c:847
[   59.691019] in_atomic(): 0, irqs_disabled(): 1, pid: 1819, name: mount
[   59.691019] Pid: 1819, comm: mount Not tainted 3.0.8 #1
[   59.691019] Call Trace:
[   59.691019]  [&lt;810252d5&gt;] __might_sleep+0xc3/0xca
[   59.691019]  [&lt;810a26e6&gt;] kmem_cache_alloc+0x32/0xf3
[   59.691019]  [&lt;810b53ac&gt;] ? __d_lookup_rcu+0x6f/0xf4
[   59.691019]  [&lt;810b68b1&gt;] alloc_inode+0x2a/0x64
[   59.691019]  [&lt;810b6903&gt;] new_inode+0x18/0x43
[   59.691019]  [&lt;81142447&gt;] pstore_get_inode.isra.1+0x11/0x98
[   59.691019]  [&lt;81142623&gt;] pstore_mkfile+0xae/0x26f
[   59.691019]  [&lt;810a2a66&gt;] ? kmem_cache_free+0x19/0xb1
[   59.691019]  [&lt;8116c821&gt;] ? ida_get_new_above+0x140/0x158
[   59.691019]  [&lt;811708ea&gt;] ? __init_rwsem+0x1e/0x2c
[   59.691019]  [&lt;810b67e8&gt;] ? inode_init_always+0x111/0x1b0
[   59.691019]  [&lt;8102127e&gt;] ? should_resched+0xd/0x27
[   59.691019]  [&lt;8137977f&gt;] ? _cond_resched+0xd/0x21
[   59.691019]  [&lt;81142abf&gt;] pstore_get_records+0x52/0xa7
[   59.691019]  [&lt;8114254b&gt;] pstore_fill_super+0x7d/0x91
[   59.691019]  [&lt;810a7ff5&gt;] mount_single+0x46/0x82
[   59.691019]  [&lt;8114231a&gt;] pstore_mount+0x15/0x17
[   59.691019]  [&lt;811424ce&gt;] ? pstore_get_inode.isra.1+0x98/0x98
[   59.691019]  [&lt;810a8199&gt;] mount_fs+0x5a/0x12d
[   59.691019]  [&lt;810b9174&gt;] ? alloc_vfsmnt+0xa4/0x14a
[   59.691019]  [&lt;810b9474&gt;] vfs_kern_mount+0x4f/0x7d
[   59.691019]  [&lt;810b9d7e&gt;] do_kern_mount+0x34/0xb2
[   59.691019]  [&lt;810bb15f&gt;] do_mount+0x5fc/0x64a
[   59.691019]  [&lt;810912fb&gt;] ? strndup_user+0x2e/0x3f
[   59.691019]  [&lt;810bb3cb&gt;] sys_mount+0x66/0x99
[   59.691019]  [&lt;8137b537&gt;] sysenter_do_call+0x12/0x26

Signed-off-by: Kees Cook &lt;keescook@chromium.org&gt;
Signed-off-by: Tony Luck &lt;tony.luck@intel.com&gt;
</content>
</entry>
</feed>
