This is a note to let you know that I've just added the patch titled

    r8169: remove erroneous processing of always set bit.

to the 3.0-stable tree which can be found at:
    
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     r8169-remove-erroneous-processing-of-always-set-bit.patch
and it can be found in the queue-3.0 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <stable@vger.kernel.org> know about it.


>From stable-ow...@vger.kernel.org Sat Oct  6 06:49:18 2012
From: Francois Romieu <rom...@fr.zoreil.com>
Date: Fri,  5 Oct 2012 23:29:10 +0200
Subject: r8169: remove erroneous processing of always set bit.
To: stable@vger.kernel.org
Cc: Hayes Wang <hayesw...@realtek.com>, Jonathan Nieder <jrnie...@gmail.com>

From: Francois Romieu <rom...@fr.zoreil.com>

commit e03f33af79f0772156e1a1a1e36bdddf8012b2e4 upstream.

When set, RxFOVF (resp. RxBOVF) is always 1 (resp. 0).

Signed-off-by: Francois Romieu <rom...@fr.zoreil.com>
Cc: Hayes <hayesw...@realtek.com>
Reviewed-by: Jonathan Nieder <jrnie...@gmail.com>
Acked-by: David S. Miller <da...@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gre...@linuxfoundation.org>
---
 drivers/net/r8169.c |    7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

--- a/drivers/net/r8169.c
+++ b/drivers/net/r8169.c
@@ -388,6 +388,7 @@ enum rtl_register_content {
        RxOK            = 0x0001,
 
        /* RxStatusDesc */
+       RxBOVF  = (1 << 24),
        RxFOVF  = (1 << 23),
        RxRWT   = (1 << 22),
        RxRES   = (1 << 21),
@@ -666,6 +667,7 @@ struct rtl8169_private {
        struct mii_if_info mii;
        struct rtl8169_counters counters;
        u32 saved_wolopts;
+       u32 opts1_mask;
 
        const struct firmware *fw;
 #define RTL_FIRMWARE_UNKNOWN   ERR_PTR(-EAGAIN);
@@ -3442,6 +3444,9 @@ rtl8169_init_one(struct pci_dev *pdev, c
        tp->intr_event = cfg->intr_event;
        tp->napi_event = cfg->napi_event;
 
+       tp->opts1_mask = (tp->mac_version != RTL_GIGA_MAC_VER_01) ?
+               ~(RxBOVF | RxFOVF) : ~0;
+
        init_timer(&tp->timer);
        tp->timer.data = (unsigned long) dev;
        tp->timer.function = rtl8169_phy_timer;
@@ -4920,7 +4925,7 @@ static int rtl8169_rx_interrupt(struct n
                u32 status;
 
                rmb();
-               status = le32_to_cpu(desc->opts1);
+               status = le32_to_cpu(desc->opts1) & tp->opts1_mask;
 
                if (status & DescOwn)
                        break;


Patches currently in stable-queue which might be from rom...@fr.zoreil.com are

queue-3.0/r8169-fix-config2-msienable-bit-setting.patch
queue-3.0/r8169-remove-erroneous-processing-of-always-set-bit.patch
queue-3.0/r8169-fix-wake-on-lan-setting-for-non-8111e.patch
queue-3.0/r8169-8168c-and-later-require-bit-0x20-to-be-set-in-config2-for-pme-signaling.patch
queue-3.0/r8169-config1-is-read-only-on-8168c-and-later.patch
queue-3.0/r8169-rx-fifo-overflow-fixes.patch
queue-3.0/r8169-jumbo-fixes.patch
queue-3.0/r8169-runtime-resume-before-shutdown.patch
queue-3.0/r8169-increase-the-delay-parameter-of-pm_schedule_suspend.patch
queue-3.0/r8169-don-t-enable-rx-when-shutdown.patch
queue-3.0/r8169-missing-barriers.patch
queue-3.0/r8169-fix-unsigned-int-wraparound-with-tso.patch
queue-3.0/r8169-expand-received-packet-length-indication.patch
queue-3.0/r8169-call-netif_napi_del-at-errpaths-and-at-driver-unload.patch
--
To unsubscribe from this list: send the line "unsubscribe stable" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to