<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux-toradex.git, branch v2.6.27.5</title>
<subtitle>Linux kernel for Apalis and Colibri modules</subtitle>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/'/>
<entry>
<title>Linux 2.6.27.5</title>
<updated>2008-11-07T17:55:34+00:00</updated>
<author>
<name>Greg Kroah-Hartman</name>
<email>gregkh@suse.de</email>
</author>
<published>2008-11-07T17:55:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=788a5f3f70e2a9c46020bdd3a195f2a866441c5d'/>
<id>788a5f3f70e2a9c46020bdd3a195f2a866441c5d</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>net: Fix recursive descent in __scm_destroy().</title>
<updated>2008-11-07T17:55:19+00:00</updated>
<author>
<name>David Miller</name>
<email>davem@davemloft.net</email>
</author>
<published>2008-11-06T08:37:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=1dbbd0bf5d15397a4e4a1ae3e3e82e0fe4f83c3a'/>
<id>1dbbd0bf5d15397a4e4a1ae3e3e82e0fe4f83c3a</id>
<content type='text'>
commit f8d570a4745835f2238a33b537218a1bb03fc671 and
3b53fbf4314594fa04544b02b2fc6e607912da18 upstream (because once wasn't
good enough...)

__scm_destroy() walks the list of file descriptors in the scm_fp_list
pointed to by the scm_cookie argument.

Those, in turn, can close sockets and invoke __scm_destroy() again.

There is nothing which limits how deeply this can occur.

The idea for how to fix this is from Linus.  Basically, we do all of
the fput()s at the top level by collecting all of the scm_fp_list
objects hit by an fput().  Inside of the initial __scm_destroy() we
keep running the list until it is empty.

Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
commit f8d570a4745835f2238a33b537218a1bb03fc671 and
3b53fbf4314594fa04544b02b2fc6e607912da18 upstream (because once wasn't
good enough...)

__scm_destroy() walks the list of file descriptors in the scm_fp_list
pointed to by the scm_cookie argument.

Those, in turn, can close sockets and invoke __scm_destroy() again.

There is nothing which limits how deeply this can occur.

The idea for how to fix this is from Linus.  Basically, we do all of
the fput()s at the top level by collecting all of the scm_fp_list
objects hit by an fput().  Inside of the initial __scm_destroy() we
keep running the list until it is empty.

Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>file caps: always start with clear bprm-&gt;caps_*</title>
<updated>2008-11-07T03:05:55+00:00</updated>
<author>
<name>Serge Hallyn</name>
<email>serue@us.ibm.com</email>
</author>
<published>2008-10-30T16:52:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=dcc5bc3d9f306cbb5e2f55d65bce1c8372b25fde'/>
<id>dcc5bc3d9f306cbb5e2f55d65bce1c8372b25fde</id>
<content type='text'>
commit 3318a386e4ca68c76e0294363d29bdc46fcad670 upstream

While Linux doesn't honor setuid on scripts.  However, it mistakenly
behaves differently for file capabilities.

This patch fixes that behavior by making sure that get_file_caps()
begins with empty bprm-&gt;caps_*.  That way when a script is loaded,
its bprm-&gt;caps_* may be filled when binfmt_misc calls prepare_binprm(),
but they will be cleared again when binfmt_elf calls prepare_binprm()
next to read the interpreter's file capabilities.

Signed-off-by: Serge Hallyn &lt;serue@us.ibm.com&gt;
Acked-by: David Howells &lt;dhowells@redhat.com&gt;
Acked-by: Andrew G. Morgan &lt;morgan@kernel.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
commit 3318a386e4ca68c76e0294363d29bdc46fcad670 upstream

While Linux doesn't honor setuid on scripts.  However, it mistakenly
behaves differently for file capabilities.

This patch fixes that behavior by making sure that get_file_caps()
begins with empty bprm-&gt;caps_*.  That way when a script is loaded,
its bprm-&gt;caps_* may be filled when binfmt_misc calls prepare_binprm(),
but they will be cleared again when binfmt_elf calls prepare_binprm()
next to read the interpreter's file capabilities.

Signed-off-by: Serge Hallyn &lt;serue@us.ibm.com&gt;
Acked-by: David Howells &lt;dhowells@redhat.com&gt;
Acked-by: Andrew G. Morgan &lt;morgan@kernel.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</pre>
</div>
</content>
</entry>
<entry>
<title>bonding: fix panic when taking bond interface down before removing module</title>
<updated>2008-11-07T03:05:55+00:00</updated>
<author>
<name>Andy Gospodarek</name>
<email>andy@greyhouse.net</email>
</author>
<published>2008-10-31T00:41:16+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=c17c98e2755a57e09f16432654f40027780cbacd'/>
<id>c17c98e2755a57e09f16432654f40027780cbacd</id>
<content type='text'>
commit ce39a800ea87c655de49af021c8b20ee323cb40d upstream.

A panic was discovered with bonding when using mode 5 or 6 and trying to
remove the slaves from the bond after the interface was taken down.
When calling 'ifconfig bond0 down' the following happens:

    bond_close()
        bond_alb_deinitialize()
            tlb_deinitialize()
		kfree(bond_info-&gt;tx_hashtbl)
                bond_info-&gt;tx_hashtbl = NULL

Unfortunately if there are still slaves in the bond, when removing the
module the following happens:

    bonding_exit()
        bond_free_all()
            bond_release_all()
                bond_alb_deinit_slave()
                    tlb_clear_slave()
                        tx_hash_table = BOND_ALB_INFO(bond).tx_hashtbl
			u32 next_index = tx_hash_table[index].next

As you might guess we panic when trying to access a few entries into the
table that no longer exists.

I experimented with several options (like moving the calls to
tlb_deinitialize somewhere else), but it really makes the most sense to
be part of the bond_close routine.  It also didn't seem logical move
tlb_clear_slave around too much, so the simplest option seems to add a
check in tlb_clear_slave to make sure we haven't already wiped the
tx_hashtbl away before searching for all the non-existent hash-table
entries that used to point to the slave as the output interface.

