mirror of
https://github.com/FEX-Emu/linux.git
synced 2024-12-16 14:02:10 +00:00
[PATCH] zd1211rw: Fixed endianess issue with length info tag detection
Discovered a problem while accessing www.python.org on my PPC32. The problem was pretty consistent for all sticks. The reason was that while testing for the length info tag, I ignored the endianess of the host system. Please recognize that converting the constant to little endian, we create faster code. Signed-off-by: Ulrich Kunitz <kune@deine-taler.de> Signed-off-by: John W. Linville <linville@tuxdriver.com>
This commit is contained in:
parent
b1162b639c
commit
b269825b9b
@ -544,11 +544,11 @@ static void handle_rx_packet(struct zd_usb *usb, const u8 *buffer,
|
||||
* be padded. Unaligned access might also happen if the length_info
|
||||
* structure is not present.
|
||||
*/
|
||||
if (get_unaligned(&length_info->tag) == RX_LENGTH_INFO_TAG) {
|
||||
if (get_unaligned(&length_info->tag) == cpu_to_le16(RX_LENGTH_INFO_TAG))
|
||||
{
|
||||
unsigned int l, k, n;
|
||||
for (i = 0, l = 0;; i++) {
|
||||
k = le16_to_cpu(get_unaligned(
|
||||
&length_info->length[i]));
|
||||
k = le16_to_cpu(get_unaligned(&length_info->length[i]));
|
||||
n = l+k;
|
||||
if (n > length)
|
||||
return;
|
||||
|
Loading…
Reference in New Issue
Block a user