All of lore.kernel.org
 help / color / mirror / Atom feed
* Re: r8169 regression: UDP packets dropped intermittantly
@ 2017-12-18  5:49 Jonathan Woithe
  2017-12-18 13:38 ` Holger Hoffstätte
  0 siblings, 1 reply; 42+ messages in thread
From: Jonathan Woithe @ 2017-12-18  5:49 UTC (permalink / raw)
  To: netdev; +Cc: linux-kernel

Resend to netdev.  LKML CCed in case anyone in the wider kernel community
can suggest a way forward.  Please CC responses if replying only to LKML.

It seems that this 4+ year old regression in the r8169 driver (documented in
this thread on netdev beginning on 9 March 2013) will never be fixed,
despite the identification of the commit which broke it.  Cards using this
driver will therefore remain unusable for certain workloads utilising UDP.

----- Original message from 14 Nov 2017 -----

Date: Tue, 14 Nov 2017 16:09:23 +1030
From: Jonathan Woithe 
To: netdev@vger.kernel.org
Subject: Re: r8169 regression: UDP packets dropped intermittantly

As far as I am aware there were no follow up comments to my last post on
this subject on 24 March 2017.  The text of that post is included below for
reference.  To summarise: a short test program which reliably triggered the
problem was written in the hope it would assist in the repair of this
regression.

Today I ran the tests on the 4.14 kernel.  The problem is still present.  If
the same machine is run under a 4.3 kernel with the hacked r8169 driver the
problem does not occur.  Using the 4.3 r8169 driver triggers the problem. 
It also works without trouble under 2.6.35.11 (the kernel we've stuck with
due to the problem affecting most newer kernels).

To recap the history of this thread, the misbehaviour of the r8169 driver in
the presence of small UDP packets affects kernels newer than 3.3.  The
initial post in this thread was on 9 March 2013.  The regression was
introduced with commit da78dbff2e05630921c551dbbc70a4b7981a8fff.

Since this regression has persisted for more than 4 years, is there any
chance that it will be fixed?  The inability to run newer kernels has
prevented us from providing them as upgrades in our products.  If this
problem in the r8169 driver will never be fixed, it seems we'll have to find
a supply of a PCI/PCIe NIC which doesn't utilise this driver.  Of course
this won't help those whose systems in the field are fitted with the
r8169-based card.

Regards
  jonathan

Post from Mar 24, 2017:

> On Thu, Jun 23, 2016 at 01:22:50AM +0200, Francois Romieu wrote:
> > Jonathan Woithe <jwoithe@atrad.com.au> :
> > [...]
> > > to mainline (in which case I'll keep watching out for it)?  Or is the
> > > out-of-tree workaround mentioned above considered to be the long term
> > > fix for those who encounter the problem?
> > 
> > It's a workaround. Nothing less, nothing more.
> 
> Recently I have had a chance to revisit this issue.  I have written a
> program (r8196-test, source is included below) which recreates the problem
> without requiring our external hardware devices.  That is, this program
> triggers the fault when run between two networked computers.  To use, two
> PCs are needed.  One (the "master") has an rtl8169 network card fitted (ours
> has a Netgear GA311, but the problem has been seen with others too from
> memory).  The network hardware of the other computer (the "slave") isn't
> important.  First run
> 
>   ./r8196-test
> 
> on the slave, followed by 
> 
>   ./r8196-test <IPv4 address of slave>
> 
> on the master.  When running stock kernel version 4.3 the master stops
> reliably within a minute or so with a timeout, indicating (in this case)
> that the response packet never arrived within the 0.5 second timeout period. 
> The ID whose response was never received by the master is reported as having
> been seen (and a response sent) by the slave.
> 
> If I substitute the forward ported r8169 driver mentioned earlier in this
> thread into kernel 4.3, the above program sequence runs seemingly
> indefinitely without any timeouts (runtime is beyond two hours as of this
> writing, compared to tens of seconds with the standard driver).
> 
> This demonstrates that the problem is independent of our custom network
> devices and allows the fault to be recreated using commodity hardware.
> 
> Does this make it any easier to develop a mainline fix for the regression?
> 
> Regards
>   jonathan
> 
> /*
>  * To test, the "master" mode is run on a PC with an RTL-8169 card.
>  * The "slave" mode is run on any other PC.  "Master" mode is activated
>  * by providing the IP of the slave PC on the command line.  The slave
>  * should be started before the master; without a running slave the master
>  * will time out.
>  *
>  * This code is in the public domain.
>  */
> #include <sys/types.h>
> #include <sys/socket.h>
> #include <stdio.h>
> #include <netinet/in.h>
> #include <arpa/inet.h>
> #include <string.h>
> #include <unistd.h>
> 
> #include <errno.h>
> 
> unsigned char ping_payload[] = {
>     0x00, 0x00,
>     0x00, 0x00, 0x00, 0x00,
> };
> 
> #define PING_PAYLOAD_SIZE 6
> 
> unsigned char ack_payload[] = {
>     0x12, 0x34,
>     0x01, 0x01, 0x00, 0x00,
>     0x00, 0x00, 0x00, 0x00,
>     0x00, 0x00, 0x00, 0x00,
> };
> 
> #define ACK_PAYLOAD_SIZE 14
> 
> #define UDP_PORT 49491
> 
> signed int open_udp(const char *target_addr)
> {
>     struct sockaddr_in local_addr;
>     struct timeval tv;
>     int sock;
> 
>     sock = socket(PF_INET,SOCK_DGRAM, 0);
>     if (sock < 0) {
>         return -1;
>     }
> 
>     tv.tv_sec = 0;
>     tv.tv_usec = 500000;
>     setsockopt(sock, SOL_SOCKET, SO_SNDTIMEO, (char *)&tv, sizeof(tv));
>     setsockopt(sock, SOL_SOCKET, SO_RCVTIMEO, (char *)&tv, sizeof(tv));
> 
>     memset(&local_addr, 0, sizeof(local_addr));
>     local_addr.sin_family = AF_INET;
>     local_addr.sin_addr.s_addr = INADDR_ANY;
>     local_addr.sin_port = htons(49491);
>     if (bind(sock, (struct sockaddr *)&local_addr,
>              sizeof(struct sockaddr)) < 0) {
>         return -1;
>     }
> 
>     if (target_addr != NULL) {
>         struct sockaddr_in dest_addr;
>         memset(&dest_addr, 0, sizeof(dest_addr));
>         dest_addr.sin_family = AF_INET;
>         dest_addr.sin_port = htons(49491);
>         if (inet_aton(target_addr, &dest_addr.sin_addr) < 0) {
>             return -1;
>         }
>         if (connect(sock, (struct sockaddr *)&dest_addr,
>                     sizeof(dest_addr)) < 0) {
>             return -1;
>         }
>     }
>     return sock;
> }
> 
> void master(const char *target_addr)
> {
>     signed int id = 0;
>     int sock = open_udp(target_addr);
> 
>     printf("master()\n");
>     if (sock < 0) {
>         return;
>     }
> 
>     for (;; id++) {
>         unsigned char buf[1024];
>         signed int n;
>         ping_payload[0] = id & 0xff;
>         if (send(sock, ping_payload, PING_PAYLOAD_SIZE, 0) < 0) {
>             break;
>         }
>         n = recv(sock, buf, sizeof(buf), 0);
>         if (n == -1) {
>             if (errno == EAGAIN) {
>                 printf("id 0x%02x: no response received (timeout)\n", 
>                        ping_payload[0]);
>                 break;
>             }
>         } else {
>             printf("id 0x%02x: recv %d\n", buf[0], n);
>         }
>         usleep(10000);
>     }
>     close(sock);
> }
> 
> void slave()
> {
>     int sock = open_udp(NULL);
> 
>     printf("slave()\n");
>     if (sock < 0) {
>         return;
>     }
> 
>     for ( ; ; ) {
>         struct sockaddr master_addr;
>         unsigned char buf[1024];
>         signed int n;
> 
>         socklen_t len = sizeof(master_addr);
>         n = recvfrom(sock, buf, sizeof(buf), 0, &master_addr, &len);
>         if (n == PING_PAYLOAD_SIZE) {
>             printf("id 0x%02x: recv %d, sending %d\n", buf[0], n,
>                    ACK_PAYLOAD_SIZE);
>             ack_payload[0] = buf[0];
>             sendto(sock, ack_payload, ACK_PAYLOAD_SIZE, 0, &master_addr, len);
>         }
>     }
> 
>     close(sock);
> }
> 
> int main(int argc, char *argv[]) {
>     if (argc > 1) {
>         master(argv[1]);
>     } else {
>         slave();
>     }
>     return 0;
> }

^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: r8169 regression: UDP packets dropped intermittantly
  2017-12-18  5:49 r8169 regression: UDP packets dropped intermittantly Jonathan Woithe
@ 2017-12-18 13:38 ` Holger Hoffstätte
  2017-12-18 22:32   ` Jonathan Woithe
  0 siblings, 1 reply; 42+ messages in thread
From: Holger Hoffstätte @ 2017-12-18 13:38 UTC (permalink / raw)
  To: Jonathan Woithe, netdev; +Cc: linux-kernel

On 12/18/17 06:49, Jonathan Woithe wrote:
> Resend to netdev.  LKML CCed in case anyone in the wider kernel community
> can suggest a way forward.  Please CC responses if replying only to LKML.
> 
> It seems that this 4+ year old regression in the r8169 driver (documented in
> this thread on netdev beginning on 9 March 2013) will never be fixed,
> despite the identification of the commit which broke it.  Cards using this
> driver will therefore remain unusable for certain workloads utilising UDP.
(snip)

Hi,

Since I've seen your postings several times now with no comment or resolution
I've decided to try your reproducer on my own systems. In short, I cannot
reproduce any packet loss, despite having 2 (cheap) 1Gb switches between the
two machines. Both are running 4.14.7.

Both NICs are onboard PCIe and identify as:
04:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 06)

$ethtool -i eth0
driver: r8169
version: 2.3LK-NAPI
firmware-version: rtl8168e-3_0.0.4 03/27/12
..

Both machines are from 2012, so quite dated already. Nevertheless your
reproducer runs forever and all I see is 6 bytes request, 14 bytes response,
with no drops. Not one. I tried in both directions - no difference.

I realize this doesn't actually solve your immediate problem, but it is
nevertheless an indicator that whatever you have been observing is caused
by something else.

regards,
Holger

^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: r8169 regression: UDP packets dropped intermittantly
  2017-12-18 13:38 ` Holger Hoffstätte
@ 2017-12-18 22:32   ` Jonathan Woithe
  2017-12-19  5:45     ` Jonathan Woithe
  0 siblings, 1 reply; 42+ messages in thread
From: Jonathan Woithe @ 2017-12-18 22:32 UTC (permalink / raw)
  To: Holger Hoffstätte; +Cc: netdev, linux-kernel

Hi Holger

On Mon, Dec 18, 2017 at 02:38:53PM +0100, Holger Hoffstätte wrote:
> On 12/18/17 06:49, Jonathan Woithe wrote:
> > Resend to netdev.  LKML CCed in case anyone in the wider kernel community
> > can suggest a way forward.  Please CC responses if replying only to LKML.
> > 
> > It seems that this 4+ year old regression in the r8169 driver (documented in
> > this thread on netdev beginning on 9 March 2013) will never be fixed,
> > despite the identification of the commit which broke it.  Cards using this
> > driver will therefore remain unusable for certain workloads utilising UDP.
> (snip)
> 
> Since I've seen your postings several times now with no comment or resolution
> I've decided to try your reproducer on my own systems. In short, I cannot
> reproduce any packet loss, despite having 2 (cheap) 1Gb switches between the
> two machines. Both are running 4.14.7.

Thanks for trying the test program on your system.  The result indicates
that the problem might be specific to the behaviour of a particular network
variant of the r8169 chip.  The systems we use are all equipped with a
PCI Netgear GA311 card, which identifies as

  05:01.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8169 
  Gigabit Ethernet (rev 10)
        Subsystem: Netgear GA311

Respective IDs are

  05:01.0 0200: 10ec:8169 (rev 10)
          Subsystem: 1385:311a

> Both NICs are onboard PCIe

This is a significant difference between your test systems and ours: the
cards we are using are PCI and are not onboard.

> Nevertheless your reproducer runs forever and all I see is 6 bytes
> request, 14 bytes response, with no drops.  Not one.  I tried in both
> directions - no difference.

That's very interesting.  On the system noted above with the GA311 the
packet sequence certainly works most of the time.  However, within an hour
the 14 byte response will not be seen by the system which sent the 6 byte
request.  The slave sees the 6 byte request and sends the 14 byte response:
the problem is in the master (the system sending the 6 byte request).  The
NIC in the slave or kernel version running on the slave does not affect the
result.

> I realize this doesn't actually solve your immediate problem, but it is
> nevertheless an indicator that whatever you have been observing is caused
> by something else.

The inability to trigger the problem on your systems could be due to the
NICs in use.  That is an obvious difference between our system (which
reliably experiences the problem) and yours (which doesn't).  This may
indicate that only certain variants of the r8169 chip are affected, which
obviously complicates things.

In any case, this tester (and the production program with which the problem
was first noticed) work perfectly until commit
da78dbff2e05630921c551dbbc70a4b7981a8fff (identified with git bisect). 
Furthermore, when the pre-da78dbff...981a8fff driver was ported to 4.3 as a
test the problem was resolved, verified over a week of continuous testing;
the standard 4.3 reliably triggered the problem within minutes.  Of course
the ported driver isn't a viable long term solution since it's essentially
an out of tree driver.

It's hard to see how this problem is unrelated to da78dbff...981a8fff. 
Before this commit, everything worked fine.  While keeping everything else on
the system unchanged, applying this single commit to the r8169 driver causes
the problem.

Thank you again for running the tests.

Regards
  jonathan

^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: r8169 regression: UDP packets dropped intermittantly
  2017-12-18 22:32   ` Jonathan Woithe
@ 2017-12-19  5:45     ` Jonathan Woithe
  2017-12-19 12:25       ` Michal Kubecek
  0 siblings, 1 reply; 42+ messages in thread
From: Jonathan Woithe @ 2017-12-19  5:45 UTC (permalink / raw)
  To: Holger Hoffstätte; +Cc: netdev, linux-kernel

Hi again

This is a follow up to my earlier message.

On Tue, Dec 19, 2017 at 09:02:25AM +1030, Jonathan Woithe wrote:
> On Mon, Dec 18, 2017 at 02:38:53PM +0100, Holger Hoffstätte wrote:
> > Since I've seen your postings several times now with no comment or resolution
> > I've decided to try your reproducer on my own systems. In short, I cannot
> > reproduce any packet loss, despite having 2 (cheap) 1Gb switches between the
> > two machines. Both are running 4.14.7.
> 
> Thanks for trying the test program on your system.  The result indicates
> that the problem might be specific to the behaviour of a particular network
> variant of the r8169 chip.

I was able to temporarily acquire a PCIe card which uses the r8169 driver.
This allowed me to run the reproducer on the same machine with two different
r8169-based cards.  The original NIC is this:

  05:01.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8169 
  Gigabit Ethernet (rev 10) [10ec:8169]
          Subsystem: Netgear GA311 [1385:311a]

The PCIe card is this:

  02:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168B 
  PCI Express Gigabit Ethernet controller (rev 06) [10ec:8168]
          Subsystem: Realtek Semiconductor Co., Ltd. Device 0123 [10ec:0123]

The test was conducted with kernel 4.3.0 since both the 4.3.0 driver (which
triggers the fault) and the forward ported driver (which predates commit
da78dbff2e05630921c551dbbc70a4b7981a8fff) was available.  For the record,
the machine used as the slave in these tests (the one receiving the 6 byte
request and sending the 14 byte response) was using its onboard NIC:

  00:19.0 Ethernet controller: Intel Corporation 82579V Gigabit Network 
  Connection (rev 05) [8086:1503]
          Subsystem: Gigabyte Technology Co., Ltd 82579V Gigabit Network 
          Connection [1458:e000]

Test outcomes were as follows:

  PCIe card, unpatched 4.3.0 r8169 driver: no error (tested for 1 hour)
  PCIe card, forward ported r8169 driver:  no error (tested for 1 hour)

  GA311 card, unpatched 4.3.0 r8169 driver: test fail in under 4 minutes
  GA311 card, forward ported r8169 driver:  no error (tested for 1 hour)

For completeness, I then booted 4.14 and repeated the test with its r8168
driver.  The PCIe card ran for an hour without triggering the error, while
the GA311 triggered it quickly (in under 3 minutes).

This clearly indicates that not every card using the r8169 driver is
vulnerable to the problem.  It also explains why Holger was unable to
reproduce the result on his system: the PCIe cards do not appear to suffer
from the problem.  Most likely the PCI RTL-8169 chip is affected, but newer
PCIe variations do not.  However, obviously more testing will be required
with a wider variety of cards if this inference is to hold up.

The above result (and those from Holger) allow the problem description to be
refined a little: changes in commit da78dbff2e05630921c551dbbc70a4b7981a8fff
cause GA311 NICs (and possibly other PCI cards using an RTL-8169) to have
trouble with small UDP packets, while PCIe variants are seemingly
unaffected.

Does this help?

Regards
  jonathan

^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: r8169 regression: UDP packets dropped intermittantly
  2017-12-19  5:45     ` Jonathan Woithe
@ 2017-12-19 12:25       ` Michal Kubecek
  2017-12-20  5:20         ` Jonathan Woithe
  0 siblings, 1 reply; 42+ messages in thread
From: Michal Kubecek @ 2017-12-19 12:25 UTC (permalink / raw)
  To: Jonathan Woithe; +Cc: Holger Hoffstätte, netdev, linux-kernel

On Tue, Dec 19, 2017 at 04:15:32PM +1030, Jonathan Woithe wrote:
> This clearly indicates that not every card using the r8169 driver is
> vulnerable to the problem.  It also explains why Holger was unable to
> reproduce the result on his system: the PCIe cards do not appear to suffer
> from the problem.  Most likely the PCI RTL-8169 chip is affected, but newer
> PCIe variations do not.  However, obviously more testing will be required
> with a wider variety of cards if this inference is to hold up.

The r8169 driver supports many slightly different variants of the chip.
To identify your variant more precisely, look for a line like

  r8169 0000:02:00.0 eth0: RTL8168evl/8111evl at 0xffffc90003135000, d4:3d:7e:2a:30:08, XID 0c900800 IRQ 38

in kernel log.

Michal Kubecek

^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: r8169 regression: UDP packets dropped intermittantly
  2017-12-19 12:25       ` Michal Kubecek
@ 2017-12-20  5:20         ` Jonathan Woithe
  2018-01-15  6:56           ` Jonathan Woithe
  0 siblings, 1 reply; 42+ messages in thread
From: Jonathan Woithe @ 2017-12-20  5:20 UTC (permalink / raw)
  To: Michal Kubecek; +Cc: Holger Hoffstätte, netdev, linux-kernel

On Tue, Dec 19, 2017 at 01:25:23PM +0100, Michal Kubecek wrote:
> On Tue, Dec 19, 2017 at 04:15:32PM +1030, Jonathan Woithe wrote:
> > This clearly indicates that not every card using the r8169 driver is
> > vulnerable to the problem.  It also explains why Holger was unable to
> > reproduce the result on his system: the PCIe cards do not appear to suffer
> > from the problem.  Most likely the PCI RTL-8169 chip is affected, but newer
> > PCIe variations do not.  However, obviously more testing will be required
> > with a wider variety of cards if this inference is to hold up.
> 
> The r8169 driver supports many slightly different variants of the chip.
> To identify your variant more precisely, look for a line like
> 
>   r8169 0000:02:00.0 eth0: RTL8168evl/8111evl at 0xffffc90003135000, d4:3d:7e:2a:30:08, XID 0c900800 IRQ 38
> 
> in kernel log.

The PCIe card (the one which works correctly with the current driver) shows
this:

  r8169 0000:02:00.0 eth0: RTL8168e/8111e at 0xf862e000, 80:1f:02:45:25:a4, 
    XID 0c200000 IRQ 30
  r8169 0000:02:00.0 eth0: jumbo features [frames: 9200 bytes, 
    tx checksumming: ko]

The PCI card (Netgear GA311) which is affected by the problem shows this:

  r8169 0000:05:01.0 eth1: RTL8110s at 0xf8706800, e0:91:f5:1b:5f:c6, 
    XID 04000000 IRQ 22
  r8169 0000:05:01.0 eth1: jumbo features [frames: 7152 bytes, 
    tx checksumming: ok]

The system which has shown the regressed behaviour is running a 32-bit
kernel; for various reasons we can't move to a 64-bit kernel at present. 
However, I was able to boot this system using Slackware 14.2 install discs,
and therefore test using both 32-bit and 64-bit 4.4.14 kernels.  In both
cases the fault was observed within 30 minutes of starting the tests when
the GA311 card was in use.  The fault is therefore not specific to 32-bit
environments.

Regards
  jonathan

^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: r8169 regression: UDP packets dropped intermittantly
  2017-12-20  5:20         ` Jonathan Woithe
@ 2018-01-15  6:56           ` Jonathan Woithe
  2018-10-22  0:01             ` Jonathan Woithe
  0 siblings, 1 reply; 42+ messages in thread
From: Jonathan Woithe @ 2018-01-15  6:56 UTC (permalink / raw)
  To: netdev; +Cc: linux-kernel

On Wed, Dec 20, 2017 at 03:50:11PM +1030, Jonathan Woithe wrote:
> On Tue, Dec 19, 2017 at 01:25:23PM +0100, Michal Kubecek wrote:
> > On Tue, Dec 19, 2017 at 04:15:32PM +1030, Jonathan Woithe wrote:
> > > This clearly indicates that not every card using the r8169 driver is
> > > vulnerable to the problem.  It also explains why Holger was unable to
> > > reproduce the result on his system: the PCIe cards do not appear to suffer
> > > from the problem.  Most likely the PCI RTL-8169 chip is affected, but newer
> > > PCIe variations do not.  However, obviously more testing will be required
> > > with a wider variety of cards if this inference is to hold up.
> > 
> > The r8169 driver supports many slightly different variants of the chip.
> > To identify your variant more precisely, look for a line like
> > 
> >   r8169 0000:02:00.0 eth0: RTL8168evl/8111evl at 0xffffc90003135000, d4:3d:7e:2a:30:08, XID 0c900800 IRQ 38
> > 
> > in kernel log.
> 
> The PCIe card (the one which works correctly with the current driver) shows
> this:
> 
>   r8169 0000:02:00.0 eth0: RTL8168e/8111e at 0xf862e000, 80:1f:02:45:25:a4, 
>     XID 0c200000 IRQ 30
>   r8169 0000:02:00.0 eth0: jumbo features [frames: 9200 bytes, 
>     tx checksumming: ko]
> 
> The PCI card (Netgear GA311) which is affected by the problem shows this:
> 
>   r8169 0000:05:01.0 eth1: RTL8110s at 0xf8706800, e0:91:f5:1b:5f:c6, 
>     XID 04000000 IRQ 22
>   r8169 0000:05:01.0 eth1: jumbo features [frames: 7152 bytes, 
>     tx checksumming: ok]
> 
> The system which has shown the regressed behaviour is running a 32-bit
> kernel; for various reasons we can't move to a 64-bit kernel at present. 
> However, I was able to boot this system using Slackware 14.2 install discs,
> and therefore test using both 32-bit and 64-bit 4.4.14 kernels.  In both
> cases the fault was observed within 30 minutes of starting the tests when
> the GA311 card was in use.  The fault is therefore not specific to 32-bit
> environments.

Is there any more information that can be provided (or tests done) to assist
in tracking this problem down?  Based on the tests done in December it seems
that the problem only affects specific RTL-8169 variants, with most being
ok.  Is it a case that we simply need to accept that for the greater good
commit da78dbff2e05630921c551dbbc70a4b7981a8fff has permanently broken
Netgear GA311 [1] network cards with respect to these UDP packets and that
nothing can be done?

Regards
  jonathan

[1] Or perhaps any using the RTL8110s variant.

^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: r8169 regression: UDP packets dropped intermittantly
  2018-01-15  6:56           ` Jonathan Woithe
@ 2018-10-22  0:01             ` Jonathan Woithe
  0 siblings, 0 replies; 42+ messages in thread
From: Jonathan Woithe @ 2018-10-22  0:01 UTC (permalink / raw)
  To: netdev; +Cc: linux-kernel

On Mon, Jan 15, 2018 at 05:26:59PM +1030, Jonathan Woithe wrote:
> Is there any more information that can be provided (or tests done) to assist
> in tracking this problem down?  Based on the tests done in December it seems
> that the problem only affects specific RTL-8169 variants, with most being
> ok.  Is it a case that we simply need to accept that for the greater good
> commit da78dbff2e05630921c551dbbc70a4b7981a8fff has permanently broken
> Netgear GA311 [1] network cards with respect to these UDP packets and that
> nothing can be done?

For future reference, commit 6b839b6cf9eada30b086effb51e5d6076bafc761
("r8169: fix NAPI handling under high load") appears to have fixed the
regression documented by this thread.  Thanks to Heiner Kallweit for the
work which lead to this solution.

Regards
  jonathan

> [1] Or perhaps any using the RTL8110s variant.

^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: r8169 regression: UDP packets dropped intermittantly
  2017-03-24  5:05                                             ` Jonathan Woithe
@ 2017-11-14  5:39                                               ` Jonathan Woithe
  0 siblings, 0 replies; 42+ messages in thread
From: Jonathan Woithe @ 2017-11-14  5:39 UTC (permalink / raw)
  To: netdev

As far as I am aware there were no follow up comments to my last post on
this subject on 24 March 2017.  The text of that post is included below for
reference.  To summarise: a short test program which reliably triggered the
problem was written in the hope it would assist in the repair of this
regression.

Today I ran the tests on the 4.14 kernel.  The problem is still present.  If
the same machine is run under a 4.3 kernel with the hacked r8169 driver the
problem does not occur.  Using the 4.3 r8169 driver triggers the problem. 
It also works without trouble under 2.6.35.11 (the kernel we've stuck with
due to the problem affecting most newer kernels).

To recap the history of this thread, the misbehaviour of the r8169 driver in
the presence of small UDP packets affects kernels newer than 3.3.  The
initial post in this thread was on 9 March 2013.  The regression was
introduced with commit da78dbff2e05630921c551dbbc70a4b7981a8fff.

Since this regression has persisted for more than 4 years, is there any
chance that it will be fixed?  The inability to run newer kernels has
prevented us from providing them as upgrades in our products.  If this
problem in the r8169 driver will never be fixed, it seems we'll have to find
a supply of a PCI/PCIe NIC which doesn't utilise this driver.  Of course
this won't help those whose systems in the field are fitted with the
r8169-based card.

Regards
  jonathan

Post from Mar 24, 2017:

> On Thu, Jun 23, 2016 at 01:22:50AM +0200, Francois Romieu wrote:
> > Jonathan Woithe <jwoithe@atrad.com.au> :
> > [...]
> > > to mainline (in which case I'll keep watching out for it)?  Or is the
> > > out-of-tree workaround mentioned above considered to be the long term
> > > fix for those who encounter the problem?
> > 
> > It's a workaround. Nothing less, nothing more.
> 
> Recently I have had a chance to revisit this issue.  I have written a
> program (r8196-test, source is included below) which recreates the problem
> without requiring our external hardware devices.  That is, this program
> triggers the fault when run between two networked computers.  To use, two
> PCs are needed.  One (the "master") has an rtl8169 network card fitted (ours
> has a Netgear GA311, but the problem has been seen with others too from
> memory).  The network hardware of the other computer (the "slave") isn't
> important.  First run
> 
>   ./r8196-test
> 
> on the slave, followed by 
> 
>   ./r8196-test <IPv4 address of slave>
> 
> on the master.  When running stock kernel version 4.3 the master stops
> reliably within a minute or so with a timeout, indicating (in this case)
> that the response packet never arrived within the 0.5 second timeout period. 
> The ID whose response was never received by the master is reported as having
> been seen (and a response sent) by the slave.
> 
> If I substitute the forward ported r8169 driver mentioned earlier in this
> thread into kernel 4.3, the above program sequence runs seemingly
> indefinitely without any timeouts (runtime is beyond two hours as of this
> writing, compared to tens of seconds with the standard driver).
> 
> This demonstrates that the problem is independent of our custom network
> devices and allows the fault to be recreated using commodity hardware.
> 
> Does this make it any easier to develop a mainline fix for the regression?
> 
> Regards
>   jonathan
> 
> /*
>  * To test, the "master" mode is run on a PC with an RTL-8169 card.
>  * The "slave" mode is run on any other PC.  "Master" mode is activated
>  * by providing the IP of the slave PC on the command line.  The slave
>  * should be started before the master; without a running slave the master
>  * will time out.
>  *
>  * This code is in the public domain.
>  */
> #include <sys/types.h>
> #include <sys/socket.h>
> #include <stdio.h>
> #include <netinet/in.h>
> #include <arpa/inet.h>
> #include <string.h>
> #include <unistd.h>
> 
> #include <errno.h>
> 
> unsigned char ping_payload[] = {
>     0x00, 0x00,
>     0x00, 0x00, 0x00, 0x00,
> };
> 
> #define PING_PAYLOAD_SIZE 6
> 
> unsigned char ack_payload[] = {
>     0x12, 0x34,
>     0x01, 0x01, 0x00, 0x00,
>     0x00, 0x00, 0x00, 0x00,
>     0x00, 0x00, 0x00, 0x00,
> };
> 
> #define ACK_PAYLOAD_SIZE 14
> 
> #define UDP_PORT 49491
> 
> signed int open_udp(const char *target_addr)
> {
>     struct sockaddr_in local_addr;
>     struct timeval tv;
>     int sock;
> 
>     sock = socket(PF_INET,SOCK_DGRAM, 0);
>     if (sock < 0) {
>         return -1;
>     }
> 
>     tv.tv_sec = 0;
>     tv.tv_usec = 500000;
>     setsockopt(sock, SOL_SOCKET, SO_SNDTIMEO, (char *)&tv, sizeof(tv));
>     setsockopt(sock, SOL_SOCKET, SO_RCVTIMEO, (char *)&tv, sizeof(tv));
> 
>     memset(&local_addr, 0, sizeof(local_addr));
>     local_addr.sin_family = AF_INET;
>     local_addr.sin_addr.s_addr = INADDR_ANY;
>     local_addr.sin_port = htons(49491);
>     if (bind(sock, (struct sockaddr *)&local_addr,
>              sizeof(struct sockaddr)) < 0) {
>         return -1;
>     }
> 
>     if (target_addr != NULL) {
>         struct sockaddr_in dest_addr;
>         memset(&dest_addr, 0, sizeof(dest_addr));
>         dest_addr.sin_family = AF_INET;
>         dest_addr.sin_port = htons(49491);
>         if (inet_aton(target_addr, &dest_addr.sin_addr) < 0) {
>             return -1;
>         }
>         if (connect(sock, (struct sockaddr *)&dest_addr,
>                     sizeof(dest_addr)) < 0) {
>             return -1;
>         }
>     }
>     return sock;
> }
> 
> void master(const char *target_addr)
> {
>     signed int id = 0;
>     int sock = open_udp(target_addr);
> 
>     printf("master()\n");
>     if (sock < 0) {
>         return;
>     }
> 
>     for (;; id++) {
>         unsigned char buf[1024];
>         signed int n;
>         ping_payload[0] = id & 0xff;
>         if (send(sock, ping_payload, PING_PAYLOAD_SIZE, 0) < 0) {
>             break;
>         }
>         n = recv(sock, buf, sizeof(buf), 0);
>         if (n == -1) {
>             if (errno == EAGAIN) {
>                 printf("id 0x%02x: no response received (timeout)\n", 
>                        ping_payload[0]);
>                 break;
>             }
>         } else {
>             printf("id 0x%02x: recv %d\n", buf[0], n);
>         }
>         usleep(10000);
>     }
>     close(sock);
> }
> 
> void slave()
> {
>     int sock = open_udp(NULL);
> 
>     printf("slave()\n");
>     if (sock < 0) {
>         return;
>     }
> 
>     for ( ; ; ) {
>         struct sockaddr master_addr;
>         unsigned char buf[1024];
>         signed int n;
> 
>         socklen_t len = sizeof(master_addr);
>         n = recvfrom(sock, buf, sizeof(buf), 0, &master_addr, &len);
>         if (n == PING_PAYLOAD_SIZE) {
>             printf("id 0x%02x: recv %d, sending %d\n", buf[0], n,
>                    ACK_PAYLOAD_SIZE);
>             ack_payload[0] = buf[0];
>             sendto(sock, ack_payload, ACK_PAYLOAD_SIZE, 0, &master_addr, len);
>         }
>     }
> 
>     close(sock);
> }
> 
> int main(int argc, char *argv[]) {
>     if (argc > 1) {
>         master(argv[1]);
>     } else {
>         slave();
>     }
>     return 0;
> }

^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: r8169 regression: UDP packets dropped intermittantly
  2016-06-22 23:22                                           ` Francois Romieu
  2016-06-23  8:26                                             ` Jonathan Woithe
@ 2017-03-24  5:05                                             ` Jonathan Woithe
  2017-11-14  5:39                                               ` Jonathan Woithe
  1 sibling, 1 reply; 42+ messages in thread
From: Jonathan Woithe @ 2017-03-24  5:05 UTC (permalink / raw)
  To: Francois Romieu; +Cc: netdev

On Thu, Jun 23, 2016 at 01:22:50AM +0200, Francois Romieu wrote:
> Jonathan Woithe <jwoithe@atrad.com.au> :
> [...]
> > to mainline (in which case I'll keep watching out for it)?  Or is the
> > out-of-tree workaround mentioned above considered to be the long term
> > fix for those who encounter the problem?
> 
> It's a workaround. Nothing less, nothing more.

Recently I have had a chance to revisit this issue.  I have written a
program (r8196-test, source is included below) which recreates the problem
without requiring our external hardware devices.  That is, this program
triggers the fault when run between two networked computers.  To use, two
PCs are needed.  One (the "master") has an rtl8169 network card fitted (ours
has a Netgear GA311, but the problem has been seen with others too from
memory).  The network hardware of the other computer (the "slave") isn't
important.  First run

  ./r8196-test

on the slave, followed by 

  ./r8196-test <IPv4 address of slave>

on the master.  When running stock kernel version 4.3 the master stops
reliably within a minute or so with a timeout, indicating (in this case)
that the response packet never arrived within the 0.5 second timeout period. 
The ID whose response was never received by the master is reported as having
been seen (and a response sent) by the slave.

If I substitute the forward ported r8169 driver mentioned earlier in this
thread into kernel 4.3, the above program sequence runs seemingly
indefinitely without any timeouts (runtime is beyond two hours as of this
writing, compared to tens of seconds with the standard driver).

This demonstrates that the problem is independent of our custom network
devices and allows the fault to be recreated using commodity hardware.

Does this make it any easier to develop a mainline fix for the regression?

Regards
  jonathan

/*
 * To test, the "master" mode is run on a PC with an RTL-8169 card.
 * The "slave" mode is run on any other PC.  "Master" mode is activated
 * by providing the IP of the slave PC on the command line.  The slave
 * should be started before the master; without a running slave the master
 * will time out.
 *
 * This code is in the public domain.
 */
#include <sys/types.h>
#include <sys/socket.h>
#include <stdio.h>
#include <netinet/in.h>
#include <arpa/inet.h>
#include <string.h>
#include <unistd.h>

#include <errno.h>

unsigned char ping_payload[] = {
    0x00, 0x00,
    0x00, 0x00, 0x00, 0x00,
};

#define PING_PAYLOAD_SIZE 6

unsigned char ack_payload[] = {
    0x12, 0x34,
    0x01, 0x01, 0x00, 0x00,
    0x00, 0x00, 0x00, 0x00,
    0x00, 0x00, 0x00, 0x00,
};

#define ACK_PAYLOAD_SIZE 14

#define UDP_PORT 49491

signed int open_udp(const char *target_addr)
{
    struct sockaddr_in local_addr;
    struct timeval tv;
    int sock;

    sock = socket(PF_INET,SOCK_DGRAM, 0);
    if (sock < 0) {
        return -1;
    }

    tv.tv_sec = 0;
    tv.tv_usec = 500000;
    setsockopt(sock, SOL_SOCKET, SO_SNDTIMEO, (char *)&tv, sizeof(tv));
    setsockopt(sock, SOL_SOCKET, SO_RCVTIMEO, (char *)&tv, sizeof(tv));

    memset(&local_addr, 0, sizeof(local_addr));
    local_addr.sin_family = AF_INET;
    local_addr.sin_addr.s_addr = INADDR_ANY;
    local_addr.sin_port = htons(49491);
    if (bind(sock, (struct sockaddr *)&local_addr,
             sizeof(struct sockaddr)) < 0) {
        return -1;
    }

    if (target_addr != NULL) {
        struct sockaddr_in dest_addr;
        memset(&dest_addr, 0, sizeof(dest_addr));
        dest_addr.sin_family = AF_INET;
        dest_addr.sin_port = htons(49491);
        if (inet_aton(target_addr, &dest_addr.sin_addr) < 0) {
            return -1;
        }
        if (connect(sock, (struct sockaddr *)&dest_addr,
                    sizeof(dest_addr)) < 0) {
            return -1;
        }
    }
    return sock;
}

void master(const char *target_addr)
{
    signed int id = 0;
    int sock = open_udp(target_addr);

    printf("master()\n");
    if (sock < 0) {
        return;
    }

    for (;; id++) {
        unsigned char buf[1024];
        signed int n;
        ping_payload[0] = id & 0xff;
        if (send(sock, ping_payload, PING_PAYLOAD_SIZE, 0) < 0) {
            break;
        }
        n = recv(sock, buf, sizeof(buf), 0);
        if (n == -1) {
            if (errno == EAGAIN) {
                printf("id 0x%02x: no response received (timeout)\n", 
                       ping_payload[0]);
                break;
            }
        } else {
            printf("id 0x%02x: recv %d\n", buf[0], n);
        }
        usleep(10000);
    }
    close(sock);
}

void slave()
{
    int sock = open_udp(NULL);

    printf("slave()\n");
    if (sock < 0) {
        return;
    }

    for ( ; ; ) {
        struct sockaddr master_addr;
        unsigned char buf[1024];
        signed int n;

        socklen_t len = sizeof(master_addr);
        n = recvfrom(sock, buf, sizeof(buf), 0, &master_addr, &len);
        if (n == PING_PAYLOAD_SIZE) {
            printf("id 0x%02x: recv %d, sending %d\n", buf[0], n,
                   ACK_PAYLOAD_SIZE);
            ack_payload[0] = buf[0];
            sendto(sock, ack_payload, ACK_PAYLOAD_SIZE, 0, &master_addr, len);
        }
    }

    close(sock);
}

int main(int argc, char *argv[]) {
    if (argc > 1) {
        master(argv[1]);
    } else {
        slave();
    }
    return 0;
}

^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: r8169 regression: UDP packets dropped intermittantly
  2016-06-22 23:22                                           ` Francois Romieu
@ 2016-06-23  8:26                                             ` Jonathan Woithe
  2017-03-24  5:05                                             ` Jonathan Woithe
  1 sibling, 0 replies; 42+ messages in thread
From: Jonathan Woithe @ 2016-06-23  8:26 UTC (permalink / raw)
  To: Francois Romieu; +Cc: netdev

On Thu, Jun 23, 2016 at 01:22:50AM +0200, Francois Romieu wrote:
> Jonathan Woithe <jwoithe@atrad.com.au> :
> [...]
> > to mainline (in which case I'll keep watching out for it)?  Or is the
> > out-of-tree workaround mentioned above considered to be the long term
> > fix for those who encounter the problem?
> 
> It's a workaround. Nothing less, nothing more.

I see.  Should I assume therefore that a permanent fix *might* get into the
kernel someday, but that there is no timeframe and no guarantee?

I should mention that while I currently have access to hardware to test for
the problem, this may not be the case in a few months time since the
hardware (the computer and network devices) is slated for deployment.

Thank you for helping me to understand what the situation is regarding
intentions for mainline.

> IIRC the ga311 irq signaling was a bit special. I almost surely broke
> it at some point.

While we have seen the current issue on GA311 cards (and this is what is
currently in our test setup), it's also been observed with other r8169-based
cards (a D-Link from memory).

Regards
  jonathan

^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: r8169 regression: UDP packets dropped intermittantly
  2016-06-21 23:59                                         ` Jonathan Woithe
@ 2016-06-22 23:22                                           ` Francois Romieu
  2016-06-23  8:26                                             ` Jonathan Woithe
  2017-03-24  5:05                                             ` Jonathan Woithe
  0 siblings, 2 replies; 42+ messages in thread
From: Francois Romieu @ 2016-06-22 23:22 UTC (permalink / raw)
  To: Jonathan Woithe; +Cc: netdev

Jonathan Woithe <jwoithe@atrad.com.au> :
[...]
> to mainline (in which case I'll keep watching out for it)?  Or is the
> out-of-tree workaround mentioned above considered to be the long term
> fix for those who encounter the problem?

It's a workaround. Nothing less, nothing more.

IIRC the ga311 irq signaling was a bit special. I almost surely broke
it at some point.

-- 
Ueimor

^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: r8169 regression: UDP packets dropped intermittantly
  2016-06-21 23:09                                       ` Francois Romieu
@ 2016-06-21 23:59                                         ` Jonathan Woithe
  2016-06-22 23:22                                           ` Francois Romieu
  0 siblings, 1 reply; 42+ messages in thread
From: Jonathan Woithe @ 2016-06-21 23:59 UTC (permalink / raw)
  To: Francois Romieu; +Cc: netdev

On Wed, Jun 22, 2016 at 01:09:57AM +0200, Francois Romieu wrote:
> Jonathan Woithe <jwoithe@atrad.com.au> :
> [...]
> > Is there any chance that this regression can be resolved?  It's been 6
> > months since the last contact was received from the list in relation to this
> > issue.  If the r8169 driver is to remain broken with respect to UDP traffic
> > then we will have no choice but to factor in a change in our standard
> > hardware for future systems.  Unfortunately this also means that dozens of
> > systems in the field cannot be upgraded to recent kernels since doing so
> > will trigger the regression.[1]
> 
> If I understood correctly (2015/11/21) you had a working system with a stock
> 4.2 or 4.3 kernel and the r8169.c from 1e874e041fc7c222cbd85b20c4406070be1f687a
> (i.e. da78dbff2e05630921c551dbbc70a4b7981a8fff "r8169: remove work from irq
> handler." parent) patched with the snippet below, right ?

Thanks for your response.

You are correct: that combination worked just fine.  From the response given
at the time it seemed that further follow-up work was on the way, so I was
puzzled when this didn't eventuate.

> If so, while not perfect, it should at least mitigate the "can't upgrade
> kernel" part.

Yes, it does do that.  I was under the impression that mainline could be
subsequently patched to fix the regression based on understandings gained
from the outcome of this workaround, but it seems that hasn't been possible
for some reason.  We would obviously prefer to ship unpatched kernels with
our systems since, among other things, it means we don't need to maintain an
out-of-tree patch (something which will only get more complex as internal
APIs evolve).  In addition, this approach does peg the r8169 driver in the
resulting system to 1e874e041fc7c222cbd85b20c4406070be1f68, which could have
implications for future debugging, other bug fixes and the like which come
later.

However, you are right in that with the cited patch we have a way to migrate
to something based on either 4.2 or 4.3 (at this point I haven't tested the
woraround combination with anything later).

> > If the decision has been made to leave the regression unfixed, please
> > let me know.
> 
> No such decision that I know of.

Does this mean that a patch to fix the regression will eventually be applied
to mainline (in which case I'll keep watching out for it)?  Or is the
out-of-tree workaround mentioned above considered to be the long term
fix for those who encounter the problem?

Regards
  jonathan

^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: r8169 regression: UDP packets dropped intermittantly
  2016-06-21  3:21                                     ` Jonathan Woithe
@ 2016-06-21 23:09                                       ` Francois Romieu
  2016-06-21 23:59                                         ` Jonathan Woithe
  0 siblings, 1 reply; 42+ messages in thread
From: Francois Romieu @ 2016-06-21 23:09 UTC (permalink / raw)
  To: Jonathan Woithe; +Cc: netdev

Jonathan Woithe <jwoithe@atrad.com.au> :
[...]
> Is there any chance that this regression can be resolved?  It's been 6
> months since the last contact was received from the list in relation to this
> issue.  If the r8169 driver is to remain broken with respect to UDP traffic
> then we will have no choice but to factor in a change in our standard
> hardware for future systems.  Unfortunately this also means that dozens of
> systems in the field cannot be upgraded to recent kernels since doing so
> will trigger the regression.[1]

If I understood correctly (2015/11/21) you had a working system with a stock
4.2 or 4.3 kernel and the r8169.c from 1e874e041fc7c222cbd85b20c4406070be1f687a
(i.e. da78dbff2e05630921c551dbbc70a4b7981a8fff "r8169: remove work from irq
handler." parent) patched with the snippet below, right ?

If so, while not perfect, it should at least mitigate the "can't upgrade
kernel" part.

--- r8169.c	2015-11-21 23:02:10.435275753 +0100
+++ r8169.c	2015-11-21 23:21:49.429554012 +0100
@@ -29,7 +29,6 @@
 #include <linux/pci-aspm.h>
 #include <linux/prefetch.h>
 
-#include <asm/system.h>
 #include <asm/io.h>
 #include <asm/irq.h>
 
@@ -1616,7 +1615,7 @@ static int rtl8169_set_features(struct n
 	else
 		tp->cp_cmd &= ~RxChkSum;
 
-	if (dev->features & NETIF_F_HW_VLAN_RX)
+	if (dev->features & NETIF_F_HW_VLAN_CTAG_RX)
 		tp->cp_cmd |= RxVlan;
 	else
 		tp->cp_cmd &= ~RxVlan;
@@ -1632,8 +1631,8 @@ static int rtl8169_set_features(struct n
 static inline u32 rtl8169_tx_vlan_tag(struct rtl8169_private *tp,
 				      struct sk_buff *skb)
 {
-	return (vlan_tx_tag_present(skb)) ?
-		TxVlanTag | swab16(vlan_tx_tag_get(skb)) : 0x00;
+	return (skb_vlan_tag_present(skb)) ?
+		TxVlanTag | swab16(skb_vlan_tag_get(skb)) : 0x00;
 }
 
 static void rtl8169_rx_vlan_tag(struct RxDesc *desc, struct sk_buff *skb)
@@ -1641,7 +1640,7 @@ static void rtl8169_rx_vlan_tag(struct R
 	u32 opts2 = le32_to_cpu(desc->opts2);
 
 	if (opts2 & RxVlanTag)
-		__vlan_hwaccel_put_tag(skb, swab16(opts2 & 0xffff));
+		__vlan_hwaccel_put_tag(skb, htons(ETH_P_8021Q), swab16(opts2 & 0xffff));
 
 	desc->opts2 = 0;
 }
@@ -3508,7 +3507,7 @@ static const struct net_device_ops rtl81
 
 };
 
-static void __devinit rtl_init_mdio_ops(struct rtl8169_private *tp)
+static void rtl_init_mdio_ops(struct rtl8169_private *tp)
 {
 	struct mdio_ops *ops = &tp->mdio_ops;
 
@@ -3725,7 +3724,7 @@ static void rtl_pll_power_up(struct rtl8
 	rtl_generic_op(tp, tp->pll_power_ops.up);
 }
 
-static void __devinit rtl_init_pll_power_ops(struct rtl8169_private *tp)
+static void rtl_init_pll_power_ops(struct rtl8169_private *tp)
 {
 	struct pll_power_ops *ops = &tp->pll_power_ops;
 
@@ -3905,7 +3904,7 @@ static void r8168b_1_hw_jumbo_disable(st
 	RTL_W8(Config4, RTL_R8(Config4) & ~(1 << 0));
 }
 
-static void __devinit rtl_init_jumbo_ops(struct rtl8169_private *tp)
+static void rtl_init_jumbo_ops(struct rtl8169_private *tp)
 {
 	struct jumbo_ops *ops = &tp->jumbo_ops;
 
@@ -3971,7 +3970,7 @@ static void rtl_hw_reset(struct rtl8169_
 	}
 }
 
-static int __devinit
+static int
 rtl8169_init_one(struct pci_dev *pdev, const struct pci_device_id *ent)
 {
 	const struct rtl_cfg_info *cfg = rtl_cfg_infos + ent->driver_data;
@@ -4137,7 +4136,7 @@ rtl8169_init_one(struct pci_dev *pdev, c
 		dev->dev_addr[i] = RTL_R8(MAC0 + i);
 	memcpy(dev->perm_addr, dev->dev_addr, dev->addr_len);
 
-	SET_ETHTOOL_OPS(dev, &rtl8169_ethtool_ops);
+	dev->ethtool_ops = &rtl8169_ethtool_ops;
 	dev->watchdog_timeo = RTL8169_TX_TIMEOUT;
 	dev->irq = pdev->irq;
 	dev->base_addr = (unsigned long) ioaddr;
@@ -4147,16 +4146,16 @@ rtl8169_init_one(struct pci_dev *pdev, c
 	/* don't enable SG, IP_CSUM and TSO by default - it might not work
 	 * properly for all devices */
 	dev->features |= NETIF_F_RXCSUM |
-		NETIF_F_HW_VLAN_TX | NETIF_F_HW_VLAN_RX;
+		NETIF_F_HW_VLAN_CTAG_TX | NETIF_F_HW_VLAN_CTAG_RX;
 
 	dev->hw_features = NETIF_F_SG | NETIF_F_IP_CSUM | NETIF_F_TSO |
-		NETIF_F_RXCSUM | NETIF_F_HW_VLAN_TX | NETIF_F_HW_VLAN_RX;
+		NETIF_F_RXCSUM | NETIF_F_HW_VLAN_CTAG_TX | NETIF_F_HW_VLAN_CTAG_RX;
 	dev->vlan_features = NETIF_F_SG | NETIF_F_IP_CSUM | NETIF_F_TSO |
 		NETIF_F_HIGHDMA;
 
 	if (tp->mac_version == RTL_GIGA_MAC_VER_05)
 		/* 8110SCd requires hardware Rx VLAN - disallow toggling */
-		dev->hw_features &= ~NETIF_F_HW_VLAN_RX;
+		dev->hw_features &= ~NETIF_F_HW_VLAN_CTAG_RX;
 
 	tp->intr_mask = 0xffff;
 	tp->hw_start = cfg->hw_start;
@@ -4217,7 +4216,7 @@ err_out_free_dev_1:
 	goto out;
 }
 
-static void __devexit rtl8169_remove_one(struct pci_dev *pdev)
+static void rtl8169_remove_one(struct pci_dev *pdev)
 {
 	struct net_device *dev = pci_get_drvdata(pdev);
 	struct rtl8169_private *tp = netdev_priv(dev);
@@ -6218,20 +6217,9 @@ static struct pci_driver rtl8169_pci_dri
 	.name		= MODULENAME,
 	.id_table	= rtl8169_pci_tbl,
 	.probe		= rtl8169_init_one,
-	.remove		= __devexit_p(rtl8169_remove_one),
+	.remove		= rtl8169_remove_one,
 	.shutdown	= rtl_shutdown,
 	.driver.pm	= RTL8169_PM_OPS,
 };
 
-static int __init rtl8169_init_module(void)
-{
-	return pci_register_driver(&rtl8169_pci_driver);
-}
-
-static void __exit rtl8169_cleanup_module(void)
-{
-	pci_unregister_driver(&rtl8169_pci_driver);
-}
-
-module_init(rtl8169_init_module);
-module_exit(rtl8169_cleanup_module);
+module_pci_driver(rtl8169_pci_driver);

-- 

[...]
> If the decision has been made to leave the regression unfixed, please let me
> know.

No such decision that I know of.

-- 
Ueimor

^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: r8169 regression: UDP packets dropped intermittantly
  2016-06-01  0:31                                   ` Jonathan Woithe
@ 2016-06-21  3:21                                     ` Jonathan Woithe
  2016-06-21 23:09                                       ` Francois Romieu
  0 siblings, 1 reply; 42+ messages in thread
From: Jonathan Woithe @ 2016-06-21  3:21 UTC (permalink / raw)
  To: netdev

Hi all

On Wed, Jun 01, 2016 at 10:01:23AM +0930, Jonathan Woithe wrote:
> On Wed, May 18, 2016 at 04:21:37PM +0930, Jonathan Woithe wrote:
> > On Thu, Apr 07, 2016 at 12:14:18PM +0930, Jonathan Woithe wrote:
> > > On Mon, Feb 08, 2016 at 01:03:19PM +1030, Jonathan Woithe wrote:
> > > > On Wed, Dec 02, 2015 at 12:58:52AM +0100, Francois Romieu wrote:
> > > > > Jonathan Woithe <jwoithe@atrad.com.au> :
> > > > > [...]
> > > > > > Any thoughts or progress at this stage?  Are there further tests you need me
> > > > > > to do ?
> > > > > 
> > > > > Yes but you should expect two more days without signal.
> > > > 
> > > > FYI I am now back from annual leave and linux.conf.au.  This means I am in
> > > > a position to test possible solutions to this problem once you are able to
> > > > make them available.
> > > 
> > > Has there been any further progress on this problem?  I still have access to
> > > the hardware and systems if further tests are required.
> > 
> > To assist in picking up this issue I thought I'd summarise where things are
> > at from my perspective.
> > 
> > The problem is that small low-speed UDP packets are being dropped by the
> > r8169-based network card in our systems.  Git bisect showed that the
> > regression started with commit da78dbff2e05630921c551dbbc70a4b7981a8fff.
> > :
> 
> FYI I have just tested the kernel.org 4.6 kernel and unsurprisingly it still
> exhibits the regression.

Is there any chance that this regression can be resolved?  It's been 6
months since the last contact was received from the list in relation to this
issue.  If the r8169 driver is to remain broken with respect to UDP traffic
then we will have no choice but to factor in a change in our standard
hardware for future systems.  Unfortunately this also means that dozens of
systems in the field cannot be upgraded to recent kernels since doing so
will trigger the regression.[1]

I would very much like to see the r8169 regression fixed and remain ready to
run more tests as needed.  I still have the test rig in place to recreate
the situation which triggers it, although it's likely the hardware will be
redeployed in the next few months.

If the decision has been made to leave the regression unfixed, please let me
know.  A least we will then understand the situation and we will stop waiting
for a solution which will never appear and start looking at changing our
standard hardware build.  For various reasons this is a significant
undertaking which we would rather not do and it has implications for ongoing
support of existing systems.  Obviously though if there's a bug in the r8169
kernel driver which will never be fixed then this is the approach we will
regrettably have to take.

Regards
  jonathan

[1] Exchanging network cards in existing systems just to avoid a kernel
regression is not a viable option because there are commercial software
licences node locked to the existing cards.  Finding a non-r8169 PCI card
for these systems may also prove to be a challenge.

^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: r8169 regression: UDP packets dropped intermittantly
  2016-05-18  6:51                                 ` Jonathan Woithe
@ 2016-06-01  0:31                                   ` Jonathan Woithe
  2016-06-21  3:21                                     ` Jonathan Woithe
  0 siblings, 1 reply; 42+ messages in thread
From: Jonathan Woithe @ 2016-06-01  0:31 UTC (permalink / raw)
  To: Francois Romieu; +Cc: netdev

On Wed, May 18, 2016 at 04:21:37PM +0930, Jonathan Woithe wrote:
> On Thu, Apr 07, 2016 at 12:14:18PM +0930, Jonathan Woithe wrote:
> > On Mon, Feb 08, 2016 at 01:03:19PM +1030, Jonathan Woithe wrote:
> > > On Wed, Dec 02, 2015 at 12:58:52AM +0100, Francois Romieu wrote:
> > > > Jonathan Woithe <jwoithe@atrad.com.au> :
> > > > [...]
> > > > > Any thoughts or progress at this stage?  Are there further tests you need me
> > > > > to do ?
> > > > 
> > > > Yes but you should expect two more days without signal.
> > > 
> > > FYI I am now back from annual leave and linux.conf.au.  This means I am in
> > > a position to test possible solutions to this problem once you are able to
> > > make them available.
> > 
> > Has there been any further progress on this problem?  I still have access to
> > the hardware and systems if further tests are required.
> 
> To assist in picking up this issue I thought I'd summarise where things are
> at from my perspective.
> 
> The problem is that small low-speed UDP packets are being dropped by the
> r8169-based network card in our systems.  Git bisect showed that the
> regression started with commit da78dbff2e05630921c551dbbc70a4b7981a8fff.
> :

FYI I have just tested the kernel.org 4.6 kernel and unsurprisingly it still
exhibits the regression.

Is there anything more I can do to move this forward?  I really do not want
to limit our systems to old kernels[1] just to avoid this regression, but
that is what I have to do while the regression remains.

Regards
  jonathan

[1] We are currently on 2.6.35.11 with some additional device driver patches
    we need for our hardware (which have subsequently been merged into
    mainline).  The regression is present in all kernels starting with 3.3
    which means the latest kernel we can use at present is 3.2.x.

^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: r8169 regression: UDP packets dropped intermittantly
  2016-05-17  6:52                               ` Jonathan Woithe
@ 2016-05-18  6:51                                 ` Jonathan Woithe
  2016-06-01  0:31                                   ` Jonathan Woithe
  0 siblings, 1 reply; 42+ messages in thread
From: Jonathan Woithe @ 2016-05-18  6:51 UTC (permalink / raw)
  To: Francois Romieu; +Cc: netdev

On Thu, Apr 07, 2016 at 12:14:18PM +0930, Jonathan Woithe wrote:
> On Mon, Feb 08, 2016 at 01:03:19PM +1030, Jonathan Woithe wrote:
> > On Wed, Dec 02, 2015 at 12:58:52AM +0100, Francois Romieu wrote:
> > > Jonathan Woithe <jwoithe@atrad.com.au> :
> > > [...]
> > > > Any thoughts or progress at this stage?  Are there further tests you need me
> > > > to do ?
> > > 
> > > Yes but you should expect two more days without signal.
> > 
> > FYI I am now back from annual leave and linux.conf.au.  This means I am in
> > a position to test possible solutions to this problem once you are able to
> > make them available.
> 
> Has there been any further progress on this problem?  I still have access to
> the hardware and systems if further tests are required.

To assist in picking up this issue I thought I'd summarise where things are
at from my perspective.

The problem is that small low-speed UDP packets are being dropped by the
r8169-based network card in our systems.  Git bisect showed that the
regression started with commit da78dbff2e05630921c551dbbc70a4b7981a8fff.

On 23 Nov 2015 Francois Romieu requested:

> If you can crash your system at will, you may apply the patch below to
> da78dbff2e05630921c551dbbc70a4b7981a8fff ("r8169: remove work from irq
> handler.") parent (aka 1e874e041fc7c222cbd85b20c4406070be1f687a) and
> build it in a current tree (say 4.2).

I did this (in a 4.3 tree) and the regression was resolved.  Following the
communuication on 2 Dec 2015 indicating there would be further news in a
couple of days, I haven't head anything else on the subject.

I am keen to resolve this problem as soon as possible as it will allow us to
move systems away from the ancient 2.6 kernel we are currently forced to use
as a result of this UDP regression (changing the network card for something
based on another chipset is not an option).  If there are further tests
needed to progress a fix please let me know as I still have an offline
system I can use for testing.

Regards
  jonathan

^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: r8169 regression: UDP packets dropped intermittantly
  2016-04-07  2:44                             ` Jonathan Woithe
@ 2016-05-17  6:52                               ` Jonathan Woithe
  2016-05-18  6:51                                 ` Jonathan Woithe
  0 siblings, 1 reply; 42+ messages in thread
From: Jonathan Woithe @ 2016-05-17  6:52 UTC (permalink / raw)
  To: Francois Romieu; +Cc: netdev

On Thu, Apr 07, 2016 at 12:14:18PM +0930, Jonathan Woithe wrote:
> On Mon, Feb 08, 2016 at 01:03:19PM +1030, Jonathan Woithe wrote:
> > On Wed, Dec 02, 2015 at 12:58:52AM +0100, Francois Romieu wrote:
> > > Jonathan Woithe <jwoithe@atrad.com.au> :
> > > [...]
> > > > Any thoughts or progress at this stage?  Are there further tests you need me
> > > > to do ?
> > > 
> > > Yes but you should expect two more days without signal.
> > 
> > FYI I am now back from annual leave and linux.conf.au.  This means I am in
> > a position to test possible solutions to this problem once you are able to
> > make them available.
> 
> Has there been any further progress on this problem?  I still have access to
> the hardware and systems if further tests are required.

Any further progress?

Regards
  jonathan

^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: r8169 regression: UDP packets dropped intermittantly
  2016-02-08  2:33                           ` Jonathan Woithe
@ 2016-04-07  2:44                             ` Jonathan Woithe
  2016-05-17  6:52                               ` Jonathan Woithe
  0 siblings, 1 reply; 42+ messages in thread
From: Jonathan Woithe @ 2016-04-07  2:44 UTC (permalink / raw)
  To: Francois Romieu; +Cc: netdev

On Mon, Feb 08, 2016 at 01:03:19PM +1030, Jonathan Woithe wrote:
> On Wed, Dec 02, 2015 at 12:58:52AM +0100, Francois Romieu wrote:
> > Jonathan Woithe <jwoithe@atrad.com.au> :
> > [...]
> > > Any thoughts or progress at this stage?  Are there further tests you need me
> > > to do ?
> > 
> > Yes but you should expect two more days without signal.
> 
> FYI I am now back from annual leave and linux.conf.au.  This means I am in
> a position to test possible solutions to this problem once you are able to
> make them available.

Has there been any further progress on this problem?  I still have access to
the hardware and systems if further tests are required.

Regards
  jonathan

^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: r8169 regression: UDP packets dropped intermittantly
  2015-12-01 23:58                         ` Francois Romieu
@ 2016-02-08  2:33                           ` Jonathan Woithe
  2016-04-07  2:44                             ` Jonathan Woithe
  0 siblings, 1 reply; 42+ messages in thread
From: Jonathan Woithe @ 2016-02-08  2:33 UTC (permalink / raw)
  To: Francois Romieu; +Cc: netdev

Hi Francois

On Wed, Dec 02, 2015 at 12:58:52AM +0100, Francois Romieu wrote:
> Jonathan Woithe <jwoithe@atrad.com.au> :
> [...]
> > Any thoughts or progress at this stage?  Are there further tests you need me
> > to do ?
> 
> Yes but you should expect two more days without signal.

FYI I am now back from annual leave and linux.conf.au.  This means I am in a
position to test possible solutions to this problem once you are able to
make them available.

Regards
  jonathan

^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: r8169 regression: UDP packets dropped intermittantly
  2015-11-30  6:42                       ` Jonathan Woithe
@ 2015-12-01 23:58                         ` Francois Romieu
  2016-02-08  2:33                           ` Jonathan Woithe
  0 siblings, 1 reply; 42+ messages in thread
From: Francois Romieu @ 2015-12-01 23:58 UTC (permalink / raw)
  To: Jonathan Woithe; +Cc: netdev

Jonathan Woithe <jwoithe@atrad.com.au> :
[...]
> Any thoughts or progress at this stage?  Are there further tests you need me
> to do ?

Yes but you should expect two more days without signal.

-- 
Ueimor

^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: r8169 regression: UDP packets dropped intermittantly
  2015-11-22 23:02                     ` Francois Romieu
  2015-11-23  0:07                       ` Jonathan Woithe
@ 2015-11-30  6:42                       ` Jonathan Woithe
  2015-12-01 23:58                         ` Francois Romieu
  1 sibling, 1 reply; 42+ messages in thread
From: Jonathan Woithe @ 2015-11-30  6:42 UTC (permalink / raw)
  To: Francois Romieu; +Cc: netdev

On Mon, Nov 23, 2015 at 12:02:44AM +0100, Francois Romieu wrote:
> Jonathan Woithe <jwoithe@atrad.com.au> :
> [...]
> > I'm a little confused though as to which patch you want me to apply.  There
> > was an inline patch against r8169.c in your message, and then there was
> > another patch to r8169.c in the form of an attachment.  Both patches removed
> > the include of asm/system.h but the rest of the content differs.  Did you
> > want each tried in turn?  Apologies if I'm missing something obvious.
> 
> Use the inlined one. I forgot to remove the 2.6.35.11 based attachment.

Any thoughts or progress at this stage?  Are there further tests you need me
to do?  To recap, the inlined patch against 4.3 resolved the problem.

Regards
  jonathan

^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: r8169 regression: UDP packets dropped intermittantly
  2015-11-20 22:45               ` Francois Romieu
  2015-11-21 22:36                 ` Francois Romieu
@ 2015-11-23  0:16                 ` Jonathan Woithe
  1 sibling, 0 replies; 42+ messages in thread
From: Jonathan Woithe @ 2015-11-23  0:16 UTC (permalink / raw)
  To: Francois Romieu; +Cc: netdev

On Fri, Nov 20, 2015 at 11:45:34PM +0100, Francois Romieu wrote:
> The hardware stats are not exactly clear. Is the initial Tx - Rx packet
> difference (6) at the hardware stats level expected ?

Sorry, I missed this question earlier.  When speaking to the external
device, each UDP command packet that's sent should be balanced with a
response.  However, if a UDP command is sent to a device that's not on (or
there's a typo with the address) then obviously that transmitted packet will
never be responded to.  I expect something like this could easily have
happened during the session in which I ran that test for you, so in that
case would be explainable.

I note that the difference did increase to 7 at the 1447985726.272550987 
mark.  Since this was during the test I can't quite explain that one, unless
something else on the system happened to send a UDP packet out onto that
interface which was not responded to.

Regards
  jonathan

^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: r8169 regression: UDP packets dropped intermittantly
  2015-11-22 23:02                     ` Francois Romieu
@ 2015-11-23  0:07                       ` Jonathan Woithe
  2015-11-30  6:42                       ` Jonathan Woithe
  1 sibling, 0 replies; 42+ messages in thread
From: Jonathan Woithe @ 2015-11-23  0:07 UTC (permalink / raw)
  To: Francois Romieu; +Cc: netdev

On Mon, Nov 23, 2015 at 12:02:44AM +0100, Francois Romieu wrote:
> Jonathan Woithe <jwoithe@atrad.com.au> :
> [...]
> > I'm a little confused though as to which patch you want me to apply.  There
> > was an inline patch against r8169.c in your message, and then there was
> > another patch to r8169.c in the form of an attachment.  Both patches removed
> > the include of asm/system.h but the rest of the content differs.  Did you
> > want each tried in turn?  Apologies if I'm missing something obvious.
> 
> Use the inlined one. I forgot to remove the 2.6.35.11 based attachment.

Ok, no problem.

That's done now and it appears to work.  That is, I am not seeing any of the
erroneous UDP packet delivery problems noted previously and therefore the
communication with the external device is working normally.

I dropped the patched r8169.c into a 4.3.0 kernel since that's what I
already had on the system.

Regards
  jonathan

^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: r8169 regression: UDP packets dropped intermittantly
  2015-11-22 22:50                   ` Jonathan Woithe
@ 2015-11-22 23:02                     ` Francois Romieu
  2015-11-23  0:07                       ` Jonathan Woithe
  2015-11-30  6:42                       ` Jonathan Woithe
  0 siblings, 2 replies; 42+ messages in thread
From: Francois Romieu @ 2015-11-22 23:02 UTC (permalink / raw)
  To: Jonathan Woithe; +Cc: netdev

Jonathan Woithe <jwoithe@atrad.com.au> :
[...]
> I'm a little confused though as to which patch you want me to apply.  There
> was an inline patch against r8169.c in your message, and then there was
> another patch to r8169.c in the form of an attachment.  Both patches removed
> the include of asm/system.h but the rest of the content differs.  Did you
> want each tried in turn?  Apologies if I'm missing something obvious.

Use the inlined one. I forgot to remove the 2.6.35.11 based attachment.

-- 
Ueimor

^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: r8169 regression: UDP packets dropped intermittantly
  2015-11-21 22:36                 ` Francois Romieu
@ 2015-11-22 22:50                   ` Jonathan Woithe
  2015-11-22 23:02                     ` Francois Romieu
  0 siblings, 1 reply; 42+ messages in thread
From: Jonathan Woithe @ 2015-11-22 22:50 UTC (permalink / raw)
  To: Francois Romieu; +Cc: netdev

On Sat, Nov 21, 2015 at 11:36:27PM +0100, Francois Romieu wrote:
> Francois Romieu <romieu@fr.zoreil.com> :
> [...]
> 
> If you can crash your system at will, you may apply the patch below to
> da78dbff2e05630921c551dbbc70a4b7981a8fff ("r8169: remove work from irq
> handler.") parent (aka 1e874e041fc7c222cbd85b20c4406070be1f687a) and
> build it in a current tree (say 4.2).

No problem crashing the machine at present.  It is an internal test machine
which I am using to chase this issue at present.

As I understand the above you would like me to get r8169.c from
1e874e041fc7c222cbd85b20c4406070be1f687a, apply the patch, drop it into
kernel 4.2 and run with that.  That's fine.

I'm a little confused though as to which patch you want me to apply.  There
was an inline patch against r8169.c in your message, and then there was
another patch to r8169.c in the form of an attachment.  Both patches removed
the include of asm/system.h but the rest of the content differs.  Did you
want each tried in turn?  Apologies if I'm missing something obvious.

> How much memory and CPU may I rely on in your test computer ?

Since the problem can be triggered without me having to run the full data
acquisition system, the machine is basically unloaded (it doesn't take many
resources to send/receive 6 udp packets at a time :-) ).  The CPU is an
i7-860 CPU at 2.8 GHz, with 4 GB of RAM fitted and 8 GB swap.  The kernel
and userspace are 32-bit, so we have the usual 3 GB per-process memory
limit.

Regards
  jonathan

^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: r8169 regression: UDP packets dropped intermittantly
  2015-11-20 22:45               ` Francois Romieu
@ 2015-11-21 22:36                 ` Francois Romieu
  2015-11-22 22:50                   ` Jonathan Woithe
  2015-11-23  0:16                 ` Jonathan Woithe
  1 sibling, 1 reply; 42+ messages in thread
From: Francois Romieu @ 2015-11-21 22:36 UTC (permalink / raw)
  To: Jonathan Woithe; +Cc: netdev

[-- Attachment #1: Type: text/plain, Size: 4929 bytes --]

Francois Romieu <romieu@fr.zoreil.com> :
[...]

If you can crash your system at will, you may apply the patch below to
da78dbff2e05630921c551dbbc70a4b7981a8fff ("r8169: remove work from irq
handler.") parent (aka 1e874e041fc7c222cbd85b20c4406070be1f687a) and
build it in a current tree (say 4.2).

If it works it will be easier for me to compare behaviors in current
tree (especially as none of my current test boxes wants to boot with
my own ga311).

How much memory and CPU may I rely on in your test computer ?

--- r8169.c	2015-11-21 23:02:10.435275753 +0100
+++ r8169.c	2015-11-21 23:21:49.429554012 +0100
@@ -29,7 +29,6 @@
 #include <linux/pci-aspm.h>
 #include <linux/prefetch.h>
 
-#include <asm/system.h>
 #include <asm/io.h>
 #include <asm/irq.h>
 
@@ -1616,7 +1615,7 @@ static int rtl8169_set_features(struct n
 	else
 		tp->cp_cmd &= ~RxChkSum;
 
-	if (dev->features & NETIF_F_HW_VLAN_RX)
+	if (dev->features & NETIF_F_HW_VLAN_CTAG_RX)
 		tp->cp_cmd |= RxVlan;
 	else
 		tp->cp_cmd &= ~RxVlan;
@@ -1632,8 +1631,8 @@ static int rtl8169_set_features(struct n
 static inline u32 rtl8169_tx_vlan_tag(struct rtl8169_private *tp,
 				      struct sk_buff *skb)
 {
-	return (vlan_tx_tag_present(skb)) ?
-		TxVlanTag | swab16(vlan_tx_tag_get(skb)) : 0x00;
+	return (skb_vlan_tag_present(skb)) ?
+		TxVlanTag | swab16(skb_vlan_tag_get(skb)) : 0x00;
 }
 
 static void rtl8169_rx_vlan_tag(struct RxDesc *desc, struct sk_buff *skb)
@@ -1641,7 +1640,7 @@ static void rtl8169_rx_vlan_tag(struct R
 	u32 opts2 = le32_to_cpu(desc->opts2);
 
 	if (opts2 & RxVlanTag)
-		__vlan_hwaccel_put_tag(skb, swab16(opts2 & 0xffff));
+		__vlan_hwaccel_put_tag(skb, htons(ETH_P_8021Q), swab16(opts2 & 0xffff));
 
 	desc->opts2 = 0;
 }
@@ -3508,7 +3507,7 @@ static const struct net_device_ops rtl81
 
 };
 
-static void __devinit rtl_init_mdio_ops(struct rtl8169_private *tp)
+static void rtl_init_mdio_ops(struct rtl8169_private *tp)
 {
 	struct mdio_ops *ops = &tp->mdio_ops;
 
@@ -3725,7 +3724,7 @@ static void rtl_pll_power_up(struct rtl8
 	rtl_generic_op(tp, tp->pll_power_ops.up);
 }
 
-static void __devinit rtl_init_pll_power_ops(struct rtl8169_private *tp)
+static void rtl_init_pll_power_ops(struct rtl8169_private *tp)
 {
 	struct pll_power_ops *ops = &tp->pll_power_ops;
 
@@ -3905,7 +3904,7 @@ static void r8168b_1_hw_jumbo_disable(st
 	RTL_W8(Config4, RTL_R8(Config4) & ~(1 << 0));
 }
 
-static void __devinit rtl_init_jumbo_ops(struct rtl8169_private *tp)
+static void rtl_init_jumbo_ops(struct rtl8169_private *tp)
 {
 	struct jumbo_ops *ops = &tp->jumbo_ops;
 
@@ -3971,7 +3970,7 @@ static void rtl_hw_reset(struct rtl8169_
 	}
 }
 
-static int __devinit
+static int
 rtl8169_init_one(struct pci_dev *pdev, const struct pci_device_id *ent)
 {
 	const struct rtl_cfg_info *cfg = rtl_cfg_infos + ent->driver_data;
@@ -4137,7 +4136,7 @@ rtl8169_init_one(struct pci_dev *pdev, c
 		dev->dev_addr[i] = RTL_R8(MAC0 + i);
 	memcpy(dev->perm_addr, dev->dev_addr, dev->addr_len);
 
-	SET_ETHTOOL_OPS(dev, &rtl8169_ethtool_ops);
+	dev->ethtool_ops = &rtl8169_ethtool_ops;
 	dev->watchdog_timeo = RTL8169_TX_TIMEOUT;
 	dev->irq = pdev->irq;
 	dev->base_addr = (unsigned long) ioaddr;
@@ -4147,16 +4146,16 @@ rtl8169_init_one(struct pci_dev *pdev, c
 	/* don't enable SG, IP_CSUM and TSO by default - it might not work
 	 * properly for all devices */
 	dev->features |= NETIF_F_RXCSUM |
-		NETIF_F_HW_VLAN_TX | NETIF_F_HW_VLAN_RX;
+		NETIF_F_HW_VLAN_CTAG_TX | NETIF_F_HW_VLAN_CTAG_RX;
 
 	dev->hw_features = NETIF_F_SG | NETIF_F_IP_CSUM | NETIF_F_TSO |
-		NETIF_F_RXCSUM | NETIF_F_HW_VLAN_TX | NETIF_F_HW_VLAN_RX;
+		NETIF_F_RXCSUM | NETIF_F_HW_VLAN_CTAG_TX | NETIF_F_HW_VLAN_CTAG_RX;
 	dev->vlan_features = NETIF_F_SG | NETIF_F_IP_CSUM | NETIF_F_TSO |
 		NETIF_F_HIGHDMA;
 
 	if (tp->mac_version == RTL_GIGA_MAC_VER_05)
 		/* 8110SCd requires hardware Rx VLAN - disallow toggling */
-		dev->hw_features &= ~NETIF_F_HW_VLAN_RX;
+		dev->hw_features &= ~NETIF_F_HW_VLAN_CTAG_RX;
 
 	tp->intr_mask = 0xffff;
 	tp->hw_start = cfg->hw_start;
@@ -4217,7 +4216,7 @@ err_out_free_dev_1:
 	goto out;
 }
 
-static void __devexit rtl8169_remove_one(struct pci_dev *pdev)
+static void rtl8169_remove_one(struct pci_dev *pdev)
 {
 	struct net_device *dev = pci_get_drvdata(pdev);
 	struct rtl8169_private *tp = netdev_priv(dev);
@@ -6218,20 +6217,9 @@ static struct pci_driver rtl8169_pci_dri
 	.name		= MODULENAME,
 	.id_table	= rtl8169_pci_tbl,
 	.probe		= rtl8169_init_one,
-	.remove		= __devexit_p(rtl8169_remove_one),
+	.remove		= rtl8169_remove_one,
 	.shutdown	= rtl_shutdown,
 	.driver.pm	= RTL8169_PM_OPS,
 };
 
-static int __init rtl8169_init_module(void)
-{
-	return pci_register_driver(&rtl8169_pci_driver);
-}
-
-static void __exit rtl8169_cleanup_module(void)
-{
-	pci_unregister_driver(&rtl8169_pci_driver);
-}
-
-module_init(rtl8169_init_module);
-module_exit(rtl8169_cleanup_module);
+module_pci_driver(rtl8169_pci_driver);

-- 
Ueimor

[-- Attachment #2: r8169.patch --]
[-- Type: text/plain, Size: 3780 bytes --]

--- r8169.c	2015-11-21 22:27:27.530227533 +0100
+++ r8169.c	2015-11-21 22:52:53.178319309 +0100
@@ -26,7 +26,6 @@
 #include <linux/pm_runtime.h>
 #include <linux/pci-aspm.h>
 
-#include <asm/system.h>
 #include <asm/io.h>
 #include <asm/irq.h>
 
@@ -1011,34 +1010,6 @@ static int rtl8169_set_settings(struct n
 	return ret;
 }
 
-static u32 rtl8169_get_rx_csum(struct net_device *dev)
-{
-	struct rtl8169_private *tp = netdev_priv(dev);
-
-	return tp->cp_cmd & RxChkSum;
-}
-
-static int rtl8169_set_rx_csum(struct net_device *dev, u32 data)
-{
-	struct rtl8169_private *tp = netdev_priv(dev);
-	void __iomem *ioaddr = tp->mmio_addr;
-	unsigned long flags;
-
-	spin_lock_irqsave(&tp->lock, flags);
-
-	if (data)
-		tp->cp_cmd |= RxChkSum;
-	else
-		tp->cp_cmd &= ~RxChkSum;
-
-	RTL_W16(CPlusCmd, tp->cp_cmd);
-	RTL_R16(CPlusCmd);
-
-	spin_unlock_irqrestore(&tp->lock, flags);
-
-	return 0;
-}
-
 #ifdef CONFIG_R8169_VLAN
 
 static inline u32 rtl8169_tx_vlan_tag(struct rtl8169_private *tp,
@@ -1278,11 +1249,6 @@ static const struct ethtool_ops rtl8169_
 	.set_settings		= rtl8169_set_settings,
 	.get_msglevel		= rtl8169_get_msglevel,
 	.set_msglevel		= rtl8169_set_msglevel,
-	.get_rx_csum		= rtl8169_get_rx_csum,
-	.set_rx_csum		= rtl8169_set_rx_csum,
-	.set_tx_csum		= ethtool_op_set_tx_csum,
-	.set_sg			= ethtool_op_set_sg,
-	.set_tso		= ethtool_op_set_tso,
 	.get_regs		= rtl8169_get_regs,
 	.get_wol		= rtl8169_get_wol,
 	.set_wol		= rtl8169_set_wol,
@@ -2991,7 +2957,7 @@ static const struct net_device_ops rtl81
 	.ndo_change_mtu		= rtl8169_change_mtu,
 	.ndo_set_mac_address	= rtl_set_mac_address,
 	.ndo_do_ioctl		= rtl8169_ioctl,
-	.ndo_set_multicast_list	= rtl_set_rx_mode,
+	.ndo_set_rx_mode        = rtl_set_rx_mode,
 #ifdef CONFIG_R8169_VLAN
 	.ndo_vlan_rx_register	= rtl8169_vlan_rx_register,
 #endif
@@ -3001,7 +2967,7 @@ static const struct net_device_ops rtl81
 
 };
 
-static int __devinit
+static int
 rtl8169_init_one(struct pci_dev *pdev, const struct pci_device_id *ent)
 {
 	const struct rtl_cfg_info *cfg = rtl_cfg_infos + ent->driver_data;
@@ -3182,7 +3148,7 @@ rtl8169_init_one(struct pci_dev *pdev, c
 		dev->dev_addr[i] = RTL_R8(MAC0 + i);
 	memcpy(dev->perm_addr, dev->dev_addr, dev->addr_len);
 
-	SET_ETHTOOL_OPS(dev, &rtl8169_ethtool_ops);
+	dev->ethtool_ops = &rtl8169_ethtool_ops;
 	dev->watchdog_timeo = RTL8169_TX_TIMEOUT;
 	dev->irq = pdev->irq;
 	dev->base_addr = (unsigned long) ioaddr;
@@ -3247,7 +3213,7 @@ err_out_free_dev_1:
 	goto out;
 }
 
-static void __devexit rtl8169_remove_one(struct pci_dev *pdev)
+static void rtl8169_remove_one(struct pci_dev *pdev)
 {
 	struct net_device *dev = pci_get_drvdata(pdev);
 	struct rtl8169_private *tp = netdev_priv(dev);
@@ -3322,8 +3288,6 @@ static int rtl8169_open(struct net_devic
 	if (retval < 0)
 		goto err_free_rx_1;
 
-	INIT_DELAYED_WORK(&tp->task, NULL);
-
 	smp_mb();
 
 	retval = request_irq(dev->irq, rtl8169_interrupt,
@@ -4149,7 +4113,7 @@ static void rtl8169_schedule_work(struct
 {
 	struct rtl8169_private *tp = netdev_priv(dev);
 
-	PREPARE_DELAYED_WORK(&tp->task, task);
+	INIT_WORK(&tp->task.work, task);
 	schedule_delayed_work(&tp->task, 4);
 }
 
@@ -4257,7 +4221,7 @@ static int rtl8169_xmit_frags(struct rtl
 
 		txd = tp->TxDescArray + entry;
 		len = frag->size;
-		addr = ((void *) page_address(frag->page)) + frag->page_offset;
+		addr = skb_frag_address(frag);
 		mapping = pci_map_single(tp->pci_dev, addr, len, PCI_DMA_TODEVICE);
 
 		/* anti gcc 2.95.3 bugware (sic) */
@@ -5019,7 +4983,7 @@ static struct pci_driver rtl8169_pci_dri
 	.name		= MODULENAME,
 	.id_table	= rtl8169_pci_tbl,
 	.probe		= rtl8169_init_one,
-	.remove		= __devexit_p(rtl8169_remove_one),
+	.remove		= rtl8169_remove_one,
 	.shutdown	= rtl_shutdown,
 	.driver.pm	= RTL8169_PM_OPS,
 };

^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: r8169 regression: UDP packets dropped intermittantly
  2015-11-20  2:46             ` Jonathan Woithe
@ 2015-11-20 22:45               ` Francois Romieu
  2015-11-21 22:36                 ` Francois Romieu
  2015-11-23  0:16                 ` Jonathan Woithe
  0 siblings, 2 replies; 42+ messages in thread
From: Francois Romieu @ 2015-11-20 22:45 UTC (permalink / raw)
  To: Jonathan Woithe; +Cc: netdev

Jonathan Woithe <jwoithe@atrad.com.au> :
[...]
> This indicates to me that in the fault condition, packets coming into the PC
> are being held by the lower layers (perhaps even the hardware) for a very
> long time, and in fact only seem to be released once a packet is queued for
> transmission.
> 
> I then ran a test using the capture script you suggested.  For this test I
> arranged to only send the C-A packet sequence repeatedly until an error
> condition was detected.  Approximate times of the sequence's start time and
> the outcome of the sequence were:
> 
>   1447985720: C response received, A response received
>   1447985722: C response received, A response was not seen(*)
>   1447985739: C response received, A response received
> 
> (*) Based on the earlier test, I expect it was delivered to the OS layer at
> the start of the next test, when the "C" packet was sent.

The register dumps all look the same. Nothing to see here.

The hardware stats are not exactly clear. Is the initial Tx - Rx packet
difference (6) at the hardware stats level expected ?

                            ! late Tx burp
  272 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-++-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      +         +         +         +        +         ***************     +
  270 +Tx *******+....................................*..................+-+
      |Rx #######         :         :        :        *:         :         |
      |         :         : ************************** :         :         |
  268 +-+..................*.............................................+-+
      |         :     *****         :        :         :         :         |
  266 +-+............*...................................................+-+
      |         : ***     :         :        :         :         :         |
  264 +-+........*.....................................###############...+-+
      |         :*        :         :        :        #:         :         |
      ***********         :         :        :        #:         :         |
  262 +-+..................###########################...................+-+
      |         :     #####         :        :         :         :         |
  260 +-+............#...................................................+-+
      |         : ###     :         :        :         :         :         |
      |         :#        :         :        :         :         :         |
  258 +-+........#.......................................................+-+
      ###########         +         +        +         +         +         +
  256 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-++-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    15:15     15:20     15:25     15:30    15:35     15:40     15:45     15:50


                     Tx  Rx
1447985715.230668398 263 257
1447985716.234480645 263 257
1447985717.238563603 263 257
1447985718.242506424 263 257
1447985719.246230757 263 257
1447985720.249900368 263 257
1447985721.253727549 265 259
1447985722.257578916 265 259
1447985723.261457073 267 261
1447985724.264998842 267 261
1447985725.268928099 267 261
1447985726.272550987 269 262
1447985727.277086547 269 262
1447985728.280609761 269 262
1447985729.284707715 269 262
1447985730.288299143 269 262
1447985731.292144772 269 262
1447985732.295803667 269 262
1447985733.299568961 269 262
1447985734.303204633 269 262
1447985735.307015920 269 262
1447985736.310640604 269 262
1447985737.314153757 269 262
1447985738.318170685 269 262
1447985739.322196876 269 262
1447985740.325972075 271 264
1447985741.330118113 271 264
1447985742.334009017 271 264
1447985743.337646906 271 264
1447985744.341710301 271 264
1447985745.345781415 271 264
1447985746.349656916 271 264
1447985747.353606904 271 264

-- 
Ueimor

^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: r8169 regression: UDP packets dropped intermittantly
  2015-11-19  0:56           ` Francois Romieu
  2015-11-19  6:57             ` Jonathan Woithe
@ 2015-11-20  2:46             ` Jonathan Woithe
  2015-11-20 22:45               ` Francois Romieu
  1 sibling, 1 reply; 42+ messages in thread
From: Jonathan Woithe @ 2015-11-20  2:46 UTC (permalink / raw)
  To: Francois Romieu; +Cc: netdev

On Thu, Nov 19, 2015 at 01:56:08AM +0100, Francois Romieu wrote:
> Jonathan Woithe <jwoithe@atrad.com.au> :
> [...]
> > I could try.  What's the most reliable way to determine this?  Use regular
> > ethtool queries about the time of the failures?
> 
> If you are neither space nor cpu constrained:
> 
> while : ; do
> 	echo $(date +%s.%N):$(ethtool -d eth0 raw on | base64 -w 0):$(ethtool -S eth0 | base64 -w 0)
> 	sleep 1
> done > gloubi
> 
> Expect 2.5~3Mo per hour.

I have some results.  I have also determined that the observed misbehaviour
under 4.3 does not require that the high-speed UDP data transfer ever
happen.  Following a fresh boot I am able to reproduce the problem within a
minute using only the low speed configuration commands.

Before running your test I thought I'd try to capture what was going on
using tcpdump, if only to confirm what I've previously claimed.  The
following trace resulted when sending a packet sequence of C-A-B-A to the
hardware.  In response to each packet a reply is sent by the hardware. 
After several successful sequences, one occured in which the response to the
final "A" packet was never seen.  Explanatory comments from me have been
added next to "#" characters.

# Send packet "C":
12:00:39.027468 IP hostpc.57156 > unit-0.radarnet.49492: UDP,
length 6
        0x0000:  4500 0022 6b78 4000 4011 4432 ac10 0100  E.."kx@.@.D2....
        0x0010:  ac10 3200 df44 c154 000e d415 0000 0000  ..2..D.T........
        0x0020:  0002                                     ..
# Response to packet "C":
12:00:39.027514 IP unit-0.radarnet.49492 > hostpc.57156: UDP,
length 10
        0x0000:  4500 002a 0000 0000 8011 afa2 ac10 3200  E..*..........2.
        0x0010:  ac10 0100 c154 df44 0012 0000 0000 0304  .....T.D........
        0x0020:  0002 7803 0000 0000 0000 0000 0000       ..x...........
# Send packet "A":
12:00:39.027559 IP hostpc.57156 > unit-0.radarnet.49492: UDP,
length 6
        0x0000:  4500 0022 6b79 4000 4011 4431 ac10 0100  E.."ky@.@.D1....
        0x0010:  ac10 3200 df44 c154 000e d417 0000 0000  ..2..D.T........
        0x0020:  0000                                     ..
# Response to packet "A":
12:00:39.027598 IP unit-0.radarnet.49492 > hostpc.57156: UDP,
length 10
        0x0000:  4500 002a 0000 0000 8011 afa2 ac10 3200  E..*..........2.
        0x0010:  ac10 0100 c154 df44 0012 0000 0000 0101  .....T.D........
        0x0020:  0000 0000 0000 0000 0000 0000 0000       ..............
# Send packet "B":
12:00:39.027628 IP hostpc.57156 > unit-0.radarnet.49492: UDP,
length 6
        0x0000:  4500 0022 6b7a 4000 4011 4430 ac10 0100  E.."kz@.@.D0....
        0x0010:  ac10 3200 df44 c154 000e d416 0000 0000  ..2..D.T........
        0x0020:  0001                                     ..
# Response to packet "B":
12:00:39.027665 IP unit-0.radarnet.49492 > hostpc.57156: UDP,
length 10
        0x0000:  4500 002a 0000 0000 8011 afa2 ac10 3200  E..*..........2.
        0x0010:  ac10 0100 c154 df44 0012 0000 0000 0202  .....T.D........
        0x0020:  0000 0000 0000 0000 0000 0000 0000       ..............
# Send packet "A":
12:00:39.027732 IP hostpc.57156 > unit-0.radarnet.49492: UDP,
length 6
        0x0000:  4500 0022 6b7b 4000 4011 442f ac10 0100  E.."k{@.@.D/....
        0x0010:  ac10 3200 df44 c154 000e d417 0000 0000  ..2..D.T........
        0x0020:  0000                                     ..
# tcpdump did not see any further packets in 20 seconds before it was
# stopped.

A couple of minutes later I sent a the same C-A-B-A packet sequence. 
Tcpdump captured the following.

# Sending packet "C":
12:02:42.203619 IP hostpc.37403 > unit-0.radarnet.49492: UDP,
length 6
        0x0000:  4500 0022 a765 4000 4011 0845 ac10 0100  E..".e@.@..E....
        0x0010:  ac10 3200 921b c154 000e 213f 0000 0000  ..2....T..!?....
        0x0020:  0002                                     ..
# This is actually the response packet to packet "A" that we were waiting
# for at the end of the previous test:
12:02:42.203716 IP unit-0.radarnet.49492 > hostpc.57156: UDP,
length 10
        0x0000:  4500 002a 0000 0000 8011 afa2 ac10 3200  E..*..........2.
        0x0010:  ac10 0100 c154 df44 0012 0000 0000 0101  .....T.D........
        0x0020:  0000 0000 0000 0000 0000 0000 0000       ..............
# The previous response is rejected since the listener on port 57156 is
# no longer active (it was used by the previous test):
12:02:42.203747 IP hostpc > unit-0.radarnet: ICMP hostpc udp port 57156 
unreachable, length 46
        0x0000:  45c0 0042 3ff8 0000 4001 aee2 ac10 0100  E..B?...@.......
        0x0010:  ac10 3200 0303 5b50 0000 0000 4500 002a  ..2...[P....E..*
        0x0020:  0000 0000 8011 afa2 ac10 3200 ac10 0100  ..........2.....
        0x0030:  c154 df44 0012 0000 0000 0101 0000 0000  .T.D............
        0x0040:  0000                                     ..
# Response to packet "C":
12:02:42.203753 IP unit-0.radarnet.49492 > hostpc.37403: UDP,
length 10
        0x0000:  4500 002a 0000 0000 8011 afa2 ac10 3200  E..*..........2.
        0x0010:  ac10 0100 c154 921b 0012 0000 0000 0304  .....T..........
        0x0020:  0002 7803 0000 0000 0000 0000 0000       ..x...........
# Send packet "A":
12:02:42.203808 IP hostpc.37403 > unit-0.radarnet.49492: UDP,
length 6
        0x0000:  4500 0022 a766 4000 4011 0844 ac10 0100  E..".f@.@..D....
        0x0010:  ac10 3200 921b c154 000e 2141 0000 0000  ..2....T..!A....
        0x0020:  0000                                     ..
# Packet "A" response:
12:02:42.203848 IP unit-0.radarnet.49492 > hostpc.37403: UDP,
length 10
        0x0000:  4500 002a 0000 0000 8011 afa2 ac10 3200  E..*..........2.
        0x0010:  ac10 0100 c154 921b 0012 0000 0000 0101  .....T..........
        0x0020:  0000 0000 0000 0000 0000 0000 0000       ..............
# Send packet "B":
12:02:42.203906 IP hostpc.37403 > unit-0.radarnet.49492: UDP,
length 6
        0x0000:  4500 0022 a767 4000 4011 0843 ac10 0100  E..".g@.@..C....
        0x0010:  ac10 3200 921b c154 000e 2140 0000 0000  ..2....T..!@....
        0x0020:  0001                                     ..
# Packet "B" response:
12:02:42.203943 IP unit-0.radarnet.49492 > hostpc.37403: UDP,
length 10
        0x0000:  4500 002a 0000 0000 8011 afa2 ac10 3200  E..*..........2.
        0x0010:  ac10 0100 c154 921b 0012 0000 0000 0202  .....T..........
        0x0020:  0000 0000 0000 0000 0000 0000 0000       ..............
# Send Packet "A":
12:02:42.204003 IP hostpc.37403 > unit-0.radarnet.49492: UDP,
length 6
        0x0000:  4500 0022 a768 4000 4011 0842 ac10 0100  E..".h@.@..B....
        0x0010:  ac10 3200 921b c154 000e 2141 0000 0000  ..2....T..!A....
        0x0020:  0000                                     ..
# Packet "A" response:
12:02:42.204040 IP unit-0.radarnet.49492 > hostpc.37403: UDP,
length 10
        0x0000:  4500 002a 0000 0000 8011 afa2 ac10 3200  E..*..........2.
        0x0010:  ac10 0100 c154 921b 0012 0000 0000 0101  .....T..........
        0x0020:  0000 0000 0000 0000 0000 0000 0000       ..............

This indicates to me that in the fault condition, packets coming into the PC
are being held by the lower layers (perhaps even the hardware) for a very
long time, and in fact only seem to be released once a packet is queued for
transmission.

I then ran a test using the capture script you suggested.  For this test I
arranged to only send the C-A packet sequence repeatedly until an error
condition was detected.  Approximate times of the sequence's start time and
the outcome of the sequence were:

  1447985720: C response received, A response received
  1447985722: C response received, A response was not seen(*)
  1447985739: C response received, A response received

(*) Based on the earlier test, I expect it was delivered to the OS layer at
the start of the next test, when the "C" packet was sent.

The output from your script spanning these times is at the end of this
email.

Repeating the above tests under 2.6.35.11 produces none of these problems
over many hours.

Regards
  jonathan

1447985715.230668398:4JH1G1/GAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsO4zAAAAAAAwyUAFEAAAAAAAAAAACAwAAAAAf4AAAAAHAAcO5wAA1pyHbwAAAAAABQ0QoYABAAAAAAAAABAAABAAgAAAAAAAAAAAcwAAAAAA//8AAAAAAAAAAAAAAAAAAA1PCCAAACAQACgAAAQAggEYBARCGIAAAJEJIAAEAWAIAABg1gAEAIgAAAAAAACAAAABDBWAACBAAAEAACQEAhAAAAQQAAgggwBijQ4AAAAAAAAAAAAAAAAAQAAAAABrYAAAAKDuMwAAAAA/AAAAAIAAAAAAAAACAAAAAAAAAA==:TklDIHN0YXRpc3RpY3M6CiAgICAgdHhfcGFja2V0czogMjYzCiAgICAgcnhfcGFja2V0czogMjU3CiAgICAgdHhfZXJyb3JzOiAxCiAgICAgcnhfZXJyb3JzOiAwCiAgICAgcnhfbWlzc2VkOiAwCiAgICAgYWxpZ25fZXJyb3JzOiAwCiAgICAgdHhfc2luZ2xlX2NvbGxpc2lvbnM6IDAKICAgICB0eF9tdWx0aV9jb2xsaXNpb25zOiAwCiAgICAgdW5pY2FzdDogMjU3CiAgICAgYnJvYWRjYXN0OiAwCiAgICAgbXVsdGljYXN0OiAwCiAgICAgdHhfYWJvcnRlZDogMAogICAgIHR4X3VuZGVycnVuOiAwCg==
1447985716.234480645:4JH1G1/GAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsO4zAAAAAAAwyUAFEAAAAAAAAAAACAwAAAAAf4AAAAAHAAcO5wAAMuaEcQAAAAAABQ0QoYABAAAAAAAAABAAABAAgAAAAAAAAAAAcwAAAAAA//8AAAAAAAAAAAAAAAAAAA1PCCAAACAQACgAAAQAggEYBARCGIAAAJEJIAAEAWAIAABg1gAEAIgAAAAAAACAAAABDBWAACBAAAEAACQEAhAAAAQQAAgggwBijQ4AAAAAAAAAAAAAAAAAQAAAAABrYAAAAKDuMwAAAAA/AAAAAIAAAAAAAAACAAAAAAAAAA==:TklDIHN0YXRpc3RpY3M6CiAgICAgdHhfcGFja2V0czogMjYzCiAgICAgcnhfcGFja2V0czogMjU3CiAgICAgdHhfZXJyb3JzOiAxCiAgICAgcnhfZXJyb3JzOiAwCiAgICAgcnhfbWlzc2VkOiAwCiAgICAgYWxpZ25fZXJyb3JzOiAwCiAgICAgdHhfc2luZ2xlX2NvbGxpc2lvbnM6IDAKICAgICB0eF9tdWx0aV9jb2xsaXNpb25zOiAwCiAgICAgdW5pY2FzdDogMjU3CiAgICAgYnJvYWRjYXN0OiAwCiAgICAgbXVsdGljYXN0OiAwCiAgICAgdHhfYWJvcnRlZDogMAogICAgIHR4X3VuZGVycnVuOiAwCg==
1447985717.238563603:4JH1G1/GAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsO4zAAAAAAAwyUAFEAAAAAAAAAAACAwAAAAAf4AAAAAHAAcO5wAAP1qCcwAAAAAABQ0QoYABAAAAAAAAABAAABAAgAAAAAAAAAAAcwAAAAAA//8AAAAAAAAAAAAAAAAAAA1PCCAAACAQACgAAAQAggEYBARCGIAAAJEJIAAEAWAIAABg1gAEAIgAAAAAAACAAAABDBWAACBAAAEAACQEAhAAAAQQAAgggwBijQ4AAAAAAAAAAAAAAAAAQAAAAABrYAAAAKDuMwAAAAA/AAAAAIAAAAAAAAACAAAAAAAAAA==:TklDIHN0YXRpc3RpY3M6CiAgICAgdHhfcGFja2V0czogMjYzCiAgICAgcnhfcGFja2V0czogMjU3CiAgICAgdHhfZXJyb3JzOiAxCiAgICAgcnhfZXJyb3JzOiAwCiAgICAgcnhfbWlzc2VkOiAwCiAgICAgYWxpZ25fZXJyb3JzOiAwCiAgICAgdHhfc2luZ2xlX2NvbGxpc2lvbnM6IDAKICAgICB0eF9tdWx0aV9jb2xsaXNpb25zOiAwCiAgICAgdW5pY2FzdDogMjU3CiAgICAgYnJvYWRjYXN0OiAwCiAgICAgbXVsdGljYXN0OiAwCiAgICAgdHhfYWJvcnRlZDogMAogICAgIHR4X3VuZGVycnVuOiAwCg==
1447985718.242506424:4JH1G1/GAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsO4zAAAAAAAwyUAFEAAAAAAAAAAACAwAAAAAf4AAAAAHAAcO5wAAdsV/dQAAAAAABQ0QoYABAAAAAAAAABAAABAAgAAAAAAAAAAAcwAAAAAA//8AAAAAAAAAAAAAAAAAAA1PCCAAACAQACgAAAQAggEYBARCGIAAAJEJIAAEAWAIAABg1gAEAIgAAAAAAACAAAABDBWAACBAAAEAACQEAhAAAAQQAAgggwBijQ4AAAAAAAAAAAAAAAAAQAAAAABrYAAAAKDuMwAAAAA/AAAAAIAAAAAAAAACAAAAAAAAAA==:TklDIHN0YXRpc3RpY3M6CiAgICAgdHhfcGFja2V0czogMjYzCiAgICAgcnhfcGFja2V0czogMjU3CiAgICAgdHhfZXJyb3JzOiAxCiAgICAgcnhfZXJyb3JzOiAwCiAgICAgcnhfbWlzc2VkOiAwCiAgICAgYWxpZ25fZXJyb3JzOiAwCiAgICAgdHhfc2luZ2xlX2NvbGxpc2lvbnM6IDAKICAgICB0eF9tdWx0aV9jb2xsaXNpb25zOiAwCiAgICAgdW5pY2FzdDogMjU3CiAgICAgYnJvYWRjYXN0OiAwCiAgICAgbXVsdGljYXN0OiAwCiAgICAgdHhfYWJvcnRlZDogMAogICAgIHR4X3VuZGVycnVuOiAwCg==
1447985719.246230757:4JH1G1/GAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsO4zAAAAAAAwyUAFEAAAAAAAAAAACAwAAAAAf4AAAAAHAAcO5wAAhhJ9dwAAAAAABQ0QoYABAAAAAAAAABAAABAAgAAAAAAAAAAAcwAAAAAA//8AAAAAAAAAAAAAAAAAAA1PCCAAACAQACgAAAQAggEYBARCGIAAAJEJIAAEAWAIAABg1gAEAIgAAAAAAACAAAABDBWAACBAAAEAACQEAhAAAAQQAAgggwBijQ4AAAAAAAAAAAAAAAAAQAAAAABrYAAAAKDuMwAAAAA/AAAAAIAAAAAAAAACAAAAAAAAAA==:TklDIHN0YXRpc3RpY3M6CiAgICAgdHhfcGFja2V0czogMjYzCiAgICAgcnhfcGFja2V0czogMjU3CiAgICAgdHhfZXJyb3JzOiAxCiAgICAgcnhfZXJyb3JzOiAwCiAgICAgcnhfbWlzc2VkOiAwCiAgICAgYWxpZ25fZXJyb3JzOiAwCiAgICAgdHhfc2luZ2xlX2NvbGxpc2lvbnM6IDAKICAgICB0eF9tdWx0aV9jb2xsaXNpb25zOiAwCiAgICAgdW5pY2FzdDogMjU3CiAgICAgYnJvYWRjYXN0OiAwCiAgICAgbXVsdGljYXN0OiAwCiAgICAgdHhfYWJvcnRlZDogMAogICAgIHR4X3VuZGVycnVuOiAwCg==
1447985720.249900368:4JH1G1/GAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsO4zAAAAAAAwyUAFEAAAAAAAAAAACAwAAAAAf4AAAAAHAAcO5wAAbWJ6eQAAAAAABQ0QoYABAAAAAAAAABAAABAAgAAAAAAAAAAAcwAAAAAA//8AAAAAAAAAAAAAAAAAAA1PCCAAACAQACgAAAQAggEYBARCGIAAAJEJIAAEAWAIAABg1gAEAIgAAAAAAACAAAABDBWAACBAAAEAACQEAhAAAAQQAAgggwBijQ4AAAAAAAAAAAAAAAAAQAAAAABrYAAAAKDuMwAAAAA/AAAAAIAAAAAAAAACAAAAAAAAAA==:TklDIHN0YXRpc3RpY3M6CiAgICAgdHhfcGFja2V0czogMjYzCiAgICAgcnhfcGFja2V0czogMjU3CiAgICAgdHhfZXJyb3JzOiAxCiAgICAgcnhfZXJyb3JzOiAwCiAgICAgcnhfbWlzc2VkOiAwCiAgICAgYWxpZ25fZXJyb3JzOiAwCiAgICAgdHhfc2luZ2xlX2NvbGxpc2lvbnM6IDAKICAgICB0eF9tdWx0aV9jb2xsaXNpb25zOiAwCiAgICAgdW5pY2FzdDogMjU3CiAgICAgYnJvYWRjYXN0OiAwCiAgICAgbXVsdGljYXN0OiAwCiAgICAgdHhfYWJvcnRlZDogMAogICAgIHR4X3VuZGVycnVuOiAwCg==
1447985721.253727549:4JH1G1/GAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsO4zAAAAAAAwyUAFEAAAAAAAAAAACAwAAAAAf4AAAAAHAAcO5wAA9r53ewAAAAAABQ0QoYABAAAAAAAAABAAABAAgAAAAAAAAAAAcwAAAAAA//8AAAAAAAAAAAAAAAAAAA1PCCAAACAQACgAAAQAggEYBARCGIAAAJEJIAAEAWAIAABg1gAEAIgAAAAAAACAAAABDBWAACBAAAEAACQEAhAAAAQQAAgggwBijQ4AAAAAAAAAAAAAAAAAQAAAAABrYAAAAKDuMwAAAAA/AAAAAIAAAAAAAAACAAAAAAAAAA==:TklDIHN0YXRpc3RpY3M6CiAgICAgdHhfcGFja2V0czogMjY1CiAgICAgcnhfcGFja2V0czogMjU5CiAgICAgdHhfZXJyb3JzOiAxCiAgICAgcnhfZXJyb3JzOiAwCiAgICAgcnhfbWlzc2VkOiAwCiAgICAgYWxpZ25fZXJyb3JzOiAwCiAgICAgdHhfc2luZ2xlX2NvbGxpc2lvbnM6IDAKICAgICB0eF9tdWx0aV9jb2xsaXNpb25zOiAwCiAgICAgdW5pY2FzdDogMjU5CiAgICAgYnJvYWRjYXN0OiAwCiAgICAgbXVsdGljYXN0OiAwCiAgICAgdHhfYWJvcnRlZDogMAogICAgIHR4X3VuZGVycnVuOiAwCg==
1447985722.257578916:4JH1G1/GAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsO4zAAAAAAAwyUAFEAAAAAAAAAAACAwAAAAAf4AAAAAHAAcO5wAAfRh1fQAAAAAABQ0QoYABAAAAAAAAABAAABAAgAAAAAAAAAAAcwAAAAAA//8AAAAAAAAAAAAAAAAAAA1PCCAAACAQACgAAAQAggEYBARCGIAAAJEJIAAEAWAIAABg1gAEAIgAAAAAAACAAAABDBWAACBAAAEAACQEAhAAAAQQAAgggwBijQ4AAAAAAAAAAAAAAAAAQAAAAABrYAAAAKDuMwAAAAA/AAAAAIAAAAAAAAACAAAAAAAAAA==:TklDIHN0YXRpc3RpY3M6CiAgICAgdHhfcGFja2V0czogMjY1CiAgICAgcnhfcGFja2V0czogMjU5CiAgICAgdHhfZXJyb3JzOiAxCiAgICAgcnhfZXJyb3JzOiAwCiAgICAgcnhfbWlzc2VkOiAwCiAgICAgYWxpZ25fZXJyb3JzOiAwCiAgICAgdHhfc2luZ2xlX2NvbGxpc2lvbnM6IDAKICAgICB0eF9tdWx0aV9jb2xsaXNpb25zOiAwCiAgICAgdW5pY2FzdDogMjU5CiAgICAgYnJvYWRjYXN0OiAwCiAgICAgbXVsdGljYXN0OiAwCiAgICAgdHhfYWJvcnRlZDogMAogICAgIHR4X3VuZGVycnVuOiAwCg==
1447985723.261457073:4JH1G1/GAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsO4zAAAAAAAwyUAFEAAAAAAAAAAACAwAAAAAf4AAAAAHAAcO5wAA2KVyfwAAAAAABQ0QoYABAAAAAAAAABAAABAAgAAAAAAAAAAAcwAAAAAA//8AAAAAAAAAAAAAAAAAAA1PCCAAACAQACgAAAQAggEYBARCGIAAAJEJIAAEAWAIAABg1gAEAIgAAAAAAACAAAABDBWAACBAAAEAACQEAhAAAAQQAAgggwBijQ4AAAAAAAAAAAAAAAAAQAAAAABrYAAAAKDuMwAAAAA/AAAAAIAAAAAAAAACAAAAAAAAAA==:TklDIHN0YXRpc3RpY3M6CiAgICAgdHhfcGFja2V0czogMjY3CiAgICAgcnhfcGFja2V0czogMjYxCiAgICAgdHhfZXJyb3JzOiAxCiAgICAgcnhfZXJyb3JzOiAwCiAgICAgcnhfbWlzc2VkOiAwCiAgICAgYWxpZ25fZXJyb3JzOiAwCiAgICAgdHhfc2luZ2xlX2NvbGxpc2lvbnM6IDAKICAgICB0eF9tdWx0aV9jb2xsaXNpb25zOiAwCiAgICAgdW5pY2FzdDogMjYxCiAgICAgYnJvYWRjYXN0OiAwCiAgICAgbXVsdGljYXN0OiAwCiAgICAgdHhfYWJvcnRlZDogMAogICAgIHR4X3VuZGVycnVuOiAwCg==
1447985724.264998842:4JH1G1/GAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsO4zAAAAAAAwyUAFEAAAAAAAAAAACAwAAAAAf4AAAAAHAAcO5wAAfstvgQAAAAAABQ0QoYABAAAAAAAAABAAABAAgAAAAAAAAAAAcwAAAAAA//8AAAAAAAAAAAAAAAAAAA1PCCAAACAQACgAAAQAggEYBARCGIAAAJEJIAAEAWAIAABg1gAEAIgAAAAAAACAAAABDBWAACBAAAEAACQEAhAAAAQQAAgggwBijQ4AAAAAAAAAAAAAAAAAQAAAAABrYAAAAKDuMwAAAAA/AAAAAIAAAAAAAAACAAAAAAAAAA==:TklDIHN0YXRpc3RpY3M6CiAgICAgdHhfcGFja2V0czogMjY3CiAgICAgcnhfcGFja2V0czogMjYxCiAgICAgdHhfZXJyb3JzOiAxCiAgICAgcnhfZXJyb3JzOiAwCiAgICAgcnhfbWlzc2VkOiAwCiAgICAgYWxpZ25fZXJyb3JzOiAwCiAgICAgdHhfc2luZ2xlX2NvbGxpc2lvbnM6IDAKICAgICB0eF9tdWx0aV9jb2xsaXNpb25zOiAwCiAgICAgdW5pY2FzdDogMjYxCiAgICAgYnJvYWRjYXN0OiAwCiAgICAgbXVsdGljYXN0OiAwCiAgICAgdHhfYWJvcnRlZDogMAogICAgIHR4X3VuZGVycnVuOiAwCg==
1447985725.268928099:4JH1G1/GAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsO4zAAAAAAAwyUAFEAAAAAAAAAAACAwAAAAAf4AAAAAHAAcO5wAAaTdtgwAAAAAABQ0QoYABAAAAAAAAABAAABAAgAAAAAAAAAAAcwAAAAAA//8AAAAAAAAAAAAAAAAAAA1PCCAAACAQACgAAAQAggEYBARCGIAAAJEJIAAEAWAIAABg1gAEAIgAAAAAAACAAAABDBWAACBAAAEAACQEAhAAAAQQAAgggwBijQ4AAAAAAAAAAAAAAAAAQAAAAABrYAAAAKDuMwAAAAA/AAAAAIAAAAAAAAACAAAAAAAAAA==:TklDIHN0YXRpc3RpY3M6CiAgICAgdHhfcGFja2V0czogMjY3CiAgICAgcnhfcGFja2V0czogMjYxCiAgICAgdHhfZXJyb3JzOiAxCiAgICAgcnhfZXJyb3JzOiAwCiAgICAgcnhfbWlzc2VkOiAwCiAgICAgYWxpZ25fZXJyb3JzOiAwCiAgICAgdHhfc2luZ2xlX2NvbGxpc2lvbnM6IDAKICAgICB0eF9tdWx0aV9jb2xsaXNpb25zOiAwCiAgICAgdW5pY2FzdDogMjYxCiAgICAgYnJvYWRjYXN0OiAwCiAgICAgbXVsdGljYXN0OiAwCiAgICAgdHhfYWJvcnRlZDogMAogICAgIHR4X3VuZGVycnVuOiAwCg==
1447985726.272550987:4JH1G1/GAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsO4zAAAAAAAwyUAFEAAAAAAAAAAACAwAAAAAf4AAAAAHAAcO5wAAboRqhQAAAAAABQ0QoYABAAAAAAAAABAAABAAgAAAAAAAAAAAcwAAAAAA//8AAAAAAAAAAAAAAAAAAA1PCCAAACAQACgAAAQAggEYBARCGIAAAJEJIAAEAWAIAABg1gAEAIgAAAAAAACAAAABDBWAACBAAAEAACQEAhAAAAQQAAgggwBijQ4AAAAAAAAAAAAAAAAAQAAAAABrYAAAAKDuMwAAAAA/AAAAAIAAAAAAAAACAAAAAAAAAA==:TklDIHN0YXRpc3RpY3M6CiAgICAgdHhfcGFja2V0czogMjY5CiAgICAgcnhfcGFja2V0czogMjYyCiAgICAgdHhfZXJyb3JzOiAxCiAgICAgcnhfZXJyb3JzOiAwCiAgICAgcnhfbWlzc2VkOiAwCiAgICAgYWxpZ25fZXJyb3JzOiAwCiAgICAgdHhfc2luZ2xlX2NvbGxpc2lvbnM6IDAKICAgICB0eF9tdWx0aV9jb2xsaXNpb25zOiAwCiAgICAgdW5pY2FzdDogMjYyCiAgICAgYnJvYWRjYXN0OiAwCiAgICAgbXVsdGljYXN0OiAwCiAgICAgdHhfYWJvcnRlZDogMAogICAgIHR4X3VuZGVycnVuOiAwCg==
1447985727.277086547:4JH1G1/GAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsO4zAAAAAAAwyUAFEAAAAAAAAAAACAwAAAAAf4AAAAAHAAcO5wAAFTNohwAAAAAABQ0QoYABAAAAAAAAABAAABAAgAAAAAAAAAAAcwAAAAAA//8AAAAAAAAAAAAAAAAAAA1PCCAAACAQACgAAAQAggEYBARCGIAAAJEJIAAEAWAIAABg1gAEAIgAAAAAAACAAAABDBWAACBAAAEAACQEAhAAAAQQAAgggwBijQ4AAAAAAAAAAAAAAAAAQAAAAABrYAAAAKDuMwAAAAA/AAAAAIAAAAAAAAACAAAAAAAAAA==:TklDIHN0YXRpc3RpY3M6CiAgICAgdHhfcGFja2V0czogMjY5CiAgICAgcnhfcGFja2V0czogMjYyCiAgICAgdHhfZXJyb3JzOiAxCiAgICAgcnhfZXJyb3JzOiAwCiAgICAgcnhfbWlzc2VkOiAwCiAgICAgYWxpZ25fZXJyb3JzOiAwCiAgICAgdHhfc2luZ2xlX2NvbGxpc2lvbnM6IDAKICAgICB0eF9tdWx0aV9jb2xsaXNpb25zOiAwCiAgICAgdW5pY2FzdDogMjYyCiAgICAgYnJvYWRjYXN0OiAwCiAgICAgbXVsdGljYXN0OiAwCiAgICAgdHhfYWJvcnRlZDogMAogICAgIHR4X3VuZGVycnVuOiAwCg==
1447985728.280609761:4JH1G1/GAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsO4zAAAAAAAwyUAFEAAAAAAAAAAACAwAAAAAf4AAAAAHAAcO5wAAcXlliQAAAAAABQ0QoYABAAAAAAAAABAAABAAgAAAAAAAAAAAcwAAAAAA//8AAAAAAAAAAAAAAAAAAA1PCCAAACAQACgAAAQAggEYBARCGIAAAJEJIAAEAWAIAABg1gAEAIgAAAAAAACAAAABDBWAACBAAAEAACQEAhAAAAQQAAgggwBijQ4AAAAAAAAAAAAAAAAAQAAAAABrYAAAAKDuMwAAAAA/AAAAAIAAAAAAAAACAAAAAAAAAA==:TklDIHN0YXRpc3RpY3M6CiAgICAgdHhfcGFja2V0czogMjY5CiAgICAgcnhfcGFja2V0czogMjYyCiAgICAgdHhfZXJyb3JzOiAxCiAgICAgcnhfZXJyb3JzOiAwCiAgICAgcnhfbWlzc2VkOiAwCiAgICAgYWxpZ25fZXJyb3JzOiAwCiAgICAgdHhfc2luZ2xlX2NvbGxpc2lvbnM6IDAKICAgICB0eF9tdWx0aV9jb2xsaXNpb25zOiAwCiAgICAgdW5pY2FzdDogMjYyCiAgICAgYnJvYWRjYXN0OiAwCiAgICAgbXVsdGljYXN0OiAwCiAgICAgdHhfYWJvcnRlZDogMAogICAgIHR4X3VuZGVycnVuOiAwCg==
1447985729.284707715:4JH1G1/GAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsO4zAAAAAAAwyUAFEAAAAAAAAAAACAwAAAAAf4AAAAAHAAcO5wAAsvJiiwAAAAAABQ0QoYABAAAAAAAAABAAABAAgAAAAAAAAAAAcwAAAAAA//8AAAAAAAAAAAAAAAAAAA1PCCAAACAQACgAAAQAggEYBARCGIAAAJEJIAAEAWAIAABg1gAEAIgAAAAAAACAAAABDBWAACBAAAEAACQEAhAAAAQQAAgggwBijQ4AAAAAAAAAAAAAAAAAQAAAAABrYAAAAKDuMwAAAAA/AAAAAIAAAAAAAAACAAAAAAAAAA==:TklDIHN0YXRpc3RpY3M6CiAgICAgdHhfcGFja2V0czogMjY5CiAgICAgcnhfcGFja2V0czogMjYyCiAgICAgdHhfZXJyb3JzOiAxCiAgICAgcnhfZXJyb3JzOiAwCiAgICAgcnhfbWlzc2VkOiAwCiAgICAgYWxpZ25fZXJyb3JzOiAwCiAgICAgdHhfc2luZ2xlX2NvbGxpc2lvbnM6IDAKICAgICB0eF9tdWx0aV9jb2xsaXNpb25zOiAwCiAgICAgdW5pY2FzdDogMjYyCiAgICAgYnJvYWRjYXN0OiAwCiAgICAgbXVsdGljYXN0OiAwCiAgICAgdHhfYWJvcnRlZDogMAogICAgIHR4X3VuZGVycnVuOiAwCg==
1447985730.288299143:4JH1G1/GAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsO4zAAAAAAAwyUAFEAAAAAAAAAAACAwAAAAAf4AAAAAHAAcO5wAAVihgjQAAAAAABQ0QoYABAAAAAAAAABAAABAAgAAAAAAAAAAAcwAAAAAA//8AAAAAAAAAAAAAAAAAAA1PCCAAACAQACgAAAQAggEYBARCGIAAAJEJIAAEAWAIAABg1gAEAIgAAAAAAACAAAABDBWAACBAAAEAACQEAhAAAAQQAAgggwBijQ4AAAAAAAAAAAAAAAAAQAAAAABrYAAAAKDuMwAAAAA/AAAAAIAAAAAAAAACAAAAAAAAAA==:TklDIHN0YXRpc3RpY3M6CiAgICAgdHhfcGFja2V0czogMjY5CiAgICAgcnhfcGFja2V0czogMjYyCiAgICAgdHhfZXJyb3JzOiAxCiAgICAgcnhfZXJyb3JzOiAwCiAgICAgcnhfbWlzc2VkOiAwCiAgICAgYWxpZ25fZXJyb3JzOiAwCiAgICAgdHhfc2luZ2xlX2NvbGxpc2lvbnM6IDAKICAgICB0eF9tdWx0aV9jb2xsaXNpb25zOiAwCiAgICAgdW5pY2FzdDogMjYyCiAgICAgYnJvYWRjYXN0OiAwCiAgICAgbXVsdGljYXN0OiAwCiAgICAgdHhfYWJvcnRlZDogMAogICAgIHR4X3VuZGVycnVuOiAwCg==
1447985731.292144772:4JH1G1/GAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsO4zAAAAAAAwyUAFEAAAAAAAAAAACAwAAAAAf4AAAAAHAAcO5wAAUoJdjwAAAAAABQ0QoYABAAAAAAAAABAAABAAgAAAAAAAAAAAcwAAAAAA//8AAAAAAAAAAAAAAAAAAA1PCCAAACAQACgAAAQAggEYBARCGIAAAJEJIAAEAWAIAABg1gAEAIgAAAAAAACAAAABDBWAACBAAAEAACQEAhAAAAQQAAgggwBijQ4AAAAAAAAAAAAAAAAAQAAAAABrYAAAAKDuMwAAAAA/AAAAAIAAAAAAAAACAAAAAAAAAA==:TklDIHN0YXRpc3RpY3M6CiAgICAgdHhfcGFja2V0czogMjY5CiAgICAgcnhfcGFja2V0czogMjYyCiAgICAgdHhfZXJyb3JzOiAxCiAgICAgcnhfZXJyb3JzOiAwCiAgICAgcnhfbWlzc2VkOiAwCiAgICAgYWxpZ25fZXJyb3JzOiAwCiAgICAgdHhfc2luZ2xlX2NvbGxpc2lvbnM6IDAKICAgICB0eF9tdWx0aV9jb2xsaXNpb25zOiAwCiAgICAgdW5pY2FzdDogMjYyCiAgICAgYnJvYWRjYXN0OiAwCiAgICAgbXVsdGljYXN0OiAwCiAgICAgdHhfYWJvcnRlZDogMAogICAgIHR4X3VuZGVycnVuOiAwCg==
1447985732.295803667:4JH1G1/GAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsO4zAAAAAAAwyUAFEAAAAAAAAAAACAwAAAAAf4AAAAAHAAcO5wAAuslakQAAAAAABQ0QoYABAAAAAAAAABAAABAAgAAAAAAAAAAAcwAAAAAA//8AAAAAAAAAAAAAAAAAAA1PCCAAACAQACgAAAQAggEYBARCGIAAAJEJIAAEAWAIAABg1gAEAIgAAAAAAACAAAABDBWAACBAAAEAACQEAhAAAAQQAAgggwBijQ4AAAAAAAAAAAAAAAAAQAAAAABrYAAAAKDuMwAAAAA/AAAAAIAAAAAAAAACAAAAAAAAAA==:TklDIHN0YXRpc3RpY3M6CiAgICAgdHhfcGFja2V0czogMjY5CiAgICAgcnhfcGFja2V0czogMjYyCiAgICAgdHhfZXJyb3JzOiAxCiAgICAgcnhfZXJyb3JzOiAwCiAgICAgcnhfbWlzc2VkOiAwCiAgICAgYWxpZ25fZXJyb3JzOiAwCiAgICAgdHhfc2luZ2xlX2NvbGxpc2lvbnM6IDAKICAgICB0eF9tdWx0aV9jb2xsaXNpb25zOiAwCiAgICAgdW5pY2FzdDogMjYyCiAgICAgYnJvYWRjYXN0OiAwCiAgICAgbXVsdGljYXN0OiAwCiAgICAgdHhfYWJvcnRlZDogMAogICAgIHR4X3VuZGVycnVuOiAwCg==
1447985733.299568961:4JH1G1/GAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsO4zAAAAAAAwyUAFEAAAAAAAAAAACAwAAAAAf4AAAAAHAAcO5wAAySZYkwAAAAAABQ0QoYABAAAAAAAAABAAABAAgAAAAAAAAAAAcwAAAAAA//8AAAAAAAAAAAAAAAAAAA1PCCAAACAQACgAAAQAggEYBARCGIAAAJEJIAAEAWAIAABg1gAEAIgAAAAAAACAAAABDBWAACBAAAEAACQEAhAAAAQQAAgggwBijQ4AAAAAAAAAAAAAAAAAQAAAAABrYAAAAKDuMwAAAAA/AAAAAIAAAAAAAAACAAAAAAAAAA==:TklDIHN0YXRpc3RpY3M6CiAgICAgdHhfcGFja2V0czogMjY5CiAgICAgcnhfcGFja2V0czogMjYyCiAgICAgdHhfZXJyb3JzOiAxCiAgICAgcnhfZXJyb3JzOiAwCiAgICAgcnhfbWlzc2VkOiAwCiAgICAgYWxpZ25fZXJyb3JzOiAwCiAgICAgdHhfc2luZ2xlX2NvbGxpc2lvbnM6IDAKICAgICB0eF9tdWx0aV9jb2xsaXNpb25zOiAwCiAgICAgdW5pY2FzdDogMjYyCiAgICAgYnJvYWRjYXN0OiAwCiAgICAgbXVsdGljYXN0OiAwCiAgICAgdHhfYWJvcnRlZDogMAogICAgIHR4X3VuZGVycnVuOiAwCg==
1447985734.303204633:4JH1G1/GAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsO4zAAAAAAAwyUAFEAAAAAAAAAAACAwAAAAAf4AAAAAHAAcO5wAA7VdVlQAAAAAABQ0QoYABAAAAAAAAABAAABAAgAAAAAAAAAAAcwAAAAAA//8AAAAAAAAAAAAAAAAAAA1PCCAAACAQACgAAAQAggEYBARCGIAAAJEJIAAEAWAIAABg1gAEAIgAAAAAAACAAAABDBWAACBAAAEAACQEAhAAAAQQAAgggwBijQ4AAAAAAAAAAAAAAAAAQAAAAABrYAAAAKDuMwAAAAA/AAAAAIAAAAAAAAACAAAAAAAAAA==:TklDIHN0YXRpc3RpY3M6CiAgICAgdHhfcGFja2V0czogMjY5CiAgICAgcnhfcGFja2V0czogMjYyCiAgICAgdHhfZXJyb3JzOiAxCiAgICAgcnhfZXJyb3JzOiAwCiAgICAgcnhfbWlzc2VkOiAwCiAgICAgYWxpZ25fZXJyb3JzOiAwCiAgICAgdHhfc2luZ2xlX2NvbGxpc2lvbnM6IDAKICAgICB0eF9tdWx0aV9jb2xsaXNpb25zOiAwCiAgICAgdW5pY2FzdDogMjYyCiAgICAgYnJvYWRjYXN0OiAwCiAgICAgbXVsdGljYXN0OiAwCiAgICAgdHhfYWJvcnRlZDogMAogICAgIHR4X3VuZGVycnVuOiAwCg==
1447985735.307015920:4JH1G1/GAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsO4zAAAAAAAwyUAFEAAAAAAAAAAACAwAAAAAf4AAAAAHAAcO5wAAWb1SlwAAAAAABQ0QoYABAAAAAAAAABAAABAAgAAAAAAAAAAAcwAAAAAA//8AAAAAAAAAAAAAAAAAAA1PCCAAACAQACgAAAQAggEYBARCGIAAAJEJIAAEAWAIAABg1gAEAIgAAAAAAACAAAABDBWAACBAAAEAACQEAhAAAAQQAAgggwBijQ4AAAAAAAAAAAAAAAAAQAAAAABrYAAAAKDuMwAAAAA/AAAAAIAAAAAAAAACAAAAAAAAAA==:TklDIHN0YXRpc3RpY3M6CiAgICAgdHhfcGFja2V0czogMjY5CiAgICAgcnhfcGFja2V0czogMjYyCiAgICAgdHhfZXJyb3JzOiAxCiAgICAgcnhfZXJyb3JzOiAwCiAgICAgcnhfbWlzc2VkOiAwCiAgICAgYWxpZ25fZXJyb3JzOiAwCiAgICAgdHhfc2luZ2xlX2NvbGxpc2lvbnM6IDAKICAgICB0eF9tdWx0aV9jb2xsaXNpb25zOiAwCiAgICAgdW5pY2FzdDogMjYyCiAgICAgYnJvYWRjYXN0OiAwCiAgICAgbXVsdGljYXN0OiAwCiAgICAgdHhfYWJvcnRlZDogMAogICAgIHR4X3VuZGVycnVuOiAwCg==
1447985736.310640604:4JH1G1/GAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsO4zAAAAAAAwyUAFEAAAAAAAAAAACAwAAAAAf4AAAAAHAAcO5wAAdhxQmQAAAAAABQ0QoYABAAAAAAAAABAAABAAgAAAAAAAAAAAcwAAAAAA//8AAAAAAAAAAAAAAAAAAA1PCCAAACAQACgAAAQAggEYBARCGIAAAJEJIAAEAWAIAABg1gAEAIgAAAAAAACAAAABDBWAACBAAAEAACQEAhAAAAQQAAgggwBijQ4AAAAAAAAAAAAAAAAAQAAAAABrYAAAAKDuMwAAAAA/AAAAAIAAAAAAAAACAAAAAAAAAA==:TklDIHN0YXRpc3RpY3M6CiAgICAgdHhfcGFja2V0czogMjY5CiAgICAgcnhfcGFja2V0czogMjYyCiAgICAgdHhfZXJyb3JzOiAxCiAgICAgcnhfZXJyb3JzOiAwCiAgICAgcnhfbWlzc2VkOiAwCiAgICAgYWxpZ25fZXJyb3JzOiAwCiAgICAgdHhfc2luZ2xlX2NvbGxpc2lvbnM6IDAKICAgICB0eF9tdWx0aV9jb2xsaXNpb25zOiAwCiAgICAgdW5pY2FzdDogMjYyCiAgICAgYnJvYWRjYXN0OiAwCiAgICAgbXVsdGljYXN0OiAwCiAgICAgdHhfYWJvcnRlZDogMAogICAgIHR4X3VuZGVycnVuOiAwCg==
1447985737.314153757:4JH1G1/GAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsO4zAAAAAAAwyUAFEAAAAAAAAAAACAwAAAAAf4AAAAAHAAcO5wAA9hhNmwAAAAAABQ0QoYABAAAAAAAAABAAABAAgAAAAAAAAAAAcwAAAAAA//8AAAAAAAAAAAAAAAAAAA1PCCAAACAQACgAAAQAggEYBARCGIAAAJEJIAAEAWAIAABg1gAEAIgAAAAAAACAAAABDBWAACBAAAEAACQEAhAAAAQQAAgggwBijQ4AAAAAAAAAAAAAAAAAQAAAAABrYAAAAKDuMwAAAAA/AAAAAIAAAAAAAAACAAAAAAAAAA==:TklDIHN0YXRpc3RpY3M6CiAgICAgdHhfcGFja2V0czogMjY5CiAgICAgcnhfcGFja2V0czogMjYyCiAgICAgdHhfZXJyb3JzOiAxCiAgICAgcnhfZXJyb3JzOiAwCiAgICAgcnhfbWlzc2VkOiAwCiAgICAgYWxpZ25fZXJyb3JzOiAwCiAgICAgdHhfc2luZ2xlX2NvbGxpc2lvbnM6IDAKICAgICB0eF9tdWx0aV9jb2xsaXNpb25zOiAwCiAgICAgdW5pY2FzdDogMjYyCiAgICAgYnJvYWRjYXN0OiAwCiAgICAgbXVsdGljYXN0OiAwCiAgICAgdHhfYWJvcnRlZDogMAogICAgIHR4X3VuZGVycnVuOiAwCg==
1447985738.318170685:4JH1G1/GAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsO4zAAAAAAAwyUAFEAAAAAAAAAAACAwAAAAAf4AAAAAHAAcO5wAAhYVKnQAAAAAABQ0QoYABAAAAAAAAABAAABAAgAAAAAAAAAAAcwAAAAAA//8AAAAAAAAAAAAAAAAAAA1PCCAAACAQACgAAAQAggEYBARCGIAAAJEJIAAEAWAIAABg1gAEAIgAAAAAAACAAAABDBWAACBAAAEAACQEAhAAAAQQAAgggwBijQ4AAAAAAAAAAAAAAAAAQAAAAABrYAAAAKDuMwAAAAA/AAAAAIAAAAAAAAACAAAAAAAAAA==:TklDIHN0YXRpc3RpY3M6CiAgICAgdHhfcGFja2V0czogMjY5CiAgICAgcnhfcGFja2V0czogMjYyCiAgICAgdHhfZXJyb3JzOiAxCiAgICAgcnhfZXJyb3JzOiAwCiAgICAgcnhfbWlzc2VkOiAwCiAgICAgYWxpZ25fZXJyb3JzOiAwCiAgICAgdHhfc2luZ2xlX2NvbGxpc2lvbnM6IDAKICAgICB0eF9tdWx0aV9jb2xsaXNpb25zOiAwCiAgICAgdW5pY2FzdDogMjYyCiAgICAgYnJvYWRjYXN0OiAwCiAgICAgbXVsdGljYXN0OiAwCiAgICAgdHhfYWJvcnRlZDogMAogICAgIHR4X3VuZGVycnVuOiAwCg==
1447985739.322196876:4JH1G1/GAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsO4zAAAAAAAwyUAFEAAAAAAAAAAACAwAAAAAf4AAAAAHAAcO5wAAkQBInwAAAAAABQ0QoYABAAAAAAAAABAAABAAgAAAAAAAAAAAcwAAAAAA//8AAAAAAAAAAAAAAAAAAA1PCCAAACAQACgAAAQAggEYBARCGIAAAJEJIAAEAWAIAABg1gAEAIgAAAAAAACAAAABDBWAACBAAAEAACQEAhAAAAQQAAgggwBijQ4AAAAAAAAAAAAAAAAAQAAAAABrYAAAAKDuMwAAAAA/AAAAAIAAAAAAAAACAAAAAAAAAA==:TklDIHN0YXRpc3RpY3M6CiAgICAgdHhfcGFja2V0czogMjY5CiAgICAgcnhfcGFja2V0czogMjYyCiAgICAgdHhfZXJyb3JzOiAxCiAgICAgcnhfZXJyb3JzOiAwCiAgICAgcnhfbWlzc2VkOiAwCiAgICAgYWxpZ25fZXJyb3JzOiAwCiAgICAgdHhfc2luZ2xlX2NvbGxpc2lvbnM6IDAKICAgICB0eF9tdWx0aV9jb2xsaXNpb25zOiAwCiAgICAgdW5pY2FzdDogMjYyCiAgICAgYnJvYWRjYXN0OiAwCiAgICAgbXVsdGljYXN0OiAwCiAgICAgdHhfYWJvcnRlZDogMAogICAgIHR4X3VuZGVycnVuOiAwCg==
1447985740.325972075:4JH1G1/GAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsO4zAAAAAAAwyUAFEAAAAAAAAAAACAwAAAAAf4AAAAAHAAcO5wAAPW5FoQAAAAAABQ0QoYABAAAAAAAAABAAABAAgAAAAAAAAAAAcwAAAAAA//8AAAAAAAAAAAAAAAAAAA1PCCAAACAQACgAAAQAggEYBARCGIAAAJEJIAAEAWAIAABg1gAEAIgAAAAAAACAAAABDBWAACBAAAEAACQEAhAAAAQQAAgggwBijQ4AAAAAAAAAAAAAAAAAQAAAAABrYAAAAKDuMwAAAAA/AAAAAIAAAAAAAAACAAAAAAAAAA==:TklDIHN0YXRpc3RpY3M6CiAgICAgdHhfcGFja2V0czogMjcxCiAgICAgcnhfcGFja2V0czogMjY0CiAgICAgdHhfZXJyb3JzOiAxCiAgICAgcnhfZXJyb3JzOiAwCiAgICAgcnhfbWlzc2VkOiAwCiAgICAgYWxpZ25fZXJyb3JzOiAwCiAgICAgdHhfc2luZ2xlX2NvbGxpc2lvbnM6IDAKICAgICB0eF9tdWx0aV9jb2xsaXNpb25zOiAwCiAgICAgdW5pY2FzdDogMjY0CiAgICAgYnJvYWRjYXN0OiAwCiAgICAgbXVsdGljYXN0OiAwCiAgICAgdHhfYWJvcnRlZDogMAogICAgIHR4X3VuZGVycnVuOiAwCg==
1447985741.330118113:4JH1G1/GAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsO4zAAAAAAAwyUAFEAAAAAAAAAAACAwAAAAAf4AAAAAHAAcO5wAAmuZCowAAAAAABQ0QoYABAAAAAAAAABAAABAAgAAAAAAAAAAAcwAAAAAA//8AAAAAAAAAAAAAAAAAAA1PCCAAACAQACgAAAQAggEYBARCGIAAAJEJIAAEAWAIAABg1gAEAIgAAAAAAACAAAABDBWAACBAAAEAACQEAhAAAAQQAAgggwBijQ4AAAAAAAAAAAAAAAAAQAAAAABrYAAAAKDuMwAAAAA/AAAAAIAAAAAAAAACAAAAAAAAAA==:TklDIHN0YXRpc3RpY3M6CiAgICAgdHhfcGFja2V0czogMjcxCiAgICAgcnhfcGFja2V0czogMjY0CiAgICAgdHhfZXJyb3JzOiAxCiAgICAgcnhfZXJyb3JzOiAwCiAgICAgcnhfbWlzc2VkOiAwCiAgICAgYWxpZ25fZXJyb3JzOiAwCiAgICAgdHhfc2luZ2xlX2NvbGxpc2lvbnM6IDAKICAgICB0eF9tdWx0aV9jb2xsaXNpb25zOiAwCiAgICAgdW5pY2FzdDogMjY0CiAgICAgYnJvYWRjYXN0OiAwCiAgICAgbXVsdGljYXN0OiAwCiAgICAgdHhfYWJvcnRlZDogMAogICAgIHR4X3VuZGVycnVuOiAwCg==
1447985742.334009017:4JH1G1/GAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsO4zAAAAAAAwyUAFEAAAAAAAAAAACAwAAAAAf4AAAAAHAAcO5wAAMUtApQAAAAAABQ0QoYABAAAAAAAAABAAABAAgAAAAAAAAAAAcwAAAAAA//8AAAAAAAAAAAAAAAAAAA1PCCAAACAQACgAAAQAggEYBARCGIAAAJEJIAAEAWAIAABg1gAEAIgAAAAAAACAAAABDBWAACBAAAEAACQEAhAAAAQQAAgggwBijQ4AAAAAAAAAAAAAAAAAQAAAAABrYAAAAKDuMwAAAAA/AAAAAIAAAAAAAAACAAAAAAAAAA==:TklDIHN0YXRpc3RpY3M6CiAgICAgdHhfcGFja2V0czogMjcxCiAgICAgcnhfcGFja2V0czogMjY0CiAgICAgdHhfZXJyb3JzOiAxCiAgICAgcnhfZXJyb3JzOiAwCiAgICAgcnhfbWlzc2VkOiAwCiAgICAgYWxpZ25fZXJyb3JzOiAwCiAgICAgdHhfc2luZ2xlX2NvbGxpc2lvbnM6IDAKICAgICB0eF9tdWx0aV9jb2xsaXNpb25zOiAwCiAgICAgdW5pY2FzdDogMjY0CiAgICAgYnJvYWRjYXN0OiAwCiAgICAgbXVsdGljYXN0OiAwCiAgICAgdHhfYWJvcnRlZDogMAogICAgIHR4X3VuZGVycnVuOiAwCg==
1447985743.337646906:4JH1G1/GAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsO4zAAAAAAAwyUAFEAAAAAAAAAAACAwAAAAAf4AAAAAHAAcO5wAAtq09pwAAAAAABQ0QoYABAAAAAAAAABAAABAAgAAAAAAAAAAAcwAAAAAA//8AAAAAAAAAAAAAAAAAAA1PCCAAACAQACgAAAQAggEYBARCGIAAAJEJIAAEAWAIAABg1gAEAIgAAAAAAACAAAABDBWAACBAAAEAACQEAhAAAAQQAAgggwBijQ4AAAAAAAAAAAAAAAAAQAAAAABrYAAAAKDuMwAAAAA/AAAAAIAAAAAAAAACAAAAAAAAAA==:TklDIHN0YXRpc3RpY3M6CiAgICAgdHhfcGFja2V0czogMjcxCiAgICAgcnhfcGFja2V0czogMjY0CiAgICAgdHhfZXJyb3JzOiAxCiAgICAgcnhfZXJyb3JzOiAwCiAgICAgcnhfbWlzc2VkOiAwCiAgICAgYWxpZ25fZXJyb3JzOiAwCiAgICAgdHhfc2luZ2xlX2NvbGxpc2lvbnM6IDAKICAgICB0eF9tdWx0aV9jb2xsaXNpb25zOiAwCiAgICAgdW5pY2FzdDogMjY0CiAgICAgYnJvYWRjYXN0OiAwCiAgICAgbXVsdGljYXN0OiAwCiAgICAgdHhfYWJvcnRlZDogMAogICAgIHR4X3VuZGVycnVuOiAwCg==
1447985744.341710301:4JH1G1/GAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsO4zAAAAAAAwyUAFEAAAAAAAAAAACAwAAAAAf4AAAAAHAAcO5wAAQDA7qQAAAAAABQ0QoYABAAAAAAAAABAAABAAgAAAAAAAAAAAcwAAAAAA//8AAAAAAAAAAAAAAAAAAA1PCCAAACAQACgAAAQAggEYBARCGIAAAJEJIAAEAWAIAABg1gAEAIgAAAAAAACAAAABDBWAACBAAAEAACQEAhAAAAQQAAgggwBijQ4AAAAAAAAAAAAAAAAAQAAAAABrYAAAAKDuMwAAAAA/AAAAAIAAAAAAAAACAAAAAAAAAA==:TklDIHN0YXRpc3RpY3M6CiAgICAgdHhfcGFja2V0czogMjcxCiAgICAgcnhfcGFja2V0czogMjY0CiAgICAgdHhfZXJyb3JzOiAxCiAgICAgcnhfZXJyb3JzOiAwCiAgICAgcnhfbWlzc2VkOiAwCiAgICAgYWxpZ25fZXJyb3JzOiAwCiAgICAgdHhfc2luZ2xlX2NvbGxpc2lvbnM6IDAKICAgICB0eF9tdWx0aV9jb2xsaXNpb25zOiAwCiAgICAgdW5pY2FzdDogMjY0CiAgICAgYnJvYWRjYXN0OiAwCiAgICAgbXVsdGljYXN0OiAwCiAgICAgdHhfYWJvcnRlZDogMAogICAgIHR4X3VuZGVycnVuOiAwCg==
1447985745.345781415:4JH1G1/GAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsO4zAAAAAAAwyUAFEAAAAAAAAAAACAwAAAAAf4AAAAAHAAcO5wAALZs4qwAAAAAABQ0QoYABAAAAAAAAABAAABAAgAAAAAAAAAAAcwAAAAAA//8AAAAAAAAAAAAAAAAAAA1PCCAAACAQACgAAAQAggEYBARCGIAAAJEJIAAEAWAIAABg1gAEAIgAAAAAAACAAAABDBWAACBAAAEAACQEAhAAAAQQAAgggwBijQ4AAAAAAAAAAAAAAAAAQAAAAABrYAAAAKDuMwAAAAA/AAAAAIAAAAAAAAACAAAAAAAAAA==:TklDIHN0YXRpc3RpY3M6CiAgICAgdHhfcGFja2V0czogMjcxCiAgICAgcnhfcGFja2V0czogMjY0CiAgICAgdHhfZXJyb3JzOiAxCiAgICAgcnhfZXJyb3JzOiAwCiAgICAgcnhfbWlzc2VkOiAwCiAgICAgYWxpZ25fZXJyb3JzOiAwCiAgICAgdHhfc2luZ2xlX2NvbGxpc2lvbnM6IDAKICAgICB0eF9tdWx0aV9jb2xsaXNpb25zOiAwCiAgICAgdW5pY2FzdDogMjY0CiAgICAgYnJvYWRjYXN0OiAwCiAgICAgbXVsdGljYXN0OiAwCiAgICAgdHhfYWJvcnRlZDogMAogICAgIHR4X3VuZGVycnVuOiAwCg==
1447985746.349656916:4JH1G1/GAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsO4zAAAAAAAwyUAFEAAAAAAAAAAACAwAAAAAf4AAAAAHAAcO5wAALfQ1rQAAAAAABQ0QoYABAAAAAAAAABAAABAAgAAAAAAAAAAAcwAAAAAA//8AAAAAAAAAAAAAAAAAAA1PCCAAACAQACgAAAQAggEYBARCGIAAAJEJIAAEAWAIAABg1gAEAIgAAAAAAACAAAABDBWAACBAAAEAACQEAhAAAAQQAAgggwBijQ4AAAAAAAAAAAAAAAAAQAAAAABrYAAAAKDuMwAAAAA/AAAAAIAAAAAAAAACAAAAAAAAAA==:TklDIHN0YXRpc3RpY3M6CiAgICAgdHhfcGFja2V0czogMjcxCiAgICAgcnhfcGFja2V0czogMjY0CiAgICAgdHhfZXJyb3JzOiAxCiAgICAgcnhfZXJyb3JzOiAwCiAgICAgcnhfbWlzc2VkOiAwCiAgICAgYWxpZ25fZXJyb3JzOiAwCiAgICAgdHhfc2luZ2xlX2NvbGxpc2lvbnM6IDAKICAgICB0eF9tdWx0aV9jb2xsaXNpb25zOiAwCiAgICAgdW5pY2FzdDogMjY0CiAgICAgYnJvYWRjYXN0OiAwCiAgICAgbXVsdGljYXN0OiAwCiAgICAgdHhfYWJvcnRlZDogMAogICAgIHR4X3VuZGVycnVuOiAwCg==
1447985747.353606904:4JH1G1/GAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsO4zAAAAAAAwyUAFEAAAAAAAAAAACAwAAAAAf4AAAAAHAAcO5wAA+m8zrwAAAAAABQ0QoYABAAAAAAAAABAAABAAgAAAAAAAAAAAcwAAAAAA//8AAAAAAAAAAAAAAAAAAA1PCCAAACAQACgAAAQAggEYBARCGIAAAJEJIAAEAWAIAABg1gAEAIgAAAAAAACAAAABDBWAACBAAAEAACQEAhAAAAQQAAgggwBijQ4AAAAAAAAAAAAAAAAAQAAAAABrYAAAAKDuMwAAAAA/AAAAAIAAAAAAAAACAAAAAAAAAA==:TklDIHN0YXRpc3RpY3M6CiAgICAgdHhfcGFja2V0czogMjcxCiAgICAgcnhfcGFja2V0czogMjY0CiAgICAgdHhfZXJyb3JzOiAxCiAgICAgcnhfZXJyb3JzOiAwCiAgICAgcnhfbWlzc2VkOiAwCiAgICAgYWxpZ25fZXJyb3JzOiAwCiAgICAgdHhfc2luZ2xlX2NvbGxpc2lvbnM6IDAKICAgICB0eF9tdWx0aV9jb2xsaXNpb25zOiAwCiAgICAgdW5pY2FzdDogMjY0CiAgICAgYnJvYWRjYXN0OiAwCiAgICAgbXVsdGljYXN0OiAwCiAgICAgdHhfYWJvcnRlZDogMAogICAgIHR4X3VuZGVycnVuOiAwCg==

^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: r8169 regression: UDP packets dropped intermittantly
  2015-11-19 21:44                 ` Francois Romieu
@ 2015-11-19 21:58                   ` Eric Dumazet
  0 siblings, 0 replies; 42+ messages in thread
From: Eric Dumazet @ 2015-11-19 21:58 UTC (permalink / raw)
  To: Francois Romieu; +Cc: Jonathan Woithe, netdev

On Thu, 2015-11-19 at 22:44 +0100, Francois Romieu wrote:
> Eric Dumazet <eric.dumazet@gmail.com> :
> [...]
> > This looks like a race when/if RX happens very shortly after one
> > transmit.
> > 
> > Francois, are we really saving lot of cpu cycles testing status ?
> 
> I'm not sure. An extra smp_rmb and three cache lines at most when
> there really isn't any work ? Probably not worth it.
> 
> Can you clarify which kind of race you're thinking about ?

I was mostly thinking of some hardware bug.

Or maybe a software barrier is missing, but I could not see it.

(Assuming rtl_get_events() is accurate, ie really returns a mask of
pending events in all circumstances, including if run in // from
rtl_slow_event_work() and rtl8169_poll())

^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: r8169 regression: UDP packets dropped intermittantly
  2015-11-19 12:22               ` Eric Dumazet
@ 2015-11-19 21:44                 ` Francois Romieu
  2015-11-19 21:58                   ` Eric Dumazet
  0 siblings, 1 reply; 42+ messages in thread
From: Francois Romieu @ 2015-11-19 21:44 UTC (permalink / raw)
  To: Eric Dumazet; +Cc: Jonathan Woithe, netdev

Eric Dumazet <eric.dumazet@gmail.com> :
[...]
> This looks like a race when/if RX happens very shortly after one
> transmit.
> 
> Francois, are we really saving lot of cpu cycles testing status ?

I'm not sure. An extra smp_rmb and three cache lines at most when
there really isn't any work ? Probably not worth it.

Can you clarify which kind of race you're thinking about ?

-- 
Ueimor

^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: r8169 regression: UDP packets dropped intermittantly
  2015-11-19  6:57             ` Jonathan Woithe
@ 2015-11-19 12:22               ` Eric Dumazet
  2015-11-19 21:44                 ` Francois Romieu
  0 siblings, 1 reply; 42+ messages in thread
From: Eric Dumazet @ 2015-11-19 12:22 UTC (permalink / raw)
  To: Jonathan Woithe; +Cc: Francois Romieu, netdev

On Thu, 2015-11-19 at 17:27 +1030, Jonathan Woithe wrote:
> On Thu, Nov 19, 2015 at 01:56:08AM +0100, Francois Romieu wrote:
> > Jonathan Woithe <jwoithe@atrad.com.au> :
> > [...]
> > > I could try.  What's the most reliable way to determine this?  Use regular
> > > ethtool queries about the time of the failures?
> > 
> > If you are neither space nor cpu constrained:
> > 
> > while : ; do
> > 	echo $(date +%s.%N):$(ethtool -d eth0 raw on | base64 -w 0):$(ethtool -S eth0 | base64 -w 0)
> > 	sleep 1
> > done > gloubi
> > 
> > Expect 2.5~3Mo per hour.
> 
> We're certainly not disc constrained.  The high speed acquisition takes a
> fair bit of CPU but there should still be sufficient free to at least give
> the above a go.  I'll run some tests tomorrow and see what transpires.

This looks like a race when/if RX happens very shortly after one
transmit.

Francois, are we really saving lot of cpu cycles testing status ?

Following patch would probably reduce the window.
(And doing TX completions before RX might help as well)


diff --git a/drivers/net/ethernet/realtek/r8169.c b/drivers/net/ethernet/realtek/r8169.c
index 79ef799f88ab1fc2518736163c5674aec360c065..ed3d0322643600c8c3521aa0ac7b935c929527aa 100644
--- a/drivers/net/ethernet/realtek/r8169.c
+++ b/drivers/net/ethernet/realtek/r8169.c
@@ -7541,17 +7541,14 @@ static int rtl8169_poll(struct napi_struct *napi, int budget)
 	struct rtl8169_private *tp = container_of(napi, struct rtl8169_private, napi);
 	struct net_device *dev = tp->dev;
 	u16 enable_mask = RTL_EVENT_NAPI | tp->event_slow;
-	int work_done= 0;
+	int work_done;
 	u16 status;
 
 	status = rtl_get_events(tp);
 	rtl_ack_events(tp, status & ~tp->event_slow);
 
-	if (status & RTL_EVENT_NAPI_RX)
-		work_done = rtl_rx(dev, tp, (u32) budget);
-
-	if (status & RTL_EVENT_NAPI_TX)
-		rtl_tx(dev, tp);
+	rtl_tx(dev, tp);
+	work_done = rtl_rx(dev, tp, (u32) budget);
 
 	if (status & tp->event_slow) {
 		enable_mask &= ~tp->event_slow;

^ permalink raw reply related	[flat|nested] 42+ messages in thread

* Re: r8169 regression: UDP packets dropped intermittantly
  2015-11-19  0:56           ` Francois Romieu
@ 2015-11-19  6:57             ` Jonathan Woithe
  2015-11-19 12:22               ` Eric Dumazet
  2015-11-20  2:46             ` Jonathan Woithe
  1 sibling, 1 reply; 42+ messages in thread
From: Jonathan Woithe @ 2015-11-19  6:57 UTC (permalink / raw)
  To: Francois Romieu; +Cc: netdev

On Thu, Nov 19, 2015 at 01:56:08AM +0100, Francois Romieu wrote:
> Jonathan Woithe <jwoithe@atrad.com.au> :
> [...]
> > I could try.  What's the most reliable way to determine this?  Use regular
> > ethtool queries about the time of the failures?
> 
> If you are neither space nor cpu constrained:
> 
> while : ; do
> 	echo $(date +%s.%N):$(ethtool -d eth0 raw on | base64 -w 0):$(ethtool -S eth0 | base64 -w 0)
> 	sleep 1
> done > gloubi
> 
> Expect 2.5~3Mo per hour.

We're certainly not disc constrained.  The high speed acquisition takes a
fair bit of CPU but there should still be sufficient free to at least give
the above a go.  I'll run some tests tomorrow and see what transpires.

Regards
  jonathan

^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: r8169 regression: UDP packets dropped intermittantly
  2015-11-18  5:09         ` Jonathan Woithe
@ 2015-11-19  0:56           ` Francois Romieu
  2015-11-19  6:57             ` Jonathan Woithe
  2015-11-20  2:46             ` Jonathan Woithe
  0 siblings, 2 replies; 42+ messages in thread
From: Francois Romieu @ 2015-11-19  0:56 UTC (permalink / raw)
  To: Jonathan Woithe; +Cc: netdev

Jonathan Woithe <jwoithe@atrad.com.au> :
[...]
> I could try.  What's the most reliable way to determine this?  Use regular
> ethtool queries about the time of the failures?

If you are neither space nor cpu constrained:

while : ; do
	echo $(date +%s.%N):$(ethtool -d eth0 raw on | base64 -w 0):$(ethtool -S eth0 | base64 -w 0)
	sleep 1
done > gloubi

Expect 2.5~3Mo per hour.

(I like gnuplot with lots of points and repetitive patterns)

-- 
Ueimor

^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: r8169 regression: UDP packets dropped intermittantly
  2015-11-17 23:21       ` Francois Romieu
@ 2015-11-18  5:09         ` Jonathan Woithe
  2015-11-19  0:56           ` Francois Romieu
  0 siblings, 1 reply; 42+ messages in thread
From: Jonathan Woithe @ 2015-11-18  5:09 UTC (permalink / raw)
  To: Francois Romieu; +Cc: netdev

On Wed, Nov 18, 2015 at 12:21:08AM +0100, Francois Romieu wrote:
> Jonathan Woithe <jwoithe@atrad.com.au> :
> [...]
> > It would be advantageous if we could upgrade this Linux system to a kernel
> > more recent than 2.6.35.11, but that will require a resolution to this
> > problem.  Since 2.6.35.11 works while current kernels do not, the only other
> > option is to stick with 2.6.35.11.  Is there anything we can do to try to
> > track down the problem?  I'm willing and able to run further tests on the
> > system as required.
> 
> If you were tracking the hardware stats (ethtool -S), would you be able to
> tell if the hardware sees the relevant UDP packets long before the driver
> does ?

Possibly.  The packet flow at the time of fault is quite low so it might be
doable.  What would be the best way to approach this?  Query "ethtool -S"
regularly around the point of failure?

> Would you be able to ascertain that the interrupt mask register (ethtool -d)
> is not set for an excessive amount of time ?

I could try.  What's the most reliable way to determine this?  Use regular
ethtool queries about the time of the failures?

Regards
  jonathan

^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: r8169 regression: UDP packets dropped intermittantly
  2015-11-17  1:56     ` Jonathan Woithe
@ 2015-11-17 23:21       ` Francois Romieu
  2015-11-18  5:09         ` Jonathan Woithe
  0 siblings, 1 reply; 42+ messages in thread
From: Francois Romieu @ 2015-11-17 23:21 UTC (permalink / raw)
  To: Jonathan Woithe; +Cc: netdev

Jonathan Woithe <jwoithe@atrad.com.au> :
[...]
> It would be advantageous if we could upgrade this Linux system to a kernel
> more recent than 2.6.35.11, but that will require a resolution to this
> problem.  Since 2.6.35.11 works while current kernels do not, the only other
> option is to stick with 2.6.35.11.  Is there anything we can do to try to
> track down the problem?  I'm willing and able to run further tests on the
> system as required.

If you were tracking the hardware stats (ethtool -S), would you be able to
tell if the hardware sees the relevant UDP packets long before the driver
does ?

Would you be able to ascertain that the interrupt mask register (ethtool -d)
is not set for an excessive amount of time ?

-- 
Ueimor

^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: r8169 regression: UDP packets dropped intermittantly
  2013-04-05  0:15   ` Jonathan Woithe
@ 2015-11-17  1:56     ` Jonathan Woithe
  2015-11-17 23:21       ` Francois Romieu
  0 siblings, 1 reply; 42+ messages in thread
From: Jonathan Woithe @ 2015-11-17  1:56 UTC (permalink / raw)
  To: Francois Romieu; +Cc: netdev

Hi all

Back in March/April 2013 I instigated this thread in connection with what
appeared to be a regression in the r8169 driver.  To briefly recap, we have
external hardware which transfers data at moderate rates (150-300 Mbits/sec)
to a Linux system using UDP packets.  The transfer stream lasts for around
55 seconds and restarts after a 5 second wait.  During the 5 second wait,
various systems are reconfigured, again using UDP.  The reconfiguration
involves the sending of around 5 UDP packets with payloads less than 32
bytes.

Under the fault which was noticed by us when Linux 3.8 was tried, UDP
packets associated with the reconfiguration - never the high speed streaming
- seemed to be lost, or at least delayed for many seconds.

A git bisect had suggested that the errant behaviour was introduced with:

  Commit: da78dbff2e05630921c551dbbc70a4b7981a8fff
  Author: Francois Romieu <romieu@fr.zoreil.com>
  Date:   Thu Jan 26 14:18:23 2012 +0100
  r8169: remove work from irq handler.

Through a series of circumstances this problem was not resolved at the time.

Recently I have been looking at upgrading the kernel used by the system and
installed Linux 4.3 to see whether anything had changed in the years since. 
The short answer is that the reconfiguration still fails in much the same
way as it did before, although it seems to happen a lot more frequently now.
Of course that doesn't rule out the option that the original problem has
been fixed and a new one - with very similar symptoms - has developed.

Using tcpdump on the system with the r8169 card it appears that in the fault
condition, the outgoing UDP packet is sent at the correct time and the
targetted equipment sends the reply within microseconds.  However, tcpdump
only sees the response many seconds later - after we've timed out waiting
for a response.  At least sometimes the old response is delivered at the
time another outgoing UDP packet is sent.  I have not yet determined whether
this happens all the time.

The same software on the same hardware running under 2.6.35.11 does not
suffer from any such problems.

The card in use is a Netgear GA311.  Lspic identifies it as a Realtek
Semiconductor Co., Ltd. RTL-8169 Gigabit Ethernet (rev 10).  The kernel is
32-bit.

It would be advantageous if we could upgrade this Linux system to a kernel
more recent than 2.6.35.11, but that will require a resolution to this
problem.  Since 2.6.35.11 works while current kernels do not, the only other
option is to stick with 2.6.35.11.  Is there anything we can do to try to
track down the problem?  I'm willing and able to run further tests on the
system as required.

Regards
  jonathan

^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: r8169 regression: UDP packets dropped intermittantly
  2013-03-11  0:02 ` Francois Romieu
  2013-03-11  0:17   ` Jonathan Woithe
  2013-03-11 22:18   ` Jonathan Woithe
@ 2013-04-05  0:15   ` Jonathan Woithe
  2015-11-17  1:56     ` Jonathan Woithe
  2 siblings, 1 reply; 42+ messages in thread
From: Jonathan Woithe @ 2013-04-05  0:15 UTC (permalink / raw)
  To: Francois Romieu; +Cc: netdev, Jonathan Woithe

On Mon, Mar 11, 2013 at 01:02:16AM +0100, Francois Romieu wrote:
> Jonathan Woithe <jwoithe@atrad.com.au> :
> [...]
> > While we can rely on the retry system to paper over this regression, the
> > behaviour of earlier kernels suggests that there is a real issue at play. 
> > Is there any chance that this can be looked at ?
> 
> Yes.
> 
> You'll have to be a bit patient since I still have to spend a pair of non
> worked hours on a compromised system. :o/

Do you have any indication yet as to when this might be able to be looked
at?

> Take it for what it's worth but I don't test much with PREEMPT, NOHZ or
> SLUB and I never tried all those at the same time.

FYI I sent a followup to this where I determined that the regression is
still present without the above kernel configuration parameters enabled.

jonathan

^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: r8169 regression: UDP packets dropped intermittantly
  2013-03-11  0:02 ` Francois Romieu
  2013-03-11  0:17   ` Jonathan Woithe
@ 2013-03-11 22:18   ` Jonathan Woithe
  2013-04-05  0:15   ` Jonathan Woithe
  2 siblings, 0 replies; 42+ messages in thread
From: Jonathan Woithe @ 2013-03-11 22:18 UTC (permalink / raw)
  To: Francois Romieu; +Cc: netdev, Jonathan Woithe

This is following up on my response from a few days ago.

On Mon, Mar 11, 2013 at 01:02:16AM +0100, Francois Romieu wrote:
> Jonathan Woithe <jwoithe@atrad.com.au> :
> [...]
> > While we can rely on the retry system to paper over this regression, the
> > behaviour of earlier kernels suggests that there is a real issue at play. 
> > Is there any chance that this can be looked at ?
> :
> Take it for what it's worth but I don't test much with PREEMPT, NOHZ or
> SLUB and I never tried all those at the same time.

I have now run tests to address this comment.  Starting with the kernel
config I originally posted:

 * turn off CONFIG_NO_HZ: problem still present.

 * then turn off PREEMPT settings: problem still present.

 * then change from SLUB to SLAB allocator: problem still present.

In conclusion, the problem still shows when the kernel is configured to use
SLAB without PREEMPT and NOHZ.

Regards
  jonathan

^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: r8169 regression: UDP packets dropped intermittantly
  2013-03-11  0:02 ` Francois Romieu
@ 2013-03-11  0:17   ` Jonathan Woithe
  2013-03-11 22:18   ` Jonathan Woithe
  2013-04-05  0:15   ` Jonathan Woithe
  2 siblings, 0 replies; 42+ messages in thread
From: Jonathan Woithe @ 2013-03-11  0:17 UTC (permalink / raw)
  To: Francois Romieu; +Cc: netdev, Jonathan Woithe

On Mon, Mar 11, 2013 at 01:02:16AM +0100, Francois Romieu wrote:
> Jonathan Woithe <jwoithe@atrad.com.au> :
> [...]
> > While we can rely on the retry system to paper over this regression, the
> > behaviour of earlier kernels suggests that there is a real issue at play. 
> > Is there any chance that this can be looked at ?
> 
> Yes.
> 
> You'll have to be a bit patient since I still have to spend a pair of non
> worked hours on a compromised system. :o/

That's fine.  Do I wait for you to ping me about this?

> Take it for what it's worth but I don't test much with PREEMPT, NOHZ or
> SLUB and I never tried all those at the same time.

Fair enough.  I'm not using CONFIG_PREEMPT but NOHZ and SLUB are both in the
mix.  In the meantime I can easily test to see if turning off
CONFIG_PREEMPT_VOLUNTARY, CONFIG_NO_HZ and/or moving to SLAB changes things.
I'll report the findings.

Regards
  jonathan

^ permalink raw reply	[flat|nested] 42+ messages in thread

* Re: r8169 regression: UDP packets dropped intermittantly
  2013-03-09  6:46 Jonathan Woithe
@ 2013-03-11  0:02 ` Francois Romieu
  2013-03-11  0:17   ` Jonathan Woithe
                     ` (2 more replies)
  0 siblings, 3 replies; 42+ messages in thread
From: Francois Romieu @ 2013-03-11  0:02 UTC (permalink / raw)
  To: Jonathan Woithe; +Cc: netdev

Jonathan Woithe <jwoithe@atrad.com.au> :
[...]
> While we can rely on the retry system to paper over this regression, the
> behaviour of earlier kernels suggests that there is a real issue at play. 
> Is there any chance that this can be looked at ?

Yes.

You'll have to be a bit patient since I still have to spend a pair of non
worked hours on a compromised system. :o/

Take it for what it's worth but I don't test much with PREEMPT, NOHZ or
SLUB and I never tried all those at the same time.

-- 
Ueimor

^ permalink raw reply	[flat|nested] 42+ messages in thread

* r8169 regression: UDP packets dropped intermittantly
@ 2013-03-09  6:46 Jonathan Woithe
  2013-03-11  0:02 ` Francois Romieu
  0 siblings, 1 reply; 42+ messages in thread
From: Jonathan Woithe @ 2013-03-09  6:46 UTC (permalink / raw)
  To: netdev; +Cc: Jonathan Woithe, romieu

We run a system which transfers data at moderate rates (150-300 Mbits/sec)
to a Linux system using UDP packets.  The transfer stream lasts for around
55 seconds and restarts after a 5 second wait.  During the 5 second wait,
various systems are reconfigured, again using UDP.

Previously we have been using kernel 2.6.35.11 and everything has worked
well.  However, recently a memory leak has come to light in that kernel so
we tried the system under 3.8 (at the time the latest stable release).  The
memory leak was gone, but what we found was that the UDP configuration would
fail intermittantly; either the configuration packet isn't being sent or the
acknowledgement isn't being received by the Linux PC application layer.

The fault would normally show up within 3 hours of starting a test (the
maximum wait before a failure occurs in an affected kernel so far is 6 hours
50 minutes).  Within a given 6 hour period we might see 10 failures with the
newer kernels.  Going back to 2.6.35.11, we see no failures during
continuous operation over periods extending beyond 300 days.

I have done a git bisect, and the first commit to show this problem was
da78dbff2e05630921c551dbbc70a4b7981a8fff:

  Author: Francois Romieu <romieu@fr.zoreil.com>
  Date:   Thu Jan 26 14:18:23 2012 +0100
  r8169: remove work from irq handler.

While we can rely on the retry system to paper over this regression, the
behaviour of earlier kernels suggests that there is a real issue at play. 
Is there any chance that this can be looked at?  I am happy to run further
tests to assist in debugging the problem.

The kernel configuration at the conclusion of the git bisect is included at
the end of the email in case it's useful.

The card in use is a Netgear GA311.  Lspic identifies it as a Realtek
Semiconductor Co., Ltd. RTL-8169 Gigabit Ethernet (rev 10).  The kernel is
32-bit.

Regards
  jonathan

#
# Automatically generated file; DO NOT EDIT.
# Linux/i386 3.3.0-rc1 Kernel Configuration
#
# CONFIG_64BIT is not set
CONFIG_X86_32=y
# CONFIG_X86_64 is not set
CONFIG_X86=y
CONFIG_INSTRUCTION_DECODER=y
CONFIG_OUTPUT_FORMAT="elf32-i386"
CONFIG_ARCH_DEFCONFIG="arch/x86/configs/i386_defconfig"
CONFIG_GENERIC_CMOS_UPDATE=y
CONFIG_CLOCKSOURCE_WATCHDOG=y
CONFIG_GENERIC_CLOCKEVENTS=y
CONFIG_GENERIC_CLOCKEVENTS_BROADCAST=y
CONFIG_LOCKDEP_SUPPORT=y
CONFIG_STACKTRACE_SUPPORT=y
CONFIG_HAVE_LATENCYTOP_SUPPORT=y
CONFIG_MMU=y
# CONFIG_NEED_DMA_MAP_STATE is not set
CONFIG_NEED_SG_DMA_LENGTH=y
CONFIG_GENERIC_ISA_DMA=y
CONFIG_GENERIC_BUG=y
CONFIG_GENERIC_HWEIGHT=y
CONFIG_GENERIC_GPIO=y
CONFIG_ARCH_MAY_HAVE_PC_FDC=y
# CONFIG_RWSEM_GENERIC_SPINLOCK is not set
CONFIG_RWSEM_XCHGADD_ALGORITHM=y
CONFIG_ARCH_HAS_CPU_IDLE_WAIT=y
CONFIG_GENERIC_CALIBRATE_DELAY=y
# CONFIG_GENERIC_TIME_VSYSCALL is not set
CONFIG_ARCH_HAS_CPU_RELAX=y
CONFIG_ARCH_HAS_DEFAULT_IDLE=y
CONFIG_ARCH_HAS_CACHE_LINE_SIZE=y
CONFIG_HAVE_SETUP_PER_CPU_AREA=y
CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK=y
CONFIG_NEED_PER_CPU_PAGE_FIRST_CHUNK=y
CONFIG_ARCH_HIBERNATION_POSSIBLE=y
CONFIG_ARCH_SUSPEND_POSSIBLE=y
# CONFIG_ZONE_DMA32 is not set
# CONFIG_AUDIT_ARCH is not set
CONFIG_ARCH_SUPPORTS_OPTIMIZED_INLINING=y
CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
CONFIG_X86_32_SMP=y
CONFIG_X86_HT=y
CONFIG_ARCH_HWEIGHT_CFLAGS="-fcall-saved-ecx -fcall-saved-edx"
CONFIG_KTIME_SCALAR=y
CONFIG_ARCH_CPU_PROBE_RELEASE=y
CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
CONFIG_HAVE_IRQ_WORK=y
CONFIG_IRQ_WORK=y

#
# General setup
#
CONFIG_EXPERIMENTAL=y
CONFIG_INIT_ENV_ARG_LIMIT=32
CONFIG_CROSS_COMPILE=""
CONFIG_LOCALVERSION="-smp"
# CONFIG_LOCALVERSION_AUTO is not set
CONFIG_HAVE_KERNEL_GZIP=y
CONFIG_HAVE_KERNEL_BZIP2=y
CONFIG_HAVE_KERNEL_LZMA=y
CONFIG_HAVE_KERNEL_XZ=y
CONFIG_HAVE_KERNEL_LZO=y
# CONFIG_KERNEL_GZIP is not set
# CONFIG_KERNEL_BZIP2 is not set
CONFIG_KERNEL_LZMA=y
# CONFIG_KERNEL_XZ is not set
# CONFIG_KERNEL_LZO is not set
CONFIG_DEFAULT_HOSTNAME="darkstar"
CONFIG_SWAP=y
CONFIG_SYSVIPC=y
CONFIG_SYSVIPC_SYSCTL=y
CONFIG_POSIX_MQUEUE=y
CONFIG_POSIX_MQUEUE_SYSCTL=y
CONFIG_BSD_PROCESS_ACCT=y
CONFIG_BSD_PROCESS_ACCT_V3=y
# CONFIG_FHANDLE is not set
CONFIG_TASKSTATS=y
CONFIG_TASK_DELAY_ACCT=y
CONFIG_TASK_XACCT=y
CONFIG_TASK_IO_ACCOUNTING=y
CONFIG_AUDIT=y
CONFIG_AUDITSYSCALL=y
CONFIG_AUDIT_WATCH=y
CONFIG_AUDIT_TREE=y
# CONFIG_AUDIT_LOGINUID_IMMUTABLE is not set
CONFIG_HAVE_GENERIC_HARDIRQS=y

#
# IRQ subsystem
#
CONFIG_GENERIC_HARDIRQS=y
CONFIG_HAVE_SPARSE_IRQ=y
CONFIG_GENERIC_IRQ_PROBE=y
CONFIG_GENERIC_IRQ_SHOW=y
CONFIG_GENERIC_PENDING_IRQ=y
CONFIG_GENERIC_IRQ_CHIP=y
CONFIG_IRQ_FORCED_THREADING=y
CONFIG_SPARSE_IRQ=y

#
# RCU Subsystem
#
CONFIG_TREE_RCU=y
# CONFIG_PREEMPT_RCU is not set
# CONFIG_RCU_TRACE is not set
CONFIG_RCU_FANOUT=32
# CONFIG_RCU_FANOUT_EXACT is not set
# CONFIG_RCU_FAST_NO_HZ is not set
# CONFIG_TREE_RCU_TRACE is not set
CONFIG_IKCONFIG=y
CONFIG_IKCONFIG_PROC=y
CONFIG_LOG_BUF_SHIFT=18
CONFIG_HAVE_UNSTABLE_SCHED_CLOCK=y
CONFIG_CGROUPS=y
# CONFIG_CGROUP_DEBUG is not set
CONFIG_CGROUP_FREEZER=y
CONFIG_CGROUP_DEVICE=y
CONFIG_CPUSETS=y
CONFIG_PROC_PID_CPUSET=y
CONFIG_CGROUP_CPUACCT=y
CONFIG_RESOURCE_COUNTERS=y
# CONFIG_CGROUP_MEM_RES_CTLR is not set
CONFIG_CGROUP_PERF=y
CONFIG_CGROUP_SCHED=y
CONFIG_FAIR_GROUP_SCHED=y
# CONFIG_CFS_BANDWIDTH is not set
CONFIG_RT_GROUP_SCHED=y
CONFIG_BLK_CGROUP=y
# CONFIG_DEBUG_BLK_CGROUP is not set
# CONFIG_CHECKPOINT_RESTORE is not set
CONFIG_NAMESPACES=y
CONFIG_UTS_NS=y
CONFIG_IPC_NS=y
CONFIG_USER_NS=y
CONFIG_PID_NS=y
CONFIG_NET_NS=y
# CONFIG_SCHED_AUTOGROUP is not set
# CONFIG_SYSFS_DEPRECATED is not set
CONFIG_RELAY=y
CONFIG_BLK_DEV_INITRD=y
CONFIG_INITRAMFS_SOURCE=""
CONFIG_RD_GZIP=y
CONFIG_RD_BZIP2=y
CONFIG_RD_LZMA=y
CONFIG_RD_XZ=y
CONFIG_RD_LZO=y
# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set
CONFIG_SYSCTL=y
CONFIG_ANON_INODES=y
# CONFIG_EXPERT is not set
CONFIG_UID16=y
# CONFIG_SYSCTL_SYSCALL is not set
CONFIG_KALLSYMS=y
# CONFIG_KALLSYMS_ALL is not set
CONFIG_HOTPLUG=y
CONFIG_PRINTK=y
CONFIG_BUG=y
CONFIG_ELF_CORE=y
CONFIG_PCSPKR_PLATFORM=y
CONFIG_HAVE_PCSPKR_PLATFORM=y
CONFIG_BASE_FULL=y
CONFIG_FUTEX=y
CONFIG_EPOLL=y
CONFIG_SIGNALFD=y
CONFIG_TIMERFD=y
CONFIG_EVENTFD=y
CONFIG_SHMEM=y
CONFIG_AIO=y
# CONFIG_EMBEDDED is not set
CONFIG_HAVE_PERF_EVENTS=y

#
# Kernel Performance Events And Counters
#
CONFIG_PERF_EVENTS=y
# CONFIG_PERF_COUNTERS is not set
# CONFIG_DEBUG_PERF_USE_VMALLOC is not set
CONFIG_VM_EVENT_COUNTERS=y
CONFIG_PCI_QUIRKS=y
CONFIG_SLUB_DEBUG=y
# CONFIG_COMPAT_BRK is not set
# CONFIG_SLAB is not set
CONFIG_SLUB=y
CONFIG_PROFILING=y
CONFIG_TRACEPOINTS=y
CONFIG_OPROFILE=m
# CONFIG_OPROFILE_EVENT_MULTIPLEX is not set
CONFIG_HAVE_OPROFILE=y
CONFIG_OPROFILE_NMI_TIMER=y
# CONFIG_KPROBES is not set
# CONFIG_JUMP_LABEL is not set
CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y
CONFIG_USER_RETURN_NOTIFIER=y
CONFIG_HAVE_IOREMAP_PROT=y
CONFIG_HAVE_KPROBES=y
CONFIG_HAVE_KRETPROBES=y
CONFIG_HAVE_OPTPROBES=y
CONFIG_HAVE_ARCH_TRACEHOOK=y
CONFIG_HAVE_DMA_ATTRS=y
CONFIG_USE_GENERIC_SMP_HELPERS=y
CONFIG_HAVE_REGS_AND_STACK_ACCESS_API=y
CONFIG_HAVE_DMA_API_DEBUG=y
CONFIG_HAVE_HW_BREAKPOINT=y
CONFIG_HAVE_MIXED_BREAKPOINTS_REGS=y
CONFIG_HAVE_USER_RETURN_NOTIFIER=y
CONFIG_HAVE_PERF_EVENTS_NMI=y
CONFIG_HAVE_ARCH_JUMP_LABEL=y
CONFIG_ARCH_HAVE_NMI_SAFE_CMPXCHG=y
CONFIG_HAVE_ALIGNED_STRUCT_PAGE=y
CONFIG_HAVE_CMPXCHG_LOCAL=y
CONFIG_HAVE_CMPXCHG_DOUBLE=y

#
# GCOV-based kernel profiling
#
# CONFIG_GCOV_KERNEL is not set
CONFIG_HAVE_GENERIC_DMA_COHERENT=y
CONFIG_SLABINFO=y
CONFIG_RT_MUTEXES=y
CONFIG_BASE_SMALL=0
CONFIG_MODULES=y
CONFIG_MODULE_FORCE_LOAD=y
CONFIG_MODULE_UNLOAD=y
CONFIG_MODULE_FORCE_UNLOAD=y
# CONFIG_MODVERSIONS is not set
# CONFIG_MODULE_SRCVERSION_ALL is not set
CONFIG_STOP_MACHINE=y
CONFIG_BLOCK=y
CONFIG_LBDAF=y
CONFIG_BLK_DEV_BSG=y
CONFIG_BLK_DEV_BSGLIB=y
# CONFIG_BLK_DEV_INTEGRITY is not set
CONFIG_BLK_DEV_THROTTLING=y

#
# Partition Types
#
CONFIG_PARTITION_ADVANCED=y
# CONFIG_ACORN_PARTITION is not set
CONFIG_OSF_PARTITION=y
CONFIG_AMIGA_PARTITION=y
# CONFIG_ATARI_PARTITION is not set
CONFIG_MAC_PARTITION=y
CONFIG_MSDOS_PARTITION=y
CONFIG_BSD_DISKLABEL=y
CONFIG_MINIX_SUBPARTITION=y
CONFIG_SOLARIS_X86_PARTITION=y
CONFIG_UNIXWARE_DISKLABEL=y
# CONFIG_LDM_PARTITION is not set
CONFIG_SGI_PARTITION=y
# CONFIG_ULTRIX_PARTITION is not set
CONFIG_SUN_PARTITION=y
CONFIG_KARMA_PARTITION=y
CONFIG_EFI_PARTITION=y
# CONFIG_SYSV68_PARTITION is not set

#
# IO Schedulers
#
CONFIG_IOSCHED_NOOP=y
CONFIG_IOSCHED_DEADLINE=y
CONFIG_IOSCHED_CFQ=y
CONFIG_CFQ_GROUP_IOSCHED=y
# CONFIG_DEFAULT_DEADLINE is not set
CONFIG_DEFAULT_CFQ=y
# CONFIG_DEFAULT_NOOP is not set
CONFIG_DEFAULT_IOSCHED="cfq"
CONFIG_PREEMPT_NOTIFIERS=y
CONFIG_PADATA=y
# CONFIG_INLINE_SPIN_TRYLOCK is not set
# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
# CONFIG_INLINE_SPIN_LOCK is not set
# CONFIG_INLINE_SPIN_LOCK_BH is not set
# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
CONFIG_INLINE_SPIN_UNLOCK=y
# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
# CONFIG_INLINE_READ_TRYLOCK is not set
# CONFIG_INLINE_READ_LOCK is not set
# CONFIG_INLINE_READ_LOCK_BH is not set
# CONFIG_INLINE_READ_LOCK_IRQ is not set
# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
CONFIG_INLINE_READ_UNLOCK=y
# CONFIG_INLINE_READ_UNLOCK_BH is not set
CONFIG_INLINE_READ_UNLOCK_IRQ=y
# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
# CONFIG_INLINE_WRITE_TRYLOCK is not set
# CONFIG_INLINE_WRITE_LOCK is not set
# CONFIG_INLINE_WRITE_LOCK_BH is not set
# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
CONFIG_INLINE_WRITE_UNLOCK=y
# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
CONFIG_MUTEX_SPIN_ON_OWNER=y
CONFIG_FREEZER=y

#
# Processor type and features
#
CONFIG_ZONE_DMA=y
CONFIG_TICK_ONESHOT=y
CONFIG_NO_HZ=y
CONFIG_HIGH_RES_TIMERS=y
CONFIG_GENERIC_CLOCKEVENTS_BUILD=y
CONFIG_GENERIC_CLOCKEVENTS_MIN_ADJUST=y
CONFIG_SMP=y
CONFIG_X86_MPPARSE=y
CONFIG_X86_BIGSMP=y
# CONFIG_X86_EXTENDED_PLATFORM is not set
CONFIG_X86_SUPPORTS_MEMORY_FAILURE=y
CONFIG_X86_32_IRIS=m
CONFIG_SCHED_OMIT_FRAME_POINTER=y
# CONFIG_PARAVIRT_GUEST is not set
CONFIG_NO_BOOTMEM=y
CONFIG_MEMTEST=y
# CONFIG_M386 is not set
# CONFIG_M486 is not set
# CONFIG_M586 is not set
# CONFIG_M586TSC is not set
# CONFIG_M586MMX is not set
# CONFIG_M686 is not set
# CONFIG_MPENTIUMII is not set
CONFIG_MPENTIUMIII=y
# CONFIG_MPENTIUMM is not set
# CONFIG_MPENTIUM4 is not set
# CONFIG_MK6 is not set
# CONFIG_MK7 is not set
# CONFIG_MK8 is not set
# CONFIG_MCRUSOE is not set
# CONFIG_MEFFICEON is not set
# CONFIG_MWINCHIPC6 is not set
# CONFIG_MWINCHIP3D is not set
# CONFIG_MELAN is not set
# CONFIG_MGEODEGX1 is not set
# CONFIG_MGEODE_LX is not set
# CONFIG_MCYRIXIII is not set
# CONFIG_MVIAC3_2 is not set
# CONFIG_MVIAC7 is not set
# CONFIG_MCORE2 is not set
# CONFIG_MATOM is not set
CONFIG_X86_GENERIC=y
CONFIG_X86_INTERNODE_CACHE_SHIFT=7
CONFIG_X86_CMPXCHG=y
CONFIG_X86_L1_CACHE_SHIFT=6
CONFIG_X86_XADD=y
CONFIG_X86_WP_WORKS_OK=y
CONFIG_X86_INVLPG=y
CONFIG_X86_BSWAP=y
CONFIG_X86_POPAD_OK=y
CONFIG_X86_INTEL_USERCOPY=y
CONFIG_X86_USE_PPRO_CHECKSUM=y
CONFIG_X86_TSC=y
CONFIG_X86_CMPXCHG64=y
CONFIG_X86_CMOV=y
CONFIG_X86_MINIMUM_CPU_FAMILY=5
CONFIG_X86_DEBUGCTLMSR=y
CONFIG_CPU_SUP_INTEL=y
CONFIG_CPU_SUP_CYRIX_32=y
CONFIG_CPU_SUP_AMD=y
CONFIG_CPU_SUP_CENTAUR=y
CONFIG_CPU_SUP_TRANSMETA_32=y
CONFIG_CPU_SUP_UMC_32=y
CONFIG_HPET_TIMER=y
CONFIG_HPET_EMULATE_RTC=y
CONFIG_DMI=y
# CONFIG_IOMMU_HELPER is not set
CONFIG_NR_CPUS=32
CONFIG_SCHED_SMT=y
CONFIG_SCHED_MC=y
# CONFIG_IRQ_TIME_ACCOUNTING is not set
# CONFIG_PREEMPT_NONE is not set
CONFIG_PREEMPT_VOLUNTARY=y
# CONFIG_PREEMPT is not set
CONFIG_X86_LOCAL_APIC=y
CONFIG_X86_IO_APIC=y
CONFIG_X86_REROUTE_FOR_BROKEN_BOOT_IRQS=y
CONFIG_X86_MCE=y
CONFIG_X86_MCE_INTEL=y
CONFIG_X86_MCE_AMD=y
CONFIG_X86_ANCIENT_MCE=y
CONFIG_X86_MCE_THRESHOLD=y
CONFIG_X86_MCE_INJECT=m
CONFIG_X86_THERMAL_VECTOR=y
CONFIG_VM86=y
CONFIG_TOSHIBA=m
CONFIG_I8K=m
CONFIG_X86_REBOOTFIXUPS=y
CONFIG_MICROCODE=m
CONFIG_MICROCODE_INTEL=y
CONFIG_MICROCODE_AMD=y
CONFIG_MICROCODE_OLD_INTERFACE=y
CONFIG_X86_MSR=m
CONFIG_X86_CPUID=m
# CONFIG_NOHIGHMEM is not set
# CONFIG_HIGHMEM4G is not set
CONFIG_HIGHMEM64G=y
CONFIG_PAGE_OFFSET=0xC0000000
CONFIG_HIGHMEM=y
CONFIG_X86_PAE=y
CONFIG_ARCH_PHYS_ADDR_T_64BIT=y
CONFIG_ARCH_DMA_ADDR_T_64BIT=y
CONFIG_NUMA=y
# CONFIG_NUMA_EMU is not set
CONFIG_NODES_SHIFT=3
CONFIG_HAVE_ARCH_BOOTMEM=y
CONFIG_HAVE_ARCH_ALLOC_REMAP=y
CONFIG_ARCH_HAVE_MEMORY_PRESENT=y
CONFIG_NEED_NODE_MEMMAP_SIZE=y
CONFIG_ARCH_DISCONTIGMEM_ENABLE=y
CONFIG_ARCH_DISCONTIGMEM_DEFAULT=y
CONFIG_ARCH_SPARSEMEM_ENABLE=y
CONFIG_ARCH_SELECT_MEMORY_MODEL=y
CONFIG_ILLEGAL_POINTER_VALUE=0
CONFIG_SELECT_MEMORY_MODEL=y
CONFIG_DISCONTIGMEM_MANUAL=y
# CONFIG_SPARSEMEM_MANUAL is not set
CONFIG_DISCONTIGMEM=y
CONFIG_FLAT_NODE_MEM_MAP=y
CONFIG_NEED_MULTIPLE_NODES=y
CONFIG_HAVE_MEMORY_PRESENT=y
CONFIG_SPARSEMEM_STATIC=y
CONFIG_HAVE_MEMBLOCK=y
CONFIG_HAVE_MEMBLOCK_NODE_MAP=y
CONFIG_ARCH_DISCARD_MEMBLOCK=y
CONFIG_PAGEFLAGS_EXTENDED=y
CONFIG_SPLIT_PTLOCK_CPUS=4
CONFIG_COMPACTION=y
CONFIG_MIGRATION=y
CONFIG_PHYS_ADDR_T_64BIT=y
CONFIG_ZONE_DMA_FLAG=1
CONFIG_BOUNCE=y
CONFIG_VIRT_TO_BUS=y
CONFIG_MMU_NOTIFIER=y
# CONFIG_KSM is not set
CONFIG_DEFAULT_MMAP_MIN_ADDR=98304
CONFIG_ARCH_SUPPORTS_MEMORY_FAILURE=y
# CONFIG_MEMORY_FAILURE is not set
CONFIG_TRANSPARENT_HUGEPAGE=y
CONFIG_TRANSPARENT_HUGEPAGE_ALWAYS=y
# CONFIG_TRANSPARENT_HUGEPAGE_MADVISE is not set
# CONFIG_CLEANCACHE is not set
CONFIG_HIGHPTE=y
# CONFIG_X86_CHECK_BIOS_CORRUPTION is not set
CONFIG_X86_RESERVE_LOW=64
CONFIG_MATH_EMULATION=y
CONFIG_MTRR=y
CONFIG_MTRR_SANITIZER=y
CONFIG_MTRR_SANITIZER_ENABLE_DEFAULT=0
CONFIG_MTRR_SANITIZER_SPARE_REG_NR_DEFAULT=1
CONFIG_X86_PAT=y
CONFIG_ARCH_USES_PG_UNCACHED=y
CONFIG_ARCH_RANDOM=y
CONFIG_EFI=y
# CONFIG_EFI_STUB is not set
CONFIG_SECCOMP=y
CONFIG_CC_STACKPROTECTOR=y
# CONFIG_HZ_100 is not set
# CONFIG_HZ_250 is not set
# CONFIG_HZ_300 is not set
CONFIG_HZ_1000=y
CONFIG_HZ=1000
CONFIG_SCHED_HRTICK=y
# CONFIG_KEXEC is not set
# CONFIG_CRASH_DUMP is not set
CONFIG_PHYSICAL_START=0x1000000
# CONFIG_RELOCATABLE is not set
CONFIG_PHYSICAL_ALIGN=0x100000
CONFIG_HOTPLUG_CPU=y
CONFIG_COMPAT_VDSO=y
# CONFIG_CMDLINE_BOOL is not set
CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
CONFIG_USE_PERCPU_NUMA_NODE_ID=y

#
# Power management and ACPI options
#
CONFIG_SUSPEND=y
CONFIG_SUSPEND_FREEZER=y
CONFIG_HIBERNATE_CALLBACKS=y
CONFIG_HIBERNATION=y
CONFIG_PM_STD_PARTITION="\"\""
CONFIG_PM_SLEEP=y
CONFIG_PM_SLEEP_SMP=y
CONFIG_PM_RUNTIME=y
CONFIG_PM=y
# CONFIG_PM_DEBUG is not set
CONFIG_ACPI=y
CONFIG_ACPI_SLEEP=y
CONFIG_ACPI_PROCFS=y
CONFIG_ACPI_PROCFS_POWER=y
CONFIG_ACPI_EC_DEBUGFS=m
CONFIG_ACPI_PROC_EVENT=y
CONFIG_ACPI_AC=m
CONFIG_ACPI_BATTERY=m
CONFIG_ACPI_BUTTON=m
CONFIG_ACPI_VIDEO=m
CONFIG_ACPI_FAN=m
CONFIG_ACPI_DOCK=y
CONFIG_ACPI_PROCESSOR=m
CONFIG_ACPI_IPMI=m
CONFIG_ACPI_HOTPLUG_CPU=y
CONFIG_ACPI_PROCESSOR_AGGREGATOR=m
CONFIG_ACPI_THERMAL=m
# CONFIG_ACPI_NUMA is not set
# CONFIG_ACPI_CUSTOM_DSDT is not set
CONFIG_ACPI_BLACKLIST_YEAR=2001
# CONFIG_ACPI_DEBUG is not set
CONFIG_ACPI_PCI_SLOT=m
CONFIG_X86_PM_TIMER=y
CONFIG_ACPI_CONTAINER=m
CONFIG_ACPI_SBS=m
CONFIG_ACPI_HED=y
# CONFIG_ACPI_CUSTOM_METHOD is not set
CONFIG_ACPI_APEI=y
CONFIG_ACPI_APEI_GHES=y
CONFIG_ACPI_APEI_PCIEAER=y
CONFIG_ACPI_APEI_EINJ=m
CONFIG_ACPI_APEI_ERST_DEBUG=m
CONFIG_SFI=y
# CONFIG_APM is not set

#
# CPU Frequency scaling
#
CONFIG_CPU_FREQ=y
CONFIG_CPU_FREQ_TABLE=m
CONFIG_CPU_FREQ_STAT=m
CONFIG_CPU_FREQ_STAT_DETAILS=y
# CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE is not set
CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE=y
# CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND is not set
# CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set
CONFIG_CPU_FREQ_GOV_PERFORMANCE=m
CONFIG_CPU_FREQ_GOV_POWERSAVE=m
CONFIG_CPU_FREQ_GOV_USERSPACE=y
CONFIG_CPU_FREQ_GOV_ONDEMAND=m
CONFIG_CPU_FREQ_GOV_CONSERVATIVE=m

#
# x86 CPU frequency scaling drivers
#
CONFIG_X86_PCC_CPUFREQ=m
CONFIG_X86_ACPI_CPUFREQ=m
CONFIG_X86_POWERNOW_K6=m
CONFIG_X86_POWERNOW_K7=m
CONFIG_X86_POWERNOW_K7_ACPI=y
CONFIG_X86_POWERNOW_K8=m
CONFIG_X86_GX_SUSPMOD=m
CONFIG_X86_SPEEDSTEP_CENTRINO=m
CONFIG_X86_SPEEDSTEP_CENTRINO_TABLE=y
CONFIG_X86_SPEEDSTEP_ICH=m
CONFIG_X86_SPEEDSTEP_SMI=m
CONFIG_X86_P4_CLOCKMOD=m
CONFIG_X86_CPUFREQ_NFORCE2=m
CONFIG_X86_LONGRUN=m
CONFIG_X86_LONGHAUL=m
CONFIG_X86_E_POWERSAVER=m

#
# shared options
#
CONFIG_X86_SPEEDSTEP_LIB=m
CONFIG_X86_SPEEDSTEP_RELAXED_CAP_CHECK=y
CONFIG_CPU_IDLE=y
CONFIG_CPU_IDLE_GOV_LADDER=y
CONFIG_CPU_IDLE_GOV_MENU=y
CONFIG_INTEL_IDLE=y

#
# Bus options (PCI etc.)
#
CONFIG_PCI=y
# CONFIG_PCI_GOBIOS is not set
# CONFIG_PCI_GOMMCONFIG is not set
# CONFIG_PCI_GODIRECT is not set
CONFIG_PCI_GOANY=y
CONFIG_PCI_BIOS=y
CONFIG_PCI_DIRECT=y
CONFIG_PCI_MMCONFIG=y
CONFIG_PCI_DOMAINS=y
# CONFIG_PCI_CNB20LE_QUIRK is not set
CONFIG_PCIEPORTBUS=y
CONFIG_HOTPLUG_PCI_PCIE=m
CONFIG_PCIEAER=y
# CONFIG_PCIE_ECRC is not set
CONFIG_PCIEAER_INJECT=m
CONFIG_PCIEASPM=y
# CONFIG_PCIEASPM_DEBUG is not set
CONFIG_PCIE_PME=y
CONFIG_ARCH_SUPPORTS_MSI=y
CONFIG_PCI_MSI=y
# CONFIG_PCI_DEBUG is not set
CONFIG_PCI_STUB=m
CONFIG_HT_IRQ=y
# CONFIG_PCI_IOV is not set
# CONFIG_PCI_PRI is not set
# CONFIG_PCI_PASID is not set
CONFIG_PCI_IOAPIC=y
CONFIG_PCI_LABEL=y
CONFIG_ISA_DMA_API=y
CONFIG_ISA=y
# CONFIG_EISA is not set
# CONFIG_MCA is not set
CONFIG_SCx200=m
CONFIG_SCx200HR_TIMER=m
# CONFIG_ALIX is not set
CONFIG_AMD_NB=y
CONFIG_PCCARD=m
CONFIG_PCMCIA=m
CONFIG_PCMCIA_LOAD_CIS=y
CONFIG_CARDBUS=y

#
# PC-card bridges
#
CONFIG_YENTA=m
CONFIG_YENTA_O2=y
CONFIG_YENTA_RICOH=y
CONFIG_YENTA_TI=y
CONFIG_YENTA_ENE_TUNE=y
CONFIG_YENTA_TOSHIBA=y
CONFIG_PD6729=m
CONFIG_I82092=m
CONFIG_I82365=m
CONFIG_TCIC=m
CONFIG_PCMCIA_PROBE=y
CONFIG_PCCARD_NONSTATIC=y
CONFIG_HOTPLUG_PCI=y
# CONFIG_HOTPLUG_PCI_FAKE is not set
CONFIG_HOTPLUG_PCI_COMPAQ=m
# CONFIG_HOTPLUG_PCI_COMPAQ_NVRAM is not set
CONFIG_HOTPLUG_PCI_IBM=m
CONFIG_HOTPLUG_PCI_ACPI=m
CONFIG_HOTPLUG_PCI_ACPI_IBM=m
# CONFIG_HOTPLUG_PCI_CPCI is not set
CONFIG_HOTPLUG_PCI_SHPC=m
# CONFIG_RAPIDIO is not set

#
# Executable file formats / Emulations
#
CONFIG_BINFMT_ELF=y
CONFIG_ARCH_BINFMT_ELF_RANDOMIZE_PIE=y
# CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set
CONFIG_HAVE_AOUT=y
CONFIG_BINFMT_AOUT=m
CONFIG_BINFMT_MISC=m
CONFIG_HAVE_ATOMIC_IOMAP=y
CONFIG_HAVE_TEXT_POKE_SMP=y
CONFIG_NET=y

#
# Networking options
#
CONFIG_PACKET=y
CONFIG_UNIX=y
# CONFIG_UNIX_DIAG is not set
CONFIG_XFRM=y
CONFIG_XFRM_USER=y
# CONFIG_XFRM_SUB_POLICY is not set
# CONFIG_XFRM_MIGRATE is not set
# CONFIG_XFRM_STATISTICS is not set
CONFIG_XFRM_IPCOMP=m
CONFIG_NET_KEY=m
# CONFIG_NET_KEY_MIGRATE is not set
CONFIG_INET=y
CONFIG_IP_MULTICAST=y
CONFIG_IP_ADVANCED_ROUTER=y
# CONFIG_IP_FIB_TRIE_STATS is not set
CONFIG_IP_MULTIPLE_TABLES=y
CONFIG_IP_ROUTE_MULTIPATH=y
CONFIG_IP_ROUTE_VERBOSE=y
CONFIG_IP_ROUTE_CLASSID=y
# CONFIG_IP_PNP is not set
CONFIG_NET_IPIP=m
CONFIG_NET_IPGRE_DEMUX=m
CONFIG_NET_IPGRE=m
CONFIG_NET_IPGRE_BROADCAST=y
CONFIG_IP_MROUTE=y
CONFIG_IP_MROUTE_MULTIPLE_TABLES=y
CONFIG_IP_PIMSM_V1=y
CONFIG_IP_PIMSM_V2=y
# CONFIG_ARPD is not set
CONFIG_SYN_COOKIES=y
CONFIG_INET_AH=m
CONFIG_INET_ESP=m
CONFIG_INET_IPCOMP=m
CONFIG_INET_XFRM_TUNNEL=m
CONFIG_INET_TUNNEL=m
CONFIG_INET_XFRM_MODE_TRANSPORT=m
CONFIG_INET_XFRM_MODE_TUNNEL=m
CONFIG_INET_XFRM_MODE_BEET=m
CONFIG_INET_LRO=y
CONFIG_INET_DIAG=m
CONFIG_INET_TCP_DIAG=m
CONFIG_INET_UDP_DIAG=m
# CONFIG_TCP_CONG_ADVANCED is not set
CONFIG_TCP_CONG_CUBIC=y
CONFIG_DEFAULT_TCP_CONG="cubic"
# CONFIG_TCP_MD5SIG is not set
CONFIG_IPV6=m
CONFIG_IPV6_PRIVACY=y
# CONFIG_IPV6_ROUTER_PREF is not set
# CONFIG_IPV6_OPTIMISTIC_DAD is not set
CONFIG_INET6_AH=m
CONFIG_INET6_ESP=m
CONFIG_INET6_IPCOMP=m
CONFIG_IPV6_MIP6=m
CONFIG_INET6_XFRM_TUNNEL=m
CONFIG_INET6_TUNNEL=m
CONFIG_INET6_XFRM_MODE_TRANSPORT=m
CONFIG_INET6_XFRM_MODE_TUNNEL=m
CONFIG_INET6_XFRM_MODE_BEET=m
CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=m
CONFIG_IPV6_SIT=m
# CONFIG_IPV6_SIT_6RD is not set
CONFIG_IPV6_NDISC_NODETYPE=y
CONFIG_IPV6_TUNNEL=m
# CONFIG_IPV6_MULTIPLE_TABLES is not set
# CONFIG_IPV6_MROUTE is not set
# CONFIG_NETLABEL is not set
# CONFIG_NETWORK_SECMARK is not set
# CONFIG_NETWORK_PHY_TIMESTAMPING is not set
CONFIG_NETFILTER=y
# CONFIG_NETFILTER_DEBUG is not set
CONFIG_NETFILTER_ADVANCED=y
CONFIG_BRIDGE_NETFILTER=y

#
# Core Netfilter Configuration
#
CONFIG_NETFILTER_NETLINK=m
# CONFIG_NETFILTER_NETLINK_ACCT is not set
CONFIG_NETFILTER_NETLINK_QUEUE=m
CONFIG_NETFILTER_NETLINK_LOG=m
CONFIG_NF_CONNTRACK=m
CONFIG_NF_CONNTRACK_MARK=y
CONFIG_NF_CONNTRACK_ZONES=y
CONFIG_NF_CONNTRACK_PROCFS=y
# CONFIG_NF_CONNTRACK_EVENTS is not set
# CONFIG_NF_CONNTRACK_TIMESTAMP is not set
CONFIG_NF_CT_PROTO_DCCP=m
CONFIG_NF_CT_PROTO_GRE=m
CONFIG_NF_CT_PROTO_SCTP=m
CONFIG_NF_CT_PROTO_UDPLITE=m
CONFIG_NF_CONNTRACK_AMANDA=m
CONFIG_NF_CONNTRACK_FTP=m
CONFIG_NF_CONNTRACK_H323=m
CONFIG_NF_CONNTRACK_IRC=m
CONFIG_NF_CONNTRACK_BROADCAST=m
CONFIG_NF_CONNTRACK_NETBIOS_NS=m
CONFIG_NF_CONNTRACK_SNMP=m
CONFIG_NF_CONNTRACK_PPTP=m
CONFIG_NF_CONNTRACK_SANE=m
CONFIG_NF_CONNTRACK_SIP=m
CONFIG_NF_CONNTRACK_TFTP=m
CONFIG_NF_CT_NETLINK=m
CONFIG_NETFILTER_TPROXY=m
CONFIG_NETFILTER_XTABLES=m

#
# Xtables combined modules
#
CONFIG_NETFILTER_XT_MARK=m
CONFIG_NETFILTER_XT_CONNMARK=m
CONFIG_NETFILTER_XT_SET=m

#
# Xtables targets
#
CONFIG_NETFILTER_XT_TARGET_AUDIT=m
CONFIG_NETFILTER_XT_TARGET_CHECKSUM=m
CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m
CONFIG_NETFILTER_XT_TARGET_CONNMARK=m
CONFIG_NETFILTER_XT_TARGET_CT=m
CONFIG_NETFILTER_XT_TARGET_DSCP=m
CONFIG_NETFILTER_XT_TARGET_HL=m
CONFIG_NETFILTER_XT_TARGET_IDLETIMER=m
CONFIG_NETFILTER_XT_TARGET_LED=m
CONFIG_NETFILTER_XT_TARGET_MARK=m
CONFIG_NETFILTER_XT_TARGET_NFLOG=m
CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m
# CONFIG_NETFILTER_XT_TARGET_NOTRACK is not set
CONFIG_NETFILTER_XT_TARGET_RATEEST=m
CONFIG_NETFILTER_XT_TARGET_TEE=m
CONFIG_NETFILTER_XT_TARGET_TPROXY=m
CONFIG_NETFILTER_XT_TARGET_TRACE=m
CONFIG_NETFILTER_XT_TARGET_TCPMSS=m
CONFIG_NETFILTER_XT_TARGET_TCPOPTSTRIP=m

#
# Xtables matches
#
CONFIG_NETFILTER_XT_MATCH_ADDRTYPE=m
CONFIG_NETFILTER_XT_MATCH_CLUSTER=m
CONFIG_NETFILTER_XT_MATCH_COMMENT=m
CONFIG_NETFILTER_XT_MATCH_CONNBYTES=m
CONFIG_NETFILTER_XT_MATCH_CONNLIMIT=m
CONFIG_NETFILTER_XT_MATCH_CONNMARK=m
CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m
CONFIG_NETFILTER_XT_MATCH_CPU=m
CONFIG_NETFILTER_XT_MATCH_DCCP=m
CONFIG_NETFILTER_XT_MATCH_DEVGROUP=m
CONFIG_NETFILTER_XT_MATCH_DSCP=m
CONFIG_NETFILTER_XT_MATCH_ECN=m
CONFIG_NETFILTER_XT_MATCH_ESP=m
CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m
CONFIG_NETFILTER_XT_MATCH_HELPER=m
CONFIG_NETFILTER_XT_MATCH_HL=m
CONFIG_NETFILTER_XT_MATCH_IPRANGE=m
CONFIG_NETFILTER_XT_MATCH_IPVS=m
CONFIG_NETFILTER_XT_MATCH_LENGTH=m
CONFIG_NETFILTER_XT_MATCH_LIMIT=m
CONFIG_NETFILTER_XT_MATCH_MAC=m
CONFIG_NETFILTER_XT_MATCH_MARK=m
CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m
# CONFIG_NETFILTER_XT_MATCH_NFACCT is not set
CONFIG_NETFILTER_XT_MATCH_OSF=m
CONFIG_NETFILTER_XT_MATCH_OWNER=m
CONFIG_NETFILTER_XT_MATCH_POLICY=m
CONFIG_NETFILTER_XT_MATCH_PHYSDEV=m
CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m
CONFIG_NETFILTER_XT_MATCH_QUOTA=m
CONFIG_NETFILTER_XT_MATCH_RATEEST=m
CONFIG_NETFILTER_XT_MATCH_REALM=m
CONFIG_NETFILTER_XT_MATCH_RECENT=m
CONFIG_NETFILTER_XT_MATCH_SCTP=m
CONFIG_NETFILTER_XT_MATCH_SOCKET=m
CONFIG_NETFILTER_XT_MATCH_STATE=m
CONFIG_NETFILTER_XT_MATCH_STATISTIC=m
CONFIG_NETFILTER_XT_MATCH_STRING=m
CONFIG_NETFILTER_XT_MATCH_TCPMSS=m
CONFIG_NETFILTER_XT_MATCH_TIME=m
CONFIG_NETFILTER_XT_MATCH_U32=m
CONFIG_IP_SET=m
CONFIG_IP_SET_MAX=256
CONFIG_IP_SET_BITMAP_IP=m
CONFIG_IP_SET_BITMAP_IPMAC=m
CONFIG_IP_SET_BITMAP_PORT=m
CONFIG_IP_SET_HASH_IP=m
CONFIG_IP_SET_HASH_IPPORT=m
CONFIG_IP_SET_HASH_IPPORTIP=m
CONFIG_IP_SET_HASH_IPPORTNET=m
CONFIG_IP_SET_HASH_NET=m
CONFIG_IP_SET_HASH_NETPORT=m
# CONFIG_IP_SET_HASH_NETIFACE is not set
CONFIG_IP_SET_LIST_SET=m
CONFIG_IP_VS=m
# CONFIG_IP_VS_IPV6 is not set
# CONFIG_IP_VS_DEBUG is not set
CONFIG_IP_VS_TAB_BITS=12

#
# IPVS transport protocol load balancing support
#
CONFIG_IP_VS_PROTO_TCP=y
CONFIG_IP_VS_PROTO_UDP=y
CONFIG_IP_VS_PROTO_AH_ESP=y
CONFIG_IP_VS_PROTO_ESP=y
CONFIG_IP_VS_PROTO_AH=y
CONFIG_IP_VS_PROTO_SCTP=y

#
# IPVS scheduler
#
CONFIG_IP_VS_RR=m
CONFIG_IP_VS_WRR=m
CONFIG_IP_VS_LC=m
CONFIG_IP_VS_WLC=m
CONFIG_IP_VS_LBLC=m
CONFIG_IP_VS_LBLCR=m
CONFIG_IP_VS_DH=m
CONFIG_IP_VS_SH=m
CONFIG_IP_VS_SED=m
CONFIG_IP_VS_NQ=m

#
# IPVS SH scheduler
#
CONFIG_IP_VS_SH_TAB_BITS=8

#
# IPVS application helper
#
CONFIG_IP_VS_FTP=m
CONFIG_IP_VS_NFCT=y
CONFIG_IP_VS_PE_SIP=m

#
# IP: Netfilter Configuration
#
CONFIG_NF_DEFRAG_IPV4=m
CONFIG_NF_CONNTRACK_IPV4=m
CONFIG_NF_CONNTRACK_PROC_COMPAT=y
CONFIG_IP_NF_QUEUE=m
CONFIG_IP_NF_IPTABLES=m
CONFIG_IP_NF_MATCH_AH=m
CONFIG_IP_NF_MATCH_ECN=m
# CONFIG_IP_NF_MATCH_RPFILTER is not set
CONFIG_IP_NF_MATCH_TTL=m
CONFIG_IP_NF_FILTER=m
CONFIG_IP_NF_TARGET_REJECT=m
# CONFIG_IP_NF_TARGET_LOG is not set
CONFIG_IP_NF_TARGET_ULOG=m
CONFIG_NF_NAT=m
CONFIG_NF_NAT_NEEDED=y
CONFIG_IP_NF_TARGET_MASQUERADE=m
CONFIG_IP_NF_TARGET_NETMAP=m
CONFIG_IP_NF_TARGET_REDIRECT=m
CONFIG_NF_NAT_SNMP_BASIC=m
CONFIG_NF_NAT_PROTO_DCCP=m
CONFIG_NF_NAT_PROTO_GRE=m
CONFIG_NF_NAT_PROTO_UDPLITE=m
CONFIG_NF_NAT_PROTO_SCTP=m
CONFIG_NF_NAT_FTP=m
CONFIG_NF_NAT_IRC=m
CONFIG_NF_NAT_TFTP=m
CONFIG_NF_NAT_AMANDA=m
CONFIG_NF_NAT_PPTP=m
CONFIG_NF_NAT_H323=m
CONFIG_NF_NAT_SIP=m
CONFIG_IP_NF_MANGLE=m
CONFIG_IP_NF_TARGET_CLUSTERIP=m
CONFIG_IP_NF_TARGET_ECN=m
CONFIG_IP_NF_TARGET_TTL=m
CONFIG_IP_NF_RAW=m
CONFIG_IP_NF_SECURITY=m
CONFIG_IP_NF_ARPTABLES=m
CONFIG_IP_NF_ARPFILTER=m
CONFIG_IP_NF_ARP_MANGLE=m

#
# IPv6: Netfilter Configuration
#
CONFIG_NF_DEFRAG_IPV6=m
CONFIG_NF_CONNTRACK_IPV6=m
# CONFIG_IP6_NF_QUEUE is not set
CONFIG_IP6_NF_IPTABLES=m
CONFIG_IP6_NF_MATCH_AH=m
CONFIG_IP6_NF_MATCH_EUI64=m
CONFIG_IP6_NF_MATCH_FRAG=m
CONFIG_IP6_NF_MATCH_OPTS=m
CONFIG_IP6_NF_MATCH_HL=m
CONFIG_IP6_NF_MATCH_IPV6HEADER=m
CONFIG_IP6_NF_MATCH_MH=m
# CONFIG_IP6_NF_MATCH_RPFILTER is not set
CONFIG_IP6_NF_MATCH_RT=m
CONFIG_IP6_NF_TARGET_HL=m
# CONFIG_IP6_NF_TARGET_LOG is not set
CONFIG_IP6_NF_FILTER=m
CONFIG_IP6_NF_TARGET_REJECT=m
CONFIG_IP6_NF_MANGLE=m
CONFIG_IP6_NF_RAW=m
CONFIG_IP6_NF_SECURITY=m

#
# DECnet: Netfilter Configuration
#
# CONFIG_DECNET_NF_GRABULATOR is not set
CONFIG_BRIDGE_NF_EBTABLES=m
CONFIG_BRIDGE_EBT_BROUTE=m
CONFIG_BRIDGE_EBT_T_FILTER=m
CONFIG_BRIDGE_EBT_T_NAT=m
CONFIG_BRIDGE_EBT_802_3=m
CONFIG_BRIDGE_EBT_AMONG=m
CONFIG_BRIDGE_EBT_ARP=m
CONFIG_BRIDGE_EBT_IP=m
CONFIG_BRIDGE_EBT_IP6=m
CONFIG_BRIDGE_EBT_LIMIT=m
CONFIG_BRIDGE_EBT_MARK=m
CONFIG_BRIDGE_EBT_PKTTYPE=m
CONFIG_BRIDGE_EBT_STP=m
CONFIG_BRIDGE_EBT_VLAN=m
CONFIG_BRIDGE_EBT_ARPREPLY=m
CONFIG_BRIDGE_EBT_DNAT=m
CONFIG_BRIDGE_EBT_MARK_T=m
CONFIG_BRIDGE_EBT_REDIRECT=m
CONFIG_BRIDGE_EBT_SNAT=m
CONFIG_BRIDGE_EBT_LOG=m
CONFIG_BRIDGE_EBT_ULOG=m
CONFIG_BRIDGE_EBT_NFLOG=m
CONFIG_IP_DCCP=m
CONFIG_INET_DCCP_DIAG=m

#
# DCCP CCIDs Configuration (EXPERIMENTAL)
#
# CONFIG_IP_DCCP_CCID2_DEBUG is not set
# CONFIG_IP_DCCP_CCID3 is not set

#
# DCCP Kernel Hacking
#
# CONFIG_IP_DCCP_DEBUG is not set
CONFIG_IP_SCTP=m
# CONFIG_SCTP_DBG_MSG is not set
# CONFIG_SCTP_DBG_OBJCNT is not set
# CONFIG_SCTP_HMAC_NONE is not set
# CONFIG_SCTP_HMAC_SHA1 is not set
CONFIG_SCTP_HMAC_MD5=y
CONFIG_RDS=m
CONFIG_RDS_RDMA=m
CONFIG_RDS_TCP=m
# CONFIG_RDS_DEBUG is not set
CONFIG_TIPC=m
# CONFIG_TIPC_ADVANCED is not set
# CONFIG_TIPC_DEBUG is not set
CONFIG_ATM=m
CONFIG_ATM_CLIP=m
# CONFIG_ATM_CLIP_NO_ICMP is not set
CONFIG_ATM_LANE=m
CONFIG_ATM_MPOA=m
CONFIG_ATM_BR2684=m
# CONFIG_ATM_BR2684_IPFILTER is not set
CONFIG_L2TP=m
CONFIG_L2TP_DEBUGFS=m
CONFIG_L2TP_V3=y
CONFIG_L2TP_IP=m
CONFIG_L2TP_ETH=m
CONFIG_STP=m
CONFIG_GARP=m
CONFIG_BRIDGE=m
CONFIG_BRIDGE_IGMP_SNOOPING=y
# CONFIG_NET_DSA is not set
CONFIG_VLAN_8021Q=m
CONFIG_VLAN_8021Q_GVRP=y
CONFIG_DECNET=m
# CONFIG_DECNET_ROUTER is not set
CONFIG_LLC=m
CONFIG_LLC2=m
CONFIG_IPX=m
# CONFIG_IPX_INTERN is not set
CONFIG_ATALK=m
CONFIG_DEV_APPLETALK=m
CONFIG_LTPC=m
CONFIG_COPS=m
CONFIG_COPS_DAYNA=y
CONFIG_COPS_TANGENT=y
CONFIG_IPDDP=m
CONFIG_IPDDP_ENCAP=y
CONFIG_IPDDP_DECAP=y
# CONFIG_X25 is not set
# CONFIG_LAPB is not set
# CONFIG_ECONET is not set
CONFIG_WAN_ROUTER=m
# CONFIG_PHONET is not set
CONFIG_IEEE802154=m
# CONFIG_IEEE802154_6LOWPAN is not set
CONFIG_NET_SCHED=y

#
# Queueing/Scheduling
#
CONFIG_NET_SCH_CBQ=m
CONFIG_NET_SCH_HTB=m
CONFIG_NET_SCH_HFSC=m
CONFIG_NET_SCH_ATM=m
CONFIG_NET_SCH_PRIO=m
CONFIG_NET_SCH_MULTIQ=m
CONFIG_NET_SCH_RED=m
CONFIG_NET_SCH_SFB=m
CONFIG_NET_SCH_SFQ=m
CONFIG_NET_SCH_TEQL=m
CONFIG_NET_SCH_TBF=m
CONFIG_NET_SCH_GRED=m
CONFIG_NET_SCH_DSMARK=m
CONFIG_NET_SCH_NETEM=m
CONFIG_NET_SCH_DRR=m
CONFIG_NET_SCH_MQPRIO=m
CONFIG_NET_SCH_CHOKE=m
CONFIG_NET_SCH_QFQ=m
CONFIG_NET_SCH_INGRESS=m

#
# Classification
#
CONFIG_NET_CLS=y
CONFIG_NET_CLS_BASIC=m
CONFIG_NET_CLS_TCINDEX=m
CONFIG_NET_CLS_ROUTE4=m
CONFIG_NET_CLS_FW=m
CONFIG_NET_CLS_U32=m
# CONFIG_CLS_U32_PERF is not set
CONFIG_CLS_U32_MARK=y
CONFIG_NET_CLS_RSVP=m
CONFIG_NET_CLS_RSVP6=m
CONFIG_NET_CLS_FLOW=m
CONFIG_NET_CLS_CGROUP=y
CONFIG_NET_EMATCH=y
CONFIG_NET_EMATCH_STACK=32
CONFIG_NET_EMATCH_CMP=m
CONFIG_NET_EMATCH_NBYTE=m
CONFIG_NET_EMATCH_U32=m
CONFIG_NET_EMATCH_META=m
CONFIG_NET_EMATCH_TEXT=m
CONFIG_NET_CLS_ACT=y
CONFIG_NET_ACT_POLICE=y
CONFIG_NET_ACT_GACT=m
CONFIG_GACT_PROB=y
CONFIG_NET_ACT_MIRRED=m
CONFIG_NET_ACT_IPT=m
CONFIG_NET_ACT_NAT=m
CONFIG_NET_ACT_PEDIT=m
CONFIG_NET_ACT_SIMP=m
CONFIG_NET_ACT_SKBEDIT=m
CONFIG_NET_ACT_CSUM=m
# CONFIG_NET_CLS_IND is not set
CONFIG_NET_SCH_FIFO=y
# CONFIG_DCB is not set
CONFIG_DNS_RESOLVER=y
CONFIG_BATMAN_ADV=m
# CONFIG_BATMAN_ADV_DEBUG is not set
# CONFIG_OPENVSWITCH is not set
CONFIG_RPS=y
CONFIG_RFS_ACCEL=y
CONFIG_XPS=y
# CONFIG_NETPRIO_CGROUP is not set
CONFIG_BQL=y

#
# Network testing
#
# CONFIG_NET_PKTGEN is not set
# CONFIG_NET_DROP_MONITOR is not set
CONFIG_HAMRADIO=y

#
# Packet Radio protocols
#
CONFIG_AX25=m
# CONFIG_AX25_DAMA_SLAVE is not set
CONFIG_NETROM=m
CONFIG_ROSE=m

#
# AX.25 network device drivers
#
CONFIG_MKISS=m
CONFIG_6PACK=m
CONFIG_BPQETHER=m
CONFIG_SCC=m
CONFIG_SCC_DELAY=y
CONFIG_SCC_TRXECHO=y
CONFIG_BAYCOM_SER_FDX=m
CONFIG_BAYCOM_SER_HDX=m
CONFIG_BAYCOM_PAR=m
CONFIG_BAYCOM_EPP=m
CONFIG_YAM=m
CONFIG_CAN=m
CONFIG_CAN_RAW=m
CONFIG_CAN_BCM=m
# CONFIG_CAN_GW is not set

#
# CAN Device Drivers
#
CONFIG_CAN_VCAN=m
CONFIG_CAN_SLCAN=m
CONFIG_CAN_DEV=m
CONFIG_CAN_CALC_BITTIMING=y
CONFIG_CAN_JANZ_ICAN3=m
CONFIG_PCH_CAN=m
CONFIG_CAN_SJA1000=m
CONFIG_CAN_SJA1000_ISA=m
CONFIG_CAN_SJA1000_PLATFORM=m
# CONFIG_CAN_EMS_PCMCIA is not set
CONFIG_CAN_EMS_PCI=m
# CONFIG_CAN_PEAK_PCI is not set
CONFIG_CAN_KVASER_PCI=m
CONFIG_CAN_PLX_PCI=m
CONFIG_CAN_TSCAN1=m
CONFIG_CAN_C_CAN=m
CONFIG_CAN_C_CAN_PLATFORM=m
# CONFIG_CAN_CC770 is not set

#
# CAN USB interfaces
#
CONFIG_CAN_EMS_USB=m
CONFIG_CAN_ESD_USB2=m
CONFIG_CAN_SOFTING=m
CONFIG_CAN_SOFTING_CS=m
# CONFIG_CAN_DEBUG_DEVICES is not set
CONFIG_IRDA=m

#
# IrDA protocols
#
CONFIG_IRLAN=m
CONFIG_IRNET=m
CONFIG_IRCOMM=m
# CONFIG_IRDA_ULTRA is not set

#
# IrDA options
#
CONFIG_IRDA_CACHE_LAST_LSAP=y
CONFIG_IRDA_FAST_RR=y
# CONFIG_IRDA_DEBUG is not set

#
# Infrared-port device drivers
#

#
# SIR device drivers
#
CONFIG_IRTTY_SIR=m

#
# Dongle support
#
CONFIG_DONGLE=y
CONFIG_ESI_DONGLE=m
CONFIG_ACTISYS_DONGLE=m
CONFIG_TEKRAM_DONGLE=m
CONFIG_TOIM3232_DONGLE=m
CONFIG_LITELINK_DONGLE=m
CONFIG_MA600_DONGLE=m
CONFIG_GIRBIL_DONGLE=m
CONFIG_MCP2120_DONGLE=m
CONFIG_OLD_BELKIN_DONGLE=m
CONFIG_ACT200L_DONGLE=m
CONFIG_KINGSUN_DONGLE=m
CONFIG_KSDAZZLE_DONGLE=m
CONFIG_KS959_DONGLE=m

#
# FIR device drivers
#
CONFIG_USB_IRDA=m
CONFIG_SIGMATEL_FIR=m
CONFIG_NSC_FIR=m
CONFIG_WINBOND_FIR=m
CONFIG_TOSHIBA_FIR=m
CONFIG_SMC_IRCC_FIR=m
CONFIG_ALI_FIR=m
CONFIG_VLSI_FIR=m
CONFIG_VIA_FIR=m
CONFIG_MCS_FIR=m
CONFIG_BT=m
# CONFIG_BT_RFCOMM is not set
# CONFIG_BT_BNEP is not set
# CONFIG_BT_CMTP is not set
# CONFIG_BT_HIDP is not set

#
# Bluetooth device drivers
#
CONFIG_BT_HCIBTUSB=m
CONFIG_BT_HCIBTSDIO=m
CONFIG_BT_HCIUART=m
CONFIG_BT_HCIUART_H4=y
CONFIG_BT_HCIUART_BCSP=y
CONFIG_BT_HCIUART_ATH3K=y
CONFIG_BT_HCIUART_LL=y
CONFIG_BT_HCIBCM203X=m
CONFIG_BT_HCIBPA10X=m
CONFIG_BT_HCIBFUSB=m
CONFIG_BT_HCIDTL1=m
CONFIG_BT_HCIBT3C=m
CONFIG_BT_HCIBLUECARD=m
CONFIG_BT_HCIBTUART=m
CONFIG_BT_HCIVHCI=m
CONFIG_BT_MRVL=m
CONFIG_BT_MRVL_SDIO=m
CONFIG_BT_ATH3K=m
CONFIG_BT_WILINK=m
CONFIG_AF_RXRPC=m
# CONFIG_AF_RXRPC_DEBUG is not set
CONFIG_RXKAD=m
CONFIG_FIB_RULES=y
CONFIG_WIRELESS=y
CONFIG_WIRELESS_EXT=y
CONFIG_WEXT_CORE=y
CONFIG_WEXT_PROC=y
CONFIG_WEXT_SPY=y
CONFIG_WEXT_PRIV=y
CONFIG_CFG80211=m
# CONFIG_NL80211_TESTMODE is not set
# CONFIG_CFG80211_DEVELOPER_WARNINGS is not set
# CONFIG_CFG80211_REG_DEBUG is not set
CONFIG_CFG80211_DEFAULT_PS=y
# CONFIG_CFG80211_DEBUGFS is not set
# CONFIG_CFG80211_INTERNAL_REGDB is not set
CONFIG_CFG80211_WEXT=y
# CONFIG_WIRELESS_EXT_SYSFS is not set
CONFIG_LIB80211=m
CONFIG_LIB80211_CRYPT_WEP=m
CONFIG_LIB80211_CRYPT_CCMP=m
CONFIG_LIB80211_CRYPT_TKIP=m
# CONFIG_LIB80211_DEBUG is not set
CONFIG_MAC80211=m
CONFIG_MAC80211_HAS_RC=y
CONFIG_MAC80211_RC_MINSTREL=y
CONFIG_MAC80211_RC_MINSTREL_HT=y
CONFIG_MAC80211_RC_DEFAULT_MINSTREL=y
CONFIG_MAC80211_RC_DEFAULT="minstrel_ht"
CONFIG_MAC80211_MESH=y
CONFIG_MAC80211_LEDS=y
# CONFIG_MAC80211_DEBUGFS is not set
# CONFIG_MAC80211_DEBUG_MENU is not set
CONFIG_WIMAX=m
CONFIG_WIMAX_DEBUG_LEVEL=8
CONFIG_RFKILL=m
CONFIG_RFKILL_LEDS=y
CONFIG_RFKILL_INPUT=y
CONFIG_RFKILL_REGULATOR=m
CONFIG_NET_9P=m
CONFIG_NET_9P_VIRTIO=m
CONFIG_NET_9P_RDMA=m
# CONFIG_NET_9P_DEBUG is not set
# CONFIG_CAIF is not set
CONFIG_CEPH_LIB=m
# CONFIG_CEPH_LIB_PRETTYDEBUG is not set
# CONFIG_CEPH_LIB_USE_DNS_RESOLVER is not set
# CONFIG_NFC is not set

#
# Device Drivers
#

#
# Generic Driver Options
#
CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
CONFIG_DEVTMPFS=y
CONFIG_DEVTMPFS_MOUNT=y
CONFIG_STANDALONE=y
CONFIG_PREVENT_FIRMWARE_BUILD=y
CONFIG_FW_LOADER=y
# CONFIG_FIRMWARE_IN_KERNEL is not set
CONFIG_EXTRA_FIRMWARE=""
# CONFIG_DEBUG_DRIVER is not set
# CONFIG_DEBUG_DEVRES is not set
# CONFIG_SYS_HYPERVISOR is not set
# CONFIG_GENERIC_CPU_DEVICES is not set
CONFIG_REGMAP=y
CONFIG_REGMAP_I2C=m
# CONFIG_DMA_SHARED_BUFFER is not set
CONFIG_CONNECTOR=m
CONFIG_MTD=m
CONFIG_MTD_TESTS=m
CONFIG_MTD_REDBOOT_PARTS=m
CONFIG_MTD_REDBOOT_DIRECTORY_BLOCK=-1
# CONFIG_MTD_REDBOOT_PARTS_UNALLOCATED is not set
# CONFIG_MTD_REDBOOT_PARTS_READONLY is not set
CONFIG_MTD_AR7_PARTS=m

#
# User Modules And Translation Layers
#
CONFIG_MTD_CHAR=m
CONFIG_HAVE_MTD_OTP=y
CONFIG_MTD_BLKDEVS=m
CONFIG_MTD_BLOCK=m
CONFIG_MTD_BLOCK_RO=m
CONFIG_FTL=m
CONFIG_NFTL=m
CONFIG_NFTL_RW=y
CONFIG_INFTL=m
CONFIG_RFD_FTL=m
CONFIG_SSFDC=m
CONFIG_SM_FTL=m
CONFIG_MTD_OOPS=m
CONFIG_MTD_SWAP=m

#
# RAM/ROM/Flash chip drivers
#
CONFIG_MTD_CFI=m
CONFIG_MTD_JEDECPROBE=m
CONFIG_MTD_GEN_PROBE=m
CONFIG_MTD_CFI_ADV_OPTIONS=y
CONFIG_MTD_CFI_NOSWAP=y
# CONFIG_MTD_CFI_BE_BYTE_SWAP is not set
# CONFIG_MTD_CFI_LE_BYTE_SWAP is not set
CONFIG_MTD_CFI_GEOMETRY=y
CONFIG_MTD_MAP_BANK_WIDTH_1=y
CONFIG_MTD_MAP_BANK_WIDTH_2=y
CONFIG_MTD_MAP_BANK_WIDTH_4=y
CONFIG_MTD_MAP_BANK_WIDTH_8=y
CONFIG_MTD_MAP_BANK_WIDTH_16=y
CONFIG_MTD_MAP_BANK_WIDTH_32=y
CONFIG_MTD_CFI_I1=y
CONFIG_MTD_CFI_I2=y
CONFIG_MTD_CFI_I4=y
CONFIG_MTD_CFI_I8=y
CONFIG_MTD_OTP=y
CONFIG_MTD_CFI_INTELEXT=m
CONFIG_MTD_CFI_AMDSTD=m
CONFIG_MTD_CFI_STAA=m
CONFIG_MTD_CFI_UTIL=m
CONFIG_MTD_RAM=m
CONFIG_MTD_ROM=m
CONFIG_MTD_ABSENT=m

#
# Mapping drivers for chip access
#
CONFIG_MTD_COMPLEX_MAPPINGS=y
CONFIG_MTD_PHYSMAP=m
# CONFIG_MTD_PHYSMAP_COMPAT is not set
CONFIG_MTD_SC520CDP=m
CONFIG_MTD_NETSC520=m
CONFIG_MTD_TS5500=m
CONFIG_MTD_SBC_GXX=m
CONFIG_MTD_SCx200_DOCFLASH=m
CONFIG_MTD_AMD76XROM=m
CONFIG_MTD_ICHXROM=m
CONFIG_MTD_ESB2ROM=m
CONFIG_MTD_CK804XROM=m
CONFIG_MTD_SCB2_FLASH=m
CONFIG_MTD_NETtel=m
CONFIG_MTD_L440GX=m
CONFIG_MTD_PCI=m
CONFIG_MTD_PCMCIA=m
# CONFIG_MTD_PCMCIA_ANONYMOUS is not set
CONFIG_MTD_GPIO_ADDR=m
CONFIG_MTD_INTEL_VR_NOR=m
CONFIG_MTD_PLATRAM=m
CONFIG_MTD_LATCH_ADDR=m

#
# Self-contained MTD device drivers
#
CONFIG_MTD_PMC551=m
CONFIG_MTD_PMC551_BUGFIX=y
# CONFIG_MTD_PMC551_DEBUG is not set
CONFIG_MTD_SLRAM=m
CONFIG_MTD_PHRAM=m
CONFIG_MTD_MTDRAM=m
CONFIG_MTDRAM_TOTAL_SIZE=4096
CONFIG_MTDRAM_ERASE_SIZE=128
CONFIG_MTD_BLOCK2MTD=m

#
# Disk-On-Chip Device Drivers
#
# CONFIG_MTD_DOC2000 is not set
# CONFIG_MTD_DOC2001 is not set
CONFIG_MTD_DOC2001PLUS=m
# CONFIG_MTD_DOCG3 is not set
CONFIG_MTD_DOCPROBE=m
CONFIG_MTD_DOCECC=m
CONFIG_MTD_DOCPROBE_ADVANCED=y
CONFIG_MTD_DOCPROBE_ADDRESS=0x0000
CONFIG_MTD_DOCPROBE_HIGH=y
CONFIG_MTD_DOCPROBE_55AA=y
CONFIG_MTD_NAND_ECC=m
CONFIG_MTD_NAND_ECC_SMC=y
CONFIG_MTD_NAND=m
# CONFIG_MTD_NAND_VERIFY_WRITE is not set
CONFIG_MTD_NAND_BCH=m
CONFIG_MTD_NAND_ECC_BCH=y
CONFIG_MTD_SM_COMMON=m
CONFIG_MTD_NAND_MUSEUM_IDS=y
CONFIG_MTD_NAND_DENALI=m
CONFIG_MTD_NAND_DENALI_SCRATCH_REG_ADDR=0xFF108018
CONFIG_MTD_NAND_IDS=m
CONFIG_MTD_NAND_RICOH=m
CONFIG_MTD_NAND_DISKONCHIP=m
CONFIG_MTD_NAND_DISKONCHIP_PROBE_ADVANCED=y
CONFIG_MTD_NAND_DISKONCHIP_PROBE_ADDRESS=0
CONFIG_MTD_NAND_DISKONCHIP_PROBE_HIGH=y
CONFIG_MTD_NAND_DISKONCHIP_BBTWRITE=y
CONFIG_MTD_NAND_CAFE=m
CONFIG_MTD_NAND_CS553X=m
CONFIG_MTD_NAND_NANDSIM=m
CONFIG_MTD_NAND_PLATFORM=m
CONFIG_MTD_ALAUDA=m
CONFIG_MTD_ONENAND=m
CONFIG_MTD_ONENAND_VERIFY_WRITE=y
CONFIG_MTD_ONENAND_GENERIC=m
CONFIG_MTD_ONENAND_OTP=y
CONFIG_MTD_ONENAND_2X_PROGRAM=y
CONFIG_MTD_ONENAND_SIM=m

#
# LPDDR flash memory drivers
#
CONFIG_MTD_LPDDR=m
CONFIG_MTD_QINFO_PROBE=m
CONFIG_MTD_UBI=m
CONFIG_MTD_UBI_WL_THRESHOLD=4096
CONFIG_MTD_UBI_BEB_RESERVE=1
CONFIG_MTD_UBI_GLUEBI=m
# CONFIG_MTD_UBI_DEBUG is not set
CONFIG_PARPORT=m
CONFIG_PARPORT_PC=m
CONFIG_PARPORT_SERIAL=m
# CONFIG_PARPORT_PC_FIFO is not set
# CONFIG_PARPORT_PC_SUPERIO is not set
CONFIG_PARPORT_PC_PCMCIA=m
# CONFIG_PARPORT_GSC is not set
CONFIG_PARPORT_AX88796=m
CONFIG_PARPORT_1284=y
CONFIG_PARPORT_NOT_PC=y
CONFIG_PNP=y
CONFIG_PNP_DEBUG_MESSAGES=y

#
# Protocols
#
CONFIG_ISAPNP=y
# CONFIG_PNPBIOS is not set
CONFIG_PNPACPI=y
CONFIG_BLK_DEV=y
CONFIG_BLK_DEV_FD=y
CONFIG_BLK_DEV_XD=m
CONFIG_PARIDE=m

#
# Parallel IDE high-level drivers
#
CONFIG_PARIDE_PD=m
CONFIG_PARIDE_PCD=m
CONFIG_PARIDE_PF=m
CONFIG_PARIDE_PT=m
CONFIG_PARIDE_PG=m

#
# Parallel IDE protocol modules
#
CONFIG_PARIDE_ATEN=m
CONFIG_PARIDE_BPCK=m
CONFIG_PARIDE_BPCK6=m
CONFIG_PARIDE_COMM=m
CONFIG_PARIDE_DSTR=m
CONFIG_PARIDE_FIT2=m
CONFIG_PARIDE_FIT3=m
CONFIG_PARIDE_EPAT=m
CONFIG_PARIDE_EPATC8=y
CONFIG_PARIDE_EPIA=m
CONFIG_PARIDE_FRIQ=m
CONFIG_PARIDE_FRPW=m
CONFIG_PARIDE_KBIC=m
CONFIG_PARIDE_KTTI=m
CONFIG_PARIDE_ON20=m
CONFIG_PARIDE_ON26=m
# CONFIG_BLK_DEV_PCIESSD_MTIP32XX is not set
CONFIG_BLK_CPQ_DA=y
CONFIG_BLK_CPQ_CISS_DA=y
CONFIG_CISS_SCSI_TAPE=y
CONFIG_BLK_DEV_DAC960=y
CONFIG_BLK_DEV_UMEM=m
# CONFIG_BLK_DEV_COW_COMMON is not set
CONFIG_BLK_DEV_LOOP=m
CONFIG_BLK_DEV_LOOP_MIN_COUNT=8
CONFIG_BLK_DEV_CRYPTOLOOP=m
CONFIG_BLK_DEV_DRBD=m
# CONFIG_DRBD_FAULT_INJECTION is not set
CONFIG_BLK_DEV_NBD=m
# CONFIG_BLK_DEV_NVME is not set
CONFIG_BLK_DEV_OSD=m
CONFIG_BLK_DEV_SX8=y
# CONFIG_BLK_DEV_UB is not set
CONFIG_BLK_DEV_RAM=y
CONFIG_BLK_DEV_RAM_COUNT=16
CONFIG_BLK_DEV_RAM_SIZE=16384
# CONFIG_BLK_DEV_XIP is not set
CONFIG_CDROM_PKTCDVD=m
CONFIG_CDROM_PKTCDVD_BUFFERS=8
# CONFIG_CDROM_PKTCDVD_WCACHE is not set
CONFIG_ATA_OVER_ETH=m
CONFIG_VIRTIO_BLK=m
# CONFIG_BLK_DEV_HD is not set
CONFIG_BLK_DEV_RBD=m
CONFIG_SENSORS_LIS3LV02D=m
CONFIG_MISC_DEVICES=y
CONFIG_AD525X_DPOT=m
CONFIG_AD525X_DPOT_I2C=m
CONFIG_IBM_ASM=m
CONFIG_PHANTOM=m
CONFIG_INTEL_MID_PTI=m
CONFIG_SGI_IOC4=m
CONFIG_TIFM_CORE=m
CONFIG_TIFM_7XX1=m
CONFIG_ICS932S401=m
CONFIG_ENCLOSURE_SERVICES=m
CONFIG_CS5535_MFGPT=m
CONFIG_CS5535_MFGPT_DEFAULT_IRQ=7
CONFIG_CS5535_CLOCK_EVENT_SRC=m
CONFIG_HP_ILO=m
CONFIG_APDS9802ALS=m
CONFIG_ISL29003=m
CONFIG_ISL29020=m
CONFIG_SENSORS_TSL2550=m
CONFIG_SENSORS_BH1780=m
CONFIG_SENSORS_BH1770=m
CONFIG_SENSORS_APDS990X=m
CONFIG_HMC6352=m
CONFIG_DS1682=m
CONFIG_VMWARE_BALLOON=m
CONFIG_BMP085=m
CONFIG_PCH_PHUB=m
# CONFIG_USB_SWITCH_FSA9480 is not set
# CONFIG_C2PORT is not set

#
# EEPROM support
#
CONFIG_EEPROM_AT24=m
CONFIG_EEPROM_LEGACY=m
CONFIG_EEPROM_MAX6875=m
CONFIG_EEPROM_93CX6=m
CONFIG_CB710_CORE=m
# CONFIG_CB710_DEBUG is not set
CONFIG_CB710_DEBUG_ASSUMPTIONS=y
# CONFIG_IWMC3200TOP is not set

#
# Texas Instruments shared transport line discipline
#
CONFIG_TI_ST=m
CONFIG_SENSORS_LIS3_I2C=m

#
# Altera FPGA firmware download module
#
CONFIG_ALTERA_STAPL=m
CONFIG_HAVE_IDE=y
# CONFIG_IDE is not set

#
# SCSI device support
#
CONFIG_SCSI_MOD=y
CONFIG_RAID_ATTRS=y
CONFIG_SCSI=y
CONFIG_SCSI_DMA=y
CONFIG_SCSI_TGT=y
CONFIG_SCSI_NETLINK=y
CONFIG_SCSI_PROC_FS=y

#
# SCSI support type (disk, tape, CD-ROM)
#
CONFIG_BLK_DEV_SD=y
CONFIG_CHR_DEV_ST=y
CONFIG_CHR_DEV_OSST=m
CONFIG_BLK_DEV_SR=y
CONFIG_BLK_DEV_SR_VENDOR=y
CONFIG_CHR_DEV_SG=m
CONFIG_CHR_DEV_SCH=m
CONFIG_SCSI_ENCLOSURE=m
CONFIG_SCSI_MULTI_LUN=y
# CONFIG_SCSI_CONSTANTS is not set
# CONFIG_SCSI_LOGGING is not set
# CONFIG_SCSI_SCAN_ASYNC is not set
CONFIG_SCSI_WAIT_SCAN=m

#
# SCSI Transports
#
CONFIG_SCSI_SPI_ATTRS=y
CONFIG_SCSI_FC_ATTRS=y
CONFIG_SCSI_FC_TGT_ATTRS=y
CONFIG_SCSI_ISCSI_ATTRS=m
CONFIG_SCSI_SAS_ATTRS=y
CONFIG_SCSI_SAS_LIBSAS=y
CONFIG_SCSI_SAS_ATA=y
CONFIG_SCSI_SAS_HOST_SMP=y
CONFIG_SCSI_SRP_ATTRS=m
CONFIG_SCSI_SRP_TGT_ATTRS=y
CONFIG_SCSI_LOWLEVEL=y
CONFIG_ISCSI_TCP=m
CONFIG_ISCSI_BOOT_SYSFS=y
CONFIG_SCSI_CXGB3_ISCSI=m
CONFIG_SCSI_CXGB4_ISCSI=m
CONFIG_SCSI_BNX2_ISCSI=m
CONFIG_SCSI_BNX2X_FCOE=m
CONFIG_BE2ISCSI=m
CONFIG_BLK_DEV_3W_XXXX_RAID=y
CONFIG_SCSI_HPSA=y
CONFIG_SCSI_3W_9XXX=y
CONFIG_SCSI_3W_SAS=y
CONFIG_SCSI_7000FASST=y
CONFIG_SCSI_ACARD=y
CONFIG_SCSI_AHA152X=y
CONFIG_SCSI_AHA1542=y
CONFIG_SCSI_AACRAID=y
CONFIG_SCSI_AIC7XXX=y
CONFIG_AIC7XXX_CMDS_PER_DEVICE=4
CONFIG_AIC7XXX_RESET_DELAY_MS=15000
# CONFIG_AIC7XXX_DEBUG_ENABLE is not set
CONFIG_AIC7XXX_DEBUG_MASK=0
# CONFIG_AIC7XXX_REG_PRETTY_PRINT is not set
CONFIG_SCSI_AIC7XXX_OLD=y
CONFIG_SCSI_AIC79XX=y
CONFIG_AIC79XX_CMDS_PER_DEVICE=4
CONFIG_AIC79XX_RESET_DELAY_MS=15000
# CONFIG_AIC79XX_DEBUG_ENABLE is not set
CONFIG_AIC79XX_DEBUG_MASK=0
# CONFIG_AIC79XX_REG_PRETTY_PRINT is not set
CONFIG_SCSI_AIC94XX=y
# CONFIG_AIC94XX_DEBUG is not set
CONFIG_SCSI_MVSAS=y
# CONFIG_SCSI_MVSAS_DEBUG is not set
# CONFIG_SCSI_MVSAS_TASKLET is not set
# CONFIG_SCSI_MVUMI is not set
CONFIG_SCSI_DPT_I2O=m
CONFIG_SCSI_ADVANSYS=y
CONFIG_SCSI_IN2000=y
CONFIG_SCSI_ARCMSR=y
CONFIG_MEGARAID_NEWGEN=y
CONFIG_MEGARAID_MM=y
CONFIG_MEGARAID_MAILBOX=y
CONFIG_MEGARAID_LEGACY=m
CONFIG_MEGARAID_SAS=y
CONFIG_SCSI_MPT2SAS=y
CONFIG_SCSI_MPT2SAS_MAX_SGE=128
# CONFIG_SCSI_MPT2SAS_LOGGING is not set
CONFIG_SCSI_HPTIOP=y
CONFIG_SCSI_BUSLOGIC=y
CONFIG_SCSI_FLASHPOINT=y
CONFIG_VMWARE_PVSCSI=m
CONFIG_LIBFC=y
CONFIG_LIBFCOE=y
CONFIG_FCOE=y
CONFIG_FCOE_FNIC=y
CONFIG_SCSI_DMX3191D=y
CONFIG_SCSI_DTC3280=y
CONFIG_SCSI_EATA=y
# CONFIG_SCSI_EATA_TAGGED_QUEUE is not set
# CONFIG_SCSI_EATA_LINKED_COMMANDS is not set
CONFIG_SCSI_EATA_MAX_TAGS=16
CONFIG_SCSI_FUTURE_DOMAIN=y
CONFIG_SCSI_GDTH=y
CONFIG_SCSI_ISCI=m
CONFIG_SCSI_GENERIC_NCR5380=m
CONFIG_SCSI_GENERIC_NCR5380_MMIO=m
CONFIG_SCSI_GENERIC_NCR53C400=y
CONFIG_SCSI_IPS=y
CONFIG_SCSI_INITIO=y
CONFIG_SCSI_INIA100=y
CONFIG_SCSI_PPA=m
CONFIG_SCSI_IMM=m
# CONFIG_SCSI_IZIP_EPP16 is not set
# CONFIG_SCSI_IZIP_SLOW_CTR is not set
CONFIG_SCSI_NCR53C406A=m
CONFIG_SCSI_STEX=y
CONFIG_SCSI_SYM53C8XX_2=y
CONFIG_SCSI_SYM53C8XX_DMA_ADDRESSING_MODE=1
CONFIG_SCSI_SYM53C8XX_DEFAULT_TAGS=16
CONFIG_SCSI_SYM53C8XX_MAX_TAGS=64
CONFIG_SCSI_SYM53C8XX_MMIO=y
CONFIG_SCSI_IPR=y
# CONFIG_SCSI_IPR_TRACE is not set
# CONFIG_SCSI_IPR_DUMP is not set
CONFIG_SCSI_PAS16=m
CONFIG_SCSI_QLOGIC_FAS=y
CONFIG_SCSI_QLOGIC_1280=y
CONFIG_SCSI_QLA_FC=y
CONFIG_SCSI_QLA_ISCSI=m
CONFIG_SCSI_LPFC=y
# CONFIG_SCSI_LPFC_DEBUG_FS is not set
CONFIG_SCSI_SYM53C416=y
CONFIG_SCSI_DC395x=y
CONFIG_SCSI_DC390T=y
CONFIG_SCSI_T128=y
CONFIG_SCSI_U14_34F=m
# CONFIG_SCSI_U14_34F_TAGGED_QUEUE is not set
# CONFIG_SCSI_U14_34F_LINKED_COMMANDS is not set
CONFIG_SCSI_U14_34F_MAX_TAGS=8
CONFIG_SCSI_ULTRASTOR=y
CONFIG_SCSI_NSP32=m
CONFIG_SCSI_DEBUG=m
CONFIG_SCSI_PMCRAID=y
CONFIG_SCSI_PM8001=y
CONFIG_SCSI_SRP=y
CONFIG_SCSI_BFA_FC=y
CONFIG_SCSI_LOWLEVEL_PCMCIA=y
CONFIG_PCMCIA_AHA152X=m
CONFIG_PCMCIA_FDOMAIN=m
CONFIG_PCMCIA_NINJA_SCSI=m
CONFIG_PCMCIA_QLOGIC=m
CONFIG_PCMCIA_SYM53C500=m
CONFIG_SCSI_DH=m
CONFIG_SCSI_DH_RDAC=m
CONFIG_SCSI_DH_HP_SW=m
CONFIG_SCSI_DH_EMC=m
CONFIG_SCSI_DH_ALUA=m
CONFIG_SCSI_OSD_INITIATOR=m
CONFIG_SCSI_OSD_ULD=m
CONFIG_SCSI_OSD_DPRINT_SENSE=1
# CONFIG_SCSI_OSD_DEBUG is not set
CONFIG_ATA=y
# CONFIG_ATA_NONSTANDARD is not set
CONFIG_ATA_VERBOSE_ERROR=y
CONFIG_ATA_ACPI=y
CONFIG_SATA_PMP=y

#
# Controllers with non-SFF native interface
#
CONFIG_SATA_AHCI=y
CONFIG_SATA_AHCI_PLATFORM=y
CONFIG_SATA_INIC162X=y
CONFIG_SATA_ACARD_AHCI=y
CONFIG_SATA_SIL24=y
CONFIG_ATA_SFF=y

#
# SFF controllers with custom DMA interface
#
CONFIG_PDC_ADMA=y
CONFIG_SATA_QSTOR=y
CONFIG_SATA_SX4=y
CONFIG_ATA_BMDMA=y

#
# SATA SFF controllers with BMDMA
#
CONFIG_ATA_PIIX=y
CONFIG_SATA_MV=y
CONFIG_SATA_NV=y
CONFIG_SATA_PROMISE=y
CONFIG_SATA_SIL=y
CONFIG_SATA_SIS=y
CONFIG_SATA_SVW=y
CONFIG_SATA_ULI=y
CONFIG_SATA_VIA=y
CONFIG_SATA_VITESSE=y

#
# PATA SFF controllers with BMDMA
#
CONFIG_PATA_ALI=y
CONFIG_PATA_AMD=y
CONFIG_PATA_ARASAN_CF=m
CONFIG_PATA_ARTOP=y
CONFIG_PATA_ATIIXP=y
CONFIG_PATA_ATP867X=y
CONFIG_PATA_CMD64X=y
CONFIG_PATA_CS5520=y
CONFIG_PATA_CS5530=y
CONFIG_PATA_CS5535=y
CONFIG_PATA_CS5536=y
CONFIG_PATA_CYPRESS=y
CONFIG_PATA_EFAR=y
CONFIG_PATA_HPT366=y
CONFIG_PATA_HPT37X=y
CONFIG_PATA_HPT3X2N=y
CONFIG_PATA_HPT3X3=y
CONFIG_PATA_HPT3X3_DMA=y
CONFIG_PATA_IT8213=y
CONFIG_PATA_IT821X=y
CONFIG_PATA_JMICRON=y
CONFIG_PATA_MARVELL=y
CONFIG_PATA_NETCELL=y
CONFIG_PATA_NINJA32=y
CONFIG_PATA_NS87415=y
CONFIG_PATA_OLDPIIX=y
CONFIG_PATA_OPTIDMA=y
CONFIG_PATA_PDC2027X=y
CONFIG_PATA_PDC_OLD=y
CONFIG_PATA_RADISYS=y
CONFIG_PATA_RDC=y
CONFIG_PATA_SC1200=y
CONFIG_PATA_SCH=y
CONFIG_PATA_SERVERWORKS=y
CONFIG_PATA_SIL680=y
CONFIG_PATA_SIS=y
CONFIG_PATA_TOSHIBA=m
CONFIG_PATA_TRIFLEX=y
CONFIG_PATA_VIA=y
CONFIG_PATA_WINBOND=y

#
# PIO-only SFF controllers
#
CONFIG_PATA_CMD640_PCI=y
CONFIG_PATA_ISAPNP=y
CONFIG_PATA_MPIIX=y
CONFIG_PATA_NS87410=y
CONFIG_PATA_OPTI=y
CONFIG_PATA_PCMCIA=m
CONFIG_PATA_QDI=y
CONFIG_PATA_RZ1000=y
CONFIG_PATA_WINBOND_VLB=y

#
# Generic fallback / legacy drivers
#
CONFIG_PATA_ACPI=y
CONFIG_ATA_GENERIC=y
CONFIG_PATA_LEGACY=y
CONFIG_MD=y
CONFIG_BLK_DEV_MD=y
CONFIG_MD_AUTODETECT=y
CONFIG_MD_LINEAR=y
CONFIG_MD_RAID0=y
CONFIG_MD_RAID1=y
CONFIG_MD_RAID10=y
CONFIG_MD_RAID456=y
# CONFIG_MULTICORE_RAID456 is not set
CONFIG_MD_MULTIPATH=y
CONFIG_MD_FAULTY=m
CONFIG_BLK_DEV_DM=y
# CONFIG_DM_DEBUG is not set
CONFIG_DM_CRYPT=y
CONFIG_DM_SNAPSHOT=y
# CONFIG_DM_THIN_PROVISIONING is not set
CONFIG_DM_MIRROR=y
CONFIG_DM_RAID=m
CONFIG_DM_LOG_USERSPACE=m
CONFIG_DM_ZERO=m
CONFIG_DM_MULTIPATH=m
CONFIG_DM_MULTIPATH_QL=m
CONFIG_DM_MULTIPATH_ST=m
# CONFIG_DM_DELAY is not set
CONFIG_DM_UEVENT=y
CONFIG_DM_FLAKEY=m
CONFIG_TARGET_CORE=m
CONFIG_TCM_IBLOCK=m
CONFIG_TCM_FILEIO=m
CONFIG_TCM_PSCSI=m
CONFIG_LOOPBACK_TARGET=m
CONFIG_TCM_FC=m
# CONFIG_ISCSI_TARGET is not set
CONFIG_FUSION=y
CONFIG_FUSION_SPI=y
CONFIG_FUSION_FC=y
CONFIG_FUSION_SAS=y
CONFIG_FUSION_MAX_SGE=128
CONFIG_FUSION_CTL=y
CONFIG_FUSION_LAN=y
# CONFIG_FUSION_LOGGING is not set

#
# IEEE 1394 (FireWire) support
#
CONFIG_FIREWIRE=m
CONFIG_FIREWIRE_OHCI=m
CONFIG_FIREWIRE_OHCI_DEBUG=y
CONFIG_FIREWIRE_SBP2=m
CONFIG_FIREWIRE_NET=m
CONFIG_FIREWIRE_NOSY=m
CONFIG_I2O=y
CONFIG_I2O_LCT_NOTIFY_ON_CHANGES=y
CONFIG_I2O_EXT_ADAPTEC=y
CONFIG_I2O_EXT_ADAPTEC_DMA64=y
CONFIG_I2O_CONFIG=y
# CONFIG_I2O_CONFIG_OLD_IOCTL is not set
CONFIG_I2O_BUS=y
CONFIG_I2O_BLOCK=y
CONFIG_I2O_SCSI=y
CONFIG_I2O_PROC=y
CONFIG_MACINTOSH_DRIVERS=y
CONFIG_MAC_EMUMOUSEBTN=y
CONFIG_NETDEVICES=y
CONFIG_NET_CORE=y
CONFIG_BONDING=m
CONFIG_DUMMY=m
CONFIG_EQUALIZER=m
CONFIG_NET_FC=y
CONFIG_MII=m
CONFIG_IEEE802154_DRIVERS=m
CONFIG_IEEE802154_FAKEHARD=m
CONFIG_IFB=m
# CONFIG_NET_TEAM is not set
CONFIG_MACVLAN=m
CONFIG_MACVTAP=m
CONFIG_NETCONSOLE=m
CONFIG_NETCONSOLE_DYNAMIC=y
CONFIG_NETPOLL=y
# CONFIG_NETPOLL_TRAP is not set
CONFIG_NET_POLL_CONTROLLER=y
CONFIG_TUN=m
CONFIG_VETH=m
CONFIG_VIRTIO_NET=m
CONFIG_ARCNET=m
CONFIG_ARCNET_1201=m
CONFIG_ARCNET_1051=m
CONFIG_ARCNET_RAW=m
CONFIG_ARCNET_CAP=m
CONFIG_ARCNET_COM90xx=m
CONFIG_ARCNET_COM90xxIO=m
CONFIG_ARCNET_RIM_I=m
CONFIG_ARCNET_COM20020=m
CONFIG_ARCNET_COM20020_ISA=m
CONFIG_ARCNET_COM20020_PCI=m
# CONFIG_ARCNET_COM20020_CS is not set
CONFIG_ATM_DRIVERS=y
CONFIG_ATM_DUMMY=m
CONFIG_ATM_TCP=m
CONFIG_ATM_LANAI=m
CONFIG_ATM_ENI=m
# CONFIG_ATM_ENI_DEBUG is not set
# CONFIG_ATM_ENI_TUNE_BURST is not set
CONFIG_ATM_FIRESTREAM=m
CONFIG_ATM_ZATM=m
# CONFIG_ATM_ZATM_DEBUG is not set
CONFIG_ATM_NICSTAR=m
# CONFIG_ATM_NICSTAR_USE_SUNI is not set
# CONFIG_ATM_NICSTAR_USE_IDT77105 is not set
CONFIG_ATM_IDT77252=m
# CONFIG_ATM_IDT77252_DEBUG is not set
# CONFIG_ATM_IDT77252_RCV_ALL is not set
CONFIG_ATM_IDT77252_USE_SUNI=y
CONFIG_ATM_AMBASSADOR=m
# CONFIG_ATM_AMBASSADOR_DEBUG is not set
CONFIG_ATM_HORIZON=m
# CONFIG_ATM_HORIZON_DEBUG is not set
CONFIG_ATM_IA=m
# CONFIG_ATM_IA_DEBUG is not set
CONFIG_ATM_FORE200E=m
# CONFIG_ATM_FORE200E_USE_TASKLET is not set
CONFIG_ATM_FORE200E_TX_RETRY=16
CONFIG_ATM_FORE200E_DEBUG=0
CONFIG_ATM_HE=m
# CONFIG_ATM_HE_USE_SUNI is not set
CONFIG_ATM_SOLOS=m

#
# CAIF transport drivers
#
CONFIG_ETHERNET=y
CONFIG_MDIO=m
CONFIG_NET_VENDOR_3COM=y
# CONFIG_EL1 is not set
# CONFIG_EL3 is not set
# CONFIG_3C515 is not set
# CONFIG_PCMCIA_3C574 is not set
# CONFIG_PCMCIA_3C589 is not set
# CONFIG_VORTEX is not set
# CONFIG_TYPHOON is not set
CONFIG_NET_VENDOR_ADAPTEC=y
# CONFIG_ADAPTEC_STARFIRE is not set
CONFIG_NET_VENDOR_ALTEON=y
CONFIG_ACENIC=m
# CONFIG_ACENIC_OMIT_TIGON_I is not set
CONFIG_NET_VENDOR_AMD=y
# CONFIG_AMD8111_ETH is not set
# CONFIG_LANCE is not set
# CONFIG_PCNET32 is not set
# CONFIG_DEPCA is not set
# CONFIG_PCMCIA_NMCLAN is not set
# CONFIG_NI65 is not set
CONFIG_NET_VENDOR_ATHEROS=y
# CONFIG_ATL2 is not set
CONFIG_ATL1=m
CONFIG_ATL1E=m
CONFIG_ATL1C=m
CONFIG_NET_VENDOR_BROADCOM=y
# CONFIG_B44 is not set
CONFIG_BNX2=m
CONFIG_CNIC=m
CONFIG_TIGON3=m
CONFIG_BNX2X=m
CONFIG_NET_VENDOR_BROCADE=y
CONFIG_BNA=m
# CONFIG_NET_CALXEDA_XGMAC is not set
CONFIG_NET_VENDOR_CHELSIO=y
CONFIG_CHELSIO_T1=m
CONFIG_CHELSIO_T1_1G=y
CONFIG_CHELSIO_T3=m
CONFIG_CHELSIO_T4=m
CONFIG_CHELSIO_T4VF=m
CONFIG_NET_VENDOR_CIRRUS=y
# CONFIG_CS89x0 is not set
CONFIG_NET_VENDOR_CISCO=y
CONFIG_ENIC=m
# CONFIG_DNET is not set
CONFIG_NET_VENDOR_DEC=y
# CONFIG_EWRK3 is not set
# CONFIG_NET_TULIP is not set
CONFIG_NET_VENDOR_DLINK=y
# CONFIG_DE600 is not set
# CONFIG_DE620 is not set
CONFIG_DL2K=m
# CONFIG_SUNDANCE is not set
CONFIG_NET_VENDOR_EMULEX=y
CONFIG_BE2NET=m
CONFIG_NET_VENDOR_EXAR=y
CONFIG_S2IO=m
CONFIG_VXGE=m
# CONFIG_VXGE_DEBUG_TRACE_ALL is not set
CONFIG_NET_VENDOR_FUJITSU=y
# CONFIG_AT1700 is not set
# CONFIG_PCMCIA_FMVJ18X is not set
# CONFIG_ETH16I is not set
CONFIG_NET_VENDOR_HP=y
# CONFIG_HP100 is not set
CONFIG_NET_VENDOR_INTEL=y
# CONFIG_E100 is not set
CONFIG_E1000=m
CONFIG_E1000E=m
CONFIG_IGB=m
CONFIG_IGB_DCA=y
CONFIG_IGBVF=m
CONFIG_IXGB=m
CONFIG_IXGBE=m
CONFIG_IXGBE_DCA=y
CONFIG_IXGBEVF=m
CONFIG_NET_VENDOR_I825XX=y
# CONFIG_ELPLUS is not set
# CONFIG_EL16 is not set
# CONFIG_APRICOT is not set
# CONFIG_EEXPRESS is not set
# CONFIG_EEXPRESS_PRO is not set
# CONFIG_LP486E is not set
# CONFIG_NI52 is not set
# CONFIG_ZNET is not set
CONFIG_IP1000=m
CONFIG_JME=m
CONFIG_NET_VENDOR_MARVELL=y
CONFIG_SKGE=m
# CONFIG_SKGE_DEBUG is not set
# CONFIG_SKGE_GENESIS is not set
CONFIG_SKY2=m
# CONFIG_SKY2_DEBUG is not set
CONFIG_NET_VENDOR_MELLANOX=y
CONFIG_MLX4_EN=m
CONFIG_MLX4_CORE=m
CONFIG_MLX4_DEBUG=y
CONFIG_NET_VENDOR_MICREL=y
# CONFIG_KS8842 is not set
# CONFIG_KS8851_MLL is not set
# CONFIG_KSZ884X_PCI is not set
CONFIG_NET_VENDOR_MYRI=y
CONFIG_MYRI10GE=m
CONFIG_MYRI10GE_DCA=y
# CONFIG_FEALNX is not set
CONFIG_NET_VENDOR_NATSEMI=y
# CONFIG_NATSEMI is not set
CONFIG_NS83820=m
CONFIG_NET_VENDOR_8390=y
# CONFIG_EL2 is not set
# CONFIG_AC3200 is not set
# CONFIG_PCMCIA_AXNET is not set
# CONFIG_E2100 is not set
# CONFIG_HPLAN_PLUS is not set
# CONFIG_HPLAN is not set
# CONFIG_NE2000 is not set
# CONFIG_NE2K_PCI is not set
# CONFIG_PCMCIA_PCNET is not set
# CONFIG_ULTRA is not set
# CONFIG_WD80x3 is not set
CONFIG_NET_VENDOR_NVIDIA=y
# CONFIG_FORCEDETH is not set
CONFIG_NET_VENDOR_OKI=y
CONFIG_PCH_GBE=m
# CONFIG_ETHOC is not set
# CONFIG_NET_PACKET_ENGINE is not set
CONFIG_NET_VENDOR_QLOGIC=y
CONFIG_QLA3XXX=m
CONFIG_QLCNIC=m
CONFIG_QLGE=m
CONFIG_NETXEN_NIC=m
CONFIG_NET_VENDOR_RACAL=y
CONFIG_NET_VENDOR_REALTEK=y
# CONFIG_ATP is not set
# CONFIG_8139CP is not set
# CONFIG_8139TOO is not set
CONFIG_R8169=m
CONFIG_NET_VENDOR_RDC=y
# CONFIG_R6040 is not set
CONFIG_NET_VENDOR_SEEQ=y
# CONFIG_SEEQ8005 is not set
CONFIG_NET_VENDOR_SILAN=y
# CONFIG_SC92031 is not set
CONFIG_NET_VENDOR_SIS=y
# CONFIG_SIS900 is not set
CONFIG_SIS190=m
CONFIG_SFC=m
CONFIG_SFC_MTD=y
CONFIG_NET_VENDOR_SMSC=y
# CONFIG_SMC9194 is not set
# CONFIG_PCMCIA_SMC91C92 is not set
# CONFIG_EPIC100 is not set
# CONFIG_SMSC9420 is not set
CONFIG_NET_VENDOR_STMICRO=y
CONFIG_STMMAC_ETH=m
CONFIG_STMMAC_PLATFORM=m
# CONFIG_STMMAC_PCI is not set
# CONFIG_STMMAC_DEBUG_FS is not set
# CONFIG_STMMAC_DA is not set
CONFIG_STMMAC_RING=y
# CONFIG_STMMAC_CHAINED is not set
CONFIG_NET_VENDOR_SUN=y
# CONFIG_HAPPYMEAL is not set
# CONFIG_SUNGEM is not set
# CONFIG_CASSINI is not set
CONFIG_NIU=m
CONFIG_NET_VENDOR_TEHUTI=y
CONFIG_TEHUTI=m
CONFIG_NET_VENDOR_TI=y
# CONFIG_TLAN is not set
CONFIG_NET_VENDOR_VIA=y
# CONFIG_VIA_RHINE is not set
CONFIG_VIA_VELOCITY=m
CONFIG_NET_VENDOR_XIRCOM=y
# CONFIG_PCMCIA_XIRC2PS is not set
CONFIG_FDDI=y
CONFIG_DEFXX=m
# CONFIG_DEFXX_MMIO is not set
CONFIG_SKFP=m
CONFIG_HIPPI=y
CONFIG_ROADRUNNER=m
# CONFIG_ROADRUNNER_LARGE_RINGS is not set
CONFIG_NET_SB1000=m
CONFIG_PHYLIB=m

#
# MII PHY device drivers
#
CONFIG_MARVELL_PHY=m
CONFIG_DAVICOM_PHY=m
CONFIG_QSEMI_PHY=m
CONFIG_LXT_PHY=m
CONFIG_CICADA_PHY=m
CONFIG_VITESSE_PHY=m
CONFIG_SMSC_PHY=m
CONFIG_BROADCOM_PHY=m
CONFIG_ICPLUS_PHY=m
CONFIG_REALTEK_PHY=m
CONFIG_NATIONAL_PHY=m
CONFIG_STE10XP=m
CONFIG_LSI_ET1011C_PHY=m
CONFIG_MICREL_PHY=m
CONFIG_MDIO_BITBANG=m
CONFIG_MDIO_GPIO=m
CONFIG_PLIP=m
CONFIG_PPP=m
CONFIG_PPP_BSDCOMP=m
CONFIG_PPP_DEFLATE=m
CONFIG_PPP_FILTER=y
CONFIG_PPP_MPPE=m
CONFIG_PPP_MULTILINK=y
CONFIG_PPPOATM=m
CONFIG_PPPOE=m
CONFIG_PPTP=m
CONFIG_PPPOL2TP=m
CONFIG_PPP_ASYNC=m
CONFIG_PPP_SYNC_TTY=m
CONFIG_SLIP=m
CONFIG_SLHC=m
CONFIG_SLIP_COMPRESSED=y
CONFIG_SLIP_SMART=y
# CONFIG_SLIP_MODE_SLIP6 is not set
# CONFIG_TR is not set

#
# USB Network Adapters
#
CONFIG_USB_CATC=m
CONFIG_USB_KAWETH=m
CONFIG_USB_PEGASUS=m
CONFIG_USB_RTL8150=m
CONFIG_USB_USBNET=m
CONFIG_USB_NET_AX8817X=m
CONFIG_USB_NET_CDCETHER=m
CONFIG_USB_NET_CDC_EEM=m
CONFIG_USB_NET_CDC_NCM=m
CONFIG_USB_NET_DM9601=m
CONFIG_USB_NET_SMSC75XX=m
CONFIG_USB_NET_SMSC95XX=m
CONFIG_USB_NET_GL620A=m
CONFIG_USB_NET_NET1080=m
CONFIG_USB_NET_PLUSB=m
CONFIG_USB_NET_MCS7830=m
CONFIG_USB_NET_RNDIS_HOST=m
CONFIG_USB_NET_CDC_SUBSET=m
CONFIG_USB_ALI_M5632=y
CONFIG_USB_AN2720=y
CONFIG_USB_BELKIN=y
CONFIG_USB_ARMLINUX=y
# CONFIG_USB_EPSON2888 is not set
# CONFIG_USB_KC2190 is not set
CONFIG_USB_NET_ZAURUS=m
CONFIG_USB_NET_CX82310_ETH=m
CONFIG_USB_NET_KALMIA=m
# CONFIG_USB_NET_QMI_WWAN is not set
CONFIG_USB_HSO=m
CONFIG_USB_NET_INT51X1=m
CONFIG_USB_IPHETH=m
CONFIG_USB_SIERRA_NET=m
CONFIG_USB_VL600=m
CONFIG_WLAN=y
CONFIG_PCMCIA_RAYCS=m
CONFIG_LIBERTAS_THINFIRM=m
# CONFIG_LIBERTAS_THINFIRM_DEBUG is not set
CONFIG_LIBERTAS_THINFIRM_USB=m
CONFIG_AIRO=m
CONFIG_ATMEL=m
CONFIG_PCI_ATMEL=m
CONFIG_PCMCIA_ATMEL=m
CONFIG_AT76C50X_USB=m
CONFIG_AIRO_CS=m
CONFIG_PCMCIA_WL3501=m
CONFIG_PRISM54=m
CONFIG_USB_ZD1201=m
CONFIG_USB_NET_RNDIS_WLAN=m
CONFIG_RTL8180=m
CONFIG_RTL8187=m
CONFIG_RTL8187_LEDS=y
CONFIG_ADM8211=m
# CONFIG_MAC80211_HWSIM is not set
CONFIG_MWL8K=m
# CONFIG_ATH_COMMON is not set
CONFIG_B43=m
CONFIG_B43_SSB=y
CONFIG_B43_PCI_AUTOSELECT=y
CONFIG_B43_PCICORE_AUTOSELECT=y
CONFIG_B43_PCMCIA=y
CONFIG_B43_SDIO=y
CONFIG_B43_PIO=y
CONFIG_B43_PHY_N=y
CONFIG_B43_PHY_LP=y
# CONFIG_B43_PHY_HT is not set
CONFIG_B43_LEDS=y
CONFIG_B43_HWRNG=y
# CONFIG_B43_DEBUG is not set
CONFIG_B43LEGACY=m
CONFIG_B43LEGACY_PCI_AUTOSELECT=y
CONFIG_B43LEGACY_PCICORE_AUTOSELECT=y
CONFIG_B43LEGACY_LEDS=y
CONFIG_B43LEGACY_HWRNG=y
# CONFIG_B43LEGACY_DEBUG is not set
CONFIG_B43LEGACY_DMA=y
CONFIG_B43LEGACY_PIO=y
CONFIG_B43LEGACY_DMA_AND_PIO_MODE=y
# CONFIG_B43LEGACY_DMA_MODE is not set
# CONFIG_B43LEGACY_PIO_MODE is not set
CONFIG_BRCMUTIL=m
CONFIG_BRCMFMAC=m
CONFIG_BRCMFMAC_SDIO=y
# CONFIG_BRCMDBG is not set
CONFIG_HOSTAP=m
CONFIG_HOSTAP_FIRMWARE=y
CONFIG_HOSTAP_FIRMWARE_NVRAM=y
CONFIG_HOSTAP_PLX=m
CONFIG_HOSTAP_PCI=m
CONFIG_HOSTAP_CS=m
CONFIG_IPW2100=m
CONFIG_IPW2100_MONITOR=y
# CONFIG_IPW2100_DEBUG is not set
CONFIG_IPW2200=m
CONFIG_IPW2200_MONITOR=y
CONFIG_IPW2200_RADIOTAP=y
CONFIG_IPW2200_PROMISCUOUS=y
CONFIG_IPW2200_QOS=y
# CONFIG_IPW2200_DEBUG is not set
CONFIG_LIBIPW=m
# CONFIG_LIBIPW_DEBUG is not set
# CONFIG_IWLWIFI is not set
CONFIG_IWLEGACY=m

#
# Debugging Options
#
# CONFIG_IWLEGACY_DEBUG is not set
CONFIG_IWL4965=m
CONFIG_IWL3945=m
# CONFIG_IWM is not set
CONFIG_LIBERTAS=m
CONFIG_LIBERTAS_USB=m
CONFIG_LIBERTAS_CS=m
CONFIG_LIBERTAS_SDIO=m
# CONFIG_LIBERTAS_DEBUG is not set
CONFIG_LIBERTAS_MESH=y
CONFIG_HERMES=m
# CONFIG_HERMES_PRISM is not set
CONFIG_HERMES_CACHE_FW_ON_INIT=y
CONFIG_PLX_HERMES=m
CONFIG_TMD_HERMES=m
CONFIG_NORTEL_HERMES=m
CONFIG_PCMCIA_HERMES=m
CONFIG_PCMCIA_SPECTRUM=m
CONFIG_ORINOCO_USB=m
CONFIG_P54_COMMON=m
CONFIG_P54_USB=m
CONFIG_P54_PCI=m
CONFIG_P54_LEDS=y
CONFIG_RT2X00=m
CONFIG_RT2400PCI=m
CONFIG_RT2500PCI=m
CONFIG_RT61PCI=m
CONFIG_RT2800PCI=m
CONFIG_RT2800PCI_RT33XX=y
CONFIG_RT2800PCI_RT35XX=y
CONFIG_RT2800PCI_RT53XX=y
CONFIG_RT2500USB=m
CONFIG_RT73USB=m
CONFIG_RT2800USB=m
CONFIG_RT2800USB_RT33XX=y
CONFIG_RT2800USB_RT35XX=y
CONFIG_RT2800USB_RT53XX=y
CONFIG_RT2800USB_UNKNOWN=y
CONFIG_RT2800_LIB=m
CONFIG_RT2X00_LIB_PCI=m
CONFIG_RT2X00_LIB_USB=m
CONFIG_RT2X00_LIB=m
CONFIG_RT2X00_LIB_FIRMWARE=y
CONFIG_RT2X00_LIB_CRYPTO=y
CONFIG_RT2X00_LIB_LEDS=y
# CONFIG_RT2X00_DEBUG is not set
CONFIG_RTL8192CE=m
CONFIG_RTL8192SE=m
# CONFIG_RTL8192DE is not set
CONFIG_RTL8192CU=m
CONFIG_RTLWIFI=m
CONFIG_RTL8192C_COMMON=m
CONFIG_WL1251=m
CONFIG_WL1251_SDIO=m
# CONFIG_WL12XX_MENU is not set
CONFIG_WL12XX_PLATFORM_DATA=y
CONFIG_ZD1211RW=m
# CONFIG_ZD1211RW_DEBUG is not set
CONFIG_MWIFIEX=m
CONFIG_MWIFIEX_SDIO=m
# CONFIG_MWIFIEX_PCIE is not set

#
# WiMAX Wireless Broadband devices
#
CONFIG_WIMAX_I2400M=m
CONFIG_WIMAX_I2400M_USB=m
# CONFIG_WIMAX_I2400M_SDIO is not set
CONFIG_WIMAX_I2400M_DEBUG_LEVEL=8
CONFIG_WAN=y
CONFIG_HOSTESS_SV11=m
CONFIG_COSA=m
CONFIG_LANMEDIA=m
CONFIG_SEALEVEL_4021=m
CONFIG_HDLC=m
CONFIG_HDLC_RAW=m
CONFIG_HDLC_RAW_ETH=m
CONFIG_HDLC_CISCO=m
CONFIG_HDLC_FR=m
CONFIG_HDLC_PPP=m

#
# X.25/LAPB support is disabled
#
CONFIG_PCI200SYN=m
CONFIG_WANXL=m
# CONFIG_PC300TOO is not set
CONFIG_N2=m
CONFIG_C101=m
CONFIG_FARSYNC=m
CONFIG_DSCC4=m
# CONFIG_DSCC4_PCISYNC is not set
# CONFIG_DSCC4_PCI_RST is not set
CONFIG_DLCI=m
CONFIG_DLCI_MAX=8
CONFIG_SDLA=m
CONFIG_WAN_ROUTER_DRIVERS=m
CONFIG_CYCLADES_SYNC=m
CONFIG_CYCLOMX_X25=y
CONFIG_SBNI=m
# CONFIG_SBNI_MULTILINE is not set
CONFIG_VMXNET3=m
CONFIG_HYPERV_NET=m
CONFIG_ISDN=y
CONFIG_ISDN_I4L=m
CONFIG_ISDN_PPP=y
CONFIG_ISDN_PPP_VJ=y
CONFIG_ISDN_MPP=y
CONFIG_IPPP_FILTER=y
CONFIG_ISDN_PPP_BSDCOMP=m
CONFIG_ISDN_AUDIO=y
CONFIG_ISDN_TTY_FAX=y

#
# ISDN feature submodules
#
CONFIG_ISDN_DIVERSION=m

#
# ISDN4Linux hardware drivers
#

#
# Passive cards
#
CONFIG_ISDN_DRV_HISAX=m

#
# D-channel protocol features
#
CONFIG_HISAX_EURO=y
CONFIG_DE_AOC=y
CONFIG_HISAX_NO_SENDCOMPLETE=y
CONFIG_HISAX_NO_LLC=y
CONFIG_HISAX_NO_KEYPAD=y
CONFIG_HISAX_1TR6=y
CONFIG_HISAX_NI1=y
CONFIG_HISAX_MAX_CARDS=8

#
# HiSax supported cards
#
CONFIG_HISAX_16_0=y
CONFIG_HISAX_16_3=y
CONFIG_HISAX_TELESPCI=y
CONFIG_HISAX_S0BOX=y
CONFIG_HISAX_AVM_A1=y
CONFIG_HISAX_FRITZPCI=y
CONFIG_HISAX_AVM_A1_PCMCIA=y
CONFIG_HISAX_ELSA=y
CONFIG_HISAX_IX1MICROR2=y
CONFIG_HISAX_DIEHLDIVA=y
CONFIG_HISAX_ASUSCOM=y
CONFIG_HISAX_TELEINT=y
CONFIG_HISAX_HFCS=y
CONFIG_HISAX_SEDLBAUER=y
CONFIG_HISAX_SPORTSTER=y
CONFIG_HISAX_MIC=y
CONFIG_HISAX_NETJET=y
CONFIG_HISAX_NETJET_U=y
CONFIG_HISAX_NICCY=y
CONFIG_HISAX_ISURF=y
CONFIG_HISAX_HSTSAPHIR=y
CONFIG_HISAX_BKM_A4T=y
CONFIG_HISAX_SCT_QUADRO=y
CONFIG_HISAX_GAZEL=y
CONFIG_HISAX_HFC_PCI=y
CONFIG_HISAX_W6692=y
CONFIG_HISAX_HFC_SX=y
CONFIG_HISAX_ENTERNOW_PCI=y
# CONFIG_HISAX_DEBUG is not set

#
# HiSax PCMCIA card service modules
#
CONFIG_HISAX_SEDLBAUER_CS=m
CONFIG_HISAX_ELSA_CS=m
CONFIG_HISAX_AVM_A1_CS=m
CONFIG_HISAX_TELES_CS=m

#
# HiSax sub driver modules
#
CONFIG_HISAX_ST5481=m
CONFIG_HISAX_HFCUSB=m
CONFIG_HISAX_HFC4S8S=m
CONFIG_HISAX_FRITZ_PCIPNP=m

#
# Active cards
#
CONFIG_ISDN_DRV_ICN=m
CONFIG_ISDN_DRV_PCBIT=m
CONFIG_ISDN_DRV_SC=m
CONFIG_ISDN_DRV_ACT2000=m
CONFIG_ISDN_CAPI=m
CONFIG_ISDN_DRV_AVMB1_VERBOSE_REASON=y
CONFIG_CAPI_TRACE=y
CONFIG_ISDN_CAPI_MIDDLEWARE=y
CONFIG_ISDN_CAPI_CAPI20=m
CONFIG_ISDN_CAPI_CAPIDRV=m

#
# CAPI hardware drivers
#
CONFIG_CAPI_AVM=y
CONFIG_ISDN_DRV_AVMB1_B1ISA=m
CONFIG_ISDN_DRV_AVMB1_B1PCI=m
CONFIG_ISDN_DRV_AVMB1_B1PCIV4=y
CONFIG_ISDN_DRV_AVMB1_T1ISA=m
CONFIG_ISDN_DRV_AVMB1_B1PCMCIA=m
CONFIG_ISDN_DRV_AVMB1_AVM_CS=m
CONFIG_ISDN_DRV_AVMB1_T1PCI=m
CONFIG_ISDN_DRV_AVMB1_C4=m
CONFIG_CAPI_EICON=y
CONFIG_ISDN_DIVAS=m
CONFIG_ISDN_DIVAS_BRIPCI=y
CONFIG_ISDN_DIVAS_PRIPCI=y
CONFIG_ISDN_DIVAS_DIVACAPI=m
CONFIG_ISDN_DIVAS_USERIDI=m
CONFIG_ISDN_DIVAS_MAINT=m
CONFIG_ISDN_DRV_GIGASET=m
# CONFIG_GIGASET_CAPI is not set
CONFIG_GIGASET_I4L=y
# CONFIG_GIGASET_DUMMYLL is not set
CONFIG_GIGASET_BASE=m
CONFIG_GIGASET_M105=m
# CONFIG_GIGASET_M101 is not set
# CONFIG_GIGASET_DEBUG is not set
CONFIG_HYSDN=m
CONFIG_HYSDN_CAPI=y
CONFIG_MISDN=m
CONFIG_MISDN_DSP=m
CONFIG_MISDN_L1OIP=m

#
# mISDN hardware drivers
#
CONFIG_MISDN_HFCPCI=m
CONFIG_MISDN_HFCMULTI=m
CONFIG_MISDN_HFCUSB=m
CONFIG_MISDN_AVMFRITZ=m
CONFIG_MISDN_SPEEDFAX=m
CONFIG_MISDN_INFINEON=m
CONFIG_MISDN_W6692=m
CONFIG_MISDN_NETJET=m
CONFIG_MISDN_IPAC=m
CONFIG_MISDN_ISAR=m
CONFIG_ISDN_HDLC=m
# CONFIG_PHONE is not set

#
# Input device support
#
CONFIG_INPUT=y
CONFIG_INPUT_FF_MEMLESS=y
CONFIG_INPUT_POLLDEV=m
CONFIG_INPUT_SPARSEKMAP=m

#
# Userland interfaces
#
CONFIG_INPUT_MOUSEDEV=y
CONFIG_INPUT_MOUSEDEV_PSAUX=y
CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024
CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768
CONFIG_INPUT_JOYDEV=m
CONFIG_INPUT_EVDEV=m
# CONFIG_INPUT_EVBUG is not set

#
# Input Device Drivers
#
CONFIG_INPUT_KEYBOARD=y
CONFIG_KEYBOARD_ADP5588=m
CONFIG_KEYBOARD_ADP5589=m
CONFIG_KEYBOARD_ATKBD=y
CONFIG_KEYBOARD_QT1070=m
CONFIG_KEYBOARD_QT2160=m
# CONFIG_KEYBOARD_LKKBD is not set
CONFIG_KEYBOARD_GPIO=m
CONFIG_KEYBOARD_GPIO_POLLED=m
CONFIG_KEYBOARD_TCA6416=m
# CONFIG_KEYBOARD_TCA8418 is not set
CONFIG_KEYBOARD_MATRIX=m
CONFIG_KEYBOARD_LM8323=m
CONFIG_KEYBOARD_MAX7359=m
CONFIG_KEYBOARD_MCS=m
CONFIG_KEYBOARD_MPR121=m
# CONFIG_KEYBOARD_NEWTON is not set
CONFIG_KEYBOARD_OPENCORES=m
CONFIG_KEYBOARD_STOWAWAY=m
# CONFIG_KEYBOARD_SUNKBD is not set
# CONFIG_KEYBOARD_XTKBD is not set
CONFIG_INPUT_MOUSE=y
CONFIG_MOUSE_PS2=m
CONFIG_MOUSE_PS2_ALPS=y
CONFIG_MOUSE_PS2_LOGIPS2PP=y
CONFIG_MOUSE_PS2_SYNAPTICS=y
CONFIG_MOUSE_PS2_LIFEBOOK=y
CONFIG_MOUSE_PS2_TRACKPOINT=y
CONFIG_MOUSE_PS2_ELANTECH=y
CONFIG_MOUSE_PS2_SENTELIC=y
CONFIG_MOUSE_PS2_TOUCHKIT=y
CONFIG_MOUSE_SERIAL=m
CONFIG_MOUSE_APPLETOUCH=m
CONFIG_MOUSE_BCM5974=m
CONFIG_MOUSE_INPORT=m
CONFIG_MOUSE_ATIXL=y
CONFIG_MOUSE_LOGIBM=m
CONFIG_MOUSE_PC110PAD=m
CONFIG_MOUSE_VSXXXAA=m
CONFIG_MOUSE_GPIO=m
CONFIG_MOUSE_SYNAPTICS_I2C=m
CONFIG_INPUT_JOYSTICK=y
CONFIG_JOYSTICK_ANALOG=m
CONFIG_JOYSTICK_A3D=m
CONFIG_JOYSTICK_ADI=m
CONFIG_JOYSTICK_COBRA=m
CONFIG_JOYSTICK_GF2K=m
CONFIG_JOYSTICK_GRIP=m
CONFIG_JOYSTICK_GRIP_MP=m
CONFIG_JOYSTICK_GUILLEMOT=m
CONFIG_JOYSTICK_INTERACT=m
CONFIG_JOYSTICK_SIDEWINDER=m
CONFIG_JOYSTICK_TMDC=m
CONFIG_JOYSTICK_IFORCE=m
CONFIG_JOYSTICK_IFORCE_USB=y
CONFIG_JOYSTICK_IFORCE_232=y
CONFIG_JOYSTICK_WARRIOR=m
CONFIG_JOYSTICK_MAGELLAN=m
CONFIG_JOYSTICK_SPACEORB=m
CONFIG_JOYSTICK_SPACEBALL=m
CONFIG_JOYSTICK_STINGER=m
CONFIG_JOYSTICK_TWIDJOY=m
CONFIG_JOYSTICK_ZHENHUA=m
CONFIG_JOYSTICK_DB9=m
CONFIG_JOYSTICK_GAMECON=m
CONFIG_JOYSTICK_TURBOGRAFX=m
CONFIG_JOYSTICK_AS5011=m
CONFIG_JOYSTICK_JOYDUMP=m
CONFIG_JOYSTICK_XPAD=m
CONFIG_JOYSTICK_XPAD_FF=y
CONFIG_JOYSTICK_XPAD_LEDS=y
CONFIG_JOYSTICK_WALKERA0701=m
CONFIG_INPUT_TABLET=y
CONFIG_TABLET_USB_ACECAD=m
CONFIG_TABLET_USB_AIPTEK=m
CONFIG_TABLET_USB_GTCO=m
CONFIG_TABLET_USB_HANWANG=m
CONFIG_TABLET_USB_KBTAB=m
CONFIG_TABLET_USB_WACOM=m
CONFIG_INPUT_TOUCHSCREEN=y
CONFIG_TOUCHSCREEN_AD7879=m
CONFIG_TOUCHSCREEN_AD7879_I2C=m
CONFIG_TOUCHSCREEN_ATMEL_MXT=m
# CONFIG_TOUCHSCREEN_AUO_PIXCIR is not set
CONFIG_TOUCHSCREEN_BU21013=m
CONFIG_TOUCHSCREEN_CY8CTMG110=m
CONFIG_TOUCHSCREEN_DYNAPRO=m
CONFIG_TOUCHSCREEN_HAMPSHIRE=m
CONFIG_TOUCHSCREEN_EETI=m
# CONFIG_TOUCHSCREEN_EGALAX is not set
CONFIG_TOUCHSCREEN_FUJITSU=m
CONFIG_TOUCHSCREEN_GUNZE=m
CONFIG_TOUCHSCREEN_ELO=m
CONFIG_TOUCHSCREEN_WACOM_W8001=m
CONFIG_TOUCHSCREEN_MAX11801=m
CONFIG_TOUCHSCREEN_MCS5000=m
CONFIG_TOUCHSCREEN_MTOUCH=m
CONFIG_TOUCHSCREEN_INEXIO=m
CONFIG_TOUCHSCREEN_MK712=m
CONFIG_TOUCHSCREEN_HTCPEN=m
CONFIG_TOUCHSCREEN_PENMOUNT=m
CONFIG_TOUCHSCREEN_TOUCHRIGHT=m
CONFIG_TOUCHSCREEN_TOUCHWIN=m
CONFIG_TOUCHSCREEN_UCB1400=m
# CONFIG_TOUCHSCREEN_PIXCIR is not set
CONFIG_TOUCHSCREEN_WM97XX=m
CONFIG_TOUCHSCREEN_WM9705=y
CONFIG_TOUCHSCREEN_WM9712=y
CONFIG_TOUCHSCREEN_WM9713=y
CONFIG_TOUCHSCREEN_USB_COMPOSITE=m
CONFIG_TOUCHSCREEN_USB_EGALAX=y
CONFIG_TOUCHSCREEN_USB_PANJIT=y
CONFIG_TOUCHSCREEN_USB_3M=y
CONFIG_TOUCHSCREEN_USB_ITM=y
CONFIG_TOUCHSCREEN_USB_ETURBO=y
CONFIG_TOUCHSCREEN_USB_GUNZE=y
CONFIG_TOUCHSCREEN_USB_DMC_TSC10=y
CONFIG_TOUCHSCREEN_USB_IRTOUCH=y
CONFIG_TOUCHSCREEN_USB_IDEALTEK=y
CONFIG_TOUCHSCREEN_USB_GENERAL_TOUCH=y
CONFIG_TOUCHSCREEN_USB_GOTOP=y
CONFIG_TOUCHSCREEN_USB_JASTEC=y
CONFIG_TOUCHSCREEN_USB_ELO=y
CONFIG_TOUCHSCREEN_USB_E2I=y
CONFIG_TOUCHSCREEN_USB_ZYTRONIC=y
CONFIG_TOUCHSCREEN_USB_ETT_TC45USB=y
CONFIG_TOUCHSCREEN_USB_NEXIO=y
CONFIG_TOUCHSCREEN_TOUCHIT213=m
# CONFIG_TOUCHSCREEN_TSC_SERIO is not set
CONFIG_TOUCHSCREEN_TSC2007=m
CONFIG_TOUCHSCREEN_ST1232=m
CONFIG_TOUCHSCREEN_TPS6507X=m
CONFIG_INPUT_MISC=y
CONFIG_INPUT_AD714X=m
CONFIG_INPUT_AD714X_I2C=m
# CONFIG_INPUT_BMA150 is not set
CONFIG_INPUT_PCSPKR=m
# CONFIG_INPUT_MMA8450 is not set
# CONFIG_INPUT_MPU3050 is not set
CONFIG_INPUT_APANEL=m
# CONFIG_INPUT_GP2A is not set
# CONFIG_INPUT_GPIO_TILT_POLLED is not set
CONFIG_INPUT_WISTRON_BTNS=m
CONFIG_INPUT_ATLAS_BTNS=m
CONFIG_INPUT_ATI_REMOTE2=m
CONFIG_INPUT_KEYSPAN_REMOTE=m
# CONFIG_INPUT_KXTJ9 is not set
CONFIG_INPUT_POWERMATE=m
CONFIG_INPUT_YEALINK=m
CONFIG_INPUT_CM109=m
CONFIG_INPUT_UINPUT=m
CONFIG_INPUT_PCF50633_PMU=m
CONFIG_INPUT_PCF8574=m
CONFIG_INPUT_GPIO_ROTARY_ENCODER=m
CONFIG_INPUT_ADXL34X=m
CONFIG_INPUT_ADXL34X_I2C=m
CONFIG_INPUT_CMA3000=m
CONFIG_INPUT_CMA3000_I2C=m

#
# Hardware I/O ports
#
CONFIG_SERIO=y
CONFIG_SERIO_I8042=y
CONFIG_SERIO_SERPORT=m
CONFIG_SERIO_CT82C710=m
CONFIG_SERIO_PARKBD=m
CONFIG_SERIO_PCIPS2=m
CONFIG_SERIO_LIBPS2=y
CONFIG_SERIO_RAW=m
CONFIG_SERIO_ALTERA_PS2=m
CONFIG_SERIO_PS2MULT=m
CONFIG_GAMEPORT=m
CONFIG_GAMEPORT_NS558=m
CONFIG_GAMEPORT_L4=m
CONFIG_GAMEPORT_EMU10K1=m
CONFIG_GAMEPORT_FM801=m

#
# Character devices
#
CONFIG_VT=y
CONFIG_CONSOLE_TRANSLATIONS=y
CONFIG_VT_CONSOLE=y
CONFIG_VT_CONSOLE_SLEEP=y
CONFIG_HW_CONSOLE=y
CONFIG_VT_HW_CONSOLE_BINDING=y
CONFIG_UNIX98_PTYS=y
CONFIG_DEVPTS_MULTIPLE_INSTANCES=y
CONFIG_LEGACY_PTYS=y
CONFIG_LEGACY_PTY_COUNT=32
CONFIG_SERIAL_NONSTANDARD=y
CONFIG_ROCKETPORT=m
CONFIG_CYCLADES=m
# CONFIG_CYZ_INTR is not set
CONFIG_MOXA_INTELLIO=m
CONFIG_MOXA_SMARTIO=m
CONFIG_SYNCLINK=m
CONFIG_SYNCLINKMP=m
CONFIG_SYNCLINK_GT=m
CONFIG_NOZOMI=m
CONFIG_ISI=m
CONFIG_N_HDLC=m
CONFIG_N_GSM=m
CONFIG_TRACE_ROUTER=m
CONFIG_TRACE_SINK=m
CONFIG_DEVKMEM=y
CONFIG_STALDRV=y

#
# Serial drivers
#
CONFIG_SERIAL_8250=y
CONFIG_SERIAL_8250_CONSOLE=y
CONFIG_FIX_EARLYCON_MEM=y
CONFIG_SERIAL_8250_PCI=y
CONFIG_SERIAL_8250_PNP=y
CONFIG_SERIAL_8250_CS=m
CONFIG_SERIAL_8250_NR_UARTS=4
CONFIG_SERIAL_8250_RUNTIME_UARTS=4
CONFIG_SERIAL_8250_EXTENDED=y
CONFIG_SERIAL_8250_MANY_PORTS=y
CONFIG_SERIAL_8250_FOURPORT=m
CONFIG_SERIAL_8250_ACCENT=m
CONFIG_SERIAL_8250_BOCA=m
CONFIG_SERIAL_8250_EXAR_ST16C554=m
CONFIG_SERIAL_8250_HUB6=m
CONFIG_SERIAL_8250_SHARE_IRQ=y
CONFIG_SERIAL_8250_DETECT_IRQ=y
CONFIG_SERIAL_8250_RSA=y

#
# Non-8250 serial port support
#
CONFIG_SERIAL_MFD_HSU=m
CONFIG_SERIAL_UARTLITE=m
CONFIG_SERIAL_CORE=y
CONFIG_SERIAL_CORE_CONSOLE=y
CONFIG_SERIAL_JSM=m
CONFIG_SERIAL_TIMBERDALE=m
CONFIG_SERIAL_ALTERA_JTAGUART=m
CONFIG_SERIAL_ALTERA_UART=m
CONFIG_SERIAL_ALTERA_UART_MAXPORTS=4
CONFIG_SERIAL_ALTERA_UART_BAUDRATE=115200
CONFIG_SERIAL_PCH_UART=m
# CONFIG_SERIAL_XILINX_PS_UART is not set
CONFIG_PRINTER=m
CONFIG_LP_CONSOLE=y
CONFIG_PPDEV=m
CONFIG_HVC_DRIVER=y
CONFIG_VIRTIO_CONSOLE=m
CONFIG_IPMI_HANDLER=m
# CONFIG_IPMI_PANIC_EVENT is not set
CONFIG_IPMI_DEVICE_INTERFACE=m
CONFIG_IPMI_SI=m
CONFIG_IPMI_WATCHDOG=m
CONFIG_IPMI_POWEROFF=m
CONFIG_HW_RANDOM=y
CONFIG_HW_RANDOM_TIMERIOMEM=m
CONFIG_HW_RANDOM_INTEL=m
CONFIG_HW_RANDOM_AMD=m
CONFIG_HW_RANDOM_GEODE=m
CONFIG_HW_RANDOM_VIA=m
CONFIG_HW_RANDOM_VIRTIO=m
CONFIG_NVRAM=m
CONFIG_DTLK=m
CONFIG_R3964=m
CONFIG_APPLICOM=m
CONFIG_SONYPI=m

#
# PCMCIA character devices
#
CONFIG_SYNCLINK_CS=m
CONFIG_CARDMAN_4000=m
CONFIG_CARDMAN_4040=m
CONFIG_IPWIRELESS=m
CONFIG_MWAVE=m
CONFIG_SCx200_GPIO=m
CONFIG_PC8736x_GPIO=m
CONFIG_NSC_GPIO=m
CONFIG_RAW_DRIVER=m
CONFIG_MAX_RAW_DEVS=256
CONFIG_HPET=y
CONFIG_HPET_MMAP=y
CONFIG_HANGCHECK_TIMER=m
CONFIG_TCG_TPM=m
CONFIG_TCG_TIS=m
CONFIG_TCG_NSC=m
CONFIG_TCG_ATMEL=m
CONFIG_TCG_INFINEON=m
CONFIG_TELCLOCK=m
CONFIG_DEVPORT=y
# CONFIG_RAMOOPS is not set
CONFIG_I2C=m
CONFIG_I2C_BOARDINFO=y
CONFIG_I2C_COMPAT=y
CONFIG_I2C_CHARDEV=m
CONFIG_I2C_MUX=m

#
# Multiplexer I2C Chip support
#
CONFIG_I2C_MUX_GPIO=m
CONFIG_I2C_MUX_PCA9541=m
CONFIG_I2C_MUX_PCA954x=m
CONFIG_I2C_HELPER_AUTO=y
CONFIG_I2C_SMBUS=m
CONFIG_I2C_ALGOBIT=m
CONFIG_I2C_ALGOPCA=m

#
# I2C Hardware Bus support
#

#
# PC SMBus host controller drivers
#
CONFIG_I2C_ALI1535=m
CONFIG_I2C_ALI1563=m
CONFIG_I2C_ALI15X3=m
CONFIG_I2C_AMD756=m
CONFIG_I2C_AMD756_S4882=m
CONFIG_I2C_AMD8111=m
CONFIG_I2C_I801=m
CONFIG_I2C_ISCH=m
CONFIG_I2C_PIIX4=m
CONFIG_I2C_NFORCE2=m
CONFIG_I2C_NFORCE2_S4985=m
CONFIG_I2C_SIS5595=m
CONFIG_I2C_SIS630=m
CONFIG_I2C_SIS96X=m
CONFIG_I2C_VIA=m
CONFIG_I2C_VIAPRO=m

#
# ACPI drivers
#
CONFIG_I2C_SCMI=m

#
# I2C system bus drivers (mostly embedded / system-on-chip)
#
# CONFIG_I2C_DESIGNWARE_PCI is not set
CONFIG_I2C_GPIO=m
CONFIG_I2C_INTEL_MID=m
CONFIG_I2C_OCORES=m
CONFIG_I2C_PCA_PLATFORM=m
# CONFIG_I2C_PXA_PCI is not set
CONFIG_I2C_SIMTEC=m
CONFIG_I2C_XILINX=m
CONFIG_I2C_EG20T=m

#
# External I2C/SMBus adapter drivers
#
CONFIG_I2C_DIOLAN_U2C=m
CONFIG_I2C_PARPORT=m
CONFIG_I2C_PARPORT_LIGHT=m
CONFIG_I2C_TAOS_EVM=m
CONFIG_I2C_TINY_USB=m

#
# Other I2C/SMBus bus drivers
#
CONFIG_I2C_PCA_ISA=m
CONFIG_I2C_STUB=m
CONFIG_SCx200_I2C=m
CONFIG_SCx200_I2C_SCL=12
CONFIG_SCx200_I2C_SDA=13
CONFIG_SCx200_ACB=m
# CONFIG_I2C_DEBUG_CORE is not set
# CONFIG_I2C_DEBUG_ALGO is not set
# CONFIG_I2C_DEBUG_BUS is not set
# CONFIG_SPI is not set

#
# PPS support
#
CONFIG_PPS=m
# CONFIG_PPS_DEBUG is not set

#
# PPS clients support
#
# CONFIG_PPS_CLIENT_KTIMER is not set
CONFIG_PPS_CLIENT_LDISC=m
CONFIG_PPS_CLIENT_PARPORT=m
# CONFIG_PPS_CLIENT_GPIO is not set

#
# PPS generators support
#

#
# PTP clock support
#
CONFIG_PTP_1588_CLOCK=m

#
# Enable PHYLIB and NETWORK_PHY_TIMESTAMPING to see the additional clocks.
#
CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y
CONFIG_GPIOLIB=y
# CONFIG_DEBUG_GPIO is not set
CONFIG_GPIO_SYSFS=y
CONFIG_GPIO_MAX730X=m

#
# Memory mapped GPIO drivers:
#
# CONFIG_GPIO_GENERIC_PLATFORM is not set
CONFIG_GPIO_IT8761E=m
CONFIG_GPIO_SCH=m
CONFIG_GPIO_VX855=m

#
# I2C GPIO expanders:
#
CONFIG_GPIO_MAX7300=m
CONFIG_GPIO_MAX732X=m
CONFIG_GPIO_PCA953X=m
CONFIG_GPIO_PCF857X=m
CONFIG_GPIO_ADP5588=m

#
# PCI GPIO expanders:
#
CONFIG_GPIO_CS5535=m
# CONFIG_GPIO_LANGWELL is not set
CONFIG_GPIO_PCH=m
CONFIG_GPIO_ML_IOH=m
# CONFIG_GPIO_TIMBERDALE is not set
CONFIG_GPIO_RDC321X=m

#
# SPI GPIO expanders:
#
# CONFIG_GPIO_MCP23S08 is not set

#
# AC97 GPIO expanders:
#
# CONFIG_GPIO_UCB1400 is not set

#
# MODULbus GPIO expanders:
#
CONFIG_GPIO_JANZ_TTL=m
CONFIG_W1=m
CONFIG_W1_CON=y

#
# 1-wire Bus Masters
#
CONFIG_W1_MASTER_MATROX=m
CONFIG_W1_MASTER_DS2490=m
CONFIG_W1_MASTER_DS2482=m
CONFIG_W1_MASTER_DS1WM=m
CONFIG_W1_MASTER_GPIO=m

#
# 1-wire Slaves
#
CONFIG_W1_SLAVE_THERM=m
CONFIG_W1_SLAVE_SMEM=m
CONFIG_W1_SLAVE_DS2408=m
CONFIG_W1_SLAVE_DS2423=m
CONFIG_W1_SLAVE_DS2431=m
CONFIG_W1_SLAVE_DS2433=m
CONFIG_W1_SLAVE_DS2433_CRC=y
CONFIG_W1_SLAVE_DS2760=m
CONFIG_W1_SLAVE_DS2780=m
CONFIG_W1_SLAVE_BQ27000=m
CONFIG_POWER_SUPPLY=y
# CONFIG_POWER_SUPPLY_DEBUG is not set
CONFIG_PDA_POWER=m
CONFIG_TEST_POWER=m
CONFIG_BATTERY_DS2760=m
CONFIG_BATTERY_DS2780=m
CONFIG_BATTERY_DS2782=m
# CONFIG_BATTERY_SBS is not set
CONFIG_BATTERY_BQ27x00=m
CONFIG_BATTERY_BQ27X00_I2C=y
CONFIG_BATTERY_BQ27X00_PLATFORM=y
CONFIG_BATTERY_MAX17040=m
CONFIG_BATTERY_MAX17042=m
CONFIG_CHARGER_PCF50633=m
CONFIG_CHARGER_ISP1704=m
CONFIG_CHARGER_MAX8903=m
# CONFIG_CHARGER_LP8727 is not set
CONFIG_CHARGER_GPIO=m
# CONFIG_CHARGER_MANAGER is not set
CONFIG_HWMON=m
CONFIG_HWMON_VID=m
# CONFIG_HWMON_DEBUG_CHIP is not set

#
# Native drivers
#
CONFIG_SENSORS_ABITUGURU=m
CONFIG_SENSORS_ABITUGURU3=m
CONFIG_SENSORS_AD7414=m
CONFIG_SENSORS_AD7418=m
CONFIG_SENSORS_ADM1021=m
CONFIG_SENSORS_ADM1025=m
CONFIG_SENSORS_ADM1026=m
CONFIG_SENSORS_ADM1029=m
CONFIG_SENSORS_ADM1031=m
CONFIG_SENSORS_ADM9240=m
CONFIG_SENSORS_ADT7411=m
CONFIG_SENSORS_ADT7462=m
CONFIG_SENSORS_ADT7470=m
CONFIG_SENSORS_ADT7475=m
CONFIG_SENSORS_ASC7621=m
CONFIG_SENSORS_K8TEMP=m
CONFIG_SENSORS_K10TEMP=m
CONFIG_SENSORS_FAM15H_POWER=m
CONFIG_SENSORS_ASB100=m
CONFIG_SENSORS_ATXP1=m
CONFIG_SENSORS_DS620=m
CONFIG_SENSORS_DS1621=m
CONFIG_SENSORS_I5K_AMB=m
CONFIG_SENSORS_F71805F=m
CONFIG_SENSORS_F71882FG=m
CONFIG_SENSORS_F75375S=m
CONFIG_SENSORS_FSCHMD=m
CONFIG_SENSORS_G760A=m
CONFIG_SENSORS_GL518SM=m
CONFIG_SENSORS_GL520SM=m
CONFIG_SENSORS_GPIO_FAN=m
CONFIG_SENSORS_CORETEMP=m
CONFIG_SENSORS_IBMAEM=m
CONFIG_SENSORS_IBMPEX=m
CONFIG_SENSORS_IT87=m
CONFIG_SENSORS_JC42=m
CONFIG_SENSORS_LINEAGE=m
CONFIG_SENSORS_LM63=m
CONFIG_SENSORS_LM73=m
CONFIG_SENSORS_LM75=m
CONFIG_SENSORS_LM77=m
CONFIG_SENSORS_LM78=m
CONFIG_SENSORS_LM80=m
CONFIG_SENSORS_LM83=m
CONFIG_SENSORS_LM85=m
CONFIG_SENSORS_LM87=m
CONFIG_SENSORS_LM90=m
CONFIG_SENSORS_LM92=m
CONFIG_SENSORS_LM93=m
CONFIG_SENSORS_LTC4151=m
CONFIG_SENSORS_LTC4215=m
CONFIG_SENSORS_LTC4245=m
CONFIG_SENSORS_LTC4261=m
CONFIG_SENSORS_LM95241=m
# CONFIG_SENSORS_LM95245 is not set
CONFIG_SENSORS_MAX16065=m
CONFIG_SENSORS_MAX1619=m
# CONFIG_SENSORS_MAX1668 is not set
CONFIG_SENSORS_MAX6639=m
CONFIG_SENSORS_MAX6642=m
CONFIG_SENSORS_MAX6650=m
# CONFIG_SENSORS_NTC_THERMISTOR is not set
CONFIG_SENSORS_PC87360=m
CONFIG_SENSORS_PC87427=m
CONFIG_SENSORS_PCF8591=m
CONFIG_PMBUS=m
CONFIG_SENSORS_PMBUS=m
CONFIG_SENSORS_ADM1275=m
# CONFIG_SENSORS_LM25066 is not set
# CONFIG_SENSORS_LTC2978 is not set
CONFIG_SENSORS_MAX16064=m
CONFIG_SENSORS_MAX34440=m
CONFIG_SENSORS_MAX8688=m
CONFIG_SENSORS_UCD9000=m
CONFIG_SENSORS_UCD9200=m
# CONFIG_SENSORS_ZL6100 is not set
CONFIG_SENSORS_SHT15=m
CONFIG_SENSORS_SHT21=m
CONFIG_SENSORS_SIS5595=m
CONFIG_SENSORS_SMM665=m
CONFIG_SENSORS_DME1737=m
CONFIG_SENSORS_EMC1403=m
CONFIG_SENSORS_EMC2103=m
CONFIG_SENSORS_EMC6W201=m
CONFIG_SENSORS_SMSC47M1=m
CONFIG_SENSORS_SMSC47M192=m
CONFIG_SENSORS_SMSC47B397=m
CONFIG_SENSORS_SCH56XX_COMMON=m
CONFIG_SENSORS_SCH5627=m
# CONFIG_SENSORS_SCH5636 is not set
CONFIG_SENSORS_ADS1015=m
CONFIG_SENSORS_ADS7828=m
CONFIG_SENSORS_AMC6821=m
CONFIG_SENSORS_THMC50=m
CONFIG_SENSORS_TMP102=m
CONFIG_SENSORS_TMP401=m
CONFIG_SENSORS_TMP421=m
CONFIG_SENSORS_VIA_CPUTEMP=m
CONFIG_SENSORS_VIA686A=m
CONFIG_SENSORS_VT1211=m
CONFIG_SENSORS_VT8231=m
CONFIG_SENSORS_W83781D=m
CONFIG_SENSORS_W83791D=m
CONFIG_SENSORS_W83792D=m
CONFIG_SENSORS_W83793=m
CONFIG_SENSORS_W83795=m
# CONFIG_SENSORS_W83795_FANCTRL is not set
CONFIG_SENSORS_W83L785TS=m
CONFIG_SENSORS_W83L786NG=m
CONFIG_SENSORS_W83627HF=m
CONFIG_SENSORS_W83627EHF=m
CONFIG_SENSORS_APPLESMC=m

#
# ACPI drivers
#
CONFIG_SENSORS_ACPI_POWER=m
CONFIG_SENSORS_ATK0110=m
CONFIG_THERMAL=m
CONFIG_THERMAL_HWMON=y
CONFIG_WATCHDOG=y
CONFIG_WATCHDOG_CORE=y
# CONFIG_WATCHDOG_NOWAYOUT is not set

#
# Watchdog Device Drivers
#
CONFIG_SOFT_WATCHDOG=m
CONFIG_ACQUIRE_WDT=m
CONFIG_ADVANTECH_WDT=m
CONFIG_ALIM1535_WDT=m
CONFIG_ALIM7101_WDT=m
CONFIG_F71808E_WDT=m
CONFIG_SP5100_TCO=m
CONFIG_GEODE_WDT=m
CONFIG_SC520_WDT=m
CONFIG_SBC_FITPC2_WATCHDOG=m
CONFIG_EUROTECH_WDT=m
CONFIG_IB700_WDT=m
CONFIG_IBMASR=m
CONFIG_WAFER_WDT=m
CONFIG_I6300ESB_WDT=m
CONFIG_ITCO_WDT=m
CONFIG_ITCO_VENDOR_SUPPORT=y
CONFIG_IT8712F_WDT=m
CONFIG_IT87_WDT=m
CONFIG_HP_WATCHDOG=m
CONFIG_HPWDT_NMI_DECODING=y
CONFIG_SC1200_WDT=m
CONFIG_SCx200_WDT=m
CONFIG_PC87413_WDT=m
CONFIG_NV_TCO=m
CONFIG_60XX_WDT=m
CONFIG_SBC8360_WDT=m
CONFIG_SBC7240_WDT=m
CONFIG_CPU5_WDT=m
CONFIG_SMSC_SCH311X_WDT=m
CONFIG_SMSC37B787_WDT=m
# CONFIG_VIA_WDT is not set
CONFIG_W83627HF_WDT=m
CONFIG_W83697HF_WDT=m
CONFIG_W83697UG_WDT=m
CONFIG_W83877F_WDT=m
CONFIG_W83977F_WDT=m
CONFIG_MACHZ_WDT=m
CONFIG_SBC_EPX_C3_WATCHDOG=m

#
# ISA-based Watchdog Cards
#
CONFIG_PCWATCHDOG=m
CONFIG_MIXCOMWD=m
CONFIG_WDT=m

#
# PCI-based Watchdog Cards
#
CONFIG_PCIPCWATCHDOG=m
CONFIG_WDTPCI=m

#
# USB-based Watchdog Cards
#
CONFIG_USBPCWATCHDOG=m
CONFIG_SSB_POSSIBLE=y

#
# Sonics Silicon Backplane
#
CONFIG_SSB=m
CONFIG_SSB_SPROM=y
CONFIG_SSB_BLOCKIO=y
CONFIG_SSB_PCIHOST_POSSIBLE=y
CONFIG_SSB_PCIHOST=y
CONFIG_SSB_B43_PCI_BRIDGE=y
CONFIG_SSB_PCMCIAHOST_POSSIBLE=y
CONFIG_SSB_PCMCIAHOST=y
CONFIG_SSB_SDIOHOST_POSSIBLE=y
CONFIG_SSB_SDIOHOST=y
# CONFIG_SSB_DEBUG is not set
CONFIG_SSB_DRIVER_PCICORE_POSSIBLE=y
CONFIG_SSB_DRIVER_PCICORE=y
CONFIG_BCMA_POSSIBLE=y

#
# Broadcom specific AMBA
#
# CONFIG_BCMA is not set

#
# Multifunction device drivers
#
CONFIG_MFD_CORE=m
# CONFIG_MFD_SM501 is not set
CONFIG_HTC_PASIC3=m
CONFIG_UCB1400_CORE=m
CONFIG_TPS6105X=m
CONFIG_TPS65010=m
CONFIG_TPS6507X=m
# CONFIG_MFD_TMIO is not set
# CONFIG_MFD_WM8400 is not set
CONFIG_MFD_PCF50633=m
CONFIG_PCF50633_ADC=m
CONFIG_PCF50633_GPIO=m
# CONFIG_ABX500_CORE is not set
CONFIG_MFD_CS5535=m
CONFIG_MFD_TIMBERDALE=m
CONFIG_LPC_SCH=m
CONFIG_MFD_RDC321X=m
CONFIG_MFD_JANZ_CMODIO=m
CONFIG_MFD_VX855=m
CONFIG_MFD_WL1273_CORE=m
CONFIG_REGULATOR=y
# CONFIG_REGULATOR_DEBUG is not set
# CONFIG_REGULATOR_DUMMY is not set
CONFIG_REGULATOR_FIXED_VOLTAGE=m
# CONFIG_REGULATOR_VIRTUAL_CONSUMER is not set
CONFIG_REGULATOR_USERSPACE_CONSUMER=m
# CONFIG_REGULATOR_GPIO is not set
# CONFIG_REGULATOR_BQ24022 is not set
CONFIG_REGULATOR_MAX1586=m
CONFIG_REGULATOR_MAX8649=m
CONFIG_REGULATOR_MAX8660=m
CONFIG_REGULATOR_MAX8952=m
CONFIG_REGULATOR_PCF50633=m
CONFIG_REGULATOR_LP3971=m
CONFIG_REGULATOR_LP3972=m
CONFIG_REGULATOR_TPS6105X=m
CONFIG_REGULATOR_TPS65023=m
CONFIG_REGULATOR_TPS6507X=m
CONFIG_REGULATOR_ISL6271A=m
CONFIG_REGULATOR_AD5398=m
CONFIG_MEDIA_SUPPORT=m

#
# Multimedia core support
#
# CONFIG_MEDIA_CONTROLLER is not set
CONFIG_VIDEO_DEV=m
CONFIG_VIDEO_V4L2_COMMON=m
CONFIG_DVB_CORE=m
CONFIG_DVB_NET=y
CONFIG_VIDEO_MEDIA=m

#
# Multimedia drivers
#
CONFIG_VIDEO_SAA7146=m
CONFIG_VIDEO_SAA7146_VV=m
CONFIG_RC_CORE=m
CONFIG_LIRC=m
CONFIG_RC_MAP=m
CONFIG_IR_NEC_DECODER=m
CONFIG_IR_RC5_DECODER=m
CONFIG_IR_RC6_DECODER=m
CONFIG_IR_JVC_DECODER=m
CONFIG_IR_SONY_DECODER=m
CONFIG_IR_RC5_SZ_DECODER=m
CONFIG_IR_SANYO_DECODER=m
CONFIG_IR_MCE_KBD_DECODER=m
CONFIG_IR_LIRC_CODEC=m
# CONFIG_RC_ATI_REMOTE is not set
CONFIG_IR_ENE=m
CONFIG_IR_IMON=m
CONFIG_IR_MCEUSB=m
CONFIG_IR_ITE_CIR=m
CONFIG_IR_FINTEK=m
CONFIG_IR_NUVOTON=m
CONFIG_IR_REDRAT3=m
CONFIG_IR_STREAMZAP=m
CONFIG_IR_WINBOND_CIR=m
CONFIG_RC_LOOPBACK=m
CONFIG_MEDIA_ATTACH=y
CONFIG_MEDIA_TUNER=m
# CONFIG_MEDIA_TUNER_CUSTOMISE is not set
CONFIG_MEDIA_TUNER_SIMPLE=m
CONFIG_MEDIA_TUNER_TDA8290=m
CONFIG_MEDIA_TUNER_TDA827X=m
CONFIG_MEDIA_TUNER_TDA18271=m
CONFIG_MEDIA_TUNER_TDA9887=m
CONFIG_MEDIA_TUNER_TEA5761=m
CONFIG_MEDIA_TUNER_TEA5767=m
CONFIG_MEDIA_TUNER_MT20XX=m
CONFIG_MEDIA_TUNER_MT2060=m
CONFIG_MEDIA_TUNER_MT2266=m
CONFIG_MEDIA_TUNER_MT2131=m
CONFIG_MEDIA_TUNER_QT1010=m
CONFIG_MEDIA_TUNER_XC2028=m
CONFIG_MEDIA_TUNER_XC5000=m
CONFIG_MEDIA_TUNER_XC4000=m
CONFIG_MEDIA_TUNER_MXL5005S=m
CONFIG_MEDIA_TUNER_MXL5007T=m
CONFIG_MEDIA_TUNER_MC44S803=m
CONFIG_MEDIA_TUNER_MAX2165=m
CONFIG_MEDIA_TUNER_TDA18218=m
CONFIG_MEDIA_TUNER_TDA18212=m
CONFIG_VIDEO_V4L2=m
CONFIG_VIDEOBUF_GEN=m
CONFIG_VIDEOBUF_DMA_SG=m
CONFIG_VIDEOBUF_VMALLOC=m
CONFIG_VIDEOBUF_DVB=m
CONFIG_VIDEO_BTCX=m
CONFIG_VIDEO_TVEEPROM=m
CONFIG_VIDEO_TUNER=m
CONFIG_V4L2_MEM2MEM_DEV=m
CONFIG_VIDEOBUF2_CORE=m
CONFIG_VIDEOBUF2_MEMOPS=m
CONFIG_VIDEOBUF2_VMALLOC=m
CONFIG_VIDEO_CAPTURE_DRIVERS=y
# CONFIG_VIDEO_ADV_DEBUG is not set
# CONFIG_VIDEO_FIXED_MINOR_RANGES is not set
CONFIG_VIDEO_HELPER_CHIPS_AUTO=y
CONFIG_VIDEO_IR_I2C=m

#
# Audio decoders, processors and mixers
#
CONFIG_VIDEO_TVAUDIO=m
CONFIG_VIDEO_TDA7432=m
CONFIG_VIDEO_TDA9840=m
CONFIG_VIDEO_TEA6415C=m
CONFIG_VIDEO_TEA6420=m
CONFIG_VIDEO_MSP3400=m
CONFIG_VIDEO_CS5345=m
CONFIG_VIDEO_CS53L32A=m
CONFIG_VIDEO_WM8775=m
CONFIG_VIDEO_WM8739=m
CONFIG_VIDEO_VP27SMPX=m

#
# RDS decoders
#
CONFIG_VIDEO_SAA6588=m

#
# Video decoders
#
CONFIG_VIDEO_BT819=m
CONFIG_VIDEO_BT856=m
CONFIG_VIDEO_BT866=m
CONFIG_VIDEO_KS0127=m
CONFIG_VIDEO_SAA7110=m
CONFIG_VIDEO_SAA711X=m
CONFIG_VIDEO_TVP5150=m
CONFIG_VIDEO_VPX3220=m

#
# Video and audio decoders
#
CONFIG_VIDEO_SAA717X=m
CONFIG_VIDEO_CX25840=m

#
# MPEG video encoders
#
CONFIG_VIDEO_CX2341X=m

#
# Video encoders
#
CONFIG_VIDEO_SAA7127=m
CONFIG_VIDEO_SAA7185=m
CONFIG_VIDEO_ADV7170=m
CONFIG_VIDEO_ADV7175=m

#
# Camera sensor devices
#
CONFIG_VIDEO_MT9V011=m

#
# Flash devices
#

#
# Video improvement chips
#
CONFIG_VIDEO_UPD64031A=m
CONFIG_VIDEO_UPD64083=m

#
# Miscelaneous helper chips
#
CONFIG_VIDEO_M52790=m
CONFIG_VIDEO_VIVI=m
CONFIG_V4L_USB_DRIVERS=y
CONFIG_USB_VIDEO_CLASS=m
CONFIG_USB_VIDEO_CLASS_INPUT_EVDEV=y
CONFIG_USB_GSPCA=m
CONFIG_USB_M5602=m
CONFIG_USB_STV06XX=m
CONFIG_USB_GL860=m
CONFIG_USB_GSPCA_BENQ=m
CONFIG_USB_GSPCA_CONEX=m
CONFIG_USB_GSPCA_CPIA1=m
CONFIG_USB_GSPCA_ETOMS=m
CONFIG_USB_GSPCA_FINEPIX=m
CONFIG_USB_GSPCA_JEILINJ=m
# CONFIG_USB_GSPCA_JL2005BCD is not set
CONFIG_USB_GSPCA_KINECT=m
CONFIG_USB_GSPCA_KONICA=m
CONFIG_USB_GSPCA_MARS=m
CONFIG_USB_GSPCA_MR97310A=m
CONFIG_USB_GSPCA_NW80X=m
CONFIG_USB_GSPCA_OV519=m
CONFIG_USB_GSPCA_OV534=m
CONFIG_USB_GSPCA_OV534_9=m
CONFIG_USB_GSPCA_PAC207=m
CONFIG_USB_GSPCA_PAC7302=m
CONFIG_USB_GSPCA_PAC7311=m
# CONFIG_USB_GSPCA_SE401 is not set
CONFIG_USB_GSPCA_SN9C2028=m
CONFIG_USB_GSPCA_SN9C20X=m
CONFIG_USB_GSPCA_SONIXB=m
CONFIG_USB_GSPCA_SONIXJ=m
CONFIG_USB_GSPCA_SPCA500=m
CONFIG_USB_GSPCA_SPCA501=m
CONFIG_USB_GSPCA_SPCA505=m
CONFIG_USB_GSPCA_SPCA506=m
CONFIG_USB_GSPCA_SPCA508=m
CONFIG_USB_GSPCA_SPCA561=m
CONFIG_USB_GSPCA_SPCA1528=m
CONFIG_USB_GSPCA_SQ905=m
CONFIG_USB_GSPCA_SQ905C=m
CONFIG_USB_GSPCA_SQ930X=m
CONFIG_USB_GSPCA_STK014=m
CONFIG_USB_GSPCA_STV0680=m
CONFIG_USB_GSPCA_SUNPLUS=m
CONFIG_USB_GSPCA_T613=m
# CONFIG_USB_GSPCA_TOPRO is not set
CONFIG_USB_GSPCA_TV8532=m
CONFIG_USB_GSPCA_VC032X=m
CONFIG_USB_GSPCA_VICAM=m
CONFIG_USB_GSPCA_XIRLINK_CIT=m
CONFIG_USB_GSPCA_ZC3XX=m
CONFIG_VIDEO_PVRUSB2=m
CONFIG_VIDEO_PVRUSB2_SYSFS=y
CONFIG_VIDEO_PVRUSB2_DVB=y
# CONFIG_VIDEO_PVRUSB2_DEBUGIFC is not set
CONFIG_VIDEO_HDPVR=m
CONFIG_VIDEO_EM28XX=m
CONFIG_VIDEO_EM28XX_ALSA=m
CONFIG_VIDEO_EM28XX_DVB=m
CONFIG_VIDEO_EM28XX_RC=y
CONFIG_VIDEO_TLG2300=m
CONFIG_VIDEO_CX231XX=m
CONFIG_VIDEO_CX231XX_RC=y
CONFIG_VIDEO_CX231XX_ALSA=m
CONFIG_VIDEO_CX231XX_DVB=m
CONFIG_VIDEO_TM6000=m
CONFIG_VIDEO_TM6000_ALSA=m
CONFIG_VIDEO_TM6000_DVB=m
CONFIG_VIDEO_USBVISION=m
# CONFIG_USB_ET61X251 is not set
CONFIG_USB_SN9C102=m
CONFIG_USB_PWC=m
# CONFIG_USB_PWC_DEBUG is not set
CONFIG_USB_PWC_INPUT_EVDEV=y
CONFIG_VIDEO_CPIA2=m
CONFIG_USB_ZR364XX=m
CONFIG_USB_STKWEBCAM=m
CONFIG_USB_S2255=m
CONFIG_V4L_PCI_DRIVERS=y
CONFIG_VIDEO_AU0828=m
CONFIG_VIDEO_BT848=m
# CONFIG_VIDEO_BT848_DVB is not set
CONFIG_VIDEO_CX18=m
CONFIG_VIDEO_CX18_ALSA=m
CONFIG_VIDEO_CX23885=m
CONFIG_MEDIA_ALTERA_CI=m
CONFIG_VIDEO_CX25821=m
CONFIG_VIDEO_CX25821_ALSA=m
CONFIG_VIDEO_CX88=m
CONFIG_VIDEO_CX88_ALSA=m
CONFIG_VIDEO_CX88_BLACKBIRD=m
CONFIG_VIDEO_CX88_DVB=m
CONFIG_VIDEO_CX88_VP3054=m
CONFIG_VIDEO_CX88_MPEG=m
CONFIG_VIDEO_HEXIUM_GEMINI=m
CONFIG_VIDEO_HEXIUM_ORION=m
CONFIG_VIDEO_IVTV=m
CONFIG_VIDEO_FB_IVTV=m
CONFIG_VIDEO_MEYE=m
CONFIG_VIDEO_MXB=m
CONFIG_VIDEO_SAA7134=m
CONFIG_VIDEO_SAA7134_ALSA=m
CONFIG_VIDEO_SAA7134_RC=y
CONFIG_VIDEO_SAA7134_DVB=m
CONFIG_VIDEO_SAA7164=m
CONFIG_VIDEO_ZORAN=m
CONFIG_VIDEO_ZORAN_DC30=m
CONFIG_VIDEO_ZORAN_ZR36060=m
CONFIG_VIDEO_ZORAN_BUZ=m
CONFIG_VIDEO_ZORAN_DC10=m
CONFIG_VIDEO_ZORAN_LML33=m
CONFIG_VIDEO_ZORAN_LML33R10=m
CONFIG_VIDEO_ZORAN_AVS6EYES=m
# CONFIG_V4L_ISA_PARPORT_DRIVERS is not set
# CONFIG_V4L_PLATFORM_DRIVERS is not set
CONFIG_V4L_MEM2MEM_DRIVERS=y
CONFIG_VIDEO_MEM2MEM_TESTDEV=m
CONFIG_RADIO_ADAPTERS=y
# CONFIG_RADIO_SI470X is not set
CONFIG_USB_MR800=m
CONFIG_USB_DSBR=m
CONFIG_RADIO_MAXIRADIO=m
CONFIG_I2C_SI4713=m
CONFIG_RADIO_SI4713=m
CONFIG_RADIO_TEA5764=m
CONFIG_RADIO_SAA7706H=m
CONFIG_RADIO_TEF6862=m
CONFIG_RADIO_TIMBERDALE=m
CONFIG_RADIO_WL1273=m

#
# Texas Instruments WL128x FM driver (ST based)
#
CONFIG_RADIO_WL128X=m
# CONFIG_V4L_RADIO_ISA_DRIVERS is not set
CONFIG_DVB_MAX_ADAPTERS=8
# CONFIG_DVB_DYNAMIC_MINORS is not set
CONFIG_DVB_CAPTURE_DRIVERS=y

#
# Supported SAA7146 based PCI Adapters
#
CONFIG_TTPCI_EEPROM=m
CONFIG_DVB_AV7110=m
CONFIG_DVB_AV7110_OSD=y
CONFIG_DVB_BUDGET_CORE=m
CONFIG_DVB_BUDGET=m
CONFIG_DVB_BUDGET_CI=m
CONFIG_DVB_BUDGET_AV=m
CONFIG_DVB_BUDGET_PATCH=m

#
# Supported USB Adapters
#
CONFIG_DVB_USB=m
# CONFIG_DVB_USB_DEBUG is not set
CONFIG_DVB_USB_A800=m
CONFIG_DVB_USB_DIBUSB_MB=m
# CONFIG_DVB_USB_DIBUSB_MB_FAULTY is not set
CONFIG_DVB_USB_DIBUSB_MC=m
CONFIG_DVB_USB_DIB0700=m
CONFIG_DVB_USB_UMT_010=m
CONFIG_DVB_USB_CXUSB=m
CONFIG_DVB_USB_M920X=m
CONFIG_DVB_USB_GL861=m
CONFIG_DVB_USB_AU6610=m
CONFIG_DVB_USB_DIGITV=m
CONFIG_DVB_USB_VP7045=m
CONFIG_DVB_USB_VP702X=m
CONFIG_DVB_USB_GP8PSK=m
CONFIG_DVB_USB_NOVA_T_USB2=m
CONFIG_DVB_USB_TTUSB2=m
CONFIG_DVB_USB_DTT200U=m
CONFIG_DVB_USB_OPERA1=m
CONFIG_DVB_USB_AF9005=m
CONFIG_DVB_USB_AF9005_REMOTE=m
# CONFIG_DVB_USB_PCTV452E is not set
CONFIG_DVB_USB_DW2102=m
CONFIG_DVB_USB_CINERGY_T2=m
CONFIG_DVB_USB_ANYSEE=m
CONFIG_DVB_USB_DTV5100=m
CONFIG_DVB_USB_AF9015=m
CONFIG_DVB_USB_CE6230=m
CONFIG_DVB_USB_FRIIO=m
CONFIG_DVB_USB_EC168=m
CONFIG_DVB_USB_AZ6027=m
CONFIG_DVB_USB_LME2510=m
CONFIG_DVB_USB_TECHNISAT_USB2=m
# CONFIG_DVB_USB_IT913X is not set
# CONFIG_DVB_USB_MXL111SF is not set
CONFIG_DVB_TTUSB_BUDGET=m
CONFIG_DVB_TTUSB_DEC=m
CONFIG_SMS_SIANO_MDTV=m

#
# Siano module components
#
CONFIG_SMS_USB_DRV=m
CONFIG_SMS_SDIO_DRV=m

#
# Supported FlexCopII (B2C2) Adapters
#
CONFIG_DVB_B2C2_FLEXCOP=m
CONFIG_DVB_B2C2_FLEXCOP_PCI=m
CONFIG_DVB_B2C2_FLEXCOP_USB=m
CONFIG_DVB_B2C2_FLEXCOP_DEBUG=y

#
# Supported BT878 Adapters
#
CONFIG_DVB_BT8XX=m

#
# Supported Pluto2 Adapters
#
CONFIG_DVB_PLUTO2=m

#
# Supported SDMC DM1105 Adapters
#
CONFIG_DVB_DM1105=m

#
# Supported FireWire (IEEE 1394) Adapters
#
CONFIG_DVB_FIREDTV=m
CONFIG_DVB_FIREDTV_INPUT=y

#
# Supported Earthsoft PT1 Adapters
#
CONFIG_DVB_PT1=m

#
# Supported Mantis Adapters
#
CONFIG_MANTIS_CORE=m
CONFIG_DVB_MANTIS=m
CONFIG_DVB_HOPPER=m

#
# Supported nGene Adapters
#
CONFIG_DVB_NGENE=m

#
# Supported ddbridge ('Octopus') Adapters
#
# CONFIG_DVB_DDBRIDGE is not set

#
# Supported DVB Frontends
#
# CONFIG_DVB_FE_CUSTOMISE is not set

#
# Multistandard (satellite) frontends
#
CONFIG_DVB_STB0899=m
CONFIG_DVB_STB6100=m
CONFIG_DVB_STV090x=m
CONFIG_DVB_STV6110x=m

#
# Multistandard (cable + terrestrial) frontends
#
CONFIG_DVB_DRXK=m
CONFIG_DVB_TDA18271C2DD=m

#
# DVB-S (satellite) frontends
#
CONFIG_DVB_CX24110=m
CONFIG_DVB_CX24123=m
CONFIG_DVB_MT312=m
CONFIG_DVB_ZL10036=m
CONFIG_DVB_ZL10039=m
CONFIG_DVB_S5H1420=m
CONFIG_DVB_STV0288=m
CONFIG_DVB_STB6000=m
CONFIG_DVB_STV0299=m
CONFIG_DVB_STV6110=m
CONFIG_DVB_STV0900=m
CONFIG_DVB_TDA8083=m
CONFIG_DVB_TDA10086=m
CONFIG_DVB_TDA8261=m
CONFIG_DVB_VES1X93=m
CONFIG_DVB_TUNER_ITD1000=m
CONFIG_DVB_TUNER_CX24113=m
CONFIG_DVB_TDA826X=m
CONFIG_DVB_TUA6100=m
CONFIG_DVB_CX24116=m
CONFIG_DVB_SI21XX=m
CONFIG_DVB_DS3000=m
CONFIG_DVB_MB86A16=m
CONFIG_DVB_TDA10071=m

#
# DVB-T (terrestrial) frontends
#
CONFIG_DVB_SP8870=m
CONFIG_DVB_SP887X=m
CONFIG_DVB_CX22700=m
CONFIG_DVB_CX22702=m
CONFIG_DVB_DRXD=m
CONFIG_DVB_L64781=m
CONFIG_DVB_TDA1004X=m
CONFIG_DVB_NXT6000=m
CONFIG_DVB_MT352=m
CONFIG_DVB_ZL10353=m
CONFIG_DVB_DIB3000MB=m
CONFIG_DVB_DIB3000MC=m
CONFIG_DVB_DIB7000M=m
CONFIG_DVB_DIB7000P=m
CONFIG_DVB_TDA10048=m
CONFIG_DVB_AF9013=m
CONFIG_DVB_EC100=m
CONFIG_DVB_STV0367=m
CONFIG_DVB_CXD2820R=m

#
# DVB-C (cable) frontends
#
CONFIG_DVB_VES1820=m
CONFIG_DVB_TDA10021=m
CONFIG_DVB_TDA10023=m
CONFIG_DVB_STV0297=m

#
# ATSC (North American/Korean Terrestrial/Cable DTV) frontends
#
CONFIG_DVB_NXT200X=m
CONFIG_DVB_OR51211=m
CONFIG_DVB_OR51132=m
CONFIG_DVB_BCM3510=m
CONFIG_DVB_LGDT330X=m
CONFIG_DVB_LGDT3305=m
CONFIG_DVB_S5H1409=m
CONFIG_DVB_AU8522=m
CONFIG_DVB_S5H1411=m

#
# ISDB-T (terrestrial) frontends
#
CONFIG_DVB_S921=m
CONFIG_DVB_DIB8000=m
CONFIG_DVB_MB86A20S=m

#
# Digital terrestrial only tuners/PLL
#
CONFIG_DVB_PLL=m
CONFIG_DVB_TUNER_DIB0070=m
CONFIG_DVB_TUNER_DIB0090=m

#
# SEC control devices for DVB-S
#
CONFIG_DVB_LNBP21=m
CONFIG_DVB_ISL6405=m
CONFIG_DVB_ISL6421=m
CONFIG_DVB_ISL6423=m
CONFIG_DVB_A8293=m
CONFIG_DVB_LGS8GXX=m
CONFIG_DVB_ATBM8830=m
CONFIG_DVB_TDA665x=m
CONFIG_DVB_IX2505V=m

#
# Tools to develop new frontends
#
# CONFIG_DVB_DUMMY_FE is not set

#
# Graphics support
#
CONFIG_AGP=m
CONFIG_AGP_ALI=m
CONFIG_AGP_ATI=m
CONFIG_AGP_AMD=m
CONFIG_AGP_AMD64=m
CONFIG_AGP_INTEL=m
CONFIG_AGP_NVIDIA=m
CONFIG_AGP_SIS=m
CONFIG_AGP_SWORKS=m
CONFIG_AGP_VIA=m
CONFIG_AGP_EFFICEON=m
CONFIG_VGA_ARB=y
CONFIG_VGA_ARB_MAX_GPUS=16
CONFIG_VGA_SWITCHEROO=y
CONFIG_DRM=m
CONFIG_DRM_KMS_HELPER=m
CONFIG_DRM_TTM=m
CONFIG_DRM_TDFX=m
CONFIG_DRM_R128=m
CONFIG_DRM_RADEON=m
CONFIG_DRM_RADEON_KMS=y
CONFIG_DRM_I810=m
CONFIG_DRM_I915=m
CONFIG_DRM_I915_KMS=y
CONFIG_DRM_MGA=m
CONFIG_DRM_SIS=m
CONFIG_DRM_VIA=m
CONFIG_DRM_SAVAGE=m
CONFIG_DRM_VMWGFX=m
# CONFIG_DRM_GMA500 is not set
CONFIG_STUB_POULSBO=m
CONFIG_VGASTATE=m
CONFIG_VIDEO_OUTPUT_CONTROL=m
CONFIG_FB=y
CONFIG_FIRMWARE_EDID=y
CONFIG_FB_DDC=m
CONFIG_FB_BOOT_VESA_SUPPORT=y
CONFIG_FB_CFB_FILLRECT=y
CONFIG_FB_CFB_COPYAREA=y
CONFIG_FB_CFB_IMAGEBLIT=y
# CONFIG_FB_CFB_REV_PIXELS_IN_BYTE is not set
CONFIG_FB_SYS_FILLRECT=m
CONFIG_FB_SYS_COPYAREA=m
CONFIG_FB_SYS_IMAGEBLIT=m
# CONFIG_FB_FOREIGN_ENDIAN is not set
CONFIG_FB_SYS_FOPS=m
# CONFIG_FB_WMT_GE_ROPS is not set
CONFIG_FB_DEFERRED_IO=y
CONFIG_FB_HECUBA=m
CONFIG_FB_SVGALIB=m
# CONFIG_FB_MACMODES is not set
CONFIG_FB_BACKLIGHT=y
CONFIG_FB_MODE_HELPERS=y
CONFIG_FB_TILEBLITTING=y

#
# Frame buffer hardware drivers
#
CONFIG_FB_CIRRUS=m
CONFIG_FB_PM2=m
# CONFIG_FB_PM2_FIFO_DISCONNECT is not set
CONFIG_FB_CYBER2000=m
CONFIG_FB_CYBER2000_DDC=y
CONFIG_FB_ARC=m
# CONFIG_FB_ASILIANT is not set
# CONFIG_FB_IMSTT is not set
CONFIG_FB_VGA16=m
# CONFIG_FB_UVESA is not set
CONFIG_FB_VESA=y
CONFIG_FB_EFI=y
CONFIG_FB_N411=m
CONFIG_FB_HGA=m
CONFIG_FB_S1D13XXX=m
CONFIG_FB_NVIDIA=m
CONFIG_FB_NVIDIA_I2C=y
# CONFIG_FB_NVIDIA_DEBUG is not set
CONFIG_FB_NVIDIA_BACKLIGHT=y
CONFIG_FB_RIVA=m
CONFIG_FB_RIVA_I2C=y
# CONFIG_FB_RIVA_DEBUG is not set
CONFIG_FB_RIVA_BACKLIGHT=y
CONFIG_FB_I810=m
CONFIG_FB_I810_GTF=y
CONFIG_FB_I810_I2C=y
CONFIG_FB_LE80578=m
CONFIG_FB_CARILLO_RANCH=m
CONFIG_FB_MATROX=m
CONFIG_FB_MATROX_MILLENIUM=y
CONFIG_FB_MATROX_MYSTIQUE=y
CONFIG_FB_MATROX_G=y
CONFIG_FB_MATROX_I2C=m
CONFIG_FB_MATROX_MAVEN=m
CONFIG_FB_RADEON=m
CONFIG_FB_RADEON_I2C=y
CONFIG_FB_RADEON_BACKLIGHT=y
# CONFIG_FB_RADEON_DEBUG is not set
CONFIG_FB_ATY128=m
CONFIG_FB_ATY128_BACKLIGHT=y
CONFIG_FB_ATY=m
CONFIG_FB_ATY_CT=y
CONFIG_FB_ATY_GENERIC_LCD=y
CONFIG_FB_ATY_GX=y
CONFIG_FB_ATY_BACKLIGHT=y
CONFIG_FB_S3=m
CONFIG_FB_S3_DDC=y
CONFIG_FB_SAVAGE=m
CONFIG_FB_SAVAGE_I2C=y
CONFIG_FB_SAVAGE_ACCEL=y
CONFIG_FB_SIS=m
CONFIG_FB_SIS_300=y
CONFIG_FB_SIS_315=y
CONFIG_FB_VIA=m
# CONFIG_FB_VIA_DIRECT_PROCFS is not set
CONFIG_FB_VIA_X_COMPATIBILITY=y
CONFIG_FB_NEOMAGIC=m
CONFIG_FB_KYRO=m
CONFIG_FB_3DFX=m
# CONFIG_FB_3DFX_ACCEL is not set
CONFIG_FB_3DFX_I2C=y
CONFIG_FB_VOODOO1=m
CONFIG_FB_VT8623=m
CONFIG_FB_TRIDENT=m
CONFIG_FB_ARK=m
CONFIG_FB_PM3=m
CONFIG_FB_CARMINE=m
CONFIG_FB_CARMINE_DRAM_EVAL=y
# CONFIG_CARMINE_DRAM_CUSTOM is not set
CONFIG_FB_GEODE=y
CONFIG_FB_GEODE_LX=m
CONFIG_FB_GEODE_GX=m
CONFIG_FB_GEODE_GX1=m
CONFIG_FB_TMIO=m
CONFIG_FB_TMIO_ACCELL=y
# CONFIG_FB_SMSCUFX is not set
CONFIG_FB_UDL=m
# CONFIG_FB_VIRTUAL is not set
CONFIG_FB_METRONOME=m
CONFIG_FB_MB862XX=m
CONFIG_FB_MB862XX_PCI_GDC=y
CONFIG_FB_MB862XX_I2C=y
CONFIG_FB_BROADSHEET=m
CONFIG_BACKLIGHT_LCD_SUPPORT=y
CONFIG_LCD_CLASS_DEVICE=m
CONFIG_LCD_PLATFORM=m
CONFIG_BACKLIGHT_CLASS_DEVICE=y
CONFIG_BACKLIGHT_GENERIC=m
# CONFIG_BACKLIGHT_PROGEAR is not set
CONFIG_BACKLIGHT_CARILLO_RANCH=m
CONFIG_BACKLIGHT_APPLE=m
CONFIG_BACKLIGHT_SAHARA=m
CONFIG_BACKLIGHT_ADP8860=m
CONFIG_BACKLIGHT_ADP8870=m
CONFIG_BACKLIGHT_PCF50633=m

#
# Console display driver support
#
CONFIG_VGA_CONSOLE=y
CONFIG_VGACON_SOFT_SCROLLBACK=y
CONFIG_VGACON_SOFT_SCROLLBACK_SIZE=64
CONFIG_MDA_CONSOLE=m
CONFIG_DUMMY_CONSOLE=y
CONFIG_FRAMEBUFFER_CONSOLE=y
CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y
# CONFIG_FRAMEBUFFER_CONSOLE_ROTATION is not set
CONFIG_FONTS=y
CONFIG_FONT_8x8=y
CONFIG_FONT_8x16=y
# CONFIG_FONT_6x11 is not set
# CONFIG_FONT_7x14 is not set
# CONFIG_FONT_PEARL_8x8 is not set
# CONFIG_FONT_ACORN_8x8 is not set
# CONFIG_FONT_MINI_4x6 is not set
CONFIG_FONT_SUN8x16=y
# CONFIG_FONT_SUN12x22 is not set
# CONFIG_FONT_10x18 is not set
CONFIG_LOGO=y
# CONFIG_LOGO_LINUX_MONO is not set
# CONFIG_LOGO_LINUX_VGA16 is not set
CONFIG_LOGO_LINUX_CLUT224=y
CONFIG_SOUND=m
CONFIG_SOUND_OSS_CORE=y
CONFIG_SOUND_OSS_CORE_PRECLAIM=y
CONFIG_SND=m
CONFIG_SND_TIMER=m
CONFIG_SND_PCM=m
CONFIG_SND_HWDEP=m
CONFIG_SND_RAWMIDI=m
CONFIG_SND_JACK=y
CONFIG_SND_SEQUENCER=m
CONFIG_SND_SEQ_DUMMY=m
CONFIG_SND_OSSEMUL=y
CONFIG_SND_MIXER_OSS=m
CONFIG_SND_PCM_OSS=m
CONFIG_SND_PCM_OSS_PLUGINS=y
CONFIG_SND_SEQUENCER_OSS=y
CONFIG_SND_HRTIMER=m
CONFIG_SND_SEQ_HRTIMER_DEFAULT=y
CONFIG_SND_DYNAMIC_MINORS=y
# CONFIG_SND_SUPPORT_OLD_API is not set
CONFIG_SND_VERBOSE_PROCFS=y
# CONFIG_SND_VERBOSE_PRINTK is not set
# CONFIG_SND_DEBUG is not set
CONFIG_SND_VMASTER=y
CONFIG_SND_KCTL_JACK=y
CONFIG_SND_DMA_SGBUF=y
CONFIG_SND_RAWMIDI_SEQ=m
CONFIG_SND_OPL3_LIB_SEQ=m
CONFIG_SND_OPL4_LIB_SEQ=m
CONFIG_SND_SBAWE_SEQ=m
CONFIG_SND_EMU10K1_SEQ=m
CONFIG_SND_MPU401_UART=m
CONFIG_SND_OPL3_LIB=m
CONFIG_SND_OPL4_LIB=m
CONFIG_SND_VX_LIB=m
CONFIG_SND_AC97_CODEC=m
CONFIG_SND_DRIVERS=y
# CONFIG_SND_PCSP is not set
CONFIG_SND_DUMMY=m
CONFIG_SND_ALOOP=m
CONFIG_SND_VIRMIDI=m
CONFIG_SND_MTPAV=m
CONFIG_SND_MTS64=m
CONFIG_SND_SERIAL_U16550=m
CONFIG_SND_MPU401=m
CONFIG_SND_PORTMAN2X4=m
CONFIG_SND_AC97_POWER_SAVE=y
CONFIG_SND_AC97_POWER_SAVE_DEFAULT=0
CONFIG_SND_WSS_LIB=m
CONFIG_SND_SB_COMMON=m
CONFIG_SND_SB8_DSP=m
CONFIG_SND_SB16_DSP=m
CONFIG_SND_ISA=y
CONFIG_SND_ADLIB=m
CONFIG_SND_AD1816A=m
CONFIG_SND_AD1848=m
CONFIG_SND_ALS100=m
CONFIG_SND_AZT1605=m
CONFIG_SND_AZT2316=m
CONFIG_SND_AZT2320=m
CONFIG_SND_CMI8330=m
CONFIG_SND_CS4231=m
CONFIG_SND_CS4236=m
CONFIG_SND_ES1688=m
CONFIG_SND_ES18XX=m
CONFIG_SND_SC6000=m
CONFIG_SND_GUSCLASSIC=m
CONFIG_SND_GUSEXTREME=m
CONFIG_SND_GUSMAX=m
CONFIG_SND_INTERWAVE=m
CONFIG_SND_INTERWAVE_STB=m
CONFIG_SND_JAZZ16=m
CONFIG_SND_OPL3SA2=m
CONFIG_SND_OPTI92X_AD1848=m
CONFIG_SND_OPTI92X_CS4231=m
CONFIG_SND_OPTI93X=m
CONFIG_SND_MIRO=m
CONFIG_SND_SB8=m
CONFIG_SND_SB16=m
CONFIG_SND_SBAWE=m
CONFIG_SND_SB16_CSP=y
CONFIG_SND_SSCAPE=m
CONFIG_SND_WAVEFRONT=m
CONFIG_SND_MSND_PINNACLE=m
CONFIG_SND_MSND_CLASSIC=m
CONFIG_SND_TEA575X=m
CONFIG_SND_PCI=y
CONFIG_SND_AD1889=m
CONFIG_SND_ALS300=m
CONFIG_SND_ALS4000=m
CONFIG_SND_ALI5451=m
CONFIG_SND_ASIHPI=m
CONFIG_SND_ATIIXP=m
CONFIG_SND_ATIIXP_MODEM=m
CONFIG_SND_AU8810=m
CONFIG_SND_AU8820=m
CONFIG_SND_AU8830=m
CONFIG_SND_AW2=m
CONFIG_SND_AZT3328=m
CONFIG_SND_BT87X=m
# CONFIG_SND_BT87X_OVERCLOCK is not set
CONFIG_SND_CA0106=m
CONFIG_SND_CMIPCI=m
CONFIG_SND_OXYGEN_LIB=m
CONFIG_SND_OXYGEN=m
CONFIG_SND_CS4281=m
CONFIG_SND_CS46XX=m
CONFIG_SND_CS46XX_NEW_DSP=y
CONFIG_SND_CS5530=m
CONFIG_SND_CS5535AUDIO=m
CONFIG_SND_CTXFI=m
CONFIG_SND_DARLA20=m
CONFIG_SND_GINA20=m
CONFIG_SND_LAYLA20=m
CONFIG_SND_DARLA24=m
CONFIG_SND_GINA24=m
CONFIG_SND_LAYLA24=m
CONFIG_SND_MONA=m
CONFIG_SND_MIA=m
CONFIG_SND_ECHO3G=m
CONFIG_SND_INDIGO=m
CONFIG_SND_INDIGOIO=m
CONFIG_SND_INDIGODJ=m
CONFIG_SND_INDIGOIOX=m
CONFIG_SND_INDIGODJX=m
CONFIG_SND_EMU10K1=m
CONFIG_SND_EMU10K1X=m
CONFIG_SND_ENS1370=m
CONFIG_SND_ENS1371=m
CONFIG_SND_ES1938=m
CONFIG_SND_ES1968=m
CONFIG_SND_ES1968_INPUT=y
CONFIG_SND_ES1968_RADIO=y
CONFIG_SND_FM801=m
CONFIG_SND_FM801_TEA575X_BOOL=y
CONFIG_SND_HDA_INTEL=m
CONFIG_SND_HDA_PREALLOC_SIZE=64
CONFIG_SND_HDA_HWDEP=y
CONFIG_SND_HDA_RECONFIG=y
# CONFIG_SND_HDA_INPUT_BEEP is not set
CONFIG_SND_HDA_INPUT_JACK=y
CONFIG_SND_HDA_PATCH_LOADER=y
CONFIG_SND_HDA_CODEC_REALTEK=y
CONFIG_SND_HDA_ENABLE_REALTEK_QUIRKS=y
CONFIG_SND_HDA_CODEC_ANALOG=y
CONFIG_SND_HDA_CODEC_SIGMATEL=y
CONFIG_SND_HDA_CODEC_VIA=y
CONFIG_SND_HDA_CODEC_HDMI=y
CONFIG_SND_HDA_CODEC_CIRRUS=y
CONFIG_SND_HDA_CODEC_CONEXANT=y
CONFIG_SND_HDA_CODEC_CA0110=y
CONFIG_SND_HDA_CODEC_CA0132=y
CONFIG_SND_HDA_CODEC_CMEDIA=y
CONFIG_SND_HDA_CODEC_SI3054=y
CONFIG_SND_HDA_GENERIC=y
# CONFIG_SND_HDA_POWER_SAVE is not set
CONFIG_SND_HDSP=m
CONFIG_SND_HDSPM=m
CONFIG_SND_ICE1712=m
CONFIG_SND_ICE1724=m
CONFIG_SND_INTEL8X0=m
CONFIG_SND_INTEL8X0M=m
CONFIG_SND_KORG1212=m
CONFIG_SND_LOLA=m
CONFIG_SND_LX6464ES=m
CONFIG_SND_MAESTRO3=m
CONFIG_SND_MAESTRO3_INPUT=y
CONFIG_SND_MIXART=m
CONFIG_SND_NM256=m
CONFIG_SND_PCXHR=m
CONFIG_SND_RIPTIDE=m
CONFIG_SND_RME32=m
CONFIG_SND_RME96=m
CONFIG_SND_RME9652=m
CONFIG_SND_SIS7019=m
CONFIG_SND_SONICVIBES=m
CONFIG_SND_TRIDENT=m
CONFIG_SND_VIA82XX=m
CONFIG_SND_VIA82XX_MODEM=m
CONFIG_SND_VIRTUOSO=m
CONFIG_SND_VX222=m
CONFIG_SND_YMFPCI=m
CONFIG_SND_USB=y
CONFIG_SND_USB_AUDIO=m
CONFIG_SND_USB_UA101=m
CONFIG_SND_USB_USX2Y=m
CONFIG_SND_USB_CAIAQ=m
CONFIG_SND_USB_CAIAQ_INPUT=y
CONFIG_SND_USB_US122L=m
CONFIG_SND_USB_6FIRE=m
CONFIG_SND_FIREWIRE=y
CONFIG_SND_FIREWIRE_LIB=m
CONFIG_SND_FIREWIRE_SPEAKERS=m
CONFIG_SND_ISIGHT=m
CONFIG_SND_PCMCIA=y
CONFIG_SND_VXPOCKET=m
CONFIG_SND_PDAUDIOCF=m
# CONFIG_SND_SOC is not set
# CONFIG_SOUND_PRIME is not set
CONFIG_AC97_BUS=m
CONFIG_HID_SUPPORT=y
CONFIG_HID=m
CONFIG_HIDRAW=y

#
# USB Input Devices
#
CONFIG_USB_HID=m
CONFIG_HID_PID=y
CONFIG_USB_HIDDEV=y

#
# Special HID drivers
#
CONFIG_HID_A4TECH=m
CONFIG_HID_ACRUX=m
CONFIG_HID_ACRUX_FF=y
CONFIG_HID_APPLE=m
CONFIG_HID_BELKIN=m
CONFIG_HID_CHERRY=m
CONFIG_HID_CHICONY=m
CONFIG_HID_PRODIKEYS=m
CONFIG_HID_CYPRESS=m
CONFIG_HID_DRAGONRISE=m
CONFIG_DRAGONRISE_FF=y
CONFIG_HID_EMS_FF=m
CONFIG_HID_EZKEY=m
# CONFIG_HID_HOLTEK is not set
CONFIG_HID_KEYTOUCH=m
CONFIG_HID_KYE=m
CONFIG_HID_UCLOGIC=m
CONFIG_HID_WALTOP=m
CONFIG_HID_GYRATION=m
CONFIG_HID_TWINHAN=m
CONFIG_HID_KENSINGTON=m
CONFIG_HID_LCPOWER=m
CONFIG_HID_LOGITECH=m
CONFIG_HID_LOGITECH_DJ=m
CONFIG_LOGITECH_FF=y
CONFIG_LOGIRUMBLEPAD2_FF=y
CONFIG_LOGIG940_FF=y
CONFIG_LOGIWHEELS_FF=y
CONFIG_HID_MICROSOFT=m
CONFIG_HID_MONTEREY=m
CONFIG_HID_MULTITOUCH=m
CONFIG_HID_NTRIG=m
CONFIG_HID_ORTEK=m
CONFIG_HID_PANTHERLORD=m
CONFIG_PANTHERLORD_FF=y
CONFIG_HID_PETALYNX=m
CONFIG_HID_PICOLCD=m
CONFIG_HID_PICOLCD_FB=y
CONFIG_HID_PICOLCD_BACKLIGHT=y
CONFIG_HID_PICOLCD_LCD=y
CONFIG_HID_PICOLCD_LEDS=y
# CONFIG_HID_PRIMAX is not set
CONFIG_HID_ROCCAT=m
CONFIG_HID_ROCCAT_COMMON=m
# CONFIG_HID_ROCCAT_ARVO is not set
# CONFIG_HID_ROCCAT_ISKU is not set
# CONFIG_HID_ROCCAT_KONE is not set
# CONFIG_HID_ROCCAT_KONEPLUS is not set
# CONFIG_HID_ROCCAT_KOVAPLUS is not set
# CONFIG_HID_ROCCAT_PYRA is not set
CONFIG_HID_SAMSUNG=m
CONFIG_HID_SONY=m
# CONFIG_HID_SPEEDLINK is not set
CONFIG_HID_SUNPLUS=m
CONFIG_HID_GREENASIA=m
CONFIG_GREENASIA_FF=y
# CONFIG_HID_HYPERV_MOUSE is not set
CONFIG_HID_SMARTJOYPLUS=m
CONFIG_SMARTJOYPLUS_FF=y
CONFIG_HID_TOPSEED=m
CONFIG_HID_THRUSTMASTER=m
CONFIG_THRUSTMASTER_FF=y
CONFIG_HID_ZEROPLUS=m
CONFIG_ZEROPLUS_FF=y
CONFIG_HID_ZYDACRON=m
CONFIG_USB_SUPPORT=y
CONFIG_USB_COMMON=y
CONFIG_USB_ARCH_HAS_HCD=y
CONFIG_USB_ARCH_HAS_OHCI=y
CONFIG_USB_ARCH_HAS_EHCI=y
CONFIG_USB_ARCH_HAS_XHCI=y
CONFIG_USB=y
# CONFIG_USB_DEBUG is not set
CONFIG_USB_ANNOUNCE_NEW_DEVICES=y

#
# Miscellaneous USB options
#
# CONFIG_USB_DEVICEFS is not set
CONFIG_USB_DEVICE_CLASS=y
# CONFIG_USB_DYNAMIC_MINORS is not set
CONFIG_USB_SUSPEND=y
# CONFIG_USB_OTG is not set
CONFIG_USB_MON=y
CONFIG_USB_WUSB=m
CONFIG_USB_WUSB_CBAF=m
# CONFIG_USB_WUSB_CBAF_DEBUG is not set

#
# USB Host Controller Drivers
#
CONFIG_USB_C67X00_HCD=y
CONFIG_USB_XHCI_HCD=y
# CONFIG_USB_XHCI_HCD_DEBUGGING is not set
CONFIG_USB_EHCI_HCD=y
CONFIG_USB_EHCI_ROOT_HUB_TT=y
CONFIG_USB_EHCI_TT_NEWSCHED=y
# CONFIG_USB_EHCI_MV is not set
CONFIG_USB_OXU210HP_HCD=y
CONFIG_USB_ISP116X_HCD=y
CONFIG_USB_ISP1760_HCD=y
CONFIG_USB_ISP1362_HCD=y
CONFIG_USB_OHCI_HCD=y
# CONFIG_USB_OHCI_BIG_ENDIAN_DESC is not set
# CONFIG_USB_OHCI_BIG_ENDIAN_MMIO is not set
CONFIG_USB_OHCI_LITTLE_ENDIAN=y
CONFIG_USB_UHCI_HCD=y
CONFIG_USB_U132_HCD=m
CONFIG_USB_SL811_HCD=y
# CONFIG_USB_SL811_HCD_ISO is not set
CONFIG_USB_SL811_CS=m
CONFIG_USB_R8A66597_HCD=y
CONFIG_USB_WHCI_HCD=m
CONFIG_USB_HWA_HCD=m

#
# USB Device Class drivers
#
CONFIG_USB_ACM=m
CONFIG_USB_PRINTER=m
CONFIG_USB_WDM=m
CONFIG_USB_TMC=m

#
# NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may
#

#
# also be needed; see USB_STORAGE Help for more info
#
CONFIG_USB_STORAGE=y
# CONFIG_USB_STORAGE_DEBUG is not set
CONFIG_USB_STORAGE_REALTEK=m
CONFIG_REALTEK_AUTOPM=y
CONFIG_USB_STORAGE_DATAFAB=y
CONFIG_USB_STORAGE_FREECOM=y
CONFIG_USB_STORAGE_ISD200=y
CONFIG_USB_STORAGE_USBAT=y
CONFIG_USB_STORAGE_SDDR09=y
CONFIG_USB_STORAGE_SDDR55=y
CONFIG_USB_STORAGE_JUMPSHOT=y
CONFIG_USB_STORAGE_ALAUDA=y
CONFIG_USB_STORAGE_ONETOUCH=y
CONFIG_USB_STORAGE_KARMA=y
CONFIG_USB_STORAGE_CYPRESS_ATACB=y
CONFIG_USB_STORAGE_ENE_UB6250=m
# CONFIG_USB_UAS is not set
# CONFIG_USB_LIBUSUAL is not set

#
# USB Imaging devices
#
CONFIG_USB_MDC800=m
CONFIG_USB_MICROTEK=m

#
# USB port drivers
#
CONFIG_USB_USS720=m
CONFIG_USB_SERIAL=m
CONFIG_USB_EZUSB=y
CONFIG_USB_SERIAL_GENERIC=y
CONFIG_USB_SERIAL_AIRCABLE=m
CONFIG_USB_SERIAL_ARK3116=m
CONFIG_USB_SERIAL_BELKIN=m
CONFIG_USB_SERIAL_CH341=m
CONFIG_USB_SERIAL_WHITEHEAT=m
CONFIG_USB_SERIAL_DIGI_ACCELEPORT=m
CONFIG_USB_SERIAL_CP210X=m
CONFIG_USB_SERIAL_CYPRESS_M8=m
CONFIG_USB_SERIAL_EMPEG=m
CONFIG_USB_SERIAL_FTDI_SIO=m
CONFIG_USB_SERIAL_FUNSOFT=m
CONFIG_USB_SERIAL_VISOR=m
CONFIG_USB_SERIAL_IPAQ=m
CONFIG_USB_SERIAL_IR=m
CONFIG_USB_SERIAL_EDGEPORT=m
CONFIG_USB_SERIAL_EDGEPORT_TI=m
CONFIG_USB_SERIAL_GARMIN=m
CONFIG_USB_SERIAL_IPW=m
CONFIG_USB_SERIAL_IUU=m
CONFIG_USB_SERIAL_KEYSPAN_PDA=m
CONFIG_USB_SERIAL_KEYSPAN=m
CONFIG_USB_SERIAL_KLSI=m
CONFIG_USB_SERIAL_KOBIL_SCT=m
CONFIG_USB_SERIAL_MCT_U232=m
CONFIG_USB_SERIAL_MOS7720=m
CONFIG_USB_SERIAL_MOS7715_PARPORT=y
CONFIG_USB_SERIAL_MOS7840=m
CONFIG_USB_SERIAL_MOTOROLA=m
CONFIG_USB_SERIAL_NAVMAN=m
CONFIG_USB_SERIAL_PL2303=m
CONFIG_USB_SERIAL_OTI6858=m
CONFIG_USB_SERIAL_QCAUX=m
CONFIG_USB_SERIAL_QUALCOMM=m
CONFIG_USB_SERIAL_SPCP8X5=m
CONFIG_USB_SERIAL_HP4X=m
CONFIG_USB_SERIAL_SAFE=m
CONFIG_USB_SERIAL_SAFE_PADDED=y
CONFIG_USB_SERIAL_SIEMENS_MPI=m
CONFIG_USB_SERIAL_SIERRAWIRELESS=m
CONFIG_USB_SERIAL_SYMBOL=m
CONFIG_USB_SERIAL_TI=m
CONFIG_USB_SERIAL_CYBERJACK=m
CONFIG_USB_SERIAL_XIRCOM=m
CONFIG_USB_SERIAL_WWAN=m
CONFIG_USB_SERIAL_OPTION=m
CONFIG_USB_SERIAL_OMNINET=m
CONFIG_USB_SERIAL_OPTICON=m
CONFIG_USB_SERIAL_VIVOPAY_SERIAL=m
CONFIG_USB_SERIAL_ZIO=m
CONFIG_USB_SERIAL_SSU100=m
CONFIG_USB_SERIAL_DEBUG=m

#
# USB Miscellaneous drivers
#
CONFIG_USB_EMI62=m
CONFIG_USB_EMI26=m
CONFIG_USB_ADUTUX=m
CONFIG_USB_SEVSEG=m
CONFIG_USB_RIO500=m
CONFIG_USB_LEGOTOWER=m
CONFIG_USB_LCD=m
CONFIG_USB_LED=m
CONFIG_USB_CYPRESS_CY7C63=m
CONFIG_USB_CYTHERM=m
CONFIG_USB_IDMOUSE=m
CONFIG_USB_FTDI_ELAN=m
CONFIG_USB_APPLEDISPLAY=m
CONFIG_USB_SISUSBVGA=m
CONFIG_USB_SISUSBVGA_CON=y
CONFIG_USB_LD=m
CONFIG_USB_TRANCEVIBRATOR=m
CONFIG_USB_IOWARRIOR=m
CONFIG_USB_TEST=m
CONFIG_USB_ISIGHTFW=m
CONFIG_USB_YUREX=m
CONFIG_USB_ATM=m
CONFIG_USB_SPEEDTOUCH=m
CONFIG_USB_CXACRU=m
CONFIG_USB_UEAGLEATM=m
CONFIG_USB_XUSBATM=m
# CONFIG_USB_GADGET is not set

#
# OTG and related infrastructure
#
CONFIG_USB_OTG_UTILS=y
CONFIG_USB_GPIO_VBUS=m
CONFIG_NOP_USB_XCEIV=m
CONFIG_UWB=m
CONFIG_UWB_HWA=m
CONFIG_UWB_WHCI=m
CONFIG_UWB_I1480U=m
CONFIG_MMC=m
# CONFIG_MMC_DEBUG is not set
# CONFIG_MMC_UNSAFE_RESUME is not set
# CONFIG_MMC_CLKGATE is not set

#
# MMC/SD/SDIO Card Drivers
#
CONFIG_MMC_BLOCK=m
CONFIG_MMC_BLOCK_MINORS=8
CONFIG_MMC_BLOCK_BOUNCE=y
CONFIG_SDIO_UART=m
# CONFIG_MMC_TEST is not set

#
# MMC/SD/SDIO Host Controller Drivers
#
CONFIG_MMC_SDHCI=m
CONFIG_MMC_SDHCI_PCI=m
CONFIG_MMC_RICOH_MMC=y
CONFIG_MMC_SDHCI_PLTFM=m
CONFIG_MMC_WBSD=m
CONFIG_MMC_TIFM_SD=m
CONFIG_MMC_SDRICOH_CS=m
CONFIG_MMC_CB710=m
CONFIG_MMC_VIA_SDMMC=m
CONFIG_MMC_VUB300=m
CONFIG_MMC_USHC=m
CONFIG_MEMSTICK=m
# CONFIG_MEMSTICK_DEBUG is not set

#
# MemoryStick drivers
#
# CONFIG_MEMSTICK_UNSAFE_RESUME is not set
CONFIG_MSPRO_BLOCK=m

#
# MemoryStick Host Controller Drivers
#
CONFIG_MEMSTICK_TIFM_MS=m
CONFIG_MEMSTICK_JMICRON_38X=m
CONFIG_MEMSTICK_R592=m
CONFIG_NEW_LEDS=y
CONFIG_LEDS_CLASS=y

#
# LED drivers
#
CONFIG_LEDS_LM3530=m
CONFIG_LEDS_NET48XX=m
# CONFIG_LEDS_NET5501 is not set
CONFIG_LEDS_WRAP=m
CONFIG_LEDS_PCA9532=m
# CONFIG_LEDS_PCA9532_GPIO is not set
CONFIG_LEDS_GPIO=m
CONFIG_LEDS_LP3944=m
CONFIG_LEDS_LP5521=m
CONFIG_LEDS_LP5523=m
CONFIG_LEDS_CLEVO_MAIL=m
CONFIG_LEDS_PCA955X=m
CONFIG_LEDS_REGULATOR=m
CONFIG_LEDS_BD2802=m
CONFIG_LEDS_INTEL_SS4200=m
CONFIG_LEDS_LT3593=m
CONFIG_LEDS_DELL_NETBOOKS=m
# CONFIG_LEDS_TCA6507 is not set
# CONFIG_LEDS_OT200 is not set
CONFIG_LEDS_TRIGGERS=y

#
# LED Triggers
#
CONFIG_LEDS_TRIGGER_TIMER=m
CONFIG_LEDS_TRIGGER_HEARTBEAT=m
CONFIG_LEDS_TRIGGER_BACKLIGHT=m
CONFIG_LEDS_TRIGGER_GPIO=m
CONFIG_LEDS_TRIGGER_DEFAULT_ON=m

#
# iptables trigger is under Netfilter config (LED target)
#
CONFIG_ACCESSIBILITY=y
CONFIG_A11Y_BRAILLE_CONSOLE=y
CONFIG_INFINIBAND=m
CONFIG_INFINIBAND_USER_MAD=m
CONFIG_INFINIBAND_USER_ACCESS=m
CONFIG_INFINIBAND_USER_MEM=y
CONFIG_INFINIBAND_ADDR_TRANS=y
CONFIG_INFINIBAND_MTHCA=m
CONFIG_INFINIBAND_MTHCA_DEBUG=y
CONFIG_INFINIBAND_AMSO1100=m
# CONFIG_INFINIBAND_AMSO1100_DEBUG is not set
# CONFIG_INFINIBAND_CXGB3 is not set
CONFIG_INFINIBAND_CXGB4=m
CONFIG_MLX4_INFINIBAND=m
CONFIG_INFINIBAND_NES=m
# CONFIG_INFINIBAND_NES_DEBUG is not set
CONFIG_INFINIBAND_IPOIB=m
# CONFIG_INFINIBAND_IPOIB_CM is not set
CONFIG_INFINIBAND_IPOIB_DEBUG=y
# CONFIG_INFINIBAND_IPOIB_DEBUG_DATA is not set
CONFIG_INFINIBAND_SRP=m
# CONFIG_INFINIBAND_SRPT is not set
CONFIG_INFINIBAND_ISER=m
CONFIG_EDAC=y

#
# Reporting subsystems
#
# CONFIG_EDAC_DEBUG is not set
CONFIG_EDAC_DECODE_MCE=y
CONFIG_EDAC_MCE_INJ=m
# CONFIG_EDAC_MM_EDAC is not set
CONFIG_RTC_LIB=y
CONFIG_RTC_CLASS=y
CONFIG_RTC_HCTOSYS=y
CONFIG_RTC_HCTOSYS_DEVICE="rtc0"
# CONFIG_RTC_DEBUG is not set

#
# RTC interfaces
#
CONFIG_RTC_INTF_SYSFS=y
CONFIG_RTC_INTF_PROC=y
CONFIG_RTC_INTF_DEV=y
CONFIG_RTC_INTF_DEV_UIE_EMUL=y
CONFIG_RTC_DRV_TEST=m

#
# I2C RTC drivers
#
CONFIG_RTC_DRV_DS1307=m
CONFIG_RTC_DRV_DS1374=m
CONFIG_RTC_DRV_DS1672=m
CONFIG_RTC_DRV_DS3232=m
CONFIG_RTC_DRV_MAX6900=m
CONFIG_RTC_DRV_RS5C372=m
CONFIG_RTC_DRV_ISL1208=m
CONFIG_RTC_DRV_ISL12022=m
CONFIG_RTC_DRV_X1205=m
CONFIG_RTC_DRV_PCF8563=m
CONFIG_RTC_DRV_PCF8583=m
CONFIG_RTC_DRV_M41T80=m
CONFIG_RTC_DRV_M41T80_WDT=y
CONFIG_RTC_DRV_BQ32K=m
CONFIG_RTC_DRV_S35390A=m
CONFIG_RTC_DRV_FM3130=m
CONFIG_RTC_DRV_RX8581=m
CONFIG_RTC_DRV_RX8025=m
CONFIG_RTC_DRV_EM3027=m
CONFIG_RTC_DRV_RV3029C2=m

#
# SPI RTC drivers
#

#
# Platform RTC drivers
#
CONFIG_RTC_DRV_CMOS=y
CONFIG_RTC_DRV_DS1286=m
CONFIG_RTC_DRV_DS1511=m
CONFIG_RTC_DRV_DS1553=m
CONFIG_RTC_DRV_DS1742=m
CONFIG_RTC_DRV_STK17TA8=m
CONFIG_RTC_DRV_M48T86=m
CONFIG_RTC_DRV_M48T35=m
CONFIG_RTC_DRV_M48T59=m
CONFIG_RTC_DRV_MSM6242=m
CONFIG_RTC_DRV_BQ4802=m
CONFIG_RTC_DRV_RP5C01=m
CONFIG_RTC_DRV_V3020=m
CONFIG_RTC_DRV_PCF50633=m

#
# on-CPU RTC drivers
#
CONFIG_DMADEVICES=y
# CONFIG_DMADEVICES_DEBUG is not set

#
# DMA Devices
#
CONFIG_INTEL_MID_DMAC=m
CONFIG_INTEL_IOATDMA=m
CONFIG_TIMB_DMA=m
CONFIG_PCH_DMA=m
CONFIG_DMA_ENGINE=y

#
# DMA Clients
#
CONFIG_NET_DMA=y
# CONFIG_ASYNC_TX_DMA is not set
CONFIG_DMATEST=m
CONFIG_DCA=m
CONFIG_AUXDISPLAY=y
# CONFIG_KS0108 is not set
CONFIG_UIO=m
CONFIG_UIO_CIF=m
CONFIG_UIO_PDRV=m
CONFIG_UIO_PDRV_GENIRQ=m
CONFIG_UIO_AEC=m
CONFIG_UIO_SERCOS3=m
CONFIG_UIO_PCI_GENERIC=m
CONFIG_UIO_NETX=m
CONFIG_VIRTIO=m
CONFIG_VIRTIO_RING=m

#
# Virtio drivers
#
CONFIG_VIRTIO_PCI=m
CONFIG_VIRTIO_BALLOON=m
# CONFIG_VIRTIO_MMIO is not set

#
# Microsoft Hyper-V guest support
#
CONFIG_HYPERV=m
CONFIG_HYPERV_UTILS=m
CONFIG_STAGING=y
# CONFIG_ET131X is not set
# CONFIG_SLICOSS is not set
CONFIG_USBIP_CORE=m
CONFIG_USBIP_VHCI_HCD=m
CONFIG_USBIP_HOST=m
# CONFIG_USBIP_DEBUG is not set
# CONFIG_W35UND is not set
# CONFIG_PRISM2_USB is not set
# CONFIG_ECHO is not set
# CONFIG_COMEDI is not set
CONFIG_ASUS_OLED=m
# CONFIG_PANEL is not set
CONFIG_R8187SE=m
CONFIG_RTL8192U=m
# CONFIG_RTLLIB is not set
CONFIG_R8712U=m
# CONFIG_R8712_AP is not set
# CONFIG_RTS_PSTOR is not set
# CONFIG_RTS5139 is not set
# CONFIG_TRANZPORT is not set
# CONFIG_POHMELFS is not set
CONFIG_IDE_PHISON=m
CONFIG_LINE6_USB=m
# CONFIG_LINE6_USB_DEBUG is not set
# CONFIG_LINE6_USB_DUMP_CTRL is not set
# CONFIG_LINE6_USB_DUMP_MIDI is not set
# CONFIG_LINE6_USB_DUMP_PCM is not set
# CONFIG_LINE6_USB_RAW is not set
# CONFIG_LINE6_USB_IMPULSE_RESPONSE is not set
CONFIG_DRM_NOUVEAU=m
CONFIG_DRM_NOUVEAU_BACKLIGHT=y
CONFIG_DRM_NOUVEAU_DEBUG=y

#
# I2C encoder or helper chips
#
CONFIG_DRM_I2C_CH7006=m
CONFIG_DRM_I2C_SIL164=m
CONFIG_USB_SERIAL_QUATECH2=m
# CONFIG_USB_SERIAL_QUATECH_USB2 is not set
CONFIG_VT6655=m
CONFIG_VT6656=m
CONFIG_HYPERV_STORAGE=m
# CONFIG_VME_BUS is not set
CONFIG_DX_SEP=m
# CONFIG_IIO is not set
CONFIG_XVMALLOC=y
CONFIG_ZRAM=m
# CONFIG_ZRAM_DEBUG is not set
CONFIG_WLAGS49_H2=m
CONFIG_WLAGS49_H25=m
CONFIG_FB_SM7XX=m
CONFIG_CRYSTALHD=m
# CONFIG_CXT1E1 is not set
CONFIG_FB_XGI=m
CONFIG_ACPI_QUICKSTART=m
CONFIG_SBE_2T3E3=m
CONFIG_USB_ENESTORAGE=m
CONFIG_BCM_WIMAX=m
# CONFIG_FT1000 is not set

#
# Speakup console speech
#
CONFIG_SPEAKUP=y
CONFIG_SPEAKUP_SYNTH_ACNTSA=y
CONFIG_SPEAKUP_SYNTH_ACNTPC=y
CONFIG_SPEAKUP_SYNTH_APOLLO=y
CONFIG_SPEAKUP_SYNTH_AUDPTR=y
CONFIG_SPEAKUP_SYNTH_BNS=y
CONFIG_SPEAKUP_SYNTH_DECTLK=y
CONFIG_SPEAKUP_SYNTH_DECEXT=y
CONFIG_SPEAKUP_SYNTH_DECPC=m
CONFIG_SPEAKUP_SYNTH_DTLK=y
CONFIG_SPEAKUP_SYNTH_KEYPC=y
CONFIG_SPEAKUP_SYNTH_LTLK=y
CONFIG_SPEAKUP_SYNTH_SOFT=y
CONFIG_SPEAKUP_SYNTH_SPKOUT=y
CONFIG_SPEAKUP_SYNTH_TXPRT=y
CONFIG_SPEAKUP_SYNTH_DUMMY=y
CONFIG_TOUCHSCREEN_CLEARPAD_TM1217=m
CONFIG_TOUCHSCREEN_SYNAPTICS_I2C_RMI4=m
# CONFIG_INTEL_MEI is not set
# CONFIG_STAGING_MEDIA is not set

#
# Android
#
# CONFIG_ANDROID is not set
CONFIG_X86_PLATFORM_DEVICES=y
CONFIG_ACER_WMI=m
CONFIG_ACERHDF=m
CONFIG_ASUS_LAPTOP=m
CONFIG_DELL_LAPTOP=m
CONFIG_DELL_WMI=m
CONFIG_DELL_WMI_AIO=m
CONFIG_FUJITSU_LAPTOP=m
# CONFIG_FUJITSU_LAPTOP_DEBUG is not set
CONFIG_TC1100_WMI=m
CONFIG_HP_ACCEL=m
CONFIG_HP_WMI=m
CONFIG_MSI_LAPTOP=m
CONFIG_PANASONIC_LAPTOP=m
CONFIG_COMPAL_LAPTOP=m
CONFIG_SONY_LAPTOP=m
CONFIG_SONYPI_COMPAT=y
CONFIG_IDEAPAD_LAPTOP=m
CONFIG_THINKPAD_ACPI=m
CONFIG_THINKPAD_ACPI_ALSA_SUPPORT=y
# CONFIG_THINKPAD_ACPI_DEBUGFACILITIES is not set
# CONFIG_THINKPAD_ACPI_DEBUG is not set
# CONFIG_THINKPAD_ACPI_UNSAFE_LEDS is not set
CONFIG_THINKPAD_ACPI_VIDEO=y
CONFIG_THINKPAD_ACPI_HOTKEY_POLL=y
CONFIG_SENSORS_HDAPS=m
CONFIG_INTEL_MENLOW=m
CONFIG_EEEPC_LAPTOP=m
CONFIG_ASUS_WMI=m
CONFIG_ASUS_NB_WMI=m
CONFIG_EEEPC_WMI=m
CONFIG_ACPI_WMI=m
CONFIG_MSI_WMI=m
# CONFIG_ACPI_ASUS is not set
CONFIG_TOPSTAR_LAPTOP=m
CONFIG_ACPI_TOSHIBA=m
CONFIG_TOSHIBA_BT_RFKILL=m
CONFIG_ACPI_CMPC=m
CONFIG_INTEL_IPS=m
CONFIG_IBM_RTL=m
CONFIG_XO15_EBOOK=m
CONFIG_SAMSUNG_LAPTOP=m
CONFIG_MXM_WMI=m
CONFIG_INTEL_OAKTRAIL=m
# CONFIG_SAMSUNG_Q10 is not set

#
# Hardware Spinlock drivers
#
CONFIG_CLKSRC_I8253=y
CONFIG_CLKEVT_I8253=y
CONFIG_I8253_LOCK=y
CONFIG_CLKBLD_I8253=y
CONFIG_IOMMU_SUPPORT=y
# CONFIG_INTEL_IOMMU is not set
# CONFIG_VIRT_DRIVERS is not set
# CONFIG_PM_DEVFREQ is not set

#
# Firmware Drivers
#
CONFIG_EDD=m
CONFIG_EDD_OFF=y
CONFIG_FIRMWARE_MEMMAP=y
CONFIG_EFI_VARS=m
CONFIG_DELL_RBU=m
CONFIG_DCDBAS=m
CONFIG_DMIID=y
CONFIG_DMI_SYSFS=m
CONFIG_ISCSI_IBFT_FIND=y
CONFIG_ISCSI_IBFT=m
# CONFIG_GOOGLE_FIRMWARE is not set

#
# File systems
#
CONFIG_EXT2_FS=y
CONFIG_EXT2_FS_XATTR=y
CONFIG_EXT2_FS_POSIX_ACL=y
CONFIG_EXT2_FS_SECURITY=y
# CONFIG_EXT2_FS_XIP is not set
CONFIG_EXT3_FS=y
CONFIG_EXT3_DEFAULTS_TO_ORDERED=y
CONFIG_EXT3_FS_XATTR=y
CONFIG_EXT3_FS_POSIX_ACL=y
CONFIG_EXT3_FS_SECURITY=y
CONFIG_EXT4_FS=y
CONFIG_EXT4_FS_XATTR=y
CONFIG_EXT4_FS_POSIX_ACL=y
CONFIG_EXT4_FS_SECURITY=y
# CONFIG_EXT4_DEBUG is not set
CONFIG_JBD=y
# CONFIG_JBD_DEBUG is not set
CONFIG_JBD2=y
# CONFIG_JBD2_DEBUG is not set
CONFIG_FS_MBCACHE=y
CONFIG_REISERFS_FS=y
# CONFIG_REISERFS_CHECK is not set
# CONFIG_REISERFS_PROC_INFO is not set
CONFIG_REISERFS_FS_XATTR=y
CONFIG_REISERFS_FS_POSIX_ACL=y
CONFIG_REISERFS_FS_SECURITY=y
CONFIG_JFS_FS=y
CONFIG_JFS_POSIX_ACL=y
CONFIG_JFS_SECURITY=y
# CONFIG_JFS_DEBUG is not set
# CONFIG_JFS_STATISTICS is not set
CONFIG_XFS_FS=y
CONFIG_XFS_QUOTA=y
CONFIG_XFS_POSIX_ACL=y
# CONFIG_XFS_RT is not set
# CONFIG_XFS_DEBUG is not set
CONFIG_GFS2_FS=m
CONFIG_GFS2_FS_LOCKING_DLM=y
CONFIG_OCFS2_FS=y
CONFIG_OCFS2_FS_O2CB=y
CONFIG_OCFS2_FS_USERSPACE_CLUSTER=m
# CONFIG_OCFS2_FS_STATS is not set
CONFIG_OCFS2_DEBUG_MASKLOG=y
# CONFIG_OCFS2_DEBUG_FS is not set
CONFIG_BTRFS_FS=y
CONFIG_BTRFS_FS_POSIX_ACL=y
# CONFIG_BTRFS_FS_CHECK_INTEGRITY is not set
CONFIG_NILFS2_FS=m
CONFIG_FS_POSIX_ACL=y
CONFIG_EXPORTFS=y
CONFIG_FILE_LOCKING=y
CONFIG_FSNOTIFY=y
CONFIG_DNOTIFY=y
CONFIG_INOTIFY_USER=y
CONFIG_FANOTIFY=y
# CONFIG_FANOTIFY_ACCESS_PERMISSIONS is not set
CONFIG_QUOTA=y
CONFIG_QUOTA_NETLINK_INTERFACE=y
# CONFIG_PRINT_QUOTA_WARNING is not set
# CONFIG_QUOTA_DEBUG is not set
CONFIG_QUOTA_TREE=y
CONFIG_QFMT_V1=m
CONFIG_QFMT_V2=y
CONFIG_QUOTACTL=y
CONFIG_AUTOFS4_FS=m
CONFIG_FUSE_FS=m
CONFIG_CUSE=m
CONFIG_GENERIC_ACL=y

#
# Caches
#
CONFIG_FSCACHE=m
# CONFIG_FSCACHE_STATS is not set
# CONFIG_FSCACHE_HISTOGRAM is not set
# CONFIG_FSCACHE_DEBUG is not set
# CONFIG_FSCACHE_OBJECT_LIST is not set
CONFIG_CACHEFILES=m
# CONFIG_CACHEFILES_DEBUG is not set
# CONFIG_CACHEFILES_HISTOGRAM is not set

#
# CD-ROM/DVD Filesystems
#
CONFIG_ISO9660_FS=y
CONFIG_JOLIET=y
CONFIG_ZISOFS=y
CONFIG_UDF_FS=y
CONFIG_UDF_NLS=y

#
# DOS/FAT/NT Filesystems
#
CONFIG_FAT_FS=y
CONFIG_MSDOS_FS=y
CONFIG_VFAT_FS=y
CONFIG_FAT_DEFAULT_CODEPAGE=437
CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1"
CONFIG_NTFS_FS=y
# CONFIG_NTFS_DEBUG is not set
CONFIG_NTFS_RW=y

#
# Pseudo filesystems
#
CONFIG_PROC_FS=y
CONFIG_PROC_KCORE=y
CONFIG_PROC_SYSCTL=y
CONFIG_PROC_PAGE_MONITOR=y
CONFIG_SYSFS=y
CONFIG_TMPFS=y
CONFIG_TMPFS_POSIX_ACL=y
CONFIG_TMPFS_XATTR=y
# CONFIG_HUGETLBFS is not set
# CONFIG_HUGETLB_PAGE is not set
CONFIG_CONFIGFS_FS=y
CONFIG_MISC_FILESYSTEMS=y
CONFIG_ADFS_FS=m
# CONFIG_ADFS_FS_RW is not set
CONFIG_AFFS_FS=m
CONFIG_ECRYPT_FS=m
CONFIG_HFS_FS=m
CONFIG_HFSPLUS_FS=m
CONFIG_BEFS_FS=m
# CONFIG_BEFS_DEBUG is not set
CONFIG_BFS_FS=m
CONFIG_EFS_FS=m
CONFIG_JFFS2_FS=m
CONFIG_JFFS2_FS_DEBUG=0
CONFIG_JFFS2_FS_WRITEBUFFER=y
# CONFIG_JFFS2_FS_WBUF_VERIFY is not set
# CONFIG_JFFS2_SUMMARY is not set
# CONFIG_JFFS2_FS_XATTR is not set
# CONFIG_JFFS2_COMPRESSION_OPTIONS is not set
CONFIG_JFFS2_ZLIB=y
# CONFIG_JFFS2_LZO is not set
CONFIG_JFFS2_RTIME=y
# CONFIG_JFFS2_RUBIN is not set
CONFIG_UBIFS_FS=m
# CONFIG_UBIFS_FS_XATTR is not set
CONFIG_UBIFS_FS_ADVANCED_COMPR=y
CONFIG_UBIFS_FS_LZO=y
CONFIG_UBIFS_FS_ZLIB=y
# CONFIG_UBIFS_FS_DEBUG is not set
CONFIG_LOGFS=m
CONFIG_CRAMFS=m
CONFIG_SQUASHFS=m
CONFIG_SQUASHFS_XATTR=y
CONFIG_SQUASHFS_ZLIB=y
CONFIG_SQUASHFS_LZO=y
CONFIG_SQUASHFS_XZ=y
# CONFIG_SQUASHFS_4K_DEVBLK_SIZE is not set
CONFIG_SQUASHFS_EMBEDDED=y
CONFIG_SQUASHFS_FRAGMENT_CACHE_SIZE=3
CONFIG_VXFS_FS=m
CONFIG_MINIX_FS=m
CONFIG_OMFS_FS=m
CONFIG_HPFS_FS=m
CONFIG_QNX4FS_FS=m
CONFIG_ROMFS_FS=y
CONFIG_ROMFS_BACKED_BY_BLOCK=y
CONFIG_ROMFS_ON_BLOCK=y
CONFIG_PSTORE=y
CONFIG_SYSV_FS=m
CONFIG_UFS_FS=m
# CONFIG_UFS_FS_WRITE is not set
# CONFIG_UFS_DEBUG is not set
CONFIG_EXOFS_FS=m
# CONFIG_EXOFS_DEBUG is not set
CONFIG_ORE=m
CONFIG_NETWORK_FILESYSTEMS=y
CONFIG_NFS_FS=y
CONFIG_NFS_V3=y
# CONFIG_NFS_V3_ACL is not set
CONFIG_NFS_V4=y
# CONFIG_NFS_V4_1 is not set
# CONFIG_NFS_USE_LEGACY_DNS is not set
CONFIG_NFS_USE_KERNEL_DNS=y
# CONFIG_NFS_USE_NEW_IDMAPPER is not set
CONFIG_NFSD=y
CONFIG_NFSD_V3=y
# CONFIG_NFSD_V3_ACL is not set
CONFIG_NFSD_V4=y
# CONFIG_NFSD_FAULT_INJECTION is not set
CONFIG_LOCKD=y
CONFIG_LOCKD_V4=y
CONFIG_NFS_COMMON=y
CONFIG_SUNRPC=y
CONFIG_SUNRPC_GSS=y
CONFIG_SUNRPC_XPRT_RDMA=m
CONFIG_RPCSEC_GSS_KRB5=m
CONFIG_CEPH_FS=m
CONFIG_CIFS=m
# CONFIG_CIFS_STATS is not set
CONFIG_CIFS_WEAK_PW_HASH=y
# CONFIG_CIFS_UPCALL is not set
# CONFIG_CIFS_XATTR is not set
# CONFIG_CIFS_DEBUG2 is not set
# CONFIG_CIFS_DFS_UPCALL is not set
CONFIG_CIFS_FSCACHE=y
CONFIG_NCP_FS=m
CONFIG_NCPFS_PACKET_SIGNING=y
CONFIG_NCPFS_IOCTL_LOCKING=y
CONFIG_NCPFS_STRONG=y
CONFIG_NCPFS_NFS_NS=y
CONFIG_NCPFS_OS2_NS=y
CONFIG_NCPFS_SMALLDOS=y
CONFIG_NCPFS_NLS=y
CONFIG_NCPFS_EXTRAS=y
CONFIG_CODA_FS=m
CONFIG_AFS_FS=m
# CONFIG_AFS_DEBUG is not set
# CONFIG_AFS_FSCACHE is not set
CONFIG_9P_FS=m
# CONFIG_9P_FSCACHE is not set
# CONFIG_9P_FS_POSIX_ACL is not set
CONFIG_NLS=y
CONFIG_NLS_DEFAULT="utf8"
CONFIG_NLS_CODEPAGE_437=y
CONFIG_NLS_CODEPAGE_737=m
CONFIG_NLS_CODEPAGE_775=m
CONFIG_NLS_CODEPAGE_850=m
CONFIG_NLS_CODEPAGE_852=m
CONFIG_NLS_CODEPAGE_855=m
CONFIG_NLS_CODEPAGE_857=m
CONFIG_NLS_CODEPAGE_860=m
CONFIG_NLS_CODEPAGE_861=m
CONFIG_NLS_CODEPAGE_862=m
CONFIG_NLS_CODEPAGE_863=m
CONFIG_NLS_CODEPAGE_864=m
CONFIG_NLS_CODEPAGE_865=m
CONFIG_NLS_CODEPAGE_866=m
CONFIG_NLS_CODEPAGE_869=m
CONFIG_NLS_CODEPAGE_936=m
CONFIG_NLS_CODEPAGE_950=m
CONFIG_NLS_CODEPAGE_932=m
CONFIG_NLS_CODEPAGE_949=m
CONFIG_NLS_CODEPAGE_874=m
CONFIG_NLS_ISO8859_8=m
CONFIG_NLS_CODEPAGE_1250=m
CONFIG_NLS_CODEPAGE_1251=m
CONFIG_NLS_ASCII=m
CONFIG_NLS_ISO8859_1=y
CONFIG_NLS_ISO8859_2=m
CONFIG_NLS_ISO8859_3=m
CONFIG_NLS_ISO8859_4=m
CONFIG_NLS_ISO8859_5=m
CONFIG_NLS_ISO8859_6=m
CONFIG_NLS_ISO8859_7=m
CONFIG_NLS_ISO8859_9=m
CONFIG_NLS_ISO8859_13=m
CONFIG_NLS_ISO8859_14=m
CONFIG_NLS_ISO8859_15=m
CONFIG_NLS_KOI8_R=m
CONFIG_NLS_KOI8_U=m
CONFIG_NLS_UTF8=y
CONFIG_DLM=m
# CONFIG_DLM_DEBUG is not set

#
# Kernel hacking
#
CONFIG_TRACE_IRQFLAGS_SUPPORT=y
CONFIG_PRINTK_TIME=y
CONFIG_DEFAULT_MESSAGE_LOGLEVEL=4
CONFIG_ENABLE_WARN_DEPRECATED=y
CONFIG_ENABLE_MUST_CHECK=y
CONFIG_FRAME_WARN=0
CONFIG_MAGIC_SYSRQ=y
CONFIG_STRIP_ASM_SYMS=y
CONFIG_UNUSED_SYMBOLS=y
CONFIG_DEBUG_FS=y
# CONFIG_HEADERS_CHECK is not set
# CONFIG_DEBUG_SECTION_MISMATCH is not set
CONFIG_DEBUG_KERNEL=y
# CONFIG_DEBUG_SHIRQ is not set
# CONFIG_LOCKUP_DETECTOR is not set
# CONFIG_HARDLOCKUP_DETECTOR is not set
CONFIG_DETECT_HUNG_TASK=y
CONFIG_DEFAULT_HUNG_TASK_TIMEOUT=120
# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set
CONFIG_BOOTPARAM_HUNG_TASK_PANIC_VALUE=0
CONFIG_SCHED_DEBUG=y
# CONFIG_SCHEDSTATS is not set
CONFIG_TIMER_STATS=y
# CONFIG_DEBUG_OBJECTS is not set
# CONFIG_SLUB_DEBUG_ON is not set
# CONFIG_SLUB_STATS is not set
# CONFIG_DEBUG_KMEMLEAK is not set
# CONFIG_DEBUG_RT_MUTEXES is not set
# CONFIG_RT_MUTEX_TESTER is not set
# CONFIG_DEBUG_SPINLOCK is not set
# CONFIG_DEBUG_MUTEXES is not set
# CONFIG_DEBUG_LOCK_ALLOC is not set
# CONFIG_PROVE_LOCKING is not set
# CONFIG_SPARSE_RCU_POINTER is not set
# CONFIG_LOCK_STAT is not set
# CONFIG_DEBUG_ATOMIC_SLEEP is not set
# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set
CONFIG_STACKTRACE=y
# CONFIG_DEBUG_STACK_USAGE is not set
# CONFIG_DEBUG_KOBJECT is not set
# CONFIG_DEBUG_HIGHMEM is not set
CONFIG_DEBUG_BUGVERBOSE=y
# CONFIG_DEBUG_INFO is not set
# CONFIG_DEBUG_VM is not set
# CONFIG_DEBUG_VIRTUAL is not set
# CONFIG_DEBUG_WRITECOUNT is not set
CONFIG_DEBUG_MEMORY_INIT=y
# CONFIG_DEBUG_LIST is not set
# CONFIG_TEST_LIST_SORT is not set
# CONFIG_DEBUG_SG is not set
# CONFIG_DEBUG_NOTIFIERS is not set
# CONFIG_DEBUG_CREDENTIALS is not set
CONFIG_ARCH_WANT_FRAME_POINTERS=y
CONFIG_FRAME_POINTER=y
# CONFIG_BOOT_PRINTK_DELAY is not set
# CONFIG_RCU_TORTURE_TEST is not set
CONFIG_RCU_CPU_STALL_TIMEOUT=60
# CONFIG_BACKTRACE_SELF_TEST is not set
# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set
# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set
# CONFIG_DEBUG_PER_CPU_MAPS is not set
# CONFIG_LKDTM is not set
CONFIG_CPU_NOTIFIER_ERROR_INJECT=m
# CONFIG_FAULT_INJECTION is not set
# CONFIG_LATENCYTOP is not set
# CONFIG_SYSCTL_SYSCALL_CHECK is not set
# CONFIG_DEBUG_PAGEALLOC is not set
CONFIG_USER_STACKTRACE_SUPPORT=y
CONFIG_NOP_TRACER=y
CONFIG_HAVE_FTRACE_NMI_ENTER=y
CONFIG_HAVE_FUNCTION_TRACER=y
CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y
CONFIG_HAVE_FUNCTION_GRAPH_FP_TEST=y
CONFIG_HAVE_FUNCTION_TRACE_MCOUNT_TEST=y
CONFIG_HAVE_DYNAMIC_FTRACE=y
CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y
CONFIG_HAVE_SYSCALL_TRACEPOINTS=y
CONFIG_HAVE_C_RECORDMCOUNT=y
CONFIG_RING_BUFFER=y
CONFIG_FTRACE_NMI_ENTER=y
CONFIG_EVENT_TRACING=y
CONFIG_EVENT_POWER_TRACING_DEPRECATED=y
CONFIG_CONTEXT_SWITCH_TRACER=y
CONFIG_RING_BUFFER_ALLOW_SWAP=y
CONFIG_TRACING=y
CONFIG_GENERIC_TRACER=y
CONFIG_TRACING_SUPPORT=y
CONFIG_FTRACE=y
CONFIG_FUNCTION_TRACER=y
CONFIG_FUNCTION_GRAPH_TRACER=y
# CONFIG_IRQSOFF_TRACER is not set
# CONFIG_SCHED_TRACER is not set
# CONFIG_FTRACE_SYSCALLS is not set
CONFIG_BRANCH_PROFILE_NONE=y
# CONFIG_PROFILE_ANNOTATED_BRANCHES is not set
# CONFIG_PROFILE_ALL_BRANCHES is not set
# CONFIG_STACK_TRACER is not set
CONFIG_BLK_DEV_IO_TRACE=y
CONFIG_DYNAMIC_FTRACE=y
# CONFIG_FUNCTION_PROFILER is not set
CONFIG_FTRACE_MCOUNT_RECORD=y
# CONFIG_FTRACE_STARTUP_TEST is not set
# CONFIG_MMIOTRACE is not set
CONFIG_RING_BUFFER_BENCHMARK=m
# CONFIG_PROVIDE_OHCI1394_DMA_INIT is not set
# CONFIG_FIREWIRE_OHCI_REMOTE_DMA is not set
# CONFIG_DYNAMIC_DEBUG is not set
# CONFIG_DMA_API_DEBUG is not set
CONFIG_ATOMIC64_SELFTEST=y
CONFIG_ASYNC_RAID6_TEST=m
# CONFIG_SAMPLES is not set
CONFIG_HAVE_ARCH_KGDB=y
# CONFIG_KGDB is not set
CONFIG_HAVE_ARCH_KMEMCHECK=y
# CONFIG_TEST_KSTRTOX is not set
CONFIG_STRICT_DEVMEM=y
CONFIG_X86_VERBOSE_BOOTUP=y
CONFIG_EARLY_PRINTK=y
# CONFIG_EARLY_PRINTK_DBGP is not set
# CONFIG_DEBUG_STACKOVERFLOW is not set
# CONFIG_X86_PTDUMP is not set
CONFIG_DEBUG_RODATA=y
CONFIG_DEBUG_RODATA_TEST=y
# CONFIG_DEBUG_SET_MODULE_RONX is not set
# CONFIG_DEBUG_NX_TEST is not set
CONFIG_DOUBLEFAULT=y
# CONFIG_IOMMU_STRESS is not set
CONFIG_HAVE_MMIOTRACE_SUPPORT=y
CONFIG_IO_DELAY_TYPE_0X80=0
CONFIG_IO_DELAY_TYPE_0XED=1
CONFIG_IO_DELAY_TYPE_UDELAY=2
CONFIG_IO_DELAY_TYPE_NONE=3
CONFIG_IO_DELAY_0X80=y
# CONFIG_IO_DELAY_0XED is not set
# CONFIG_IO_DELAY_UDELAY is not set
# CONFIG_IO_DELAY_NONE is not set
CONFIG_DEFAULT_IO_DELAY_TYPE=0
# CONFIG_DEBUG_BOOT_PARAMS is not set
# CONFIG_CPA_DEBUG is not set
CONFIG_OPTIMIZE_INLINING=y
# CONFIG_DEBUG_STRICT_USER_COPY_CHECKS is not set
# CONFIG_DEBUG_NMI_SELFTEST is not set

#
# Security options
#
CONFIG_KEYS=y
CONFIG_TRUSTED_KEYS=m
CONFIG_ENCRYPTED_KEYS=m
CONFIG_KEYS_DEBUG_PROC_KEYS=y
CONFIG_SECURITY_DMESG_RESTRICT=y
CONFIG_SECURITY=y
CONFIG_SECURITYFS=y
CONFIG_SECURITY_NETWORK=y
CONFIG_SECURITY_NETWORK_XFRM=y
# CONFIG_SECURITY_PATH is not set
# CONFIG_SECURITY_SELINUX is not set
# CONFIG_SECURITY_TOMOYO is not set
# CONFIG_SECURITY_APPARMOR is not set
# CONFIG_IMA is not set
CONFIG_DEFAULT_SECURITY_DAC=y
CONFIG_DEFAULT_SECURITY=""
CONFIG_XOR_BLOCKS=y
CONFIG_ASYNC_CORE=y
CONFIG_ASYNC_MEMCPY=y
CONFIG_ASYNC_XOR=y
CONFIG_ASYNC_PQ=y
CONFIG_ASYNC_RAID6_RECOV=y
CONFIG_ASYNC_TX_DISABLE_PQ_VAL_DMA=y
CONFIG_ASYNC_TX_DISABLE_XOR_VAL_DMA=y
CONFIG_CRYPTO=y

#
# Crypto core or helper
#
CONFIG_CRYPTO_ALGAPI=y
CONFIG_CRYPTO_ALGAPI2=y
CONFIG_CRYPTO_AEAD=y
CONFIG_CRYPTO_AEAD2=y
CONFIG_CRYPTO_BLKCIPHER=y
CONFIG_CRYPTO_BLKCIPHER2=y
CONFIG_CRYPTO_HASH=y
CONFIG_CRYPTO_HASH2=y
CONFIG_CRYPTO_RNG=y
CONFIG_CRYPTO_RNG2=y
CONFIG_CRYPTO_PCOMP=m
CONFIG_CRYPTO_PCOMP2=y
CONFIG_CRYPTO_MANAGER=y
CONFIG_CRYPTO_MANAGER2=y
# CONFIG_CRYPTO_USER is not set
CONFIG_CRYPTO_MANAGER_DISABLE_TESTS=y
CONFIG_CRYPTO_GF128MUL=y
CONFIG_CRYPTO_NULL=y
CONFIG_CRYPTO_PCRYPT=m
CONFIG_CRYPTO_WORKQUEUE=y
CONFIG_CRYPTO_CRYPTD=y
CONFIG_CRYPTO_AUTHENC=y
CONFIG_CRYPTO_TEST=m

#
# Authenticated Encryption with Associated Data
#
CONFIG_CRYPTO_CCM=y
CONFIG_CRYPTO_GCM=y
CONFIG_CRYPTO_SEQIV=y

#
# Block modes
#
CONFIG_CRYPTO_CBC=y
CONFIG_CRYPTO_CTR=y
CONFIG_CRYPTO_CTS=y
CONFIG_CRYPTO_ECB=y
CONFIG_CRYPTO_LRW=y
CONFIG_CRYPTO_PCBC=y
CONFIG_CRYPTO_XTS=y

#
# Hash modes
#
CONFIG_CRYPTO_HMAC=y
CONFIG_CRYPTO_XCBC=m
CONFIG_CRYPTO_VMAC=m

#
# Digest
#
CONFIG_CRYPTO_CRC32C=y
CONFIG_CRYPTO_CRC32C_INTEL=m
CONFIG_CRYPTO_GHASH=y
CONFIG_CRYPTO_MD4=y
CONFIG_CRYPTO_MD5=y
CONFIG_CRYPTO_MICHAEL_MIC=y
CONFIG_CRYPTO_RMD128=m
CONFIG_CRYPTO_RMD160=y
CONFIG_CRYPTO_RMD256=m
CONFIG_CRYPTO_RMD320=m
CONFIG_CRYPTO_SHA1=y
CONFIG_CRYPTO_SHA256=y
CONFIG_CRYPTO_SHA512=y
CONFIG_CRYPTO_TGR192=y
CONFIG_CRYPTO_WP512=y

#
# Ciphers
#
CONFIG_CRYPTO_AES=y
CONFIG_CRYPTO_AES_586=y
CONFIG_CRYPTO_AES_NI_INTEL=y
CONFIG_CRYPTO_ANUBIS=y
CONFIG_CRYPTO_ARC4=y
CONFIG_CRYPTO_BLOWFISH=y
CONFIG_CRYPTO_BLOWFISH_COMMON=y
CONFIG_CRYPTO_CAMELLIA=y
CONFIG_CRYPTO_CAST5=y
CONFIG_CRYPTO_CAST6=y
CONFIG_CRYPTO_DES=y
CONFIG_CRYPTO_FCRYPT=y
CONFIG_CRYPTO_KHAZAD=y
CONFIG_CRYPTO_SALSA20=m
CONFIG_CRYPTO_SALSA20_586=m
CONFIG_CRYPTO_SEED=y
CONFIG_CRYPTO_SERPENT=y
# CONFIG_CRYPTO_SERPENT_SSE2_586 is not set
CONFIG_CRYPTO_TEA=y
CONFIG_CRYPTO_TWOFISH=y
CONFIG_CRYPTO_TWOFISH_COMMON=y
CONFIG_CRYPTO_TWOFISH_586=y

#
# Compression
#
CONFIG_CRYPTO_DEFLATE=y
CONFIG_CRYPTO_ZLIB=m
CONFIG_CRYPTO_LZO=m

#
# Random Number Generation
#
CONFIG_CRYPTO_ANSI_CPRNG=m
CONFIG_CRYPTO_USER_API=m
CONFIG_CRYPTO_USER_API_HASH=m
CONFIG_CRYPTO_USER_API_SKCIPHER=m
CONFIG_CRYPTO_HW=y
CONFIG_CRYPTO_DEV_PADLOCK=m
CONFIG_CRYPTO_DEV_PADLOCK_AES=m
CONFIG_CRYPTO_DEV_PADLOCK_SHA=m
CONFIG_CRYPTO_DEV_GEODE=m
CONFIG_HAVE_KVM=y
CONFIG_HAVE_KVM_IRQCHIP=y
CONFIG_HAVE_KVM_EVENTFD=y
CONFIG_KVM_APIC_ARCHITECTURE=y
CONFIG_KVM_MMIO=y
CONFIG_KVM_ASYNC_PF=y
CONFIG_VIRTUALIZATION=y
CONFIG_KVM=m
CONFIG_KVM_INTEL=m
CONFIG_KVM_AMD=m
CONFIG_KVM_MMU_AUDIT=y
CONFIG_VHOST_NET=m
CONFIG_LGUEST=m
CONFIG_BINARY_PRINTF=y

#
# Library routines
#
CONFIG_RAID6_PQ=y
CONFIG_BITREVERSE=y
CONFIG_GENERIC_FIND_FIRST_BIT=y
CONFIG_GENERIC_PCI_IOMAP=y
CONFIG_GENERIC_IOMAP=y
CONFIG_CRC_CCITT=m
CONFIG_CRC16=y
CONFIG_CRC_T10DIF=m
CONFIG_CRC_ITU_T=y
CONFIG_CRC32=y
CONFIG_CRC7=m
CONFIG_LIBCRC32C=y
# CONFIG_CRC8 is not set
CONFIG_AUDIT_GENERIC=y
CONFIG_ZLIB_INFLATE=y
CONFIG_ZLIB_DEFLATE=y
CONFIG_LZO_COMPRESS=y
CONFIG_LZO_DECOMPRESS=y
CONFIG_XZ_DEC=y
CONFIG_XZ_DEC_X86=y
CONFIG_XZ_DEC_POWERPC=y
CONFIG_XZ_DEC_IA64=y
CONFIG_XZ_DEC_ARM=y
CONFIG_XZ_DEC_ARMTHUMB=y
CONFIG_XZ_DEC_SPARC=y
CONFIG_XZ_DEC_BCJ=y
# CONFIG_XZ_DEC_TEST is not set
CONFIG_DECOMPRESS_GZIP=y
CONFIG_DECOMPRESS_BZIP2=y
CONFIG_DECOMPRESS_LZMA=y
CONFIG_DECOMPRESS_XZ=y
CONFIG_DECOMPRESS_LZO=y
CONFIG_GENERIC_ALLOCATOR=y
CONFIG_REED_SOLOMON=m
CONFIG_REED_SOLOMON_DEC16=y
CONFIG_BCH=m
CONFIG_TEXTSEARCH=y
CONFIG_TEXTSEARCH_KMP=m
CONFIG_TEXTSEARCH_BM=m
CONFIG_TEXTSEARCH_FSM=m
CONFIG_BTREE=y
CONFIG_HAS_IOMEM=y
CONFIG_HAS_IOPORT=y
CONFIG_HAS_DMA=y
CONFIG_CHECK_SIGNATURE=y
CONFIG_CPU_RMAP=y
CONFIG_DQL=y
CONFIG_NLATTR=y
CONFIG_LRU_CACHE=m
CONFIG_AVERAGE=y
# CONFIG_CORDIC is not set

^ permalink raw reply	[flat|nested] 42+ messages in thread

end of thread, other threads:[~2018-10-22  0:09 UTC | newest]

Thread overview: 42+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-12-18  5:49 r8169 regression: UDP packets dropped intermittantly Jonathan Woithe
2017-12-18 13:38 ` Holger Hoffstätte
2017-12-18 22:32   ` Jonathan Woithe
2017-12-19  5:45     ` Jonathan Woithe
2017-12-19 12:25       ` Michal Kubecek
2017-12-20  5:20         ` Jonathan Woithe
2018-01-15  6:56           ` Jonathan Woithe
2018-10-22  0:01             ` Jonathan Woithe
  -- strict thread matches above, loose matches on Subject: below --
2013-03-09  6:46 Jonathan Woithe
2013-03-11  0:02 ` Francois Romieu
2013-03-11  0:17   ` Jonathan Woithe
2013-03-11 22:18   ` Jonathan Woithe
2013-04-05  0:15   ` Jonathan Woithe
2015-11-17  1:56     ` Jonathan Woithe
2015-11-17 23:21       ` Francois Romieu
2015-11-18  5:09         ` Jonathan Woithe
2015-11-19  0:56           ` Francois Romieu
2015-11-19  6:57             ` Jonathan Woithe
2015-11-19 12:22               ` Eric Dumazet
2015-11-19 21:44                 ` Francois Romieu
2015-11-19 21:58                   ` Eric Dumazet
2015-11-20  2:46             ` Jonathan Woithe
2015-11-20 22:45               ` Francois Romieu
2015-11-21 22:36                 ` Francois Romieu
2015-11-22 22:50                   ` Jonathan Woithe
2015-11-22 23:02                     ` Francois Romieu
2015-11-23  0:07                       ` Jonathan Woithe
2015-11-30  6:42                       ` Jonathan Woithe
2015-12-01 23:58                         ` Francois Romieu
2016-02-08  2:33                           ` Jonathan Woithe
2016-04-07  2:44                             ` Jonathan Woithe
2016-05-17  6:52                               ` Jonathan Woithe
2016-05-18  6:51                                 ` Jonathan Woithe
2016-06-01  0:31                                   ` Jonathan Woithe
2016-06-21  3:21                                     ` Jonathan Woithe
2016-06-21 23:09                                       ` Francois Romieu
2016-06-21 23:59                                         ` Jonathan Woithe
2016-06-22 23:22                                           ` Francois Romieu
2016-06-23  8:26                                             ` Jonathan Woithe
2017-03-24  5:05                                             ` Jonathan Woithe
2017-11-14  5:39                                               ` Jonathan Woithe
2015-11-23  0:16                 ` Jonathan Woithe

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.