Signed-off-by: Andy Gospodarek &lt;andy@greyhouse.net&gt;
Signed-off-by: Jay Vosburgh &lt;fubar@us.ibm.com&gt;
Signed-off-by: Jeff Garzik &lt;jgarzik@redhat.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
commit ce39a800ea87c655de49af021c8b20ee323cb40d upstream.

A panic was discovered with bonding when using mode 5 or 6 and trying to
remove the slaves from the bond after the interface was taken down.
When calling 'ifconfig bond0 down' the following happens:

    bond_close()
        bond_alb_deinitialize()
            tlb_deinitialize()
		kfree(bond_info-&gt;tx_hashtbl)
                bond_info-&gt;tx_hashtbl = NULL

Unfortunately if there are still slaves in the bond, when removing the
module the following happens:

    bonding_exit()
        bond_free_all()
            bond_release_all()
                bond_alb_deinit_slave()
                    tlb_clear_slave()
                        tx_hash_table = BOND_ALB_INFO(bond).tx_hashtbl
			u32 next_index = tx_hash_table[index].next

As you might guess we panic when trying to access a few entries into the
table that no longer exists.

I experimented with several options (like moving the calls to
tlb_deinitialize somewhere else), but it really makes the most sense to
be part of the bond_close routine.  It also didn't seem logical move
tlb_clear_slave around too much, so the simplest option seems to add a
check in tlb_clear_slave to make sure we haven't already wiped the
tx_hashtbl away before searching for all the non-existent hash-table
entries that used to point to the slave as the output interface.

Signed-off-by: Andy Gospodarek &lt;andy@greyhouse.net&gt;
Signed-off-by: Jay Vosburgh &lt;fubar@us.ibm.com&gt;
Signed-off-by: Jeff Garzik &lt;jgarzik@redhat.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</pre>
</div>
</content>
</entry>
<entry>
<title>hfsplus: check read_mapping_page() return value</title>
<updated>2008-11-07T03:05:55+00:00</updated>
<author>
<name>Eric Sesterhenn</name>
<email>snakebyte@gmx.de</email>
</author>
<published>2008-10-16T05:04:10+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=c4305ddcd753bd84a465a2a319e7846f7783b439'/>
<id>c4305ddcd753bd84a465a2a319e7846f7783b439</id>
<content type='text'>
While testing more corrupted images with hfsplus, i came across
one which triggered the following bug:

