]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
be2net: re-order fields in be_error_recovert to avoid hole
authorIvan Vecera <cera@cera.cz>
Tue, 10 Jul 2018 20:59:47 +0000 (22:59 +0200)
committerBrian Maly <brian.maly@oracle.com>
Sat, 11 May 2019 03:43:21 +0000 (23:43 -0400)
Orabug: 29475071

- Unionize two u8 fields where only one of them is used depending on NIC
chipset.
- Move recovery_supported field after that union

These changes eliminate 7-bytes hole in the struct and makes it smaller
by 8 bytes.

Signed-off-by: Ivan Vecera <cera@cera.cz>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Brian Maly <brian.maly@oracle.com>
Reviewed-by: John Donnelly <John.p.donnelly@oracle.com>
Signed-off-by: Brian Maly <brian.maly@oracle.com>
drivers/net/ethernet/emulex/benet/be.h

index 8f141f774446799232a7e11620aa5b34ca5bbfa2..26dec54b7dee0a1e76ffa160070e10ff0536b3c6 100644 (file)
@@ -523,11 +523,13 @@ enum {
 };
 
 struct be_error_recovery {
-       /* Lancer error recovery variables */
-       u8 recovery_retries;
+       union {
+               u8 recovery_retries;    /* used for Lancer              */
+               u8 recovery_state;      /* used for BEx and Skyhawk     */
+       };
 
        /* BEx/Skyhawk error recovery variables */
-       u8 recovery_state;
+       bool recovery_supported;
        u16 ue_to_reset_time;           /* Time after UE, to soft reset
                                         * the chip - PF0 only
                                         */
@@ -535,7 +537,6 @@ struct be_error_recovery {
                                         * of SLIPORT_SEMAPHORE reg
                                         */
        u16 last_err_code;
-       bool recovery_supported;
        unsigned long probe_time;
        unsigned long last_recovery_time;