2013-03-11 20:38:30

by Larry Finger

[permalink] [raw]
Subject: [PATCH] ssb: pci: Fix flipping of MAC address

Since commit e565275 entitled "ssb: pci: Standardize a function to get mac
address", the SPROM readout of the MAC has had the values flipped so that
00:11:22:33:44:55 became 11:00:33:22:55:44. The fix has been tested on both
little- and big-endian architectures.

Reported-by: Rafał Miłecki <[email protected]>
Signed-off-by: Larry Finger <[email protected]>
---

John,

This bug was introduced in 3.9, and should be fixed there.

Thanks,

Larry
---

Index: wireless-testing-new/drivers/ssb/pci.c
===================================================================
--- wireless-testing-new.orig/drivers/ssb/pci.c
+++ wireless-testing-new/drivers/ssb/pci.c
@@ -234,8 +234,8 @@ static void sprom_get_mac(char *mac, con
{
int i;
for (i = 0; i < 3; i++) {
- *mac++ = in[i];
*mac++ = in[i] >> 8;
+ *mac++ = in[i];
}
}



2013-03-13 19:14:30

by Larry Finger

[permalink] [raw]
Subject: Re: [PATCH] ssb: pci: Fix flipping of MAC address

On 03/13/2013 01:18 PM, John W. Linville wrote:
> On Mon, Mar 11, 2013 at 03:38:26PM -0500, Larry Finger wrote:
>> Since commit e565275 entitled "ssb: pci: Standardize a function to get mac
>> address", the SPROM readout of the MAC has had the values flipped so that
>> 00:11:22:33:44:55 became 11:00:33:22:55:44. The fix has been tested on both
>> little- and big-endian architectures.
>>
>> Reported-by: Rafał Miłecki <[email protected]>
>> Signed-off-by: Larry Finger <[email protected]>
>> ---
>>
>> John,
>>
>> This bug was introduced in 3.9, and should be fixed there.
>>
>> Thanks,
>>
>> Larry
>> ---
>>
>> Index: wireless-testing-new/drivers/ssb/pci.c
>> ===================================================================
>> --- wireless-testing-new.orig/drivers/ssb/pci.c
>> +++ wireless-testing-new/drivers/ssb/pci.c
>> @@ -234,8 +234,8 @@ static void sprom_get_mac(char *mac, con
>> {
>> int i;
>> for (i = 0; i < 3; i++) {
>> - *mac++ = in[i];
>> *mac++ = in[i] >> 8;
>> + *mac++ = in[i];
>> }
>> }
>
> Actually, FWIW it seems to have been introduced in commit
> e5652756ff36ed9e1283121f788e6a17117efcab, which is slated for 3.10.
> I'm happy to merge it in wireless-next.

After further checking, I agree that it is not in 3.9. As long as the fix is
merged before 3.10, all will be OK.

Sorry for the confusion.

Larry



2013-03-13 18:30:34

by John W. Linville

[permalink] [raw]
Subject: Re: [PATCH] ssb: pci: Fix flipping of MAC address

On Mon, Mar 11, 2013 at 03:38:26PM -0500, Larry Finger wrote:
> Since commit e565275 entitled "ssb: pci: Standardize a function to get mac
> address", the SPROM readout of the MAC has had the values flipped so that
> 00:11:22:33:44:55 became 11:00:33:22:55:44. The fix has been tested on both
> little- and big-endian architectures.
>
> Reported-by: Rafał Miłecki <[email protected]>
> Signed-off-by: Larry Finger <[email protected]>
> ---
>
> John,
>
> This bug was introduced in 3.9, and should be fixed there.
>
> Thanks,
>
> Larry
> ---
>
> Index: wireless-testing-new/drivers/ssb/pci.c
> ===================================================================
> --- wireless-testing-new.orig/drivers/ssb/pci.c
> +++ wireless-testing-new/drivers/ssb/pci.c
> @@ -234,8 +234,8 @@ static void sprom_get_mac(char *mac, con
> {
> int i;
> for (i = 0; i < 3; i++) {
> - *mac++ = in[i];
> *mac++ = in[i] >> 8;
> + *mac++ = in[i];
> }
> }

Actually, FWIW it seems to have been introduced in commit
e5652756ff36ed9e1283121f788e6a17117efcab, which is slated for 3.10.
I'm happy to merge it in wireless-next.

John
--
John W. Linville Someday the world will need a hero, and you
[email protected] might be all we have. Be ready.