[15840.675016] BUG: unable to handle kernel paging request at fffffffb
[15840.675016] IP: [&lt;c0116a4f&gt;] kmap+0x15/0x56
[15840.675016] *pde = 00008067 *pte = 00000000
[15840.675016] Oops: 0000 [#1] PREEMPT DEBUG_PAGEALLOC
[15840.675016] Modules linked in:
[15840.675016]
[15840.675016] Pid: 11575, comm: ln Not tainted (2.6.27-rc4-00123-gd3ee1b4-dirty #29)
[15840.675016] EIP: 0060:[&lt;c0116a4f&gt;] EFLAGS: 00010202 CPU: 0
[15840.675016] EIP is at kmap+0x15/0x56
[15840.675016] EAX: 00000246 EBX: fffffffb ECX: 00000000 EDX: cab919c0
[15840.675016] ESI: 000007dd EDI: cab0bcf4 EBP: cab0bc98 ESP: cab0bc94
[15840.675016]  DS: 007b ES: 007b FS: 0000 GS: 0033 SS: 0068
[15840.675016] Process ln (pid: 11575, ti=cab0b000 task=cab919c0 task.ti=cab0b000)
[15840.675016] Stack: 00000000 cab0bcdc c0231cfb 00000000 cab0bce0 00000800 ca9290c0 fffffffb
[15840.675016]        cab145d0 cab919c0 cab15998 22222222 22222222 22222222 00000001 cab15960
[15840.675016]        000007dd cab0bcf4 cab0bd04 c022cb3a cab0bcf4 cab15a6c ca9290c0 00000000
[15840.675016] Call Trace:
[15840.675016]  [&lt;c0231cfb&gt;] ? hfsplus_block_allocate+0x6f/0x2d3
[15840.675016]  [&lt;c022cb3a&gt;] ? hfsplus_file_extend+0xc4/0x1db
[15840.675016]  [&lt;c022ce41&gt;] ? hfsplus_get_block+0x8c/0x19d
[15840.675016]  [&lt;c06adde4&gt;] ? sub_preempt_count+0x9d/0xab
[15840.675016]  [&lt;c019ece6&gt;] ? __block_prepare_write+0x147/0x311
[15840.675016]  [&lt;c0161934&gt;] ? __grab_cache_page+0x52/0x73
[15840.675016]  [&lt;c019ef4f&gt;] ? block_write_begin+0x79/0xd5
[15840.675016]  [&lt;c022cdb5&gt;] ? hfsplus_get_block+0x0/0x19d
[15840.675016]  [&lt;c019f22a&gt;] ? cont_write_begin+0x27f/0x2af
[15840.675016]  [&lt;c022cdb5&gt;] ? hfsplus_get_block+0x0/0x19d
[15840.675016]  [&lt;c0139ebe&gt;] ? tick_program_event+0x28/0x4c
[15840.675016]  [&lt;c013bd35&gt;] ? trace_hardirqs_off+0xb/0xd
[15840.675016]  [&lt;c022b723&gt;] ? hfsplus_write_begin+0x2d/0x32
[15840.675016]  [&lt;c022cdb5&gt;] ? hfsplus_get_block+0x0/0x19d
[15840.675016]  [&lt;c0161988&gt;] ? pagecache_write_begin+0x33/0x107
[15840.675016]  [&lt;c01879e5&gt;] ? __page_symlink+0x3c/0xae
[15840.675016]  [&lt;c019ad34&gt;] ? __mark_inode_dirty+0x12f/0x137
[15840.675016]  [&lt;c0187a70&gt;] ? page_symlink+0x19/0x1e
[15840.675016]  [&lt;c022e6eb&gt;] ? hfsplus_symlink+0x41/0xa6
[15840.675016]  [&lt;c01886a9&gt;] ? vfs_symlink+0x99/0x101
[15840.675016]  [&lt;c018a2f6&gt;] ? sys_symlinkat+0x6b/0xad
[15840.675016]  [&lt;c018a348&gt;] ? sys_symlink+0x10/0x12
[15840.675016]  [&lt;c01038bd&gt;] ? sysenter_do_call+0x12/0x31
[15840.675016]  =======================
[15840.675016] Code: 00 00 75 10 83 3d 88 2f ec c0 02 75 07 89 d0 e8 12 56 05 00 5d c3 55 ba 06 00 00 00 89 e5 53 89 c3 b8 3d eb 7e c0 e8 16 74 00 00 &lt;8b&gt; 03 c1 e8 1e 69 c0 d8 02 00 00 05 b8 69 8e c0 2b 80 c4 02 00
[15840.675016] EIP: [&lt;c0116a4f&gt;] kmap+0x15/0x56 SS:ESP 0068:cab0bc94
[15840.675016] ---[ end trace 4fea40dad6b70e5f ]---

This happens because the return value of read_mapping_page() is passed on
to kmap unchecked.  The bug is triggered after the first
read_mapping_page() in hfsplus_block_allocate(), this patch fixes all
three usages in this functions but leaves the ones further down in the
file unchanged.

Signed-off-by: Eric Sesterhenn &lt;snakebyte@gmx.de&gt;
Cc: Roman Zippel &lt;zippel@linux-m68k.org&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
While testing more corrupted images with hfsplus, i came across
one which triggered the following bug:

[15840.675016] BUG: unable to handle kernel paging request at fffffffb
[15840.675016] IP: [&lt;c0116a4f&gt;] kmap+0x15/0x56
[15840.675016] *pde = 00008067 *pte = 00000000
[15840.675016] Oops: 0000 [#1] PREEMPT DEBUG_PAGEALLOC
[15840.675016] Modules linked in:
[15840.675016]
[15840.675016] Pid: 11575, comm: ln Not tainted (2.6.27-rc4-00123-gd3ee1b4-dirty #29)
[15840.675016] EIP: 0060:[&lt;c0116a4f&gt;] EFLAGS: 00010202 CPU: 0
[15840.675016] EIP is at kmap+0x15/0x56
[15840.675016] EAX: 00000246 EBX: fffffffb ECX: 00000000 EDX: cab919c0
[15840.675016] ESI: 000007dd EDI: cab0bcf4 EBP: cab0bc98 ESP: cab0bc94
[15840.675016]  DS: 007b ES: 007b FS: 0000 GS: 0033 SS: 0068
[15840.675016] Process ln (pid: 11575, ti=cab0b000 task=cab919c0 task.ti=cab0b000)
[15840.675016] Stack: 00000000 cab0bcdc c0231cfb 00000000 cab0bce0 00000800 ca9290c0 fffffffb
[15840.675016]        cab145d0 cab919c0 cab15998 22222222 22222222 22222222 00000001 cab15960
[15840.675016]        000007dd cab0bcf4 cab0bd04 c022cb3a cab0bcf4 cab15a6c ca9290c0 00000000
[15840.675016] Call Trace:
[15840.675016]  [&lt;c0231cfb&gt;] ? hfsplus_block_allocate+0x6f/0x2d3
[15840.675016]  [&lt;c022cb3a&gt;] ? hfsplus_file_extend+0xc4/0x1db
[15840.675016]  [&lt;c022ce41&gt;] ? hfsplus_get_block+0x8c/0x19d
[15840.675016]  [&lt;c06adde4&gt;] ? sub_preempt_count+0x9d/0xab
[15840.675016]  [&lt;c019ece6&gt;] ? __block_prepare_write+0x147/0x311
[15840.675016]  [&lt;c0161934&gt;] ? __grab_cache_page+0x52/0x73
[15840.675016]  [&lt;c019ef4f&gt;] ? block_write_begin+0x79/0xd5
[15840.675016]  [&lt;c022cdb5&gt;] ? hfsplus_get_block+0x0/0x19d
[15840.675016]  [&lt;c019f22a&gt;] ? cont_write_begin+0x27f/0x2af
[15840.675016]  [&lt;c022cdb5&gt;] ? hfsplus_get_block+0x0/0x19d
[15840.675016]  [&lt;c0139ebe&gt;] ? tick_program_event+0x28/0x4c
[15840.675016]  [&lt;c013bd35&gt;] ? trace_hardirqs_off+0xb/0xd
[15840.675016]  [&lt;c022b723&gt;] ? hfsplus_write_begin+0x2d/0x32
[15840.675016]  [&lt;c022cdb5&gt;] ? hfsplus_get_block+0x0/0x19d
[15840.675016]  [&lt;c0161988&gt;] ? pagecache_write_begin+0x33/0x107
[15840.675016]  [&lt;c01879e5&gt;] ? __page_symlink+0x3c/0xae
[15840.675016]  [&lt;c019ad34&gt;] ? __mark_inode_dirty+0x12f/0x137
[15840.675016]  [&lt;c0187a70&gt;] ? page_symlink+0x19/0x1e
[15840.675016]  [&lt;c022e6eb&gt;] ? hfsplus_symlink+0x41/0xa6
[15840.675016]  [&lt;c01886a9&gt;] ? vfs_symlink+0x99/0x101
[15840.675016]  [&lt;c018a2f6&gt;] ? sys_symlinkat+0x6b/0xad
[15840.675016]  [&lt;c018a348&gt;] ? sys_symlink+0x10/0x12
[15840.675016]  [&lt;c01038bd&gt;] ? sysenter_do_call+0x12/0x31
[15840.675016]  =======================
[15840.675016] Code: 00 00 75 10 83 3d 88 2f ec c0 02 75 07 89 d0 e8 12 56 05 00 5d c3 55 ba 06 00 00 00 89 e5 53 89 c3 b8 3d eb 7e c0 e8 16 74 00 00 &lt;8b&gt; 03 c1 e8 1e 69 c0 d8 02 00 00 05 b8 69 8e c0 2b 80 c4 02 00
[15840.675016] EIP: [&lt;c0116a4f&gt;] kmap+0x15/0x56 SS:ESP 0068:cab0bc94
[15840.675016] ---[ end trace 4fea40dad6b70e5f ]---

This happens because the return value of read_mapping_page() is passed on
to kmap unchecked.  The bug is triggered after the first
read_mapping_page() in hfsplus_block_allocate(), this patch fixes all
three usages in this functions but leaves the ones further down in the
file unchanged.

Signed-off-by: Eric Sesterhenn &lt;snakebyte@gmx.de&gt;
Cc: Roman Zippel &lt;zippel@linux-m68k.org&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</pre>
</div>
</content>
</entry>
<entry>
<title>hfsplus: fix Buffer overflow with a corrupted image</title>
<updated>2008-11-07T03:05:55+00:00</updated>
<author>
<name>Eric Sesterhenn</name>
<email>snakebyte@gmx.de</email>
</author>
<published>2008-10-16T05:04:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=e04d4d12ec20c70485c3410219704dd1ffb0ec15'/>
<id>e04d4d12ec20c70485c3410219704dd1ffb0ec15</id>
<content type='text'>
commit efc7ffcb4237f8cb9938909041c4ed38f6e1bf40 upstream

When an hfsplus image gets corrupted it might happen that the catalog
namelength field gets b0rked.  If we mount such an image the memcpy() in
hfsplus_cat_build_key_uni() writes more than the 255 that fit in the name
field.  Depending on the size of the overwritten data, we either only get
memory corruption or also trigger an oops like this:

[  221.628020] BUG: unable to handle kernel paging request at c82b0000
[  221.629066] IP: [&lt;c022d4b1&gt;] hfsplus_find_cat+0x10d/0x151
[  221.629066] *pde = 0ea29163 *pte = 082b0160
[  221.629066] Oops: 0002 [#1] PREEMPT DEBUG_PAGEALLOC
[  221.629066] Modules linked in:
[  221.629066]
[  221.629066] Pid: 4845, comm: mount Not tainted (2.6.27-rc4-00123-gd3ee1b4-dirty #28)
[  221.629066] EIP: 0060:[&lt;c022d4b1&gt;] EFLAGS: 00010206 CPU: 0
[  221.629066] EIP is at hfsplus_find_cat+0x10d/0x151
[  221.629066] EAX: 00000029 EBX: 00016210 ECX: 000042c2 EDX: 00000002
[  221.629066] ESI: c82d70ca EDI: c82b0000 EBP: c82d1bcc ESP: c82d199c
[  221.629066]  DS: 007b ES: 007b FS: 0000 GS: 0033 SS: 0068
[  221.629066] Process mount (pid: 4845, ti=c82d1000 task=c8224060 task.ti=c82d1000)
[  221.629066] Stack: c080b3c4 c82aa8f8 c82d19c2 00016210 c080b3be c82d1bd4 c82aa8f0 00000300
[  221.629066]        01000000 750008b1 74006e00 74006900 65006c00 c82d6400 c013bd35 c8224060
[  221.629066]        00000036 00000046 c82d19f0 00000082 c8224548 c8224060 00000036 c0d653cc
[  221.629066] Call Trace:
[  221.629066]  [&lt;c013bd35&gt;] ? trace_hardirqs_off+0xb/0xd
[  221.629066]  [&lt;c013bca3&gt;] ? trace_hardirqs_off_caller+0x14/0x9b
[  221.629066]  [&lt;c013bd35&gt;] ? trace_hardirqs_off+0xb/0xd
[  221.629066]  [&lt;c013bca3&gt;] ? trace_hardirqs_off_caller+0x14/0x9b
[  221.629066]  [&lt;c013bd35&gt;] ? trace_hardirqs_off+0xb/0xd
[  221.629066]  [&lt;c0107aa3&gt;] ? native_sched_clock+0x82/0x96
[  221.629066]  [&lt;c01302d2&gt;] ? __kernel_text_address+0x1b/0x27
[  221.629066]  [&lt;c010487a&gt;] ? dump_trace+0xca/0xd6
[  221.629066]  [&lt;c0109e32&gt;] ? save_stack_address+0x0/0x2c
[  221.629066]  [&lt;c0109eaf&gt;] ? save_stack_trace+0x1c/0x3a
[  221.629066]  [&lt;c013b571&gt;] ? save_trace+0x37/0x8d
[  221.629066]  [&lt;c013b62e&gt;] ? add_lock_to_list+0x67/0x8d
[  221.629066]  [&lt;c013ea1c&gt;] ? validate_chain+0x8a4/0x9f4
[  221.629066]  [&lt;c013553d&gt;] ? down+0xc/0x2f
[  221.629066]  [&lt;c013f1f6&gt;] ? __lock_acquire+0x68a/0x6e0
[  221.629066]  [&lt;c013bd35&gt;] ? trace_hardirqs_off+0xb/0xd
[  221.629066]  [&lt;c013bca3&gt;] ? trace_hardirqs_off_caller+0x14/0x9b
[  221.629066]  [&lt;c013bd35&gt;] ? trace_hardirqs_off+0xb/0xd
[  221.629066]  [&lt;c0107aa3&gt;] ? native_sched_clock+0x82/0x96
[  221.629066]  [&lt;c013da5d&gt;] ? mark_held_locks+0x43/0x5a
[  221.629066]  [&lt;c013dc3a&gt;] ? trace_hardirqs_on+0xb/0xd
[  221.629066]  [&lt;c013dbf4&gt;] ? trace_hardirqs_on_caller+0xf4/0x12f
[  221.629066]  [&lt;c06abec8&gt;] ? _spin_unlock_irqrestore+0x42/0x58
[  221.629066]  [&lt;c013555c&gt;] ? down+0x2b/0x2f
[  221.629066]  [&lt;c022aa68&gt;] ? hfsplus_iget+0xa0/0x154
[  221.629066]  [&lt;c022b0b9&gt;] ? hfsplus_fill_super+0x280/0x447
[  221.629066]  [&lt;c0107aa3&gt;] ? native_sched_clock+0x82/0x96
[  221.629066]  [&lt;c013bca3&gt;] ? trace_hardirqs_off_caller+0x14/0x9b
[  221.629066]  [&lt;c013bca3&gt;] ? trace_hardirqs_off_caller+0x14/0x9b
[  221.629066]  [&lt;c013f1f6&gt;] ? __lock_acquire+0x68a/0x6e0
[  221.629066]  [&lt;c041c9e4&gt;] ? string+0x2b/0x74
[  221.629066]  [&lt;c041cd16&gt;] ? vsnprintf+0x2e9/0x512
[  221.629066]  [&lt;c010487a&gt;] ? dump_trace+0xca/0xd6
[  221.629066]  [&lt;c0109eaf&gt;] ? save_stack_trace+0x1c/0x3a
[  221.629066]  [&lt;c0109eaf&gt;] ? save_stack_trace+0x1c/0x3a
[  221.629066]  [&lt;c013b571&gt;] ? save_trace+0x37/0x8d
[  221.629066]  [&lt;c013b62e&gt;] ? add_lock_to_list+0x67/0x8d
[  221.629066]  [&lt;c013ea1c&gt;] ? validate_chain+0x8a4/0x9f4
[  221.629066]  [&lt;c01354d3&gt;] ? up+0xc/0x2f
[  221.629066]  [&lt;c013f1f6&gt;] ? __lock_acquire+0x68a/0x6e0
[  221.629066]  [&lt;c013bd35&gt;] ? trace_hardirqs_off+0xb/0xd
[  221.629066]  [&lt;c013bca3&gt;] ? trace_hardirqs_off_caller+0x14/0x9b
[  221.629066]  [&lt;c013bd35&gt;] ? trace_hardirqs_off+0xb/0xd
[  221.629066]  [&lt;c0107aa3&gt;] ? native_sched_clock+0x82/0x96
[  221.629066]  [&lt;c041cfb7&gt;] ? snprintf+0x1b/0x1d
[  221.629066]  [&lt;c01ba466&gt;] ? disk_name+0x25/0x67
[  221.629066]  [&lt;c0183960&gt;] ? get_sb_bdev+0xcd/0x10b
[  221.629066]  [&lt;c016ad92&gt;] ? kstrdup+0x2a/0x4c
[  221.629066]  [&lt;c022a7b3&gt;] ? hfsplus_get_sb+0x13/0x15
[  221.629066]  [&lt;c022ae39&gt;] ? hfsplus_fill_super+0x0/0x447
[  221.629066]  [&lt;c0183583&gt;] ? vfs_kern_mount+0x3b/0x76
[  221.629066]  [&lt;c0183602&gt;] ? do_kern_mount+0x32/0xba
[  221.629066]  [&lt;c01960d4&gt;] ? do_new_mount+0x46/0x74
[  221.629066]  [&lt;c0196277&gt;] ? do_mount+0x175/0x193
[  221.629066]  [&lt;c013dbf4&gt;] ? trace_hardirqs_on_caller+0xf4/0x12f
[  221.629066]  [&lt;c01663b2&gt;] ? __get_free_pages+0x1e/0x24
[  221.629066]  [&lt;c06ac07b&gt;] ? lock_kernel+0x19/0x8c
[  221.629066]  [&lt;c01962e6&gt;] ? sys_mount+0x51/0x9b
[  221.629066]  [&lt;c01962f9&gt;] ? sys_mount+0x64/0x9b
[  221.629066]  [&lt;c01038bd&gt;] ? sysenter_do_call+0x12/0x31
[  221.629066]  =======================
[  221.629066] Code: 89 c2 c1 e2 08 c1 e8 08 09 c2 8b 85 e8 fd ff ff 66 89 50 06 89 c7 53 83 c7 08 56 57 68 c4 b3 80 c0 e8 8c 5c ef ff 89 d9 c1 e9 02 &lt;f3&gt; a5 89 d9 83 e1 03 74 02 f3 a4 83 c3 06 8b 95 e8 fd ff ff 0f
[  221.629066] EIP: [&lt;c022d4b1&gt;] hfsplus_find_cat+0x10d/0x151 SS:ESP 0068:c82d199c
[  221.629066] ---[ end trace e417a1d67f0d0066 ]---

Since hfsplus_cat_build_key_uni() returns void and only has one callsite,
the check is performed at the callsite.

Signed-off-by: Eric Sesterhenn &lt;snakebyte@gmx.de&gt;
Reviewed-by: Pekka Enberg &lt;penberg@cs.helsinki.fi&gt;
Cc: Roman Zippel &lt;zippel@linux-m68k.org&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
commit efc7ffcb4237f8cb9938909041c4ed38f6e1bf40 upstream

When an hfsplus image gets corrupted it might happen that the catalog
namelength field gets b0rked.  If we mount such an image the memcpy() in
hfsplus_cat_build_key_uni() writes more than the 255 that fit in the name
field.  Depending on the size of the overwritten data, we either only get
memory corruption or also trigger an oops like this:

[  221.628020] BUG: unable to handle kernel paging request at c82b0000
[  221.629066] IP: [&lt;c022d4b1&gt;] hfsplus_find_cat+0x10d/0x151
[  221.629066] *pde = 0ea29163 *pte = 082b0160
[  221.629066] Oops: 0002 [#1] PREEMPT DEBUG_PAGEALLOC
[  221.629066] Modules linked in:
[  221.629066]
[  221.629066] Pid: 4845, comm: mount Not tainted (2.6.27-rc4-00123-gd3ee1b4-dirty #28)
[  221.629066] EIP: 0060:[&lt;c022d4b1&gt;] EFLAGS: 00010206 CPU: 0
[  221.629066] EIP is at hfsplus_find_cat+0x10d/0x151
[  221.629066] EAX: 00000029 EBX: 00016210 ECX: 000042c2 EDX: 00000002
[  221.629066] ESI: c82d70ca EDI: c82b0000 EBP: c82d1bcc ESP: c82d199c
[  221.629066]  DS: 007b ES: 007b FS: 0000 GS: 0033 SS: 0068
[  221.629066] Process mount (pid: 4845, ti=c82d1000 task=c8224060 task.ti=c82d1000)
[  221.629066] Stack: c080b3c4 c82aa8f8 c82d19c2 00016210 c080b3be c82d1bd4 c82aa8f0 00000300
[  221.629066]        01000000 750008b1 74006e00 74006900 65006c00 c82d6400 c013bd35 c8224060
[  221.629066]        00000036 00000046 c82d19f0 00000082 c8224548 c8224060 00000036 c0d653cc
[  221.629066] Call Trace:
[  221.629066]  [&lt;c013bd35&gt;] ? trace_hardirqs_off+0xb/0xd
[  221.629066]  [&lt;c013bca3&gt;] ? trace_hardirqs_off_caller+0x14/0x9b
[  221.629066]  [&lt;c013bd35&gt;] ? trace_hardirqs_off+0xb/0xd
[  221.629066]  [&lt;c013bca3&gt;] ? trace_hardirqs_off_caller+0x14/0x9b
[  221.629066]  [&lt;c013bd35&gt;] ? trace_hardirqs_off+0xb/0xd
[  221.629066]  [&lt;c0107aa3&gt;] ? native_sched_clock+0x82/0x96
[  221.629066]  [&lt;c01302d2&gt;] ? __kernel_text_address+0x1b/0x27
[  221.629066]  [&lt;c010487a&gt;] ? dump_trace+0xca/0xd6
[  221.629066]  [&lt;c0109e32&gt;] ? save_stack_address+0x0/0x2c
[  221.629066]  [&lt;c0109eaf&gt;] ? save_stack_trace+0x1c/0x3a
[  221.629066]  [&lt;c013b571&gt;] ? save_trace+0x37/0x8d
[  221.629066]  [&lt;c013b62e&gt;] ? add_lock_to_list+0x67/0x8d
[  221.629066]  [&lt;c013ea1c&gt;] ? validate_chain+0x8a4/0x9f4
[  221.629066]  [&lt;c013553d&gt;] ? down+0xc/0x2f
[  221.629066]  [&lt;c013f1f6&gt;] ? __lock_acquire+0x68a/0x6e0
[  221.629066]  [&lt;c013bd35&gt;] ? trace_hardirqs_off+0xb/0xd
[  221.629066]  [&lt;c013bca3&gt;] ? trace_hardirqs_off_caller+0x14/0x9b
[  221.629066]  [&lt;c013bd35&gt;] ? trace_hardirqs_off+0xb/0xd
[  221.629066]  [&lt;c0107aa3&gt;] ? native_sched_clock+0x82/0x96
[  221.629066]  [&lt;c013da5d&gt;] ? mark_held_locks+0x43/0x5a
[  221.629066]  [&lt;c013dc3a&gt;] ? trace_hardirqs_on+0xb/0xd
[  221.629066]  [&lt;c013dbf4&gt;] ? trace_hardirqs_on_caller+0xf4/0x12f
[  221.629066]  [&lt;c06abec8&gt;] ? _spin_unlock_irqrestore+0x42/0x58
[  221.629066]  [&lt;c013555c&gt;] ? down+0x2b/0x2f
[  221.629066]  [&lt;c022aa68&gt;] ? hfsplus_iget+0xa0/0x154
[  221.629066]  [&lt;c022b0b9&gt;] ? hfsplus_fill_super+0x280/0x447
[  221.629066]  [&lt;c0107aa3&gt;] ? native_sched_clock+0x82/0x96
[  221.629066]  [&lt;c013bca3&gt;] ? trace_hardirqs_off_caller+0x14/0x9b
[  221.629066]  [&lt;c013bca3&gt;] ? trace_hardirqs_off_caller+0x14/0x9b
[  221.629066]  [&lt;c013f1f6&gt;] ? __lock_acquire+0x68a/0x6e0
[  221.629066]  [&lt;c041c9e4&gt;] ? string+0x2b/0x74
[  221.629066]  [&lt;c041cd16&gt;] ? vsnprintf+0x2e9/0x512
[  221.629066]  [&lt;c010487a&gt;] ? dump_trace+0xca/0xd6
[  221.629066]  [&lt;c0109eaf&gt;] ? save_stack_trace+0x1c/0x3a
[  221.629066]  [&lt;c0109eaf&gt;] ? save_stack_trace+0x1c/0x3a
[  221.629066]  [&lt;c013b571&gt;] ? save_trace+0x37/0x8d
[  221.629066]  [&lt;c013b62e&gt;] ? add_lock_to_list+0x67/0x8d
[  221.629066]  [&lt;c013ea1c&gt;] ? validate_chain+0x8a4/0x9f4
[  221.629066]  [&lt;c01354d3&gt;] ? up+0xc/0x2f
[  221.629066]  [&lt;c013f1f6&gt;] ? __lock_acquire+0x68a/0x6e0
[  221.629066]  [&lt;c013bd35&gt;] ? trace_hardirqs_off+0xb/0xd
[  221.629066]  [&lt;c013bca3&gt;] ? trace_hardirqs_off_caller+0x14/0x9b
[  221.629066]  [&lt;c013bd35&gt;] ? trace_hardirqs_off+0xb/0xd
[  221.629066]  [&lt;c0107aa3&gt;] ? native_sched_clock+0x82/0x96
[  221.629066]  [&lt;c041cfb7&gt;] ? snprintf+0x1b/0x1d
[  221.629066]  [&lt;c01ba466&gt;] ? disk_name+0x25/0x67
[  221.629066]  [&lt;c0183960&gt;] ? get_sb_bdev+0xcd/0x10b
[  221.629066]  [&lt;c016ad92&gt;] ? kstrdup+0x2a/0x4c
[  221.629066]  [&lt;c022a7b3&gt;] ? hfsplus_get_sb+0x13/0x15
[  221.629066]  [&lt;c022ae39&gt;] ? hfsplus_fill_super+0x0/0x447
[  221.629066]  [&lt;c0183583&gt;] ? vfs_kern_mount+0x3b/0x76
[  221.629066]  [&lt;c0183602&gt;] ? do_kern_mount+0x32/0xba
[  221.629066]  [&lt;c01960d4&gt;] ? do_new_mount+0x46/0x74
[  221.629066]  [&lt;c0196277&gt;] ? do_mount+0x175/0x193
[  221.629066]  [&lt;c013dbf4&gt;] ? trace_hardirqs_on_caller+0xf4/0x12f
[  221.629066]  [&lt;c01663b2&gt;] ? __get_free_pages+0x1e/0x24
[  221.629066]  [&lt;c06ac07b&gt;] ? lock_kernel+0x19/0x8c
[  221.629066]  [&lt;c01962e6&gt;] ? sys_mount+0x51/0x9b
[  221.629066]  [&lt;c01962f9&gt;] ? sys_mount+0x64/0x9b
[  221.629066]  [&lt;c01038bd&gt;] ? sysenter_do_call+0x12/0x31
[  221.629066]  =======================
[  221.629066] Code: 89 c2 c1 e2 08 c1 e8 08 09 c2 8b 85 e8 fd ff ff 66 89 50 06 89 c7 53 83 c7 08 56 57 68 c4 b3 80 c0 e8 8c 5c ef ff 89 d9 c1 e9 02 &lt;f3&gt; a5 89 d9 83 e1 03 74 02 f3 a4 83 c3 06 8b 95 e8 fd ff ff 0f
[  221.629066] EIP: [&lt;c022d4b1&gt;] hfsplus_find_cat+0x10d/0x151 SS:ESP 0068:c82d199c
[  221.629066] ---[ end trace e417a1d67f0d0066 ]---

Since hfsplus_cat_build_key_uni() returns void and only has one callsite,
the check is performed at the callsite.

Signed-off-by: Eric Sesterhenn &lt;snakebyte@gmx.de&gt;
Reviewed-by: Pekka Enberg &lt;penberg@cs.helsinki.fi&gt;
Cc: Roman Zippel &lt;zippel@linux-m68k.org&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</pre>
</div>
</content>
</entry>
<entry>
<title>Input: atkbd - expand Latitude's force release quirk to other Dells</title>
<updated>2008-11-07T03:05:54+00:00</updated>
<author>
<name>Matthew Garrett</name>
<email>mjg59@srcf.ucam.org</email>
</author>
<published>2008-10-31T21:29:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=f969963e64dae0d3eb774fe3a1abc15439b34a54'/>
<id>f969963e64dae0d3eb774fe3a1abc15439b34a54</id>
<content type='text'>
commit 61579ba83934d397a4fa2bb7372de9ae112587d5 upstream.

Input: atkbd - expand Latitude's force release quirk to other Dells

Dell laptops fail to send key up events for several of their special
keys. There's an existing quirk in the kernel to handle this, but it's
limited to the Latitude range. This patch extends it to cover all
portable Dells.

Signed-off-by: Matthew Garrett &lt;mjg@redhat.com&gt;
Signed-off-by: Dmitry Torokhov &lt;dtor@mail.ru&gt;
Cc: Chuck Ebbert &lt;cebbert@redhat.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
commit 61579ba83934d397a4fa2bb7372de9ae112587d5 upstream.

Input: atkbd - expand Latitude's force release quirk to other Dells

Dell laptops fail to send key up events for several of their special
keys. There's an existing quirk in the kernel to handle this, but it's
limited to the Latitude range. This patch extends it to cover all
portable Dells.

Signed-off-by: Matthew Garrett &lt;mjg@redhat.com&gt;
Signed-off-by: Dmitry Torokhov &lt;dtor@mail.ru&gt;
Cc: Chuck Ebbert &lt;cebbert@redhat.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</pre>
</div>
</content>
</entry>
<entry>
<title>ACPI: Clear WAK_STS on resume</title>
<updated>2008-11-07T03:05:54+00:00</updated>
<author>
<name>Matthew Garrett</name>
<email>mjg59@srcf.ucam.org</email>
</author>
<published>2008-10-31T21:27:16+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=2880654941dee9ffdd06abef2dfecef7f0a066ed'/>
<id>2880654941dee9ffdd06abef2dfecef7f0a066ed</id>
<content type='text'>
commit a68823ee5285e65b51ceb96f8b13a5b4f99a6888 upstream.

ACPI: Clear WAK_STS on resume

The leading other brand OS appears to clear the WAK_STS flag on resume.
When rebooted, certain BIOSes assume that the system is actually
resuming if it's still set and so fail to reboot correctly. Make sure
that it's cleared at resume time.

Comment clarified as suggested by Bob Moore

http://bugzilla.kernel.org/show_bug.cgi?id=11634

Signed-off-by: Matthew Garrett &lt;mjg@redhat.com&gt;
Signed-off-by: Andi Kleen &lt;ak@linux.intel.com&gt;
Tested-by: Christian Borntraeger &lt;borntraeger@de.ibm.com&gt;
Tested-by: Romano Giannetti &lt;romano.giannetti@gmail.com&gt;
Signed-off-by: Len Brown &lt;len.brown@intel.com&gt;
Cc: Chuck Ebbert &lt;cebbert@redhat.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
commit a68823ee5285e65b51ceb96f8b13a5b4f99a6888 upstream.

ACPI: Clear WAK_STS on resume

The leading other brand OS appears to clear the WAK_STS flag on resume.
When rebooted, certain BIOSes assume that the system is actually
resuming if it's still set and so fail to reboot correctly. Make sure
that it's cleared at resume time.

Comment clarified as suggested by Bob Moore

http://bugzilla.kernel.org/show_bug.cgi?id=11634

Signed-off-by: Matthew Garrett &lt;mjg@redhat.com&gt;
Signed-off-by: Andi Kleen &lt;ak@linux.intel.com&gt;
Tested-by: Christian Borntraeger &lt;borntraeger@de.ibm.com&gt;
Tested-by: Romano Giannetti &lt;romano.giannetti@gmail.com&gt;
Signed-off-by: Len Brown &lt;len.brown@intel.com&gt;
Cc: Chuck Ebbert &lt;cebbert@redhat.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</pre>
</div>
</content>
</entry>
<entry>
<title>ACPI: Ingore the RESET_REG_SUP bit when using ACPI reset mechanism</title>
<updated>2008-11-07T03:05:54+00:00</updated>
<author>
<name>Zhao Yakui</name>
<email>yakui.zhao@intel.com</email>
</author>
<published>2008-10-31T21:25:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=1eac89c9bd3a640fb8ddc1d555f25435622f8275'/>
<id>1eac89c9bd3a640fb8ddc1d555f25435622f8275</id>
<content type='text'>
commit 8fd145917fb62368a9b80db59562c20576238f5a upstream

ACPI: Ingore the RESET_REG_SUP bit when using ACPI reset mechanism

According to ACPI 3.0, FADT.flags.RESET_REG_SUP indicates
whether the ACPI reboot mechanism is supported.

However, some boxes have this bit clear, have a valid
ACPI_RESET_REG &amp; RESET_VALUE, and ACPI reboot is the only
mechanism that works for them after S3.

This suggests that other operating systems may not be checking
the RESET_REG_SUP bit, and are using other means to decide
whether to use the ACPI reboot mechanism or not.

Here we stop checking RESET_REG_SUP.
Instead, When acpi reboot is requested,
only the reset_register is checked. If the following
conditions are met, it indicates that the reset register is supported.
	a. reset_register is not zero
	b. the access width is eight
	c. the bit_offset is zero

http://bugzilla.kernel.org/show_bug.cgi?id=7299
http://bugzilla.kernel.org/show_bug.cgi?id=1148

Signed-off-by: Zhao Yakui &lt;yakui.zhao@intel.com&gt;
Signed-off-by: Len Brown &lt;len.brown@intel.com&gt;
Cc: Chuck Ebbert &lt;cebbert@redhat.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
commit 8fd145917fb62368a9b80db59562c20576238f5a upstream

ACPI: Ingore the RESET_REG_SUP bit when using ACPI reset mechanism

According to ACPI 3.0, FADT.flags.RESET_REG_SUP indicates
whether the ACPI reboot mechanism is supported.

However, some boxes have this bit clear, have a valid
ACPI_RESET_REG &amp; RESET_VALUE, and ACPI reboot is the only
mechanism that works for them after S3.

This suggests that other operating systems may not be checking
the RESET_REG_SUP bit, and are using other means to decide
whether to use the ACPI reboot mechanism or not.

Here we stop checking RESET_REG_SUP.
Instead, When acpi reboot is requested,
only the reset_register is checked. If the following
conditions are met, it indicates that the reset register is supported.
	a. reset_register is not zero
	b. the access width is eight
	c. the bit_offset is zero

http://bugzilla.kernel.org/show_bug.cgi?id=7299
http://bugzilla.kernel.org/show_bug.cgi?id=1148

Signed-off-by: Zhao Yakui &lt;yakui.zhao@intel.com&gt;
Signed-off-by: Len Brown &lt;len.brown@intel.com&gt;
Cc: Chuck Ebbert &lt;cebbert@redhat.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</pre>
</div>
</content>
</entry>
<entry>
<title>libata: Fix LBA48 on pata_it821x RAID volumes.</title>
<updated>2008-11-07T03:05:54+00:00</updated>
<author>
<name>Ondrej Zary</name>
<email>linux@rainbow-software.org</email>
</author>
<published>2008-10-31T21:16:43+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=2992d0091900fc5d03e23f564f1ccf2edf12e8ba'/>
<id>2992d0091900fc5d03e23f564f1ccf2edf12e8ba</id>
<content type='text'>
commit 054e5f616b5becdc096b793407dc33fe379749ac upstream

libata: Fix LBA48 on pata_it821x RAID volumes.

[http://lkml.org/lkml/2008/10/18/82]

Signed-off-by: Ondrej Zary &lt;linux@rainbow-software.org&gt;
Acked-by: Alan Cox &lt;alan@redhat.com&gt;
Signed-off-by: Jeff Garzik &lt;jgarzik@redhat.com&gt;
Cc: Chuck Ebbert &lt;cebbert@redhat.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
commit 054e5f616b5becdc096b793407dc33fe379749ac upstream

libata: Fix LBA48 on pata_it821x RAID volumes.

[http://lkml.org/lkml/2008/10/18/82]

Signed-off-by: Ondrej Zary &lt;linux@rainbow-software.org&gt;
Acked-by: Alan Cox &lt;alan@redhat.com&gt;
Signed-off-by: Jeff Garzik &lt;jgarzik@redhat.com&gt;
Cc: Chuck Ebbert &lt;cebbert@redhat.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</pre>
</div>
</content>
</entry>
</feed>
