LKML Archive on lore.kernel.org
help / color / mirror / Atom feed
* Re: Linux messages full of `random: get_random_u32 called from`
@ 2018-04-26  4:11 Sultan Alsawaf
  2018-04-26  5:00 ` Theodore Y. Ts'o
  0 siblings, 1 reply; 65+ messages in thread
From: Sultan Alsawaf @ 2018-04-26  4:11 UTC (permalink / raw)
  To: linux-kernel; +Cc: tytso

I noticed "systems without sufficient boot randomness" and would like to add to this.

With the changes to /dev/random going from 4.16.3 to 4.16.4, my low-spec Chromebook does not reach
the login screen upon boot (it stays stuck on a black screen) until I provide a source of entropy to
the system via interrupts (e.g., holding down a key on the keyboard for 5 sec or moving my finger
across the touchpad a lot). After providing a source of entropy for long enough,
"random: crng init done" prints out in dmesg and the login screen finally pops up.

Detailed information on my system can be found on this bug report I recently worked on:
https://bugzilla.kernel.org/show_bug.cgi?id=199463

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

* Re: Linux messages full of `random: get_random_u32 called from`
  2018-04-26  4:11 Linux messages full of `random: get_random_u32 called from` Sultan Alsawaf
@ 2018-04-26  5:00 ` Theodore Y. Ts'o
  2018-04-26  5:05   ` Sultan Alsawaf
  0 siblings, 1 reply; 65+ messages in thread
From: Theodore Y. Ts'o @ 2018-04-26  5:00 UTC (permalink / raw)
  To: Sultan Alsawaf; +Cc: linux-kernel, Jann Horn

On Wed, Apr 25, 2018 at 09:11:08PM -0700, Sultan Alsawaf wrote:
> I noticed "systems without sufficient boot randomness" and would like to add to this.
> 
> With the changes to /dev/random going from 4.16.3 to 4.16.4, my low-spec Chromebook does not reach
> the login screen upon boot (it stays stuck on a black screen) until I provide a source of entropy to
> the system via interrupts (e.g., holding down a key on the keyboard for 5 sec or moving my finger
> across the touchpad a lot). After providing a source of entropy for long enough,
> "random: crng init done" prints out in dmesg and the login screen finally pops up.

Thanks for the report!

I assume since you're upgrading your own kernel, you must not be
running Chrome OS on your Acer CB3-431 Chromebook (Edgar).  Are you
running Chromium --- or some Linux distribution on it?

Thanks,

					- Ted

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

* Re: Linux messages full of `random: get_random_u32 called from`
  2018-04-26  5:00 ` Theodore Y. Ts'o
@ 2018-04-26  5:05   ` Sultan Alsawaf
  2018-04-26  7:32     ` Theodore Y. Ts'o
  0 siblings, 1 reply; 65+ messages in thread
From: Sultan Alsawaf @ 2018-04-26  5:05 UTC (permalink / raw)
  To: Theodore Y. Ts'o, linux-kernel, Jann Horn

> Thanks for the report!
>
> I assume since you're upgrading your own kernel, you must not be
> running Chrome OS on your Acer CB3-431 Chromebook (Edgar).  Are you
> running Chromium --- or some Linux distribution on it?
>
> Thanks,
>
> 					- Ted

Correct, I'm running Xubuntu 18.04 with my own kernel based off linux-stable.

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

* Re: Linux messages full of `random: get_random_u32 called from`
  2018-04-26  5:05   ` Sultan Alsawaf
@ 2018-04-26  7:32     ` Theodore Y. Ts'o
  2018-04-26 15:17       ` Sultan Alsawaf
  0 siblings, 1 reply; 65+ messages in thread
From: Theodore Y. Ts'o @ 2018-04-26  7:32 UTC (permalink / raw)
  To: Sultan Alsawaf; +Cc: linux-kernel, Jann Horn

On Wed, Apr 25, 2018 at 10:05:55PM -0700, Sultan Alsawaf wrote:
> 
> Correct, I'm running Xubuntu 18.04 with my own kernel based off linux-stable.
>

Hmm, can you let the boot hang for a while?  It should continue after
a few minutes if you wait long enough, but wait a minute or two, then
give it entropy so the boot can continue.  Then can you use
"systemd-analyze blame" or "systemd-analyize critical-chain" and we
can see what process was trying to get randomness during the boot
startup and blocking waiting for the CRNG to be fully initialized.

	    	     	     	     - Ted
				     

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

* Re: Linux messages full of `random: get_random_u32 called from`
  2018-04-26  7:32     ` Theodore Y. Ts'o
@ 2018-04-26 15:17       ` Sultan Alsawaf
  2018-04-26 19:25         ` Theodore Y. Ts'o
  0 siblings, 1 reply; 65+ messages in thread
From: Sultan Alsawaf @ 2018-04-26 15:17 UTC (permalink / raw)
  To: Theodore Y. Ts'o, linux-kernel, Jann Horn

> Hmm, can you let the boot hang for a while?  It should continue after
> a few minutes if you wait long enough, but wait a minute or two, then
> give it entropy so the boot can continue.  Then can you use
> "systemd-analyze blame" or "systemd-analyize critical-chain" and we
> can see what process was trying to get randomness during the boot
> startup and blocking waiting for the CRNG to be fully initialized.
>
> 	    	     	     	     - Ted

systemd-analyze blame: https://hastebin.com/ikipavevew.css
systemd-analyze critical-chain: https://hastebin.com/odoyuqeges.pl
dmesg: https://hastebin.com/waracebeja.vbs

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

* Re: Linux messages full of `random: get_random_u32 called from`
  2018-04-26 15:17       ` Sultan Alsawaf
@ 2018-04-26 19:25         ` Theodore Y. Ts'o
  2018-04-26 20:22           ` Sultan Alsawaf
  0 siblings, 1 reply; 65+ messages in thread
From: Theodore Y. Ts'o @ 2018-04-26 19:25 UTC (permalink / raw)
  To: Sultan Alsawaf; +Cc: linux-kernel, Jann Horn

On Thu, Apr 26, 2018 at 08:17:34AM -0700, Sultan Alsawaf wrote:
> > Hmm, can you let the boot hang for a while?  It should continue after
> > a few minutes if you wait long enough, but wait a minute or two, then
> > give it entropy so the boot can continue.  Then can you use
> > "systemd-analyze blame" or "systemd-analyize critical-chain" and we
> > can see what process was trying to get randomness during the boot
> > startup and blocking waiting for the CRNG to be fully initialized.
> >
> > 	    	     	     	     - Ted
> 
> systemd-analyze blame: https://hastebin.com/ikipavevew.css
> systemd-analyze critical-chain: https://hastebin.com/odoyuqeges.pl
> dmesg: https://hastebin.com/waracebeja.vbs
>

Hmm, it looks like the multiuser startup is getting blocked on snapd:

         29.060s snapd.service

graphical.target @1min 32.145s
└─multi-user.target @1min 32.145s
  └─hddtemp.service @6.512s +28ms
    └─network-online.target @6.508s
      └─NetworkManager-wait-online.service @2.428s +4.079s
        └─NetworkManager.service @2.016s +404ms
          └─dbus.service @1.869s
            └─basic.target @1.824s
              └─sockets.target @1.824s
                └─snapd.socket @1.821s +1ms
                  └─sysinit.target @1.812s
                    └─apparmor.service @587ms +1.224s
                      └─local-fs.target @585ms
                        └─local-fs-pre.target @585ms
                          └─keyboard-setup.service @235ms +346ms
                            └─systemd-journald.socket @226ms
                              └─system.slice @225ms
                                └─-.slice @220ms

This appears to be some kind of new package management system for
Ubuntu:

Description-en: Tool to interact with Ubuntu Core Snappy.
 Install, configure, refresh and remove snap packages. Snaps are
 'universal' packages that work across many different Linux systems,
 enabling secure distribution of the latest apps and utilities for
 cloud, servers, desktops and the internet of things.

Why it the Ubuntu package believes it needs to be fully started before
the login screen can display is unclear to me.  It might be worth
using systemctl to disable snapd.serivce and see if that makes things
work better for you.

				- Ted

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

* Re: Linux messages full of `random: get_random_u32 called from`
  2018-04-26 19:25         ` Theodore Y. Ts'o
@ 2018-04-26 20:22           ` Sultan Alsawaf
  2018-04-26 20:47             ` Christian Brauner
  2018-04-26 23:56             ` Theodore Y. Ts'o
  0 siblings, 2 replies; 65+ messages in thread
From: Sultan Alsawaf @ 2018-04-26 20:22 UTC (permalink / raw)
  To: Theodore Y. Ts'o, linux-kernel, Jann Horn

> Hmm, it looks like the multiuser startup is getting blocked on snapd:
>
>          29.060s snapd.service
>
> graphical.target @1min 32.145s
> └─multi-user.target @1min 32.145s
>   └─hddtemp.service @6.512s +28ms
>     └─network-online.target @6.508s
>       └─NetworkManager-wait-online.service @2.428s +4.079s
>         └─NetworkManager.service @2.016s +404ms
>           └─dbus.service @1.869s
>             └─basic.target @1.824s
>               └─sockets.target @1.824s
>                 └─snapd.socket @1.821s +1ms
>                   └─sysinit.target @1.812s
>                     └─apparmor.service @587ms +1.224s
>                       └─local-fs.target @585ms
>                         └─local-fs-pre.target @585ms
>                           └─keyboard-setup.service @235ms +346ms
>                             └─systemd-journald.socket @226ms
>                               └─system.slice @225ms
>                                 └─-.slice @220ms
>
> This appears to be some kind of new package management system for
> Ubuntu:
>
> Description-en: Tool to interact with Ubuntu Core Snappy.
>  Install, configure, refresh and remove snap packages. Snaps are
>  'universal' packages that work across many different Linux systems,
>  enabling secure distribution of the latest apps and utilities for
>  cloud, servers, desktops and the internet of things.
>
> Why it the Ubuntu package believes it needs to be fully started before
> the login screen can display is unclear to me.  It might be worth
> using systemctl to disable snapd.serivce and see if that makes things
> work better for you.
>
> 				- Ted

I removed snapd completely which did nothing.

Here are new logs:
systemd-analyze blame: https://hastebin.com/edehikuyeb.css
systemd-analyze critical-chain: https://hastebin.com/vedufafema.pl
dmesg: https://hastebin.com/zuwuwoxadu.vbs

I should also note that leaving the system untouched does not result in it booting: I must
provide a source of entropy, otherwise it just stays stuck. In both of the dmesgs I've given, I
manually provided entropy to the system after about 5 minutes of waiting.

Also, regardless of what's hanging on CRNG init, CRNG should be able to init on its own in a timely
manner without the need for user-provided entropy. Userspace was working fine before the recent CRNG
kernel changes, so I don't think this is a userspace bug.

-Sultan

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

* Re: Linux messages full of `random: get_random_u32 called from`
  2018-04-26 20:22           ` Sultan Alsawaf
@ 2018-04-26 20:47             ` Christian Brauner
  2018-04-27  0:00               ` Theodore Y. Ts'o
  2018-04-26 23:56             ` Theodore Y. Ts'o
  1 sibling, 1 reply; 65+ messages in thread
From: Christian Brauner @ 2018-04-26 20:47 UTC (permalink / raw)
  To: Sultan Alsawaf; +Cc: Theodore Y. Ts'o, linux-kernel, Jann Horn

On Thu, Apr 26, 2018 at 01:22:02PM -0700, Sultan Alsawaf wrote:
> > Hmm, it looks like the multiuser startup is getting blocked on snapd:
> >
> >          29.060s snapd.service
> >
> > graphical.target @1min 32.145s
> > └─multi-user.target @1min 32.145s
> >   └─hddtemp.service @6.512s +28ms
> >     └─network-online.target @6.508s
> >       └─NetworkManager-wait-online.service @2.428s +4.079s
> >         └─NetworkManager.service @2.016s +404ms
> >           └─dbus.service @1.869s
> >             └─basic.target @1.824s
> >               └─sockets.target @1.824s
> >                 └─snapd.socket @1.821s +1ms
> >                   └─sysinit.target @1.812s
> >                     └─apparmor.service @587ms +1.224s
> >                       └─local-fs.target @585ms
> >                         └─local-fs-pre.target @585ms
> >                           └─keyboard-setup.service @235ms +346ms
> >                             └─systemd-journald.socket @226ms
> >                               └─system.slice @225ms
> >                                 └─-.slice @220ms
> >
> > This appears to be some kind of new package management system for
> > Ubuntu:
> >
> > Description-en: Tool to interact with Ubuntu Core Snappy.
> >  Install, configure, refresh and remove snap packages. Snaps are
> >  'universal' packages that work across many different Linux systems,
> >  enabling secure distribution of the latest apps and utilities for
> >  cloud, servers, desktops and the internet of things.
> >
> > Why it the Ubuntu package believes it needs to be fully started before
> > the login screen can display is unclear to me.  It might be worth
> > using systemctl to disable snapd.serivce and see if that makes things
> > work better for you.
> >
> > 				- Ted
> 
> I removed snapd completely which did nothing.
> 
> Here are new logs:
> systemd-analyze blame: https://hastebin.com/edehikuyeb.css
> systemd-analyze critical-chain: https://hastebin.com/vedufafema.pl
> dmesg: https://hastebin.com/zuwuwoxadu.vbs
> 
> I should also note that leaving the system untouched does not result in it booting: I must
> provide a source of entropy, otherwise it just stays stuck. In both of the dmesgs I've given, I

We have observed a similiar problem  with libvirt. As soon as entropy is
provided the boot finishes otherwise it hangs for a long time.
This is not happening with v4.17-rc1 afaict.

Christian

> manually provided entropy to the system after about 5 minutes of waiting.
> 
> Also, regardless of what's hanging on CRNG init, CRNG should be able to init on its own in a timely
> manner without the need for user-provided entropy. Userspace was working fine before the recent CRNG
> kernel changes, so I don't think this is a userspace bug.
> 
> -Sultan
> 

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

* Re: Linux messages full of `random: get_random_u32 called from`
  2018-04-26 20:22           ` Sultan Alsawaf
  2018-04-26 20:47             ` Christian Brauner
@ 2018-04-26 23:56             ` Theodore Y. Ts'o
  2018-04-27  5:20               ` Sultan Alsawaf
  2018-04-29 14:29               ` Pavel Machek
  1 sibling, 2 replies; 65+ messages in thread
From: Theodore Y. Ts'o @ 2018-04-26 23:56 UTC (permalink / raw)
  To: Sultan Alsawaf; +Cc: linux-kernel, Jann Horn

On Thu, Apr 26, 2018 at 01:22:02PM -0700, Sultan Alsawaf wrote:
> 
> Also, regardless of what's hanging on CRNG init, CRNG should be able to init on its own in a timely
> manner without the need for user-provided entropy. Userspace was working fine before the recent CRNG
> kernel changes, so I don't think this is a userspace bug.

The CRNG changes were needed because were erroneously saying that the
entropy pool was securely initialized before it really was.  Saying
that CRNG should be able to init on its own is much like saying, "Ted
should be able to fly wherever he wants in his own personal Gulfstream
V."  It would certainly be _nice_ if I could afford my personal jet.
I certainly wish I were that rich.  But the problem is that dollars
(or Euro's) are like entropy, they don't just magically drop out of
the sky.

If there isn't user-provided entropy, and the hardware isn't providing
sufficient entropy, where did you think the kernel is supposed to get
the entropy from?  Should it dial 1-800-TRUST-NSA?

>From the dmesg log, you have a Chromebook Acer 14.  I'm guessing the
problem is that Chromebooks have hardware tries *very* hard not to
issue interrupts, since that helps with power savings.  The following
from your dmesg is very interesting:

[    0.526786] tpm tpm0: [Firmware Bug]: TPM interrupt not working, polling instead

I suspect this isn't a firmware bug; it's the hardware working as
intended / working as designed, for power savings reasons.

So there are two ways to fix this that I can see.  One is to try to
adjust userspace so that it allows the boot to proceed.  As there is
more activity, the disk completion interrupts, the user typing their
username/password into the login screen, etc., there will be timing
events which can be used to harvest entropy.

The other approach would be to compile the kernel with
CONFIG_HW_RANDOM_TPM and to modify drivers/char/tpm/tpm-chip.c tot
initalize chip->hwrng.quality = 500.  We've historically made this
something that the system administrator must set via sysfs.  This is
because we wanted system adminisrators to explicitly say that they
trust the any hardware manufacturer that (a) they haven't been paid by
your choice of the Chinese MSS or the US NSA to introduce a backdoor,i
and (b) they are competent to actually implemnt a _secure_ hardware
random number generator.  Sadly, this has not always been the case.
Please see:

	https://www.chromium.org/chromium-os/tpm_firmware_update

And note that your Edgar Chromebook is one the list of devices that
have a TPM with the buggy firmware.  Fortunately this particular TPM
bug only affects RSA prime generation, so as far as I know there is no
_known_ vulerability in your TPM's hardware random number generator.
B ut we want it to be _your_ responsibility to decide you are willing
to truste it.  I certainly don't want to be legally liable --- or even
have the moral responsibility --- of guaranteeing that every single
TPM out there is bug-free(tm).

					- Ted

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

* Re: Linux messages full of `random: get_random_u32 called from`
  2018-04-26 20:47             ` Christian Brauner
@ 2018-04-27  0:00               ` Theodore Y. Ts'o
  2018-04-27 15:38                 ` Jason A. Donenfeld
  0 siblings, 1 reply; 65+ messages in thread
From: Theodore Y. Ts'o @ 2018-04-27  0:00 UTC (permalink / raw)
  To: Christian Brauner; +Cc: Sultan Alsawaf, linux-kernel, Jann Horn

On Thu, Apr 26, 2018 at 10:47:49PM +0200, Christian Brauner wrote:
> 
> We have observed a similiar problem  with libvirt. As soon as entropy is
> provided the boot finishes otherwise it hangs for a long time.
> This is not happening with v4.17-rc1 afaict.

For libvirt there is at least an easy workaround.  Make surue the
guest kernel has CONFIG_HW_RANDOM_VIRTIO enabled, and then make sure
qemu is started with the options:

	-object rng-random,filename=/dev/urandom,id=rng0 \
	-device virtio-rng-pci,rng=rng0

Cheers,

					- Ted

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

* Re: Linux messages full of `random: get_random_u32 called from`
  2018-04-26 23:56             ` Theodore Y. Ts'o
@ 2018-04-27  5:20               ` Sultan Alsawaf
  2018-04-27 20:10                 ` Theodore Y. Ts'o
  2018-04-29 14:29               ` Pavel Machek
  1 sibling, 1 reply; 65+ messages in thread
From: Sultan Alsawaf @ 2018-04-27  5:20 UTC (permalink / raw)
  To: Theodore Y. Ts'o, linux-kernel, Jann Horn

> The CRNG changes were needed because were erroneously saying that the
> entropy pool was securely initialized before it really was.  Saying
> that CRNG should be able to init on its own is much like saying, "Ted
> should be able to fly wherever he wants in his own personal Gulfstream
> V."  It would certainly be _nice_ if I could afford my personal jet.
> I certainly wish I were that rich.  But the problem is that dollars
> (or Euro's) are like entropy, they don't just magically drop out of
> the sky.
>
> If there isn't user-provided entropy, and the hardware isn't providing
> sufficient entropy, where did you think the kernel is supposed to get
> the entropy from?  Should it dial 1-800-TRUST-NSA?
>
> From the dmesg log, you have a Chromebook Acer 14.  I'm guessing the
> problem is that Chromebooks have hardware tries *very* hard not to
> issue interrupts, since that helps with power savings.  The following
> from your dmesg is very interesting:
>
> [    0.526786] tpm tpm0: [Firmware Bug]: TPM interrupt not working, polling instead
>
> I suspect this isn't a firmware bug; it's the hardware working as
> intended / working as designed, for power savings reasons.
>
> So there are two ways to fix this that I can see.  One is to try to
> adjust userspace so that it allows the boot to proceed.  As there is
> more activity, the disk completion interrupts, the user typing their
> username/password into the login screen, etc., there will be timing
> events which can be used to harvest entropy.
>
> The other approach would be to compile the kernel with
> CONFIG_HW_RANDOM_TPM and to modify drivers/char/tpm/tpm-chip.c tot
> initalize chip->hwrng.quality = 500.  We've historically made this
> something that the system administrator must set via sysfs.  This is
> because we wanted system adminisrators to explicitly say that they
> trust the any hardware manufacturer that (a) they haven't been paid by
> your choice of the Chinese MSS or the US NSA to introduce a backdoor,i
> and (b) they are competent to actually implemnt a _secure_ hardware
> random number generator.  Sadly, this has not always been the case.
> Please see:
>
> 	https://www.chromium.org/chromium-os/tpm_firmware_update
>
> And note that your Edgar Chromebook is one the list of devices that
> have a TPM with the buggy firmware.  Fortunately this particular TPM
> bug only affects RSA prime generation, so as far as I know there is no
> _known_ vulerability in your TPM's hardware random number generator.
> B ut we want it to be _your_ responsibility to decide you are willing
> to truste it.  I certainly don't want to be legally liable --- or even
> have the moral responsibility --- of guaranteeing that every single
> TPM out there is bug-free(tm).
>
> 					- Ted

Why don't we tell users that they need to smash their keyboards to make their computers boot
then? And if they question it, we can tell them that it certainly would be _nice_ to not have
to smash their keyboards to make their computers boot, but alas, a part of me has a feeling that
users would not take kindly to that :)

I noted at least 20,000 mmc interrupts before I intervened in the boot process to provide entropy
myself. That's just for mmc, so I'm sure there were even more interrupts elsewhere. Is 20k+ interrupts
really not sufficient?

There are lots of other sources of entropy available as well, like the ever-changing CPU frequencies reported
by any recent Intel chip (i.e., they report precision down to 1 kHz). Why are we so limited to h/w interrupts?

Sultan

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

* Re: Linux messages full of `random: get_random_u32 called from`
  2018-04-27  0:00               ` Theodore Y. Ts'o
@ 2018-04-27 15:38                 ` Jason A. Donenfeld
  2018-04-27 19:14                   ` Theodore Y. Ts'o
  0 siblings, 1 reply; 65+ messages in thread
From: Jason A. Donenfeld @ 2018-04-27 15:38 UTC (permalink / raw)
  To: Theodore Y. Ts'o, Christian Brauner, Sultan Alsawaf, LKML, Jann Horn

Hi Ted,

Please correct me if I'm wrong, but my present understanding of this
is that crng readiness used to be broken, meaning people would have a
seeded rng without it actually being seeded. You fixed this bug, and
now people are discovering that they don't have crng readiness during
a late stage of their init, which is breaking all sorts of entirely
reasonable and widely deployed userspaces.

You could argue that those userspaces were "only designed for machines
that have enough [by what measure?] boot time entropy", but obviously
they didn't have that in mind. And now here we have an example of an
ordinary x86 machine -- not some weird embedded device -- hitting
these issues. I'd suspect that the problem here isn't one that we can
exclusively punt onto userspace.

Sultan mentioned that his machine actually does trigger large
quantities of interrupts. Is it possible that the entropy gathering
algorithm has some issues, and Sultan's report points to a real bug
here? Considering the crng readiness state hasn't been working until
your recent fix, I suspect the actual entropy gathering code probably
hasn't prompted too many bug reports, until now that is.

Jason

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

* Re: Linux messages full of `random: get_random_u32 called from`
  2018-04-27 15:38                 ` Jason A. Donenfeld
@ 2018-04-27 19:14                   ` Theodore Y. Ts'o
  0 siblings, 0 replies; 65+ messages in thread
From: Theodore Y. Ts'o @ 2018-04-27 19:14 UTC (permalink / raw)
  To: Jason A. Donenfeld; +Cc: Christian Brauner, Sultan Alsawaf, LKML, Jann Horn

On Fri, Apr 27, 2018 at 05:38:52PM +0200, Jason A. Donenfeld wrote:
> 
> Please correct me if I'm wrong, but my present understanding of this
> is that crng readiness used to be broken, meaning people would have a
> seeded rng without it actually being seeded. You fixed this bug, and
> now people are discovering that they don't have crng readiness during
> a late stage of their init, which is breaking all sorts of entirely
> reasonable and widely deployed userspaces.

I'd say the problem is a combination of some classes of x86 hardware
devices (so far I've mainly seen repurposed chromebooks and VM's that
don't have virtio-rng enabled) combined with some distributions that
could make themselves more amenable to platforms with minimal amounts
of entropy available to them during system startup.

> Sultan mentioned that his machine actually does trigger large
> quantities of interrupts. Is it possible that the entropy gathering
> algorithm has some issues, and Sultan's report points to a real bug
> here? Considering the crng readiness state hasn't been working until
> your recent fix, I suspect the actual entropy gathering code probably
> hasn't prompted too many bug reports, until now that is.

It's not clear when his machine is triggering the "large quantity of
interrupts".  Is it during the system startup, or after he's logged
into the machine?  I suspect what is going on is the Chromebook has
been engineered so that when it's idle, it doesn't issue any
interrupts at all --- which is a good thing from a power management
perspective.  So if nothing is actually _querying_ the SD Card reader,
it's not generating any interrupts.

This is a feature, and not a bug.  That being said, a laptop which
sends some number of interrupts as it receives, say, WiFi packets, and
a system which automatically starts looking for suitable access points
as soon as the machine is started gives us timing events which is not
easily available to an analyst sitting in Fort Meade, Maryland.  In
practice, that seems to be much more of the rule and not the
exception.  However, as laptops try to become much more sparing
interrupts to save power, then we either have to (a) be willing to
trust hardware random number generators available to the laptop,
and/or (b) change userspace to *wait* until after the user has logged
in to try to obtain cryptographic-graded randomness.

If you think there is an alternative besides those two, I'm all ears...

       	     	      	 	      	      - Ted

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

* Re: Linux messages full of `random: get_random_u32 called from`
  2018-04-27  5:20               ` Sultan Alsawaf
@ 2018-04-27 20:10                 ` Theodore Y. Ts'o
  2018-04-27 22:59                   ` Sultan Alsawaf
                                     ` (3 more replies)
  0 siblings, 4 replies; 65+ messages in thread
From: Theodore Y. Ts'o @ 2018-04-27 20:10 UTC (permalink / raw)
  To: Sultan Alsawaf; +Cc: linux-kernel, Jann Horn

On Thu, Apr 26, 2018 at 10:20:44PM -0700, Sultan Alsawaf wrote:
> 
> I noted at least 20,000 mmc interrupts before I intervened in the boot process to provide entropy
> myself. That's just for mmc, so I'm sure there were even more interrupts elsewhere. Is 20k+ interrupts
> really not sufficient?

How did you determine that there were 20,000 mmc interrupts before you
had logged in?  Did you have access to the machine w/o having access
to the login prompt?

I can send a patch (see attached) that will spew large amounts of logs
as each interrupt comes in and the entropy pool is getting intialized.
That's how I test things on QEMU, and Jann did something similar on a
(physical) test machine, so I'm pretty confident that if you were
getting interrupts, it would result in them contributing into the
pool.

You will need a serial console, or build a kernel with a much larger
dmesg buffer, since if you really are getting that many interrupts it
will cause a lot of log spew.

> There are lots of other sources of entropy available as well, like
> the ever-changing CPU frequencies reported by any recent Intel chip
> (i.e., they report precision down to 1 kHz).

That's something we could look at, but the problem is if there is some
systemd unit during early boot that blocks waiting for the entropy
pool to be initalized, the system will come to a dead halt, and even
the CPU frequency shifts will probably not move much --- just as there
weren't any interrupts while some system startup on the boot path
wedges the system startup waiting for entropy.

This is why ultimately, we do need to attack this problem from both
ends, which means teaching userspace programs to only request
cryptographic-grade randomness when it is really needed --- and most
of the time, if the user has not logged in yet, you probably don't
need cryptographic-grade randomness....

						- Ted

diff --git a/drivers/char/random.c b/drivers/char/random.c
index cd888d4ee605..69bd29f039e7 100644
--- a/drivers/char/random.c
+++ b/drivers/char/random.c
@@ -916,6 +916,10 @@ static void crng_reseed(struct crng_state *crng, struct entropy_store *r)
 		__u32	key[8];
 	} buf;
 
+	if (crng == &primary_crng)
+		pr_notice("random: crng_reseed primary from %px\n", r);
+	else
+		pr_notice("random: crng_reseed crng %px from %px\n", crng, r);
 	if (r) {
 		num = extract_entropy(r, &buf, 32, 16, 0);
 		if (num == 0)
@@ -1241,6 +1245,10 @@ void add_interrupt_randomness(int irq, int irq_flags)
 	fast_pool->pool[2] ^= ip;
 	fast_pool->pool[3] ^= (sizeof(ip) > 4) ? ip >> 32 :
 		get_reg(fast_pool, regs);
+	if (crng_init < 2)
+		pr_notice("random: add_interrupt(cycles=0x%08llx, now=%ld, "
+			  "irq=%d, ip=0x%08lx)\n",
+			  cycles, now, irq, _RET_IP_);
 
 	fast_mix(fast_pool);
 	add_interrupt_bench(cycles);
@@ -1282,6 +1290,9 @@ void add_interrupt_randomness(int irq, int irq_flags)
 
 	/* award one bit for the contents of the fast pool */
 	credit_entropy_bits(r, credit + 1);
+	if (crng_init < 2)
+		pr_notice("random: batched into pool in stage %d, bits now %d",
+			  crng_init, ENTROPY_BITS(r));
 }
 EXPORT_SYMBOL_GPL(add_interrupt_randomness);
 

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

* Re: Linux messages full of `random: get_random_u32 called from`
  2018-04-27 20:10                 ` Theodore Y. Ts'o
@ 2018-04-27 22:59                   ` Sultan Alsawaf
  2018-04-29 14:32                   ` Pavel Machek
                                     ` (2 subsequent siblings)
  3 siblings, 0 replies; 65+ messages in thread
From: Sultan Alsawaf @ 2018-04-27 22:59 UTC (permalink / raw)
  To: Theodore Y. Ts'o, linux-kernel, Jann Horn

> On Thu, Apr 26, 2018 at 10:20:44PM -0700, Sultan Alsawaf wrote:
>> I noted at least 20,000 mmc interrupts before I intervened in the boot process to provide entropy
>> myself. That's just for mmc, so I'm sure there were even more interrupts elsewhere. Is 20k+ interrupts
>> really not sufficient?
> How did you determine that there were 20,000 mmc interrupts before you
> had logged in?  Did you have access to the machine w/o having access
> to the login prompt?
>
> I can send a patch (see attached) that will spew large amounts of logs
> as each interrupt comes in and the entropy pool is getting intialized.
> That's how I test things on QEMU, and Jann did something similar on a
> (physical) test machine, so I'm pretty confident that if you were
> getting interrupts, it would result in them contributing into the
> pool.
>
> You will need a serial console, or build a kernel with a much larger
> dmesg buffer, since if you really are getting that many interrupts it
> will cause a lot of log spew.  
>> There are lots of other sources of entropy available as well, like
>> the ever-changing CPU frequencies reported by any recent Intel chip
>> (i.e., they report precision down to 1 kHz).
> That's something we could look at, but the problem is if there is some
> systemd unit during early boot that blocks waiting for the entropy
> pool to be initalized, the system will come to a dead halt, and even
> the CPU frequency shifts will probably not move much --- just as there
> weren't any interrupts while some system startup on the boot path
> wedges the system startup waiting for entropy.
>
> This is why ultimately, we do need to attack this problem from both
> ends, which means teaching userspace programs to only request
> cryptographic-grade randomness when it is really needed --- and most
> of the time, if the user has not logged in yet, you probably don't
> need cryptographic-grade randomness....
>
> 						- Ted
>
> diff --git a/drivers/char/random.c b/drivers/char/random.c
> index cd888d4ee605..69bd29f039e7 100644
> --- a/drivers/char/random.c
> +++ b/drivers/char/random.c
> @@ -916,6 +916,10 @@ static void crng_reseed(struct crng_state *crng, struct entropy_store *r)
>  		__u32	key[8];
>  	} buf;
>  
> +	if (crng == &primary_crng)
> +		pr_notice("random: crng_reseed primary from %px\n", r);
> +	else
> +		pr_notice("random: crng_reseed crng %px from %px\n", crng, r);
>  	if (r) {
>  		num = extract_entropy(r, &buf, 32, 16, 0);
>  		if (num == 0)
> @@ -1241,6 +1245,10 @@ void add_interrupt_randomness(int irq, int irq_flags)
>  	fast_pool->pool[2] ^= ip;
>  	fast_pool->pool[3] ^= (sizeof(ip) > 4) ? ip >> 32 :
>  		get_reg(fast_pool, regs);
> +	if (crng_init < 2)
> +		pr_notice("random: add_interrupt(cycles=0x%08llx, now=%ld, "
> +			  "irq=%d, ip=0x%08lx)\n",
> +			  cycles, now, irq, _RET_IP_);
>  
>  	fast_mix(fast_pool);
>  	add_interrupt_bench(cycles);
> @@ -1282,6 +1290,9 @@ void add_interrupt_randomness(int irq, int irq_flags)
>  
>  	/* award one bit for the contents of the fast pool */
>  	credit_entropy_bits(r, credit + 1);
> +	if (crng_init < 2)
> +		pr_notice("random: batched into pool in stage %d, bits now %d",
> +			  crng_init, ENTROPY_BITS(r));
>  }
>  EXPORT_SYMBOL_GPL(add_interrupt_randomness);

I dumped the contents of /proc/interrupts to dmesg using the attached patch I threw together,
and then waited a sufficient amount of time before introducing entropy myself in order to ensure
that the interrupt readings were not contaminated by user-provided interrupts.

Here is the interesting snippet from my dmesg:
[   30.689076] /proc/interrupts dump: 
               |            CPU0       CPU1       CPU2       CPU3       
                  0:          6          0          0          0   IO-APIC    2-edge      timer
                  8:          0          0          1          0   IO-APIC    8-edge      rtc0
                  9:          0        533          0          0   IO-APIC    9-fasteoi   acpi
                 10:          0          0          0          0   IO-APIC   10-edge      tpm0
                 29:          0          0          0          0   IO-APIC   29-fasteoi   intel_sst_driver
                 36:        203          0          0          0   IO-APIC   36-fasteoi   808622C1:04
                 37:          0        264          0          0   IO-APIC   37-fasteoi   808622C1:05
                 42:          0          0          0          0   IO-APIC   42-fasteoi   dw:dmac-1
                 43:          0          0          0          0   IO-APIC   43-fasteoi   dw:dmac-1
                 45:          0          0          0      11402   IO-APIC   45-fasteoi   mmc0
                168:          0          0          1          0  chv-gpio   95  rt5645
                182:          0          0          0          9  chv-gpio   17  i8042
                183:          0          0          0          0  chv-gpio   18  ELAN0000:00
                230:          0          0          0          0  chv-gpio   15  ACPI:Event
                310:          0          0          0          0   PCI-MSI 458752-edge      PCIe PME, pciehp
                311:          0          0          0          0   PCI-MSI 462848-edge      PCIe PME
                312:          0        520          0          0   PCI-MSI 327680-edge      xhci_hcd
                313:        940          0          0          0   PCI-MSI 32768-edge      i915
                314:          0        137          0          0   PCI-MSI 1048576-edge      iwlwifi
                315:          0          0          0         70   PCI-MSI 442368-edge      snd_hda_intel:card0
                NMI:          0          0          0          0   Non-maskable interrupts
                LOC:       4419       4014       4590       4564   Local timer interrupts
                SPU:          0          0          0          0   Spurious interrupts
                PMI:          0          0          0          0   Performance monitoring interrupts
                IWI:          1          0          0          0   IRQ work interrupts
                RTR:          0          0          0          0   APIC ICR read retries
                RES:       1562       1235       1647        796   Rescheduling interrupts
                CAL:       1220       1340       1466       1477   Function call interrupts
                TLB:         27         18         20         17   TLB shootdowns
                TRM:          0          0          0          0   Thermal event interrupts
                THR:          0          0          0          0   Threshold APIC interrupts
                MCE:          0          0          0          0   Machine check exceptions
                MCP:          1          1          1          1   Machine check polls
                ERR:          0
                MIS:          0
                PIN:          0          0          0          0   Posted-interrupt notification event
                NPI:          0          0          0          0   Nested posted-interrupt event
                PIW:          0          0          0          0   Posted-interrupt wakeup event
               |
[   81.698372] random: crng init done

Looks like there were 11,000 mmc interrupts 30 seconds into boot. When I measured 20,000, it was a few
minutes into boot, so that is why there is a disparity. Do also note that crng init completed 50 seconds
after the /proc/interrupts dump, so 11k+ interrupts clearly didn't do the trick. If you want, I can dump out
/proc/interrupts when the "random: crng init done" message is printed.

And here is the full dmesg: https://hastebin.com/isujicenev.vbs

Sultan

>From 79576697e3ca631c88ea784d837672ef34a24e42 Mon Sep 17 00:00:00 2001
From: Sultan Alsawaf <sultanxda@gmail.com>
Date: Fri, 27 Apr 2018 15:46:18 -0700
Subject: [PATCH] Print out /proc/interrupts to kmsg ~30s after boot

---
 fs/proc/Makefile           |  1 +
 fs/proc/interrupts_print.c | 42 ++++++++++++++++++++++++++++++++++++++++++
 kernel/printk/printk.c     |  2 +-
 3 files changed, 44 insertions(+), 1 deletion(-)
 create mode 100644 fs/proc/interrupts_print.c

diff --git a/fs/proc/Makefile b/fs/proc/Makefile
index ead487e80510..9bd462cec4ec 100644
--- a/fs/proc/Makefile
+++ b/fs/proc/Makefile
@@ -33,3 +33,4 @@ proc-$(CONFIG_PROC_KCORE)	+= kcore.o
 proc-$(CONFIG_PROC_VMCORE)	+= vmcore.o
 proc-$(CONFIG_PRINTK)	+= kmsg.o
 proc-$(CONFIG_PROC_PAGE_MONITOR)	+= page.o
+obj-y += interrupts_print.o
diff --git a/fs/proc/interrupts_print.c b/fs/proc/interrupts_print.c
new file mode 100644
index 000000000000..4981dca3b828
--- /dev/null
+++ b/fs/proc/interrupts_print.c
@@ -0,0 +1,42 @@
+#include <linux/slab.h>
+#include <linux/syscalls.h>
+#include <linux/workqueue.h>
+
+#define BUF_MAX_LEN (10000)
+
+static struct delayed_work intr_print_dwork;
+
+static void print_out_interrupts(struct work_struct *work)
+{
+	char *buf;
+	int fd, i;
+
+	buf = kzalloc(BUF_MAX_LEN, GFP_KERNEL);
+	if (!buf)
+		return;
+
+	fd = sys_open("/proc/interrupts", O_RDONLY, 0444);
+	if (fd < 0)
+		goto free_buf;
+
+	for (i = 0; i < BUF_MAX_LEN - 1; i++) {
+		if (sys_read(fd, buf + i, 1) != 1)
+			break;
+	}
+	sys_close(fd);
+
+	printk("/proc/interrupts dump: \n|%s|\n", buf);
+
+free_buf:
+	kfree(buf);
+}
+
+static int __init intr_print_init(void)
+{
+	INIT_DELAYED_WORK(&intr_print_dwork, print_out_interrupts);
+	schedule_delayed_work(&intr_print_dwork,
+		msecs_to_jiffies(30 * MSEC_PER_SEC));
+
+	return 0;
+}
+device_initcall(intr_print_init);
diff --git a/kernel/printk/printk.c b/kernel/printk/printk.c
index f274fbef821d..2d3151ce5f24 100644
--- a/kernel/printk/printk.c
+++ b/kernel/printk/printk.c
@@ -428,7 +428,7 @@ static u64 clear_seq;
 static u32 clear_idx;
 
 #define PREFIX_MAX		32
-#define LOG_LINE_MAX		(1024 - PREFIX_MAX)
+#define LOG_LINE_MAX		(10000)
 
 #define LOG_LEVEL(v)		((v) & 0x07)
 #define LOG_FACILITY(v)		((v) >> 3 & 0xff)
-- 
2.14.1

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

* Re: Linux messages full of `random: get_random_u32 called from`
  2018-04-26 23:56             ` Theodore Y. Ts'o
  2018-04-27  5:20               ` Sultan Alsawaf
@ 2018-04-29 14:29               ` Pavel Machek
  1 sibling, 0 replies; 65+ messages in thread
From: Pavel Machek @ 2018-04-29 14:29 UTC (permalink / raw)
  To: Theodore Y. Ts'o, Sultan Alsawaf, linux-kernel, Jann Horn

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

Hi!
On Thu 2018-04-26 19:56:30, Theodore Y. Ts'o wrote:
> On Thu, Apr 26, 2018 at 01:22:02PM -0700, Sultan Alsawaf wrote:
> > 
> > Also, regardless of what's hanging on CRNG init, CRNG should be able to init on its own in a timely
> > manner without the need for user-provided entropy. Userspace was working fine before the recent CRNG
> > kernel changes, so I don't think this is a userspace bug.
> 
> The CRNG changes were needed because were erroneously saying that the
> entropy pool was securely initialized before it really was.  Saying
> that CRNG should be able to init on its own is much like saying, "Ted
> should be able to fly wherever he wants in his own personal Gulfstream
> V."  It would certainly be _nice_ if I could afford my personal jet.
> I certainly wish I were that rich.  But the problem is that dollars
> (or Euro's) are like entropy, they don't just magically drop out of
> the sky.
> 
> If there isn't user-provided entropy, and the hardware isn't providing
> sufficient entropy, where did you think the kernel is supposed to get
> the entropy from?  Should it dial 1-800-TRUST-NSA?

Yes, we could dial 1-800-TRUST-NSA. Then nicely ask them to provide us
some unbackdoored randomness. Then we'd ignore whatever they say, but
would collect randomness from timing and noise on the telephone line.

> The other approach would be to compile the kernel with
> CONFIG_HW_RANDOM_TPM and to modify drivers/char/tpm/tpm-chip.c tot
> initalize chip->hwrng.quality = 500.  We've historically made this
> something that the system administrator must set via sysfs.  This is
> because we wanted system adminisrators to explicitly say that they
> trust the any hardware manufacturer that (a) they haven't been paid by
> your choice of the Chinese MSS or the US NSA to introduce a backdoor,i
> and (b) they are competent to actually implemnt a _secure_ hardware
> random number generator.  Sadly, this has not always been the case.

Well, we could actively start accessing suitable device (SD card ? HDD
? CMOS RTC?) when we detect entropy is low. Yes, that would eat power,
but that would be better than machine that hangs at boot.

We could also access the hwrng, then collect entropy from the
timing. TPM is slow chip...
                                                                        Pavel
-- 
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 181 bytes --]

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

* Re: Linux messages full of `random: get_random_u32 called from`
  2018-04-27 20:10                 ` Theodore Y. Ts'o
  2018-04-27 22:59                   ` Sultan Alsawaf
@ 2018-04-29 14:32                   ` Pavel Machek
  2018-04-29 17:05                     ` Sultan Alsawaf
  2018-04-29 18:30                   ` Sultan Alsawaf
  2018-05-18  1:27                   ` Trent Piepho
  3 siblings, 1 reply; 65+ messages in thread
From: Pavel Machek @ 2018-04-29 14:32 UTC (permalink / raw)
  To: Theodore Y. Ts'o, Sultan Alsawaf, linux-kernel, Jann Horn

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

Hi!

> This is why ultimately, we do need to attack this problem from both
> ends, which means teaching userspace programs to only request
> cryptographic-grade randomness when it is really needed --- and most
> of the time, if the user has not logged in yet, you probably don't
> need cryptographic-grade randomness....

IOW moving them from /dev/random to /dev/urandom?
								Pavel

-- 
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 181 bytes --]

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

* Re: Linux messages full of `random: get_random_u32 called from`
  2018-04-29 14:32                   ` Pavel Machek
@ 2018-04-29 17:05                     ` Sultan Alsawaf
  2018-04-29 18:41                       ` Pavel Machek
  0 siblings, 1 reply; 65+ messages in thread
From: Sultan Alsawaf @ 2018-04-29 17:05 UTC (permalink / raw)
  To: Pavel Machek; +Cc: Theodore Y. Ts'o, linux-kernel, Jann Horn

On Sun, Apr 29, 2018 at 04:32:05PM +0200, Pavel Machek wrote:
> Hi!
> 
> > This is why ultimately, we do need to attack this problem from both
> > ends, which means teaching userspace programs to only request
> > cryptographic-grade randomness when it is really needed --- and most
> > of the time, if the user has not logged in yet, you probably don't
> > need cryptographic-grade randomness....
> 
> IOW moving them from /dev/random to /dev/urandom?
> 								Pavel
> 
> -- 
> (english) http://www.livejournal.com/~pavelmachek
> (cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html

/dev/urandom isn't cryptographically secure, so that's not an option.

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

* Re: Linux messages full of `random: get_random_u32 called from`
  2018-04-27 20:10                 ` Theodore Y. Ts'o
  2018-04-27 22:59                   ` Sultan Alsawaf
  2018-04-29 14:32                   ` Pavel Machek
@ 2018-04-29 18:30                   ` Sultan Alsawaf
  2018-04-29 20:08                     ` Theodore Y. Ts'o
  2018-05-18  1:27                   ` Trent Piepho
  3 siblings, 1 reply; 65+ messages in thread
From: Sultan Alsawaf @ 2018-04-29 18:30 UTC (permalink / raw)
  To: Theodore Y. Ts'o, linux-kernel, Jann Horn

I'd also like to add that my high-spec x86 laptop exhibits the same issue as
my Edgar Chromebook.

Here's my dmesg: https://hastebin.com/dofejolobi.go

The most interesting line:
[   90.811633] random: crng init done

I waited 90 seconds after boot to provide entropy myself, at which point crng
init completed. In other words, crng init only completed because I provided
the entropy by smashing the keyboard. I could've waited longer and crng init
wouldn't have completed without my input.

Mind you, this laptop has a 45W CPU, so power savings were definitely not
considered in its design. Do you have any machines that can provide enough
boot entropy to satisfy crng init without requiring user-provided entropy?

Sultan

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

* Re: Linux messages full of `random: get_random_u32 called from`
  2018-04-29 17:05                     ` Sultan Alsawaf
@ 2018-04-29 18:41                       ` Pavel Machek
  2018-04-29 20:20                         ` Sultan Alsawaf
  0 siblings, 1 reply; 65+ messages in thread
From: Pavel Machek @ 2018-04-29 18:41 UTC (permalink / raw)
  To: Sultan Alsawaf; +Cc: Theodore Y. Ts'o, linux-kernel, Jann Horn

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

On Sun 2018-04-29 10:05:41, Sultan Alsawaf wrote:
> On Sun, Apr 29, 2018 at 04:32:05PM +0200, Pavel Machek wrote:
> > Hi!
> > 
> > > This is why ultimately, we do need to attack this problem from both
> > > ends, which means teaching userspace programs to only request
> > > cryptographic-grade randomness when it is really needed --- and most
> > > of the time, if the user has not logged in yet, you probably don't
> > > need cryptographic-grade randomness....
> > 
> > IOW moving them from /dev/random to /dev/urandom?
> 
> /dev/urandom isn't cryptographically secure, so that's not an
> option.

Umm. No. https://www.youtube.com/watch?v=xneBjc8z0DE


									Pavel

-- 
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 181 bytes --]

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

* Re: Linux messages full of `random: get_random_u32 called from`
  2018-04-29 18:30                   ` Sultan Alsawaf
@ 2018-04-29 20:08                     ` Theodore Y. Ts'o
  0 siblings, 0 replies; 65+ messages in thread
From: Theodore Y. Ts'o @ 2018-04-29 20:08 UTC (permalink / raw)
  To: Sultan Alsawaf; +Cc: linux-kernel, Jann Horn

On Sun, Apr 29, 2018 at 11:30:57AM -0700, Sultan Alsawaf wrote:
> 
> Mind you, this laptop has a 45W CPU, so power savings were definitely not
> considered in its design. Do you have any machines that can provide enough
> boot entropy to satisfy crng init without requiring user-provided entropy?

My 2018 Dell XPS 13 laptop, running "egrep '(random|EXT4)' /var/log/kern.log":

Apr 24 17:05:01 cwcc kernel: [    0.000000] random: get_random_bytes called from start_kernel+0x83/0x500 with crng_init=0
Apr 24 17:05:01 cwcc kernel: [    1.363383] random: fast init done
Apr 24 17:05:01 cwcc kernel: [    3.567432] random: lvm: uninitialized urandom read (4 bytes read)
Apr 24 17:05:01 cwcc kernel: [    3.593132] random: lvm: uninitialized urandom read (4 bytes read)
Apr 24 17:05:01 cwcc kernel: [    7.584838] random: cryptsetup: uninitialized urandom read (2 bytes read)
Apr 24 17:05:01 cwcc kernel: [    7.600685] random: cryptsetup: uninitialized urandom read (2 bytes read)
Apr 24 17:05:01 cwcc kernel: [    7.803194] random: cryptsetup: uninitialized urandom read (2 bytes read)
Apr 24 17:05:01 cwcc kernel: [    7.831050] random: lvm: uninitialized urandom read (4 bytes read)
Apr 24 17:05:01 cwcc kernel: [    7.851884] random: lvm: uninitialized urandom read (4 bytes read)
Apr 24 17:05:01 cwcc kernel: [    7.875382] random: lvm: uninitialized urandom read (2 bytes read)
Apr 24 17:05:01 cwcc kernel: [    8.162552] EXT4-fs (dm-1): mounted filesystem with ordered data mode. Opts: (null)
Apr 24 17:05:01 cwcc kernel: [    8.646497] random: crng init done

       		     	     	  	    	    	 - Ted

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

* Re: Linux messages full of `random: get_random_u32 called from`
  2018-04-29 18:41                       ` Pavel Machek
@ 2018-04-29 20:20                         ` Sultan Alsawaf
  2018-04-29 21:18                           ` Pavel Machek
  2018-04-29 22:05                           ` Theodore Y. Ts'o
  0 siblings, 2 replies; 65+ messages in thread
From: Sultan Alsawaf @ 2018-04-29 20:20 UTC (permalink / raw)
  To: Pavel Machek; +Cc: Theodore Y. Ts'o, linux-kernel, Jann Horn

On Sun, Apr 29, 2018 at 08:41:01PM +0200, Pavel Machek wrote:
> Umm. No. https://www.youtube.com/watch?v=xneBjc8z0DE

Okay, but /dev/urandom isn't a solution to this problem because it isn't usable
until crng init is complete, so it suffers from the same init lag as
/dev/random.

Sultan

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

* Re: Linux messages full of `random: get_random_u32 called from`
  2018-04-29 20:20                         ` Sultan Alsawaf
@ 2018-04-29 21:18                           ` Pavel Machek
  2018-04-29 21:34                             ` Sultan Alsawaf
  2018-04-29 22:05                           ` Theodore Y. Ts'o
  1 sibling, 1 reply; 65+ messages in thread
From: Pavel Machek @ 2018-04-29 21:18 UTC (permalink / raw)
  To: Sultan Alsawaf; +Cc: Theodore Y. Ts'o, linux-kernel, Jann Horn

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

On Sun 2018-04-29 13:20:33, Sultan Alsawaf wrote:
> On Sun, Apr 29, 2018 at 08:41:01PM +0200, Pavel Machek wrote:
> > Umm. No. https://www.youtube.com/watch?v=xneBjc8z0DE
> 
> Okay, but /dev/urandom isn't a solution to this problem because it isn't usable
> until crng init is complete, so it suffers from the same init lag as
> /dev/random.

So -- I'm pretty sure systemd and friends should be using
/dev/urandom. Maybe gpg wants to use /dev/random. _Maybe_.

[    2.948192] random: systemd: uninitialized urandom read (16 bytes
read)
[    2.953526] systemd[1]: systemd 215 running in system mode. (+PAM
+AUDIT +SELINUX +IMA +SYSVINIT +LIBCRYPTSETUP +GCRYPT +ACL +XZ
-SECCOMP -APPARMOR)
[    2.980278] systemd[1]: Detected architecture 'x86'.
[    3.115072] usb 5-2: New USB device found, idVendor=0483,
idProduct=2016, bcdDevice= 0.01
[    3.119633] usb 5-2: New USB device strings: Mfr=1, Product=2,
SerialNumber=0
[    3.124147] usb 5-2: Product: Biometric Coprocessor
[    3.128621] usb 5-2: Manufacturer: STMicroelectronics
[    3.163839] systemd[1]: Failed to insert module 'ipv6'
[    3.181266] systemd[1]: Set hostname to <amd>.
[    3.267243] random: systemd-sysv-ge: uninitialized urandom read (16
bytes read)
[    3.669590] random: systemd-sysv-ge: uninitialized urandom read (16
bytes read)
[    3.696242] random: systemd: uninitialized urandom read (16 bytes
read)
[    3.700066] random: systemd: uninitialized urandom read (16 bytes
read)
[    3.703716] random: systemd: uninitialized urandom read (16 bytes
read)

Anyway, urandom should need to be seeded once, and then provide random
data forever... which is not impression I get from the dmesg output
above. Boot clearly proceeds... somehow. So now I'm confused.

Best regards,
									Pavel
-- 
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 181 bytes --]

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

* Re: Linux messages full of `random: get_random_u32 called from`
  2018-04-29 21:18                           ` Pavel Machek
@ 2018-04-29 21:34                             ` Sultan Alsawaf
  0 siblings, 0 replies; 65+ messages in thread
From: Sultan Alsawaf @ 2018-04-29 21:34 UTC (permalink / raw)
  To: Pavel Machek; +Cc: Theodore Y. Ts'o, linux-kernel, Jann Horn

On Sun, Apr 29, 2018 at 11:18:55PM +0200, Pavel Machek wrote:
> So -- I'm pretty sure systemd and friends should be using
> /dev/urandom. Maybe gpg wants to use /dev/random. _Maybe_.
> 
> [    2.948192] random: systemd: uninitialized urandom read (16 bytes
> read)
> [    2.953526] systemd[1]: systemd 215 running in system mode. (+PAM
> +AUDIT +SELINUX +IMA +SYSVINIT +LIBCRYPTSETUP +GCRYPT +ACL +XZ
> -SECCOMP -APPARMOR)
> [    2.980278] systemd[1]: Detected architecture 'x86'.
> [    3.115072] usb 5-2: New USB device found, idVendor=0483,
> idProduct=2016, bcdDevice= 0.01
> [    3.119633] usb 5-2: New USB device strings: Mfr=1, Product=2,
> SerialNumber=0
> [    3.124147] usb 5-2: Product: Biometric Coprocessor
> [    3.128621] usb 5-2: Manufacturer: STMicroelectronics
> [    3.163839] systemd[1]: Failed to insert module 'ipv6'
> [    3.181266] systemd[1]: Set hostname to <amd>.
> [    3.267243] random: systemd-sysv-ge: uninitialized urandom read (16
> bytes read)
> [    3.669590] random: systemd-sysv-ge: uninitialized urandom read (16
> bytes read)
> [    3.696242] random: systemd: uninitialized urandom read (16 bytes
> read)
> [    3.700066] random: systemd: uninitialized urandom read (16 bytes
> read)
> [    3.703716] random: systemd: uninitialized urandom read (16 bytes
> read)
> 
> Anyway, urandom should need to be seeded once, and then provide random
> data forever... which is not impression I get from the dmesg output
> above. Boot clearly proceeds... somehow. So now I'm confused.

Hmm... Well, the attached patch (which redirects /dev/random to /dev/urandom)
didn't fix my boot issue, so I'm at a loss as well.

Sultan

>From 15f54e2756866956d8713fdec92b54c6c69eb1bb Mon Sep 17 00:00:00 2001
From: Sultan Alsawaf <sultanxda@gmail.com>
Date: Sun, 29 Apr 2018 12:53:44 -0700
Subject: [PATCH] char: mem: Link /dev/random to /dev/urandom

---
 drivers/char/mem.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/char/mem.c b/drivers/char/mem.c
index ffeb60d3434c..0cd22e6100ad 100644
--- a/drivers/char/mem.c
+++ b/drivers/char/mem.c
@@ -870,7 +870,7 @@ static const struct memdev {
 #endif
 	 [5] = { "zero", 0666, &zero_fops, 0 },
 	 [7] = { "full", 0666, &full_fops, 0 },
-	 [8] = { "random", 0666, &random_fops, 0 },
+	 [8] = { "random", 0666, &urandom_fops, 0 },
 	 [9] = { "urandom", 0666, &urandom_fops, 0 },
 #ifdef CONFIG_PRINTK
 	[11] = { "kmsg", 0644, &kmsg_fops, 0 },
-- 
2.14.1

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

* Re: Linux messages full of `random: get_random_u32 called from`
  2018-04-29 20:20                         ` Sultan Alsawaf
  2018-04-29 21:18                           ` Pavel Machek
@ 2018-04-29 22:05                           ` Theodore Y. Ts'o
  2018-04-29 22:26                             ` Sultan Alsawaf
                                               ` (3 more replies)
  1 sibling, 4 replies; 65+ messages in thread
From: Theodore Y. Ts'o @ 2018-04-29 22:05 UTC (permalink / raw)
  To: Sultan Alsawaf; +Cc: Pavel Machek, linux-kernel, Jann Horn

On Sun, Apr 29, 2018 at 01:20:33PM -0700, Sultan Alsawaf wrote:
> On Sun, Apr 29, 2018 at 08:41:01PM +0200, Pavel Machek wrote:
> > Umm. No. https://www.youtube.com/watch?v=xneBjc8z0DE
> 
> Okay, but /dev/urandom isn't a solution to this problem because it isn't usable
> until crng init is complete, so it suffers from the same init lag as
> /dev/random.

It's more accurate to say that using /dev/urandom is no worse than
before (from a few years ago).  There are, alas, plenty of
distributions and user space application programmers that basically
got lazy using /dev/urandom, and assumed that there would be plenty of
entropy during early system startup.

When they switched over the getrandom(2), the most egregious examples
of this caused pain (and they got fixed), but due to a bug in
drivers/char/random.c, if getrandom(2) was called after the entropy
pool was "half initialized", it would not block, but proceed.

Is that exploitable?  Well, Jann and I didn't find an _obvious_ way to
exploit the short coming, which is this wasn't treated like an
emergency situation ala the embarassing situation we had five years
ago[1].

[1] https://factorable.net/paper.html

However, it was enough to make us be uncomfortable, which is why I
pushed the changes that I did.  At least on the devices we had at
hand, using the distributions that we typically use, the impact seemed
minimal.  Unfortuantely, there is no way to know for sure without
rolling out change and seeing who screams.  In the ideal world,
software would not require cryptographic randomness immediately after
boot, before the user logs in.  And ***really***, as in [1], softwaret
should not be generating long-term public keys that are essential to
the security of the box a few seconds immediately after the device is
first unboxed and plugged in.i

What would be useful is if people gave reports that listed exactly
what laptop and distributions they are using.  Just "a high spec x86
laptop" isn't terribly useful, because *my* brand-new Dell XPS 13
running Debian testing is working just fine.  The year, model, make,
and CPU type plus what distribution (and distro version number) you
are running is useful, so I can assess how wide spread the unhappiness
is going to be, and what mitigation steps make sense.


What mitigations steps can be taken?

If you believe in security-through-complexity (the cache architecture
of x86 is *sooooo* complicated no one can understand it, so
Jitterentropy / Haveged *must* be secure), or security-through-secrecy
(the cache architecture of x86 is only avilable to internal architects
inside Intel, so Jitterentropy / Haveged *must* be secure, never mind
that the Intel CPU architects who were asked about it were "nervous"),
then wiring up CONFIG_JITTERENTROPY or using haveged might be one
approach.

If you believe that Intel hasn't backdoored RDRAND, then installing
rng-tools and running rngd with --enable-drng will enable RDRAND.
That seems to be popular with various defense contractors, perhaps on
the assumption that if it _was_ backdoored (no one knows for sure), it
was probably with the connivance or request of the US government, who
doesn't need to worry about spying on itself.

Or you can use some kind of open hardware design RNG, such as
ChoasKey[2] from Altus Metrum.  But that requires using specially
ordered hardware plugged into a USB slot, and it's probably not a mass
solution.

[2] https://altusmetrum.org/ChaosKey/


Personally, I prefer fixing the software to simply not require
cryptographic grade entropy before the user has logged in.  Because
it's better than the alternatives.

					- Ted

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

* Re: Linux messages full of `random: get_random_u32 called from`
  2018-04-29 22:05                           ` Theodore Y. Ts'o
@ 2018-04-29 22:26                             ` Sultan Alsawaf
  2018-04-29 22:43                               ` Jason A. Donenfeld
  2018-04-29 22:43                             ` Pavel Machek
                                               ` (2 subsequent siblings)
  3 siblings, 1 reply; 65+ messages in thread
From: Sultan Alsawaf @ 2018-04-29 22:26 UTC (permalink / raw)
  To: Theodore Y. Ts'o, Pavel Machek, linux-kernel, Jann Horn

On Sun, Apr 29, 2018 at 06:05:19PM -0400, Theodore Y. Ts'o wrote:
> It's more accurate to say that using /dev/urandom is no worse than
> before (from a few years ago).  There are, alas, plenty of
> distributions and user space application programmers that basically
> got lazy using /dev/urandom, and assumed that there would be plenty of
> entropy during early system startup.
> 
> When they switched over the getrandom(2), the most egregious examples
> of this caused pain (and they got fixed), but due to a bug in
> drivers/char/random.c, if getrandom(2) was called after the entropy
> pool was "half initialized", it would not block, but proceed.
> 
> Is that exploitable?  Well, Jann and I didn't find an _obvious_ way to
> exploit the short coming, which is this wasn't treated like an
> emergency situation ala the embarassing situation we had five years
> ago[1].
> 
> [1] https://factorable.net/paper.html
> 
> However, it was enough to make us be uncomfortable, which is why I
> pushed the changes that I did.  At least on the devices we had at
> hand, using the distributions that we typically use, the impact seemed
> minimal.  Unfortuantely, there is no way to know for sure without
> rolling out change and seeing who screams.  In the ideal world,
> software would not require cryptographic randomness immediately after
> boot, before the user logs in.  And ***really***, as in [1], softwaret
> should not be generating long-term public keys that are essential to
> the security of the box a few seconds immediately after the device is
> first unboxed and plugged in.i
> 
> What would be useful is if people gave reports that listed exactly
> what laptop and distributions they are using.  Just "a high spec x86
> laptop" isn't terribly useful, because *my* brand-new Dell XPS 13
> running Debian testing is working just fine.  The year, model, make,
> and CPU type plus what distribution (and distro version number) you
> are running is useful, so I can assess how wide spread the unhappiness
> is going to be, and what mitigation steps make sense.
> 
> 
> What mitigations steps can be taken?
> 
> If you believe in security-through-complexity (the cache architecture
> of x86 is *sooooo* complicated no one can understand it, so
> Jitterentropy / Haveged *must* be secure), or security-through-secrecy
> (the cache architecture of x86 is only avilable to internal architects
> inside Intel, so Jitterentropy / Haveged *must* be secure, never mind
> that the Intel CPU architects who were asked about it were "nervous"),
> then wiring up CONFIG_JITTERENTROPY or using haveged might be one
> approach.
> 
> If you believe that Intel hasn't backdoored RDRAND, then installing
> rng-tools and running rngd with --enable-drng will enable RDRAND.
> That seems to be popular with various defense contractors, perhaps on
> the assumption that if it _was_ backdoored (no one knows for sure), it
> was probably with the connivance or request of the US government, who
> doesn't need to worry about spying on itself.
> 
> Or you can use some kind of open hardware design RNG, such as
> ChoasKey[2] from Altus Metrum.  But that requires using specially
> ordered hardware plugged into a USB slot, and it's probably not a mass
> solution.
> 
> [2] https://altusmetrum.org/ChaosKey/
> 
> 
> Personally, I prefer fixing the software to simply not require
> cryptographic grade entropy before the user has logged in.  Because
> it's better than the alternatives.
> 
> 					- Ted
> 

The attached patch fixes my crng init woes. With it, crng init completes 0.86
seconds into boot, but I can't help but feel like a solution this obvious would
just expose my Richard Stallman photo collection to prying eyes at the NSA.

Thoughts on the patch?

Sultan

>From 597b0f2b3c986f853bf1d30a7fb9d76869e47fe8 Mon Sep 17 00:00:00 2001
From: Sultan Alsawaf <sultanxda@gmail.com>
Date: Sun, 29 Apr 2018 15:22:59 -0700
Subject: [PATCH] random: remove ratelimiting from add_interrupt_randomness()

---
 drivers/char/random.c | 7 -------
 1 file changed, 7 deletions(-)

diff --git a/drivers/char/random.c b/drivers/char/random.c
index 38729baed6ee..5b38277b104a 100644
--- a/drivers/char/random.c
+++ b/drivers/char/random.c
@@ -574,7 +574,6 @@ static void mix_pool_bytes(struct entropy_store *r, const void *in,
 
 struct fast_pool {
 	__u32		pool[4];
-	unsigned long	last;
 	unsigned short	reg_idx;
 	unsigned char	count;
 };
@@ -1195,20 +1194,14 @@ void add_interrupt_randomness(int irq, int irq_flags)
 		    crng_fast_load((char *) fast_pool->pool,
 				   sizeof(fast_pool->pool))) {
 			fast_pool->count = 0;
-			fast_pool->last = now;
 		}
 		return;
 	}
 
-	if ((fast_pool->count < 64) &&
-	    !time_after(now, fast_pool->last + HZ))
-		return;
-
 	r = &input_pool;
 	if (!spin_trylock(&r->lock))
 		return;
 
-	fast_pool->last = now;
 	__mix_pool_bytes(r, &fast_pool->pool, sizeof(fast_pool->pool));
 
 	/*
-- 
2.14.1

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

* Re: Linux messages full of `random: get_random_u32 called from`
  2018-04-29 22:05                           ` Theodore Y. Ts'o
  2018-04-29 22:26                             ` Sultan Alsawaf
@ 2018-04-29 22:43                             ` Pavel Machek
  2018-04-30  0:32                             ` Laura Abbott
  2018-04-30 21:12                             ` Jeremy Cline
  3 siblings, 0 replies; 65+ messages in thread
From: Pavel Machek @ 2018-04-29 22:43 UTC (permalink / raw)
  To: Theodore Y. Ts'o, Sultan Alsawaf, linux-kernel, Jann Horn

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

Hi!

> What would be useful is if people gave reports that listed exactly
> what laptop and distributions they are using.  Just "a high spec x86
> laptop" isn't terribly useful, because *my* brand-new Dell XPS 13
> running Debian testing is working just fine.  The year, model, make,
> and CPU type plus what distribution (and distro version number) you
> are running is useful, so I can assess how wide spread the unhappiness
> is going to be, and what mitigation steps make sense.

Thinkpad X60,
model name	: Genuine Intel(R) CPU           T2400  @ 1.83GHz
pavel@amd:~$ cat /etc/debian_version
8.10

I already posted some dmesg snippets, but system boots. On _this_
boot, it was ok, and I do not see anything:

pavel@amd:/data/l/linux-next-32$ dmesg | grep urandom
pavel@amd:/data/l/linux-next-32$

									Pavel
-- 
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 181 bytes --]

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

* Re: Linux messages full of `random: get_random_u32 called from`
  2018-04-29 22:26                             ` Sultan Alsawaf
@ 2018-04-29 22:43                               ` Jason A. Donenfeld
  2018-04-29 22:49                                 ` Sultan Alsawaf
  0 siblings, 1 reply; 65+ messages in thread
From: Jason A. Donenfeld @ 2018-04-29 22:43 UTC (permalink / raw)
  To: Sultan Alsawaf; +Cc: Theodore Y. Ts'o, Pavel Machek, LKML, Jann Horn

> -       if ((fast_pool->count < 64) &&
> -           !time_after(now, fast_pool->last + HZ))
> -               return;
> -

I suspect you still want the rate-limiting in place. But if you _do_
want to cheat like this, you could instead just modify the condition
to only relax the rate limiting when !crng_init().

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

* Re: Linux messages full of `random: get_random_u32 called from`
  2018-04-29 22:43                               ` Jason A. Donenfeld
@ 2018-04-29 22:49                                 ` Sultan Alsawaf
  2018-04-30  0:11                                   ` Theodore Y. Ts'o
  0 siblings, 1 reply; 65+ messages in thread
From: Sultan Alsawaf @ 2018-04-29 22:49 UTC (permalink / raw)
  To: Jason A. Donenfeld; +Cc: Theodore Y. Ts'o, Pavel Machek, LKML, Jann Horn

On Mon, Apr 30, 2018 at 12:43:48AM +0200, Jason A. Donenfeld wrote:
> > -       if ((fast_pool->count < 64) &&
> > -           !time_after(now, fast_pool->last + HZ))
> > -               return;
> > -
> 
> I suspect you still want the rate-limiting in place. But if you _do_
> want to cheat like this, you could instead just modify the condition
> to only relax the rate limiting when !crng_init().

Good idea. Attached a new patch that's less intrusive. It still fixes my issue,
of course.

Sultan

>From 6870b0383b88438d842599aa8608a260e6fb0ed2 Mon Sep 17 00:00:00 2001
From: Sultan Alsawaf <sultanxda@gmail.com>
Date: Sun, 29 Apr 2018 15:44:27 -0700
Subject: [PATCH] random: don't ratelimit add_interrupt_randomness() until crng
 is ready

---
 drivers/char/random.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/char/random.c b/drivers/char/random.c
index 38729baed6ee..8c00c008e797 100644
--- a/drivers/char/random.c
+++ b/drivers/char/random.c
@@ -1201,7 +1201,7 @@ void add_interrupt_randomness(int irq, int irq_flags)
 	}
 
 	if ((fast_pool->count < 64) &&
-	    !time_after(now, fast_pool->last + HZ))
+	    !time_after(now, fast_pool->last + HZ) && crng_ready())
 		return;
 
 	r = &input_pool;
-- 
2.14.1

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

* Re: Linux messages full of `random: get_random_u32 called from`
  2018-04-29 22:49                                 ` Sultan Alsawaf
@ 2018-04-30  0:11                                   ` Theodore Y. Ts'o
  2018-04-30  4:34                                     ` Sultan Alsawaf
  0 siblings, 1 reply; 65+ messages in thread
From: Theodore Y. Ts'o @ 2018-04-30  0:11 UTC (permalink / raw)
  To: Sultan Alsawaf; +Cc: Jason A. Donenfeld, Pavel Machek, LKML, Jann Horn

On Sun, Apr 29, 2018 at 03:49:28PM -0700, Sultan Alsawaf wrote:
> On Mon, Apr 30, 2018 at 12:43:48AM +0200, Jason A. Donenfeld wrote:
> > > -       if ((fast_pool->count < 64) &&
> > > -           !time_after(now, fast_pool->last + HZ))
> > > -               return;
> > > -
> > 
> > I suspect you still want the rate-limiting in place. But if you _do_
> > want to cheat like this, you could instead just modify the condition
> > to only relax the rate limiting when !crng_init().
> 
> Good idea. Attached a new patch that's less intrusive. It still fixes my issue,
> of course.

What your patch does is assume that there is a full bit of uncertainty
that can be obtained from the information gathered from each
interrupt.  I *might* be willing to assume that to be valid on x86
systems that have a high resolution cycle counter.  But on ARM
platforms, especially during system bootup when the user isn't typing
anything and SSD's and flash storage tend to have very predictable
timing patterns?  Not a bet I'd be willing to take.  Even with a cycle
counter, there's a reason why we assumed that we need to mix in timing
results from 64 interrupts or one second's worth before we would give
a single bit's worth of entropy credit.

							- Ted

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

* Re: Linux messages full of `random: get_random_u32 called from`
  2018-04-29 22:05                           ` Theodore Y. Ts'o
  2018-04-29 22:26                             ` Sultan Alsawaf
  2018-04-29 22:43                             ` Pavel Machek
@ 2018-04-30  0:32                             ` Laura Abbott
  2018-04-30 21:12                             ` Jeremy Cline
  3 siblings, 0 replies; 65+ messages in thread
From: Laura Abbott @ 2018-04-30  0:32 UTC (permalink / raw)
  To: Theodore Y. Ts'o, Sultan Alsawaf, Pavel Machek, linux-kernel,
	Jann Horn

On 04/29/2018 03:05 PM, Theodore Y. Ts'o wrote:
> What would be useful is if people gave reports that listed exactly
> what laptop and distributions they are using.  Just "a high spec x86
> laptop" isn't terribly useful, because*my*  brand-new Dell XPS 13
> running Debian testing is working just fine.  The year, model, make,
> and CPU type plus what distribution (and distro version number) you
> are running is useful, so I can assess how wide spread the unhappiness
> is going to be, and what mitigation steps make sense.

I'm pretty sure Fedora is hitting this in our VMs. I just spent some
time debugging an issue of a boot delay with someone from the
infrastructure team where it would take upwards of 2 minutes to boot.
If someone holds down a key, it boots in 4 seconds. There's a qemu
reproducer at https://bugzilla.redhat.com/show_bug.cgi?id=1572916#c3
I suggested a cat on the keyboard as a workaround.

Independently, we also got a report of a boot hang in GCE with 4.16.4
where as 4.16.3 works which corresponds to the previous report of a
stable regression. This was just via IRC so I didn't have time to
dig into this.

Thanks,
Laura

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

* Re: Linux messages full of `random: get_random_u32 called from`
  2018-04-30  0:11                                   ` Theodore Y. Ts'o
@ 2018-04-30  4:34                                     ` Sultan Alsawaf
  2018-04-30 16:11                                       ` Theodore Y. Ts'o
  0 siblings, 1 reply; 65+ messages in thread
From: Sultan Alsawaf @ 2018-04-30  4:34 UTC (permalink / raw)
  To: Theodore Y. Ts'o, Jason A. Donenfeld, Pavel Machek, LKML, Jann Horn

On Sun, Apr 29, 2018 at 08:11:07PM -0400, Theodore Y. Ts'o wrote:
>
> What your patch does is assume that there is a full bit of uncertainty
> that can be obtained from the information gathered from each
> interrupt.  I *might* be willing to assume that to be valid on x86
> systems that have a high resolution cycle counter.  But on ARM
> platforms, especially during system bootup when the user isn't typing
> anything and SSD's and flash storage tend to have very predictable
> timing patterns?  Not a bet I'd be willing to take.  Even with a cycle
> counter, there's a reason why we assumed that we need to mix in timing
> results from 64 interrupts or one second's worth before we would give
> a single bit's worth of entropy credit.
> 
> 							- Ted

What about abusing high-resolution timers to get entropy? Since hrtimers can't
make guarantees down to the nanosecond, there's always a skew between the
requested expiry time and the actual expiry time.

Please see the attached patch and let me know just how horrible it is.

Sultan

>From b0d21c38558c661531d4cb46816fbb36b874a169 Mon Sep 17 00:00:00 2001
From: Sultan Alsawaf <sultanxda@gmail.com>
Date: Sun, 29 Apr 2018 21:28:08 -0700
Subject: [PATCH] random: use high-res timers to generate entropy until crng
 init is done

---
 drivers/char/random.c | 47 +++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 47 insertions(+)

diff --git a/drivers/char/random.c b/drivers/char/random.c
index d9e38523b383..af2d60bbcec3 100644
--- a/drivers/char/random.c
+++ b/drivers/char/random.c
@@ -286,6 +286,7 @@
 #define OUTPUT_POOL_WORDS	(1 << (OUTPUT_POOL_SHIFT-5))
 #define SEC_XFER_SIZE		512
 #define EXTRACT_SIZE		10
+#define ENTROPY_GEN_INTVL_NS	(1 * NSEC_PER_MSEC)
 
 
 #define LONGS(x) (((x) + sizeof(unsigned long) - 1)/sizeof(unsigned long))
@@ -408,6 +409,8 @@ static struct fasync_struct *fasync;
 static DEFINE_SPINLOCK(random_ready_list_lock);
 static LIST_HEAD(random_ready_list);
 
+static struct hrtimer entropy_gen_hrtimer;
+
 struct crng_state {
 	__u32		state[16];
 	unsigned long	init_time;
@@ -2287,3 +2290,47 @@ void add_hwgenerator_randomness(const char *buffer, size_t count,
 	credit_entropy_bits(poolp, entropy);
 }
 EXPORT_SYMBOL_GPL(add_hwgenerator_randomness);
+
+/*
+ * Generate entropy on init using high-res timers. Although high-res timers
+ * provide nanosecond precision, they don't actually honor requests to the
+ * nanosecond. The skew between the expected time difference in nanoseconds and
+ * the actual time difference can be used as a way to generate entropy on boot
+ * for machines that lack sufficient boot-time entropy.
+ */
+static enum hrtimer_restart entropy_timer_cb(struct hrtimer *timer)
+{
+	static u64 prev_ns;
+	u64 curr_ns, delta;
+
+	if (crng_ready())
+		return HRTIMER_NORESTART;
+
+	curr_ns = ktime_get_mono_fast_ns();
+	delta = curr_ns - prev_ns;
+
+	add_interrupt_randomness(delta);
+
+	/* Use the hrtimer skew to make the next interval more unpredictable */
+	if (likely(prev_ns))
+		hrtimer_add_expires_ns(timer, delta);
+	else
+		hrtimer_add_expires_ns(timer, ENTROPY_GEN_INTVL_NS);
+
+	prev_ns = curr_ns;
+	return HRTIMER_RESTART;
+}
+
+static int entropy_gen_hrtimer_init(void)
+{
+	if (!IS_ENABLED(CONFIG_HIGH_RES_TIMERS))
+		return 0;
+
+	hrtimer_init(&entropy_gen_hrtimer, CLOCK_MONOTONIC, HRTIMER_MODE_REL);
+
+	entropy_gen_hrtimer.function = entropy_timer_cb;
+	hrtimer_start(&entropy_gen_hrtimer, ns_to_ktime(ENTROPY_GEN_INTVL_NS),
+		HRTIMER_MODE_REL);
+	return 0;
+}
+core_initcall(entropy_gen_hrtimer_init);
-- 
2.14.1

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

* Re: Linux messages full of `random: get_random_u32 called from`
  2018-04-30  4:34                                     ` Sultan Alsawaf
@ 2018-04-30 16:11                                       ` Theodore Y. Ts'o
  2018-05-01 19:53                                         ` Pavel Machek
  0 siblings, 1 reply; 65+ messages in thread
From: Theodore Y. Ts'o @ 2018-04-30 16:11 UTC (permalink / raw)
  To: Sultan Alsawaf; +Cc: Jason A. Donenfeld, Pavel Machek, LKML, Jann Horn

On Sun, Apr 29, 2018 at 09:34:45PM -0700, Sultan Alsawaf wrote:
> 
> What about abusing high-resolution timers to get entropy? Since hrtimers can't
> make guarantees down to the nanosecond, there's always a skew between the
> requested expiry time and the actual expiry time.
> 
> Please see the attached patch and let me know just how horrible it is.

So think about exactly where the possible causes of the skew might be
coming from.  Look very closely at the software implemntation.  The
important thing here is to not get hung up on the software
abstraction, but to look at the *implementation*.  (And if it's an
implementation in architecture specific code, we need to look at all
architectures.)

This applies on the hardware level as hard, but that gets harder
because there many possible hardware implemntations in use out there.
Remember that that on many systems there may be only single clock
crystal, and all other hardware timers maybe derived from that clock
using frequency dividers.  (At least for everything on the mainboard.)

      			       	     	 	    - Ted

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

* Re: Linux messages full of `random: get_random_u32 called from`
  2018-04-29 22:05                           ` Theodore Y. Ts'o
                                               ` (2 preceding siblings ...)
  2018-04-30  0:32                             ` Laura Abbott
@ 2018-04-30 21:12                             ` Jeremy Cline
  2018-05-01 11:52                               ` Justin Forbes
  3 siblings, 1 reply; 65+ messages in thread
From: Jeremy Cline @ 2018-04-30 21:12 UTC (permalink / raw)
  To: Theodore Y. Ts'o, Sultan Alsawaf, Pavel Machek, linux-kernel,
	Jann Horn

On 04/29/2018 06:05 PM, Theodore Y. Ts'o wrote:
> On Sun, Apr 29, 2018 at 01:20:33PM -0700, Sultan Alsawaf wrote:
>> On Sun, Apr 29, 2018 at 08:41:01PM +0200, Pavel Machek wrote:
>>> Umm. No. https://www.youtube.com/watch?v=xneBjc8z0DE
>>
>> Okay, but /dev/urandom isn't a solution to this problem because it isn't usable
>> until crng init is complete, so it suffers from the same init lag as
>> /dev/random.
> 
> It's more accurate to say that using /dev/urandom is no worse than
> before (from a few years ago).  There are, alas, plenty of
> distributions and user space application programmers that basically
> got lazy using /dev/urandom, and assumed that there would be plenty of
> entropy during early system startup.
> 
> When they switched over the getrandom(2), the most egregious examples
> of this caused pain (and they got fixed), but due to a bug in
> drivers/char/random.c, if getrandom(2) was called after the entropy
> pool was "half initialized", it would not block, but proceed.
> 
> Is that exploitable?  Well, Jann and I didn't find an _obvious_ way to
> exploit the short coming, which is this wasn't treated like an
> emergency situation ala the embarassing situation we had five years
> ago[1].
> 
> [1] https://factorable.net/paper.html
> 
> However, it was enough to make us be uncomfortable, which is why I
> pushed the changes that I did.  At least on the devices we had at
> hand, using the distributions that we typically use, the impact seemed
> minimal.  Unfortuantely, there is no way to know for sure without
> rolling out change and seeing who screams.  In the ideal world,
> software would not require cryptographic randomness immediately after
> boot, before the user logs in.  And ***really***, as in [1], softwaret
> should not be generating long-term public keys that are essential to
> the security of the box a few seconds immediately after the device is
> first unboxed and plugged in.i
> 
> What would be useful is if people gave reports that listed exactly
> what laptop and distributions they are using.  Just "a high spec x86
> laptop" isn't terribly useful, because *my* brand-new Dell XPS 13
> running Debian testing is working just fine.  The year, model, make,
> and CPU type plus what distribution (and distro version number) you
> are running is useful, so I can assess how wide spread the unhappiness
> is going to be, and what mitigation steps make sense.

Fedora has started seeing some bug reports on this for Fedora 27[0] and
I've asked reporters to include their hardware details.

[0] https://bugzilla.redhat.com/show_bug.cgi?id=1572944


Regards,
Jeremy

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

* Re: Linux messages full of `random: get_random_u32 called from`
  2018-04-30 21:12                             ` Jeremy Cline
@ 2018-05-01 11:52                               ` Justin Forbes
  2018-05-01 12:55                                 ` Theodore Y. Ts'o
  0 siblings, 1 reply; 65+ messages in thread
From: Justin Forbes @ 2018-05-01 11:52 UTC (permalink / raw)
  To: Jeremy Cline
  Cc: Theodore Y. Ts'o, Sultan Alsawaf, Pavel Machek, LKML, Jann Horn

On Mon, Apr 30, 2018 at 4:12 PM, Jeremy Cline <jeremy@jcline.org> wrote:
> On 04/29/2018 06:05 PM, Theodore Y. Ts'o wrote:
>> On Sun, Apr 29, 2018 at 01:20:33PM -0700, Sultan Alsawaf wrote:
>>> On Sun, Apr 29, 2018 at 08:41:01PM +0200, Pavel Machek wrote:
>>>> Umm. No. https://www.youtube.com/watch?v=xneBjc8z0DE
>>>
>>> Okay, but /dev/urandom isn't a solution to this problem because it isn't usable
>>> until crng init is complete, so it suffers from the same init lag as
>>> /dev/random.
>>
>> It's more accurate to say that using /dev/urandom is no worse than
>> before (from a few years ago).  There are, alas, plenty of
>> distributions and user space application programmers that basically
>> got lazy using /dev/urandom, and assumed that there would be plenty of
>> entropy during early system startup.
>>
>> When they switched over the getrandom(2), the most egregious examples
>> of this caused pain (and they got fixed), but due to a bug in
>> drivers/char/random.c, if getrandom(2) was called after the entropy
>> pool was "half initialized", it would not block, but proceed.
>>
>> Is that exploitable?  Well, Jann and I didn't find an _obvious_ way to
>> exploit the short coming, which is this wasn't treated like an
>> emergency situation ala the embarassing situation we had five years
>> ago[1].
>>
>> [1] https://factorable.net/paper.html
>>
>> However, it was enough to make us be uncomfortable, which is why I
>> pushed the changes that I did.  At least on the devices we had at
>> hand, using the distributions that we typically use, the impact seemed
>> minimal.  Unfortuantely, there is no way to know for sure without
>> rolling out change and seeing who screams.  In the ideal world,
>> software would not require cryptographic randomness immediately after
>> boot, before the user logs in.  And ***really***, as in [1], softwaret
>> should not be generating long-term public keys that are essential to
>> the security of the box a few seconds immediately after the device is
>> first unboxed and plugged in.i
>>
>> What would be useful is if people gave reports that listed exactly
>> what laptop and distributions they are using.  Just "a high spec x86
>> laptop" isn't terribly useful, because *my* brand-new Dell XPS 13
>> running Debian testing is working just fine.  The year, model, make,
>> and CPU type plus what distribution (and distro version number) you
>> are running is useful, so I can assess how wide spread the unhappiness
>> is going to be, and what mitigation steps make sense.
>
> Fedora has started seeing some bug reports on this for Fedora 27[0] and
> I've asked reporters to include their hardware details.
>
> [0] https://bugzilla.redhat.com/show_bug.cgi?id=1572944
>

We have also had reports that Fedora users are seeing this on Google
Compute Engine.

Justin

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

* Re: Linux messages full of `random: get_random_u32 called from`
  2018-05-01 11:52                               ` Justin Forbes
@ 2018-05-01 12:55                                 ` Theodore Y. Ts'o
  2018-05-01 22:35                                   ` Justin Forbes
  0 siblings, 1 reply; 65+ messages in thread
From: Theodore Y. Ts'o @ 2018-05-01 12:55 UTC (permalink / raw)
  To: Justin Forbes; +Cc: Jeremy Cline, Sultan Alsawaf, Pavel Machek, LKML, Jann Horn

On Tue, May 01, 2018 at 06:52:47AM -0500, Justin Forbes wrote:
> 
> We have also had reports that Fedora users are seeing this on Google
> Compute Engine.

Can you reproduce this yourself?  If so, could you confirm that
removing the dracut-fips package makes the problem go away for you?

Thanks,

					- Ted

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

* Re: Linux messages full of `random: get_random_u32 called from`
  2018-04-30 16:11                                       ` Theodore Y. Ts'o
@ 2018-05-01 19:53                                         ` Pavel Machek
  0 siblings, 0 replies; 65+ messages in thread
From: Pavel Machek @ 2018-05-01 19:53 UTC (permalink / raw)
  To: Theodore Y. Ts'o, Sultan Alsawaf, Jason A. Donenfeld, LKML,
	Jann Horn

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

On Mon 2018-04-30 12:11:43, Theodore Y. Ts'o wrote:
> On Sun, Apr 29, 2018 at 09:34:45PM -0700, Sultan Alsawaf wrote:
> > 
> > What about abusing high-resolution timers to get entropy? Since hrtimers can't
> > make guarantees down to the nanosecond, there's always a skew between the
> > requested expiry time and the actual expiry time.
> > 
> > Please see the attached patch and let me know just how horrible it is.
> 
> So think about exactly where the possible causes of the skew might be
> coming from.  Look very closely at the software implemntation.  The
> important thing here is to not get hung up on the software
> abstraction, but to look at the *implementation*.  (And if it's an
> implementation in architecture specific code, we need to look at all
> architectures.)
> 
> This applies on the hardware level as hard, but that gets harder
> because there many possible hardware implemntations in use out there.
> Remember that that on many systems there may be only single clock
> crystal, and all other hardware timers maybe derived from that clock
> using frequency dividers.  (At least for everything on the mainboard.)

On "many" systems? No, sorry, computers usually do not behave like
this (CMOS RTC has separate clock, for example). I'm pretty sure that
not a single machine problems were reported on has this problem.

									Pavel
-- 
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 181 bytes --]

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

* Re: Linux messages full of `random: get_random_u32 called from`
  2018-05-01 12:55                                 ` Theodore Y. Ts'o
@ 2018-05-01 22:35                                   ` Justin Forbes
  2018-05-02  0:02                                     ` Theodore Y. Ts'o
  2018-05-02  0:43                                     ` Sultan Alsawaf
  0 siblings, 2 replies; 65+ messages in thread
From: Justin Forbes @ 2018-05-01 22:35 UTC (permalink / raw)
  To: Theodore Y. Ts'o, Justin Forbes, Jeremy Cline,
	Sultan Alsawaf, Pavel Machek, LKML, Jann Horn

On Tue, May 1, 2018 at 7:55 AM, Theodore Y. Ts'o <tytso@mit.edu> wrote:
> On Tue, May 01, 2018 at 06:52:47AM -0500, Justin Forbes wrote:
>>
>> We have also had reports that Fedora users are seeing this on Google
>> Compute Engine.
>
> Can you reproduce this yourself?  If so, could you confirm that
> removing the dracut-fips package makes the problem go away for you?
>

I have not reproduced in GCE myself.  We did get some confirmation
that removing dracut-fips does make the problem less dire (but I
wouldn't call a 4 minute boot a win, but booting in 4 minutes is
better than not booting at all).  Specifically systemd calls libgcrypt
before it even opens the log with fips there, and this is before
virtio-rng modules could even load. Right now though, we are looking
at pretty much any possible options as the majority of people are
calling for me to backout the patches completely from rawhide.

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

* Re: Linux messages full of `random: get_random_u32 called from`
  2018-05-01 22:35                                   ` Justin Forbes
@ 2018-05-02  0:02                                     ` Theodore Y. Ts'o
  2018-05-02 12:09                                       ` Justin Forbes
  2018-05-02  0:43                                     ` Sultan Alsawaf
  1 sibling, 1 reply; 65+ messages in thread
From: Theodore Y. Ts'o @ 2018-05-02  0:02 UTC (permalink / raw)
  To: Justin Forbes; +Cc: Jeremy Cline, Sultan Alsawaf, Pavel Machek, LKML, Jann Horn

On Tue, May 01, 2018 at 05:35:56PM -0500, Justin Forbes wrote:
> 
> I have not reproduced in GCE myself.  We did get some confirmation
> that removing dracut-fips does make the problem less dire (but I
> wouldn't call a 4 minute boot a win, but booting in 4 minutes is
> better than not booting at all).  Specifically systemd calls libgcrypt
> before it even opens the log with fips there, and this is before
> virtio-rng modules could even load. Right now though, we are looking
> at pretty much any possible options as the majority of people are
> calling for me to backout the patches completely from rawhide.

FWIW, Debian Testing is using systemd 238, and from what I can tell
it's calling libgcrypt and it has the same (as near as I can tell)
totally pointless hmac nonsense, and it's not a problem that I can
see.  Of course, Debian and Fedora may have a different set of
patches....

	       	   	      	     - Ted

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

* Re: Linux messages full of `random: get_random_u32 called from`
  2018-05-01 22:35                                   ` Justin Forbes
  2018-05-02  0:02                                     ` Theodore Y. Ts'o
@ 2018-05-02  0:43                                     ` Sultan Alsawaf
  2018-05-02  0:56                                       ` Theodore Y. Ts'o
  1 sibling, 1 reply; 65+ messages in thread
From: Sultan Alsawaf @ 2018-05-02  0:43 UTC (permalink / raw)
  To: Justin Forbes
  Cc: Theodore Y. Ts'o, Jeremy Cline, Pavel Machek, LKML, Jann Horn

On Tue, May 01, 2018 at 05:35:56PM -0500, Justin Forbes wrote:
> 
> I have not reproduced in GCE myself.  We did get some confirmation
> that removing dracut-fips does make the problem less dire (but I
> wouldn't call a 4 minute boot a win, but booting in 4 minutes is
> better than not booting at all).  Specifically systemd calls libgcrypt
> before it even opens the log with fips there, and this is before
> virtio-rng modules could even load. Right now though, we are looking
> at pretty much any possible options as the majority of people are
> calling for me to backout the patches completely from rawhide.

I've attached what I think is a reasonable stopgap solution until this is
actually fixed. If you're willing to revert the CVE-2018-1108 patches
completely, then I don't think you'll mind using this patch in the meantime.

Sultan

>From 5be2efdde744d3c55db3df81c0493fc67dc35620 Mon Sep 17 00:00:00 2001
From: Sultan Alsawaf <sultanxda@gmail.com>
Date: Tue, 1 May 2018 17:36:17 -0700
Subject: [PATCH] random: use urandom instead of random for now and speed up
 crng init

With the fixes for CVE-2018-1108, /dev/random now requires user-provided
entropy on quite a few machines lacking high levels of boot entropy
in order to complete its initialization. This causes issues on environments
where userspace depends on /dev/random in order to finish booting
completely (i.e., userspace will remain stuck, unable to boot, waiting for
entropy more-or-less indefinitely until the user provides it via something
like keystrokes or mouse movements).

As a temporary workaround, redirect /dev/random to /dev/urandom instead,
and speed up the initialization process by slightly relaxing the
threshold for interrupts to go towards adding one bit of entropy credit
(only until initialization is complete).

Signed-off-by: Sultan Alsawaf <sultanxda@gmail.com>
---
 drivers/char/mem.c    | 3 ++-
 drivers/char/random.c | 9 ++++++---
 2 files changed, 8 insertions(+), 4 deletions(-)

diff --git a/drivers/char/mem.c b/drivers/char/mem.c
index ffeb60d3434c..cc9507f01c79 100644
--- a/drivers/char/mem.c
+++ b/drivers/char/mem.c
@@ -870,7 +870,8 @@ static const struct memdev {
 #endif
 	 [5] = { "zero", 0666, &zero_fops, 0 },
 	 [7] = { "full", 0666, &full_fops, 0 },
-	 [8] = { "random", 0666, &random_fops, 0 },
+	 /* Redirect /dev/random to /dev/urandom until /dev/random is fixed */
+	 [8] = { "random", 0666, &urandom_fops, 0 },
 	 [9] = { "urandom", 0666, &urandom_fops, 0 },
 #ifdef CONFIG_PRINTK
 	[11] = { "kmsg", 0644, &kmsg_fops, 0 },
diff --git a/drivers/char/random.c b/drivers/char/random.c
index d9e38523b383..bce3b43cdd3b 100644
--- a/drivers/char/random.c
+++ b/drivers/char/random.c
@@ -1200,9 +1200,12 @@ void add_interrupt_randomness(int irq)
 		return;
 	}
 
-	if ((fast_pool->count < 64) &&
-	    !time_after(now, fast_pool->last + HZ))
-		return;
+	if (fast_pool->count < 64) {
+		unsigned long timeout = crng_ready() ? HZ : HZ / 4;
+
+		if (!time_after(now, fast_pool->last + timeout))
+			return;
+	}
 
 	r = &input_pool;
 	if (!spin_trylock(&r->lock))
-- 
2.14.1

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

* Re: Linux messages full of `random: get_random_u32 called from`
  2018-05-02  0:43                                     ` Sultan Alsawaf
@ 2018-05-02  0:56                                       ` Theodore Y. Ts'o
  2018-05-02  1:11                                         ` Sultan Alsawaf
  0 siblings, 1 reply; 65+ messages in thread
From: Theodore Y. Ts'o @ 2018-05-02  0:56 UTC (permalink / raw)
  To: Sultan Alsawaf; +Cc: Justin Forbes, Jeremy Cline, Pavel Machek, LKML, Jann Horn

On Tue, May 01, 2018 at 05:43:17PM -0700, Sultan Alsawaf wrote:
> 
> I've attached what I think is a reasonable stopgap solution until this is
> actually fixed. If you're willing to revert the CVE-2018-1108 patches
> completely, then I don't think you'll mind using this patch in the meantime.

I would put it slightly differently; reverting the CVE-2018-1108
patches is less dangerous than what you are proposing in your attached
patch.

Again, I think the right answer is to fix userspace to not require
cryptographic grade entropy during early system startup, and for
people to *think* about what they are doing.  I've looked at the
systemd's use of hmac in journal-authenticate, and as near as I can
tell, there isn't any kind of explanation about why it was necessary,
or what threat it was trying to protect against.

						- Ted

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

* Re: Linux messages full of `random: get_random_u32 called from`
  2018-05-02  0:56                                       ` Theodore Y. Ts'o
@ 2018-05-02  1:11                                         ` Sultan Alsawaf
  0 siblings, 0 replies; 65+ messages in thread
From: Sultan Alsawaf @ 2018-05-02  1:11 UTC (permalink / raw)
  To: Theodore Y. Ts'o, Justin Forbes, Jeremy Cline, Pavel Machek,
	LKML, Jann Horn

On Tue, May 01, 2018 at 08:56:04PM -0400, Theodore Y. Ts'o wrote:
> On Tue, May 01, 2018 at 05:43:17PM -0700, Sultan Alsawaf wrote:
> > 
> > I've attached what I think is a reasonable stopgap solution until this is
> > actually fixed. If you're willing to revert the CVE-2018-1108 patches
> > completely, then I don't think you'll mind using this patch in the meantime.
> 
> I would put it slightly differently; reverting the CVE-2018-1108
> patches is less dangerous than what you are proposing in your attached
> patch.
> 
> Again, I think the right answer is to fix userspace to not require
> cryptographic grade entropy during early system startup, and for
> people to *think* about what they are doing.  I've looked at the
> systemd's use of hmac in journal-authenticate, and as near as I can
> tell, there isn't any kind of explanation about why it was necessary,
> or what threat it was trying to protect against.
> 
> 						- Ted

Why is /dev/urandom so much more dangerous than /dev/random? The
more I search, the more I see that many sources consider /dev/urandom
to be cryptographically secure... and since I hold down a single key on
the keyboard to make my computer boot without any kernel workarounds,
I'm sure the NSA would eventually notice my predictable behavior and get
their hands on my Richard Stallman photos.

Fixing all the "broken" userspace instances of entropy usage during early
system startup is a tall order. What about barebone machines used as
remote servers? I feel like just "fixing userspace" isn't going to cover
all of the usecases that the CVE-2018-1108 patches broke.

Sultan

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

* Re: Linux messages full of `random: get_random_u32 called from`
  2018-05-02  0:02                                     ` Theodore Y. Ts'o
@ 2018-05-02 12:09                                       ` Justin Forbes
  2018-05-02 16:26                                         ` Theodore Y. Ts'o
  0 siblings, 1 reply; 65+ messages in thread
From: Justin Forbes @ 2018-05-02 12:09 UTC (permalink / raw)
  To: Theodore Y. Ts'o, Justin Forbes, Jeremy Cline,
	Sultan Alsawaf, Pavel Machek, LKML, Jann Horn

On Tue, May 1, 2018 at 7:02 PM, Theodore Y. Ts'o <tytso@mit.edu> wrote:
> On Tue, May 01, 2018 at 05:35:56PM -0500, Justin Forbes wrote:
>>
>> I have not reproduced in GCE myself.  We did get some confirmation
>> that removing dracut-fips does make the problem less dire (but I
>> wouldn't call a 4 minute boot a win, but booting in 4 minutes is
>> better than not booting at all).  Specifically systemd calls libgcrypt
>> before it even opens the log with fips there, and this is before
>> virtio-rng modules could even load. Right now though, we are looking
>> at pretty much any possible options as the majority of people are
>> calling for me to backout the patches completely from rawhide.
>
> FWIW, Debian Testing is using systemd 238, and from what I can tell
> it's calling libgcrypt and it has the same (as near as I can tell)
> totally pointless hmac nonsense, and it's not a problem that I can
> see.  Of course, Debian and Fedora may have a different set of
> patches....
>
Yes, Fedora libgcrypt is carrying a patch which makes it particularly
painful for us, we have reached out to the libgcrypt maintainer to
follow up on that end. But as I said before, even without that code
path (no dracut-fips) we are seeing some instances of 4 minute boots.
This is not really a workable user experience.  And are you sure that
every cloud platform and VM platform offers, makes it possible to
config virtio-rng?

Justin

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

* Re: Linux messages full of `random: get_random_u32 called from`
  2018-05-02 12:09                                       ` Justin Forbes
@ 2018-05-02 16:26                                         ` Theodore Y. Ts'o
  2018-05-02 17:49                                           ` Laura Abbott
  0 siblings, 1 reply; 65+ messages in thread
From: Theodore Y. Ts'o @ 2018-05-02 16:26 UTC (permalink / raw)
  To: Justin Forbes; +Cc: Jeremy Cline, Sultan Alsawaf, Pavel Machek, LKML, Jann Horn

On Wed, May 02, 2018 at 07:09:11AM -0500, Justin Forbes wrote:
> Yes, Fedora libgcrypt is carrying a patch which makes it particularly
> painful for us, we have reached out to the libgcrypt maintainer to
> follow up on that end. But as I said before, even without that code
> path (no dracut-fips) we are seeing some instances of 4 minute boots.
> This is not really a workable user experience.  And are you sure that
> every cloud platform and VM platform offers, makes it possible to
> config virtio-rng?

Unfortunately, the answer is no.  Google Compute Engine, alas, does
not currently support virtio-rng.  With my Google hat on, I can't
comment on future product features.  With my upstream developer hat
on, I'll give you three guesses what I have been advocating and
pushing for internally, and the first two don't count.  :-)

That being said, I just booted a Debian 9 (Stable, aka Stretch)
standard kernel, and then installed 4.17-rc3 (which has the
CVE-2018-1108 patches).  The crng_init=2 message doesn't appear
immediately, and it does appear quite a bit later comapred to
the standard 4.9.0-6-amd64 Debian 9 kernel.  However, the lack of a
fully initialized random pool doesn't prevent the standard Debian 9
image from booting:

May  2 15:33:42 localhost kernel: [    0.000000] Linux version 4.17.0-rc3-xfstests (tytso@cwcc) (gcc version 7.3.0 (Debian 7.3.0-16)) #169 SMP Wed May 2 11:28:17 EDT 2018
May  2 15:33:42 localhost kernel: [    1.456883] random: fast init done
May  2 15:33:46 rng-testing systemd[1]: Startup finished in 3.202s (kernel) + 5.963s (userspace) = 9.166s.
May  2 15:33:46 rng-testing google-accounts: INFO Starting Google Accounts daemon.
May  2 15:44:39 rng-testing kernel: [  661.436664] random: crng init done

So it really does appear to be something going on with Fedora's
userspace; can you help try to track down what it is?

Thanks,

						- Ted

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

* Re: Linux messages full of `random: get_random_u32 called from`
  2018-05-02 16:26                                         ` Theodore Y. Ts'o
@ 2018-05-02 17:49                                           ` Laura Abbott
  2018-05-02 22:25                                             ` Theodore Y. Ts'o
  0 siblings, 1 reply; 65+ messages in thread
From: Laura Abbott @ 2018-05-02 17:49 UTC (permalink / raw)
  To: Theodore Y. Ts'o, Justin Forbes, Jeremy Cline,
	Sultan Alsawaf, Pavel Machek, LKML, Jann Horn

On 05/02/2018 09:26 AM, Theodore Y. Ts'o wrote:
> On Wed, May 02, 2018 at 07:09:11AM -0500, Justin Forbes wrote:
>> Yes, Fedora libgcrypt is carrying a patch which makes it particularly
>> painful for us, we have reached out to the libgcrypt maintainer to
>> follow up on that end. But as I said before, even without that code
>> path (no dracut-fips) we are seeing some instances of 4 minute boots.
>> This is not really a workable user experience.  And are you sure that
>> every cloud platform and VM platform offers, makes it possible to
>> config virtio-rng?
> 
> Unfortunately, the answer is no.  Google Compute Engine, alas, does
> not currently support virtio-rng.  With my Google hat on, I can't
> comment on future product features.  With my upstream developer hat
> on, I'll give you three guesses what I have been advocating and
> pushing for internally, and the first two don't count.  :-)
> 
> That being said, I just booted a Debian 9 (Stable, aka Stretch)
> standard kernel, and then installed 4.17-rc3 (which has the
> CVE-2018-1108 patches).  The crng_init=2 message doesn't appear
> immediately, and it does appear quite a bit later comapred to
> the standard 4.9.0-6-amd64 Debian 9 kernel.  However, the lack of a
> fully initialized random pool doesn't prevent the standard Debian 9
> image from booting:
> 
> May  2 15:33:42 localhost kernel: [    0.000000] Linux version 4.17.0-rc3-xfstests (tytso@cwcc) (gcc version 7.3.0 (Debian 7.3.0-16)) #169 SMP Wed May 2 11:28:17 EDT 2018
> May  2 15:33:42 localhost kernel: [    1.456883] random: fast init done
> May  2 15:33:46 rng-testing systemd[1]: Startup finished in 3.202s (kernel) + 5.963s (userspace) = 9.166s.
> May  2 15:33:46 rng-testing google-accounts: INFO Starting Google Accounts daemon.
> May  2 15:44:39 rng-testing kernel: [  661.436664] random: crng init done
> 
> So it really does appear to be something going on with Fedora's
> userspace; can you help try to track down what it is?
> 
> Thanks,
> 
> 						- Ted
> 

It is a Fedora patch we're carrying
https://src.fedoraproject.org/rpms/libgcrypt/blob/master/f/libgcrypt-1.6.2-fips-ctor.patch#_23
so yes, it is a Fedora specific use case.
 From talking to the libgcrypt team, this is a FIPS mode requirement
to run power on self test at the library constructor and the self
test of libgrcypt ends up requiring a fully seeded RNG. Citation
is in section 9.10 of
https://csrc.nist.gov/CSRC/media/Projects/Cryptographic-Module-Validation-Program/documents/fips140-2/FIPS1402IG.pdf

The response was this _could_ be fixed in libgcrypt but it needs
to be done carefully to ensure nothing actually gets broken. So in
the mean time we're stuck with userspace getting blocked whenever
some program decides to use libgcrypt too early.

Thanks,
Laura

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

* Re: Linux messages full of `random: get_random_u32 called from`
  2018-05-02 17:49                                           ` Laura Abbott
@ 2018-05-02 22:25                                             ` Theodore Y. Ts'o
  2018-05-03  6:19                                               ` Pavel Machek
  2018-05-03 12:23                                               ` Justin Forbes
  0 siblings, 2 replies; 65+ messages in thread
From: Theodore Y. Ts'o @ 2018-05-02 22:25 UTC (permalink / raw)
  To: Laura Abbott
  Cc: Justin Forbes, Jeremy Cline, Sultan Alsawaf, Pavel Machek, LKML,
	Jann Horn

On Wed, May 02, 2018 at 10:49:34AM -0700, Laura Abbott wrote:
> 
> It is a Fedora patch we're carrying
> https://src.fedoraproject.org/rpms/libgcrypt/blob/master/f/libgcrypt-1.6.2-fips-ctor.patch#_23
> so yes, it is a Fedora specific use case.
> From talking to the libgcrypt team, this is a FIPS mode requirement
> to run power on self test at the library constructor and the self
> test of libgrcypt ends up requiring a fully seeded RNG. Citation
> is in section 9.10 of
> https://csrc.nist.gov/CSRC/media/Projects/Cryptographic-Module-Validation-Program/documents/fips140-2/FIPS1402IG.pdf

Forgive me if this is a stupid question, but does Fedora need FIPS
compliance?  Or is this something which is only required for RHEL?

("Here's to FIPS: the cause of, and solution to, all of Life's
problems."  :-)

	  	   		     - Ted

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

* Re: Linux messages full of `random: get_random_u32 called from`
  2018-05-02 22:25                                             ` Theodore Y. Ts'o
@ 2018-05-03  6:19                                               ` Pavel Machek
  2018-05-03 12:23                                               ` Justin Forbes
  1 sibling, 0 replies; 65+ messages in thread
From: Pavel Machek @ 2018-05-03  6:19 UTC (permalink / raw)
  To: Theodore Y. Ts'o, Laura Abbott, Justin Forbes, Jeremy Cline,
	Sultan Alsawaf, LKML, Jann Horn

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

On Wed 2018-05-02 18:25:22, Theodore Y. Ts'o wrote:
> On Wed, May 02, 2018 at 10:49:34AM -0700, Laura Abbott wrote:
> > 
> > It is a Fedora patch we're carrying
> > https://src.fedoraproject.org/rpms/libgcrypt/blob/master/f/libgcrypt-1.6.2-fips-ctor.patch#_23
> > so yes, it is a Fedora specific use case.
> > From talking to the libgcrypt team, this is a FIPS mode requirement
> > to run power on self test at the library constructor and the self
> > test of libgrcypt ends up requiring a fully seeded RNG. Citation
> > is in section 9.10 of
> > https://csrc.nist.gov/CSRC/media/Projects/Cryptographic-Module-Validation-Program/documents/fips140-2/FIPS1402IG.pdf
> 
> Forgive me if this is a stupid question, but does Fedora need FIPS
> compliance?  Or is this something which is only required for RHEL?

If RHEL needs it, Fedora needs it, too -- as Fedora is a beta test for
RHEL.

									Pavel
-- 
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 181 bytes --]

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

* Re: Linux messages full of `random: get_random_u32 called from`
  2018-05-02 22:25                                             ` Theodore Y. Ts'o
  2018-05-03  6:19                                               ` Pavel Machek
@ 2018-05-03 12:23                                               ` Justin Forbes
  1 sibling, 0 replies; 65+ messages in thread
From: Justin Forbes @ 2018-05-03 12:23 UTC (permalink / raw)
  To: Theodore Y. Ts'o, Laura Abbott, Justin Forbes, Jeremy Cline,
	Sultan Alsawaf, Pavel Machek, LKML, Jann Horn

On Wed, May 2, 2018 at 5:25 PM, Theodore Y. Ts'o <tytso@mit.edu> wrote:
> On Wed, May 02, 2018 at 10:49:34AM -0700, Laura Abbott wrote:
>>
>> It is a Fedora patch we're carrying
>> https://src.fedoraproject.org/rpms/libgcrypt/blob/master/f/libgcrypt-1.6.2-fips-ctor.patch#_23
>> so yes, it is a Fedora specific use case.
>> From talking to the libgcrypt team, this is a FIPS mode requirement
>> to run power on self test at the library constructor and the self
>> test of libgrcypt ends up requiring a fully seeded RNG. Citation
>> is in section 9.10 of
>> https://csrc.nist.gov/CSRC/media/Projects/Cryptographic-Module-Validation-Program/documents/fips140-2/FIPS1402IG.pdf
>
> Forgive me if this is a stupid question, but does Fedora need FIPS
> compliance?  Or is this something which is only required for RHEL?
>
> ("Here's to FIPS: the cause of, and solution to, all of Life's
> problems."  :-)
>
One of the advantages of carrying such things in Fedora is we find
these problems before RHEL does and hopefully there is a solution in
place before they ever even see it.

>From the rawhide end, I just brought in virtio-rng as inline vs
module, this works around the issue for lots of users, but not all.
GCE is still impacted, and a user came to complain about it already
last night.  And of course any other virt platform without virtio-rng,
or some hardware. Most hardware installs don't have dracut-fips so
they will boot, eventually.

Justin

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

* Re: Linux messages full of `random: get_random_u32 called from`
  2018-04-27 20:10                 ` Theodore Y. Ts'o
                                     ` (2 preceding siblings ...)
  2018-04-29 18:30                   ` Sultan Alsawaf
@ 2018-05-18  1:27                   ` Trent Piepho
  2018-05-18  2:32                     ` Theodore Y. Ts'o
  3 siblings, 1 reply; 65+ messages in thread
From: Trent Piepho @ 2018-05-18  1:27 UTC (permalink / raw)
  To: sultanxda, tytso; +Cc: jannh, linux-kernel

Since I wasn't on this thread from the start, I can only find a way to
reply to message in mbox format on patchwork, and this seemed the best.

On Fri, 2018-04-27 at 16:10 -0400, Theodore Tso wrote:
> 
> 
> This is why ultimately, we do need to attack this problem from both
> ends, which means teaching userspace programs to only request
> cryptographic-grade randomness when it is really needed --- and most
> of the time, if the user has not logged in yet, you probably don't
> need cryptographic-grade randomness....

I've hit this on an embedded system.  mke2fs hangs trying to format a
persistent writable filesystem, which is where the random seed to
initialize the kernel entropy pool would be stored, because it wants 16
bytes of non-cryptographic random data for a filesystem UUID, and util-
linux libuuid calls getrandom(16, 0) - no GRND_RANDOM flag - and this
hangs for over four minutes.

Some things I've seen here don't work in the embedded world.

The user will not log in.  No one logs in.  There are not even user
accounts with a valid password that could log in.

The storage comes pre-written with a static image from the manufacturer
or is programmed from a static image via JTAG or some other out of band
step.  It cannot be different from device to device when it first
boots.  No saved entropy.

The bootloader gets entropy from writable storage to give to the
kernel?  Can't do that.  The bootloader has no access to writable
storage.

I understand that if someone wants cryptographic-grade randomness early
in boot when that just isn't available and isn't going to be available,
then that isn't going to happen and lying to the consumer about the
randomness of the data isn't the answer.

But I just want UUIDs for a filesystem.  And the systemd machineid for
the journal file.  It seems the util-linux authors thought, apparently
incorrectly, that getrandom() without GRND_RANDOM was a good way to do
get it.

What is the right way?  The fact that so many userspace consumers get
it wrong might be a sign that this is lacking or at least very non-
obvious.

I want random data and I want it now.  It's ok if it's low entropy. 
This seems to be a very real, and unavoidable, thing in early boot. 
And crng_init == 1 seems to be the intended way to do this.  What's the
way to get random data of crng_init==1 quality without blocking?

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

* Re: Linux messages full of `random: get_random_u32 called from`
  2018-05-18  1:27                   ` Trent Piepho
@ 2018-05-18  2:32                     ` Theodore Y. Ts'o
  2018-05-18 22:56                       ` Trent Piepho
  0 siblings, 1 reply; 65+ messages in thread
From: Theodore Y. Ts'o @ 2018-05-18  2:32 UTC (permalink / raw)
  To: Trent Piepho; +Cc: sultanxda, jannh, linux-kernel

On Fri, May 18, 2018 at 01:27:03AM +0000, Trent Piepho wrote:
> 
> I've hit this on an embedded system.  mke2fs hangs trying to format a
> persistent writable filesystem, which is where the random seed to
> initialize the kernel entropy pool would be stored, because it wants 16
> bytes of non-cryptographic random data for a filesystem UUID, and util-
> linux libuuid calls getrandom(16, 0) - no GRND_RANDOM flag - and this
> hangs for over four minutes.

This is fixed in util-linux 2.32.  It ships with the following commits:

commit edc1c90cb972fdca1f66be5a8e2b0706bd2a4949
Author: Karel Zak <kzak@redhat.com>
Date:   Tue Mar 20 14:17:24 2018 +0100

    lib/randutils: don't break on EAGAIN, use usleep()
    
    The current code uses lose_counter to make more attempts to read
    random numbers. It seems better to wait a moment between attempts to
    avoid busy loop (we do the same in all-io.h).
    
    The worst case is 1 second delay for all random_get_bytes() on systems
    with uninitialized entropy pool -- for example you call sfdisk (MBR Id
    or GPT UUIDs) on very first boot, etc. In this case it will use libc
    rand() as a fallback solution.
    
    Note that we do not use random numbers for security sensitive things
    like keys or so. It's used for random based UUIDs etc.
    
    Addresses: https://github.com/karelzak/util-linux/pull/603
    Signed-off-by: Karel Zak <kzak@redhat.com>

commit a9cf659e0508c1f56813a7d74c64f67bbc962538
Author: Carlo Caione <carlo@endlessm.com>
Date:   Mon Mar 19 10:31:07 2018 +0000

    lib/randutils: Do not block on getrandom()
    
    In Endless we have hit a problem when using 'sfdisk' on the really first
    boot to automatically expand the rootfs partition. On this platform
    'sfdisk' is blocking on getrandom() because not enough random bytes are
    available. This is an ARM platform without a hwrng.
    
    We fix this passing GRND_NONBLOCK to getrandom(). 'sfdisk' will use the
    best entropy it has available and fallback only as necessary.
    
    Signed-off-by: Carlo Caione <carlo@endlessm.com>

Interestingly, these commits in util-linux landed *before* the patches
to address CVE-2018-1108 appeared in the kernel in April 2019.  This
was because the issue of libuuid was blocking on a handful of embedded
systems even for we made this change in Linux's random driver.  (It
just made this problem more likely to be visbile on a larger number of
systems; but it was always there.)

					- Ted

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

* Re: Linux messages full of `random: get_random_u32 called from`
  2018-05-18  2:32                     ` Theodore Y. Ts'o
@ 2018-05-18 22:56                       ` Trent Piepho
  2018-05-18 23:22                         ` Theodore Y. Ts'o
  0 siblings, 1 reply; 65+ messages in thread
From: Trent Piepho @ 2018-05-18 22:56 UTC (permalink / raw)
  To: tytso; +Cc: jannh, linux-kernel, sultanxda

On Thu, 2018-05-17 at 22:32 -0400, Theodore Y. Ts'o wrote:
> On Fri, May 18, 2018 at 01:27:03AM +0000, Trent Piepho wrote:
> > I've hit this on an embedded system.  mke2fs hangs trying to format a
> > persistent writable filesystem, which is where the random seed to
> > initialize the kernel entropy pool would be stored, because it wants 16
> > bytes of non-cryptographic random data for a filesystem UUID, and util-
> > linux libuuid calls getrandom(16, 0) - no GRND_RANDOM flag - and this
> > hangs for over four minutes.
> 
> This is fixed in util-linux 2.32.  It ships with the following commits:

I feel like "fix" might overstate the result a bit.

This ends up taking a full second to make each UUID.  Having gone to
great effort to make an iMX25 complete userspace startup in 250 ms, a
full second, per UUID, in early startup is pretty appalling.

Let's look at what we're doing after this fix:
Want non-cryptographic random data for UUID, ask kernel for it.
Kernel has non-cryptographic random data, won't give it to us.
Wait one second for cryptographic random data, which we didn't need.
Give up and create our own random data, which is non-cryptographic and
even worse than what the kernel could have given us from the start.

util-linux falls back to rand() seeded with the pid, uid, tv_sec, and
tv_usec from gettimeofday().  Pretty bad on an embedded system with no
RTC and worse than what the kernel in crng_init 1 state can give us.

What took microseconds now takes a seconds.  We have lower quality
random data than we had before.

Seems like two steps backward.  Can't we do better?

How about adding a flag to getrandom() that allows the kernel to return
low-quality data if high-quality data would require blocking?

It would seem to be a fact that there will be users of non-
cryptographic random data in early boot.  What is the best practice for
that?  To fall back to each user trying "to find randomly-looking
things on an 1990s Unix."  That doesn't seem good to me.  But what's
the better way?

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

* Re: Linux messages full of `random: get_random_u32 called from`
  2018-05-18 22:56                       ` Trent Piepho
@ 2018-05-18 23:22                         ` Theodore Y. Ts'o
  2018-05-21 18:39                           ` Trent Piepho
  0 siblings, 1 reply; 65+ messages in thread
From: Theodore Y. Ts'o @ 2018-05-18 23:22 UTC (permalink / raw)
  To: Trent Piepho; +Cc: jannh, linux-kernel, sultanxda

On Fri, May 18, 2018 at 10:56:18PM +0000, Trent Piepho wrote:
> 
> I feel like "fix" might overstate the result a bit.
> 
> This ends up taking a full second to make each UUID.  Having gone to
> great effort to make an iMX25 complete userspace startup in 250 ms, a
> full second, per UUID, in early startup is pretty appalling.
> 
> Let's look at what we're doing after this fix:
> Want non-cryptographic random data for UUID, ask kernel for it.
> Kernel has non-cryptographic random data, won't give it to us.
> Wait one second for cryptographic random data, which we didn't need.
> Give up and create our own random data, which is non-cryptographic and
> even worse than what the kernel could have given us from the start.
> 
> util-linux falls back to rand() seeded with the pid, uid, tv_sec, and
> tv_usec from gettimeofday().  Pretty bad on an embedded system with no
> RTC and worse than what the kernel in crng_init 1 state can give us.

So what util-linux's libuuid could do is fall back to using
/dev/urandom instead.  Whether or not you retry for a second before
you fall back to /dev/urandom really depends on how important the
second U in UUID ("unique") is to you.  If you use lower quality
randomness, you can potentially risk getting non-unique UUID's.

If you don't worry leaking your computer's identity and the time when
the UUID was generated, the application could also use the time-based
UUID's.  There are privacy implications for doing so, it's not
something we can do automatically (or at least I can't recommend it).
Also, if you don't have the clock sequence file and/or you don't have
a writable root, you might need some randomness anyway to protect
against non-monotonically increasing system time.

> It would seem to be a fact that there will be users of non-
> cryptographic random data in early boot.  What is the best practice for
> that?  To fall back to each user trying "to find randomly-looking
> things on an 1990s Unix."  That doesn't seem good to me.  But what's
> the better way?

We could add a new flag to getrandom(2), but application authors can
just as easily fall back to using /dev/urandom.  The real concern I
have is application authors that actually *really* need cryptographic
randomness, but they're too lazy to figure out a way to defer key
generation until the last possible moment.

There are other things we can do to add support in the bootloader to
read an entropy state file and inject it into the kernel alongside the
initrd and boot command line.  But that doesn't completely solve the
problem; you still have to deal with the "frest from the factory,
first time out of box" experience.  And if you have trusted random
number generation hardware, and are reasonably certain you don't have
to worry about a state-sponsored agency from intercepting hardware
shipments and gimmicking your hardware, that can be a solution as
well.

So there are things we can do to improve some of the scenarios.
Unfortunately, there is no silver bullet that will address all of
them.

					- Ted

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

* Re: Linux messages full of `random: get_random_u32 called from`
  2018-05-18 23:22                         ` Theodore Y. Ts'o
@ 2018-05-21 18:39                           ` Trent Piepho
  0 siblings, 0 replies; 65+ messages in thread
From: Trent Piepho @ 2018-05-21 18:39 UTC (permalink / raw)
  To: tytso; +Cc: jannh, linux-kernel, sultanxda

On Fri, 2018-05-18 at 19:22 -0400, Theodore Y. Ts'o wrote:
> On Fri, May 18, 2018 at 10:56:18PM +0000, Trent Piepho wrote:
> > 
> > Let's look at what we're doing after this fix:
> > Want non-cryptographic random data for UUID, ask kernel for it.
> > Kernel has non-cryptographic random data, won't give it to us.
> > Wait one second for cryptographic random data, which we didn't need.
> > Give up and create our own random data, which is non-cryptographic and
> > even worse than what the kernel could have given us from the start.
> > 
> > util-linux falls back to rand() seeded with the pid, uid, tv_sec, and
> > tv_usec from gettimeofday().  Pretty bad on an embedded system with no
> > RTC and worse than what the kernel in crng_init 1 state can give us.
> 
> So what util-linux's libuuid could do is fall back to using
> /dev/urandom instead.  Whether or not you retry for a second before
> you fall back to /dev/urandom really depends on how important the
> second U in UUID ("unique") is to you.  If you use lower quality
> randomness, you can potentially risk getting non-unique UUID's.

Does it really matter how long one waits?  The fact that there is a
fallback that can be used would seem to provide a guarantee of
randomness/uniquness only as good as that fallback.

And here is the fallback, https://github.com/karelzak/util-linux/blob/m
aster/lib/randutils.c#L64

It doesn't seem all that great.  Can we say that the kernel, e.g.
urandom, can always provide random data at least as good as the above
without blocking?  If the kernel is always as good or better, then
what's the point of having the inferior fallback?

> If you don't worry leaking your computer's identity and the time when
> the UUID was generated, the application could also use the time-based
> UUID's.  There are privacy implications for doing so, it's not

libuuid will still ask for random data to initialize its clock file:

https://github.com/karelzak/util-linux/blob/master/libuuid/src/gen_uuid
.c#L281


> > It would seem to be a fact that there will be users of non-
> > cryptographic random data in early boot.  What is the best practice for
> > that?  To fall back to each user trying "to find randomly-looking
> > things on an 1990s Unix."  That doesn't seem good to me.  But what's
> > the better way?
> 
> We could add a new flag to getrandom(2), but application authors can
> just as easily fall back to using /dev/urandom.  The real concern I

I wouldn't say just as easily.  It's a more complex code path,
documented across multiple man pages and requires certain file system
access that getrandom() doesn't.  But it's certainly readily
achievable, so maybe that's good enough.  I think a flag to getrandom
would result in fewer mistakes in userspace code.

> have is application authors that actually *really* need cryptographic
> randomness, but they're too lazy to figure out a way to defer key
> generation until the last possible moment.

Would it be safe to say the the randutils code in util-linux would be
better off falling back to /dev/urandom instead of what it does?

If authors that really need cryptographic data use random_get_bytes()
or uuid_generate(), they'll get code that automatically falls back to
gettimeofday().  And probably not even know it.

I get your concern about lazy authors using an API that isn't
appropriate for their use case.

But we have this api already, in util-linux and code copied/inspired by
it, and it seems there are use cases where it is appropriate.  If we
make it better(*), then does the risk of it being used where it
shouldn't go up?

(*) Better: use the best available random data that can be provided
without blocking.


> There are other things we can do to add support in the bootloader to
> read an entropy state file and inject it into the kernel alongside the
> initrd and boot command line.  But that doesn't completely solve the
> problem; you still have to deal with the "frest from the factory,

This is problematic on a number of embedded platforms.

The bootloader might have no writable persistent storage to read/write 
this entropy from.  This requires drivers for the storage hardware,
ability to deal with the storage being in an inconsistent state, and
security of the storage.  Assuming hardware for writable storage even
exists.

So if I want u-boot to read/write an encrypted and authenticated flash
file system, there is a lot of code to put in the bootloader!  And now
we have to worry about that being exploited.  Maybe this means the
bootloader needs an encryption key that it didn't previous need have
access to.

Some systems have a limit on bootloader size and RAM.  Cyclone 5 is
64kB, which pretty much requires a two stage bootloader.  Arria 10 has
256kB and boots in a single stage, but bootloader features are quite
limited.  On imx23, it's possible to boot directly into linux with no
bootloader at all.  The cpu's rom can initialize the hardware enough to
run linux just from info in the mxs boot image format.

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

* Re: Linux messages full of `random: get_random_u32 called from`
  2018-04-29 23:07     ` Dave Jones
@ 2018-04-30  0:21       ` Theodore Y. Ts'o
  0 siblings, 0 replies; 65+ messages in thread
From: Theodore Y. Ts'o @ 2018-04-30  0:21 UTC (permalink / raw)
  To: Dave Jones, Paul Menzel, linux-kernel

On Sun, Apr 29, 2018 at 07:07:29PM -0400, Dave Jones wrote:
>  > Why do we continue to print this stuff out when crng_init=1 though ?
> 
> answering my own question, I think.. This is a tristate, and we need it
> to be >1 to be quiet, which doesn't happen until..
> 
>  > [  165.806247] random: crng init done
> 
> this point.

Right.  What happens is that we divert the first 64 bits of entropy
credits directly into the crng state, without initializing the
input_pool.  So when we hit crng_init=1, the crng has only 64 bits of
entropy (conservatively speaking); furthermore, since we aren't doing
catastrophic reseeding, if something is continuously reading from
/dev/urandom or get_random_bytes() during that time, then the attacker
could be able to detremine which one of the 32 states the entropy pool
was when the entropy count was 5, and then 5 bits later, poll the
output of the pool again, and guess which of the 32 states the pool
was in, etc., and effectively keep up with the entropy as it trickles
in.

This is the reasoning behind catastrophic reseeding; we wait until we
have 128 bits of entropy in the input pool, and then we reseed the
pool all at once.

Why do we have the crng_init=1 state?  Because it provides some basic
protection for super-early users of the entropy pool.  It's
essentially a bandaid, and we could improve the time to get to fully
initialize by about 33% if we left the pool totally unititalized and
only focused on filling the input pool.  But given that on many
distributions, ssh still insists on initializing long-term public keys
at first boot from /dev/urandom, instead of *waiting* until the first
time someone attempts to ssh into box, or waiting until getrandom(2)
doesn't block --- without hanging the boot --- we have the crng_init=1
hack essentially as a palliative.

I view this as working around broken user space.  But userspace has
been broken for a long time, and users tend to blame the kernel, not
userspace....

						- Ted

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

* Re: Linux messages full of `random: get_random_u32 called from`
  2018-04-29 23:02   ` Dave Jones
@ 2018-04-29 23:07     ` Dave Jones
  2018-04-30  0:21       ` Theodore Y. Ts'o
  0 siblings, 1 reply; 65+ messages in thread
From: Dave Jones @ 2018-04-29 23:07 UTC (permalink / raw)
  To: Theodore Y. Ts'o, Paul Menzel, linux-kernel

On Sun, Apr 29, 2018 at 07:02:02PM -0400, Dave Jones wrote:
 > On Tue, Apr 24, 2018 at 09:56:21AM -0400, Theodore Y. Ts'o wrote:
 > 
 >  > Can you tell me a bit about your system?  What distribution, what
 >  > hardware is present in your sytsem (what architecture, what
 >  > peripherals are attached, etc.)?
 >  > 
 >  > There's a reason why we made this --- we were declaring the random
 >  > number pool to be fully intialized before it really was, and that was
 >  > a potential security concern.  It's not as bad as the weakness
 >  > discovered by Nadia Heninger in 2012.  (See https://factorable.net for
 >  > more details.)  However, this is not one of those things where we like
 >  > to fool around.
 >  > 
 >  > So I want to understand if this is an issue with a particular hardware
 >  > configuration, or whether it's just a badly designed Linux init system
 >  > or embedded setup, or something else.  After all, you wouldn't want
 >  > the NSA spying on all of your network traffic, would you?  :-)
 > 
 > Why do we continue to print this stuff out when crng_init=1 though ?

answering my own question, I think.. This is a tristate, and we need it
to be >1 to be quiet, which doesn't happen until..

 > [  165.806247] random: crng init done

this point.

	Dave

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

* Re: Linux messages full of `random: get_random_u32 called from`
  2018-04-24 13:56 ` Theodore Y. Ts'o
  2018-04-24 14:30   ` Paul Menzel
  2018-04-24 15:49   ` Theodore Y. Ts'o
@ 2018-04-29 23:02   ` Dave Jones
  2018-04-29 23:07     ` Dave Jones
  2 siblings, 1 reply; 65+ messages in thread
From: Dave Jones @ 2018-04-29 23:02 UTC (permalink / raw)
  To: Theodore Y. Ts'o, Paul Menzel, linux-kernel

On Tue, Apr 24, 2018 at 09:56:21AM -0400, Theodore Y. Ts'o wrote:

 > Can you tell me a bit about your system?  What distribution, what
 > hardware is present in your sytsem (what architecture, what
 > peripherals are attached, etc.)?
 > 
 > There's a reason why we made this --- we were declaring the random
 > number pool to be fully intialized before it really was, and that was
 > a potential security concern.  It's not as bad as the weakness
 > discovered by Nadia Heninger in 2012.  (See https://factorable.net for
 > more details.)  However, this is not one of those things where we like
 > to fool around.
 > 
 > So I want to understand if this is an issue with a particular hardware
 > configuration, or whether it's just a badly designed Linux init system
 > or embedded setup, or something else.  After all, you wouldn't want
 > the NSA spying on all of your network traffic, would you?  :-)

Why do we continue to print this stuff out when crng_init=1 though ?

(This from debian stable, on a pretty basic atom box, but similar
dmesg's on everything else I've put 4.17-rc on so far)

[    0.000000] random: get_random_bytes called from start_kernel+0x96/0x519 with crng_init=0
[    0.000000] random: get_random_u64 called from __kmem_cache_create+0x39/0x450 with crng_init=0
[    0.000000] random: get_random_u64 called from cache_random_seq_create+0x76/0x120 with crng_init=0
[    0.151401] calling  initialize_ptr_random+0x0/0x36 @ 1
[    0.151527] initcall initialize_ptr_random+0x0/0x36 returned 0 after 0 usecs
[    0.294661] calling  prandom_init+0x0/0xbd @ 1
[    0.294763] initcall prandom_init+0x0/0xbd returned 0 after 0 usecs
[    1.430529] _warn_unseeded_randomness: 165 callbacks suppressed
[    1.430540] random: get_random_u64 called from __kmem_cache_create+0x39/0x450 with crng_init=0
[    1.430860] random: get_random_u64 called from cache_random_seq_create+0x76/0x120 with crng_init=0
[    1.452240] random: get_random_u64 called from copy_process.part.67+0x1ae/0x1e60 with crng_init=0
[    2.954901] _warn_unseeded_randomness: 54 callbacks suppressed
[    2.954910] random: get_random_u64 called from __kmem_cache_create+0x39/0x450 with crng_init=0
[    2.955185] random: get_random_u64 called from cache_random_seq_create+0x76/0x120 with crng_init=0
[    2.957701] random: get_random_u64 called from __kmem_cache_create+0x39/0x450 with crng_init=0
[    6.017364] _warn_unseeded_randomness: 88 callbacks suppressed
[    6.017373] random: get_random_u64 called from __kmem_cache_create+0x39/0x450 with crng_init=0
[    6.042652] random: get_random_u64 called from cache_random_seq_create+0x76/0x120 with crng_init=0
[    6.060333] random: get_random_u64 called from __kmem_cache_create+0x39/0x450 with crng_init=0
[    6.951978] calling  prandom_reseed+0x0/0x2a @ 1
[    6.960627] initcall prandom_reseed+0x0/0x2a returned 0 after 105 usecs
[    7.371745] _warn_unseeded_randomness: 37 callbacks suppressed
[    7.371759] random: get_random_u64 called from arch_pick_mmap_layout+0x64/0x130 with crng_init=0
[    7.395926] random: get_random_u64 called from load_elf_binary+0x4ae/0x1720 with crng_init=0
[    7.411549] random: get_random_u32 called from arch_align_stack+0x37/0x50 with crng_init=0
[    7.553379] random: systemd-udevd: uninitialized urandom read (16 bytes read)
[    7.563210] random: systemd-udevd: uninitialized urandom read (16 bytes read)
[    7.571498] random: systemd-udevd: uninitialized urandom read (16 bytes read)
[    8.449679] _warn_unseeded_randomness: 154 callbacks suppressed
[    8.449691] random: get_random_u64 called from copy_process.part.67+0x1ae/0x1e60 with crng_init=0
[    8.483097] random: get_random_u64 called from arch_pick_mmap_layout+0x64/0x130 with crng_init=0
[    8.497999] random: get_random_u64 called from load_elf_binary+0x4ae/0x1720 with crng_init=0
[    9.353904] random: fast init done
[    9.770384] _warn_unseeded_randomness: 187 callbacks suppressed
[    9.770398] random: get_random_u32 called from bucket_table_alloc+0x84/0x1b0 with crng_init=1
[    9.791514] random: get_random_u32 called from new_slab+0x174/0x680 with crng_init=1
[    9.834909] random: get_random_u64 called from copy_process.part.67+0x1ae/0x1e60 with crng_init=1
[   10.802200] _warn_unseeded_randomness: 168 callbacks suppressed
[   10.802214] random: get_random_u64 called from arch_pick_mmap_layout+0x64/0x130 with crng_init=1
[   10.802276] random: get_random_u64 called from load_elf_binary+0x4ae/0x1720 with crng_init=1
[   10.802289] random: get_random_u32 called from arch_align_stack+0x37/0x50 with crng_init=1
[   11.821109] _warn_unseeded_randomness: 160 callbacks suppressed
[   11.821122] random: get_random_u64 called from copy_process.part.67+0x1ae/0x1e60 with crng_init=1
[   11.863770] random: get_random_u32 called from bucket_table_alloc+0x84/0x1b0 with crng_init=1
[   11.869384] random: get_random_u32 called from new_slab+0x174/0x680 with crng_init=1
[   12.843237] _warn_unseeded_randomness: 260 callbacks suppressed
[   12.843251] random: get_random_u64 called from arch_pick_mmap_layout+0x64/0x130 with crng_init=1
[   12.875369] random: get_random_u64 called from copy_process.part.67+0x1ae/0x1e60 with crng_init=1
[   12.898152] random: get_random_u32 called from bucket_table_alloc+0x84/0x1b0 with crng_init=1
[   13.858256] _warn_unseeded_randomness: 245 callbacks suppressed
[   13.858271] random: get_random_u32 called from new_slab+0x174/0x680 with crng_init=1
[   13.866366] random: get_random_u32 called from arch_setup_additional_pages+0x79/0xb0 with crng_init=1
[   13.895379] random: get_random_u32 called from new_slab+0x174/0x680 with crng_init=1
[   14.896395] _warn_unseeded_randomness: 301 callbacks suppressed
[   14.896409] random: get_random_u64 called from copy_process.part.67+0x1ae/0x1e60 with crng_init=1
[   14.921096] random: get_random_u64 called from arch_pick_mmap_layout+0x64/0x130 with crng_init=1
[   14.935596] random: get_random_u64 called from load_elf_binary+0x4ae/0x1720 with crng_init=1
[   15.924405] _warn_unseeded_randomness: 152 callbacks suppressed
[   15.924419] random: get_random_u64 called from arch_pick_mmap_layout+0x64/0x130 with crng_init=1
[   15.942457] random: get_random_u64 called from load_elf_binary+0x4ae/0x1720 with crng_init=1
[   15.953995] random: get_random_u32 called from arch_align_stack+0x37/0x50 with crng_init=1
[   19.295109] _warn_unseeded_randomness: 25 callbacks suppressed
[   19.295142] random: get_random_u32 called from new_slab+0x174/0x680 with crng_init=1
[   20.319905] random: get_random_bytes called from flow_hash_from_keys+0x14c/0x2b0 with crng_init=1
[   21.323229] random: get_random_u64 called from copy_process.part.67+0x1ae/0x1e60 with crng_init=1
[   21.351464] random: get_random_u64 called from arch_pick_mmap_layout+0x64/0x130 with crng_init=1
[   21.366761] random: get_random_u64 called from load_elf_binary+0x4ae/0x1720 with crng_init=1
[   22.367243] _warn_unseeded_randomness: 420 callbacks suppressed
[   22.367282] random: get_random_u64 called from arch_pick_mmap_layout+0x64/0x130 with crng_init=1
[   22.367306] random: get_random_u64 called from load_elf_binary+0x4ae/0x1720 with crng_init=1
[   22.367329] random: get_random_u32 called from arch_align_stack+0x37/0x50 with crng_init=1
[   23.378128] _warn_unseeded_randomness: 283 callbacks suppressed
[   23.378141] random: get_random_u64 called from arch_pick_mmap_layout+0x64/0x130 with crng_init=1
[   23.378164] random: get_random_u64 called from load_elf_binary+0x4ae/0x1720 with crng_init=1
[   23.378176] random: get_random_u32 called from arch_align_stack+0x37/0x50 with crng_init=1
[   24.381404] _warn_unseeded_randomness: 246 callbacks suppressed
[   24.381417] random: get_random_u64 called from arch_pick_mmap_layout+0x64/0x130 with crng_init=1
[   24.396831] random: get_random_u64 called from load_elf_binary+0x4ae/0x1720 with crng_init=1
[   24.418850] random: get_random_u32 called from new_slab+0x174/0x680 with crng_init=1
[   25.391285] _warn_unseeded_randomness: 320 callbacks suppressed
[   25.391298] random: get_random_u64 called from arch_pick_mmap_layout+0x64/0x130 with crng_init=1
[   25.417982] random: get_random_u64 called from load_elf_binary+0x4ae/0x1720 with crng_init=1
[   25.434112] random: get_random_u32 called from arch_align_stack+0x37/0x50 with crng_init=1
[   26.463997] _warn_unseeded_randomness: 182 callbacks suppressed
[   26.464009] random: get_random_u64 called from copy_process.part.67+0x1ae/0x1e60 with crng_init=1
[   26.700479] random: get_random_u64 called from arch_pick_mmap_layout+0x64/0x130 with crng_init=1
[   26.728446] random: get_random_u64 called from load_elf_binary+0x4ae/0x1720 with crng_init=1
[   28.393318] _warn_unseeded_randomness: 86 callbacks suppressed
[   28.393331] random: get_random_bytes called from inet6_ehashfn+0x14c/0x1c0 with crng_init=1
[   28.414841] random: get_random_bytes called from inet6_ehashfn+0x191/0x1c0 with crng_init=1
[   28.430781] random: get_random_bytes called from inet_ehashfn+0xe3/0x110 with crng_init=1
[   33.345320] _warn_unseeded_randomness: 82 callbacks suppressed
[   33.345334] random: get_random_bytes called from secure_tcp_ts_off+0x83/0xb0 with crng_init=1
[   33.346074] random: get_random_bytes called from secure_tcp_seq+0x9c/0xc0 with crng_init=1
[   33.349477] random: get_random_u64 called from copy_process.part.67+0x1ae/0x1e60 with crng_init=1
[   34.352703] _warn_unseeded_randomness: 78 callbacks suppressed
[   34.352716] random: get_random_u64 called from arch_pick_mmap_layout+0x64/0x130 with crng_init=1
[   34.353348] random: get_random_u64 called from load_elf_binary+0x4ae/0x1720 with crng_init=1
[   34.353716] random: get_random_u32 called from arch_align_stack+0x37/0x50 with crng_init=1
[   36.444658] _warn_unseeded_randomness: 32 callbacks suppressed
[   36.444670] random: get_random_u64 called from copy_process.part.67+0x1ae/0x1e60 with crng_init=1
[   36.453636] random: get_random_u64 called from arch_pick_mmap_layout+0x64/0x130 with crng_init=1
[   36.454025] random: get_random_u64 called from load_elf_binary+0x4ae/0x1720 with crng_init=1
[   37.939280] _warn_unseeded_randomness: 53 callbacks suppressed
[   37.939292] random: get_random_u32 called from new_slab+0x174/0x680 with crng_init=1
[   42.179988] random: get_random_u32 called from neigh_hash_alloc+0x7b/0xc0 with crng_init=1
[   44.202043] random: get_random_u32 called from new_slab+0x174/0x680 with crng_init=1
[   46.035713] random: get_random_u64 called from copy_process.part.67+0x1ae/0x1e60 with crng_init=1
[   46.067589] random: get_random_u64 called from arch_pick_mmap_layout+0x64/0x130 with crng_init=1
[   46.085148] random: get_random_u64 called from load_elf_binary+0x4ae/0x1720 with crng_init=1
[   47.198815] _warn_unseeded_randomness: 7 callbacks suppressed
[   47.207534] random: get_random_bytes called from __prandom_timer+0x24/0x90 with crng_init=1
[   53.127055] random: get_random_u64 called from arch_pick_mmap_layout+0x64/0x130 with crng_init=1
[   53.145929] random: get_random_u64 called from load_elf_binary+0x4ae/0x1720 with crng_init=1
[   53.165246] random: get_random_u32 called from arch_align_stack+0x37/0x50 with crng_init=1
[   54.177186] _warn_unseeded_randomness: 75 callbacks suppressed
[   54.177198] random: get_random_u32 called from new_slab+0x174/0x680 with crng_init=1
[   54.245759] random: get_random_u64 called from copy_process.part.67+0x1ae/0x1e60 with crng_init=1
[   54.276658] random: get_random_u64 called from arch_pick_mmap_layout+0x64/0x130 with crng_init=1
[   55.339125] _warn_unseeded_randomness: 113 callbacks suppressed
[   55.339137] random: get_random_u64 called from arch_pick_mmap_layout+0x64/0x130 with crng_init=1
[   55.365379] random: get_random_u64 called from load_elf_binary+0x4ae/0x1720 with crng_init=1
[   55.383400] random: get_random_u32 called from arch_align_stack+0x37/0x50 with crng_init=1
[   61.772814] _warn_unseeded_randomness: 6 callbacks suppressed
[   61.772827] random: get_random_u64 called from arch_pick_mmap_layout+0x64/0x130 with crng_init=1
[   61.798504] random: get_random_u64 called from load_elf_binary+0x4ae/0x1720 with crng_init=1
[   61.816345] random: get_random_u32 called from arch_align_stack+0x37/0x50 with crng_init=1
[   77.460681] _warn_unseeded_randomness: 6 callbacks suppressed
[   77.460694] random: get_random_u64 called from arch_pick_mmap_layout+0x64/0x130 with crng_init=1
[   77.487010] random: get_random_u64 called from load_elf_binary+0x4ae/0x1720 with crng_init=1
[   77.504121] random: get_random_u32 called from arch_align_stack+0x37/0x50 with crng_init=1
[   80.717699] _warn_unseeded_randomness: 5 callbacks suppressed
[   80.717714] random: get_random_u32 called from new_slab+0x174/0x680 with crng_init=1
[   99.514633] random: get_random_u32 called from neigh_hash_alloc+0x7b/0xc0 with crng_init=1
[  125.914405] random: get_random_bytes called from __prandom_timer+0x24/0x90 with crng_init=1
[  137.252356] random: get_random_u32 called from new_slab+0x174/0x680 with crng_init=1
[  165.806247] random: crng init done
[  165.815049] random: 7 urandom warning(s) missed due to ratelimiting

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

* Re: Linux messages full of `random: get_random_u32 called from`
  2018-04-26  3:48         ` Paul Menzel
@ 2018-04-29 14:22           ` Pavel Machek
  0 siblings, 0 replies; 65+ messages in thread
From: Pavel Machek @ 2018-04-29 14:22 UTC (permalink / raw)
  To: Paul Menzel; +Cc: Theodore Y. Ts'o, linux-kernel

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

Hi!

> Am 25.04.2018 um 09:41 schrieb Theodore Y. Ts'o:
> >Does this help on your system?
> 
> Thank you, after figuring out how to apply the paste, yes it helped on my
> Lenovo X60.
> 
> >commit 4e00b339e264802851aff8e73cde7d24b57b18ce
> >Author: Theodore Ts'o <tytso@mit.edu>
> >Date:   Wed Apr 25 01:12:32 2018 -0400
> >
> >     random: rate limit unseeded randomness warnings
> >     On systems without sufficient boot randomness, no point spamming dmesg.
> 
> I guess this is a problem with old hardware?

Ok, I see it too, thinkpad x60.

But... this machine has spinning harddrive and independend RTC; there
really should be enough randomness...

Could we exploit either of them as randomness source when we run out
of entropy?

									Pavel
-- 
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 181 bytes --]

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

* Re: Linux messages full of `random: get_random_u32 called from`
  2018-04-24 11:48 Paul Menzel
  2018-04-24 13:56 ` Theodore Y. Ts'o
@ 2018-04-26  5:51 ` Pavel Machek
  1 sibling, 0 replies; 65+ messages in thread
From: Pavel Machek @ 2018-04-26  5:51 UTC (permalink / raw)
  To: Paul Menzel; +Cc: Theodore Ts'o, linux-kernel

Hi!

> Since Linux 4.17-rcX, Linux spams a lot of `random: get_random_u32 called
> from` messages. I believe, this setting should be reverted by default as
> otherwise a lot of other messages are not seen.
> 
> Please find my configuration attached.

Same here, thinkpad X60:

[    3.163839] systemd[1]: Failed to insert module 'ipv6'
[    3.181266] systemd[1]: Set hostname to <amd>.
[    3.267243] random: systemd-sysv-ge: uninitialized urandom read (16
bytes read)
[    3.669590] random: systemd-sysv-ge: uninitialized urandom read (16
bytes read)
[    3.696242] random: systemd: uninitialized urandom read (16 bytes
read)
[    3.700066] random: systemd: uninitialized urandom read (16 bytes
read)
[    3.703716] random: systemd: uninitialized urandom read (16 bytes
read)
[    3.756137] random: systemd: uninitialized urandom read (16 bytes
read)
[    3.760460] random: systemd: uninitialized urandom read (16 bytes
read)
[    3.764515] random: systemd: uninitialized urandom read (16 bytes
read)
[    3.835312] random: systemd: uninitialized urandom read (16 bytes
read)
[    4.173204] systemd[1]: Binding to IPv6 address not available since
kernel does not support IPv6.
[    4.176977] systemd[1]: [/lib/systemd/system/gpsd.socket:6] Failed
to parse address value, ignoring: [::1]:2947
[    4.186472] systemd[1]: Starting Forward Password Requests to Wall
Directory Watch.
[    4.188845] systemd[1]: Started Forward Password Requests to Wall
Directory Watch.

-- 
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html

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

* Re: Linux messages full of `random: get_random_u32 called from`
  2018-04-25  7:41       ` Theodore Y. Ts'o
@ 2018-04-26  3:48         ` Paul Menzel
  2018-04-29 14:22           ` Pavel Machek
  0 siblings, 1 reply; 65+ messages in thread
From: Paul Menzel @ 2018-04-26  3:48 UTC (permalink / raw)
  To: Theodore Y. Ts'o; +Cc: linux-kernel

Dear Theodore,


Am 25.04.2018 um 09:41 schrieb Theodore Y. Ts'o:
> Does this help on your system?

Thank you, after figuring out how to apply the paste, yes it helped on 
my Lenovo X60.

> commit 4e00b339e264802851aff8e73cde7d24b57b18ce
> Author: Theodore Ts'o <tytso@mit.edu>
> Date:   Wed Apr 25 01:12:32 2018 -0400
> 
>      random: rate limit unseeded randomness warnings
>      
>      On systems without sufficient boot randomness, no point spamming dmesg.

I guess this is a problem with old hardware?

[…]


Kind regards,

Pul

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

* Re: Linux messages full of `random: get_random_u32 called from`
  2018-04-24 15:56     ` Paul Menzel
@ 2018-04-25  7:41       ` Theodore Y. Ts'o
  2018-04-26  3:48         ` Paul Menzel
  0 siblings, 1 reply; 65+ messages in thread
From: Theodore Y. Ts'o @ 2018-04-25  7:41 UTC (permalink / raw)
  To: Paul Menzel; +Cc: linux-kernel

Does this help on your system?

						- Ted

commit 4e00b339e264802851aff8e73cde7d24b57b18ce
Author: Theodore Ts'o <tytso@mit.edu>
Date:   Wed Apr 25 01:12:32 2018 -0400

    random: rate limit unseeded randomness warnings
    
    On systems without sufficient boot randomness, no point spamming dmesg.
    
    Signed-off-by: Theodore Ts'o <tytso@mit.edu>
    Cc: stable@vger.kernel.org

diff --git a/drivers/char/random.c b/drivers/char/random.c
index 721dca8db9cf..cd888d4ee605 100644
--- a/drivers/char/random.c
+++ b/drivers/char/random.c
@@ -261,6 +261,7 @@
 #include <linux/ptrace.h>
 #include <linux/workqueue.h>
 #include <linux/irq.h>
+#include <linux/ratelimit.h>
 #include <linux/syscalls.h>
 #include <linux/completion.h>
 #include <linux/uuid.h>
@@ -438,6 +439,16 @@ static void _crng_backtrack_protect(struct crng_state *crng,
 static void process_random_ready_list(void);
 static void _get_random_bytes(void *buf, int nbytes);
 
+static struct ratelimit_state unseeded_warning =
+	RATELIMIT_STATE_INIT("warn_unseeded_randomness", HZ, 3);
+static struct ratelimit_state urandom_warning =
+	RATELIMIT_STATE_INIT("warn_urandom_randomness", HZ, 3);
+
+static int ratelimit_disable __read_mostly;
+
+module_param_named(ratelimit_disable, ratelimit_disable, int, 0644);
+MODULE_PARM_DESC(ratelimit_disable, "Disable random ratelimit suppression");
+
 /**********************************************************************
  *
  * OS independent entropy store.   Here are the functions which handle
@@ -932,6 +943,18 @@ static void crng_reseed(struct crng_state *crng, struct entropy_store *r)
 		process_random_ready_list();
 		wake_up_interruptible(&crng_init_wait);
 		pr_notice("random: crng init done\n");
+		if (unseeded_warning.missed) {
+			pr_notice("random: %d get_random_xx warning(s) missed "
+				  "due to ratelimiting\n",
+				  unseeded_warning.missed);
+			unseeded_warning.missed = 0;
+		}
+		if (urandom_warning.missed) {
+			pr_notice("random: %d urandom warning(s) missed "
+				  "due to ratelimiting\n",
+				  urandom_warning.missed);
+			urandom_warning.missed = 0;
+		}
 	}
 }
 
@@ -1572,8 +1595,9 @@ static void _warn_unseeded_randomness(const char *func_name, void *caller,
 #ifndef CONFIG_WARN_ALL_UNSEEDED_RANDOM
 	print_once = true;
 #endif
-	pr_notice("random: %s called from %pS with crng_init=%d\n",
-		  func_name, caller, crng_init);
+	if (__ratelimit(&unseeded_warning))
+		pr_notice("random: %s called from %pS with crng_init=%d\n",
+			  func_name, caller, crng_init);
 }
 
 /*
@@ -1767,6 +1791,10 @@ static int rand_initialize(void)
 	init_std_data(&blocking_pool);
 	crng_initialize(&primary_crng);
 	crng_global_init_time = jiffies;
+	if (ratelimit_disable) {
+		urandom_warning.interval = 0;
+		unseeded_warning.interval = 0;
+	}
 	return 0;
 }
 early_initcall(rand_initialize);
@@ -1834,9 +1862,10 @@ urandom_read(struct file *file, char __user *buf, size_t nbytes, loff_t *ppos)
 
 	if (!crng_ready() && maxwarn > 0) {
 		maxwarn--;
-		printk(KERN_NOTICE "random: %s: uninitialized urandom read "
-		       "(%zd bytes read)\n",
-		       current->comm, nbytes);
+		if (__ratelimit(&urandom_warning))
+			printk(KERN_NOTICE "random: %s: uninitialized "
+			       "urandom read (%zd bytes read)\n",
+			       current->comm, nbytes);
 		spin_lock_irqsave(&primary_crng.lock, flags);
 		crng_init_cnt = 0;
 		spin_unlock_irqrestore(&primary_crng.lock, flags);

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

* Re: Linux messages full of `random: get_random_u32 called from`
  2018-04-24 15:49   ` Theodore Y. Ts'o
@ 2018-04-24 15:56     ` Paul Menzel
  2018-04-25  7:41       ` Theodore Y. Ts'o
  0 siblings, 1 reply; 65+ messages in thread
From: Paul Menzel @ 2018-04-24 15:56 UTC (permalink / raw)
  To: Theodore Y. Ts'o, linux-kernel

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

Dear Theodore,


On 04/24/18 17:49, Theodore Y. Ts'o wrote:
> On Tue, Apr 24, 2018 at 09:56:21AM -0400, Theodore Y. Ts'o wrote:
>> On Tue, Apr 24, 2018 at 01:48:16PM +0200, Paul Menzel wrote:

>>> Since Linux 4.17-rcX, Linux spams a lot of `random: get_random_u32 called
>>> from` messages. I believe, this setting should be reverted by default as
>>> otherwise a lot of other messages are not seen.
>>
>> Can you tell me a bit about your system?  What distribution, what
>> hardware is present in your sytsem (what architecture, what
>> peripherals are attached, etc.)?
> 
> Can you also send me your dmesg or kern.log so I can see where
> get_random_u32 is getting called from during your system startup?

Sorry, for just attaching the unedited log file with the coreboot boot 
messages. But at time stamp 31 second (first column) the Linux messages 
are also included. An excerpt, and the full log in my last message.

> 01.515: Jumping to boot code at 00009000(7f733000)
> 31.117: [    0.515017] 00:07: ttyS1 at I/O 0x3f8 (irq = 4, base_baud = 115200) is a 16550A
> 31.118: [    0.523260] Linux agpgart interface v0.103
> 31.119: [    0.528188] i8042: PNP: PS/2 Controller [PNP0303:PS2K,PNP0f13:PS2M] at 0x60,0x64 irq 1,12
> 31.130: [    0.547244] serio: i8042 KBD port at 0x60,0x64 irq 1
> 31.130: [    0.552286] serio: i8042 AUX port at 0x60,0x64 irq 12
> 31.130: [    0.557653] rtc_cmos 00:03: RTC can wake from S4
> 31.131: [    0.562627] rtc_cmos 00:03: registered as rtc0
> 31.131: [    0.567197] rtc_cmos 00:03: alarms up to one month, y3k, 242 bytes nvram, hpet irqs
> 31.131: [    0.575045] ledtrig-cpu: registered to indicate activity on CPUs
> 31.132: [    0.581736] random: get_random_u32 called from cache_random_seq_create+0xa3/0x1f0 with crng_init=0
> 31.132: [    0.590831] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=0
> 31.132: [    0.599654] random: get_random_u32 called from cache_random_seq_create+0xa3/0x1f0 with crng_init=0
> 31.132: [    0.608722] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=0
> 31.132: [    0.617551] random: get_random_u32 called from cache_random_seq_create+0xa3/0x1f0 with crng_init=0
> 31.132: [    0.626630] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=0
> 31.132: [    0.635438] random: get_random_u32 called from cache_random_seq_create+0xa3/0x1f0 with crng_init=0
> 31.133: [    0.644556] input: AT Translated Set 2 keyboard as /devices/platform/i8042/serio0/input/input0

The problem on the Lenovo X60 is, that the serial console seems to 
switch from ttyS0 to ttyS1 during bootup with the dock attached, that’s 
why you do not see the messages in the beginning.


Kind regards,

Paul


[-- Attachment #2: S/MIME Cryptographic Signature --]
[-- Type: application/pkcs7-signature, Size: 5174 bytes --]

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

* Re: Linux messages full of `random: get_random_u32 called from`
  2018-04-24 13:56 ` Theodore Y. Ts'o
  2018-04-24 14:30   ` Paul Menzel
@ 2018-04-24 15:49   ` Theodore Y. Ts'o
  2018-04-24 15:56     ` Paul Menzel
  2018-04-29 23:02   ` Dave Jones
  2 siblings, 1 reply; 65+ messages in thread
From: Theodore Y. Ts'o @ 2018-04-24 15:49 UTC (permalink / raw)
  To: Paul Menzel, linux-kernel

On Tue, Apr 24, 2018 at 09:56:21AM -0400, Theodore Y. Ts'o wrote:
> On Tue, Apr 24, 2018 at 01:48:16PM +0200, Paul Menzel wrote:
> > Dear Linux folks,
> > 
> >
> > Since Linux 4.17-rcX, Linux spams a lot of `random: get_random_u32 called
> > from` messages. I believe, this setting should be reverted by default as
> > otherwise a lot of other messages are not seen.
> 
> Can you tell me a bit about your system?  What distribution, what
> hardware is present in your sytsem (what architecture, what
> peripherals are attached, etc.)?

Can you also send me your dmesg or kern.log so I can see where
get_random_u32 is getting called from during your system startup?

Thanks!

				- Ted

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

* Re: Linux messages full of `random: get_random_u32 called from`
  2018-04-24 13:56 ` Theodore Y. Ts'o
@ 2018-04-24 14:30   ` Paul Menzel
  2018-04-24 15:49   ` Theodore Y. Ts'o
  2018-04-29 23:02   ` Dave Jones
  2 siblings, 0 replies; 65+ messages in thread
From: Paul Menzel @ 2018-04-24 14:30 UTC (permalink / raw)
  To: Theodore Y. Ts'o; +Cc: linux-kernel


[-- Attachment #1.1: Type: text/plain, Size: 1719 bytes --]

Dear Theodore,


On 04/24/18 15:56, Theodore Y. Ts'o wrote:
> On Tue, Apr 24, 2018 at 01:48:16PM +0200, Paul Menzel wrote:

>> Since Linux 4.17-rcX, Linux spams a lot of `random: get_random_u32 called
>> from` messages. I believe, this setting should be reverted by default as
>> otherwise a lot of other messages are not seen.
> 
> Can you tell me a bit about your system?  What distribution, what
> hardware is present in your system (what architecture, what
> peripherals are attached, etc.)?

Good question, and sorry for not attaching the messages.

```
31.132: [    0.581736] random: get_random_u32 called from 
cache_random_seq_create+0xa3/0x1f0 with crng_init=0
31.132: [    0.590831] random: get_random_u32 called from 
cache_alloc_refill+0x5bb/0x13d0 with crng_init=0
31.132: [    0.599654] random: get_random_u32 called from 
cache_random_seq_create+0xa3/0x1f0 with crng_init=0
31.132: [    0.608722] random: get_random_u32 called from 
cache_alloc_refill+0x5bb/0x13d0 with crng_init=0
31.132: [    0.617551] random: get_random_u32 called from 
cache_random_seq_create+0xa3/0x1f0 with crng_init=0
31.132: [    0.626630] random: get_random_u32 called from 
cache_alloc_refill+0x5bb/0x13d0 with crng_init=0
31.132: [    0.635438] random: get_random_u32 called from 
cache_random_seq_create+0xa3/0x1f0 with crng_init=0
31.133: [    0.644556] input: AT Translated Set 2 keyboard as 
/devices/platform/i8042/serio0/input/input0
```

Until know I only saw this on systems where the Linux kernel was built 
for 32-bit (i386).

     make ARCH=i386 bindeb-pkg -j50

[…]

Please find the full log attached. Maybe you can reproduce it under QEMU.


Kind regards,

Paul

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1.2: seriallog-20180423_232310.log --]
[-- Type: text/x-log; name="seriallog-20180423_232310.log", Size: 201142 bytes --]



======= Mon Apr 23 23:23:12 2018 (adjust=86.8us)
00.000: <00>
00.686: 
00.686: 
00.686: coreboot-TIMELESS Thu Jan  1 00:00:00 UTC 1970 romstage starting...
00.686: Dock is present
00.686: 
00.687: Mobile Intel(R) 82945GM/GME Express Chipset
00.687: (G)MCH capable of up to FSB 800 MHz
00.687: (G)MCH capable of up to DDR2-667
00.687: Setting up static southbridge registers... done.
00.687: Disabling Watchdog reboot... done.
00.687: Setting up static northbridge registers...CBFS: 'Master Header Locator' located CBFS at [200:1fffc0)
00.689: CBFS: Locating 'cmos_layout.bin'
00.690: CBFS: Found @ offset 39100 size 6ac
00.690:  done.
00.690: Waiting for MCHBAR to come up...ok
00.690: PM1_CNT: 00000000
00.690: SMBus controller enabled.
00.690: Setting up RAM controller.
00.691: This mainboard supports Dual Channel Operation.
00.750: Reading SPD using i2c block operation.
00.752: DDR II Channel 0 Socket 0: x8DDS
00.752: DIMM 0 side 0 = 512 MB
00.752: DIMM 0 side 1 = 512 MB
00.753: DDR II Channel 0 Socket 1: N/A
00.812: Reading SPD using i2c block operation.
00.812: DDR II Channel 1 Socket 0: x8DDS
00.812: DIMM 2 side 0 = 512 MB
00.812: DIMM 2 side 1 = 512 MB
00.813: DDR II Channel 1 Socket 1: N/A
00.813: Memory will be driven at 667MT with CAS=5 clocks
00.813: tRAS = 15 cycles
00.813: tRP  = 5 cycles
00.813: tRCD = 5 cycles
00.813: tWR  = 5 cycles
00.814: tRFC = 35 cycles
00.814: Refresh: 7.8us
00.814: Setting Graphics Frequency...
00.814: FSB: 667 MHz Voltage: 1.05V Render: 250MHz Display: 200MHz
00.814: Setting Memory Frequency... CLKCFG = 0x00010023, CLKCFG = 0x00010043, ok
00.815: Setting mode of operation for memory channels...Dual Channel Interleaved.
00.815: Programming Clock Crossing...MEM=667 FSB=667... ok
00.815: Setting RAM size...
00.816: C0DRB = 0x20202010
00.816: C1DRB = 0x20202010
00.816: TOLUD = 0x0080
00.816: Setting row attributes...
00.816: C0DRA = 0x0033
00.816: C1DRA = 0x0033
00.816: one dimm per channel config..
00.816: Initializing System Memory IO...
00.817: Programming Dual Channel RCOMP
00.817: Table Index: 18
00.817: Programming DLL Timings...
00.817: Enabling System Memory IO...
00.818: jedec enable sequence: bank 0
00.818: jedec enable sequence: bank 1
00.818: bankaddr from bank size of rank 0
00.818: jedec enable sequence: bank 4
00.818: jedec enable sequence: bank 5
00.818: bankaddr from bank size of rank 4
00.819: receive_enable_autoconfig() for channel 0
00.819:   find_strobes_low()
00.819:     set_receive_enable() medium=0x3, coarse=0x5
00.819:     set_receive_enable() medium=0x1, coarse=0x5
00.819:   find_strobes_edge()
00.819:     set_receive_enable() medium=0x1, coarse=0x5
00.820:   add_quarter_clock() mediumcoarse=15 fine=d5
00.820:     set_receive_enable() medium=0x3, coarse=0x5
00.820:   find_preamble()
00.820:     set_receive_enable() medium=0x3, coarse=0x4
00.820:     set_receive_enable() medium=0x3, coarse=0x3
00.820:   add_quarter_clock() mediumcoarse=0f fine=55
00.820:   normalize()
00.820:     set_receive_enable() medium=0x0, coarse=0x4
00.820: receive_enable_autoconfig() for channel 1
00.820:   find_strobes_low()
00.820:     set_receive_enable() medium=0x3, coarse=0x5
00.820:     set_receive_enable() medium=0x1, coarse=0x5
00.820:   find_strobes_edge()
00.820:     set_receive_enable() medium=0x1, coarse=0x5
00.820:   add_quarter_clock() mediumcoarse=15 fine=d5
00.820:     set_receive_enable() medium=0x3, coarse=0x5
00.820:   find_preamble()
00.820:     set_receive_enable() medium=0x3, coarse=0x4
00.820:     set_receive_enable() medium=0x3, coarse=0x3
00.820:   add_quarter_clock() mediumcoarse=0f fine=55
00.820:   normalize()
00.820:     set_receive_enable() medium=0x0, coarse=0x4
00.821: RAM initialization finished.
00.821: Setting up Egress Port RCRB
00.821: Loading port arbitration table ...ok
00.821: Wait for VC1 negotiation ...ok
00.822: Setting up DMI RCRB
00.822: Wait for VC1 negotiation ...done..
00.822: Internal graphics: enabled
00.822: Waiting for DMI hardware...ok
00.822: Enabling PCI Express x16 Link
00.822: SLOTSTS: 0000
00.822: Disabling PCI Express x16 Link
00.822: Wait for link to enter detect state... ok
00.822: Setting up Root Complex Topology
00.823: CBMEM:
00.823: IMD: root @ 7f7ff000 254 entries.
00.823: IMD: root @ 7f7fec00 62 entries.
00.832: MTRR Range: Start=ffe00000 End=0 (Size 200000)
00.832: MTRR Range: Start=0 End=1000000 (Size 1000000)
00.832: MTRR Range: Start=7f400000 End=7f800000 (Size 400000)
00.832: MTRR Range: Start=7f000000 End=7f400000 (Size 400000)
00.837: CBFS: 'Master Header Locator' located CBFS at [200:1fffc0)
00.838: CBFS: Locating 'fallback/ramstage'
00.838: CBFS: Found @ offset 24340 size 147a9
00.838: Decompressing stage fallback/ramstage @ 0x7f789fc0 (252176 bytes)
00.897: Loading module at 7f78a000 with entry 7f78a000. filesize: 0x32a48 memsize: 0x3d8d0
00.897: Processing 2833 relocs. Offset value of 0x7f68a000
00.903: 
00.903: 
00.903: coreboot-TIMELESS Thu Jan  1 00:00:00 UTC 1970 ramstage starting...
00.903: Normal boot.
00.903: BS: BS_PRE_DEVICE times (us): entry 0 run 0 exit 0
00.903: BS: BS_DEV_INIT_CHIPS times (us): entry 0 run 1 exit 0
00.903: Enumerating buses...
00.903: CPU_CLUSTER: 0 enabled
00.903: DOMAIN: 0000 enabled
00.903: PCI: pci_scan_bus for bus 00
00.903: PCI: 00:00.0 [8086/27a0] enabled
00.904: PCI: 00:02.0 [8086/27a2] enabled
00.903: PCI: 00:02.1 [8086/27a6] enabled
00.904: PCI: 00:1b.0 [8086/27d8] enabled
00.904: PCI: 00:1c.0 [8086/27d0] enabled
00.904: PCI: 00:1c.1 [8086/27d2] enabled
00.904: PCI: 00:1c.2 [8086/27d4] enabled
00.904: PCI: 00:1c.3 [8086/27d6] enabled
00.904: PCI: 00:1d.0 [8086/27c8] enabled
00.904: PCI: 00:1d.1 [8086/27c9] enabled
00.904: PCI: 00:1d.2 [8086/27ca] enabled
00.904: PCI: 00:1d.3 [8086/27cb] enabled
00.904: PCI: 00:1d.7 [8086/27cc] enabled
00.904: PCI: 00:1e.0 [8086/2448] enabled
00.904: PCI: 00:1f.0 [8086/27b9] enabled
00.904: PCI: 00:1f.1 [8086/27df] enabled
00.904: Set SATA mode early
00.904: Set SATA mode early
00.904: PCI: 00:1f.2 [8086/27c5] enabled
00.904: PCI: 00:1f.3 [8086/27da] enabled
00.904: PCI: pci_scan_bus for bus 01
00.904: PCI: 01:00.0 [8086/109a] enabled
00.904: scan_bus: scanning of bus PCI: 00:1c.0 took 5652 usecs
00.904: PCI: pci_scan_bus for bus 02
00.904: PCI: 02:00.0 [8086/4227] enabled
00.904: scan_bus: scanning of bus PCI: 00:1c.1 took 5664 usecs
00.904: PCI: pci_scan_bus for bus 03
00.904: scan_bus: scanning of bus PCI: 00:1c.2 took 2673 usecs
00.904: PCI: pci_scan_bus for bus 04
00.904: scan_bus: scanning of bus PCI: 00:1c.3 took 2673 usecs
00.904: PCI: pci_scan_bus for bus 05
00.904: PCI: 05:00.0 [1180/0476] enabled
00.904: PCI: 05:00.1 [1180/0552] enabled
00.904: PCI: 05:00.2 [1180/0822] enabled
00.904: PCI: pci_scan_bus for bus 06
00.904: scan_bus: scanning of bus PCI: 05:00.0 took 2678 usecs
00.904: scan_bus: scanning of bus PCI: 00:1e.0 took 19197 usecs
00.904: CBFS: 'Master Header Locator' located CBFS at [200:1fffc0)
00.904: CBFS: Locating 'cmos_layout.bin'
00.904: CBFS: Found @ offset 39100 size 6ac
00.905: WARNING: No CMOS option 'touchpad'.
00.905: CBFS: 'Master Header Locator' located CBFS at [200:1fffc0)
00.905: CBFS: Locating 'cmos_layout.bin'
00.905: CBFS: Found @ offset 39100 size 6ac
00.905: PMH7: ID 03 Revision 10
00.905: PNP: 00ff.1 enabled
00.906: EC Firmware ID 7JHT12WW-3.4, Version 3.01A
00.907: CBFS: 'Master Header Locator' located CBFS at [200:1fffc0)
00.907: CBFS: Locating 'cmos_layout.bin'
00.907: CBFS: Found @ offset 39100 size 6ac
00.907: CBFS: 'Master Header Locator' located CBFS at [200:1fffc0)
00.907: CBFS: Locating 'cmos_layout.bin'
00.907: CBFS: Found @ offset 39100 size 6ac
00.911: CBFS: 'Master Header Locator' located CBFS at [200:1fffc0)
00.911: CBFS: Locating 'cmos_layout.bin'
00.911: CBFS: Found @ offset 39100 size 6ac
00.912: CBFS: 'Master Header Locator' located CBFS at [200:1fffc0)
00.912: CBFS: Locating 'cmos_layout.bin'
00.912: CBFS: Found @ offset 39100 size 6ac
00.912: H8: BDC not installed
00.912: H8: WWAN detection not implemented. Assuming WWAN installed
00.912: CBFS: 'Master Header Locator' located CBFS at [200:1fffc0)
00.912: CBFS: Locating 'cmos_layout.bin'
00.912: CBFS: Found @ offset 39100 size 6ac
00.913: CBFS: 'Master Header Locator' located CBFS at [200:1fffc0)
00.913: CBFS: Locating 'cmos_layout.bin'
00.913: CBFS: Found @ offset 39100 size 6ac
00.913: WARNING: No CMOS option 'fn_ctrl_swap'.
00.913: CBFS: 'Master Header Locator' located CBFS at [200:1fffc0)
00.913: CBFS: Locating 'cmos_layout.bin'
00.913: CBFS: Found @ offset 39100 size 6ac
00.913: CBFS: 'Master Header Locator' located CBFS at [200:1fffc0)
00.913: CBFS: Locating 'cmos_layout.bin'
00.913: CBFS: Found @ offset 39100 size 6ac
00.914: PNP: 00ff.2 enabled
00.914: PNP: 164e.2 enabled
00.914: PNP: 164e.3 enabled
00.914: PNP: 164e.7 enabled
00.914: PNP: 164e.19 enabled
00.914: PNP: 002e.0 disabled
00.914: PNP: 002e.1 enabled
00.914: PNP: 002e.2 disabled
00.914: PNP: 002e.3 enabled
00.914: PNP: 002e.7 enabled
00.914: PNP: 002e.a disabled
00.914: scan_bus: scanning of bus PCI: 00:1f.0 took 166463 usecs
00.914: bus: PCI: 00:1f.3[0]->I2C: 01:69 enabled
00.914: bus: PCI: 00:1f.3[0]->I2C: 01:54 enabled
00.914: bus: PCI: 00:1f.3[0]->I2C: 01:55 enabled
00.914: bus: PCI: 00:1f.3[0]->I2C: 01:56 enabled
00.914: bus: PCI: 00:1f.3[0]->I2C: 01:57 enabled
00.914: bus: PCI: 00:1f.3[0]->I2C: 01:5c enabled
00.914: bus: PCI: 00:1f.3[0]->I2C: 01:5d enabled
00.914: bus: PCI: 00:1f.3[0]->I2C: 01:5e enabled
00.914: bus: PCI: 00:1f.3[0]->I2C: 01:5f enabled
00.914: scan_bus: scanning of bus PCI: 00:1f.3 took 33206 usecs
00.914: scan_bus: scanning of bus DOMAIN: 0000 took 330139 usecs
00.915: scan_bus: scanning of bus Root Device took 339237 usecs
00.914: done
00.914: BS: BS_DEV_ENUMERATE times (us): entry 0 run 346723 exit 0
00.914: found VGA at PCI: 00:02.0
00.915: Setting up VGA for PCI: 00:02.0
00.915: Setting PCI_BRIDGE_CTL_VGA for bridge DOMAIN: 0000
00.915: Setting PCI_BRIDGE_CTL_VGA for bridge Root Device
00.915: Allocating resources...
00.915: Reading resources...
00.915: Adding PCIe enhanced config space BAR 0xf0000000-0xf4000000.
00.916: PNP: 00ff.1 missing read_resources
00.916: PNP: 00ff.2 missing read_resources
00.916: Done reading resources.
00.916: skipping PNP: 00ff.2@60 fixed resource, size=0!
00.916: skipping PNP: 00ff.2@62 fixed resource, size=0!
00.916: skipping PNP: 00ff.2@64 fixed resource, size=0!
00.916: skipping PNP: 00ff.2@66 fixed resource, size=0!
00.916: skipping PNP: 164e.3@29 fixed resource, size=0!
00.916: skipping PNP: 164e.3@f0 fixed resource, size=0!
00.916: Setting resources...
00.917: pci_tolm: 0xd0000000
00.917: IGD decoded, subtracting 8M UMA
00.917: Available memory: 2088960K (2040M)
00.917: PCI: 00:02.0 10 <- [0x00e4300000 - 0x00e437ffff] size 0x00080000 gran 0x13 mem
00.917: PCI: 00:02.0 14 <- [0x00000050b0 - 0x00000050b7] size 0x00000008 gran 0x03 io
00.917: PCI: 00:02.0 18 <- [0x00d0000000 - 0x00dfffffff] size 0x10000000 gran 0x1c prefmem
00.917: PCI: 00:02.0 1c <- [0x00e4400000 - 0x00e443ffff] size 0x00040000 gran 0x12 mem
00.917: PCI: 00:02.1 10 <- [0x00e4380000 - 0x00e43fffff] size 0x00080000 gran 0x13 mem
00.917: PCI: 00:1b.0 10 <- [0x00e4440000 - 0x00e4443fff] size 0x00004000 gran 0x0e mem64
00.917: PCI: 00:1c.0 1c <- [0x0000004000 - 0x0000004fff] size 0x00001000 gran 0x0c bus 01 io
00.917: PCI: 00:1c.0 24 <- [0x00efffffff - 0x00effffffe] size 0x00000000 gran 0x14 bus 01 prefmem
00.917: PCI: 00:1c.0 20 <- [0x00e4100000 - 0x00e41fffff] size 0x00100000 gran 0x14 bus 01 mem
00.917: PCI: 01:00.0 10 <- [0x00e4100000 - 0x00e411ffff] size 0x00020000 gran 0x11 mem
00.917: PCI: 01:00.0 18 <- [0x0000004000 - 0x000000401f] size 0x00000020 gran 0x05 io
00.917: PCI: 00:1c.1 1c <- [0x000000ffff - 0x000000fffe] size 0x00000000 gran 0x0c bus 02 io
00.917: PCI: 00:1c.1 24 <- [0x00efffffff - 0x00effffffe] size 0x00000000 gran 0x14 bus 02 prefmem
00.917: PCI: 00:1c.1 20 <- [0x00e4200000 - 0x00e42fffff] size 0x00100000 gran 0x14 bus 02 mem
00.917: PCI: 02:00.0 10 <- [0x00e4200000 - 0x00e4200fff] size 0x00001000 gran 0x0c mem
00.917: PCI: 00:1c.2 1c <- [0x000000ffff - 0x000000fffe] size 0x00000000 gran 0x0c bus 03 io
00.917: PCI: 00:1c.2 24 <- [0x00efffffff - 0x00effffffe] size 0x00000000 gran 0x14 bus 03 prefmem
00.917: PCI: 00:1c.2 20 <- [0x00efffffff - 0x00effffffe] size 0x00000000 gran 0x14 bus 03 mem
00.917: PCI: 00:1c.3 1c <- [0x000000ffff - 0x000000fffe] size 0x00000000 gran 0x0c bus 04 io
00.917: PCI: 00:1c.3 24 <- [0x00efffffff - 0x00effffffe] size 0x00000000 gran 0x14 bus 04 prefmem
00.917: PCI: 00:1c.3 20 <- [0x00efffffff - 0x00effffffe] size 0x00000000 gran 0x14 bus 04 mem
00.917: PCI: 00:1d.0 20 <- [0x0000005000 - 0x000000501f] size 0x00000020 gran 0x05 io
00.917: PCI: 00:1d.1 20 <- [0x0000005020 - 0x000000503f] size 0x00000020 gran 0x05 io
00.917: PCI: 00:1d.2 20 <- [0x0000005040 - 0x000000505f] size 0x00000020 gran 0x05 io
00.917: PCI: 00:1d.3 20 <- [0x0000005060 - 0x000000507f] size 0x00000020 gran 0x05 io
00.917: PCI: 00:1d.7 10 <- [0x00e4444000 - 0x00e44443ff] size 0x00000400 gran 0x0a mem
00.917: PCI: 00:1e.0 1c <- [0x0000002000 - 0x0000003fff] size 0x00002000 gran 0x0c bus 05 io
00.917: PCI: 00:1e.0 24 <- [0x00e2100000 - 0x00e40fffff] size 0x02000000 gran 0x14 bus 05 prefmem
00.917: PCI: 00:1e.0 20 <- [0x00e0000000 - 0x00e20fffff] size 0x02100000 gran 0x14 bus 05 mem
00.917: PCI: 05:00.0 In set resources
00.917: PCI: 05:00.0 10 <- [0x00e2000000 - 0x00e2000fff] size 0x00001000 gran 0x0c mem
00.917: PCI: 05:00.0 2c <- [0x0000002000 - 0x0000002fff] size 0x00001000 gran 0x02 io
00.917: PCI: 05:00.0 34 <- [0x0000003000 - 0x0000003fff] size 0x00001000 gran 0x02 io
00.917: PCI: 05:00.0 1c <- [0x00e2100000 - 0x00e40fffff] size 0x02000000 gran 0x0c prefmem
00.917: PCI: 05:00.0 24 <- [0x00e0000000 - 0x00e1ffffff] size 0x02000000 gran 0x0c mem
00.917: PCI: 05:00.1 10 <- [0x00e2001000 - 0x00e20017ff] size 0x00000800 gran 0x0b mem
00.917: PCI: 05:00.2 10 <- [0x00e2002000 - 0x00e20020ff] size 0x00000100 gran 0x08 mem
00.917: PNP: 00ff.1 missing set_resources
00.917: PNP: 00ff.2 missing set_resources
00.917: PNP: 164e.2 60 <- [0x00000002f8 - 0x00000002ff] size 0x00000008 gran 0x03 io
00.917: ERROR: PNP: 164e.2 70 irq size: 0x0000000001 not assigned
00.917: ERROR: PNP: 164e.2 74 drq size: 0x0000000001 not assigned
00.917: ERROR: PNP: 164e.2 75 drq size: 0x0000000001 not assigned
00.917: PNP: 164e.3 60 <- [0x0000000200 - 0x0000000207] size 0x00000008 gran 0x03 io
00.917: PNP: 164e.3 29 <- [0x00000000b0 - 0x00000000af] size 0x00000000 gran 0x00 irq
00.917: PNP: 164e.3 70 <- [0x0000000005 - 0x0000000005] size 0x00000001 gran 0x00 irq
00.917: PNP: 164e.3 f0 <- [0x0000000082 - 0x0000000081] size 0x00000000 gran 0x00 irq
00.917: PNP: 164e.7 60 <- [0x0000001680 - 0x000000168f] size 0x00000010 gran 0x04 io
00.917: ERROR: PNP: 164e.7 70 irq size: 0x0000000001 not assigned
00.917: PNP: 164e.19 60 <- [0x000000164c - 0x000000164d] size 0x00000002 gran 0x01 io
00.917: ERROR: PNP: 164e.19 70 irq size: 0x0000000001 not assigned
00.917: PNP: 002e.1 60 <- [0x00000003bc - 0x00000007bb] size 0x00000400 gran 0x0a io
00.917: PNP: 002e.1 70 <- [0x0000000007 - 0x0000000007] size 0x00000001 gran 0x00 irq
00.917: ERROR: PNP: 002e.1 74 drq size: 0x0000000001 not assigned
00.917: PNP: 002e.3 60 <- [0x00000003f8 - 0x00000003ff] size 0x00000008 gran 0x03 io
00.917: PNP: 002e.3 70 <- [0x0000000004 - 0x0000000004] size 0x00000001 gran 0x00 irq
00.917: PNP: 002e.7 60 <- [0x0000001620 - 0x0000001627] size 0x00000008 gran 0x03 io
00.917: ERROR: PNP: 002e.7 70 irq size: 0x0000000001 not assigned
00.917: PCI: 00:1f.1 10 <- [0x00000050b8 - 0x00000050bf] size 0x00000008 gran 0x03 io
00.917: PCI: 00:1f.1 14 <- [0x00000050d8 - 0x00000050db] size 0x00000004 gran 0x02 io
00.917: PCI: 00:1f.1 18 <- [0x00000050c0 - 0x00000050c7] size 0x00000008 gran 0x03 io
00.917: PCI: 00:1f.1 1c <- [0x00000050dc - 0x00000050df] size 0x00000004 gran 0x02 io
00.917: PCI: 00:1f.1 20 <- [0x00000050a0 - 0x00000050af] size 0x00000010 gran 0x04 io
00.917: PCI: 00:1f.2 10 <- [0x00000050c8 - 0x00000050cf] size 0x00000008 gran 0x03 io
00.917: PCI: 00:1f.2 14 <- [0x00000050e0 - 0x00000050e3] size 0x00000004 gran 0x02 io
00.917: PCI: 00:1f.2 18 <- [0x00000050d0 - 0x00000050d7] size 0x00000008 gran 0x03 io
00.917: PCI: 00:1f.2 1c <- [0x00000050e4 - 0x00000050e7] size 0x00000004 gran 0x02 io
00.917: PCI: 00:1f.2 20 <- [0x0000005080 - 0x000000509f] size 0x00000020 gran 0x05 io
00.917: PCI: 00:1f.2 24 <- [0x00e4445000 - 0x00e44453ff] size 0x00000400 gran 0x0a mem
00.917: Done setting resources.
00.917: Done allocating resources.
00.917: BS: BS_DEV_RESOURCES times (us): entry 0 run 539610 exit 0
00.917: Enabling resources...
00.917: PCI: 00:00.0 subsystem <- 17aa/2017
00.917: PCI: 00:00.0 cmd <- 06
00.917: PCI: 00:02.0 subsystem <- 17aa/201a
00.917: PCI: 00:02.0 cmd <- 03
00.917: PCI: 00:02.1 subsystem <- 17aa/201a
00.917: PCI: 00:02.1 cmd <- 02
00.917: PCI: 00:1b.0 subsystem <- 17aa/2010
00.917: PCI: 00:1b.0 cmd <- 102
00.918: PCI: 00:1c.0 bridge ctrl <- 0003
00.918: PCI: 00:1c.0 subsystem <- 8086/27d0
00.918: PCI: 00:1c.0 cmd <- 107
00.918: PCI: 00:1c.1 bridge ctrl <- 0003
00.918: PCI: 00:1c.1 subsystem <- 8086/27d2
00.918: PCI: 00:1c.1 cmd <- 106
00.918: PCI: 00:1c.2 bridge ctrl <- 0003
00.918: PCI: 00:1c.2 cmd <- 00
00.918: PCI: 00:1c.3 bridge ctrl <- 0003
00.918: PCI: 00:1c.3 cmd <- 00
00.918: PCI: 00:1d.0 subsystem <- 17aa/200a
00.918: PCI: 00:1d.0 cmd <- 01
00.918: PCI: 00:1d.1 subsystem <- 17aa/200a
00.918: PCI: 00:1d.1 cmd <- 01
00.918: PCI: 00:1d.2 subsystem <- 17aa/200a
00.918: PCI: 00:1d.2 cmd <- 01
00.918: PCI: 00:1d.3 subsystem <- 17aa/200a
00.918: PCI: 00:1d.3 cmd <- 01
00.918: PCI: 00:1d.7 subsystem <- 17aa/200b
00.918: PCI: 00:1d.7 cmd <- 102
00.918: PCI: 00:1e.0 bridge ctrl <- 0003
00.918: PCI: 00:1e.0 cmd <- 07
00.918: PCI: 00:1f.0 subsystem <- 17aa/2009
00.918: PCI: 00:1f.0 cmd <- 107
00.918: PCI: 00:1f.1 subsystem <- 17aa/200c
00.918: PCI: 00:1f.1 cmd <- 01
00.918: PCI: 00:1f.2 subsystem <- 17aa/200d
00.918: PCI: 00:1f.2 cmd <- 03
00.918: PCI: 00:1f.3 subsystem <- 17aa/200f
00.918: PCI: 00:1f.3 cmd <- 101
00.918: PCI: 01:00.0 cmd <- 03
00.918: PCI: 02:00.0 cmd <- 02
00.918: PCI: 05:00.0 bridge ctrl <- 0503
00.918: PCI: 05:00.0 cmd <- 03
00.918: PCI: 05:00.1 cmd <- 02
00.918: PCI: 05:00.2 cmd <- 06
00.918: done.
00.918: BS: BS_DEV_ENABLE times (us): entry 0 run 118097 exit 0
00.918: Initializing devices...
00.918: Root Device init ...
00.919: Root Device init finished in 2613 usecs
00.919: CPU_CLUSTER: 0 init ...
00.919: start_eip=0x00001000, code_size=0x00000031
00.919: Initializing SMM handler...
00.920: SMI_STS: MCSMI PM1 
00.920: PM1_STS: PRBTNOR PWRBTN 
00.920: GPE0_STS: GPIO15 GPIO14 GPIO13 GPIO12 GPIO11 GPIO10 GPIO7 GPIO6 GPIO5 GPIO4 GPIO3 GPIO2 GPIO1 GPIO0 
00.920: ALT_GP_SMI_STS: GPI15 GPI14 GPI13 GPI12 GPI11 GPI10 GPI7 GPI6 GPI5 GPI4 GPI3 GPI2 GPI1 GPI0 
00.920: TCO_STS: 
00.921: Initializing CPU #0
00.921: CPU: vendor Intel device 6ec
00.921: CPU: family 06, model 0e, stepping 0c
00.921: Enabling cache
00.921: CBFS: 'Master Header Locator' located CBFS at [200:1fffc0)
00.921: CBFS: Locating 'cpu_microcode_blob.bin'
00.921: CBFS: Found @ offset d2c0 size 17000
00.921: microcode: sig=0x6ec pf=0x20 revision=0x0
00.922: microcode: updated to revision 0x54 date=2006-05-01
00.923: CPU: Intel(R) Core(TM) Duo CPU      L2400  @ 1.66GHz.
00.923: MTRR: Physical address space:
00.923: 0x0000000000000000 - 0x00000000000a0000 size 0x000a0000 type 6
00.923: 0x00000000000a0000 - 0x00000000000c0000 size 0x00020000 type 0
00.923: 0x00000000000c0000 - 0x000000007f800000 size 0x7f740000 type 6
00.923: 0x000000007f800000 - 0x00000000d0000000 size 0x50800000 type 0
00.923: 0x00000000d0000000 - 0x00000000e0000000 size 0x10000000 type 1
00.923: 0x00000000e0000000 - 0x0000000100000000 size 0x20000000 type 0
00.923: MTRR: Fixed MSR 0x250 0x0606060606060606
00.923: MTRR: Fixed MSR 0x258 0x0606060606060606
00.923: MTRR: Fixed MSR 0x259 0x0000000000000000
00.923: MTRR: Fixed MSR 0x268 0x0606060606060606
00.923: MTRR: Fixed MSR 0x269 0x0606060606060606
00.923: MTRR: Fixed MSR 0x26a 0x0606060606060606
00.923: MTRR: Fixed MSR 0x26b 0x0606060606060606
00.923: MTRR: Fixed MSR 0x26c 0x0606060606060606
00.923: MTRR: Fixed MSR 0x26d 0x0606060606060606
00.923: MTRR: Fixed MSR 0x26e 0x0606060606060606
00.923: MTRR: Fixed MSR 0x26f 0x0606060606060606
00.924: CPU physical address size: 32 bits
00.924: MTRR: default type WB/UC MTRR counts: 5/3.
00.924: MTRR: UC selected as default type.
00.924: MTRR: 0 base 0x0000000000000000 mask 0x0000000080000000 type 6
00.924: MTRR: 1 base 0x000000007f800000 mask 0x00000000ff800000 type 0
00.924: MTRR: 2 base 0x00000000d0000000 mask 0x00000000f0000000 type 1
00.925: 
00.925: MTRR check
00.925: Fixed MTRRs   : Enabled
00.925: Variable MTRRs: Enabled
00.925: 
00.925: Setting up local APIC... apic_id: 0x00 done.
00.925: VMX status: enabled, locked
00.925: CBFS: 'Master Header Locator' located CBFS at [200:1fffc0)
00.925: CBFS: Locating 'cmos_layout.bin'
00.925: CBFS: Found @ offset 39100 size 6ac
00.925: CPU: 0 2 siblings
00.925: CPU: 0 has sibling 1
00.925: CPU #0 initialized
00.937: Initializing CPU #1
00.937: Waiting for 1 CPUS to stop
00.937: CPU: vendor Intel device 6ec
00.937: CPU: family 06, model 0e, stepping 0c
00.937: Enabling cache
00.937: CBFS: 'Master Header Locator' located CBFS at [200:1fffc0)
00.937: CBFS: Locating 'cpu_microcode_blob.bin'
00.938: CBFS: Found @ offset d2c0 size 17000
00.938: microcode: sig=0x6ec pf=0x20 revision=0x0
00.940: microcode: updated to revision 0x54 date=2006-05-01
00.940: CPU: Intel(R) Core(TM) Duo CPU      L2400  @ 1.66GHz.
00.940: MTRR: Fixed MSR 0x250 0x0606060606060606
00.940: MTRR: Fixed MSR 0x258 0x0606060606060606
00.941: MTRR: Fixed MSR 0x259 0x0000000000000000
00.941: MTRR: Fixed MSR 0x268 0x0606060606060606
00.941: MTRR: Fixed MSR 0x269 0x0606060606060606
00.941: MTRR: Fixed MSR 0x26a 0x0606060606060606
00.941: MTRR: Fixed MSR 0x26b 0x0606060606060606
00.941: MTRR: Fixed MSR 0x26c 0x0606060606060606
00.941: MTRR: Fixed MSR 0x26d 0x0606060606060606
00.941: MTRR: Fixed MSR 0x26e 0x0606060606060606
00.942: MTRR: Fixed MSR 0x26f 0x0606060606060606
00.942: CPU physical address size: 32 bits
00.943: 
00.943: MTRR check
00.943: Fixed MTRRs   : Enabled
00.943: Variable MTRRs: Enabled
00.943: 
00.943: Setting up local APIC... apic_id: 0x01 done.
00.943: VMX status: enabled, locked
00.943: CPU: 1 2 siblings
00.943: CPU #1 initialized
00.943: CPU 1 going down...
00.943: All AP CPUs stopped (9739 loops)
00.943: CPU_CLUSTER: 0 init finished in 322673 usecs
00.943: PCI: 00:02.0 init ...
00.943: Initializing VGA without OPROM.
01.007: No display connected on slave 2
01.023: WARNING: EDID block does NOT fully conform to EDID 1.3.
01.023: <09>Missing name descriptor
01.023: <09>Missing monitor ranges
01.023: bringing up panel at resolution 1024 x 768
01.023: Borders 0 x 0
01.023: Blank 320 x 38
01.023: Sync 136 x 6
01.023: Front porch 24 x 3
01.023: Spread spectrum clock
01.023: Single channel
01.023: Polarities 1, 1
01.023: Pixel N=3, M1=15, M2=4, P1=2
01.023: Pixel clock 65000 kHz
01.023: VGA mode: text
01.030: waiting for panel powerup
01.030: panel powered up
01.030: gtt_setup is enabled.
01.030: 8M UMA
01.031: GTT PGETBL_CTL register: 0x7ffc0001
01.031: GTT Enabled
01.034: PCI: 00:02.0 init finished in 139555 usecs
01.034: PCI: 00:02.1 init ...
01.034: CBFS: 'Master Header Locator' located CBFS at [200:1fffc0)
01.034: CBFS: Locating 'cmos_layout.bin'
01.034: CBFS: Found @ offset 39100 size 6ac
01.035: PCI: 00:02.1 init finished in 14411 usecs
01.035: PCI: 00:1b.0 init ...
01.036: Azalia: codec type: Azalia
01.036: Azalia: base = e4440000
01.038: Azalia: codec_mask = 03
01.038: Azalia: Initializing codec #1
01.038: Azalia: codec viddid: 14f12bfa
01.038: Azalia: No verb!
01.038: Azalia: Initializing codec #0
01.038: Azalia: codec viddid: 11d41981
01.038: Azalia: verb_size: 44
01.040: Azalia: verb loaded.
01.040: PCI: 00:1b.0 init finished in 30351 usecs
01.040: PCI: 00:1c.0 init ...
01.040: Initializing ICH7 PCIe bridge.
01.040: PCI: 00:1c.0 init finished in 4837 usecs
01.040: PCI: 00:1c.1 init ...
01.040: Initializing ICH7 PCIe bridge.
01.040: PCI: 00:1c.1 init finished in 4838 usecs
01.040: PCI: 00:1c.2 init ...
01.040: Initializing ICH7 PCIe bridge.
01.040: PCI: 00:1c.2 init finished in 4838 usecs
01.040: PCI: 00:1c.3 init ...
01.040: Initializing ICH7 PCIe bridge.
01.040: PCI: 00:1c.3 init finished in 4839 usecs
01.040: PCI: 00:1d.0 init ...
01.040: UHCI: Setting up controller.. done.
01.040: PCI: 00:1d.0 init finished in 5273 usecs
01.040: PCI: 00:1d.1 init ...
01.040: UHCI: Setting up controller.. done.
01.040: PCI: 00:1d.1 init finished in 5273 usecs
01.040: PCI: 00:1d.2 init ...
01.040: UHCI: Setting up controller.. done.
01.040: PCI: 00:1d.2 init finished in 5272 usecs
01.040: PCI: 00:1d.3 init ...
01.040: UHCI: Setting up controller.. done.
01.040: PCI: 00:1d.3 init finished in 5273 usecs
01.040: PCI: 00:1d.7 init ...
01.040: EHCI: Setting up controller.. done.
01.040: PCI: 00:1d.7 init finished in 5280 usecs
01.040: PCI: 00:1e.0 init ...
01.040: PCI: 00:1e.0 init finished in 2029 usecs
01.040: PCI: 00:1f.0 init ...
01.040: i82801gx: lpc_init
01.040: IOAPIC: Initializing IOAPIC at 0xfec00000
01.040: IOAPIC: Bootstrap Processor Local APIC = 0x00
01.040: IOAPIC: ID = 0x02
01.041: CBFS: 'Master Header Locator' located CBFS at [200:1fffc0)
01.041: CBFS: Locating 'cmos_layout.bin'
01.041: CBFS: Found @ offset 39100 size 6ac
01.041: WARNING: No CMOS option 'power_on_after_fail'.
01.041: Set power on after power failure.
01.041: CBFS: 'Master Header Locator' located CBFS at [200:1fffc0)
01.041: CBFS: Locating 'cmos_layout.bin'
01.042: CBFS: Found @ offset 39100 size 6ac
01.042: NMI sources enabled.
01.042: rtc_failed = 0x0
01.042: RTC Init
01.043: Disabling ACPI via APMC:
01.043: done.
01.043: Locking SMM.
01.043: PCI: 00:1f.0 init finished in 54893 usecs
01.043: PCI: 00:1f.1 init ...
01.043: i82801gx_ide: initializing... IDE0
01.044: PCI: 00:1f.1 init finished in 5203 usecs
01.044: PCI: 00:1f.2 init ...
01.044: i82801gx_sata: initializing...
01.044: SATA controller in AHCI mode.
01.044: PCI: 00:1f.2 init finished in 7553 usecs
01.044: PCI: 01:00.0 init ...
01.044: PCI: 01:00.0 init finished in 2017 usecs
01.044: PCI: 02:00.0 init ...
01.044: PCI: 02:00.0 init finished in 2019 usecs
01.044: PCI: 05:00.0 init ...
01.044: Ricoh RL5c476: Initializing.
01.044: CF Base = 0
01.044: CF boot not enabled.
01.044: PCI: 05:00.0 init finished in 7727 usecs
01.044: PCI: 05:00.1 init ...
01.044: PCI: 05:00.1 init finished in 2017 usecs
01.044: PCI: 05:00.2 init ...
01.044: PCI: 05:00.2 init finished in 2019 usecs
01.044: PNP: 00ff.2 init ...
01.044: PNP: 00ff.2 init finished in 1932 usecs
01.044: PNP: 164e.2 init ...
01.044: PNP: 164e.2 init finished in 1931 usecs
01.044: PNP: 164e.3 init ...
01.044: PNP: 164e.3 init finished in 1932 usecs
01.044: PNP: 164e.7 init ...
01.044: PNP: 164e.7 init finished in 1931 usecs
01.044: PNP: 164e.19 init ...
01.044: PNP: 164e.19 init finished in 2017 usecs
01.044: PNP: 002e.1 init ...
01.044: PNP: 002e.1 init finished in 1931 usecs
01.044: PNP: 002e.3 init ...
01.044: PNP: 002e.3 init finished in 1931 usecs
01.044: PNP: 002e.7 init ...
01.044: PNP: 002e.7 init finished in 1931 usecs
01.044: smbus: PCI: 00:1f.3[0]->I2C: 01:69 init ...
01.058: Changing 12 of the 12 ck505 config bytes.
01.070: I2C: 01:69 init finished in 33851 usecs
01.070: smbus: PCI: 00:1f.3[0]->I2C: 01:54 init ...
01.070: I2C: 01:54 init finished in 3940 usecs
01.070: smbus: PCI: 00:1f.3[0]->I2C: 01:55 init ...
01.070: I2C: 01:55 init finished in 3940 usecs
01.070: smbus: PCI: 00:1f.3[0]->I2C: 01:56 init ...
01.070: I2C: 01:56 init finished in 3940 usecs
01.070: smbus: PCI: 00:1f.3[0]->I2C: 01:57 init ...
01.070: I2C: 01:57 init finished in 3939 usecs
01.070: smbus: PCI: 00:1f.3[0]->I2C: 01:5c init ...
01.070: Locking EEPROM RFID
01.092: init EEPROM done
01.092: I2C: 01:5c init finished in 28972 usecs
01.092: smbus: PCI: 00:1f.3[0]->I2C: 01:5d init ...
01.092: I2C: 01:5d init finished in 3939 usecs
01.092: smbus: PCI: 00:1f.3[0]->I2C: 01:5e init ...
01.092: I2C: 01:5e init finished in 3939 usecs
01.092: smbus: PCI: 00:1f.3[0]->I2C: 01:5f init ...
01.092: I2C: 01:5f init finished in 3941 usecs
01.092: Devices initialized
01.092: BS: BS_DEV_INIT times (us): entry 7 run 896244 exit 0
01.092: Finalize devices...
01.092: Devices finalized
01.092: BS: BS_POST_DEVICE times (us): entry 0 run 3508 exit 0
01.092: BS: BS_OS_RESUME_CHECK times (us): entry 0 run 0 exit 0
01.092: Copying Interrupt Routing Table to 0x000f0000... done.
01.092: Copying Interrupt Routing Table to 0x7f732000... done.
01.092: PIRQ table: 272 bytes.
01.092: Wrote the mp table end at: 000f0410 - 000f05cc
01.092: Wrote the mp table end at: 7f731010 - 7f7311cc
01.092: MP table: 460 bytes.
01.092: CBFS: 'Master Header Locator' located CBFS at [200:1fffc0)
01.092: CBFS: Locating 'fallback/dsdt.aml'
01.093: CBFS: Found @ offset 39800 size 300e
01.093: CBFS: 'Master Header Locator' located CBFS at [200:1fffc0)
01.093: CBFS: Locating 'fallback/slic'
01.093: CBFS: 'fallback/slic' not found.
01.093: ACPI: Writing ACPI tables at 7f70d000.
01.093: ACPI:    * FACS
01.093: ACPI:    * DSDT
01.100: ACPI:    * FADT
01.100: ACPI: added table 1/32, length now 40
01.100: ACPI:     * SSDT
01.126: Lenovo P/N is 636338U
01.125: Lenovo P/N 636338U is a tablet
01.125: Found 1 CPU(s) with 2 core(s) each.
01.125: clocks between 1000 and 1666 MHz.
01.125: adding 3 P-States between busratio 6 and a, incl. P0
01.125: PSS: 1666MHz power 31000 control 0xa1b status 0xa1b
01.125: PSS: 1333MHz power 22050 control 0x817 status 0x817
01.125: PSS: 1000MHz power 13100 control 0x613 status 0x613
01.125: clocks between 1000 and 1666 MHz.
01.125: adding 3 P-States between busratio 6 and a, incl. P0
01.125: PSS: 1666MHz power 31000 control 0xa1b status 0xa1b
01.125: PSS: 1333MHz power 22050 control 0x817 status 0x817
01.125: PSS: 1000MHz power 13100 control 0x613 status 0x613
01.126: ACPI: added table 2/32, length now 44
01.126: ACPI:    * MCFG
01.126: ACPI: added table 3/32, length now 48
01.126: ACPI:    * TCPA
01.126: TCPA log created at 7f6fd000
01.126: ACPI: added table 4/32, length now 52
01.126: ACPI:    * MADT
01.126: ACPI: added table 5/32, length now 56
01.126: current = 7f710a00
01.126: CBFS: 'Master Header Locator' located CBFS at [200:1fffc0)
01.126: CBFS: Locating 'vbt.bin'
01.126: CBFS: 'vbt.bin' not found.
01.126: CBFS: 'Master Header Locator' located CBFS at [200:1fffc0)
01.126: CBFS: Locating 'pci8086,27a2.rom'
01.127: CBFS: 'pci8086,27a2.rom' not found.
01.127: PCI Option ROM loading disabled for PCI: 00:02.0
01.127: GMA: locate_vbt_vbios: aa55 8086 0 0 3
01.127: GMA: Found valid VBT in legacy area
01.127: ACPI:    * HPET
01.127: ACPI: added table 6/32, length now 60
01.127: ACPI: done.
01.127: ACPI tables: 23104 bytes.
01.127: smbios_write_tables: 7f6fc000
01.289: Root Device (LENOVO ThinkPad X60)
01.289: CPU_CLUSTER: 0 (Intel i945 Northbridge)
01.289: APIC: 00 (unknown)
01.289: DOMAIN: 0000 (Intel i945 Northbridge)
01.289: PCI: 00:00.0 (Intel i945 Northbridge)
01.289: PCI: 00:02.0 (Intel i945 Northbridge)
01.289: PCI: 00:02.1 (Intel i945 Northbridge)
01.289: PCI: 00:1b.0 (Intel ICH7/ICH7-M (82801Gx) Series Southbridge)
01.289: PCI: 00:1c.0 (Intel ICH7/ICH7-M (82801Gx) Series Southbridge)
01.289: PCI: 00:1c.1 (Intel ICH7/ICH7-M (82801Gx) Series Southbridge)
01.289: PCI: 00:1d.0 (Intel ICH7/ICH7-M (82801Gx) Series Southbridge)
01.289: PCI: 00:1d.1 (Intel ICH7/ICH7-M (82801Gx) Series Southbridge)
01.289: PCI: 00:1d.2 (Intel ICH7/ICH7-M (82801Gx) Series Southbridge)
01.289: PCI: 00:1d.3 (Intel ICH7/ICH7-M (82801Gx) Series Southbridge)
01.289: PCI: 00:1d.7 (Intel ICH7/ICH7-M (82801Gx) Series Southbridge)
01.289: PCI: 00:1f.0 (Intel ICH7/ICH7-M (82801Gx) Series Southbridge)
01.289: PNP: 00ff.1 (Lenovo Power Management Hardware Hub 7)
01.289: PNP: 00ff.2 (Lenovo H8 EC)
01.289: PNP: 164e.2 (NSC PC87382 Docking LPC Switch)
01.289: PNP: 164e.3 (NSC PC87382 Docking LPC Switch)
01.289: PNP: 164e.7 (NSC PC87382 Docking LPC Switch)
01.289: PNP: 164e.19 (NSC PC87382 Docking LPC Switch)
01.289: PNP: 002e.0 (NSC PC87392 Super I/O)
01.289: PNP: 002e.1 (NSC PC87392 Super I/O)
01.289: PNP: 002e.2 (NSC PC87392 Super I/O)
01.289: PNP: 002e.3 (NSC PC87392 Super I/O)
01.289: PNP: 002e.7 (NSC PC87392 Super I/O)
01.289: PNP: 002e.a (NSC PC87392 Super I/O)
01.289: PCI: 00:1f.1 (Intel ICH7/ICH7-M (82801Gx) Series Southbridge)
01.289: PCI: 00:1f.2 (Intel ICH7/ICH7-M (82801Gx) Series Southbridge)
01.289: PCI: 00:1f.3 (Intel ICH7/ICH7-M (82801Gx) Series Southbridge)
01.289: I2C: 01:69 (CK505 Clock generator)
01.289: I2C: 01:54 (AT24RF08C)
01.289: I2C: 01:55 (AT24RF08C)
01.289: I2C: 01:56 (AT24RF08C)
01.289: I2C: 01:57 (AT24RF08C)
01.289: I2C: 01:5c (AT24RF08C)
01.289: I2C: 01:5d (AT24RF08C)
01.289: I2C: 01:5e (AT24RF08C)
01.289: I2C: 01:5f (AT24RF08C)
01.289: PCI: 00:1c.2 (unknown)
01.289: PCI: 00:1c.3 (unknown)
01.289: PCI: 00:1e.0 (unknown)
01.289: PCI: 01:00.0 (unknown)
01.289: PCI: 02:00.0 (unknown)
01.289: PCI: 05:00.0 (unknown)
01.289: PCI: 05:00.1 (unknown)
01.289: PCI: 05:00.2 (unknown)
01.289: APIC: 01 (unknown)
01.289: SMBIOS tables: 438 bytes.
01.289: Writing table forward entry at 0x00000500
01.289: Wrote coreboot table at: 00000500, 0x10 bytes, checksum 506b
01.289: Writing coreboot table at 0x7f733000
01.289: CBFS: 'Master Header Locator' located CBFS at [200:1fffc0)
01.289: CBFS: Locating 'cmos_layout.bin'
01.290: CBFS: Found @ offset 39100 size 6ac
01.291:  0. 0000000000000000-0000000000000fff: CONFIGURATION TABLES
01.291:  1. 0000000000001000-000000000009ffff: RAM
01.291:  2. 00000000000c0000-000000007f6fbfff: RAM
01.291:  3. 000000007f6fc000-000000007f7fffff: CONFIGURATION TABLES
01.291:  4. 000000007f800000-000000007fffffff: RESERVED
01.291:  5. 00000000f0000000-00000000f3ffffff: RESERVED
01.291: Manufacturer: c2
01.291: SF: Detected MX25L1605D with sector size 0x1000, total 0x200000
01.291: CBFS: 'Master Header Locator' located CBFS at [200:1fffc0)
01.291: FMAP: Found "FLASH" version 1.1 at 0.
01.291: FMAP: base = ffe00000 size = 200000 #areas = 3
01.291: Wrote coreboot table at: 7f733000, 0xa08 bytes, checksum 8d15
01.291: coreboot table: 2592 bytes.
01.291: IMD ROOT    0. 7f7ff000 00001000
01.291: IMD SMALL   1. 7f7fe000 00001000
01.291: CONSOLE     2. 7f7ce000 00030000
01.291: TIME STAMP  3. 7f7cd000 00000400
01.291: ROMSTG STCK 4. 7f7c8000 00005000
01.291: RAMSTAGE    5. 7f789000 0003f000
01.291: 57a9e100    6. 7f74b000 0003d8d0
01.291: SMM BACKUP  7. 7f73b000 00010000
01.291: COREBOOT    8. 7f733000 00008000
01.291: IRQ TABLE   9. 7f732000 00001000
01.291: SMP TABLE  10. 7f731000 00001000
01.292: ACPI       11. 7f70d000 00024000
01.292: TCPA LOG   12. 7f6fd000 00010000
01.292: SMBIOS     13. 7f6fc000 00000800
01.292: IMD small region:
01.292:   IMD ROOT    0. 7f7fec00 00000400
01.292:   CAR GLOBALS 1. 7f7feac0 00000140
01.292:   ROMSTAGE    2. 7f7feaa0 00000004
01.292:   57a9e000    3. 7f7fea80 00000018
01.292:   ACPI GNVS   4. 7f7fe980 00000100
01.292:   COREBOOTFWD 5. 7f7fe940 00000028
01.292: BS: BS_WRITE_TABLES times (us): entry 0 run 686056 exit 0
01.292: CBFS: 'Master Header Locator' located CBFS at [200:1fffc0)
01.292: CBFS: Locating 'fallback/payload'
01.293: CBFS: Found @ offset 5ad00 size 57f3c
01.293: Loading segment from ROM address 0xffe5af38
01.293:   code (compression=1)
01.293:   New segment dstaddr 0x9000 memsize 0x17b48 srcaddr 0xffe5af8c filesize 0x8520
01.293: Loading segment from ROM address 0xffe5af54
01.293:   code (compression=1)
01.293:   New segment dstaddr 0x100000 memsize 0xfac68 srcaddr 0xffe634ac filesize 0x4f9c8
01.293: Loading segment from ROM address 0xffe5af70
01.293:   Entry Point 0x00009000
01.293: Loading Segment: addr: 0x0000000000009000 memsz: 0x0000000000017b48 filesz: 0x0000000000008520
01.293: Post relocation: addr: 0x0000000000009000 memsz: 0x0000000000017b48 filesz: 0x0000000000008520
01.293: using LZMA
01.314: Clearing Segment: addr: 0x0000000000019103 memsz: 0x0000000000007a45
01.314: dest 00009000, end 00020b48, bouncebuffer ffffffff
01.314: Loading Segment: addr: 0x0000000000100000 memsz: 0x00000000000fac68 filesz: 0x000000000004f9c8
01.314: Post relocation: addr: 0x0000000000100000 memsz: 0x00000000000fac68 filesz: 0x000000000004f9c8
01.314: using LZMA
01.515: dest 00100000, end 001fac68, bouncebuffer ffffffff
01.515: BS: BS_PAYLOAD_LOAD times (us): entry 0 run 318118 exit 0
01.515: ICH7 watchdog disabled
01.515: Jumping to boot code at 00009000(7f733000)
31.117: [    0.515017] 00:07: ttyS1 at I/O 0x3f8 (irq = 4, base_baud = 115200) is a 16550A
31.118: [    0.523260] Linux agpgart interface v0.103
31.119: [    0.528188] i8042: PNP: PS/2 Controller [PNP0303:PS2K,PNP0f13:PS2M] at 0x60,0x64 irq 1,12
31.130: [    0.547244] serio: i8042 KBD port at 0x60,0x64 irq 1
31.130: [    0.552286] serio: i8042 AUX port at 0x60,0x64 irq 12
31.130: [    0.557653] rtc_cmos 00:03: RTC can wake from S4
31.131: [    0.562627] rtc_cmos 00:03: registered as rtc0
31.131: [    0.567197] rtc_cmos 00:03: alarms up to one month, y3k, 242 bytes nvram, hpet irqs
31.131: [    0.575045] ledtrig-cpu: registered to indicate activity on CPUs
31.132: [    0.581736] random: get_random_u32 called from cache_random_seq_create+0xa3/0x1f0 with crng_init=0
31.132: [    0.590831] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=0
31.132: [    0.599654] random: get_random_u32 called from cache_random_seq_create+0xa3/0x1f0 with crng_init=0
31.132: [    0.608722] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=0
31.132: [    0.617551] random: get_random_u32 called from cache_random_seq_create+0xa3/0x1f0 with crng_init=0
31.132: [    0.626630] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=0
31.132: [    0.635438] random: get_random_u32 called from cache_random_seq_create+0xa3/0x1f0 with crng_init=0
31.133: [    0.644556] input: AT Translated Set 2 keyboard as /devices/platform/i8042/serio0/input/input0
31.133: [    0.653260] NET: Registered protocol family 10
31.133: [    0.657848] random: get_random_u32 called from bucket_table_alloc+0x163/0x340 with crng_init=0
31.133: [    0.657893] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=0
31.133: [    0.666590] random: get_random_u32 called from neigh_hash_alloc+0x9e/0x140 with crng_init=0
31.133: [    0.675425] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=0
31.133: [    0.683777] random: get_random_u32 called from neigh_hash_alloc+0x9e/0x140 with crng_init=0
31.133: [    0.683786] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=0
31.134: [    0.710026] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=0
31.134: [    0.719105] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=0
31.134: [    0.727990] random: get_random_u32 called from bucket_table_alloc+0x163/0x340 with crng_init=0
31.134: [    0.736727] Segment Routing with IPv6
31.134: [    0.740513] mip6: Mobile IPv6
31.135: [    0.743553] NET: Registered protocol family 17
31.135: [    0.748110] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=0
31.135: [    0.757149] mpls_gso: MPLS GSO support
31.135: [    0.761011] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=0
31.136: [    0.770429] microcode: sig=0x6ec, pf=0x20, revision=0x54
31.138: [    0.775944] microcode: Microcode Update Driver: v2.2.
31.138: [    0.783319] Using IPI No-Shortcut mode
31.138: [    0.787185] random: get_random_bytes called from init_oops_id+0x42/0x50 with crng_init=0
31.139: [    0.795774] registered taskstats version 1
31.139: [    0.799963] Loading compiled-in X.509 certificates
31.139: [    0.804901] zswap: loaded using pool lzo/zbud
31.140: [    0.809627] random: get_random_bytes called from key_alloc+0x1fc/0x5e0 with crng_init=0
31.140: [    0.817761] random: get_random_bytes called from prandom_seed_full_state+0x65/0x120 with crng_init=0
31.141: [    0.827591] rtc_cmos 00:03: setting system clock to 2018-04-23 21:23:46 UTC (1524518626)
31.141: [    0.835868] Unstable clock detected, switching default tracing clock to "global"
31.141: [    0.835868] If you want to keep using the local clock, then add:
31.141: [    0.835868]   "trace_clock=local"
31.141: [    0.835868] on the kernel command line
31.143: [    0.858614] Freeing unused kernel memory: 884K
31.143: [    0.863309] Write protecting the kernel text: 10556k
31.143: [    0.868447] Write protecting the kernel read-only data: 2384k
31.144: [    0.874435] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=0
31.144: [    0.882717] random: get_random_u32 called from load_elf_binary+0x76a/0x1d20 with crng_init=0
31.144: [    0.891264] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=0
31.144: [    0.899661] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=0
31.144: [    0.907995] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=0
31.144: [    0.916355] random: get_random_bytes called from load_elf_binary+0xaf8/0x1d20 with crng_init=0
31.145: [    0.925080] random: get_random_u32 called from randomize_page+0x42/0x57 with crng_init=0
31.145: [    0.933954] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=0
31.146: [    0.943152] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=0
31.146: [    0.952090] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=0
31.146: [    0.960362] random: get_random_u32 called from load_elf_binary+0x76a/0x1d20 with crng_init=0
31.146: [    0.968883] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=0
31.146: [    0.977246] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=0
31.146: [    0.985554] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=0
31.147: [    0.993909] random: get_random_u32 called from randomize_page+0x42/0x57 with crng_init=0
31.147: [    1.002679] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=0
31.148: [    1.011834] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=0
31.148: [    1.020735] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=0
31.148: [    1.029010] random: get_random_u32 called from load_elf_binary+0x76a/0x1d20 with crng_init=0
31.148: [    1.037537] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=0
31.148: [    1.045899] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=0
31.148: [    1.054210] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=0
31.148: [    1.054226] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=0
31.149: [    1.071559] random: get_random_u32 called from randomize_page+0x42/0x57 with crng_init=0
31.149: [    1.080314] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=0
31.150: [    1.089564] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=0
31.150: [    1.097838] random: get_random_u32 called from load_elf_binary+0x76a/0x1d20 with crng_init=0
31.150: [    1.106369] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=0
31.150: [    1.114723] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=0
31.150: [    1.123022] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=0
31.150: [    1.131382] random: get_random_u32 called from randomize_page+0x42/0x57 with crng_init=0
31.151: [    1.140085] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=0
31.151: [    1.149082] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=0
31.151: [    1.158132] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=0
31.151: [    1.166406] random: get_random_u32 called from load_elf_binary+0x76a/0x1d20 with crng_init=0
31.152: [    1.174931] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=0
31.152: [    1.183290] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=0
31.152: [    1.191588] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=0
31.152: [    1.199949] random: get_random_u32 called from randomize_page+0x42/0x57 with crng_init=0
31.153: [    1.208681] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=0
31.153: [    1.217678] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=0
31.153: [    1.226737] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=0
31.153: [    1.235015] random: get_random_u32 called from load_elf_binary+0x76a/0x1d20 with crng_init=0
31.153: [    1.243542] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=0
31.153: [    1.251901] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=0
31.154: [    1.260202] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=0
31.154: [    1.268561] random: get_random_u32 called from randomize_page+0x42/0x57 with crng_init=0
31.154: [    1.277363] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=0
31.155: [    1.286381] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=0
31.155: [    1.295414] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=0
31.155: [    1.303688] random: get_random_u32 called from load_elf_binary+0x76a/0x1d20 with crng_init=0
31.155: [    1.312214] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=0
31.155: [    1.320574] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=0
31.155: [    1.328871] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=0
31.156: [    1.337230] random: get_random_u32 called from randomize_page+0x42/0x57 with crng_init=0
31.156: [    1.345976] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=0
31.156: [    1.354962] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=0
31.157: [    1.364094] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=0
31.157: [    1.372365] random: get_random_u32 called from load_elf_binary+0x76a/0x1d20 with crng_init=0
31.157: [    1.380892] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=0
31.157: [    1.389249] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=0
31.157: [    1.397549] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=0
31.157: [    1.405907] random: get_random_u32 called from randomize_page+0x42/0x57 with crng_init=0
31.158: [    1.414460] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=0
31.158: [    1.423623] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=0
31.159: [    1.432882] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=0
31.159: [    1.441156] random: get_random_u32 called from load_elf_binary+0x76a/0x1d20 with crng_init=0
31.159: [    1.449691] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=0
31.159: [    1.458054] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=0
31.159: [    1.466357] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=0
31.159: [    1.474732] random: get_random_u32 called from randomize_page+0x42/0x57 with crng_init=0
31.160: [    1.483520] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=0
31.161: [    1.492772] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=0
31.161: [    1.501048] random: get_random_u32 called from load_elf_binary+0x76a/0x1d20 with crng_init=0
31.161: [    1.509577] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=0
31.161: [    1.517934] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=0
31.161: [    1.526233] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=0
31.161: [    1.534596] random: get_random_u32 called from randomize_page+0x42/0x57 with crng_init=0
31.162: [    1.543285] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=0
31.164: [    1.552531] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=0
31.164: [    1.562991] random: get_random_u32 called from load_elf_binary+0x76a/0x1d20 with crng_init=0
31.164: [    1.571524] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=0
31.165: [    1.579884] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=0
31.165: [    1.584039] random: fast init done
31.165: [    1.588192] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
31.165: [    1.599969] random: get_random_u32 called from randomize_page+0x42/0x57 with crng_init=1
31.166: [    1.608626] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
31.166: [    1.617577] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
31.166: [    1.626827] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
31.166: [    1.635100] random: get_random_u32 called from load_elf_binary+0x76a/0x1d20 with crng_init=1
31.166: [    1.643631] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
31.167: [    1.651983] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
31.167: [    1.660300] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
31.167: [    1.668660] random: get_random_u32 called from randomize_page+0x42/0x57 with crng_init=1
31.167: [    1.677296] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
31.168: [    1.686249] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
31.168: [    1.695491] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
31.168: [    1.703771] random: get_random_u32 called from load_elf_binary+0x76a/0x1d20 with crng_init=1
31.168: [    1.712302] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
31.168: [    1.720655] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
31.168: [    1.728953] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
31.169: [    1.737311] random: get_random_u32 called from randomize_page+0x42/0x57 with crng_init=1
31.171: [    1.747498] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
31.171: [    1.756809] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
31.171: [    1.765082] random: get_random_u32 called from load_elf_binary+0x76a/0x1d20 with crng_init=1
31.171: [    1.773614] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
31.171: [    1.781966] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
31.172: [    1.790266] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
31.172: [    1.798629] random: get_random_u32 called from randomize_page+0x42/0x57 with crng_init=1
31.173: [    1.807761] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
31.173: [    1.816750] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
31.173: [    1.825902] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
31.174: [    1.834179] random: get_random_u32 called from load_elf_binary+0x76a/0x1d20 with crng_init=1
31.174: [    1.842706] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
31.174: [    1.851063] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
31.174: [    1.859362] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
31.174: [    1.867722] random: get_random_u32 called from randomize_page+0x42/0x57 with crng_init=1
31.175: [    1.876433] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
31.175: [    1.885406] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
31.175: [    1.894505] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
31.175: [    1.902784] random: get_random_u32 called from load_elf_binary+0x76a/0x1d20 with crng_init=1
31.175: [    1.911325] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
31.176: [    1.919695] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
31.176: [    1.928026] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
31.176: [    1.936387] random: get_random_u32 called from randomize_page+0x42/0x57 with crng_init=1
31.177: [    1.945386] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
31.177: [    1.954666] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
31.177: [    1.962944] random: get_random_u32 called from load_elf_binary+0x76a/0x1d20 with crng_init=1
31.177: [    1.971481] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
31.177: [    1.979834] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
31.178: [    1.988133] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
31.178: [    1.996497] random: get_random_u32 called from randomize_page+0x42/0x57 with crng_init=1
31.179: [    2.005357] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
31.179: [    2.014343] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
31.179: [    2.023444] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
31.179: [    2.031723] random: get_random_u32 called from load_elf_binary+0x76a/0x1d20 with crng_init=1
31.179: [    2.040248] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
31.179: [    2.048609] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
31.180: [    2.056908] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
31.180: [    2.065270] random: get_random_u32 called from randomize_page+0x42/0x57 with crng_init=1
31.180: [    2.074001] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
31.181: [    2.083257] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
31.181: [    2.091543] random: get_random_u32 called from load_elf_binary+0x76a/0x1d20 with crng_init=1
31.181: [    2.100080] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
31.181: [    2.108452] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
31.181: [    2.116769] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
31.181: [    2.125136] random: get_random_u32 called from randomize_page+0x42/0x57 with crng_init=1
31.182: [    2.133824] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
31.182: [    2.143009] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
31.183: [    2.151289] random: get_random_u32 called from load_elf_binary+0x76a/0x1d20 with crng_init=1
31.183: [    2.159818] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
31.183: [    2.168174] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
31.183: [    2.176475] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
31.183: [    2.184834] random: get_random_u32 called from randomize_page+0x42/0x57 with crng_init=1
31.183: [    2.193451] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
31.184: [    2.202425] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
31.184: [    2.211496] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
31.184: [    2.219777] random: get_random_u32 called from load_elf_binary+0x76a/0x1d20 with crng_init=1
31.184: [    2.228323] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
31.184: [    2.236696] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
31.185: [    2.245013] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
31.185: [    2.253380] random: get_random_u32 called from randomize_page+0x42/0x57 with crng_init=1
31.296: [    2.373079] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
31.307: [    2.392719] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
31.308: [    2.402018] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
31.308: [    2.410302] random: get_random_u32 called from load_elf_binary+0x76a/0x1d20 with crng_init=1
31.308: [    2.418842] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
31.308: [    2.427211] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
31.308: [    2.435531] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
31.311: [    2.443901] random: get_random_u32 called from randomize_page+0x42/0x57 with crng_init=1
31.311: [    2.454871] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
31.312: [    2.464161] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
31.312: [    2.472444] random: get_random_u32 called from load_elf_binary+0x76a/0x1d20 with crng_init=1
31.312: [    2.480968] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
31.312: [    2.489327] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
31.312: [    2.497627] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
31.312: [    2.505988] random: get_random_u32 called from randomize_page+0x42/0x57 with crng_init=1
31.314: [    2.516064] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
31.315: [    2.525104] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
31.315: [    2.534251] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
31.315: [    2.534475] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
31.315: [    2.543760] random: systemd-udevd: uninitialized urandom read (16 bytes read)
31.315: [    2.552324] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
31.315: [    2.559409] random: systemd-udevd: uninitialized urandom read (16 bytes read)
31.315: [    2.567543] random: get_random_u32 called from load_elf_binary+0x76a/0x1d20 with crng_init=1
31.316: [    2.574775] random: systemd-udevd: uninitialized urandom read (16 bytes read)
31.316: [    2.583267] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
31.316: [    2.583280] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
31.316: [    2.590530] random: systemd-udevd: uninitialized urandom read (16 bytes read)
31.316: [    2.598882] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
31.316: [    2.609251] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
31.316: [    2.614334] random: get_random_u32 called from randomize_page+0x42/0x57 with crng_init=1
31.316: [    2.622692] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
31.316: [    2.633391] random: udevadm: uninitialized urandom read (16 bytes read)
31.317: [    2.655574] random: udevadm: uninitialized urandom read (16 bytes read)
31.320: [    2.665182] random: udevadm: uninitialized urandom read (16 bytes read)
31.320: [    2.672049] random: udevadm: uninitialized urandom read (16 bytes read)
31.321: [    2.679538] random: udevadm: uninitialized urandom read (16 bytes read)
31.321: [    2.686388] random: udevadm: uninitialized urandom read (16 bytes read)
31.363: [    2.734444] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
31.363: [    2.734459] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
31.363: [    2.743744] random: get_random_bytes called from generate_random_uuid+0x10/0x50 with crng_init=1
31.363: [    2.759180] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
31.363: [    2.761329] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
31.363: [    2.770455] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
31.364: [    2.787172] random: get_random_u32 called from load_elf_binary+0x76a/0x1d20 with crng_init=1
31.364: [    2.787688] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
31.364: [    2.795740] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
31.364: [    2.805078] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
31.364: [    2.813086] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
31.364: [    2.821847] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
31.364: [    2.830256] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
31.364: [    2.839164] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
31.365: [    2.847438] random: get_random_bytes called from load_elf_binary+0xaf8/0x1d20 with crng_init=1
31.365: [    2.856810] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
31.365: [    2.864953] random: get_random_u32 called from randomize_page+0x42/0x57 with crng_init=1
31.365: [    2.875103] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
31.365: [    2.891101] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
31.365: [    2.900111] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
31.366: [    2.909180] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
31.366: [    2.909854] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
31.366: [    2.918373] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
31.366: [    2.935948] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
31.366: [    2.936470] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
31.366: [    2.953750] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
31.367: [    2.962961] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
31.367: [    2.972041] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
31.368: [    2.981871] random: get_random_u32 called from module_alloc+0x105/0x120 with crng_init=1
31.368: [    2.989218] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
31.369: [    2.999180] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
31.369: [    2.999224] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
31.369: [    3.008084] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
31.369: [    3.026072] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
31.370: [    3.035278] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
31.370: [    3.044268] thermal LNXTHERM:00: registered as thermal_zone0
31.370: [    3.044357] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
31.370: [    3.050024] ACPI: Thermal Zone [THM0] (56 C)
31.370: [    3.059732] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
31.371: [    3.063888] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
31.371: [    3.074819] thermal LNXTHERM:01: registered as thermal_zone1
31.371: [    3.081275] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
31.371: [    3.086920] ACPI: Thermal Zone [THM1] (41 C)
31.382: [    3.111365] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
31.383: [    3.112382] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
31.399: [    3.145866] SCSI subsystem initialized
31.409: [    3.159069] ahci 0000:00:1f.2: SSS flag set, parallel bus scan disabled
31.409: [    3.165806] ahci 0000:00:1f.2: AHCI 0001.0100 32 slots 4 ports 1.5 Gbps 0x1 impl SATA mode
31.409: [    3.174163] ahci 0000:00:1f.2: flags: 64bit ncq ilck stag pm led clo pmp pio slum part 
31.411: [    3.183765] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
31.411: [    3.193180] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
31.412: [    3.202364] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
31.412: [    3.202520] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
31.412: [    3.211375] scsi host0: ahci
31.412: [    3.223409] random: get_random_u32 called from cache_random_seq_create+0xa3/0x1f0 with crng_init=1
31.412: [    3.224232] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
31.413: [    3.232912] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
31.413: [    3.246724] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
31.413: [    3.251734] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
31.413: [    3.259695] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
31.413: [    3.276884] scsi host1: ahci
31.413: [    3.280087] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
31.414: [    3.289119] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
31.414: [    3.297986] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
31.414: [    3.306997] scsi host2: ahci
31.414: [    3.309979] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
31.414: [    3.318946] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
31.415: [    3.328026] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
31.415: [    3.336872] scsi host3: ahci
31.415: [    3.339980] ata1: SATA max UDMA/133 abar m1024@0xe4445000 port 0xe4445100 irq 28
31.417: [    3.347478] ata2: DUMMY
31.417: [    3.352205] ata3: DUMMY
31.417: [    3.354731] ata4: DUMMY
31.418: [    3.357331] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
31.418: [    3.366702] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
31.418: [    3.375526] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
31.419: [    3.384576] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
31.419: [    3.393460] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
31.565: [    3.548108] clocksource: timekeeping watchdog on CPU0: Marking clocksource 'tsc-early' as unstable because the skew is too large:
31.565: [    3.552096] clocksource:                       'hpet' wd_now: 324eefb wd_last: 2b6d2b8 mask: ffffffff
31.565: [    3.552096] clocksource:                       'tsc-early' cs_now: e0f6a8d68 cs_last: deaf2b3ca mask: ffffffffffffffff
31.565: [    3.579973] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
31.673: [    3.697028] ata1: SATA link up 1.5 Gbps (SStatus 113 SControl 300)
31.674: [    3.703724] ata1.00: ATA-9: M4-CT256M4SSD2, 070H, max UDMA/100
31.674: [    3.709638] ata1.00: 500118192 sectors, multi 16: LBA48 NCQ (depth 31/32), AA
31.675: [    3.717333] ata1.00: configured for UDMA/100
31.675: [    3.721965] scsi 0:0:0:0: Direct-Access     ATA      M4-CT256M4SSD2   070H PQ: 0 ANSI: 5
31.680: [    3.734907] sd 0:0:0:0: [sda] 500118192 512-byte logical blocks: (256 GB/238 GiB)
31.680: [    3.742522] sd 0:0:0:0: [sda] Write Protect is off
31.680: [    3.747429] sd 0:0:0:0: [sda] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
31.681: [    3.756949] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
31.681: [    3.766271]  sda: sda1 sda2
31.681: [    3.769303] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
31.682: [    3.778617] sd 0:0:0:0: [sda] Attached SCSI disk
31.682: [    3.783324] sd 0:0:0:0: [sda] Synchronizing SCSI cache
31.689: [    3.795770] sd 0:0:0:0: [sda] Stopping disk
32.443: [    4.553878] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
32.443: [    4.554023] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
32.443: [    4.563576] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
32.444: [    4.579945] random: get_random_u32 called from load_elf_binary+0x76a/0x1d20 with crng_init=1
32.444: [    4.588491] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
32.444: [    4.596854] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
32.444: [    4.605175] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
32.444: [    4.613534] random: get_random_u32 called from randomize_page+0x42/0x57 with crng_init=1
32.446: [    4.623180] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
32.479: [    4.665121] random: get_random_u32 called from bucket_table_alloc+0x163/0x340 with crng_init=1
32.480: [    4.674721] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
32.480: [    4.683800] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
32.480: [    4.684091] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
32.480: [    4.692598] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
32.481: [    4.700872] random: get_random_u32 called from load_elf_binary+0x76a/0x1d20 with crng_init=1
32.481: [    4.718354] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
32.481: [    4.726728] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
32.481: [    4.735122] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
32.481: [    4.743487] random: get_random_u32 called from randomize_page+0x42/0x57 with crng_init=1
32.482: [    4.752295] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
32.483: [    4.761983] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
32.483: [    4.770266] random: get_random_u32 called from load_elf_binary+0x76a/0x1d20 with crng_init=1
32.483: [    4.778806] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
32.483: [    4.787169] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
32.483: [    4.795474] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
32.483: [    4.803838] random: get_random_u32 called from randomize_page+0x42/0x57 with crng_init=1
32.487: [    4.815324] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
32.487: [    4.824298] random: get_random_u32 called from cache_random_seq_create+0xa3/0x1f0 with crng_init=1
32.487: [    4.824461] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
32.487: [    4.833378] random: get_random_u32 called from cache_random_seq_create+0xa3/0x1f0 with crng_init=1
32.487: [    4.842366] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
32.487: [    4.851380] device-mapper: uevent: version 1.0.3
32.488: [    4.851415] random: get_random_u32 called from cache_random_seq_create+0xa3/0x1f0 with crng_init=1
32.488: [    4.861008] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
32.488: [    4.882859] device-mapper: ioctl: 4.39.0-ioctl (2018-04-03) initialised: dm-devel@redhat.com
32.488: [    4.883078] random: get_random_u32 called from bucket_table_alloc+0x163/0x340 with crng_init=1
32.488: [    4.900132] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
32.489: [    4.909296] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
32.492: [    4.921494] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
32.493: [    4.931128] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
32.493: [    4.939417] random: get_random_u32 called from load_elf_binary+0x76a/0x1d20 with crng_init=1
32.493: [    4.947961] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
32.493: [    4.956369] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
32.493: [    4.964693] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
32.494: [    4.973066] random: get_random_u32 called from randomize_page+0x42/0x57 with crng_init=1
32.495: [    4.983018] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
32.496: [    4.992326] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
32.496: [    5.000606] random: get_random_u32 called from load_elf_binary+0x76a/0x1d20 with crng_init=1
32.496: [    5.009143] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
32.496: [    5.017508] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
32.496: [    5.025813] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
32.496: [    5.034175] random: get_random_u32 called from randomize_page+0x42/0x57 with crng_init=1
32.499: [    5.044805] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
32.499: [    5.054121] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
32.500: [    5.062403] random: get_random_u32 called from load_elf_binary+0x76a/0x1d20 with crng_init=1
32.500: [    5.070938] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
32.500: [    5.079302] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
32.500: [    5.087613] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
32.500: [    5.095973] random: get_random_u32 called from randomize_page+0x42/0x57 with crng_init=1
32.502: [    5.105555] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
32.502: [    5.114847] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
32.502: [    5.123126] random: get_random_u32 called from load_elf_binary+0x76a/0x1d20 with crng_init=1
32.502: [    5.131666] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
32.502: [    5.140034] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
32.503: [    5.148345] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
32.503: [    5.156706] random: get_random_u32 called from randomize_page+0x42/0x57 with crng_init=1
32.504: [    5.166015] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
32.504: [    5.175324] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
32.504: [    5.183608] random: get_random_u32 called from load_elf_binary+0x76a/0x1d20 with crng_init=1
32.507: [    5.192150] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
32.507: [    5.202711] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
32.507: [    5.211018] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
32.507: [    5.219384] random: get_random_u32 called from randomize_page+0x42/0x57 with crng_init=1
32.532: [    5.252653] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
32.533: [    5.261973] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
32.533: [    5.270252] random: get_random_u32 called from load_elf_binary+0x76a/0x1d20 with crng_init=1
32.533: [    5.278790] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
32.533: [    5.287154] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
32.533: [    5.295474] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
32.534: [    5.303842] random: get_random_u32 called from randomize_page+0x42/0x57 with crng_init=1
32.536: [    5.313935] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
32.538: [    5.324835] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
32.538: [    5.324852] random: get_random_u32 called from load_elf_binary+0x76a/0x1d20 with crng_init=1
32.538: [    5.333129] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
32.538: [    5.341659] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
32.538: [    5.350041] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
32.538: [    5.358321] random: get_random_u32 called from randomize_page+0x42/0x57 with crng_init=1
35.745: [    8.581031] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
35.745: [    8.590115] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
35.745: [    8.598399] random: get_random_u32 called from load_elf_binary+0x76a/0x1d20 with crng_init=1
35.745: [    8.606932] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
35.745: [    8.615292] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
35.745: [    8.623605] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
35.745: [    8.631968] random: get_random_u32 called from randomize_page+0x42/0x57 with crng_init=1
35.747: [    8.641475] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
35.747: [    8.650630] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
35.748: [    8.660258] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
35.748: [    8.660718] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
35.748: [    8.669073] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
35.749: [    8.670209] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
35.749: [    8.677357] random: get_random_u32 called from load_elf_binary+0x76a/0x1d20 with crng_init=1
35.749: [    8.677365] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
35.749: [    8.712025] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
35.749: [    8.720345] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
35.749: [    8.728714] random: get_random_u32 called from randomize_page+0x42/0x57 with crng_init=1
35.750: [    8.737993] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
35.751: [    8.747095] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
35.751: [    8.755382] random: get_random_u32 called from load_elf_binary+0x76a/0x1d20 with crng_init=1
35.751: [    8.763920] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
35.751: [    8.772280] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
35.751: [    8.780588] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
35.751: [    8.788947] random: get_random_u32 called from randomize_page+0x42/0x57 with crng_init=1
35.752: [    8.798103] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
35.753: [    8.807272] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
35.753: [    8.815554] random: get_random_u32 called from load_elf_binary+0x76a/0x1d20 with crng_init=1
35.753: [    8.824089] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
35.753: [    8.832452] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
35.753: [    8.840756] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
35.753: [    8.849114] random: get_random_u32 called from randomize_page+0x42/0x57 with crng_init=1
35.755: [    8.858430] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
35.755: [    8.867438] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
35.755: [    8.876541] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
35.755: [    8.885594] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
35.756: [    8.894865] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
35.756: [    8.903674] random: get_random_u32 called from cache_random_seq_create+0xa3/0x1f0 with crng_init=1
35.756: [    8.912732] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
35.757: [    8.921918] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
35.759: [    8.932783] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
35.759: [    8.941076] random: get_random_u32 called from load_elf_binary+0x76a/0x1d20 with crng_init=1
35.759: [    8.949612] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
35.759: [    8.957983] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
35.759: [    8.966308] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
35.759: [    8.974676] random: get_random_u32 called from randomize_page+0x42/0x57 with crng_init=1
35.761: [    8.984924] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
35.762: [    8.994093] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
35.763: [    9.003599] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
35.763: [    9.011885] random: get_random_u32 called from load_elf_binary+0x76a/0x1d20 with crng_init=1
35.763: [    9.020431] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
35.763: [    9.028800] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
35.763: [    9.037120] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
35.763: [    9.045488] random: get_random_u32 called from randomize_page+0x42/0x57 with crng_init=1
35.765: [    9.055489] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
35.765: [    9.064387] random: get_random_u32 called from bucket_table_alloc+0x163/0x340 with crng_init=1
35.766: [    9.073151] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
35.775: [    9.091114] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
35.775: [    9.099416] random: get_random_u32 called from load_elf_binary+0x76a/0x1d20 with crng_init=1
35.775: [    9.107959] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
35.775: [    9.116332] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
35.775: [    9.124656] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
35.775: [    9.133030] random: get_random_u32 called from randomize_page+0x42/0x57 with crng_init=1
35.777: [    9.143184] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
35.778: [    9.152715] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
35.778: [    9.161002] random: get_random_u32 called from load_elf_binary+0x76a/0x1d20 with crng_init=1
35.778: [    9.169561] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
35.779: [    9.177964] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
35.779: [    9.186279] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
35.779: [    9.194654] random: get_random_u32 called from randomize_page+0x42/0x57 with crng_init=1
35.845: [    9.268859] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
35.848: [    9.277923] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
35.848: [    9.289580] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
35.849: [    9.298592] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
35.849: [    9.307619] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
35.849: [    9.316441] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
35.849: [    9.325582] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
35.849: [    9.334386] random: get_random_u32 called from cache_random_seq_create+0xa3/0x1f0 with crng_init=1
35.849: [    9.343446] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
35.850: [    9.352599] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
35.851: [    9.362956] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
35.851: [    9.371260] random: get_random_u32 called from load_elf_binary+0x76a/0x1d20 with crng_init=1
35.852: [    9.379798] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
35.852: [    9.388177] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
35.852: [    9.396501] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
35.852: [    9.404871] random: get_random_u32 called from randomize_page+0x42/0x57 with crng_init=1
35.854: [    9.415065] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
35.855: [    9.424485] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
35.862: [    9.440233] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
35.866: [    9.453590] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
35.868: [    9.464392] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
35.906: [    9.510427] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
35.907: [    9.520115] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
35.907: [    9.528391] random: get_random_u32 called from load_elf_binary+0x76a/0x1d20 with crng_init=1
35.907: [    9.536920] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
35.907: [    9.545283] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
35.907: [    9.553599] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
35.907: [    9.561968] random: get_random_u32 called from randomize_page+0x42/0x57 with crng_init=1
35.911: [    9.573942] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
35.912: [    9.583337] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
35.912: [    9.591616] random: get_random_u32 called from load_elf_binary+0x76a/0x1d20 with crng_init=1
35.912: [    9.600153] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
35.912: [    9.608528] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
35.912: [    9.616846] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
35.912: [    9.625219] random: get_random_u32 called from randomize_page+0x42/0x57 with crng_init=1
35.917: [    9.637489] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
35.971: [    9.701074] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
35.972: [    9.710476] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
35.972: [    9.718758] random: get_random_u32 called from load_elf_binary+0x76a/0x1d20 with crng_init=1
35.972: [    9.727294] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
35.972: [    9.735662] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
35.972: [    9.743972] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
35.973: [    9.752356] random: get_random_u32 called from randomize_page+0x42/0x57 with crng_init=1
35.989: [    9.776994] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
35.990: [    9.786321] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
35.990: [    9.794608] random: get_random_u32 called from load_elf_binary+0x76a/0x1d20 with crng_init=1
35.990: [    9.803146] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
35.990: [    9.811512] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
35.990: [    9.819824] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
35.990: [    9.828195] random: get_random_u32 called from randomize_page+0x42/0x57 with crng_init=1
35.991: [    9.837226] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
35.992: [    9.846527] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
35.992: [    9.854807] random: get_random_u32 called from load_elf_binary+0x76a/0x1d20 with crng_init=1
35.992: [    9.863345] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
35.992: [    9.871711] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
35.992: [    9.880038] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
35.992: [    9.888406] random: get_random_u32 called from randomize_page+0x42/0x57 with crng_init=1
35.993: [    9.897308] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
35.994: [    9.906600] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
35.994: [    9.914880] random: get_random_u32 called from load_elf_binary+0x76a/0x1d20 with crng_init=1
35.994: [    9.923422] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
35.994: [    9.931793] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
35.994: [    9.940108] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
35.994: [    9.948469] random: get_random_u32 called from randomize_page+0x42/0x57 with crng_init=1
35.995: [    9.957601] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
35.996: [    9.966896] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
35.996: [    9.975180] random: get_random_u32 called from load_elf_binary+0x76a/0x1d20 with crng_init=1
35.996: [    9.983718] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
35.996: [    9.992080] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
35.996: [   10.000390] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
35.996: [   10.008751] random: get_random_u32 called from randomize_page+0x42/0x57 with crng_init=1
36.020: [   10.040598] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
36.021: [   10.050236] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
36.021: [   10.058518] random: get_random_u32 called from load_elf_binary+0x76a/0x1d20 with crng_init=1
36.021: [   10.067053] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
36.021: [   10.075428] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
36.021: [   10.083743] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
36.022: [   10.092115] random: get_random_u32 called from randomize_page+0x42/0x57 with crng_init=1
36.023: [   10.101512] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
36.023: [   10.110876] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
36.023: [   10.119165] random: get_random_u32 called from load_elf_binary+0x76a/0x1d20 with crng_init=1
36.024: [   10.127698] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
36.024: [   10.136113] random: get_random_u32 called from randomize_page+0x42/0x57 with crng_init=1
36.026: [   10.146271] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
36.027: [   10.155829] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
36.027: [   10.164108] random: get_random_u32 called from load_elf_binary+0x76a/0x1d20 with crng_init=1
36.027: [   10.172645] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
36.027: [   10.181012] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
36.027: [   10.189320] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
36.027: [   10.197679] random: get_random_u32 called from randomize_page+0x42/0x57 with crng_init=1
36.031: [   10.207044] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
36.031: [   10.218540] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
36.031: [   10.226827] random: get_random_u32 called from load_elf_binary+0x76a/0x1d20 with crng_init=1
36.031: [   10.235365] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
36.032: [   10.243776] random: get_random_u32 called from randomize_page+0x42/0x57 with crng_init=1
36.034: [   10.253908] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
36.034: [   10.263492] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
36.034: [   10.271770] random: get_random_u32 called from load_elf_binary+0x76a/0x1d20 with crng_init=1
36.035: [   10.280306] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
36.035: [   10.288719] random: get_random_u32 called from randomize_page+0x42/0x57 with crng_init=1
36.037: [   10.299044] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
36.037: [   10.308328] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
36.038: [   10.316605] random: get_random_u32 called from load_elf_binary+0x76a/0x1d20 with crng_init=1
36.038: [   10.325149] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
36.038: [   10.333518] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
36.038: [   10.341829] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
36.038: [   10.350198] random: get_random_u32 called from randomize_page+0x42/0x57 with crng_init=1
36.040: [   10.360210] random: get_random_u32 called from cache_random_seq_create+0xa3/0x1f0 with crng_init=1
36.040: [   10.360353] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
36.040: [   10.369297] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
36.042: [   10.389121] random: get_random_u32 called from cache_random_seq_create+0xa3/0x1f0 with crng_init=1
36.043: [   10.389270] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
36.043: [   10.398209] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
36.043: [   10.415978] random: get_random_u32 called from cache_random_seq_create+0xa3/0x1f0 with crng_init=1
36.043: [   10.425064] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
36.043: [   10.433866] random: get_random_u32 called from cache_random_seq_create+0xa3/0x1f0 with crng_init=1
36.043: [   10.443164] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
36.044: [   10.452441] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
36.044: [   10.461428] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
36.044: [   10.470411] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
36.045: [   10.479596] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
36.047: [   10.490351] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
36.047: [   10.499403] random: get_random_u32 called from cache_random_seq_create+0xa3/0x1f0 with crng_init=1
36.048: [   10.509242] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
36.049: [   10.518636] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
36.049: [   10.526933] random: get_random_u32 called from load_elf_binary+0x76a/0x1d20 with crng_init=1
36.049: [   10.535463] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
36.049: [   10.543893] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
36.049: [   10.552213] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
36.049: [   10.560590] random: get_random_u32 called from randomize_page+0x42/0x57 with crng_init=1
36.050: [   10.569467] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
36.051: [   10.578717] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
36.051: [   10.586996] random: get_random_u32 called from load_elf_binary+0x76a/0x1d20 with crng_init=1
36.051: [   10.595525] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
36.051: [   10.603881] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
36.051: [   10.612183] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
36.051: [   10.620547] random: get_random_u32 called from randomize_page+0x42/0x57 with crng_init=1
36.110: [   10.687800] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
36.110: [   10.688364] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
36.111: [   10.705099] random: get_random_u32 called from load_elf_binary+0x76a/0x1d20 with crng_init=1
36.111: [   10.705104] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
36.111: [   10.705119] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
36.111: [   10.705170] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
36.111: [   10.738677] random: get_random_u32 called from randomize_page+0x42/0x57 with crng_init=1
36.140: [   10.775664] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
36.196: [   10.839813] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
36.197: [   10.850520] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
36.243: [   10.905096] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
36.244: [   10.914519] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
36.244: [   10.915367] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
36.244: [   10.922818] random: get_random_u32 called from load_elf_binary+0x76a/0x1d20 with crng_init=1
36.244: [   10.940140] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
36.244: [   10.948508] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
36.244: [   10.956827] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
36.244: [   10.965195] random: get_random_u32 called from randomize_page+0x42/0x57 with crng_init=1
36.249: [   10.977889] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
36.254: [   10.991716] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
36.258: [   11.004047] random: get_random_u32 called from cache_random_seq_create+0xa3/0x1f0 with crng_init=1
36.258: [   11.013122] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
36.259: [   11.023041] EXT4-fs (dm-0): mounted filesystem with ordered data mode. Opts: (null)
36.273: [   11.044213] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
36.273: [   11.053576] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
36.273: [   11.061867] random: get_random_u32 called from load_elf_binary+0x76a/0x1d20 with crng_init=1
36.273: [   11.070409] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
36.274: [   11.078789] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
36.274: [   11.087109] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
36.274: [   11.095483] random: get_random_u32 called from randomize_page+0x42/0x57 with crng_init=1
36.276: [   11.105474] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
36.276: [   11.114771] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
36.276: [   11.123059] random: get_random_u32 called from load_elf_binary+0x76a/0x1d20 with crng_init=1
36.276: [   11.131599] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
36.277: [   11.139978] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
36.277: [   11.148291] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
36.277: [   11.156660] random: get_random_u32 called from randomize_page+0x42/0x57 with crng_init=1
36.278: [   11.165942] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
36.279: [   11.175237] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
36.281: [   11.183520] random: get_random_u32 called from load_elf_binary+0x76a/0x1d20 with crng_init=1
36.281: [   11.194258] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
36.281: [   11.202631] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
36.281: [   11.210948] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
36.281: [   11.219315] random: get_random_u32 called from randomize_page+0x42/0x57 with crng_init=1
36.282: [   11.227999] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
36.282: [   11.237257] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
36.282: [   11.245537] random: get_random_u32 called from load_elf_binary+0x76a/0x1d20 with crng_init=1
36.283: [   11.254064] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
36.283: [   11.262423] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
36.283: [   11.270729] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
36.283: [   11.279090] random: get_random_u32 called from randomize_page+0x42/0x57 with crng_init=1
36.301: [   11.304733] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
36.301: [   11.304741] random: get_random_u32 called from bucket_table_alloc+0x163/0x340 with crng_init=1
36.301: [   11.322786] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
36.301: [   11.331072] random: get_random_u32 called from load_elf_binary+0x76a/0x1d20 with crng_init=1
36.301: [   11.339637] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
36.302: [   11.348020] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
36.302: [   11.356335] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
36.302: [   11.364707] random: get_random_u32 called from randomize_page+0x42/0x57 with crng_init=1
36.303: [   11.373839] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
36.306: [   11.386018] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
36.307: [   11.395332] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
36.307: [   11.403610] random: get_random_u32 called from load_elf_binary+0x76a/0x1d20 with crng_init=1
36.307: [   11.412142] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
36.307: [   11.420540] random: get_random_u32 called from randomize_page+0x42/0x57 with crng_init=1
36.308: [   11.428967] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
36.308: [   11.438229] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
36.308: [   11.446505] random: get_random_u32 called from load_elf_binary+0x76a/0x1d20 with crng_init=1
36.308: [   11.455031] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
36.308: [   11.463388] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
36.308: [   11.471688] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
36.309: [   11.480049] random: get_random_u32 called from randomize_page+0x42/0x57 with crng_init=1
36.310: [   11.489143] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
36.310: [   11.498404] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
36.310: [   11.506686] random: get_random_u32 called from load_elf_binary+0x76a/0x1d20 with crng_init=1
36.310: [   11.515225] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
36.310: [   11.523597] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
36.311: [   11.531915] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
36.311: [   11.540284] random: get_random_u32 called from randomize_page+0x42/0x57 with crng_init=1
36.311: [   11.548892] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
36.316: [   11.561795] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
36.316: [   11.571114] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
36.316: [   11.579399] random: get_random_u32 called from load_elf_binary+0x76a/0x1d20 with crng_init=1
36.316: [   11.587943] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
36.316: [   11.596368] random: get_random_u32 called from randomize_page+0x42/0x57 with crng_init=1
36.318: [   11.606056] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
36.341: [   11.637906] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
36.342: [   11.647257] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
36.342: [   11.655540] random: get_random_u32 called from load_elf_binary+0x76a/0x1d20 with crng_init=1
36.342: [   11.664068] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
36.342: [   11.672471] random: get_random_u32 called from randomize_page+0x42/0x57 with crng_init=1
36.342: [   11.680972] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
36.343: [   11.690235] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
36.343: [   11.698514] random: get_random_u32 called from load_elf_binary+0x76a/0x1d20 with crng_init=1
36.343: [   11.707043] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
36.343: [   11.715397] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
36.343: [   11.723697] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
36.343: [   11.732057] random: get_random_u32 called from randomize_page+0x42/0x57 with crng_init=1
36.349: [   11.745379] random: get_random_u32 called from copy_process.part.33+0x186/0x2100 with crng_init=1
36.349: [   11.754660] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
36.349: [   11.762947] random: get_random_u32 called from load_elf_binary+0x76a/0x1d20 with crng_init=1
36.349: [   11.771488] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
36.349: [   11.779859] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
36.350: [   11.788173] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
36.350: [   11.796544] random: get_random_u32 called from randomize_page+0x42/0x57 with crng_init=1
36.352: [   11.806962] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
36.355: [   11.818297] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
36.355: [   11.826584] random: get_random_u32 called from load_elf_binary+0x76a/0x1d20 with crng_init=1
36.355: [   11.835126] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
36.355: [   11.843563] random: get_random_u32 called from randomize_page+0x42/0x57 with crng_init=1
36.362: [   11.858878] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
36.371: [   11.875857] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
36.371: [   11.884139] random: get_random_u32 called from load_elf_binary+0x76a/0x1d20 with crng_init=1
36.371: [   11.892676] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
36.371: [   11.901050] random: get_random_u32 called from arch_rnd.part.2+0x18/0x40 with crng_init=1
36.380: [   11.917630] random: get_random_u32 called from arch_align_stack+0x45/0x70 with crng_init=1
36.380: [   11.926006] random: get_random_u32 called from randomize_page+0x42/0x57 with crng_init=1
36.401: [   11.955898] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
36.923: [   12.485686] systemd[1]: systemd 232 running in system mode. (+PAM +AUDIT +SELINUX +IMA +APPARMOR +SMACK +SYSVINIT +UTMP +LIBCRYPTSETUP +GCRYPT +GNUTLS +ACL +XZ +LZ4 +SECCOMP +BLKID +ELFUTILS +KMOD +IDN)
36.939: [   12.520286] systemd[1]: Detected architecture x86.
36.950: [   12.535636] systemd[1]: Set hostname to <gm-debian>.
36.951: [   12.541437] random: get_random_u32 called from bucket_table_alloc+0x163/0x340 with crng_init=1
36.963: [   12.561900] random: get_random_u32 called from cache_alloc_refill+0x5bb/0x13d0 with crng_init=1
36.965: [   12.572914] random: crng init done
37.384: [   12.995005] systemd[1]: Listening on Syslog Socket.
37.384: [   13.000548] systemd[1]: Listening on udev Kernel Socket.
37.385: [   13.006387] systemd[1]: Started Dispatch Password Requests to Console Directory Watch.
37.388: [   13.015061] systemd[1]: Set up automount Arbitrary Executable File Formats File System Automount Point.
37.388: [   13.027152] systemd[1]: Listening on Journal Socket (/dev/log).
37.389: [   13.033801] systemd[1]: Created slice User and Session Slice.
37.390: [   13.040125] systemd[1]: Listening on Network Service Netlink Socket.
37.494: [   13.150791] EXT4-fs (dm-0): re-mounted. Opts: errors=remount-ro,discard
38.823: [   14.486802] systemd-journald[261]: Received request to flush runtime journal from PID 1
38.878: [   14.549752] systemd-journald[261]: File /var/log/journal/3606b1ddb0854918b8e3d24578588f9c/system.journal corrupted or uncleanly shut down, renaming and replacing.
39.061: [   14.746908] shpchp: Standard Hot Plug PCI Controller Driver version: 0.4
39.072: [   14.764543] ACPI: bus type USB registered
39.078: [   14.774861] usbcore: registered new interface driver usbfs
39.079: [   14.780671] usbcore: registered new interface driver hub
39.080: [   14.787956] usbcore: registered new device driver usb
39.098: [   14.810939] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
39.102: [   14.820561] ACPI: AC Adapter [AC] (on-line)
39.106: [   14.828692] input: Sleep Button as /devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/device:22/PNP0C09:00/PNP0C0E:00/input/input2
39.106: [   14.840443] ACPI Error: AE_NOT_FOUND, Error reading AC Adapter state (20180313/ac-139)
39.107: [   14.848752] ACPI: Sleep Button [SLPB]
39.107: [   14.853151] input: Lid Switch as /devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/device:22/PNP0C09:00/PNP0C0D:00/input/input3
39.108: [   14.864976] uhci_hcd: USB Universal Host Controller Interface driver
39.113: [   14.875748] uhci_hcd 0000:00:1d.0: UHCI Host Controller
39.115: [   14.883452] ACPI: Lid Switch [LID]
39.115: [   14.886983] uhci_hcd 0000:00:1d.0: new USB bus registered, assigned bus number 1
39.116: [   14.894635] input: Power Button as /devices/LNXSYSTM:00/LNXPWRBN:00/input/input4
39.116: [   14.902198] uhci_hcd 0000:00:1d.0: detected 2 ports
39.117: [   14.908488] ACPI: Power Button [PWRF]
39.119: [   14.914352] uhci_hcd 0000:00:1d.0: irq 16, io base 0x00005000
39.121: [   14.921472] usb usb1: New USB device found, idVendor=1d6b, idProduct=0001, bcdDevice= 4.17
39.121: [   14.929888] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
39.121: [   14.937204] usb usb1: Product: UHCI Host Controller
39.121: [   14.942157] usb usb1: Manufacturer: Linux 4.17.0-rc2+ uhci_hcd
39.121: [   14.948067] usb usb1: SerialNumber: 0000:00:1d.0
39.123: [   14.954861] hub 1-0:1.0: USB hub found
39.124: [   14.958734] hub 1-0:1.0: 2 ports detected
39.124: [   14.963428] uhci_hcd 0000:00:1d.1: UHCI Host Controller
39.124: [   14.968763] uhci_hcd 0000:00:1d.1: new USB bus registered, assigned bus number 2
39.125: [   14.976560] uhci_hcd 0000:00:1d.1: detected 2 ports
39.125: [   14.981580] uhci_hcd 0000:00:1d.1: irq 17, io base 0x00005020
39.127: [   14.989063] usb usb2: New USB device found, idVendor=1d6b, idProduct=0001, bcdDevice= 4.17
39.127: [   14.997462] usb usb2: New USB device strings: Mfr=3, Product=2, SerialNumber=1
39.127: [   15.004790] usb usb2: Product: UHCI Host Controller
39.127: [   15.009748] usb usb2: Manufacturer: Linux 4.17.0-rc2+ uhci_hcd
39.127: [   15.015660] usb usb2: SerialNumber: 0000:00:1d.1
39.130: [   15.022909] hub 2-0:1.0: USB hub found
39.130: [   15.026774] hub 2-0:1.0: 2 ports detected
39.131: [   15.031470] uhci_hcd 0000:00:1d.2: UHCI Host Controller
39.132: [   15.037938] uhci_hcd 0000:00:1d.2: new USB bus registered, assigned bus number 3
39.132: [   15.045474] uhci_hcd 0000:00:1d.2: detected 2 ports
39.133: [   15.051159] uhci_hcd 0000:00:1d.2: irq 18, io base 0x00005040
39.133: [   15.057132] usb usb3: New USB device found, idVendor=1d6b, idProduct=0001, bcdDevice= 4.17
39.133: [   15.065499] usb usb3: New USB device strings: Mfr=3, Product=2, SerialNumber=1
39.133: [   15.072814] usb usb3: Product: UHCI Host Controller
39.133: [   15.077768] usb usb3: Manufacturer: Linux 4.17.0-rc2+ uhci_hcd
39.134: [   15.083680] usb usb3: SerialNumber: 0000:00:1d.2
39.135: [   15.089764] hub 3-0:1.0: USB hub found
39.135: [   15.093633] hub 3-0:1.0: 2 ports detected
39.136: [   15.098337] uhci_hcd 0000:00:1d.3: UHCI Host Controller
39.136: [   15.103668] uhci_hcd 0000:00:1d.3: new USB bus registered, assigned bus number 4
39.137: [   15.112389] uhci_hcd 0000:00:1d.3: detected 2 ports
39.138: [   15.117430] uhci_hcd 0000:00:1d.3: irq 19, io base 0x00005060
39.138: [   15.123405] usb usb4: New USB device found, idVendor=1d6b, idProduct=0001, bcdDevice= 4.17
39.138: [   15.131797] usb usb4: New USB device strings: Mfr=3, Product=2, SerialNumber=1
39.138: [   15.139133] usb usb4: Product: UHCI Host Controller
39.138: [   15.144092] usb usb4: Manufacturer: Linux 4.17.0-rc2+ uhci_hcd
39.138: [   15.150001] usb usb4: SerialNumber: 0000:00:1d.3
39.139: [   15.155218] hub 4-0:1.0: USB hub found
39.139: [   15.159065] hub 4-0:1.0: 2 ports detected
39.147: [   15.170918] ACPI: Battery Slot [BAT0] (battery absent)
39.148: [   15.176954] ACPI: Battery Slot [BAT1] (battery absent)
39.156: [   15.190126] Non-volatile memory driver v1.3
39.187: [   15.225157] ehci-pci: EHCI PCI platform driver
39.187: [   15.230155] e1000e: Intel(R) PRO/1000 Network Driver - 3.2.6-k
39.187: [   15.236099] e1000e: Copyright(c) 1999 - 2015 Intel Corporation.
39.237: [   15.291442] e1000e 0000:01:00.0: Interrupt Throttling Rate (ints/sec) set to dynamic conservative mode
39.266: [   15.330001] intel_rng: FWH not detected
39.306: [   15.373200] thinkpad_acpi: ThinkPad ACPI Extras v0.26
39.306: [   15.378343] thinkpad_acpi: http://ibm-acpi.sf.net/
39.306: [   15.383213] thinkpad_acpi: ThinkPad BIOS CBET4000 TIMELESS, EC 7JHT12WW-3.4
39.306: [   15.390250] thinkpad_acpi: Lenovo ThinkPad X60 Tablet, model 636338U
39.320: [   15.410537] thinkpad_acpi: radio switch found; radios are disabled
39.337: [   15.433850] sdhci: Secure Digital Host Controller Interface driver
39.337: [   15.440126] sdhci: Copyright(c) Pierre Ossman
39.352: [   15.459622] yenta_cardbus 0000:05:00.0: CardBus bridge found [0000:0000]
39.358: [   15.472509] cfg80211: Loading compiled-in X.509 certificates for regulatory database
39.359: [   15.480887] ehci-pci 0000:00:1d.7: EHCI Host Controller
39.390: [   15.516719] cfg80211: Loaded X.509 cert 'sforshee: 00b28ddf47aef9cea7'
39.401: [   15.534257] e1000e 0000:01:00.0 eth0: (PCI Express:2.5GT/s:Width x1) 00:16:d3:b8:e3:49
39.401: [   15.542277] e1000e 0000:01:00.0 eth0: Intel(R) PRO/1000 Network Connection
39.401: [   15.549400] e1000e 0000:01:00.0 eth0: MAC: 2, PHY: 2, PBA No: 005302-003
39.404: [   15.559535] ehci-pci 0000:00:1d.7: new USB bus registered, assigned bus number 5
39.406: [   15.568315] ehci-pci 0000:00:1d.7: debug port 1
39.413: [   15.579462] thinkpad_acpi: Tablet mode switch found (type: MHKG), currently in laptop mode
39.420: [   15.594721] thinkpad_acpi: This ThinkPad has standard ACPI backlight brightness control, supported by the ACPI video driver
39.420: [   15.595910] platform regulatory.0: Direct firmware load for regulatory.db failed with error -2
39.420: [   15.605979] thinkpad_acpi: Disabling thinkpad-acpi brightness events by default...
39.420: [   15.614673] cfg80211: failed to load regulatory.db
39.420: [   15.622507] ehci-pci 0000:00:1d.7: irq 19, io mem 0xe4444000
39.421: [   15.634267] yenta_cardbus 0000:05:00.0: ISA IRQ mask 0x0ca8, PCI irq 16
39.421: [   15.640978] yenta_cardbus 0000:05:00.0: Socket status: 30000006
39.422: [   15.647346] yenta_cardbus 0000:05:00.0: pcmcia: parent PCI bridge window: [io  0x2000-0x3fff]
39.426: [   15.657712] yenta_cardbus 0000:05:00.0: pcmcia: parent PCI bridge window: [mem 0xe0000000-0xe20fffff]
39.427: [   15.670286] ehci-pci 0000:00:1d.7: USB 2.0 started, EHCI 1.00
39.428: [   15.677015] usb usb5: New USB device found, idVendor=1d6b, idProduct=0002, bcdDevice= 4.17
39.428: [   15.685374] usb usb5: New USB device strings: Mfr=3, Product=2, SerialNumber=1
39.428: [   15.692686] usb usb5: Product: EHCI Host Controller
39.428: [   15.697638] usb usb5: Manufacturer: Linux 4.17.0-rc2+ ehci_hcd
39.429: [   15.703557] usb usb5: SerialNumber: 0000:00:1d.7
39.433: [   15.712543] pcmcia_socket pcmcia_socket0: cs: memory probe 0xe0000000-0xe20fffff:
39.434: [   15.721070]  excluding 0xe1ef0000-0xe20fffff
39.434: [   15.725494] yenta_cardbus 0000:05:00.0: pcmcia: parent PCI bridge window: [mem 0xe2100000-0xe40fffff 64bit pref]
39.437: [   15.738683] pcmcia_socket pcmcia_socket0: cs: memory probe 0xe2100000-0xe40fffff:
39.439: [   15.747612] hub 5-0:1.0: USB hub found
39.448: [   15.760086] thinkpad_acpi: Standard ACPI backlight interface available, not loading native one
39.467: [   15.788085] thinkpad_acpi: Console audio control enabled, mode: monitor (read only)
39.582: [   15.910960] battery: new extension: ThinkPad Battery Extension
39.615: [   15.949486] hub 5-0:1.0: 8 ports detected
39.623: [   15.961916] input: ThinkPad Extra Buttons as /devices/platform/thinkpad_acpi/input/input5
39.623: [   15.962232] usb usb1: root hub lost power or was reset
39.624: [   15.971994]  excluding 0xe2100000-0xe40fffff
39.626: [   15.981784] hub 1-0:1.0: USB hub found
39.627: [   15.986723] hub 1-0:1.0: 2 ports detected
39.640: [   16.003718] usb usb2: root hub lost power or was reset
39.641: [   16.009571] hub 2-0:1.0: USB hub found
39.654: [   16.026245] iwl3945: Intel(R) PRO/Wireless 3945ABG/BG Network Connection driver for Linux, in-tree:s
39.654: [   16.035536] iwl3945: Copyright(c) 2003-2011 Intel Corporation
39.654: [   16.041367] iwl3945: hw_scan is disabled
39.654: [   16.045433] hub 2-0:1.0: 2 ports detected
39.654: [   16.049948] usb usb3: root hub lost power or was reset
39.655: [   16.055715] hub 3-0:1.0: USB hub found
39.655: [   16.059613] hub 3-0:1.0: 2 ports detected
39.700: [   16.108110] firewire_ohci 0000:05:00.1: added OHCI v1.10 device as card 0, 4 IR + 4 IT contexts, quirks 0x11
39.704: [   16.122178] usb usb4: root hub lost power or was reset
39.704: [   16.127784] hub 4-0:1.0: USB hub found
39.710: [   16.136710] hub 4-0:1.0: 2 ports detected
39.710: [   16.137337] i801_smbus 0000:00:1f.3: SMBus using PCI interrupt
39.715: [   16.151527] iwl3945 0000:02:00.0: Tunable channels: 11 802.11bg, 13 802.11a channels
39.715: [   16.158297] sdhci-pci 0000:05:00.2: SDHCI controller found [1180:0822] (rev 18)
39.715: [   16.159720] iwl3945 0000:02:00.0: Detected Intel Wireless WiFi Link 3945ABG
39.723: [   16.182268] 1
39.725: [   16.182286] 2
39.734: [   16.196303] snd_hda_intel 0000:00:1b.0: probe_mask set to 0x1 for device 17aa:2010
39.735: [   16.197312] input: PC Speaker as /devices/platform/pcspkr/input/input7
39.735: [   16.204149] 3
39.735: [   16.210643] 4
39.735: [   16.212308] 5
39.735: [   16.213979] 6
39.735: [   16.215658] 7
39.735: [   16.217366] 8
39.736: [   16.219008] 9
39.736: [   16.222962] leds_ss4200: no LED devices found
39.737: [   16.228287] sdhci-pci 0000:05:00.2: Will use DMA mode even though HW doesn't fully claim to support it.
39.737: [   16.237981] mmc0 bounce up to 128 segments into one, max segment size 65536 bytes
39.737: [   16.245635] sdhci-pci 0000:05:00.2: Will use DMA mode even though HW doesn't fully claim to support it.
39.744: [   16.261130] sdhci-pci 0000:05:00.2: Will use DMA mode even though HW doesn't fully claim to support it.
39.765: [   16.291952] snd_hda_codec_analog hdaudioC0D0: autoconfig for AD1981: line_outs=1 (0x5/0x0/0x0/0x0/0x0) type:speaker
39.765: [   16.302509] snd_hda_codec_analog hdaudioC0D0:    speaker_outs=0 (0x0/0x0/0x0/0x0/0x0)
39.765: [   16.310433] snd_hda_codec_analog hdaudioC0D0:    hp_outs=0 (0x0/0x0/0x0/0x0/0x0)
39.765: [   16.317630] usb 5-6: new high-speed USB device number 2 using ehci-pci
39.766: [   16.317929] snd_hda_codec_analog hdaudioC0D0:    mono: mono_out=0x0
39.766: [   16.330868] snd_hda_codec_analog hdaudioC0D0:    dig-out=0xa/0x0
39.766: [   16.336979] snd_hda_codec_analog hdaudioC0D0:    inputs:
39.819: [   16.395797] mmc0: SDHCI controller on PCI [0000:05:00.2] using DMA
39.820: [   16.402725] snd_hda_codec_analog hdaudioC0D0:      Mic=0x8
39.822: [   16.409694] snd_hda_codec_analog hdaudioC0D0:      CD=0x19
39.884: [   16.477682] input: HDA Digital PCBeep as /devices/pci0000:00/0000:00:1b.0/sound/card0/input8
39.918: [   16.520379] usb 5-6: New USB device found, idVendor=17ef, idProduct=1000, bcdDevice= 0.01
39.918: [   16.528692] usb 5-6: New USB device strings: Mfr=0, Product=0, SerialNumber=0
39.931: [   16.548492] intel_powerclamp: No package C-state available
39.966: [   16.589286] hub 5-6:1.0: USB hub found
39.978: [   16.604065] hub 5-6:1.0: 4 ports detected
40.012: [   16.642155] firewire_core 0000:05:00.1: created device fw0: GUID 0000000000000000, S400
40.216: [   16.854773] psmouse serio1: trackpoint: IBM TrackPoint firmware: 0x0e, buttons: 3/3
40.244: [   16.890458] e1000e 0000:01:00.0 eth8: renamed from eth0
40.265: [   16.916120] input: TPPS/2 IBM TrackPoint as /devices/platform/i8042/serio1/input/input6
40.290: [   16.949526] EXT4-fs (sda1): mounted filesystem with ordered data mode. Opts: discard
40.354: [   17.021025] iTCO_vendor_support: vendor-support=0
40.422: [   17.093920] iTCO_wdt: Intel TCO WatchDog Timer Driver v1.11
40.488: [   17.164974] IPv6: ADDRCONF(NETDEV_UP): eth8: link is not ready
40.577: [   17.260465] iwl3945 0000:02:00.0 wlan4: renamed from wlan0
40.605: [   17.293128] mousedev: PS/2 mouse device common for all mice
40.632: [   17.325763] iTCO_wdt: Found a ICH7-M or ICH7-U TCO device (Version=2, TCOBASE=0x0560)
40.650: [   17.352170] iTCO_wdt: initialized. heartbeat=30 sec (nowayout=0)
42.819: [   19.526426] serio: Serial port ttyS0
42.987: 
43.000: Debian GNU/Linux 9 gm-debian ttyS1
43.000: 
43.013: gm-debian login: 

======= Mon Apr 23 23:25:05 2018 (adjust=86.8us)
00.000: [   80.520289] systemd-journald[261]: File /var/log/journal/3606b1ddb0854918b8e3d24578588f9c/user-1000.journal corrupted or uncleanly shut down, renaming and replacing.
09.566: [   90.101235] PM: suspend entry (deep)
09.709: [   90.104903] PM: Syncing filesystems ... done.
09.716: [   90.258131] Freezing user space processes ... (elapsed 0.001 seconds) done.
09.716: [   90.266501] OOM killer disabled.
09.718: [   90.269800] Freezing remaining freezable tasks ... (elapsed 0.001 seconds) done.
09.718: [   90.278769] calling  input6+ @ 603, parent: serio1
09.718: [   90.283639] call input6+ returned 0 after 2 usecs
09.718: [   90.288425] calling  coretemp.0+ @ 603, parent: platform
09.718: [   90.288465] calling  5-6+ @ 120, parent: usb5
09.719: [   90.293813] call coretemp.0+ returned 0 after 1 usecs
09.719: [   90.293829] calling  input8+ @ 603, parent: card0
09.719: [   90.308141] call input8+ returned 0 after 1 usecs
09.719: [   90.312912] calling  rfkill0+ @ 603, parent: phy0
09.719: [   90.317683] call rfkill0+ returned 0 after 1 usecs
09.719: [   90.322540] calling  phy0-led+ @ 603, parent: 0000:02:00.0
09.719: [   90.322562] calling  phy0+ @ 119, parent: 0000:02:00.0
09.719: [   90.328110] call phy0-led+ returned 0 after 2 usecs
09.719: [   90.328134] calling  mmc0::+ @ 603, parent: 0000:05:00.2
09.719: [   90.333338] call phy0+ returned 0 after 6 usecs
09.719: [   90.338276] call mmc0::+ returned 0 after 1 usecs
09.719: [   90.353020] calling  input7+ @ 603, parent: pcspkr
09.720: [   90.353036] calling  hdaudioC0D0+ @ 119, parent: 0000:00:1b.0
09.720: [   90.357877] call input7+ returned 0 after 1 usecs
09.720: [   90.357881] calling  gpio_ich.1.auto+ @ 603, parent: 0000:00:1f.0
09.720: [   90.374639] call gpio_ich.1.auto+ returned 0 after 1 usecs
09.720: [   90.380193] calling  iTCO_wdt.0.auto+ @ 603, parent: 0000:00:1f.0
09.720: [   90.386374] call iTCO_wdt.0.auto+ returned 0 after 1 usecs
09.720: [   90.392115] calling  input5+ @ 603, parent: thinkpad_acpi
09.720: [   90.397617] call input5+ returned 0 after 1 usecs
09.721: [   90.402470] calling  tpacpi::thinkvantage+ @ 603, parent: thinkpad_acpi
09.721: [   90.404060] call 5-6+ returned 0 after 103336 usecs
09.721: [   90.409178] call tpacpi::thinkvantage+ returned 0 after 1 usecs
09.721: [   90.409184] calling  tpacpi::standby+ @ 603, parent: thinkpad_acpi
09.721: [   90.414143] calling  usb5+ @ 118, parent: 0000:00:1d.7
09.721: [   90.415109] call usb5+ returned 0 after 939 usecs
09.721: [   90.420180] call tpacpi::standby+ returned 0 after 1 usecs
09.721: [   90.441994] calling  tpacpi::power+ @ 603, parent: thinkpad_acpi
09.721: [   90.448078] call tpacpi::power+ returned 0 after 1 usecs
09.721: [   90.453470] calling  regulatory.0+ @ 603, parent: platform
09.722: [   90.459033] call regulatory.0+ returned 0 after 1 usecs
09.722: [   90.464336] calling  thinkpad_hwmon+ @ 603, parent: platform
09.722: [   90.470074] call thinkpad_hwmon+ returned 0 after 1 usecs
09.722: [   90.475550] calling  thinkpad_acpi+ @ 603, parent: platform
09.722: [   90.481432] call thinkpad_acpi+ returned 0 after 226 usecs
09.722: [   90.487018] calling  input4+ @ 603, parent: LNXPWRBN:00
09.722: [   90.487054] calling  usb3+ @ 6, parent: 0000:00:1d.2
09.722: [   90.492337] call input4+ returned 0 after 1 usecs
09.723: [   90.497446] calling  usb4+ @ 120, parent: 0000:00:1d.3
09.723: [   90.502175] calling  input3+ @ 603, parent: PNP0C0D:00
09.723: [   90.507387] calling  usb2+ @ 118, parent: 0000:00:1d.1
09.723: [   90.512603] call input3+ returned 0 after 1 usecs
09.723: [   90.512608] calling  input2+ @ 603, parent: PNP0C0E:00
09.723: [   90.524034] calling  usb1+ @ 121, parent: 0000:00:1d.0
09.723: [   90.527845] call input2+ returned 0 after 3 usecs
09.723: [   90.533049] call hdaudioC0D0+ returned 0 after 165392 usecs
09.723: [   90.537897] calling  microcode+ @ 603, parent: platform
09.723: [   90.544186] calling  0:0:0:0+ @ 119, parent: target0:0:0
09.724: [   90.548795] call microcode+ returned 0 after 1 usecs
09.724: [   90.554196] call 0:0:0:0+ returned 0 after 3 usecs
09.724: [   90.559234] calling  input0::scrolllock+ @ 603, parent: input0
09.724: [   90.564112] calling  target0:0:0+ @ 619, parent: host0
09.724: [   90.570011] call input0::scrolllock+ returned 0 after 1 usecs
09.724: [   90.570014] calling  input0::capslock+ @ 603, parent: input0
09.724: [   90.570019] call input0::capslock+ returned 0 after 1 usecs
09.724: [   90.575234] call target0:0:0+ returned 0 after 1 usecs
09.724: [   90.575461] call usb1+ returned 0 after 41427 usecs
09.725: [   90.581094] calling  input0::numlock+ @ 603, parent: input0
09.725: [   90.581099] call input0::numlock+ returned 0 after 1 usecs
09.725: [   90.581102] calling  input0+ @ 603, parent: serio0
09.725: [   90.581107] call input0+ returned 0 after 2 usecs
09.725: [   90.581110] calling  memconsole+ @ 603, parent: platform
09.725: [   90.581115] call memconsole+ returned 0 after 2 usecs
09.725: [   90.581119] calling  rtc0+ @ 603, parent: 00:03
09.725: [   90.581123] call rtc0+ returned 0 after 1 usecs
09.725: [   90.581126] calling  serio1+ @ 603, parent: i8042
09.725: [   90.581276] call usb2+ returned 0 after 61972 usecs
09.726: [   90.586925] call usb4+ returned 0 after 77680 usecs
09.726: [   90.592574] call usb3+ returned 0 after 92972 usecs
09.726: [   90.597813] calling  host3+ @ 620, parent: ata4
09.726: [   90.603223] calling  host2+ @ 6, parent: ata3
09.726: [   90.608375] call host3+ returned 0 after 1 usecs
09.726: [   90.608427] calling  host1+ @ 621, parent: ata2
09.726: [   90.613959] call host2+ returned 0 after 1 usecs
09.726: [   90.618833] call host1+ returned 0 after 3 usecs
09.726: [   90.623739] calling  host0+ @ 619, parent: ata1
09.726: [   90.629042] calling  ata4+ @ 120, parent: 0000:00:1f.2
09.726: [   90.634143] call host0+ returned 0 after 1 usecs
09.727: [   90.638761] calling  ata3+ @ 121, parent: 0000:00:1f.2
09.727: [   90.643381] call serio1+ returned 0 after 60791 usecs
09.727: [   90.648157] calling  ata2+ @ 620, parent: 0000:00:1f.2
09.727: [   90.653127] calling  ata1+ @ 118, parent: 0000:00:1f.2
09.727: [   90.658075] call ata4+ returned 0 after 18874 usecs
09.727: [   90.663051] calling  serio0+ @ 603, parent: i8042
09.727: [   90.667678] call ata3+ returned 0 after 19076 usecs
09.727: [   90.672081] call ata1+ returned 0 after 8846 usecs
09.727: [   90.672121] call ata2+ returned 0 after 13725 usecs
09.727: [   90.676808] call serio0+ returned 0 after 4622 usecs
09.727: [   90.755588] calling  i8042+ @ 603, parent: platform
09.730: [   90.762957] call i8042+ returned 0 after 2352 usecs
09.730: [   90.767923] calling  serial8250+ @ 603, parent: platform
09.730: [   90.773313] call serial8250+ returned 0 after 2 usecs
09.730: [   90.778463] calling  alarmtimer+ @ 603, parent: platform
09.730: [   90.783862] call alarmtimer+ returned 0 after 2 usecs
09.731: [   90.788993] calling  platform-framebuffer.0+ @ 603, parent: platform
09.731: [   90.795426] call platform-framebuffer.0+ returned 0 after 1 usecs
09.731: [   90.801599] calling  pcspkr+ @ 603, parent: platform
09.731: [   90.806648] call pcspkr+ returned 0 after 8 usecs
09.731: [   90.811502] calling  00:07+ @ 603, parent: pnp0
09.731: [   90.816137] call 00:07+ returned 0 after 15 usecs
09.731: [   90.820926] calling  00:06+ @ 603, parent: pnp0
09.731: [   90.825587] call 00:06+ returned 0 after 52 usecs
09.731: [   90.830370] calling  00:05+ @ 603, parent: pnp0
09.732: [   90.834982] call 00:05+ returned 0 after 1 usecs
09.732: [   90.839676] calling  00:04+ @ 603, parent: pnp0
09.732: [   90.844297] call 00:04+ returned 0 after 2 usecs
09.732: [   90.849017] calling  00:03+ @ 603, parent: pnp0
09.732: [   90.853651] call 00:03+ returned 0 after 20 usecs
09.732: [   90.858432] calling  00:02+ @ 603, parent: pnp0
09.732: [   90.863044] call 00:02+ returned 0 after 1 usecs
09.732: [   90.867739] calling  00:01+ @ 603, parent: pnp0
09.732: [   90.872350] call 00:01+ returned 0 after 1 usecs
09.732: [   90.877046] calling  00:00+ @ 603, parent: pnp0
09.733: [   90.881657] call 00:00+ returned 0 after 1 usecs
09.733: [   90.886363] calling  LNXPWRBN:00+ @ 603, parent: LNXSYSTM:00
09.733: [   90.892102] call LNXPWRBN:00+ returned 0 after 1 usecs
09.733: [   90.897317] calling  BOOT0000:00+ @ 603, parent: platform
09.733: [   90.902795] call BOOT0000:00+ returned 0 after 1 usecs
09.733: [   90.908018] calling  PNP0C0B:00+ @ 603, parent: platform
09.733: [   90.913411] call PNP0C0B:00+ returned 0 after 1 usecs
09.733: [   90.918541] calling  PNP0C04:00+ @ 603, parent: 0000:00:1f.0
09.733: [   90.924280] call PNP0C04:00+ returned 0 after 2 usecs
09.733: [   90.929417] calling  INT0800:00+ @ 603, parent: 0000:00:1f.0
09.734: [   90.935155] call INT0800:00+ returned 0 after 1 usecs
09.734: [   90.940290] calling  PNP0C0D:00+ @ 603, parent: PNP0C09:00
09.734: [   90.945858] call PNP0C0D:00+ returned 0 after 1 usecs
09.734: [   90.950989] calling  PNP0C0E:00+ @ 603, parent: PNP0C09:00
09.734: [   90.956553] call PNP0C0E:00+ returned 0 after 1 usecs
09.734: [   90.961682] calling  PNP0C0A:01+ @ 603, parent: PNP0C09:00
09.734: [   90.967257] call PNP0C0A:01+ returned 0 after 1 usecs
09.734: [   90.972395] calling  PNP0C0A:00+ @ 603, parent: PNP0C09:00
09.734: [   90.977958] call PNP0C0A:00+ returned 0 after 1 usecs
09.734: [   90.983089] calling  ACPI0003:00+ @ 603, parent: PNP0C09:00
09.735: [   90.988740] call ACPI0003:00+ returned 0 after 1 usecs
09.735: [   90.993956] calling  IBM0068:00+ @ 603, parent: PNP0C09:00
09.735: [   90.999524] call IBM0068:00+ returned 0 after 2 usecs
09.735: [   91.004661] calling  PNP0C09:00+ @ 603, parent: 0000:00:1f.0
09.735: [   91.010397] call PNP0C09:00+ returned 0 after 1 usecs
09.735: [   91.015559] calling  0000:05:00.2+ @ 121, parent: 0000:00:1e.0
09.735: [   91.015564] calling  LNXTHERM:01+ @ 603, parent: LNXSYBUS:01
09.735: [   91.021547] call 0000:05:00.2+ returned 0 after 69 usecs
09.735: [   91.027223] call LNXTHERM:01+ returned 0 after 3 usecs
09.735: [   91.027229] calling  LNXTHERM:00+ @ 603, parent: LNXSYBUS:01
09.736: [   91.032636] calling  0000:05:00.0+ @ 120, parent: 0000:00:1e.0
09.736: [   91.037838] call LNXTHERM:00+ returned 0 after 1 usecs
09.736: [   91.043575] call 0000:05:00.0+ returned 0 after 2 usecs
09.736: [   91.049487] calling  dock.0+ @ 603, parent: platform
09.736: [   91.049491] call dock.0+ returned 0 after 1 usecs
09.736: [   91.054714] calling  0000:02:00.0+ @ 621, parent: 0000:00:1c.1
09.736: [   91.060042] calling  PNP0C0D:00+ @ 603, parent: PNP0C09:00
09.736: [   91.065095] call 0000:02:00.0+ returned 0 after 38 usecs
09.736: [   91.069881] call PNP0C0D:00+ returned 0 after 1 usecs
09.736: [   91.075779] calling  0000:01:00.0+ @ 621, parent: 0000:00:1c.0
09.737: [   91.075874] calling  0000:00:1f.2+ @ 120, parent: pci0000:00
09.737: [   91.081430] calling  0000:00:1f.1+ @ 619, parent: pci0000:00
09.737: [   91.086831] call 0000:00:1f.2+ returned 0 after 6 usecs
09.737: [   91.091951] call 0000:00:1f.1+ returned 0 after 1 usecs
09.737: [   91.097867] calling  0000:00:1f.0+ @ 6, parent: pci0000:00
09.737: [   91.103606] calling  0000:05:00.1+ @ 620, parent: 0000:00:1e.0
09.737: [   91.109343] call 0000:00:1f.0+ returned 0 after 1 usecs
09.737: [   91.114662] calling  0000:00:1d.7+ @ 619, parent: pci0000:00
09.738: [   91.119953] calling  PNP0C0E:00+ @ 603, parent: PNP0C09:00
09.738: [   91.125594] call 0000:00:1d.7+ returned 0 after 73 usecs
09.738: [   91.131449] call PNP0C0E:00+ returned 0 after 1 usecs
09.738: [   91.131460] calling  0000:00:1d.3+ @ 118, parent: pci0000:00
09.738: [   91.136778] calling  0000:00:1d.2+ @ 619, parent: pci0000:00
09.738: [   91.142849] e1000e 0000:01:00.0: Disabling ASPM L0s L1
09.738: [   91.148281] call 0000:05:00.1+ returned 0 after 32845 usecs
09.738: [   91.153659] calling  0000:00:1d.1+ @ 623, parent: pci0000:00
09.738: [   91.158796] calling  0000:00:1d.0+ @ 622, parent: pci0000:00
09.739: [   91.164545] call 0000:00:1d.1+ returned 0 after 26 usecs
09.739: [   91.170281] calling  0000:00:1e.0+ @ 121, parent: pci0000:00
09.739: [   91.175497] call 0000:00:1d.3+ returned 0 after 32224 usecs
09.739: [   91.181143] call 0000:00:1e.0+ returned 0 after 1 usecs
09.739: [   91.189587] calling  PNP0C09:00+ @ 603, parent: device:22
09.739: [   91.192749] call 0000:00:1d.2+ returned 0 after 43445 usecs
09.739: [   91.198113] call PNP0C09:00+ returned 0 after 2 usecs
09.739: [   91.198133] calling  0000:00:1c.3+ @ 119, parent: pci0000:00
09.739: [   91.203865] calling  0000:00:1c.2+ @ 620, parent: pci0000:00
09.739: [   91.209585] calling  0000:00:1c.1+ @ 624, parent: pci0000:00
09.740: [   91.214839] calling  0000:00:1b.0+ @ 120, parent: pci0000:00
09.740: [   91.220483] call 0000:00:1c.3+ returned 0 after 10714 usecs
09.740: [   91.226029] call 0000:00:1d.0+ returned 0 after 54450 usecs
09.740: [   91.231119] calling  0000:00:02.1+ @ 623, parent: pci0000:00
09.740: [   91.236867] calling  0000:00:02.0+ @ 619, parent: pci0000:00
09.740: [   91.242587] call 0000:00:02.1+ returned 0 after 1 usecs
09.740: [   91.242603] calling  0000:00:00.0+ @ 625, parent: pci0000:00
09.741: [   91.248329] call 0000:00:02.0+ returned 0 after 1 usecs
09.741: [   91.254064] call 0000:00:00.0+ returned 0 after 1 usecs
09.741: [   91.259743] call 0000:00:1c.2+ returned 0 after 43860 usecs
09.741: [   91.269634] call 0000:00:1c.1+ returned 0 after 48171 usecs
09.741: [   91.271406] call 0000:00:1b.0+ returned 0 after 44373 usecs
09.741: [   91.288462] e1000e: EEE TX LPI TIMER: 00000000
09.764: [   91.343081] call 0000:01:00.0+ returned 0 after 261033 usecs
09.764: [   91.348849] calling  0000:00:1c.0+ @ 6, parent: pci0000:00
09.766: [   91.354427] call 0000:00:1c.0+ returned 0 after 3 usecs
09.767: [   91.362262] calling  BOOT0000:00+ @ 603, parent: platform
09.767: [   91.367753] call BOOT0000:00+ returned 0 after 2 usecs
09.767: [   91.372978] calling  PNP0C0B:00+ @ 603, parent: platform
09.767: [   91.378395] call PNP0C0B:00+ returned 0 after 8 usecs
09.767: [   91.383574] calling  0000:05:00.1+ @ 118, parent: 0000:00:1e.0
09.767: [   91.383691] calling  0000:05:00.0+ @ 621, parent: 0000:00:1e.0
09.767: [   91.389493] call 0000:05:00.1+ returned 0 after 1 usecs
09.768: [   91.395405] call 0000:05:00.0+ returned 0 after 1 usecs
09.768: [   91.395419] calling  0000:02:00.0+ @ 120, parent: 0000:00:1c.1
09.768: [   91.400717] calling  0000:05:00.2+ @ 6, parent: 0000:00:1e.0
09.768: [   91.406014] call 0000:02:00.0+ returned 0 after 1 usecs
09.768: [   91.406025] calling  0000:01:00.0+ @ 627, parent: 0000:00:1c.0
09.768: [   91.411928] call 0000:05:00.2+ returned 0 after 1 usecs
09.768: [   91.417664] call 0000:01:00.0+ returned 0 after 1 usecs
09.768: [   91.422972] calling  0000:00:1f.2+ @ 118, parent: pci0000:00
09.768: [   91.428883] calling  0000:00:1f.1+ @ 626, parent: pci0000:00
09.768: [   91.434182] call 0000:00:1f.2+ returned 0 after 1 usecs
09.769: [   91.439485] call 0000:00:1f.1+ returned 0 after 1 usecs
09.769: [   91.445230] calling  0000:00:1f.0+ @ 620, parent: pci0000:00
09.769: [   91.450967] calling  0000:00:1e.0+ @ 120, parent: pci0000:00
09.769: [   91.456267] call 0000:00:1f.0+ returned 0 after 1 usecs
09.769: [   91.461568] call 0000:00:1e.0+ returned 0 after 1 usecs
09.769: [   91.467316] calling  0000:00:1d.7+ @ 619, parent: pci0000:00
09.769: [   91.473051] calling  0000:00:1d.3+ @ 621, parent: pci0000:00
09.769: [   91.478350] call 0000:00:1d.7+ returned 0 after 1 usecs
09.769: [   91.483652] call 0000:00:1d.3+ returned 0 after 1 usecs
09.769: [   91.489402] calling  0000:00:1d.2+ @ 121, parent: pci0000:00
09.769: [   91.495131] calling  0000:00:1d.1+ @ 626, parent: pci0000:00
09.770: [   91.500433] call 0000:00:1d.2+ returned 0 after 2 usecs
09.770: [   91.505734] call 0000:00:1d.1+ returned 0 after 1 usecs
09.770: [   91.505747] calling  0000:00:1d.0+ @ 627, parent: pci0000:00
09.770: [   91.511485] calling  0000:00:1c.3+ @ 622, parent: pci0000:00
09.770: [   91.517207] call 0000:00:1d.0+ returned 0 after 1 usecs
09.770: [   91.517218] calling  0000:00:1c.2+ @ 120, parent: pci0000:00
09.770: [   91.522516] call 0000:00:1c.3+ returned 0 after 1 usecs
09.770: [   91.527819] call 0000:00:1c.2+ returned 0 after 1 usecs
09.770: [   91.533567] calling  0000:00:1c.1+ @ 625, parent: pci0000:00
09.770: [   91.539299] calling  0000:00:1c.0+ @ 626, parent: pci0000:00
09.771: [   91.544598] call 0000:00:1c.1+ returned 0 after 1 usecs
09.771: [   91.544613] calling  0000:00:1b.0+ @ 625, parent: pci0000:00
09.771: [   91.550343] call 0000:00:1c.0+ returned 0 after 1 usecs
09.771: [   91.550355] calling  0000:00:02.1+ @ 624, parent: pci0000:00
09.771: [   91.555648] call 0000:00:1b.0+ returned 0 after 1 usecs
09.771: [   91.560951] call 0000:00:02.1+ returned 0 after 1 usecs
09.771: [   91.566695] calling  0000:00:02.0+ @ 623, parent: pci0000:00
09.771: [   91.572431] calling  0000:00:00.0+ @ 621, parent: pci0000:00
09.771: [   91.577731] call 0000:00:02.0+ returned 0 after 1 usecs
09.771: [   91.583469] call 0000:00:00.0+ returned 0 after 1 usecs
09.772: [   91.627387] calling  iTCO_wdt.0.auto+ @ 603, parent: 0000:00:1f.0
09.772: [   91.633564] call iTCO_wdt.0.auto+ returned 0 after 1 usecs
09.772: [   91.639152] calling  pcmcia_socket0+ @ 603, parent: 0000:05:00.0
09.772: [   91.645266] call pcmcia_socket0+ returned 0 after 23 usecs
09.772: [   91.651026] calling  BOOT0000:00+ @ 603, parent: platform
09.772: [   91.656508] call BOOT0000:00+ returned 0 after 1 usecs
09.773: [   91.661723] calling  PNP0C0B:00+ @ 603, parent: platform
09.773: [   91.667116] call PNP0C0B:00+ returned 0 after 1 usecs
09.773: [   91.672273] calling  0000:05:00.1+ @ 624, parent: 0000:00:1e.0
09.773: [   91.672307] calling  PNP0C09:00+ @ 603, parent: device:22
09.773: [   91.678194] call 0000:05:00.1+ returned 0 after 1 usecs
09.773: [   91.683668] ACPI: EC: interrupt blocked
09.773: [   91.688975] calling  0000:05:00.0+ @ 119, parent: 0000:00:1e.0
09.773: [   91.692877] call PNP0C09:00+ returned 0 after 8992 usecs
09.773: [   91.698855] call 0000:05:00.0+ returned 0 after 70 usecs
09.773: [   91.704206] calling  0000:02:00.0+ @ 6, parent: 0000:00:1c.1
09.774: [   91.709589] calling  0000:05:00.2+ @ 621, parent: 0000:00:1e.0
09.774: [   91.709655] calling  0000:01:00.0+ @ 624, parent: 0000:00:1c.0
09.774: [   91.715553] calling  0000:00:1f.2+ @ 120, parent: pci0000:00
09.774: [   91.721523] calling  0000:00:1f.1+ @ 119, parent: pci0000:00
09.774: [   91.727452] calling  0000:00:1f.0+ @ 626, parent: pci0000:00
09.774: [   91.733185] call 0000:00:1f.1+ returned 0 after 43 usecs
09.774: [   91.738959] call 0000:00:1f.0+ returned 0 after 56 usecs
09.774: [   91.744665] call 0000:05:00.2+ returned 0 after 34249 usecs
09.775: [   91.750067] calling  0000:00:1d.7+ @ 625, parent: pci0000:00
09.775: [   91.755463] calling  0000:00:1d.3+ @ 621, parent: pci0000:00
09.775: [   91.761166] calling  0000:00:1d.2+ @ 623, parent: pci0000:00
09.775: [   91.766901] calling  0000:00:1d.1+ @ 119, parent: pci0000:00
09.775: [   91.772651] calling  0000:00:1d.0+ @ 118, parent: pci0000:00
09.775: [   91.778465] call 0000:01:00.0+ returned 0 after 55719 usecs
09.775: [   91.784223] calling  0000:00:1c.3+ @ 620, parent: pci0000:00
09.775: [   91.789995] call 0000:00:1d.3+ returned 0 after 22599 usecs
09.775: [   91.795671] call 0000:00:1c.3+ returned 0 after 82 usecs
09.776: [   91.801358] calling  0000:00:1c.2+ @ 624, parent: pci0000:00
09.776: [   91.807018] calling  0000:00:1c.0+ @ 121, parent: pci0000:00
09.776: [   91.812471] call 0000:00:1c.2+ returned 0 after 75 usecs
09.776: [   91.818241] call 0000:00:1c.0+ returned 0 after 80 usecs
09.776: [   91.823947] calling  0000:00:1b.0+ @ 622, parent: pci0000:00
09.776: [   91.829352] calling  0000:00:1e.0+ @ 627, parent: pci0000:00
09.776: [   91.834897] call 0000:00:1d.1+ returned 0 after 55218 usecs
09.776: [   91.840518] call 0000:00:1e.0+ returned 0 after 48 usecs
09.776: [   91.846239] calling  0000:00:02.1+ @ 621, parent: pci0000:00
09.777: [   91.851899] calling  0000:00:02.0+ @ 628, parent: pci0000:00
09.777: [   91.857292] call 0000:00:02.1+ returned 0 after 32 usecs
09.777: [   91.863033] call 0000:00:02.0+ returned 0 after 33 usecs
09.777: [   91.868753] call 0000:00:1b.0+ returned 0 after 33252 usecs
09.777: [   91.874237] calling  0000:00:00.0+ @ 629, parent: pci0000:00
09.777: [   91.879614] call 0000:02:00.0+ returned 0 after 160411 usecs
09.777: [   91.885261] call 0000:00:00.0+ returned 0 after 16 usecs
09.777: [   91.891006] call 0000:00:1f.2+ returned 0 after 159782 usecs
09.777: [   91.896739] calling  0000:00:1c.1+ @ 619, parent: pci0000:00
09.778: [   91.902192] call 0000:00:1d.2+ returned 0 after 126552 usecs
09.778: [   91.907942] call 0000:00:1c.1+ returned 0 after 75 usecs
09.778: [   91.913679] call 0000:00:1d.0+ returned 0 after 126471 usecs
09.778: [   91.924787] call 0000:00:1d.7+ returned 0 after 159845 usecs
09.778: [   91.936557] ACPI: Preparing to enter system sleep state S3
09.792: [   91.955621] ACPI: EC: event blocked
09.792: [   91.956007] ACPI: EC: EC stopped
09.792: [   91.962486] PM: Saving platform NVS memory
09.792: [   91.966663] Disabling non-boot CPUs ...
09.806: [   91.984416] IRQ 1: no longer affine to CPU1
09.806: [   91.988009] IRQ 9: no longer affine to CPU1
09.806: [   91.988009] IRQ 12: no longer affine to CPU1
09.806: [   91.988009] IRQ 19: no longer affine to CPU1
09.806: [   91.988009] IRQ 28: no longer affine to CPU1
09.807: [   92.006686] smpboot: CPU 1 is now offline
09.808: [   92.011299] PM: Calling kvm_suspend+0x0/0x30 [kvm]
09.808: [   92.014777] PM: Calling mce_syscore_suspend+0x0/0x30
09.808: [   92.014777] PM: Calling ledtrig_cpu_syscore_suspend+0x0/0x20
09.808: [   92.014777] PM: Calling timekeeping_suspend+0x0/0x500
09.808: [   92.014777] PM: Calling irq_gc_suspend+0x0/0x90
09.808: [   92.014777] PM: Calling save_ioapic_entries+0x0/0x260
09.808: [   92.014777] PM: Calling i8259A_suspend+0x0/0x30
09.809: [   92.014777] PM: Calling fw_suspend+0x0/0x20
09.809: [   92.014777] PM: Calling acpi_save_bm_rld+0x0/0x20
09.809: [   92.014777] PM: Calling lapic_suspend+0x0/0x310
17.454: <00>
17.655: 
17.655: 
17.655: coreboot-TIMELESS Thu Jan  1 00:00:00 UTC 1970 romstage starting...
17.655: Dock is present
17.655: 
17.655: Mobile Intel(R) 82945GM/GME Express Chipset
17.656: (G)MCH capable of up to FSB 800 MHz
17.656: (G)MCH capable of up to DDR2-667
17.656: Setting up static southbridge registers... done.
17.656: Disabling Watchdog reboot... done.
17.656: Setting up static northbridge registers...CBFS: 'Master Header Locator' located CBFS at [200:1fffc0)
17.658: CBFS: Locating 'cmos_layout.bin'
17.658: CBFS: Found @ offset 39100 size 6ac
17.659:  done.
17.659: Waiting for MCHBAR to come up...ok
17.659: PM1_CNT: 00001400
17.659: Resume from S3 detected.
17.659: SMBus controller enabled.
17.659: Setting up RAM controller.
17.660: This mainboard supports Dual Channel Operation.
17.719: Reading SPD using i2c block operation.
17.720: DDR II Channel 0 Socket 0: x8DDS
17.721: DIMM 0 side 0 = 512 MB
17.721: DIMM 0 side 1 = 512 MB
17.722: DDR II Channel 0 Socket 1: N/A
17.781: Reading SPD using i2c block operation.
17.781: DDR II Channel 1 Socket 0: x8DDS
17.781: DIMM 2 side 0 = 512 MB
17.781: DIMM 2 side 1 = 512 MB
17.782: DDR II Channel 1 Socket 1: N/A
17.782: Memory will be driven at 667MT with CAS=5 clocks
17.782: tRAS = 15 cycles
17.782: tRP  = 5 cycles
17.782: tRCD = 5 cycles
17.782: tWR  = 5 cycles
17.782: tRFC = 35 cycles
17.782: Refresh: 7.8us
17.783: Setting Graphics Frequency...
17.783: FSB: 667 MHz Voltage: 1.05V Render: 250MHz Display: 200MHz
17.783: Setting Memory Frequency... CLKCFG = 0x00010023, CLKCFG = 0x00010043, ok
17.783: Setting mode of operation for memory channels...Dual Channel Interleaved.
17.784: Programming Clock Crossing...MEM=667 FSB=667... ok
17.784: Setting RAM size...
17.785: C0DRB = 0x20202010
17.785: C1DRB = 0x20202010
17.785: TOLUD = 0x0080
17.785: Setting row attributes...
17.785: C0DRA = 0x0033
17.785: C1DRA = 0x0033
17.785: one dimm per channel config..
17.786: Initializing System Memory IO...
17.786: Programming Dual Channel RCOMP
17.786: Table Index: 18
17.786: Programming DLL Timings...
17.786: Enabling System Memory IO...
17.788: RAM initialization finished.
17.788: Setting up Egress Port RCRB
17.788: Loading port arbitration table ...ok
17.788: Wait for VC1 negotiation ...ok
17.788: Setting up DMI RCRB
17.788: Wait for VC1 negotiation ...done..
17.789: Internal graphics: enabled
17.789: Waiting for DMI hardware...ok
17.789: Enabling PCI Express x16 Link
17.789: SLOTSTS: 0000
17.789: Disabling PCI Express x16 Link
17.789: Wait for link to enter detect state... ok
17.789: Setting up Root Complex Topology
17.796: MTRR Range: Start=ffe00000 End=0 (Size 200000)
17.796: MTRR Range: Start=0 End=1000000 (Size 1000000)
17.796: MTRR Range: Start=7f400000 End=7f800000 (Size 400000)
17.796: MTRR Range: Start=7f000000 End=7f400000 (Size 400000)
17.801: Jumping to image.
17.802: 
17.802: 
17.802: coreboot-TIMELESS Thu Jan  1 00:00:00 UTC 1970 ramstage starting...
17.802: S3 Resume.
17.802: BS: BS_PRE_DEVICE times (us): entry 0 run 0 exit 0
17.802: BS: BS_DEV_INIT_CHIPS times (us): entry 0 run 1 exit 0
17.802: Enumerating buses...
17.802: CPU_CLUSTER: 0 enabled
17.802: DOMAIN: 0000 enabled
17.802: PCI: pci_scan_bus for bus 00
17.802: PCI: 00:00.0 [8086/27a0] enabled
17.802: PCI: 00:02.0 [8086/27a2] enabled
17.802: PCI: 00:02.1 [8086/27a6] enabled
17.802: PCI: 00:1b.0 [8086/27d8] enabled
17.802: PCI: 00:1c.0 [8086/27d0] enabled
17.802: PCI: 00:1c.1 [8086/27d2] enabled
17.802: PCI: 00:1c.2 [8086/27d4] enabled
17.802: PCI: 00:1c.3 [8086/27d6] enabled
17.802: PCI: 00:1d.0 [8086/27c8] enabled
17.802: PCI: 00:1d.1 [8086/27c9] enabled
17.802: PCI: 00:1d.2 [8086/27ca] enabled
17.802: PCI: 00:1d.3 [8086/27cb] enabled
17.802: PCI: 00:1d.7 [8086/27cc] enabled
17.802: PCI: 00:1e.0 [8086/2448] enabled
17.802: PCI: 00:1f.0 [8086/27b9] enabled
17.802: PCI: 00:1f.1 [8086/27df] enabled
17.802: Set SATA mode early
17.802: Set SATA mode early
17.802: PCI: 00:1f.2 [8086/27c5] enabled
17.802: PCI: 00:1f.3 [8086/27da] enabled
17.802: PCI: pci_scan_bus for bus 01
17.802: PCI: 01:00.0 [8086/109a] enabled
17.802: scan_bus: scanning of bus PCI: 00:1c.0 took 5651 usecs
17.802: PCI: pci_scan_bus for bus 02
17.802: PCI: 02:00.0 [8086/4227] enabled
17.802: scan_bus: scanning of bus PCI: 00:1c.1 took 5664 usecs
17.802: PCI: pci_scan_bus for bus 03
17.802: scan_bus: scanning of bus PCI: 00:1c.2 took 2673 usecs
17.802: PCI: pci_scan_bus for bus 04
17.802: scan_bus: scanning of bus PCI: 00:1c.3 took 2671 usecs
17.802: PCI: pci_scan_bus for bus 05
17.802: PCI: 05:00.0 [1180/0476] enabled
17.802: PCI: 05:00.1 [1180/0552] enabled
17.802: PCI: 05:00.2 [1180/0822] enabled
17.802: PCI: pci_scan_bus for bus 06
17.803: scan_bus: scanning of bus PCI: 05:00.0 took 2676 usecs
17.803: scan_bus: scanning of bus PCI: 00:1e.0 took 19178 usecs
17.803: CBFS: 'Master Header Locator' located CBFS at [200:1fffc0)
17.803: CBFS: Locating 'cmos_layout.bin'
17.803: CBFS: Found @ offset 39100 size 6ac
17.803: WARNING: No CMOS option 'touchpad'.
17.803: CBFS: 'Master Header Locator' located CBFS at [200:1fffc0)
17.803: CBFS: Locating 'cmos_layout.bin'
17.803: CBFS: Found @ offset 39100 size 6ac
17.803: PMH7: ID 03 Revision 10
17.803: PNP: 00ff.1 enabled
17.805: EC Firmware ID 7JHT12WW-3.4, Version 3.01A
17.805: CBFS: 'Master Header Locator' located CBFS at [200:1fffc0)
17.805: CBFS: Locating 'cmos_layout.bin'
17.805: CBFS: Found @ offset 39100 size 6ac
17.805: CBFS: 'Master Header Locator' located CBFS at [200:1fffc0)
17.805: CBFS: Locating 'cmos_layout.bin'
17.805: CBFS: Found @ offset 39100 size 6ac
17.809: CBFS: 'Master Header Locator' located CBFS at [200:1fffc0)
17.809: CBFS: Locating 'cmos_layout.bin'
17.809: CBFS: Found @ offset 39100 size 6ac
17.809: CBFS: 'Master Header Locator' located CBFS at [200:1fffc0)
17.809: CBFS: Locating 'cmos_layout.bin'
17.809: CBFS: Found @ offset 39100 size 6ac
17.810: H8: BDC not installed
17.810: H8: WWAN detection not implemented. Assuming WWAN installed
17.810: CBFS: 'Master Header Locator' located CBFS at [200:1fffc0)
17.810: CBFS: Locating 'cmos_layout.bin'
17.810: CBFS: Found @ offset 39100 size 6ac
17.810: CBFS: 'Master Header Locator' located CBFS at [200:1fffc0)
17.810: CBFS: Locating 'cmos_layout.bin'
17.810: CBFS: Found @ offset 39100 size 6ac
17.810: WARNING: No CMOS option 'fn_ctrl_swap'.
17.811: CBFS: 'Master Header Locator' located CBFS at [200:1fffc0)
17.811: CBFS: Locating 'cmos_layout.bin'
17.811: CBFS: Found @ offset 39100 size 6ac
17.811: CBFS: 'Master Header Locator' located CBFS at [200:1fffc0)
17.811: CBFS: Locating 'cmos_layout.bin'
17.811: CBFS: Found @ offset 39100 size 6ac
17.812: PNP: 00ff.2 enabled
17.812: PNP: 164e.2 enabled
17.812: PNP: 164e.3 enabled
17.812: PNP: 164e.7 enabled
17.812: PNP: 164e.19 enabled
17.812: PNP: 002e.0 disabled
17.812: PNP: 002e.1 enabled
17.812: PNP: 002e.2 disabled
17.812: PNP: 002e.3 enabled
17.812: PNP: 002e.7 enabled
17.812: PNP: 002e.a disabled
17.812: scan_bus: scanning of bus PCI: 00:1f.0 took 166050 usecs
17.812: bus: PCI: 00:1f.3[0]->I2C: 01:69 enabled
17.812: bus: PCI: 00:1f.3[0]->I2C: 01:54 enabled
17.812: bus: PCI: 00:1f.3[0]->I2C: 01:55 enabled
17.812: bus: PCI: 00:1f.3[0]->I2C: 01:56 enabled
17.812: bus: PCI: 00:1f.3[0]->I2C: 01:57 enabled
17.812: bus: PCI: 00:1f.3[0]->I2C: 01:5c enabled
17.812: bus: PCI: 00:1f.3[0]->I2C: 01:5d enabled
17.812: bus: PCI: 00:1f.3[0]->I2C: 01:5e enabled
17.812: bus: PCI: 00:1f.3[0]->I2C: 01:5f enabled
17.812: scan_bus: scanning of bus PCI: 00:1f.3 took 33207 usecs
17.812: scan_bus: scanning of bus DOMAIN: 0000 took 329698 usecs
17.812: scan_bus: scanning of bus Root Device took 338796 usecs
17.812: done
17.812: BS: BS_DEV_ENUMERATE times (us): entry 0 run 346283 exit 0
17.812: found VGA at PCI: 00:02.0
17.812: Setting up VGA for PCI: 00:02.0
17.812: Setting PCI_BRIDGE_CTL_VGA for bridge DOMAIN: 0000
17.812: Setting PCI_BRIDGE_CTL_VGA for bridge Root Device
17.812: Allocating resources...
17.812: Reading resources...
17.812: Adding PCIe enhanced config space BAR 0xf0000000-0xf4000000.
17.814: PNP: 00ff.1 missing read_resources
17.814: PNP: 00ff.2 missing read_resources
17.814: Done reading resources.
17.814: skipping PNP: 00ff.2@60 fixed resource, size=0!
17.814: skipping PNP: 00ff.2@62 fixed resource, size=0!
17.814: skipping PNP: 00ff.2@64 fixed resource, size=0!
17.814: skipping PNP: 00ff.2@66 fixed resource, size=0!
17.814: skipping PNP: 164e.3@29 fixed resource, size=0!
17.814: skipping PNP: 164e.3@f0 fixed resource, size=0!
17.814: Setting resources...
17.814: pci_tolm: 0xd0000000
17.814: IGD decoded, subtracting 8M UMA
17.814: Available memory: 2088960K (2040M)
17.814: PCI: 00:02.0 10 <- [0x00e4300000 - 0x00e437ffff] size 0x00080000 gran 0x13 mem
17.814: PCI: 00:02.0 14 <- [0x00000050b0 - 0x00000050b7] size 0x00000008 gran 0x03 io
17.814: PCI: 00:02.0 18 <- [0x00d0000000 - 0x00dfffffff] size 0x10000000 gran 0x1c prefmem
17.814: PCI: 00:02.0 1c <- [0x00e4400000 - 0x00e443ffff] size 0x00040000 gran 0x12 mem
17.814: PCI: 00:02.1 10 <- [0x00e4380000 - 0x00e43fffff] size 0x00080000 gran 0x13 mem
17.814: PCI: 00:1b.0 10 <- [0x00e4440000 - 0x00e4443fff] size 0x00004000 gran 0x0e mem64
17.814: PCI: 00:1c.0 1c <- [0x0000004000 - 0x0000004fff] size 0x00001000 gran 0x0c bus 01 io
17.814: PCI: 00:1c.0 24 <- [0x00efffffff - 0x00effffffe] size 0x00000000 gran 0x14 bus 01 prefmem
17.814: PCI: 00:1c.0 20 <- [0x00e4100000 - 0x00e41fffff] size 0x00100000 gran 0x14 bus 01 mem
17.814: PCI: 01:00.0 10 <- [0x00e4100000 - 0x00e411ffff] size 0x00020000 gran 0x11 mem
17.814: PCI: 01:00.0 18 <- [0x0000004000 - 0x000000401f] size 0x00000020 gran 0x05 io
17.814: PCI: 00:1c.1 1c <- [0x000000ffff - 0x000000fffe] size 0x00000000 gran 0x0c bus 02 io
17.815: PCI: 00:1c.1 24 <- [0x00efffffff - 0x00effffffe] size 0x00000000 gran 0x14 bus 02 prefmem
17.814: PCI: 00:1c.1 20 <- [0x00e4200000 - 0x00e42fffff] size 0x00100000 gran 0x14 bus 02 mem
17.815: PCI: 02:00.0 10 <- [0x00e4200000 - 0x00e4200fff] size 0x00001000 gran 0x0c mem
17.815: PCI: 00:1c.2 1c <- [0x000000ffff - 0x000000fffe] size 0x00000000 gran 0x0c bus 03 io
17.815: PCI: 00:1c.2 24 <- [0x00efffffff - 0x00effffffe] size 0x00000000 gran 0x14 bus 03 prefmem
17.815: PCI: 00:1c.2 20 <- [0x00efffffff - 0x00effffffe] size 0x00000000 gran 0x14 bus 03 mem
17.815: PCI: 00:1c.3 1c <- [0x000000ffff - 0x000000fffe] size 0x00000000 gran 0x0c bus 04 io
17.815: PCI: 00:1c.3 24 <- [0x00efffffff - 0x00effffffe] size 0x00000000 gran 0x14 bus 04 prefmem
17.815: PCI: 00:1c.3 20 <- [0x00efffffff - 0x00effffffe] size 0x00000000 gran 0x14 bus 04 mem
17.815: PCI: 00:1d.0 20 <- [0x0000005000 - 0x000000501f] size 0x00000020 gran 0x05 io
17.815: PCI: 00:1d.1 20 <- [0x0000005020 - 0x000000503f] size 0x00000020 gran 0x05 io
17.815: PCI: 00:1d.2 20 <- [0x0000005040 - 0x000000505f] size 0x00000020 gran 0x05 io
17.815: PCI: 00:1d.3 20 <- [0x0000005060 - 0x000000507f] size 0x00000020 gran 0x05 io
17.815: PCI: 00:1d.7 10 <- [0x00e4444000 - 0x00e44443ff] size 0x00000400 gran 0x0a mem
17.815: PCI: 00:1e.0 1c <- [0x0000002000 - 0x0000003fff] size 0x00002000 gran 0x0c bus 05 io
17.815: PCI: 00:1e.0 24 <- [0x00e2100000 - 0x00e40fffff] size 0x02000000 gran 0x14 bus 05 prefmem
17.815: PCI: 00:1e.0 20 <- [0x00e0000000 - 0x00e20fffff] size 0x02100000 gran 0x14 bus 05 mem
17.815: PCI: 05:00.0 In set resources
17.815: PCI: 05:00.0 10 <- [0x00e2000000 - 0x00e2000fff] size 0x00001000 gran 0x0c mem
17.815: PCI: 05:00.0 2c <- [0x0000002000 - 0x0000002fff] size 0x00001000 gran 0x02 io
17.815: PCI: 05:00.0 34 <- [0x0000003000 - 0x0000003fff] size 0x00001000 gran 0x02 io
17.815: PCI: 05:00.0 1c <- [0x00e2100000 - 0x00e40fffff] size 0x02000000 gran 0x0c prefmem
17.815: PCI: 05:00.0 24 <- [0x00e0000000 - 0x00e1ffffff] size 0x02000000 gran 0x0c mem
17.815: PCI: 05:00.1 10 <- [0x00e2001000 - 0x00e20017ff] size 0x00000800 gran 0x0b mem
17.815: PCI: 05:00.2 10 <- [0x00e2002000 - 0x00e20020ff] size 0x00000100 gran 0x08 mem
17.815: PNP: 00ff.1 missing set_resources
17.815: PNP: 00ff.2 missing set_resources
17.815: PNP: 164e.2 60 <- [0x00000002f8 - 0x00000002ff] size 0x00000008 gran 0x03 io
17.815: ERROR: PNP: 164e.2 70 irq size: 0x0000000001 not assigned
17.815: ERROR: PNP: 164e.2 74 drq size: 0x0000000001 not assigned
17.815: ERROR: PNP: 164e.2 75 drq size: 0x0000000001 not assigned
17.815: PNP: 164e.3 60 <- [0x0000000200 - 0x0000000207] size 0x00000008 gran 0x03 io
17.815: PNP: 164e.3 29 <- [0x00000000b0 - 0x00000000af] size 0x00000000 gran 0x00 irq
17.815: PNP: 164e.3 70 <- [0x0000000005 - 0x0000000005] size 0x00000001 gran 0x00 irq
17.815: PNP: 164e.3 f0 <- [0x0000000082 - 0x0000000081] size 0x00000000 gran 0x00 irq
17.815: PNP: 164e.7 60 <- [0x0000001680 - 0x000000168f] size 0x00000010 gran 0x04 io
17.815: ERROR: PNP: 164e.7 70 irq size: 0x0000000001 not assigned
17.815: PNP: 164e.19 60 <- [0x000000164c - 0x000000164d] size 0x00000002 gran 0x01 io
17.815: ERROR: PNP: 164e.19 70 irq size: 0x0000000001 not assigned
17.815: PNP: 002e.1 60 <- [0x00000003bc - 0x00000007bb] size 0x00000400 gran 0x0a io
17.815: PNP: 002e.1 70 <- [0x0000000007 - 0x0000000007] size 0x00000001 gran 0x00 irq
17.815: ERROR: PNP: 002e.1 74 drq size: 0x0000000001 not assigned
17.815: PNP: 002e.3 60 <- [0x00000003f8 - 0x00000003ff] size 0x00000008 gran 0x03 io
17.815: PNP: 002e.3 70 <- [0x0000000004 - 0x0000000004] size 0x00000001 gran 0x00 irq
17.815: PNP: 002e.7 60 <- [0x0000001620 - 0x0000001627] size 0x00000008 gran 0x03 io
17.815: ERROR: PNP: 002e.7 70 irq size: 0x0000000001 not assigned
17.815: PCI: 00:1f.1 10 <- [0x00000050b8 - 0x00000050bf] size 0x00000008 gran 0x03 io
17.815: PCI: 00:1f.1 14 <- [0x00000050d8 - 0x00000050db] size 0x00000004 gran 0x02 io
17.815: PCI: 00:1f.1 18 <- [0x00000050c0 - 0x00000050c7] size 0x00000008 gran 0x03 io
17.815: PCI: 00:1f.1 1c <- [0x00000050dc - 0x00000050df] size 0x00000004 gran 0x02 io
17.815: PCI: 00:1f.1 20 <- [0x00000050a0 - 0x00000050af] size 0x00000010 gran 0x04 io
17.815: PCI: 00:1f.2 10 <- [0x00000050c8 - 0x00000050cf] size 0x00000008 gran 0x03 io
17.815: PCI: 00:1f.2 14 <- [0x00000050e0 - 0x00000050e3] size 0x00000004 gran 0x02 io
17.815: PCI: 00:1f.2 18 <- [0x00000050d0 - 0x00000050d7] size 0x00000008 gran 0x03 io
17.815: PCI: 00:1f.2 1c <- [0x00000050e4 - 0x00000050e7] size 0x00000004 gran 0x02 io
17.815: PCI: 00:1f.2 20 <- [0x0000005080 - 0x000000509f] size 0x00000020 gran 0x05 io
17.815: PCI: 00:1f.2 24 <- [0x00e4445000 - 0x00e44453ff] size 0x00000400 gran 0x0a mem
17.815: Done setting resources.
17.815: Done allocating resources.
17.815: BS: BS_DEV_RESOURCES times (us): entry 0 run 539612 exit 0
17.815: Enabling resources...
17.815: PCI: 00:00.0 subsystem <- 17aa/2017
17.815: PCI: 00:00.0 cmd <- 06
17.815: PCI: 00:02.0 subsystem <- 17aa/201a
17.815: PCI: 00:02.0 cmd <- 03
17.815: PCI: 00:02.1 subsystem <- 17aa/201a
17.815: PCI: 00:02.1 cmd <- 02
17.815: PCI: 00:1b.0 subsystem <- 17aa/2010
17.815: PCI: 00:1b.0 cmd <- 102
17.815: PCI: 00:1c.0 bridge ctrl <- 0003
17.815: PCI: 00:1c.0 subsystem <- 8086/27d0
17.815: PCI: 00:1c.0 cmd <- 107
17.815: PCI: 00:1c.1 bridge ctrl <- 0003
17.815: PCI: 00:1c.1 subsystem <- 8086/27d2
17.815: PCI: 00:1c.1 cmd <- 106
17.815: PCI: 00:1c.2 bridge ctrl <- 0003
17.815: PCI: 00:1c.2 cmd <- 00
17.815: PCI: 00:1c.3 bridge ctrl <- 0003
17.815: PCI: 00:1c.3 cmd <- 00
17.815: PCI: 00:1d.0 subsystem <- 17aa/200a
17.815: PCI: 00:1d.0 cmd <- 01
17.815: PCI: 00:1d.1 subsystem <- 17aa/200a
17.815: PCI: 00:1d.1 cmd <- 01
17.815: PCI: 00:1d.2 subsystem <- 17aa/200a
17.815: PCI: 00:1d.2 cmd <- 01
17.815: PCI: 00:1d.3 subsystem <- 17aa/200a
17.815: PCI: 00:1d.3 cmd <- 01
17.815: PCI: 00:1d.7 subsystem <- 17aa/200b
17.815: PCI: 00:1d.7 cmd <- 102
17.815: PCI: 00:1e.0 bridge ctrl <- 0003
17.815: PCI: 00:1e.0 cmd <- 07
17.816: PCI: 00:1f.0 subsystem <- 17aa/2009
17.816: PCI: 00:1f.0 cmd <- 107
17.816: PCI: 00:1f.1 subsystem <- 17aa/200c
17.816: PCI: 00:1f.1 cmd <- 01
17.816: PCI: 00:1f.2 subsystem <- 17aa/200d
17.816: PCI: 00:1f.2 cmd <- 03
17.816: PCI: 00:1f.3 subsystem <- 17aa/200f
17.816: PCI: 00:1f.3 cmd <- 101
17.816: PCI: 01:00.0 cmd <- 03
17.816: PCI: 02:00.0 cmd <- 02
17.816: PCI: 05:00.0 bridge ctrl <- 0503
17.816: PCI: 05:00.0 cmd <- 03
17.816: PCI: 05:00.1 cmd <- 02
17.816: PCI: 05:00.2 cmd <- 06
17.816: done.
17.816: BS: BS_DEV_ENABLE times (us): entry 0 run 118106 exit 0
17.816: Initializing devices...
17.816: Root Device init ...
17.817: Root Device init finished in 2691 usecs
17.817: CPU_CLUSTER: 0 init ...
17.817: start_eip=0x00001000, code_size=0x00000031
17.817: Initializing SMM handler...
17.817: SMI_STS: MCSMI PM1 
17.817: PM1_STS: WAK PWRBTN 
17.817: GPE0_STS: GPIO15 GPIO14 GPIO13 GPIO12 GPIO11 GPIO10 GPIO7 GPIO6 GPIO5 GPIO4 GPIO3 GPIO2 GPIO1 GPIO0 
17.818: ALT_GP_SMI_STS: GPI15 GPI14 GPI13 GPI12 GPI11 GPI10 GPI7 GPI6 GPI5 GPI4 GPI3 GPI2 GPI1 GPI0 
17.818: TCO_STS: 
17.818: Initializing CPU #0
17.818: CPU: vendor Intel device 6ec
17.818: CPU: family 06, model 0e, stepping 0c
17.818: Enabling cache
17.818: CBFS: 'Master Header Locator' located CBFS at [200:1fffc0)
17.818: CBFS: Locating 'cpu_microcode_blob.bin'
17.818: CBFS: Found @ offset d2c0 size 17000
17.818: microcode: sig=0x6ec pf=0x20 revision=0x0
17.820: microcode: updated to revision 0x54 date=2006-05-01
17.820: CPU: Intel(R) Core(TM) Duo CPU      L2400  @ 1.66GHz.
17.820: MTRR: Physical address space:
17.820: 0x0000000000000000 - 0x00000000000a0000 size 0x000a0000 type 6
17.820: 0x00000000000a0000 - 0x00000000000c0000 size 0x00020000 type 0
17.820: 0x00000000000c0000 - 0x000000007f800000 size 0x7f740000 type 6
17.820: 0x000000007f800000 - 0x00000000d0000000 size 0x50800000 type 0
17.820: 0x00000000d0000000 - 0x00000000e0000000 size 0x10000000 type 1
17.820: 0x00000000e0000000 - 0x0000000100000000 size 0x20000000 type 0
17.820: MTRR: Fixed MSR 0x250 0x0606060606060606
17.820: MTRR: Fixed MSR 0x258 0x0606060606060606
17.820: MTRR: Fixed MSR 0x259 0x0000000000000000
17.820: MTRR: Fixed MSR 0x268 0x0606060606060606
17.820: MTRR: Fixed MSR 0x269 0x0606060606060606
17.820: MTRR: Fixed MSR 0x26a 0x0606060606060606
17.820: MTRR: Fixed MSR 0x26b 0x0606060606060606
17.820: MTRR: Fixed MSR 0x26c 0x0606060606060606
17.820: MTRR: Fixed MSR 0x26d 0x0606060606060606
17.820: MTRR: Fixed MSR 0x26e 0x0606060606060606
17.820: MTRR: Fixed MSR 0x26f 0x0606060606060606
17.821: CPU physical address size: 32 bits
17.821: MTRR: default type WB/UC MTRR counts: 5/3.
17.821: MTRR: UC selected as default type.
17.821: MTRR: 0 base 0x0000000000000000 mask 0x0000000080000000 type 6
17.821: MTRR: 1 base 0x000000007f800000 mask 0x00000000ff800000 type 0
17.821: MTRR: 2 base 0x00000000d0000000 mask 0x00000000f0000000 type 1
17.822: 
17.822: MTRR check
17.822: Fixed MTRRs   : Enabled
17.822: Variable MTRRs: Enabled
17.822: 
17.822: Setting up local APIC... apic_id: 0x00 done.
17.822: VMX status: enabled, locked
17.822: CBFS: 'Master Header Locator' located CBFS at [200:1fffc0)
17.822: CBFS: Locating 'cmos_layout.bin'
17.822: CBFS: Found @ offset 39100 size 6ac
17.823: CPU: 0 2 siblings
17.823: CPU: 0 has sibling 1
17.823: CPU #0 initialized
17.834: Initializing CPU #1
17.834: Waiting for 1 CPUS to stop
17.834: CPU: vendor Intel device 6ec
17.834: CPU: family 06, model 0e, stepping 0c
17.834: Enabling cache
17.834: CBFS: 'Master Header Locator' located CBFS at [200:1fffc0)
17.835: CBFS: Locating 'cpu_microcode_blob.bin'
17.835: CBFS: Found @ offset d2c0 size 17000
17.835: microcode: sig=0x6ec pf=0x20 revision=0x0
17.837: microcode: updated to revision 0x54 date=2006-05-01
17.837: CPU: Intel(R) Core(TM) Duo CPU      L2400  @ 1.66GHz.
17.838: MTRR: Fixed MSR 0x250 0x0606060606060606
17.838: MTRR: Fixed MSR 0x258 0x0606060606060606
17.838: MTRR: Fixed MSR 0x259 0x0000000000000000
17.838: MTRR: Fixed MSR 0x268 0x0606060606060606
17.838: MTRR: Fixed MSR 0x269 0x0606060606060606
17.838: MTRR: Fixed MSR 0x26a 0x0606060606060606
17.838: MTRR: Fixed MSR 0x26b 0x0606060606060606
17.838: MTRR: Fixed MSR 0x26c 0x0606060606060606
17.838: MTRR: Fixed MSR 0x26d 0x0606060606060606
17.839: MTRR: Fixed MSR 0x26e 0x0606060606060606
17.839: MTRR: Fixed MSR 0x26f 0x0606060606060606
17.840: CPU physical address size: 32 bits
17.840: 
17.840: MTRR check
17.840: Fixed MTRRs   : Enabled
17.840: Variable MTRRs: Enabled
17.840: 
17.840: Setting up local APIC... apic_id: 0x01 done.
17.840: VMX status: enabled, locked
17.840: CPU: 1 2 siblings
17.840: CPU #1 initialized
17.840: CPU 1 going down...
17.840: All AP CPUs stopped (9740 loops)
17.840: CPU_CLUSTER: 0 init finished in 321804 usecs
17.840: PCI: 00:02.0 init ...
17.840: Initializing VGA without OPROM.
17.905: No display connected on slave 2
17.920: WARNING: EDID block does NOT fully conform to EDID 1.3.
17.920: <09>Missing name descriptor
17.920: <09>Missing monitor ranges
17.920: bringing up panel at resolution 1024 x 768
17.920: Borders 0 x 0
17.920: Blank 320 x 38
17.920: Sync 136 x 6
17.920: Front porch 24 x 3
17.920: Spread spectrum clock
17.920: Single channel
17.920: Polarities 1, 1
17.920: Pixel N=3, M1=15, M2=4, P1=2
17.920: Pixel clock 65000 kHz
17.920: VGA mode: text
17.927: waiting for panel powerup
17.927: panel powered up
17.927: gtt_setup is enabled.
17.927: 8M UMA
17.928: GTT PGETBL_CTL register: 0x7ffc0001
17.928: GTT Enabled
17.931: PCI: 00:02.0 init finished in 139540 usecs
17.931: PCI: 00:02.1 init ...
17.931: CBFS: 'Master Header Locator' located CBFS at [200:1fffc0)
17.931: CBFS: Locating 'cmos_layout.bin'
17.931: CBFS: Found @ offset 39100 size 6ac
17.932: PCI: 00:02.1 init finished in 14413 usecs
17.932: PCI: 00:1b.0 init ...
17.933: Azalia: codec type: Azalia
17.933: Azalia: base = e4440000
17.935: Azalia: codec_mask = 03
17.935: Azalia: Initializing codec #1
17.935: Azalia: codec viddid: 14f12bfa
17.935: Azalia: No verb!
17.935: Azalia: Initializing codec #0
17.935: Azalia: codec viddid: 11d41981
17.935: Azalia: verb_size: 44
17.937: Azalia: verb loaded.
17.937: PCI: 00:1b.0 init finished in 30349 usecs
17.937: PCI: 00:1c.0 init ...
17.937: Initializing ICH7 PCIe bridge.
17.937: PCI: 00:1c.0 init finished in 4839 usecs
17.937: PCI: 00:1c.1 init ...
17.937: Initializing ICH7 PCIe bridge.
17.937: PCI: 00:1c.1 init finished in 4839 usecs
17.937: PCI: 00:1c.2 init ...
17.937: Initializing ICH7 PCIe bridge.
17.937: PCI: 00:1c.2 init finished in 4838 usecs
17.937: PCI: 00:1c.3 init ...
17.937: Initializing ICH7 PCIe bridge.
17.937: PCI: 00:1c.3 init finished in 4838 usecs
17.937: PCI: 00:1d.0 init ...
17.937: UHCI: Setting up controller.. done.
17.937: PCI: 00:1d.0 init finished in 5272 usecs
17.937: PCI: 00:1d.1 init ...
17.937: UHCI: Setting up controller.. done.
17.937: PCI: 00:1d.1 init finished in 5273 usecs
17.937: PCI: 00:1d.2 init ...
17.937: UHCI: Setting up controller.. done.
17.937: PCI: 00:1d.2 init finished in 5273 usecs
17.937: PCI: 00:1d.3 init ...
17.937: UHCI: Setting up controller.. done.
17.938: PCI: 00:1d.3 init finished in 5271 usecs
17.937: PCI: 00:1d.7 init ...
17.937: EHCI: Setting up controller.. done.
17.938: PCI: 00:1d.7 init finished in 5282 usecs
17.938: PCI: 00:1e.0 init ...
17.938: PCI: 00:1e.0 init finished in 2031 usecs
17.938: PCI: 00:1f.0 init ...
17.938: i82801gx: lpc_init
17.938: IOAPIC: Initializing IOAPIC at 0xfec00000
17.938: IOAPIC: Bootstrap Processor Local APIC = 0x00
17.938: IOAPIC: ID = 0x02
17.938: CBFS: 'Master Header Locator' located CBFS at [200:1fffc0)
17.938: CBFS: Locating 'cmos_layout.bin'
17.938: CBFS: Found @ offset 39100 size 6ac
17.939: WARNING: No CMOS option 'power_on_after_fail'.
17.939: Set power on after power failure.
17.939: CBFS: 'Master Header Locator' located CBFS at [200:1fffc0)
17.939: CBFS: Locating 'cmos_layout.bin'
17.939: CBFS: Found @ offset 39100 size 6ac
17.939: NMI sources enabled.
17.939: rtc_failed = 0x0
17.939: S3 wakeup, enabling ACPI via APMC
17.940: Locking SMM.
17.940: PCI: 00:1f.0 init finished in 53325 usecs
17.940: PCI: 00:1f.1 init ...
17.940: i82801gx_ide: initializing... IDE0
17.940: PCI: 00:1f.1 init finished in 5203 usecs
17.940: PCI: 00:1f.2 init ...
17.940: i82801gx_sata: initializing...
17.940: SATA controller in AHCI mode.
17.940: PCI: 00:1f.2 init finished in 7553 usecs
17.940: PCI: 01:00.0 init ...
17.940: PCI: 01:00.0 init finished in 2019 usecs
17.940: PCI: 02:00.0 init ...
17.940: PCI: 02:00.0 init finished in 2018 usecs
17.940: PCI: 05:00.0 init ...
17.940: Ricoh RL5c476: Initializing.
17.940: CF Base = 0
17.940: CF boot not enabled.
17.940: PCI: 05:00.0 init finished in 7725 usecs
17.940: PCI: 05:00.1 init ...
17.940: PCI: 05:00.1 init finished in 2019 usecs
17.940: PCI: 05:00.2 init ...
17.940: PCI: 05:00.2 init finished in 2017 usecs
17.940: PNP: 00ff.2 init ...
17.940: PNP: 00ff.2 init finished in 1930 usecs
17.940: PNP: 164e.2 init ...
17.940: PNP: 164e.2 init finished in 1929 usecs
17.940: PNP: 164e.3 init ...
17.940: PNP: 164e.3 init finished in 1932 usecs
17.940: PNP: 164e.7 init ...
17.940: PNP: 164e.7 init finished in 1931 usecs
17.940: PNP: 164e.19 init ...
17.940: PNP: 164e.19 init finished in 2019 usecs
17.940: PNP: 002e.1 init ...
17.940: PNP: 002e.1 init finished in 1930 usecs
17.940: PNP: 002e.3 init ...
17.940: PNP: 002e.3 init finished in 1929 usecs
17.940: PNP: 002e.7 init ...
17.940: PNP: 002e.7 init finished in 1931 usecs
17.940: smbus: PCI: 00:1f.3[0]->I2C: 01:69 init ...
17.954: Changing 12 of the 12 ck505 config bytes.
17.967: I2C: 01:69 init finished in 33854 usecs
17.966: smbus: PCI: 00:1f.3[0]->I2C: 01:54 init ...
17.966: I2C: 01:54 init finished in 3941 usecs
17.966: smbus: PCI: 00:1f.3[0]->I2C: 01:55 init ...
17.967: I2C: 01:55 init finished in 3940 usecs
17.967: smbus: PCI: 00:1f.3[0]->I2C: 01:56 init ...
17.967: I2C: 01:56 init finished in 3939 usecs
17.967: smbus: PCI: 00:1f.3[0]->I2C: 01:57 init ...
17.967: I2C: 01:57 init finished in 3940 usecs
17.967: smbus: PCI: 00:1f.3[0]->I2C: 01:5c init ...
17.967: Locking EEPROM RFID
17.988: init EEPROM done
17.988: I2C: 01:5c init finished in 28969 usecs
17.988: smbus: PCI: 00:1f.3[0]->I2C: 01:5d init ...
17.988: I2C: 01:5d init finished in 3938 usecs
17.988: smbus: PCI: 00:1f.3[0]->I2C: 01:5e init ...
17.988: I2C: 01:5e init finished in 3940 usecs
17.988: smbus: PCI: 00:1f.3[0]->I2C: 01:5f init ...
17.988: I2C: 01:5f init finished in 3941 usecs
17.988: Devices initialized
17.988: BS: BS_DEV_INIT times (us): entry 7 run 893858 exit 0
17.988: Finalize devices...
17.988: Devices finalized
17.988: BS: BS_POST_DEVICE times (us): entry 0 run 3506 exit 0
17.988: Trying to find the wakeup vector...
17.988: Looking on 000f0800 for valid checksum
17.988: Checksum 1 passed
17.988: Checksum 2 passed all OK
17.988: RSDP found at 000f0800
17.988: RSDT found at 7f70d030 ends at 7f70d06c
17.988: FADT found at 7f7102a0
17.989: FACS found at 7f70d240
17.989: OS waking vector is 0009c090
17.989: BS: BS_OS_RESUME_CHECK times (us): entry 0 run 23170 exit 0
17.990: [   92.014777] ACPI: Low-level resume complete
17.990: [   92.014777] ACPI: EC: EC started
17.990: [   92.014777] PM: Restoring platform NVS memory
17.990: [   92.014777] PM: Calling bsp_resume+0x0/0x30
17.990: [   92.014777] PM: Calling lapic_resume+0x0/0x4c0
17.990: [   92.014777] PM: Calling acpi_restore_bm_rld+0x0/0x60
17.990: [   92.014777] PM: Calling irqrouter_resume+0x0/0x60
17.990: [   92.014777] PM: Calling i8259A_resume+0x0/0x30
17.991: [   92.014777] PM: Calling i8237A_resume+0x0/0xc0
17.991: [   92.014777] PM: Calling ioapic_resume+0x0/0x1e0
17.991: [   92.014777] PM: Calling irq_gc_resume+0x0/0x90
17.991: [   92.014777] PM: Calling irq_pm_syscore_resume+0x0/0x20
17.991: [   92.014777] PM: Calling timekeeping_resume+0x0/0x420
17.991: [   92.014777] PM: Calling ledtrig_cpu_syscore_resume+0x0/0x20
17.991: [   92.014777] PM: Calling mce_syscore_resume+0x0/0x30
17.991: [   92.014777] PM: Calling mc_bp_resume+0x0/0x140
17.992: [   92.014777] PM: Calling kvm_resume+0x0/0x40 [kvm]
17.992: [  101.347649] Enabling non-boot CPUs ...
17.992: [  101.351643] x86: Booting SMP configuration:
17.992: [  101.355911] smpboot: Booting Node 0 Processor 1 APIC 0x1
17.993: [   91.988009] Initializing CPU#1
17.993: [   91.988009] Disabled fast string operations
17.993: [  101.369674]  cache: parent cpu1 should not be sleeping
17.994: [  101.375240] CPU1 is up
17.996: [  101.379335] ACPI: Waking up from system sleep state S3
18.002: [  101.390539] calling  0000:00:00.0+ @ 630, parent: pci0000:00
18.002: [  101.390661] calling  PNP0C09:00+ @ 603, parent: device:22
18.002: [  101.396340] call 0000:00:00.0+ returned 0 after 47 usecs
18.002: [  101.401765] ACPI: EC: interrupt unblocked
18.002: [  101.401770] call PNP0C09:00+ returned 0 after 3 usecs
18.002: [  101.407174] calling  0000:00:02.0+ @ 625, parent: pci0000:00
18.002: [  101.411259] calling  0000:00:02.1+ @ 118, parent: pci0000:00
18.002: [  101.416430] call 0000:00:02.0+ returned 0 after 45 usecs
18.002: [  101.422161] call 0000:00:02.1+ returned 0 after 40 usecs
18.003: [  101.427877] calling  0000:00:1b.0+ @ 630, parent: pci0000:00
18.003: [  101.433271] calling  0000:00:1c.0+ @ 623, parent: pci0000:00
18.003: [  101.438674] calling  0000:00:1c.1+ @ 120, parent: pci0000:00
18.003: [  101.444547] call 0000:00:1c.0+ returned 0 after 152 usecs
18.003: [  101.450331] call 0000:00:1c.1+ returned 0 after 154 usecs
18.003: [  101.455973] calling  0000:00:1c.2+ @ 118, parent: pci0000:00
18.003: [  101.461436] calling  0000:00:1c.3+ @ 6, parent: pci0000:00
18.003: [  101.467055] call 0000:00:1c.2+ returned 0 after 152 usecs
18.003: [  101.472836] call 0000:00:1c.3+ returned 0 after 155 usecs
18.004: [  101.478281] calling  0000:00:1d.0+ @ 623, parent: pci0000:00
18.004: [  101.483765] calling  0000:00:1d.1+ @ 622, parent: pci0000:00
18.004: [  101.489283] call 0000:00:1d.0+ returned 0 after 50 usecs
18.004: [  101.495035] call 0000:00:1d.1+ returned 0 after 50 usecs
18.004: [  101.500743] calling  0000:00:1d.2+ @ 118, parent: pci0000:00
18.004: [  101.506136] calling  0000:00:1d.3+ @ 621, parent: pci0000:00
18.004: [  101.511562] call 0000:00:1d.2+ returned 0 after 47 usecs
18.004: [  101.517327] call 0000:00:1d.3+ returned 0 after 47 usecs
18.004: [  101.523026] calling  0000:00:1d.7+ @ 623, parent: pci0000:00
18.004: [  101.523038] calling  0000:00:1e.0+ @ 118, parent: pci0000:00
18.005: [  101.528434] calling  0000:00:1f.0+ @ 624, parent: pci0000:00
18.005: [  101.533863] call 0000:00:1e.0+ returned 0 after 50 usecs
18.005: [  101.539633] call 0000:00:1f.0+ returned 0 after 61 usecs
18.005: [  101.545340] calling  0000:00:1f.1+ @ 118, parent: pci0000:00
18.005: [  101.551076] calling  0000:00:1f.2+ @ 626, parent: pci0000:00
18.005: [  101.556506] call 0000:00:1f.1+ returned 0 after 48 usecs
18.005: [  101.561888] calling  0000:01:00.0+ @ 119, parent: 0000:00:1c.0
18.005: [  101.567686] call 0000:00:1d.7+ returned 0 after 43609 usecs
18.005: [  101.573400] calling  0000:02:00.0+ @ 629, parent: 0000:00:1c.1
18.008: [  101.578771] calling  0000:05:00.0+ @ 625, parent: 0000:00:1e.0
18.008: [  101.578878] yenta_cardbus 0000:05:00.0: calling  ricoh_mmc_fixup_rl5c476+0x0/0x110 @ 625
18.008: [  101.584743] calling  0000:05:00.1+ @ 619, parent: 0000:00:1e.0
18.008: [  101.590384] yenta_cardbus 0000:05:00.0: ricoh_mmc_fixup_rl5c476+0x0/0x110 took 5 usecs
18.008: [  101.596315] calling  0000:05:00.2+ @ 628, parent: 0000:00:1e.0
18.008: [  101.604396] yenta_cardbus 0000:05:00.0: calling  quirk_cardbus_legacy+0x0/0x20 @ 625
18.008: [  101.604405] yenta_cardbus 0000:05:00.0: quirk_cardbus_legacy+0x0/0x20 took 2 usecs
18.009: [  101.612919] call 0000:00:1f.2+ returned 0 after 49855 usecs
18.009: [  101.618533] call 0000:05:00.0+ returned 0 after 38826 usecs
18.009: [  101.626973] call 0000:02:00.0+ returned 0 after 41262 usecs
18.009: [  101.632458] calling  PNP0C0B:00+ @ 603, parent: platform
18.009: [  101.640429] call 0000:01:00.0+ returned 0 after 65474 usecs
18.009: [  101.648029] call PNP0C0B:00+ returned 0 after 2 usecs
18.009: [  101.648130] call 0000:00:1b.0+ returned 0 after 204562 usecs
18.009: [  101.653788] call 0000:05:00.1+ returned 0 after 56139 usecs
18.009: [  101.659399] calling  BOOT0000:00+ @ 603, parent: platform
18.010: [  101.665110] call 0000:05:00.2+ returned 0 after 51301 usecs
18.010: [  101.670453] call BOOT0000:00+ returned 0 after 1 usecs
18.010: [  101.670523] calling  i8042+ @ 603, parent: platform
18.010: [  101.713920] call i8042+ returned 0 after 1 usecs
18.010: [  101.718672] calling  pcmcia_socket0+ @ 603, parent: 0000:05:00.0
18.010: [  101.724893] call pcmcia_socket0+ returned 0 after 125 usecs
18.010: [  101.730544] calling  iTCO_wdt.0.auto+ @ 603, parent: 0000:00:1f.0
18.010: [  101.736722] call iTCO_wdt.0.auto+ returned 0 after 1 usecs
18.011: [  101.742433] pciehp 0000:00:1c.0:pcie004: Slot(0): Link Up
18.011: [  101.748171] calling  PNP0C0B:00+ @ 603, parent: platform
18.013: [  101.755264] call PNP0C0B:00+ returned 0 after 1653 usecs
18.013: [  101.760673] calling  BOOT0000:00+ @ 603, parent: platform
18.013: [  101.766150] call BOOT0000:00+ returned 0 after 1 usecs
18.013: [  101.771536] calling  0000:00:00.0+ @ 629, parent: pci0000:00
18.013: [  101.771604] calling  PNP0C09:00+ @ 603, parent: device:22
18.013: [  101.777280] call 0000:00:00.0+ returned 0 after 2 usecs
18.014: [  101.782755] ACPI: EC: event unblocked
18.014: [  101.788060] calling  0000:00:02.0+ @ 628, parent: pci0000:00
18.014: [  101.791798] call PNP0C09:00+ returned 0 after 8830 usecs
18.014: [  101.797515] call 0000:00:02.0+ returned 0 after 1 usecs
18.014: [  101.802908] calling  0000:00:02.1+ @ 119, parent: pci0000:00
18.014: [  101.808205] calling  0000:00:1b.0+ @ 629, parent: pci0000:00
18.014: [  101.808370] calling  0000:00:1c.0+ @ 628, parent: pci0000:00
18.014: [  101.813964] call 0000:00:02.1+ returned 0 after 1 usecs
18.014: [  101.819722] calling  ACPI0003:00+ @ 603, parent: PNP0C09:00
18.014: [  101.825440] calling  0000:00:1c.1+ @ 626, parent: pci0000:00
18.015: [  101.830761] pciehp 0000:00:1c.0:pcie004: Timeout on hotplug command 0x1038 (issued 92020 msec ago)
18.015: [  101.836404] call 0000:00:1c.1+ returned 0 after 11 usecs
18.015: [  101.842357] calling  0000:00:1c.2+ @ 619, parent: pci0000:00
18.015: [  101.851243] calling  0000:00:1c.3+ @ 624, parent: pci0000:00
18.015: [  101.851260] call 0000:00:1c.3+ returned 0 after 14 usecs
18.015: [  101.851263] calling  0000:00:1d.0+ @ 624, parent: pci0000:00
18.015: [  101.851373] usb usb1: root hub lost power or was reset
18.015: [  101.856774] call 0000:00:1c.2+ returned 0 after 17 usecs
18.015: [  101.862507] call 0000:00:1d.0+ returned 0 after 10975 usecs
18.016: [  101.868259] call 0000:00:1b.0+ returned 0 after 58642 usecs
18.016: [  101.873635] calling  0000:00:1d.1+ @ 622, parent: pci0000:00
18.016: [  101.879461] calling  0000:00:1d.2+ @ 629, parent: pci0000:00
18.016: [  101.884606] calling  0000:00:1d.3+ @ 625, parent: pci0000:00
18.016: [  101.890095] usb usb3: root hub lost power or was reset
18.016: [  101.895656] calling  0000:00:1d.7+ @ 621, parent: pci0000:00
18.016: [  101.901307] call 0000:00:1d.2+ returned 0 after 11061 usecs
18.016: [  101.907041] calling  0000:00:1e.0+ @ 121, parent: pci0000:00
18.016: [  101.912777] calling  0000:00:1f.0+ @ 630, parent: pci0000:00
18.016: [  101.918527] call 0000:00:1e.0+ returned 0 after 19 usecs
18.017: [  101.923725] call 0000:00:1f.0+ returned 0 after 1 usecs
18.017: [  101.929563] usb usb2: root hub lost power or was reset
18.017: [  101.935129] calling  0000:00:1f.1+ @ 120, parent: pci0000:00
18.017: [  101.940874] call 0000:00:1d.1+ returned 0 after 54971 usecs
18.017: [  101.946592] call 0000:00:1f.1+ returned 0 after 1 usecs
18.017: [  101.952107] usb usb4: root hub lost power or was reset
18.017: [  101.957296] calling  0000:00:1f.2+ @ 118, parent: pci0000:00
18.017: [  101.962518] call 0000:00:1d.3+ returned 0 after 65301 usecs
18.017: [  101.968278] call 0000:00:1f.2+ returned 0 after 38 usecs
18.017: [  101.973965] call 0000:00:1d.7+ returned 0 after 65363 usecs
18.018: [  101.979232] calling  0000:02:00.0+ @ 119, parent: 0000:00:1c.1
18.018: [  101.984452] calling  0000:05:00.0+ @ 635, parent: 0000:00:1e.0
18.018: [  101.990208] call 0000:02:00.0+ returned 0 after 22 usecs
18.018: [  101.995849] call 0000:05:00.0+ returned 0 after 2 usecs
18.018: [  102.001274] call ACPI0003:00+ returned 0 after 166534 usecs
18.018: [  102.006895] calling  0000:05:00.1+ @ 634, parent: 0000:00:1e.0
18.018: [  102.012832] call 0000:00:1c.0+ returned 0 after 188612 usecs
18.018: [  102.018746] calling  0000:05:00.2+ @ 627, parent: 0000:00:1e.0
18.018: [  102.024144] calling  ata1+ @ 623, parent: 0000:00:1f.2
18.018: [  102.029430] sdhci-pci 0000:05:00.2: Will use DMA mode even though HW doesn't fully claim to support it.
18.018: [  102.035084] call ata1+ returned 0 after 10 usecs
18.019: [  102.040997] sdhci-pci 0000:05:00.2: Will use DMA mode even though HW doesn't fully claim to support it.
18.019: [  102.046722] calling  0000:01:00.0+ @ 6, parent: 0000:00:1c.0
18.019: [  102.052643] calling  ata2+ @ 626, parent: 0000:00:1f.2
18.019: [  102.057863] calling  ata3+ @ 631, parent: 0000:00:1f.2
18.019: [  102.067346] call ata2+ returned 0 after 7 usecs
18.019: [  102.072038] call ata3+ returned 0 after 7 usecs
18.019: [  102.074973] calling  ata4+ @ 628, parent: 0000:00:1f.2
18.019: [  102.081560] calling  host0+ @ 633, parent: ata1
18.019: [  102.087300] call ata4+ returned 0 after 8 usecs
18.020: [  102.092514] call host0+ returned 0 after 2 usecs
18.020: [  102.097728] calling  PNP0C0A:00+ @ 603, parent: PNP0C09:00
18.020: [  102.102369] calling  host1+ @ 632, parent: ata2
18.020: [  102.106987] calling  host2+ @ 118, parent: ata3
18.020: [  102.112187] call host1+ returned 0 after 1 usecs
18.020: [  102.116792] call host2+ returned 0 after 1 usecs
18.020: [  102.121521] call 0000:05:00.1+ returned 0 after 100386 usecs
18.020: [  102.126118] calling  host3+ @ 631, parent: ata4
18.020: [  102.131707] calling  target0:0:0+ @ 624, parent: host0
18.021: [  102.136299] call host3+ returned 0 after 1 usecs
18.021: [  102.140911] call target0:0:0+ returned 0 after 1 usecs
18.021: [  102.150430] calling  usb1+ @ 623, parent: 0000:00:1d.0
18.021: [  102.156073] calling  usb2+ @ 621, parent: 0000:00:1d.1
18.021: [  102.156118] calling  usb3+ @ 634, parent: 0000:00:1d.2
18.021: [  102.156149] calling  usb4+ @ 625, parent: 0000:00:1d.3
18.021: [  102.156178] calling  usb5+ @ 632, parent: 0000:00:1d.7
18.021: [  102.160779] calling  0:0:0:0+ @ 619, parent: target0:0:0
18.021: [  102.160790] BUG: unable to handle kernel NULL pointer dereference at 000000f4
18.022: [  102.160794] *pde = 00000000 
18.022: [  102.160798] Oops: 0002 [#1] SMP
18.022: [  102.160800] Modules linked in: serport mousedev
18.022: [  102.166164] call 0000:05:00.2+ returned 0 after 133531 usecs
18.022: [  102.166146]  binfmt_misc iTCO_wdt iTCO_vendor_support coretemp arc4 kvm_intel kvm snd_hda_codec_analog snd_hda_codec_generic irqbypass snd_pcsp psmouse iwl3945 pcmcia iwlegacy mac80211
18.022: [  102.176063] call PNP0C0A:00+ returned 0 after 67496 usecs
18.022: [  102.176029]  snd_hda_intel snd_hda_codec sdhci_pci cqhci snd_hda_core firewire_ohci yenta_socket snd_hwdep lpc_ich pcmcia_rsrc cfg80211 mfd_core firewire_core pcmcia_core sdhci crc_itu_t mmc_core thinkpad_acpi i2c_i801 rng_core snd_pcm e1000e ehci_pci snd_timer
18.022: [  102.186594] calling  PNP0C0A:01+ @ 603, parent: PNP0C09:00
18.022: [  102.186584]  nvram snd rfkill battery uhci_hcd soundcore ehci_hcd usbcore video shpchp button ac acpi_cpufreq ip_tables x_tables autofs4 ext4 crc16 mbcache
18.022: [  102.197513] calling  hdaudioC0D0+ @ 654, parent: 0000:00:1b.0
18.023: [  102.196868]  jbd2 fscrypto cbc dm_crypt dm_mod sd_mod ahci libahci libata evdev serio_raw scsi_mod fan thermal
18.023: [  102.196868] CPU: 0 PID: 619 Comm: kworker/u4:5 Not tainted 4.17.0-rc2+ #12
18.023: [  102.196868] Hardware name: LENOVO 636338U/636338U, BIOS CBET4000 TIMELESS 01/01/1970
18.023: [  102.196868] Workqueue: events_unbound async_run_entry_fn
18.023: [  102.208295] call hdaudioC0D0+ returned 0 after 829 usecs
18.023: [  102.207490] EIP: blk_set_runtime_active+0x4f/0xc0
18.023: [  102.207490] EFLAGS: 00010013 CPU: 0
18.023: [  102.207490] EAX: 00000000 EBX: f6640bc0 ECX: f6640cb8 EDX: 00000000
18.023: [  102.207490] ESI: 00000000 EDI: ffff35b3 EBP: f1b4fe38 ESP: f1b4fe24
18.023: [  102.207490]  DS: 007b ES: 007b FS: 00d8 GS: 00e0 SS: 0068
18.023: [  102.207490] CR0: 80050033 CR2: 000000f4 CR3: 34329000 CR4: 000006d0
18.024: [  102.207490] Call Trace:
18.024: [  102.207490]  ? async_sdev_thaw+0x20/0x20 [scsi_mod]
18.024: [  102.217657] call PNP0C0A:01+ returned 0 after 20334 usecs
18.024: [  102.207490]  scsi_bus_resume_common+0x79/0x180 [scsi_mod]
18.024: [  102.207490]  scsi_bus_resume+0x12/0x20 [scsi_mod]
18.024: [  102.225483] calling  PNP0C0E:00+ @ 603, parent: PNP0C09:00
18.024: [  102.207490]  dpm_run_callback+0x47/0x1b0
18.024: [  102.207490]  ? scsi_bus_thaw+0x20/0x20 [scsi_mod]
18.024: [  102.207490]  device_resume+0x97/0x190
18.025: [  102.247723] call PNP0C0E:00+ returned 0 after 1 usecs
18.025: [  102.207490]  ? device_resume+0x190/0x190
18.025: [  102.207490]  async_resume+0x1e/0x50
18.025: [  102.207490]  async_run_entry_fn+0x61/0x3a0
18.025: [  102.207490]  ? try_to_wake_up+0x4d/0x790
18.025: [  102.207490]  ? pwq_dec_nr_in_flight+0x7c/0x150
18.025: [  102.276518] call usb2+ returned 0 after 117617 usecs
18.025: [  102.207490]  process_one_work+0x235/0x690
18.025: [  102.207490]  worker_thread+0x19d/0x6a0
18.025: [  102.207490]  kthread+0x14a/0x1f0
18.025: [  102.207490]  ? process_one_work+0x690/0x690
18.026: [  102.207490]  ? kthread_create_worker_on_cpu+0x30/0x30
18.026: [  102.296000] call usb5+ returned 0 after 126932 usecs
18.026: [  102.207490]  ret_from_fork+0x2e/0x38
18.026: [  102.207490] Code: 7e 8b 83 
18.026: [  102.311897] calling  phy0+ @ 121, parent: 0000:02:00.0
18.026: [  102.207490] fc 00 00 00 e8 e0 32 53 00 8b b3 50 01 00 00 31 
18.026: [  102.326676] calling  5-6+ @ 642, parent: usb5
18.026: [  102.207490] c0 8b 3d 20 7d 6a de 89 83 54 01 00 00 81 fe 0c ff 
18.026: [  102.337499] call usb3+ returned 0 after 177124 usecs
18.026: [  102.207490] ff ff 89 7d ec 74 46 <89> be f4 00 00 00 ba 09 00 
18.027: [  102.345835] call usb4+ returned 0 after 185236 usecs
18.027: [  102.207490] 00 00 8b 83 50 01 00 00 e8 0b 25 24 
18.027: [  102.207490] EIP: blk_set_runtime_active+0x4f/0xc0 SS:ESP: 0068:f1b4fe24
18.027: [  102.207490] CR2: 00000000000000f4
18.027: [  102.358489] call usb1+ returned 0 after 193086 usecs
18.029: [  102.207490] ---[ end trace 5717e021dd8debaa ]---
18.029: [  102.368583] call phy0+ returned 0 after 40937 usecs
18.029: [  102.370379] calling  PNP0C0D:00+ @ 603, parent: PNP0C09:00
18.030: [  102.388655] call 0000:01:00.0+ returned 0 after 323053 usecs
18.030: [  102.393664] ACPI: button: The lid device is not compliant to SW_LID.
18.030: [  102.470479] ata1: SATA link up 1.5 Gbps (SStatus 113 SControl 300)
18.030: [  102.471457] call PNP0C0D:00+ returned 0 after 80739 usecs
18.030: [  102.492067] usb 5-6: reset high-speed USB device number 2 using ehci-pci
18.030: [  102.495920] calling  dock.0+ @ 603, parent: platform
18.030: [  102.584691] call dock.0+ returned 0 after 1 usecs
18.030: [  102.589474] calling  LNXTHERM:00+ @ 603, parent: LNXSYBUS:01
18.030: [  102.595248] call LNXTHERM:00+ returned 0 after 36 usecs
18.030: [  102.600557] calling  LNXTHERM:01+ @ 603, parent: LNXSYBUS:01
18.030: [  102.606300] call LNXTHERM:01+ returned 0 after 3 usecs
18.031: [  102.611540] calling  PNP0C09:00+ @ 603, parent: 0000:00:1f.0
18.031: [  102.617283] call PNP0C09:00+ returned 0 after 1 usecs
18.031: [  102.622412] calling  IBM0068:00+ @ 603, parent: PNP0C09:00
18.031: [  102.627974] call IBM0068:00+ returned 0 after 1 usecs
18.031: [  102.633105] calling  ACPI0003:00+ @ 603, parent: PNP0C09:00
18.031: [  102.638757] call ACPI0003:00+ returned 0 after 1 usecs
18.031: [  102.643970] calling  PNP0C0A:00+ @ 603, parent: PNP0C09:00
18.031: [  102.649556] call PNP0C0A:00+ returned 0 after 1 usecs
18.031: [  102.654691] calling  PNP0C0A:01+ @ 603, parent: PNP0C09:00
18.031: [  102.660092] firewire_core 0000:05:00.1: rediscovered device fw0
18.032: [  102.660257] call PNP0C0A:01+ returned 0 after 1 usecs
18.032: [  102.671389] calling  PNP0C0E:00+ @ 603, parent: PNP0C09:00
18.032: [  102.676956] call PNP0C0E:00+ returned 0 after 0 usecs
18.032: [  102.682084] calling  PNP0C0D:00+ @ 603, parent: PNP0C09:00
18.032: [  102.687654] call PNP0C0D:00+ returned 0 after 1 usecs
18.032: [  102.692795] calling  INT0800:00+ @ 603, parent: 0000:00:1f.0
18.032: [  102.698533] call INT0800:00+ returned 0 after 1 usecs
18.032: [  102.703665] calling  PNP0C04:00+ @ 603, parent: 0000:00:1f.0
18.032: [  102.709408] call PNP0C04:00+ returned 0 after 1 usecs
18.032: [  102.714538] calling  PNP0C0B:00+ @ 603, parent: platform
18.033: [  102.719953] call PNP0C0B:00+ returned 0 after 25 usecs
18.033: [  102.725215] calling  LNXPWRBN:00+ @ 603, parent: LNXSYSTM:00
18.033: [  102.730951] call LNXPWRBN:00+ returned 0 after 1 usecs
18.033: [  102.736172] calling  00:00+ @ 603, parent: pnp0
18.033: [  102.740786] call 00:00+ returned 0 after 1 usecs
18.033: [  102.745481] calling  00:01+ @ 603, parent: pnp0
18.033: [  102.750095] call 00:01+ returned 0 after 1 usecs
18.033: [  102.754789] calling  00:02+ @ 603, parent: pnp0
18.033: [  102.759397] call 00:02+ returned 0 after 1 usecs
18.033: [  102.764100] calling  00:03+ @ 603, parent: pnp0
18.034: [  102.768782] call 00:03+ returned 0 after 74 usecs
18.034: [  102.772614] call 5-6+ returned 0 after 424979 usecs
18.034: [  102.773567] calling  00:04+ @ 603, parent: pnp0
18.034: [  102.783134] call 00:04+ returned 0 after 1 usecs
18.034: [  102.787837] calling  00:05+ @ 603, parent: pnp0
18.034: [  102.792450] call 00:05+ returned 0 after 1 usecs
18.034: [  102.797147] calling  00:06+ @ 603, parent: pnp0
18.034: [  102.801870] call 00:06+ returned 0 after 107 usecs
18.035: [  102.806756] calling  00:07+ @ 603, parent: pnp0
18.035: [  102.811395] call 00:07+ returned 0 after 24 usecs
18.035: [  102.816225] calling  pcspkr+ @ 603, parent: platform
18.035: [  102.821266] call pcspkr+ returned 0 after 1 usecs
18.035: [  102.826047] calling  platform-framebuffer.0+ @ 603, parent: platform
18.035: [  102.832477] call platform-framebuffer.0+ returned 0 after 1 usecs
18.035: [  102.838649] calling  alarmtimer+ @ 603, parent: platform
18.035: [  102.838896] ata1.00: configured for UDMA/100
18.035: [  102.844043] call alarmtimer+ returned 0 after 2 usecs
18.036: [  102.853528] calling  serial8250+ @ 603, parent: platform
18.036: [  102.858918] call serial8250+ returned 0 after 2 usecs
18.036: [  102.864052] calling  i8042+ @ 603, parent: platform
18.038: [  102.871682] call i8042+ returned 0 after 2615 usecs
18.039: [  102.876640] calling  serio0+ @ 603, parent: i8042
18.039: [  102.881427] call serio0+ returned 0 after 5 usecs
18.039: [  102.886223] calling  serio1+ @ 603, parent: i8042
18.039: [  102.891028] call serio1+ returned 0 after 17 usecs
18.039: [  102.895915] calling  rtc0+ @ 603, parent: 00:03
18.039: [  102.900528] call rtc0+ returned 0 after 2 usecs
18.039: [  102.905153] calling  memconsole+ @ 603, parent: platform
18.039: [  102.910544] call memconsole+ returned 0 after 2 usecs
18.039: [  102.915691] calling  input0+ @ 603, parent: serio0
18.040: [  102.920565] call input0+ returned 0 after 4 usecs
18.040: [  102.925361] calling  input0::numlock+ @ 603, parent: input0
18.040: [  102.931012] call input0::numlock+ returned 0 after 2 usecs
18.040: [  102.936592] calling  input0::capslock+ @ 603, parent: input0
18.040: [  102.942332] call input0::capslock+ returned 0 after 2 usecs
18.040: [  102.948222] calling  input0::scrolllock+ @ 603, parent: input0
18.040: [  102.954141] call input0::scrolllock+ returned 0 after 2 usecs
18.041: [  102.960025] calling  microcode+ @ 603, parent: platform
18.041: [  102.965334] call microcode+ returned 0 after 1 usecs
20.276: [  105.205086] e1000e: eth8 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: Rx/Tx
20.276: [  105.212932] IPv6: ADDRCONF(NETDEV_CHANGE): eth8: link becomes ready


======= Mon Apr 23 23:26:49 2018 (adjust=86.8us)
00.000: <00>

[-- Attachment #2: S/MIME Cryptographic Signature --]
[-- Type: application/pkcs7-signature, Size: 5174 bytes --]

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

* Re: Linux messages full of `random: get_random_u32 called from`
  2018-04-24 11:48 Paul Menzel
@ 2018-04-24 13:56 ` Theodore Y. Ts'o
  2018-04-24 14:30   ` Paul Menzel
                     ` (2 more replies)
  2018-04-26  5:51 ` Pavel Machek
  1 sibling, 3 replies; 65+ messages in thread
From: Theodore Y. Ts'o @ 2018-04-24 13:56 UTC (permalink / raw)
  To: Paul Menzel; +Cc: linux-kernel

On Tue, Apr 24, 2018 at 01:48:16PM +0200, Paul Menzel wrote:
> Dear Linux folks,
> 
> w
> Since Linux 4.17-rcX, Linux spams a lot of `random: get_random_u32 called
> from` messages. I believe, this setting should be reverted by default as
> otherwise a lot of other messages are not seen.

Can you tell me a bit about your system?  What distribution, what
hardware is present in your sytsem (what architecture, what
peripherals are attached, etc.)?

There's a reason why we made this --- we were declaring the random
number pool to be fully intialized before it really was, and that was
a potential security concern.  It's not as bad as the weakness
discovered by Nadia Heninger in 2012.  (See https://factorable.net for
more details.)  However, this is not one of those things where we like
to fool around.

So I want to understand if this is an issue with a particular hardware
configuration, or whether it's just a badly designed Linux init system
or embedded setup, or something else.  After all, you wouldn't want
the NSA spying on all of your network traffic, would you?  :-)

    	       	      	      	      - Ted

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

* Linux messages full of `random: get_random_u32 called from`
@ 2018-04-24 11:48 Paul Menzel
  2018-04-24 13:56 ` Theodore Y. Ts'o
  2018-04-26  5:51 ` Pavel Machek
  0 siblings, 2 replies; 65+ messages in thread
From: Paul Menzel @ 2018-04-24 11:48 UTC (permalink / raw)
  To: Theodore Ts'o; +Cc: linux-kernel


[-- Attachment #1.1: Type: text/plain, Size: 292 bytes --]

Dear Linux folks,


Since Linux 4.17-rcX, Linux spams a lot of `random: get_random_u32 
called from` messages. I believe, this setting should be reverted by 
default as otherwise a lot of other messages are not seen.

Please find my configuration attached.


Kind regards,

Paul

[-- Attachment #1.2: config_random.txt --]
[-- Type: text/plain, Size: 161681 bytes --]

#
# Automatically generated file; DO NOT EDIT.
# Linux/i386 4.17.0-rc1 Kernel Configuration
#
CONFIG_X86_32=y
CONFIG_X86=y
CONFIG_INSTRUCTION_DECODER=y
CONFIG_OUTPUT_FORMAT="elf32-i386"
CONFIG_ARCH_DEFCONFIG="arch/x86/configs/i386_defconfig"
CONFIG_LOCKDEP_SUPPORT=y
CONFIG_STACKTRACE_SUPPORT=y
CONFIG_MMU=y
CONFIG_ARCH_MMAP_RND_BITS_MIN=8
CONFIG_ARCH_MMAP_RND_BITS_MAX=16
CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MIN=8
CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MAX=16
CONFIG_NEED_DMA_MAP_STATE=y
CONFIG_NEED_SG_DMA_LENGTH=y
CONFIG_GENERIC_ISA_DMA=y
CONFIG_GENERIC_BUG=y
CONFIG_GENERIC_HWEIGHT=y
CONFIG_ARCH_MAY_HAVE_PC_FDC=y
CONFIG_RWSEM_XCHGADD_ALGORITHM=y
CONFIG_GENERIC_CALIBRATE_DELAY=y
CONFIG_ARCH_HAS_CPU_RELAX=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_ARCH_WANT_HUGE_PMD_SHARE=y
CONFIG_ARCH_WANT_GENERAL_HUGETLB=y
CONFIG_ARCH_SUPPORTS_OPTIMIZED_INLINING=y
CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
CONFIG_HAVE_INTEL_TXT=y
CONFIG_X86_32_SMP=y
CONFIG_ARCH_SUPPORTS_UPROBES=y
CONFIG_FIX_EARLYCON_MEM=y
CONFIG_PGTABLE_LEVELS=2
CONFIG_IRQ_WORK=y
CONFIG_BUILDTIME_EXTABLE_SORT=y
CONFIG_THREAD_INFO_IN_TASK=y

#
# General setup
#
CONFIG_INIT_ENV_ARG_LIMIT=32
CONFIG_CROSS_COMPILE=""
# CONFIG_COMPILE_TEST is not set
CONFIG_LOCALVERSION=""
# 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_HAVE_KERNEL_LZ4=y
# CONFIG_KERNEL_GZIP is not set
# CONFIG_KERNEL_BZIP2 is not set
# CONFIG_KERNEL_LZMA is not set
# CONFIG_KERNEL_XZ is not set
# CONFIG_KERNEL_LZO is not set
CONFIG_KERNEL_LZ4=y
CONFIG_DEFAULT_HOSTNAME="(none)"
CONFIG_SWAP=y
CONFIG_SYSVIPC=y
CONFIG_SYSVIPC_SYSCTL=y
CONFIG_POSIX_MQUEUE=y
CONFIG_POSIX_MQUEUE_SYSCTL=y
CONFIG_CROSS_MEMORY_ATTACH=y
CONFIG_USELIB=y
CONFIG_AUDIT=y
CONFIG_HAVE_ARCH_AUDITSYSCALL=y
CONFIG_AUDITSYSCALL=y
CONFIG_AUDIT_WATCH=y
CONFIG_AUDIT_TREE=y

#
# IRQ subsystem
#
CONFIG_GENERIC_IRQ_PROBE=y
CONFIG_GENERIC_IRQ_SHOW=y
CONFIG_GENERIC_IRQ_EFFECTIVE_AFF_MASK=y
CONFIG_GENERIC_PENDING_IRQ=y
CONFIG_GENERIC_IRQ_MIGRATION=y
CONFIG_GENERIC_IRQ_CHIP=y
CONFIG_IRQ_DOMAIN=y
CONFIG_IRQ_DOMAIN_HIERARCHY=y
CONFIG_GENERIC_MSI_IRQ=y
CONFIG_GENERIC_MSI_IRQ_DOMAIN=y
CONFIG_GENERIC_IRQ_MATRIX_ALLOCATOR=y
CONFIG_GENERIC_IRQ_RESERVATION_MODE=y
CONFIG_IRQ_FORCED_THREADING=y
CONFIG_SPARSE_IRQ=y
# CONFIG_GENERIC_IRQ_DEBUGFS is not set
CONFIG_CLOCKSOURCE_WATCHDOG=y
CONFIG_ARCH_CLOCKSOURCE_DATA=y
CONFIG_CLOCKSOURCE_VALIDATE_LAST_CYCLE=y
CONFIG_GENERIC_TIME_VSYSCALL=y
CONFIG_GENERIC_CLOCKEVENTS=y
CONFIG_GENERIC_CLOCKEVENTS_BROADCAST=y
CONFIG_GENERIC_CLOCKEVENTS_MIN_ADJUST=y
CONFIG_GENERIC_CMOS_UPDATE=y

#
# Timers subsystem
#
CONFIG_TICK_ONESHOT=y
CONFIG_NO_HZ_COMMON=y
# CONFIG_HZ_PERIODIC is not set
CONFIG_NO_HZ_IDLE=y
# CONFIG_NO_HZ is not set
CONFIG_HIGH_RES_TIMERS=y

#
# CPU/Task time and stats accounting
#
CONFIG_TICK_CPU_ACCOUNTING=y
# CONFIG_IRQ_TIME_ACCOUNTING is not set
CONFIG_BSD_PROCESS_ACCT=y
CONFIG_BSD_PROCESS_ACCT_V3=y
CONFIG_TASKSTATS=y
CONFIG_TASK_DELAY_ACCT=y
CONFIG_TASK_XACCT=y
CONFIG_TASK_IO_ACCOUNTING=y
# CONFIG_CPU_ISOLATION is not set

#
# RCU Subsystem
#
CONFIG_TREE_RCU=y
# CONFIG_RCU_EXPERT is not set
CONFIG_SRCU=y
CONFIG_TREE_SRCU=y
CONFIG_RCU_STALL_COMMON=y
CONFIG_RCU_NEED_SEGCBLIST=y
CONFIG_BUILD_BIN2C=y
# CONFIG_IKCONFIG is not set
CONFIG_LOG_BUF_SHIFT=17
CONFIG_LOG_CPU_MAX_BUF_SHIFT=12
CONFIG_PRINTK_SAFE_LOG_BUF_SHIFT=13
CONFIG_HAVE_UNSTABLE_SCHED_CLOCK=y
CONFIG_ARCH_WANT_BATCHED_UNMAP_TLB_FLUSH=y
CONFIG_CGROUPS=y
CONFIG_PAGE_COUNTER=y
CONFIG_MEMCG=y
CONFIG_MEMCG_SWAP=y
# CONFIG_MEMCG_SWAP_ENABLED is not set
CONFIG_BLK_CGROUP=y
# CONFIG_DEBUG_BLK_CGROUP is not set
CONFIG_CGROUP_WRITEBACK=y
CONFIG_CGROUP_SCHED=y
CONFIG_FAIR_GROUP_SCHED=y
CONFIG_CFS_BANDWIDTH=y
# CONFIG_RT_GROUP_SCHED is not set
CONFIG_CGROUP_PIDS=y
# CONFIG_CGROUP_RDMA is not set
CONFIG_CGROUP_FREEZER=y
# CONFIG_CGROUP_HUGETLB is not set
CONFIG_CPUSETS=y
CONFIG_PROC_PID_CPUSET=y
CONFIG_CGROUP_DEVICE=y
CONFIG_CGROUP_CPUACCT=y
CONFIG_CGROUP_PERF=y
# CONFIG_CGROUP_BPF is not set
# CONFIG_CGROUP_DEBUG is not set
CONFIG_SOCK_CGROUP_DATA=y
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=y
# 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_RD_LZ4=y
CONFIG_CC_OPTIMIZE_FOR_PERFORMANCE=y
# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set
CONFIG_SYSCTL=y
CONFIG_ANON_INODES=y
CONFIG_HAVE_UID16=y
CONFIG_SYSCTL_EXCEPTION_TRACE=y
CONFIG_HAVE_PCSPKR_PLATFORM=y
CONFIG_BPF=y
CONFIG_EXPERT=y
# CONFIG_UID16 is not set
CONFIG_MULTIUSER=y
CONFIG_SGETMASK_SYSCALL=y
CONFIG_SYSFS_SYSCALL=y
# CONFIG_SYSCTL_SYSCALL is not set
CONFIG_FHANDLE=y
CONFIG_POSIX_TIMERS=y
CONFIG_PRINTK=y
CONFIG_PRINTK_NMI=y
CONFIG_BUG=y
CONFIG_ELF_CORE=y
CONFIG_PCSPKR_PLATFORM=y
CONFIG_BASE_FULL=y
CONFIG_FUTEX=y
CONFIG_FUTEX_PI=y
CONFIG_EPOLL=y
CONFIG_SIGNALFD=y
CONFIG_TIMERFD=y
CONFIG_EVENTFD=y
CONFIG_SHMEM=y
CONFIG_AIO=y
CONFIG_ADVISE_SYSCALLS=y
CONFIG_MEMBARRIER=y
CONFIG_CHECKPOINT_RESTORE=y
CONFIG_KALLSYMS=y
CONFIG_KALLSYMS_ALL=y
CONFIG_KALLSYMS_BASE_RELATIVE=y
CONFIG_BPF_SYSCALL=y
CONFIG_USERFAULTFD=y
CONFIG_ARCH_HAS_MEMBARRIER_SYNC_CORE=y
# CONFIG_EMBEDDED is not set
CONFIG_HAVE_PERF_EVENTS=y
# CONFIG_PC104 is not set

#
# Kernel Performance Events And Counters
#
CONFIG_PERF_EVENTS=y
# CONFIG_DEBUG_PERF_USE_VMALLOC is not set
CONFIG_VM_EVENT_COUNTERS=y
# CONFIG_COMPAT_BRK is not set
CONFIG_SLAB=y
# CONFIG_SLUB is not set
# CONFIG_SLOB is not set
CONFIG_SLAB_MERGE_DEFAULT=y
CONFIG_SLAB_FREELIST_RANDOM=y
CONFIG_SYSTEM_DATA_VERIFICATION=y
CONFIG_PROFILING=y
CONFIG_TRACEPOINTS=y
CONFIG_CRASH_CORE=y
CONFIG_KEXEC_CORE=y
CONFIG_OPROFILE=m
# CONFIG_OPROFILE_EVENT_MULTIPLEX is not set
CONFIG_HAVE_OPROFILE=y
CONFIG_OPROFILE_NMI_TIMER=y
CONFIG_KPROBES=y
CONFIG_JUMP_LABEL=y
# CONFIG_STATIC_KEYS_SELFTEST is not set
CONFIG_OPTPROBES=y
CONFIG_KPROBES_ON_FTRACE=y
CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y
CONFIG_ARCH_USE_BUILTIN_BSWAP=y
CONFIG_KRETPROBES=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_KPROBES_ON_FTRACE=y
CONFIG_HAVE_FUNCTION_ERROR_INJECTION=y
CONFIG_HAVE_NMI=y
CONFIG_HAVE_ARCH_TRACEHOOK=y
CONFIG_HAVE_DMA_CONTIGUOUS=y
CONFIG_GENERIC_SMP_IDLE_THREAD=y
CONFIG_ARCH_HAS_FORTIFY_SOURCE=y
CONFIG_ARCH_HAS_SET_MEMORY=y
CONFIG_HAVE_ARCH_THREAD_STRUCT_WHITELIST=y
CONFIG_ARCH_WANTS_DYNAMIC_TASK_STRUCT=y
CONFIG_HAVE_REGS_AND_STACK_ACCESS_API=y
CONFIG_HAVE_CLK=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_HARDLOCKUP_DETECTOR_PERF=y
CONFIG_HAVE_PERF_REGS=y
CONFIG_HAVE_PERF_USER_STACK_DUMP=y
CONFIG_HAVE_ARCH_JUMP_LABEL=y
CONFIG_HAVE_RCU_TABLE_FREE=y
CONFIG_ARCH_HAVE_NMI_SAFE_CMPXCHG=y
CONFIG_HAVE_CMPXCHG_LOCAL=y
CONFIG_HAVE_CMPXCHG_DOUBLE=y
CONFIG_ARCH_WANT_IPC_PARSE_VERSION=y
CONFIG_HAVE_ARCH_SECCOMP_FILTER=y
CONFIG_SECCOMP_FILTER=y
CONFIG_HAVE_GCC_PLUGINS=y
# CONFIG_GCC_PLUGINS is not set
CONFIG_HAVE_CC_STACKPROTECTOR=y
# CONFIG_CC_STACKPROTECTOR_NONE is not set
# CONFIG_CC_STACKPROTECTOR_REGULAR is not set
CONFIG_CC_STACKPROTECTOR_STRONG=y
# CONFIG_CC_STACKPROTECTOR_AUTO is not set
CONFIG_HAVE_ARCH_WITHIN_STACK_FRAMES=y
CONFIG_HAVE_IRQ_TIME_ACCOUNTING=y
CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE=y
CONFIG_HAVE_MOD_ARCH_SPECIFIC=y
CONFIG_MODULES_USE_ELF_REL=y
CONFIG_ARCH_HAS_ELF_RANDOMIZE=y
CONFIG_HAVE_ARCH_MMAP_RND_BITS=y
CONFIG_HAVE_EXIT_THREAD=y
CONFIG_ARCH_MMAP_RND_BITS=8
CONFIG_HAVE_COPY_THREAD_TLS=y
CONFIG_CLONE_BACKWARDS=y
CONFIG_OLD_SIGSUSPEND3=y
CONFIG_OLD_SIGACTION=y
CONFIG_ARCH_HAS_STRICT_KERNEL_RWX=y
CONFIG_STRICT_KERNEL_RWX=y
CONFIG_ARCH_HAS_STRICT_MODULE_RWX=y
CONFIG_STRICT_MODULE_RWX=y
CONFIG_ARCH_HAS_REFCOUNT=y
# CONFIG_REFCOUNT_FULL is not set

#
# GCOV-based kernel profiling
#
# CONFIG_GCOV_KERNEL is not set
CONFIG_ARCH_HAS_GCOV_PROFILE_ALL=y
CONFIG_HAVE_GENERIC_DMA_COHERENT=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=y
# CONFIG_MODULE_SRCVERSION_ALL is not set
# CONFIG_MODULE_SIG is not set
# CONFIG_MODULE_COMPRESS is not set
# CONFIG_TRIM_UNUSED_KSYMS is not set
CONFIG_MODULES_TREE_LOOKUP=y
CONFIG_BLOCK=y
CONFIG_LBDAF=y
CONFIG_BLK_SCSI_REQUEST=y
CONFIG_BLK_DEV_BSG=y
CONFIG_BLK_DEV_BSGLIB=y
CONFIG_BLK_DEV_INTEGRITY=y
# CONFIG_BLK_DEV_ZONED is not set
CONFIG_BLK_DEV_THROTTLING=y
# CONFIG_BLK_DEV_THROTTLING_LOW is not set
# CONFIG_BLK_CMDLINE_PARSER is not set
# CONFIG_BLK_WBT is not set
CONFIG_BLK_DEBUG_FS=y
# CONFIG_BLK_SED_OPAL is not set

#
# Partition Types
#
# CONFIG_PARTITION_ADVANCED is not set
CONFIG_MSDOS_PARTITION=y
CONFIG_EFI_PARTITION=y
CONFIG_BLK_MQ_PCI=y
CONFIG_BLK_MQ_VIRTIO=y

#
# 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_MQ_IOSCHED_DEADLINE=y
CONFIG_MQ_IOSCHED_KYBER=y
# CONFIG_IOSCHED_BFQ is not set
CONFIG_PREEMPT_NOTIFIERS=y
CONFIG_PADATA=y
CONFIG_ASN1=y
CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
CONFIG_INLINE_READ_UNLOCK=y
CONFIG_INLINE_READ_UNLOCK_IRQ=y
CONFIG_INLINE_WRITE_UNLOCK=y
CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
CONFIG_ARCH_SUPPORTS_ATOMIC_RMW=y
CONFIG_MUTEX_SPIN_ON_OWNER=y
CONFIG_RWSEM_SPIN_ON_OWNER=y
CONFIG_LOCK_SPIN_ON_OWNER=y
CONFIG_ARCH_USE_QUEUED_SPINLOCKS=y
CONFIG_QUEUED_SPINLOCKS=y
CONFIG_ARCH_USE_QUEUED_RWLOCKS=y
CONFIG_QUEUED_RWLOCKS=y
CONFIG_ARCH_HAS_SYNC_CORE_BEFORE_USERMODE=y
CONFIG_FREEZER=y

#
# Processor type and features
#
CONFIG_ZONE_DMA=y
CONFIG_SMP=y
CONFIG_X86_FEATURE_NAMES=y
CONFIG_X86_MPPARSE=y
# CONFIG_GOLDFISH is not set
CONFIG_RETPOLINE=y
# CONFIG_INTEL_RDT is not set
# CONFIG_X86_BIGSMP is not set
# CONFIG_X86_EXTENDED_PLATFORM is not set
CONFIG_X86_INTEL_LPSS=y
CONFIG_X86_AMD_PLATFORM_DEVICE=y
CONFIG_IOSF_MBI=y
# CONFIG_IOSF_MBI_DEBUG is not set
# CONFIG_X86_32_IRIS is not set
CONFIG_SCHED_OMIT_FRAME_POINTER=y
CONFIG_HYPERVISOR_GUEST=y
CONFIG_PARAVIRT=y
# CONFIG_PARAVIRT_DEBUG is not set
CONFIG_PARAVIRT_SPINLOCKS=y
# CONFIG_QUEUED_LOCK_STAT is not set
CONFIG_KVM_GUEST=y
# CONFIG_KVM_DEBUG_FS is not set
# CONFIG_PARAVIRT_TIME_ACCOUNTING is not set
CONFIG_PARAVIRT_CLOCK=y
CONFIG_NO_BOOTMEM=y
# CONFIG_M486 is not set
# CONFIG_M586 is not set
# CONFIG_M586TSC is not set
# CONFIG_M586MMX is not set
CONFIG_M686=y
# CONFIG_MPENTIUMII is not set
# CONFIG_MPENTIUMIII is not set
# 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 is not set
CONFIG_X86_INTERNODE_CACHE_SHIFT=5
CONFIG_X86_L1_CACHE_SHIFT=5
CONFIG_X86_USE_PPRO_CHECKSUM=y
CONFIG_X86_TSC=y
CONFIG_X86_CMPXCHG64=y
CONFIG_X86_CMOV=y
CONFIG_X86_MINIMUM_CPU_FAMILY=6
CONFIG_X86_DEBUGCTLMSR=y
# CONFIG_PROCESSOR_SELECT is not set
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_NR_CPUS_RANGE_BEGIN=2
CONFIG_NR_CPUS_RANGE_END=8
CONFIG_NR_CPUS_DEFAULT=8
CONFIG_NR_CPUS=8
CONFIG_SCHED_SMT=y
CONFIG_SCHED_MC=y
CONFIG_SCHED_MC_PRIO=y
# 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_MCELOG_LEGACY=y
CONFIG_X86_MCE_INTEL=y
CONFIG_X86_MCE_AMD=y
# CONFIG_X86_ANCIENT_MCE is not set
CONFIG_X86_MCE_THRESHOLD=y
CONFIG_X86_MCE_INJECT=m
CONFIG_X86_THERMAL_VECTOR=y

#
# Performance monitoring
#
CONFIG_PERF_EVENTS_INTEL_UNCORE=m
CONFIG_PERF_EVENTS_INTEL_RAPL=m
CONFIG_PERF_EVENTS_INTEL_CSTATE=m
CONFIG_PERF_EVENTS_AMD_POWER=m
# CONFIG_X86_LEGACY_VM86 is not set
CONFIG_X86_16BIT=y
CONFIG_X86_ESPFIX32=y
# CONFIG_TOSHIBA is not set
CONFIG_I8K=m
# CONFIG_X86_REBOOTFIXUPS is not set
CONFIG_MICROCODE=y
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=y
# CONFIG_HIGHMEM64G is not set
CONFIG_VMSPLIT_3G=y
# CONFIG_VMSPLIT_3G_OPT is not set
# CONFIG_VMSPLIT_2G is not set
# CONFIG_VMSPLIT_2G_OPT is not set
# CONFIG_VMSPLIT_1G is not set
CONFIG_PAGE_OFFSET=0xC0000000
CONFIG_HIGHMEM=y
CONFIG_ARCH_HAS_MEM_ENCRYPT=y
CONFIG_ARCH_FLATMEM_ENABLE=y
CONFIG_ARCH_SPARSEMEM_ENABLE=y
CONFIG_ARCH_SELECT_MEMORY_MODEL=y
CONFIG_ILLEGAL_POINTER_VALUE=0
CONFIG_SELECT_MEMORY_MODEL=y
# CONFIG_FLATMEM_MANUAL is not set
CONFIG_SPARSEMEM_MANUAL=y
CONFIG_SPARSEMEM=y
CONFIG_HAVE_MEMORY_PRESENT=y
CONFIG_SPARSEMEM_STATIC=y
CONFIG_HAVE_MEMBLOCK=y
CONFIG_HAVE_MEMBLOCK_NODE_MAP=y
CONFIG_HAVE_GENERIC_GUP=y
CONFIG_ARCH_DISCARD_MEMBLOCK=y
CONFIG_MEMORY_ISOLATION=y
CONFIG_MEMORY_HOTPLUG=y
CONFIG_MEMORY_HOTPLUG_SPARSE=y
# CONFIG_MEMORY_HOTPLUG_DEFAULT_ONLINE is not set
CONFIG_MEMORY_HOTREMOVE=y
CONFIG_SPLIT_PTLOCK_CPUS=4
CONFIG_MEMORY_BALLOON=y
CONFIG_BALLOON_COMPACTION=y
CONFIG_COMPACTION=y
CONFIG_MIGRATION=y
CONFIG_BOUNCE=y
CONFIG_VIRT_TO_BUS=y
CONFIG_MMU_NOTIFIER=y
CONFIG_KSM=y
CONFIG_DEFAULT_MMAP_MIN_ADDR=65536
CONFIG_TRANSPARENT_HUGEPAGE=y
# CONFIG_TRANSPARENT_HUGEPAGE_ALWAYS is not set
CONFIG_TRANSPARENT_HUGEPAGE_MADVISE=y
CONFIG_TRANSPARENT_HUGE_PAGECACHE=y
# CONFIG_CLEANCACHE is not set
CONFIG_FRONTSWAP=y
# CONFIG_CMA is not set
CONFIG_ZSWAP=y
CONFIG_ZPOOL=y
CONFIG_ZBUD=y
# CONFIG_Z3FOLD is not set
CONFIG_ZSMALLOC=m
# CONFIG_PGTABLE_MAPPING is not set
# CONFIG_ZSMALLOC_STAT is not set
CONFIG_GENERIC_EARLY_IOREMAP=y
# CONFIG_DEFERRED_STRUCT_PAGE_INIT is not set
# CONFIG_IDLE_PAGE_TRACKING is not set
CONFIG_FRAME_VECTOR=y
# CONFIG_PERCPU_STATS is not set
# CONFIG_GUP_BENCHMARK is not set
# CONFIG_HIGHPTE is not set
CONFIG_X86_CHECK_BIOS_CORRUPTION=y
CONFIG_X86_BOOTPARAM_MEMORY_CORRUPTION_CHECK=y
CONFIG_X86_RESERVE_LOW=64
# CONFIG_MATH_EMULATION is not set
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_X86_SMAP=y
# CONFIG_X86_INTEL_UMIP is not set
# CONFIG_EFI is not set
CONFIG_SECCOMP=y
# CONFIG_HZ_100 is not set
CONFIG_HZ_250=y
# CONFIG_HZ_300 is not set
# CONFIG_HZ_1000 is not set
CONFIG_HZ=250
CONFIG_SCHED_HRTICK=y
CONFIG_KEXEC=y
CONFIG_CRASH_DUMP=y
# CONFIG_KEXEC_JUMP is not set
CONFIG_PHYSICAL_START=0x1000000
CONFIG_RELOCATABLE=y
CONFIG_RANDOMIZE_BASE=y
CONFIG_X86_NEED_RELOCS=y
CONFIG_PHYSICAL_ALIGN=0x200000
CONFIG_HOTPLUG_CPU=y
# CONFIG_BOOTPARAM_HOTPLUG_CPU0 is not set
# CONFIG_DEBUG_HOTPLUG_CPU0 is not set
# CONFIG_COMPAT_VDSO is not set
# CONFIG_CMDLINE_BOOL is not set
CONFIG_MODIFY_LDT_SYSCALL=y
CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y

#
# Power management and ACPI options
#
CONFIG_SUSPEND=y
CONFIG_SUSPEND_FREEZER=y
# CONFIG_SUSPEND_SKIP_SYNC is not set
CONFIG_HIBERNATE_CALLBACKS=y
CONFIG_HIBERNATION=y
CONFIG_PM_STD_PARTITION=""
CONFIG_PM_SLEEP=y
CONFIG_PM_SLEEP_SMP=y
# CONFIG_PM_AUTOSLEEP is not set
# CONFIG_PM_WAKELOCKS is not set
CONFIG_PM=y
CONFIG_PM_DEBUG=y
CONFIG_PM_ADVANCED_DEBUG=y
# CONFIG_PM_TEST_SUSPEND is not set
CONFIG_PM_SLEEP_DEBUG=y
# CONFIG_DPM_WATCHDOG is not set
# CONFIG_PM_TRACE_RTC is not set
CONFIG_PM_CLK=y
# CONFIG_WQ_POWER_EFFICIENT_DEFAULT is not set
CONFIG_ACPI=y
CONFIG_ACPI_LEGACY_TABLES_LOOKUP=y
CONFIG_ARCH_MIGHT_HAVE_ACPI_PDC=y
CONFIG_ACPI_SYSTEM_POWER_STATES_SUPPORT=y
# CONFIG_ACPI_DEBUGGER is not set
CONFIG_ACPI_SPCR_TABLE=y
CONFIG_ACPI_SLEEP=y
# CONFIG_ACPI_PROCFS_POWER is not set
CONFIG_ACPI_REV_OVERRIDE_POSSIBLE=y
# CONFIG_ACPI_EC_DEBUGFS is not set
CONFIG_ACPI_AC=m
CONFIG_ACPI_BATTERY=m
CONFIG_ACPI_BUTTON=m
CONFIG_ACPI_VIDEO=m
CONFIG_ACPI_FAN=m
# CONFIG_ACPI_TAD is not set
CONFIG_ACPI_DOCK=y
CONFIG_ACPI_CPU_FREQ_PSS=y
CONFIG_ACPI_PROCESSOR_CSTATE=y
CONFIG_ACPI_PROCESSOR_IDLE=y
CONFIG_ACPI_PROCESSOR=y
CONFIG_ACPI_HOTPLUG_CPU=y
CONFIG_ACPI_PROCESSOR_AGGREGATOR=m
CONFIG_ACPI_THERMAL=m
CONFIG_ARCH_HAS_ACPI_TABLE_UPGRADE=y
CONFIG_ACPI_TABLE_UPGRADE=y
# CONFIG_ACPI_DEBUG is not set
CONFIG_ACPI_PCI_SLOT=y
CONFIG_ACPI_CONTAINER=y
CONFIG_ACPI_HOTPLUG_MEMORY=y
CONFIG_ACPI_HOTPLUG_IOAPIC=y
CONFIG_ACPI_SBS=m
CONFIG_ACPI_HED=y
# CONFIG_ACPI_CUSTOM_METHOD is not set
# CONFIG_ACPI_REDUCED_HARDWARE_ONLY is not set
CONFIG_HAVE_ACPI_APEI=y
CONFIG_HAVE_ACPI_APEI_NMI=y
CONFIG_ACPI_APEI=y
CONFIG_ACPI_APEI_GHES=y
CONFIG_ACPI_APEI_PCIEAER=y
# CONFIG_ACPI_APEI_EINJ is not set
# CONFIG_ACPI_APEI_ERST_DEBUG is not set
CONFIG_DPTF_POWER=m
CONFIG_ACPI_EXTLOG=y
# CONFIG_PMIC_OPREGION is not set
# CONFIG_ACPI_CONFIGFS is not set
# CONFIG_X86_PM_TIMER is not set
# CONFIG_SFI is not set
# CONFIG_APM is not set

#
# CPU Frequency scaling
#
CONFIG_CPU_FREQ=y
CONFIG_CPU_FREQ_GOV_ATTR_SET=y
CONFIG_CPU_FREQ_GOV_COMMON=y
CONFIG_CPU_FREQ_STAT=y
# CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE is not set
# CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE is not set
# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set
CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND=y
# CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set
# CONFIG_CPU_FREQ_DEFAULT_GOV_SCHEDUTIL is not set
CONFIG_CPU_FREQ_GOV_PERFORMANCE=y
CONFIG_CPU_FREQ_GOV_POWERSAVE=m
CONFIG_CPU_FREQ_GOV_USERSPACE=m
CONFIG_CPU_FREQ_GOV_ONDEMAND=y
CONFIG_CPU_FREQ_GOV_CONSERVATIVE=m
CONFIG_CPU_FREQ_GOV_SCHEDUTIL=y

#
# CPU frequency scaling drivers
#
CONFIG_X86_INTEL_PSTATE=y
CONFIG_X86_PCC_CPUFREQ=m
CONFIG_X86_ACPI_CPUFREQ=m
CONFIG_X86_ACPI_CPUFREQ_CPB=y
# CONFIG_X86_POWERNOW_K6 is not set
# CONFIG_X86_POWERNOW_K7 is not set
CONFIG_X86_POWERNOW_K8=m
CONFIG_X86_AMD_FREQ_SENSITIVITY=m
# CONFIG_X86_GX_SUSPMOD is not set
# CONFIG_X86_SPEEDSTEP_CENTRINO is not set
# CONFIG_X86_SPEEDSTEP_ICH is not set
# CONFIG_X86_SPEEDSTEP_SMI is not set
# CONFIG_X86_P4_CLOCKMOD is not set
# CONFIG_X86_CPUFREQ_NFORCE2 is not set
# CONFIG_X86_LONGRUN is not set
# CONFIG_X86_LONGHAUL is not set
# CONFIG_X86_E_POWERSAVER is not set

#
# shared options
#

#
# CPU Idle
#
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=y
CONFIG_PCIEAER=y
# CONFIG_PCIE_ECRC is not set
CONFIG_PCIEAER_INJECT=m
CONFIG_PCIEASPM=y
# CONFIG_PCIEASPM_DEBUG is not set
CONFIG_PCIEASPM_DEFAULT=y
# CONFIG_PCIEASPM_POWERSAVE is not set
# CONFIG_PCIEASPM_POWER_SUPERSAVE is not set
# CONFIG_PCIEASPM_PERFORMANCE is not set
CONFIG_PCIE_PME=y
CONFIG_PCIE_DPC=y
# CONFIG_PCIE_PTM is not set
CONFIG_PCI_MSI=y
CONFIG_PCI_MSI_IRQ_DOMAIN=y
CONFIG_PCI_QUIRKS=y
# CONFIG_PCI_DEBUG is not set
CONFIG_PCI_REALLOC_ENABLE_AUTO=y
CONFIG_PCI_STUB=m
CONFIG_PCI_ATS=y
CONFIG_PCI_LOCKLESS_CONFIG=y
CONFIG_PCI_IOV=y
CONFIG_PCI_PRI=y
CONFIG_PCI_PASID=y
CONFIG_PCI_LABEL=y
CONFIG_HOTPLUG_PCI=y
# CONFIG_HOTPLUG_PCI_COMPAQ is not set
# CONFIG_HOTPLUG_PCI_IBM is not set
CONFIG_HOTPLUG_PCI_ACPI=y
CONFIG_HOTPLUG_PCI_ACPI_IBM=m
CONFIG_HOTPLUG_PCI_CPCI=y
CONFIG_HOTPLUG_PCI_CPCI_ZT5550=m
CONFIG_HOTPLUG_PCI_CPCI_GENERIC=m
CONFIG_HOTPLUG_PCI_SHPC=m

#
# Cadence PCIe controllers support
#

#
# DesignWare PCI Core Support
#
# CONFIG_PCIE_DW_PLAT is not set

#
# PCI host controller drivers
#

#
# PCI Endpoint
#
# CONFIG_PCI_ENDPOINT is not set

#
# PCI switch controller drivers
#
# CONFIG_PCI_SW_SWITCHTEC is not set
# CONFIG_ISA_BUS is not set
CONFIG_ISA_DMA_API=y
# CONFIG_ISA is not set
# CONFIG_SCx200 is not set
# CONFIG_OLPC is not set
# CONFIG_ALIX is not set
# CONFIG_NET5501 is not set
# CONFIG_GEOS 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_PCCARD_NONSTATIC=y
# CONFIG_RAPIDIO is not set
# CONFIG_X86_SYSFB is not set

#
# Executable file formats / Emulations
#
CONFIG_BINFMT_ELF=y
CONFIG_ELFCORE=y
CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS=y
CONFIG_BINFMT_SCRIPT=y
CONFIG_HAVE_AOUT=y
# CONFIG_BINFMT_AOUT is not set
CONFIG_BINFMT_MISC=m
CONFIG_COREDUMP=y
CONFIG_COMPAT_32=y
CONFIG_HAVE_ATOMIC_IOMAP=y
CONFIG_NET=y
CONFIG_NET_INGRESS=y
CONFIG_NET_EGRESS=y

#
# Networking options
#
CONFIG_PACKET=y
CONFIG_PACKET_DIAG=m
CONFIG_UNIX=y
CONFIG_UNIX_DIAG=m
CONFIG_TLS=y
CONFIG_XFRM=y
CONFIG_XFRM_ALGO=m
CONFIG_XFRM_USER=m
CONFIG_XFRM_SUB_POLICY=y
CONFIG_XFRM_MIGRATE=y
# CONFIG_XFRM_STATISTICS is not set
CONFIG_XFRM_IPCOMP=m
CONFIG_NET_KEY=m
CONFIG_NET_KEY_MIGRATE=y
CONFIG_INET=y
CONFIG_IP_MULTICAST=y
CONFIG_IP_ADVANCED_ROUTER=y
CONFIG_IP_FIB_TRIE_STATS=y
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_IP_TUNNEL=m
CONFIG_NET_IPGRE=m
CONFIG_NET_IPGRE_BROADCAST=y
CONFIG_IP_MROUTE_COMMON=y
CONFIG_IP_MROUTE=y
CONFIG_IP_MROUTE_MULTIPLE_TABLES=y
CONFIG_IP_PIMSM_V1=y
CONFIG_IP_PIMSM_V2=y
CONFIG_SYN_COOKIES=y
CONFIG_NET_IPVTI=m
CONFIG_NET_UDP_TUNNEL=m
CONFIG_NET_FOU=m
CONFIG_NET_FOU_IP_TUNNELS=y
CONFIG_INET_AH=m
CONFIG_INET_ESP=m
# CONFIG_INET_ESP_OFFLOAD is not set
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_DIAG=m
CONFIG_INET_TCP_DIAG=m
CONFIG_INET_UDP_DIAG=m
# CONFIG_INET_RAW_DIAG is not set
CONFIG_INET_DIAG_DESTROY=y
CONFIG_TCP_CONG_ADVANCED=y
CONFIG_TCP_CONG_BIC=m
CONFIG_TCP_CONG_CUBIC=y
CONFIG_TCP_CONG_WESTWOOD=m
CONFIG_TCP_CONG_HTCP=m
CONFIG_TCP_CONG_HSTCP=m
CONFIG_TCP_CONG_HYBLA=m
CONFIG_TCP_CONG_VEGAS=m
CONFIG_TCP_CONG_NV=m
CONFIG_TCP_CONG_SCALABLE=m
CONFIG_TCP_CONG_LP=m
CONFIG_TCP_CONG_VENO=m
CONFIG_TCP_CONG_YEAH=m
CONFIG_TCP_CONG_ILLINOIS=m
CONFIG_TCP_CONG_DCTCP=m
CONFIG_TCP_CONG_CDG=m
CONFIG_TCP_CONG_BBR=m
CONFIG_DEFAULT_CUBIC=y
# CONFIG_DEFAULT_RENO is not set
CONFIG_DEFAULT_TCP_CONG="cubic"
CONFIG_TCP_MD5SIG=y
CONFIG_IPV6=y
CONFIG_IPV6_ROUTER_PREF=y
CONFIG_IPV6_ROUTE_INFO=y
CONFIG_IPV6_OPTIMISTIC_DAD=y
CONFIG_INET6_AH=m
CONFIG_INET6_ESP=m
# CONFIG_INET6_ESP_OFFLOAD is not set
CONFIG_INET6_IPCOMP=m
CONFIG_IPV6_MIP6=y
CONFIG_IPV6_ILA=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_VTI=m
CONFIG_IPV6_SIT=m
CONFIG_IPV6_SIT_6RD=y
CONFIG_IPV6_NDISC_NODETYPE=y
CONFIG_IPV6_TUNNEL=m
CONFIG_IPV6_GRE=m
CONFIG_IPV6_FOU=m
CONFIG_IPV6_FOU_TUNNEL=m
CONFIG_IPV6_MULTIPLE_TABLES=y
CONFIG_IPV6_SUBTREES=y
CONFIG_IPV6_MROUTE=y
CONFIG_IPV6_MROUTE_MULTIPLE_TABLES=y
CONFIG_IPV6_PIMSM_V2=y
# CONFIG_IPV6_SEG6_LWTUNNEL is not set
# CONFIG_IPV6_SEG6_HMAC is not set
# CONFIG_NETLABEL is not set
CONFIG_NETWORK_SECMARK=y
CONFIG_NET_PTP_CLASSIFY=y
# CONFIG_NETWORK_PHY_TIMESTAMPING is not set
CONFIG_NETFILTER=y
CONFIG_NETFILTER_ADVANCED=y
CONFIG_BRIDGE_NETFILTER=m

#
# Core Netfilter Configuration
#
CONFIG_NETFILTER_INGRESS=y
CONFIG_NETFILTER_NETLINK=m
CONFIG_NETFILTER_FAMILY_BRIDGE=y
CONFIG_NETFILTER_FAMILY_ARP=y
CONFIG_NETFILTER_NETLINK_ACCT=m
CONFIG_NETFILTER_NETLINK_QUEUE=m
CONFIG_NETFILTER_NETLINK_LOG=m
CONFIG_NF_CONNTRACK=m
CONFIG_NF_LOG_COMMON=m
# CONFIG_NF_LOG_NETDEV is not set
CONFIG_NETFILTER_CONNCOUNT=m
CONFIG_NF_CONNTRACK_MARK=y
CONFIG_NF_CONNTRACK_SECMARK=y
CONFIG_NF_CONNTRACK_ZONES=y
CONFIG_NF_CONNTRACK_PROCFS=y
CONFIG_NF_CONNTRACK_EVENTS=y
CONFIG_NF_CONNTRACK_TIMEOUT=y
CONFIG_NF_CONNTRACK_TIMESTAMP=y
CONFIG_NF_CONNTRACK_LABELS=y
CONFIG_NF_CT_PROTO_DCCP=y
CONFIG_NF_CT_PROTO_GRE=m
CONFIG_NF_CT_PROTO_SCTP=y
CONFIG_NF_CT_PROTO_UDPLITE=y
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_NF_CT_NETLINK_TIMEOUT=m
CONFIG_NF_CT_NETLINK_HELPER=m
CONFIG_NETFILTER_NETLINK_GLUE_CT=y
CONFIG_NF_NAT=m
CONFIG_NF_NAT_NEEDED=y
CONFIG_NF_NAT_PROTO_DCCP=y
CONFIG_NF_NAT_PROTO_UDPLITE=y
CONFIG_NF_NAT_PROTO_SCTP=y
CONFIG_NF_NAT_AMANDA=m
CONFIG_NF_NAT_FTP=m
CONFIG_NF_NAT_IRC=m
CONFIG_NF_NAT_SIP=m
CONFIG_NF_NAT_TFTP=m
CONFIG_NF_NAT_REDIRECT=m
CONFIG_NETFILTER_SYNPROXY=m
CONFIG_NF_TABLES=m
# CONFIG_NF_TABLES_INET is not set
# CONFIG_NF_TABLES_NETDEV is not set
CONFIG_NFT_EXTHDR=m
CONFIG_NFT_META=m
# CONFIG_NFT_RT is not set
CONFIG_NFT_NUMGEN=m
CONFIG_NFT_CT=m
CONFIG_NFT_SET_RBTREE=m
CONFIG_NFT_SET_HASH=m
# CONFIG_NFT_SET_BITMAP is not set
CONFIG_NFT_COUNTER=m
CONFIG_NFT_LOG=m
CONFIG_NFT_LIMIT=m
CONFIG_NFT_MASQ=m
CONFIG_NFT_REDIR=m
CONFIG_NFT_NAT=m
# CONFIG_NFT_OBJREF is not set
CONFIG_NFT_QUEUE=m
CONFIG_NFT_QUOTA=m
CONFIG_NFT_REJECT=m
CONFIG_NFT_COMPAT=m
CONFIG_NFT_HASH=m
# CONFIG_NF_FLOW_TABLE is not set
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_CONNSECMARK=m
CONFIG_NETFILTER_XT_TARGET_CT=m
CONFIG_NETFILTER_XT_TARGET_DSCP=m
CONFIG_NETFILTER_XT_TARGET_HL=m
CONFIG_NETFILTER_XT_TARGET_HMARK=m
CONFIG_NETFILTER_XT_TARGET_IDLETIMER=m
CONFIG_NETFILTER_XT_TARGET_LED=m
CONFIG_NETFILTER_XT_TARGET_LOG=m
CONFIG_NETFILTER_XT_TARGET_MARK=m
CONFIG_NETFILTER_XT_NAT=m
CONFIG_NETFILTER_XT_TARGET_NETMAP=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_REDIRECT=m
CONFIG_NETFILTER_XT_TARGET_TEE=m
CONFIG_NETFILTER_XT_TARGET_TPROXY=m
CONFIG_NETFILTER_XT_TARGET_TRACE=m
CONFIG_NETFILTER_XT_TARGET_SECMARK=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_BPF=m
CONFIG_NETFILTER_XT_MATCH_CGROUP=m
CONFIG_NETFILTER_XT_MATCH_CLUSTER=m
CONFIG_NETFILTER_XT_MATCH_COMMENT=m
CONFIG_NETFILTER_XT_MATCH_CONNBYTES=m
CONFIG_NETFILTER_XT_MATCH_CONNLABEL=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_IPCOMP=m
CONFIG_NETFILTER_XT_MATCH_IPRANGE=m
CONFIG_NETFILTER_XT_MATCH_IPVS=m
CONFIG_NETFILTER_XT_MATCH_L2TP=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=m
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_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_IPMARK=m
CONFIG_IP_SET_HASH_IPPORT=m
CONFIG_IP_SET_HASH_IPPORTIP=m
CONFIG_IP_SET_HASH_IPPORTNET=m
# CONFIG_IP_SET_HASH_IPMAC is not set
CONFIG_IP_SET_HASH_MAC=m
CONFIG_IP_SET_HASH_NETPORTNET=m
CONFIG_IP_SET_HASH_NET=m
CONFIG_IP_SET_HASH_NETNET=m
CONFIG_IP_SET_HASH_NETPORT=m
CONFIG_IP_SET_HASH_NETIFACE=m
CONFIG_IP_SET_LIST_SET=m
CONFIG_IP_VS=m
CONFIG_IP_VS_IPV6=y
# 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_FO=m
CONFIG_IP_VS_OVF=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_SOCKET_IPV4 is not set
# CONFIG_NF_TABLES_IPV4 is not set
# CONFIG_NF_TABLES_ARP is not set
CONFIG_NF_DUP_IPV4=m
CONFIG_NF_LOG_ARP=m
CONFIG_NF_LOG_IPV4=m
CONFIG_NF_REJECT_IPV4=m
CONFIG_NF_NAT_IPV4=m
CONFIG_NF_NAT_MASQUERADE_IPV4=m
CONFIG_NF_NAT_SNMP_BASIC=m
CONFIG_NF_NAT_PROTO_GRE=m
CONFIG_NF_NAT_PPTP=m
CONFIG_NF_NAT_H323=m
CONFIG_IP_NF_IPTABLES=m
CONFIG_IP_NF_MATCH_AH=m
CONFIG_IP_NF_MATCH_ECN=m
CONFIG_IP_NF_MATCH_RPFILTER=m
CONFIG_IP_NF_MATCH_TTL=m
CONFIG_IP_NF_FILTER=m
CONFIG_IP_NF_TARGET_REJECT=m
CONFIG_IP_NF_TARGET_SYNPROXY=m
CONFIG_IP_NF_NAT=m
CONFIG_IP_NF_TARGET_MASQUERADE=m
CONFIG_IP_NF_TARGET_NETMAP=m
CONFIG_IP_NF_TARGET_REDIRECT=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_NF_SOCKET_IPV6 is not set
# CONFIG_NF_TABLES_IPV6 is not set
CONFIG_NF_DUP_IPV6=m
CONFIG_NF_REJECT_IPV6=m
CONFIG_NF_LOG_IPV6=m
CONFIG_NF_NAT_IPV6=m
CONFIG_NF_NAT_MASQUERADE_IPV6=m
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=m
CONFIG_IP6_NF_MATCH_RT=m
# CONFIG_IP6_NF_MATCH_SRH is not set
CONFIG_IP6_NF_TARGET_HL=m
CONFIG_IP6_NF_FILTER=m
CONFIG_IP6_NF_TARGET_REJECT=m
CONFIG_IP6_NF_TARGET_SYNPROXY=m
CONFIG_IP6_NF_MANGLE=m
CONFIG_IP6_NF_RAW=m
CONFIG_IP6_NF_SECURITY=m
CONFIG_IP6_NF_NAT=m
CONFIG_IP6_NF_TARGET_MASQUERADE=m
CONFIG_IP6_NF_TARGET_NPT=m

#
# DECnet: Netfilter Configuration
#
CONFIG_DECNET_NF_GRABULATOR=m
# CONFIG_NF_TABLES_BRIDGE 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_NFLOG=m
CONFIG_IP_DCCP=m
CONFIG_INET_DCCP_DIAG=m

#
# DCCP CCIDs Configuration
#
# CONFIG_IP_DCCP_CCID2_DEBUG is not set
CONFIG_IP_DCCP_CCID3=y
# CONFIG_IP_DCCP_CCID3_DEBUG is not set
CONFIG_IP_DCCP_TFRC_LIB=y

#
# DCCP Kernel Hacking
#
# CONFIG_IP_DCCP_DEBUG is not set
CONFIG_IP_SCTP=m
# CONFIG_SCTP_DBG_OBJCNT is not set
CONFIG_SCTP_DEFAULT_COOKIE_HMAC_MD5=y
# CONFIG_SCTP_DEFAULT_COOKIE_HMAC_SHA1 is not set
# CONFIG_SCTP_DEFAULT_COOKIE_HMAC_NONE is not set
CONFIG_SCTP_COOKIE_HMAC_MD5=y
CONFIG_SCTP_COOKIE_HMAC_SHA1=y
CONFIG_INET_SCTP_DIAG=m
CONFIG_RDS=m
CONFIG_RDS_TCP=m
# CONFIG_RDS_DEBUG is not set
CONFIG_TIPC=m
CONFIG_TIPC_MEDIA_UDP=y
CONFIG_TIPC_DIAG=m
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_MRP=m
CONFIG_BRIDGE=m
CONFIG_BRIDGE_IGMP_SNOOPING=y
CONFIG_BRIDGE_VLAN_FILTERING=y
CONFIG_HAVE_NET_DSA=y
# CONFIG_NET_DSA is not set
CONFIG_VLAN_8021Q=m
CONFIG_VLAN_8021Q_GVRP=y
CONFIG_VLAN_8021Q_MVRP=y
CONFIG_DECNET=m
# CONFIG_DECNET_ROUTER is not set
CONFIG_LLC=m
CONFIG_LLC2=m
CONFIG_ATALK=m
CONFIG_DEV_APPLETALK=m
CONFIG_IPDDP=m
CONFIG_IPDDP_ENCAP=y
# CONFIG_X25 is not set
CONFIG_LAPB=m
CONFIG_PHONET=m
CONFIG_6LOWPAN=m
# CONFIG_6LOWPAN_DEBUGFS is not set
CONFIG_6LOWPAN_NHC=m
CONFIG_6LOWPAN_NHC_DEST=m
CONFIG_6LOWPAN_NHC_FRAGMENT=m
CONFIG_6LOWPAN_NHC_HOP=m
CONFIG_6LOWPAN_NHC_IPV6=m
CONFIG_6LOWPAN_NHC_MOBILITY=m
CONFIG_6LOWPAN_NHC_ROUTING=m
CONFIG_6LOWPAN_NHC_UDP=m
# CONFIG_6LOWPAN_GHC_EXT_HDR_HOP is not set
# CONFIG_6LOWPAN_GHC_UDP is not set
# CONFIG_6LOWPAN_GHC_ICMPV6 is not set
# CONFIG_6LOWPAN_GHC_EXT_HDR_DEST is not set
# CONFIG_6LOWPAN_GHC_EXT_HDR_FRAG is not set
# CONFIG_6LOWPAN_GHC_EXT_HDR_ROUTE is not set
CONFIG_IEEE802154=m
# CONFIG_IEEE802154_NL802154_EXPERIMENTAL is not set
CONFIG_IEEE802154_SOCKET=m
CONFIG_IEEE802154_6LOWPAN=m
CONFIG_MAC802154=m
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_CBS is not set
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_CODEL=m
CONFIG_NET_SCH_FQ_CODEL=m
CONFIG_NET_SCH_FQ=m
CONFIG_NET_SCH_HHF=m
CONFIG_NET_SCH_PIE=m
CONFIG_NET_SCH_INGRESS=m
CONFIG_NET_SCH_PLUG=m
# CONFIG_NET_SCH_DEFAULT is not set

#
# 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=y
CONFIG_CLS_U32_MARK=y
CONFIG_NET_CLS_RSVP=m
CONFIG_NET_CLS_RSVP6=m
CONFIG_NET_CLS_FLOW=m
CONFIG_NET_CLS_CGROUP=m
CONFIG_NET_CLS_BPF=m
CONFIG_NET_CLS_FLOWER=m
CONFIG_NET_CLS_MATCHALL=m
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_EMATCH_CANID=m
CONFIG_NET_EMATCH_IPSET=m
# CONFIG_NET_EMATCH_IPT is not set
CONFIG_NET_CLS_ACT=y
CONFIG_NET_ACT_POLICE=m
CONFIG_NET_ACT_GACT=m
CONFIG_GACT_PROB=y
CONFIG_NET_ACT_MIRRED=m
# CONFIG_NET_ACT_SAMPLE is not set
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_ACT_VLAN=m
CONFIG_NET_ACT_BPF=m
CONFIG_NET_ACT_CONNMARK=m
# CONFIG_NET_ACT_SKBMOD is not set
CONFIG_NET_ACT_IFE=m
CONFIG_NET_ACT_TUNNEL_KEY=m
CONFIG_NET_IFE_SKBMARK=m
CONFIG_NET_IFE_SKBPRIO=m
CONFIG_NET_IFE_SKBTCINDEX=m
CONFIG_NET_CLS_IND=y
CONFIG_NET_SCH_FIFO=y
CONFIG_DCB=y
CONFIG_DNS_RESOLVER=m
CONFIG_BATMAN_ADV=m
# CONFIG_BATMAN_ADV_BATMAN_V is not set
CONFIG_BATMAN_ADV_BLA=y
CONFIG_BATMAN_ADV_DAT=y
CONFIG_BATMAN_ADV_NC=y
CONFIG_BATMAN_ADV_MCAST=y
CONFIG_BATMAN_ADV_DEBUGFS=y
# CONFIG_BATMAN_ADV_DEBUG is not set
CONFIG_OPENVSWITCH=m
CONFIG_OPENVSWITCH_GRE=m
CONFIG_OPENVSWITCH_VXLAN=m
CONFIG_OPENVSWITCH_GENEVE=m
CONFIG_VSOCKETS=m
CONFIG_VSOCKETS_DIAG=m
CONFIG_VMWARE_VMCI_VSOCKETS=m
CONFIG_VIRTIO_VSOCKETS=m
CONFIG_VIRTIO_VSOCKETS_COMMON=m
# CONFIG_HYPERV_VSOCKETS is not set
CONFIG_NETLINK_DIAG=m
CONFIG_MPLS=y
CONFIG_NET_MPLS_GSO=y
CONFIG_MPLS_ROUTING=m
CONFIG_MPLS_IPTUNNEL=m
CONFIG_NET_NSH=m
# CONFIG_HSR is not set
# CONFIG_NET_SWITCHDEV is not set
CONFIG_NET_L3_MASTER_DEV=y
# CONFIG_NET_NCSI is not set
CONFIG_RPS=y
CONFIG_RFS_ACCEL=y
CONFIG_XPS=y
CONFIG_CGROUP_NET_PRIO=y
CONFIG_CGROUP_NET_CLASSID=y
CONFIG_NET_RX_BUSY_POLL=y
CONFIG_BQL=y
# CONFIG_BPF_STREAM_PARSER is not set
CONFIG_NET_FLOW_LIMIT=y

#
# Network testing
#
CONFIG_NET_PKTGEN=m
CONFIG_NET_DROP_MONITOR=m
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_BAYCOM_SER_FDX=m
CONFIG_BAYCOM_SER_HDX=m
CONFIG_YAM=m
CONFIG_CAN=m
CONFIG_CAN_RAW=m
CONFIG_CAN_BCM=m
CONFIG_CAN_GW=m

#
# CAN Device Drivers
#
CONFIG_CAN_VCAN=m
# CONFIG_CAN_VXCAN is not set
CONFIG_CAN_SLCAN=m
CONFIG_CAN_DEV=m
CONFIG_CAN_CALC_BITTIMING=y
# CONFIG_CAN_LEDS is not set
# CONFIG_PCH_CAN is not set
# CONFIG_CAN_C_CAN is not set
# CONFIG_CAN_CC770 is not set
# CONFIG_CAN_IFI_CANFD is not set
# CONFIG_CAN_M_CAN is not set
# CONFIG_CAN_PEAK_PCIEFD is not set
CONFIG_CAN_SJA1000=m
CONFIG_CAN_SJA1000_ISA=m
# CONFIG_CAN_SJA1000_PLATFORM is not set
CONFIG_CAN_EMS_PCMCIA=m
CONFIG_CAN_EMS_PCI=m
CONFIG_CAN_PEAK_PCMCIA=m
CONFIG_CAN_PEAK_PCI=m
CONFIG_CAN_PEAK_PCIEC=y
CONFIG_CAN_KVASER_PCI=m
CONFIG_CAN_PLX_PCI=m
CONFIG_CAN_SOFTING=m
CONFIG_CAN_SOFTING_CS=m

#
# CAN SPI interfaces
#
# CONFIG_CAN_HI311X is not set
# CONFIG_CAN_MCP251X is not set

#
# CAN USB interfaces
#
CONFIG_CAN_EMS_USB=m
CONFIG_CAN_ESD_USB2=m
CONFIG_CAN_GS_USB=m
CONFIG_CAN_KVASER_USB=m
CONFIG_CAN_PEAK_USB=m
CONFIG_CAN_8DEV_USB=m
# CONFIG_CAN_MCBA_USB is not set
# CONFIG_CAN_DEBUG_DEVICES is not set
CONFIG_BT=m
CONFIG_BT_BREDR=y
CONFIG_BT_RFCOMM=m
CONFIG_BT_RFCOMM_TTY=y
CONFIG_BT_BNEP=m
CONFIG_BT_BNEP_MC_FILTER=y
CONFIG_BT_BNEP_PROTO_FILTER=y
CONFIG_BT_HIDP=m
CONFIG_BT_HS=y
CONFIG_BT_LE=y
CONFIG_BT_6LOWPAN=m
# CONFIG_BT_LEDS is not set
# CONFIG_BT_SELFTEST is not set
CONFIG_BT_DEBUGFS=y

#
# Bluetooth device drivers
#
CONFIG_BT_INTEL=m
CONFIG_BT_BCM=m
CONFIG_BT_RTL=m
CONFIG_BT_QCA=m
CONFIG_BT_HCIBTUSB=m
# CONFIG_BT_HCIBTUSB_AUTOSUSPEND is not set
CONFIG_BT_HCIBTUSB_BCM=y
CONFIG_BT_HCIBTUSB_RTL=y
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_3WIRE=y
CONFIG_BT_HCIUART_INTEL=y
CONFIG_BT_HCIUART_QCA=y
CONFIG_BT_HCIUART_AG6XX=y
CONFIG_BT_HCIUART_MRVL=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_HCIVHCI=m
CONFIG_BT_MRVL=m
CONFIG_BT_MRVL_SDIO=m
CONFIG_BT_ATH3K=m
CONFIG_AF_RXRPC=m
CONFIG_AF_RXRPC_IPV6=y
# CONFIG_AF_RXRPC_INJECT_LOSS is not set
# CONFIG_AF_RXRPC_DEBUG is not set
CONFIG_RXKAD=y
# CONFIG_AF_KCM is not set
CONFIG_STREAM_PARSER=y
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_CERTIFICATION_ONUS is not set
CONFIG_CFG80211_REQUIRE_SIGNED_REGDB=y
CONFIG_CFG80211_USE_KERNEL_REGDB_KEYS=y
CONFIG_CFG80211_DEFAULT_PS=y
# CONFIG_CFG80211_DEBUGFS is not set
CONFIG_CFG80211_CRDA_SUPPORT=y
CONFIG_CFG80211_WEXT=y
CONFIG_CFG80211_WEXT_EXPORT=y
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_MINSTREL_VHT is not set
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_MESSAGE_TRACING is not set
# CONFIG_MAC80211_DEBUG_MENU is not set
CONFIG_MAC80211_STA_HASH_MAX_SIZE=0
CONFIG_WIMAX=m
CONFIG_WIMAX_DEBUG_LEVEL=8
CONFIG_RFKILL=m
CONFIG_RFKILL_LEDS=y
CONFIG_RFKILL_INPUT=y
# CONFIG_RFKILL_GPIO is not set
CONFIG_NET_9P=m
CONFIG_NET_9P_VIRTIO=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=m
CONFIG_NFC_DIGITAL=m
# CONFIG_NFC_NCI is not set
CONFIG_NFC_HCI=m
# CONFIG_NFC_SHDLC is not set

#
# Near Field Communication (NFC) devices
#
# CONFIG_NFC_TRF7970A is not set
CONFIG_NFC_MEI_PHY=m
CONFIG_NFC_SIM=m
CONFIG_NFC_PORT100=m
CONFIG_NFC_PN544=m
CONFIG_NFC_PN544_MEI=m
CONFIG_NFC_PN533=m
CONFIG_NFC_PN533_USB=m
# CONFIG_NFC_PN533_I2C is not set
# CONFIG_NFC_MICROREAD_MEI is not set
# CONFIG_NFC_ST95HF is not set
# CONFIG_PSAMPLE is not set
CONFIG_NET_IFE=m
CONFIG_LWTUNNEL=y
CONFIG_LWTUNNEL_BPF=y
CONFIG_DST_CACHE=y
CONFIG_GRO_CELLS=y
CONFIG_NET_DEVLINK=m
CONFIG_MAY_USE_DEVLINK=m

#
# Device Drivers
#

#
# Generic Driver Options
#
# CONFIG_UEVENT_HELPER is not set
CONFIG_DEVTMPFS=y
# CONFIG_DEVTMPFS_MOUNT is not set
CONFIG_STANDALONE=y
CONFIG_PREVENT_FIRMWARE_BUILD=y
CONFIG_FW_LOADER=y
CONFIG_EXTRA_FIRMWARE=""
# CONFIG_FW_LOADER_USER_HELPER_FALLBACK is not set
CONFIG_WANT_DEV_COREDUMP=y
CONFIG_ALLOW_DEV_COREDUMP=y
CONFIG_DEV_COREDUMP=y
# CONFIG_DEBUG_DRIVER is not set
# CONFIG_DEBUG_DEVRES is not set
# CONFIG_DEBUG_TEST_DRIVER_REMOVE is not set
# CONFIG_TEST_ASYNC_DRIVER_PROBE is not set
CONFIG_GENERIC_CPU_AUTOPROBE=y
CONFIG_GENERIC_CPU_VULNERABILITIES=y
CONFIG_REGMAP=y
CONFIG_REGMAP_I2C=y
CONFIG_REGMAP_SPI=y
CONFIG_DMA_SHARED_BUFFER=y
# CONFIG_DMA_FENCE_TRACE is not set

#
# Bus devices
#
CONFIG_CONNECTOR=y
CONFIG_PROC_EVENTS=y
CONFIG_MTD=m
# CONFIG_MTD_TESTS is not set
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_CMDLINE_PARTS is not set
CONFIG_MTD_AR7_PARTS=m

#
# Partition parsers
#

#
# User Modules And Translation Layers
#
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 is not set
CONFIG_MTD_OOPS=m
CONFIG_MTD_SWAP=m
# CONFIG_MTD_PARTITIONED_MASTER is not set

#
# RAM/ROM/Flash chip drivers
#
CONFIG_MTD_CFI=m
CONFIG_MTD_JEDECPROBE=m
CONFIG_MTD_GEN_PROBE=m
# CONFIG_MTD_CFI_ADV_OPTIONS is not set
CONFIG_MTD_MAP_BANK_WIDTH_1=y
CONFIG_MTD_MAP_BANK_WIDTH_2=y
CONFIG_MTD_MAP_BANK_WIDTH_4=y
CONFIG_MTD_CFI_I1=y
CONFIG_MTD_CFI_I2=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_SBC_GXX=m
# CONFIG_MTD_AMD76XROM is not set
# CONFIG_MTD_ICHXROM is not set
# CONFIG_MTD_ESB2ROM is not set
# CONFIG_MTD_CK804XROM is not set
# CONFIG_MTD_SCB2_FLASH is not set
CONFIG_MTD_NETtel=m
# CONFIG_MTD_L440GX is not set
CONFIG_MTD_PCI=m
CONFIG_MTD_PCMCIA=m
# CONFIG_MTD_PCMCIA_ANONYMOUS is not set
# CONFIG_MTD_GPIO_ADDR is not set
CONFIG_MTD_INTEL_VR_NOR=m
CONFIG_MTD_PLATRAM=m
# CONFIG_MTD_LATCH_ADDR is not set

#
# Self-contained MTD device drivers
#
# CONFIG_MTD_PMC551 is not set
CONFIG_MTD_DATAFLASH=m
# CONFIG_MTD_DATAFLASH_WRITE_VERIFY is not set
# CONFIG_MTD_DATAFLASH_OTP is not set
CONFIG_MTD_M25P80=m
# CONFIG_MTD_MCHP23K256 is not set
CONFIG_MTD_SST25L=m
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_DOCG3 is not set
CONFIG_MTD_ONENAND=m
CONFIG_MTD_ONENAND_VERIFY_WRITE=y
# CONFIG_MTD_ONENAND_GENERIC is not set
# CONFIG_MTD_ONENAND_OTP is not set
CONFIG_MTD_ONENAND_2X_PROGRAM=y
CONFIG_MTD_NAND_ECC=m
# CONFIG_MTD_NAND_ECC_SMC is not set
CONFIG_MTD_NAND=m
CONFIG_MTD_NAND_BCH=m
CONFIG_MTD_NAND_ECC_BCH=y
CONFIG_MTD_SM_COMMON=m
# CONFIG_MTD_NAND_DENALI_PCI is not set
# CONFIG_MTD_NAND_GPIO is not set
CONFIG_MTD_NAND_RICOH=m
CONFIG_MTD_NAND_DISKONCHIP=m
# CONFIG_MTD_NAND_DISKONCHIP_PROBE_ADVANCED is not set
CONFIG_MTD_NAND_DISKONCHIP_PROBE_ADDRESS=0
# CONFIG_MTD_NAND_DISKONCHIP_BBTWRITE is not set
# CONFIG_MTD_NAND_DOCG4 is not set
CONFIG_MTD_NAND_CAFE=m
# CONFIG_MTD_NAND_CS553X is not set
CONFIG_MTD_NAND_NANDSIM=m
# CONFIG_MTD_NAND_PLATFORM is not set

#
# LPDDR & LPDDR2 PCM memory drivers
#
CONFIG_MTD_LPDDR=m
CONFIG_MTD_QINFO_PROBE=m
CONFIG_MTD_SPI_NOR=m
# CONFIG_MTD_MT81xx_NOR is not set
CONFIG_MTD_SPI_NOR_USE_4K_SECTORS=y
# CONFIG_SPI_INTEL_SPI_PCI is not set
# CONFIG_SPI_INTEL_SPI_PLATFORM is not set
CONFIG_MTD_UBI=m
CONFIG_MTD_UBI_WL_THRESHOLD=4096
CONFIG_MTD_UBI_BEB_LIMIT=20
# CONFIG_MTD_UBI_FASTMAP is not set
# CONFIG_MTD_UBI_GLUEBI is not set
CONFIG_MTD_UBI_BLOCK=y
# CONFIG_OF is not set
CONFIG_ARCH_MIGHT_HAVE_PC_PARPORT=y
# CONFIG_PARPORT is not set
CONFIG_PNP=y
# CONFIG_PNP_DEBUG_MESSAGES is not set

#
# Protocols
#
CONFIG_PNPACPI=y
CONFIG_BLK_DEV=y
# CONFIG_BLK_DEV_NULL_BLK is not set
# CONFIG_BLK_DEV_FD is not set
# CONFIG_BLK_DEV_PCIESSD_MTIP32XX is not set
CONFIG_ZRAM=m
# CONFIG_ZRAM_WRITEBACK is not set
# CONFIG_BLK_DEV_DAC960 is not set
# CONFIG_BLK_DEV_UMEM is not set
CONFIG_BLK_DEV_LOOP=m
CONFIG_BLK_DEV_LOOP_MIN_COUNT=8
# CONFIG_BLK_DEV_CRYPTOLOOP is not set
# CONFIG_BLK_DEV_DRBD is not set
# CONFIG_BLK_DEV_NBD is not set
# CONFIG_BLK_DEV_SX8 is not set
CONFIG_BLK_DEV_RAM=m
CONFIG_BLK_DEV_RAM_COUNT=16
CONFIG_BLK_DEV_RAM_SIZE=16384
# CONFIG_CDROM_PKTCDVD is not set
# CONFIG_ATA_OVER_ETH is not set
# CONFIG_VIRTIO_BLK is not set
# CONFIG_BLK_DEV_RBD is not set
# CONFIG_BLK_DEV_RSXX is not set

#
# NVME Support
#
# CONFIG_BLK_DEV_NVME is not set
# CONFIG_NVME_FC is not set
# CONFIG_NVME_TARGET is not set

#
# Misc devices
#
CONFIG_SENSORS_LIS3LV02D=m
CONFIG_AD525X_DPOT=m
CONFIG_AD525X_DPOT_I2C=m
CONFIG_AD525X_DPOT_SPI=m
# CONFIG_DUMMY_IRQ is not set
CONFIG_IBM_ASM=m
CONFIG_PHANTOM=m
CONFIG_SGI_IOC4=m
CONFIG_TIFM_CORE=m
CONFIG_TIFM_7XX1=m
CONFIG_ICS932S401=m
CONFIG_ENCLOSURE_SERVICES=m
CONFIG_HP_ILO=m
CONFIG_APDS9802ALS=m
CONFIG_ISL29003=m
CONFIG_ISL29020=m
CONFIG_SENSORS_TSL2550=m
CONFIG_SENSORS_BH1770=m
CONFIG_SENSORS_APDS990X=m
CONFIG_HMC6352=m
CONFIG_DS1682=m
CONFIG_VMWARE_BALLOON=m
# CONFIG_PCH_PHUB is not set
# CONFIG_USB_SWITCH_FSA9480 is not set
# CONFIG_LATTICE_ECP3_CONFIG is not set
# CONFIG_SRAM is not set
# CONFIG_PCI_ENDPOINT_TEST is not set
CONFIG_C2PORT=m
CONFIG_C2PORT_DURAMAR_2150=m

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

#
# Texas Instruments shared transport line discipline
#
# CONFIG_TI_ST is not set
CONFIG_SENSORS_LIS3_I2C=m
CONFIG_ALTERA_STAPL=m
CONFIG_INTEL_MEI=m
CONFIG_INTEL_MEI_ME=m
# CONFIG_INTEL_MEI_TXE is not set
CONFIG_VMWARE_VMCI=m

#
# Intel MIC & related support
#

#
# Intel MIC Bus Driver
#

#
# SCIF Bus Driver
#

#
# VOP Bus Driver
#

#
# Intel MIC Host Driver
#

#
# Intel MIC Card Driver
#

#
# SCIF Driver
#

#
# Intel MIC Coprocessor State Management (COSM) Drivers
#

#
# VOP Driver
#
# CONFIG_ECHO is not set
# CONFIG_MISC_RTSX_PCI is not set
# CONFIG_MISC_RTSX_USB is not set
CONFIG_HAVE_IDE=y
# CONFIG_IDE is not set

#
# SCSI device support
#
CONFIG_SCSI_MOD=m
CONFIG_RAID_ATTRS=m
CONFIG_SCSI=m
CONFIG_SCSI_DMA=y
CONFIG_SCSI_NETLINK=y
CONFIG_SCSI_MQ_DEFAULT=y
# CONFIG_SCSI_PROC_FS is not set

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

#
# SCSI Transports
#
CONFIG_SCSI_SPI_ATTRS=m
CONFIG_SCSI_FC_ATTRS=m
CONFIG_SCSI_ISCSI_ATTRS=m
CONFIG_SCSI_SAS_ATTRS=m
CONFIG_SCSI_SAS_LIBSAS=m
CONFIG_SCSI_SAS_ATA=y
CONFIG_SCSI_SAS_HOST_SMP=y
CONFIG_SCSI_SRP_ATTRS=m
# CONFIG_SCSI_LOWLEVEL is not set
# CONFIG_SCSI_LOWLEVEL_PCMCIA is not set
# CONFIG_SCSI_DH is not set
# CONFIG_SCSI_OSD_INITIATOR is not set
CONFIG_ATA=m
CONFIG_ATA_VERBOSE_ERROR=y
CONFIG_ATA_ACPI=y
CONFIG_SATA_ZPODD=y
# CONFIG_SATA_PMP is not set

#
# Controllers with non-SFF native interface
#
CONFIG_SATA_AHCI=m
CONFIG_SATA_MOBILE_LPM_POLICY=0
# CONFIG_SATA_AHCI_PLATFORM is not set
# CONFIG_SATA_INIC162X is not set
# CONFIG_SATA_ACARD_AHCI is not set
# CONFIG_SATA_SIL24 is not set
# CONFIG_ATA_SFF is not set
CONFIG_MD=y
CONFIG_BLK_DEV_MD=m
CONFIG_MD_LINEAR=m
CONFIG_MD_RAID0=m
CONFIG_MD_RAID1=m
CONFIG_MD_RAID10=m
CONFIG_MD_RAID456=m
CONFIG_MD_MULTIPATH=m
CONFIG_MD_FAULTY=m
# CONFIG_MD_CLUSTER is not set
CONFIG_BCACHE=m
# CONFIG_BCACHE_DEBUG is not set
# CONFIG_BCACHE_CLOSURES_DEBUG is not set
CONFIG_BLK_DEV_DM_BUILTIN=y
CONFIG_BLK_DEV_DM=m
# CONFIG_DM_MQ_DEFAULT is not set
# CONFIG_DM_DEBUG is not set
CONFIG_DM_BUFIO=m
# CONFIG_DM_DEBUG_BLOCK_MANAGER_LOCKING is not set
CONFIG_DM_BIO_PRISON=m
CONFIG_DM_PERSISTENT_DATA=m
# CONFIG_DM_UNSTRIPED is not set
CONFIG_DM_CRYPT=m
CONFIG_DM_SNAPSHOT=m
CONFIG_DM_THIN_PROVISIONING=m
CONFIG_DM_CACHE=m
CONFIG_DM_CACHE_SMQ=m
CONFIG_DM_ERA=m
CONFIG_DM_MIRROR=m
CONFIG_DM_LOG_USERSPACE=m
CONFIG_DM_RAID=m
CONFIG_DM_ZERO=m
CONFIG_DM_MULTIPATH=m
CONFIG_DM_MULTIPATH_QL=m
CONFIG_DM_MULTIPATH_ST=m
CONFIG_DM_DELAY=m
CONFIG_DM_UEVENT=y
CONFIG_DM_FLAKEY=m
CONFIG_DM_VERITY=m
# CONFIG_DM_VERITY_FEC is not set
CONFIG_DM_SWITCH=m
CONFIG_DM_LOG_WRITES=m
# CONFIG_DM_INTEGRITY is not set
CONFIG_TARGET_CORE=m
CONFIG_TCM_IBLOCK=m
CONFIG_TCM_FILEIO=m
CONFIG_TCM_PSCSI=m
CONFIG_TCM_USER2=m
CONFIG_LOOPBACK_TARGET=m
CONFIG_ISCSI_TARGET=m
CONFIG_SBP_TARGET=m
# CONFIG_FUSION is not set

#
# IEEE 1394 (FireWire) support
#
CONFIG_FIREWIRE=m
CONFIG_FIREWIRE_OHCI=m
# CONFIG_FIREWIRE_SBP2 is not set
# CONFIG_FIREWIRE_NET is not set
# CONFIG_FIREWIRE_NOSY is not set
# CONFIG_MACINTOSH_DRIVERS is not set
CONFIG_NETDEVICES=y
CONFIG_MII=y
CONFIG_NET_CORE=y
CONFIG_BONDING=m
CONFIG_DUMMY=m
CONFIG_EQUALIZER=m
CONFIG_NET_FC=y
CONFIG_IFB=m
CONFIG_NET_TEAM=m
CONFIG_NET_TEAM_MODE_BROADCAST=m
CONFIG_NET_TEAM_MODE_ROUNDROBIN=m
CONFIG_NET_TEAM_MODE_RANDOM=m
CONFIG_NET_TEAM_MODE_ACTIVEBACKUP=m
CONFIG_NET_TEAM_MODE_LOADBALANCE=m
CONFIG_MACVLAN=m
CONFIG_MACVTAP=m
CONFIG_IPVLAN=m
# CONFIG_IPVTAP is not set
CONFIG_VXLAN=m
CONFIG_GENEVE=m
CONFIG_GTP=m
CONFIG_MACSEC=m
CONFIG_NETCONSOLE=m
CONFIG_NETCONSOLE_DYNAMIC=y
CONFIG_NETPOLL=y
CONFIG_NET_POLL_CONTROLLER=y
CONFIG_TUN=m
CONFIG_TAP=m
# CONFIG_TUN_VNET_CROSS_LE is not set
CONFIG_VETH=m
CONFIG_VIRTIO_NET=m
CONFIG_NLMON=m
CONFIG_NET_VRF=m
# CONFIG_VSOCKMON is not set
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_PCI=m
CONFIG_ARCNET_COM20020_CS=m
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=y
CONFIG_ATM_NICSTAR_USE_IDT77105=y
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=y
CONFIG_ATM_SOLOS=m

#
# CAIF transport drivers
#

#
# Distributed Switch Architecture drivers
#
CONFIG_ETHERNET=y
CONFIG_MDIO=m
# CONFIG_NET_VENDOR_3COM is not set
# CONFIG_NET_VENDOR_ADAPTEC is not set
# CONFIG_NET_VENDOR_AGERE is not set
# CONFIG_NET_VENDOR_ALACRITECH is not set
# CONFIG_NET_VENDOR_ALTEON is not set
# CONFIG_ALTERA_TSE is not set
# CONFIG_NET_VENDOR_AMAZON is not set
# CONFIG_NET_VENDOR_AMD is not set
# CONFIG_NET_VENDOR_AQUANTIA is not set
# CONFIG_NET_VENDOR_ARC is not set
# CONFIG_NET_VENDOR_ATHEROS is not set
# CONFIG_NET_VENDOR_AURORA is not set
# CONFIG_NET_CADENCE is not set
# CONFIG_NET_VENDOR_BROADCOM is not set
# CONFIG_NET_VENDOR_BROCADE is not set
# CONFIG_NET_VENDOR_CAVIUM is not set
# CONFIG_NET_VENDOR_CHELSIO is not set
# CONFIG_NET_VENDOR_CISCO is not set
# CONFIG_NET_VENDOR_CORTINA is not set
# CONFIG_CX_ECAT is not set
# CONFIG_DNET is not set
# CONFIG_NET_VENDOR_DEC is not set
# CONFIG_NET_VENDOR_DLINK is not set
# CONFIG_NET_VENDOR_EMULEX is not set
# CONFIG_NET_VENDOR_EZCHIP is not set
# CONFIG_NET_VENDOR_EXAR is not set
# CONFIG_NET_VENDOR_FUJITSU is not set
# CONFIG_NET_VENDOR_HP is not set
# CONFIG_NET_VENDOR_HUAWEI is not set
CONFIG_NET_VENDOR_INTEL=y
CONFIG_E100=m
CONFIG_E1000=m
CONFIG_E1000E=m
CONFIG_E1000E_HWTS=y
CONFIG_IGB=m
CONFIG_IGB_HWMON=y
CONFIG_IGBVF=m
CONFIG_IXGB=m
CONFIG_IXGBE=m
CONFIG_IXGBE_HWMON=y
CONFIG_IXGBE_DCB=y
CONFIG_IXGBEVF=m
CONFIG_I40E=m
CONFIG_I40E_DCB=y
CONFIG_I40EVF=m
# CONFIG_ICE is not set
# CONFIG_FM10K is not set
CONFIG_NET_VENDOR_I825XX=y
# CONFIG_JME is not set
# CONFIG_NET_VENDOR_MARVELL is not set
# CONFIG_NET_VENDOR_MELLANOX is not set
# CONFIG_NET_VENDOR_MICREL is not set
# CONFIG_NET_VENDOR_MICROCHIP is not set
# CONFIG_NET_VENDOR_MYRI is not set
CONFIG_FEALNX=y
# CONFIG_NET_VENDOR_NATSEMI is not set
# CONFIG_NET_VENDOR_NETRONOME is not set
# CONFIG_NET_VENDOR_NI is not set
# CONFIG_NET_VENDOR_NVIDIA is not set
# CONFIG_NET_VENDOR_OKI is not set
# CONFIG_ETHOC is not set
# CONFIG_NET_PACKET_ENGINE is not set
# CONFIG_NET_VENDOR_QLOGIC is not set
# CONFIG_NET_VENDOR_QUALCOMM is not set
CONFIG_NET_VENDOR_REALTEK=y
CONFIG_8139CP=m
CONFIG_8139TOO=m
# CONFIG_8139TOO_PIO is not set
# CONFIG_8139TOO_TUNE_TWISTER is not set
# CONFIG_8139TOO_8129 is not set
# CONFIG_8139_OLD_RX_RESET is not set
CONFIG_R8169=m
# CONFIG_NET_VENDOR_RENESAS is not set
# CONFIG_NET_VENDOR_RDC is not set
# CONFIG_NET_VENDOR_ROCKER is not set
# CONFIG_NET_VENDOR_SAMSUNG is not set
# CONFIG_NET_VENDOR_SEEQ is not set
# CONFIG_NET_VENDOR_SILAN is not set
# CONFIG_NET_VENDOR_SIS is not set
# CONFIG_NET_VENDOR_SOLARFLARE is not set
# CONFIG_NET_VENDOR_SMSC is not set
# CONFIG_NET_VENDOR_SOCIONEXT is not set
# CONFIG_NET_VENDOR_STMICRO is not set
# CONFIG_NET_VENDOR_SUN is not set
# CONFIG_NET_VENDOR_TEHUTI is not set
# CONFIG_NET_VENDOR_TI is not set
# CONFIG_NET_VENDOR_VIA is not set
# CONFIG_NET_VENDOR_WIZNET is not set
# CONFIG_NET_VENDOR_XIRCOM is not set
# CONFIG_NET_VENDOR_SYNOPSYS is not set
# CONFIG_FDDI is not set
# CONFIG_HIPPI is not set
# CONFIG_NET_SB1000 is not set
CONFIG_MDIO_DEVICE=m
CONFIG_MDIO_BUS=m
# CONFIG_MDIO_BITBANG is not set
CONFIG_PHYLIB=m
# CONFIG_LED_TRIGGER_PHY is not set

#
# MII PHY device drivers
#
CONFIG_AMD_PHY=m
CONFIG_AQUANTIA_PHY=m
CONFIG_AT803X_PHY=m
# CONFIG_BCM7XXX_PHY is not set
CONFIG_BCM87XX_PHY=m
CONFIG_BCM_NET_PHYLIB=m
CONFIG_BROADCOM_PHY=m
CONFIG_CICADA_PHY=m
# CONFIG_CORTINA_PHY is not set
CONFIG_DAVICOM_PHY=m
# CONFIG_DP83822_PHY is not set
CONFIG_DP83848_PHY=m
CONFIG_DP83867_PHY=m
# CONFIG_FIXED_PHY is not set
CONFIG_ICPLUS_PHY=m
# CONFIG_INTEL_XWAY_PHY is not set
CONFIG_LSI_ET1011C_PHY=m
CONFIG_LXT_PHY=m
CONFIG_MARVELL_PHY=m
# CONFIG_MARVELL_10G_PHY is not set
CONFIG_MICREL_PHY=m
CONFIG_MICROCHIP_PHY=m
# CONFIG_MICROSEMI_PHY is not set
CONFIG_NATIONAL_PHY=m
CONFIG_QSEMI_PHY=m
CONFIG_REALTEK_PHY=m
# CONFIG_RENESAS_PHY is not set
# CONFIG_ROCKCHIP_PHY is not set
CONFIG_SMSC_PHY=m
CONFIG_STE10XP=m
CONFIG_TERANETICS_PHY=m
CONFIG_VITESSE_PHY=m
# CONFIG_XILINX_GMII2RGMII is not set
# CONFIG_MICREL_KS8995MA is not set
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

#
# Host-side USB support is needed for USB Network Adapter support
#
CONFIG_USB_NET_DRIVERS=m
CONFIG_USB_CATC=m
CONFIG_USB_KAWETH=m
CONFIG_USB_PEGASUS=m
CONFIG_USB_RTL8150=m
CONFIG_USB_RTL8152=m
CONFIG_USB_LAN78XX=m
CONFIG_USB_USBNET=m
CONFIG_USB_NET_AX8817X=m
CONFIG_USB_NET_AX88179_178A=m
CONFIG_USB_NET_CDCETHER=m
CONFIG_USB_NET_CDC_EEM=m
CONFIG_USB_NET_CDC_NCM=m
CONFIG_USB_NET_HUAWEI_CDC_NCM=m
CONFIG_USB_NET_CDC_MBIM=m
CONFIG_USB_NET_DM9601=m
CONFIG_USB_NET_SR9700=m
CONFIG_USB_NET_SR9800=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_ENABLE=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=y
CONFIG_USB_KC2190=y
CONFIG_USB_NET_ZAURUS=m
CONFIG_USB_NET_CX82310_ETH=m
CONFIG_USB_NET_KALMIA=m
CONFIG_USB_NET_QMI_WWAN=m
CONFIG_USB_HSO=m
CONFIG_USB_NET_INT51X1=m
CONFIG_USB_CDC_PHONET=m
CONFIG_USB_IPHETH=m
CONFIG_USB_SIERRA_NET=m
CONFIG_USB_VL600=m
CONFIG_USB_NET_CH9200=m
CONFIG_WLAN=y
# CONFIG_WIRELESS_WDS is not set
CONFIG_WLAN_VENDOR_ADMTEK=y
CONFIG_ADM8211=m
CONFIG_ATH_COMMON=m
CONFIG_WLAN_VENDOR_ATH=y
# CONFIG_ATH_DEBUG is not set
CONFIG_ATH5K=m
# CONFIG_ATH5K_DEBUG is not set
# CONFIG_ATH5K_TRACER is not set
CONFIG_ATH5K_PCI=y
CONFIG_ATH9K_HW=m
CONFIG_ATH9K_COMMON=m
CONFIG_ATH9K_BTCOEX_SUPPORT=y
CONFIG_ATH9K=m
CONFIG_ATH9K_PCI=y
# CONFIG_ATH9K_AHB is not set
# CONFIG_ATH9K_DEBUGFS is not set
# CONFIG_ATH9K_DYNACK is not set
# CONFIG_ATH9K_WOW is not set
CONFIG_ATH9K_RFKILL=y
# CONFIG_ATH9K_CHANNEL_CONTEXT is not set
CONFIG_ATH9K_PCOEM=y
CONFIG_ATH9K_HTC=m
# CONFIG_ATH9K_HTC_DEBUGFS is not set
# CONFIG_ATH9K_HWRNG is not set
CONFIG_CARL9170=m
CONFIG_CARL9170_LEDS=y
CONFIG_CARL9170_WPC=y
# CONFIG_CARL9170_HWRNG is not set
CONFIG_ATH6KL=m
CONFIG_ATH6KL_SDIO=m
CONFIG_ATH6KL_USB=m
# CONFIG_ATH6KL_DEBUG is not set
# CONFIG_ATH6KL_TRACING is not set
CONFIG_AR5523=m
CONFIG_WIL6210=m
CONFIG_WIL6210_ISR_COR=y
CONFIG_WIL6210_TRACING=y
CONFIG_WIL6210_DEBUGFS=y
CONFIG_ATH10K=m
CONFIG_ATH10K_PCI=m
CONFIG_ATH10K_SDIO=m
CONFIG_ATH10K_USB=m
# CONFIG_ATH10K_DEBUG is not set
# CONFIG_ATH10K_DEBUGFS is not set
# CONFIG_ATH10K_TRACING is not set
# CONFIG_WCN36XX is not set
CONFIG_WLAN_VENDOR_ATMEL=y
CONFIG_ATMEL=m
CONFIG_PCI_ATMEL=m
CONFIG_PCMCIA_ATMEL=m
CONFIG_AT76C50X_USB=m
CONFIG_WLAN_VENDOR_BROADCOM=y
CONFIG_B43=m
CONFIG_B43_BCMA=y
CONFIG_B43_SSB=y
CONFIG_B43_BUSES_BCMA_AND_SSB=y
# CONFIG_B43_BUSES_BCMA is not set
# CONFIG_B43_BUSES_SSB is not set
CONFIG_B43_PCI_AUTOSELECT=y
CONFIG_B43_SDIO=y
CONFIG_B43_BCMA_PIO=y
CONFIG_B43_PIO=y
CONFIG_B43_PHY_G=y
CONFIG_B43_PHY_N=y
CONFIG_B43_PHY_LP=y
CONFIG_B43_PHY_HT=y
CONFIG_B43_LEDS=y
CONFIG_B43_HWRNG=y
# CONFIG_B43_DEBUG is not set
CONFIG_B43LEGACY=m
CONFIG_B43LEGACY_PCI_AUTOSELECT=y
CONFIG_B43LEGACY_LEDS=y
CONFIG_B43LEGACY_HWRNG=y
CONFIG_B43LEGACY_DEBUG=y
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_BRCMSMAC=m
CONFIG_BRCMFMAC=m
CONFIG_BRCMFMAC_PROTO_BCDC=y
CONFIG_BRCMFMAC_PROTO_MSGBUF=y
CONFIG_BRCMFMAC_SDIO=y
CONFIG_BRCMFMAC_USB=y
CONFIG_BRCMFMAC_PCIE=y
# CONFIG_BRCM_TRACING is not set
# CONFIG_BRCMDBG is not set
CONFIG_WLAN_VENDOR_CISCO=y
CONFIG_AIRO=m
CONFIG_AIRO_CS=m
CONFIG_WLAN_VENDOR_INTEL=y
# CONFIG_IPW2100 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_IWLEGACY=m
CONFIG_IWL4965=m
CONFIG_IWL3945=m

#
# iwl3945 / iwl4965 Debugging Options
#
# CONFIG_IWLEGACY_DEBUG is not set
CONFIG_IWLWIFI=m
CONFIG_IWLWIFI_LEDS=y
CONFIG_IWLDVM=m
CONFIG_IWLMVM=m
CONFIG_IWLWIFI_OPMODE_MODULAR=y
# CONFIG_IWLWIFI_BCAST_FILTERING is not set
# CONFIG_IWLWIFI_PCIE_RTPM is not set

#
# Debugging Options
#
# CONFIG_IWLWIFI_DEBUG is not set
# CONFIG_IWLWIFI_DEVICE_TRACING is not set
CONFIG_WLAN_VENDOR_INTERSIL=y
CONFIG_HOSTAP=m
CONFIG_HOSTAP_FIRMWARE=y
# CONFIG_HOSTAP_FIRMWARE_NVRAM is not set
CONFIG_HOSTAP_PLX=m
CONFIG_HOSTAP_PCI=m
CONFIG_HOSTAP_CS=m
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_SPI is not set
CONFIG_P54_LEDS=y
# CONFIG_PRISM54 is not set
CONFIG_WLAN_VENDOR_MARVELL=y
CONFIG_LIBERTAS=m
CONFIG_LIBERTAS_USB=m
CONFIG_LIBERTAS_CS=m
CONFIG_LIBERTAS_SDIO=m
# CONFIG_LIBERTAS_SPI is not set
# CONFIG_LIBERTAS_DEBUG is not set
CONFIG_LIBERTAS_MESH=y
CONFIG_LIBERTAS_THINFIRM=m
# CONFIG_LIBERTAS_THINFIRM_DEBUG is not set
CONFIG_LIBERTAS_THINFIRM_USB=m
CONFIG_MWIFIEX=m
CONFIG_MWIFIEX_SDIO=m
CONFIG_MWIFIEX_PCIE=m
CONFIG_MWIFIEX_USB=m
CONFIG_MWL8K=m
CONFIG_WLAN_VENDOR_MEDIATEK=y
CONFIG_MT7601U=m
# CONFIG_MT76x2E is not set
CONFIG_WLAN_VENDOR_RALINK=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_RT2800PCI_RT3290=y
CONFIG_RT2500USB=m
CONFIG_RT73USB=m
CONFIG_RT2800USB=m
CONFIG_RT2800USB_RT33XX=y
CONFIG_RT2800USB_RT35XX=y
CONFIG_RT2800USB_RT3573=y
CONFIG_RT2800USB_RT53XX=y
CONFIG_RT2800USB_RT55XX=y
# CONFIG_RT2800USB_UNKNOWN is not set
CONFIG_RT2800_LIB=m
CONFIG_RT2800_LIB_MMIO=m
CONFIG_RT2X00_LIB_MMIO=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_WLAN_VENDOR_REALTEK=y
CONFIG_RTL8180=m
CONFIG_RTL8187=m
CONFIG_RTL8187_LEDS=y
CONFIG_RTL_CARDS=m
CONFIG_RTL8192CE=m
CONFIG_RTL8192SE=m
CONFIG_RTL8192DE=m
CONFIG_RTL8723AE=m
CONFIG_RTL8723BE=m
CONFIG_RTL8188EE=m
CONFIG_RTL8192EE=m
CONFIG_RTL8821AE=m
CONFIG_RTL8192CU=m
CONFIG_RTLWIFI=m
CONFIG_RTLWIFI_PCI=m
CONFIG_RTLWIFI_USB=m
# CONFIG_RTLWIFI_DEBUG is not set
CONFIG_RTL8192C_COMMON=m
CONFIG_RTL8723_COMMON=m
CONFIG_RTLBTCOEXIST=m
CONFIG_RTL8XXXU=m
# CONFIG_RTL8XXXU_UNTESTED is not set
CONFIG_WLAN_VENDOR_RSI=y
CONFIG_RSI_91X=m
CONFIG_RSI_DEBUGFS=y
# CONFIG_RSI_SDIO is not set
CONFIG_RSI_USB=m
# CONFIG_RSI_COEX is not set
CONFIG_WLAN_VENDOR_ST=y
# CONFIG_CW1200 is not set
# CONFIG_WLAN_VENDOR_TI is not set
CONFIG_WLAN_VENDOR_ZYDAS=y
CONFIG_USB_ZD1201=m
CONFIG_ZD1211RW=m
# CONFIG_ZD1211RW_DEBUG is not set
CONFIG_WLAN_VENDOR_QUANTENNA=y
# CONFIG_QTNFMAC_PEARL_PCIE is not set
CONFIG_PCMCIA_RAYCS=m
CONFIG_PCMCIA_WL3501=m
CONFIG_MAC80211_HWSIM=m
CONFIG_USB_NET_RNDIS_WLAN=m

#
# WiMAX Wireless Broadband devices
#
CONFIG_WIMAX_I2400M=m
CONFIG_WIMAX_I2400M_USB=m
CONFIG_WIMAX_I2400M_DEBUG_LEVEL=8
# CONFIG_WAN is not set
CONFIG_IEEE802154_DRIVERS=m
CONFIG_IEEE802154_FAKELB=m
CONFIG_IEEE802154_AT86RF230=m
# CONFIG_IEEE802154_AT86RF230_DEBUGFS is not set
CONFIG_IEEE802154_MRF24J40=m
CONFIG_IEEE802154_CC2520=m
CONFIG_IEEE802154_ATUSB=m
CONFIG_IEEE802154_ADF7242=m
# CONFIG_IEEE802154_CA8210 is not set
# CONFIG_IEEE802154_MCR20A is not set
CONFIG_VMXNET3=m
# CONFIG_FUJITSU_ES is not set
# CONFIG_HYPERV_NET is not set
# CONFIG_NETDEVSIM is not set
# CONFIG_ISDN is not set
# CONFIG_NVM is not set

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

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

#
# Input Device Drivers
#
CONFIG_INPUT_KEYBOARD=y
# CONFIG_KEYBOARD_ADP5588 is not set
# CONFIG_KEYBOARD_ADP5589 is not set
CONFIG_KEYBOARD_ATKBD=y
# CONFIG_KEYBOARD_QT1070 is not set
# CONFIG_KEYBOARD_QT2160 is not set
# CONFIG_KEYBOARD_DLINK_DIR685 is not set
# CONFIG_KEYBOARD_LKKBD is not set
CONFIG_KEYBOARD_GPIO=m
# CONFIG_KEYBOARD_GPIO_POLLED is not set
# CONFIG_KEYBOARD_TCA6416 is not set
# CONFIG_KEYBOARD_TCA8418 is not set
# CONFIG_KEYBOARD_MATRIX is not set
# CONFIG_KEYBOARD_LM8323 is not set
# CONFIG_KEYBOARD_LM8333 is not set
# CONFIG_KEYBOARD_MAX7359 is not set
# CONFIG_KEYBOARD_MCS is not set
# CONFIG_KEYBOARD_MPR121 is not set
# CONFIG_KEYBOARD_NEWTON is not set
# CONFIG_KEYBOARD_OPENCORES is not set
# CONFIG_KEYBOARD_SAMSUNG is not set
# CONFIG_KEYBOARD_STOWAWAY is not set
# CONFIG_KEYBOARD_SUNKBD is not set
# CONFIG_KEYBOARD_TM2_TOUCHKEY 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_BYD is not set
CONFIG_MOUSE_PS2_LOGIPS2PP=y
CONFIG_MOUSE_PS2_SYNAPTICS=y
CONFIG_MOUSE_PS2_SYNAPTICS_SMBUS=y
# CONFIG_MOUSE_PS2_CYPRESS is not set
# CONFIG_MOUSE_PS2_LIFEBOOK is not set
CONFIG_MOUSE_PS2_TRACKPOINT=y
CONFIG_MOUSE_PS2_ELANTECH=y
# CONFIG_MOUSE_PS2_SENTELIC is not set
# CONFIG_MOUSE_PS2_TOUCHKIT is not set
# CONFIG_MOUSE_PS2_FOCALTECH is not set
# CONFIG_MOUSE_PS2_VMMOUSE is not set
CONFIG_MOUSE_PS2_SMBUS=y
# CONFIG_MOUSE_SERIAL is not set
# CONFIG_MOUSE_APPLETOUCH is not set
# CONFIG_MOUSE_BCM5974 is not set
# CONFIG_MOUSE_CYAPA is not set
# CONFIG_MOUSE_ELAN_I2C is not set
# CONFIG_MOUSE_VSXXXAA is not set
# CONFIG_MOUSE_GPIO is not set
# CONFIG_MOUSE_SYNAPTICS_I2C is not set
# CONFIG_MOUSE_SYNAPTICS_USB is not set
# CONFIG_INPUT_JOYSTICK is not set
# CONFIG_INPUT_TABLET is not set
# CONFIG_INPUT_TOUCHSCREEN is not set
CONFIG_INPUT_MISC=y
# CONFIG_INPUT_AD714X is not set
# CONFIG_INPUT_BMA150 is not set
# CONFIG_INPUT_E3X0_BUTTON is not set
CONFIG_INPUT_PCSPKR=m
# CONFIG_INPUT_MMA8450 is not set
# CONFIG_INPUT_APANEL is not set
# CONFIG_INPUT_GP2A is not set
# CONFIG_INPUT_GPIO_BEEPER is not set
# CONFIG_INPUT_GPIO_DECODER is not set
# CONFIG_INPUT_WISTRON_BTNS is not set
# CONFIG_INPUT_ATLAS_BTNS is not set
# CONFIG_INPUT_ATI_REMOTE2 is not set
# CONFIG_INPUT_KEYSPAN_REMOTE is not set
# CONFIG_INPUT_KXTJ9 is not set
# CONFIG_INPUT_POWERMATE is not set
# CONFIG_INPUT_YEALINK is not set
# CONFIG_INPUT_CM109 is not set
CONFIG_INPUT_UINPUT=m
# CONFIG_INPUT_PCF8574 is not set
# CONFIG_INPUT_GPIO_ROTARY_ENCODER is not set
# CONFIG_INPUT_ADXL34X is not set
# CONFIG_INPUT_IMS_PCU is not set
# CONFIG_INPUT_CMA3000 is not set
# CONFIG_INPUT_IDEAPAD_SLIDEBAR is not set
# CONFIG_INPUT_SOC_BUTTON_ARRAY is not set
# CONFIG_INPUT_DRV260X_HAPTICS is not set
# CONFIG_INPUT_DRV2665_HAPTICS is not set
# CONFIG_INPUT_DRV2667_HAPTICS is not set
CONFIG_RMI4_CORE=m
# CONFIG_RMI4_I2C is not set
# CONFIG_RMI4_SPI is not set
# CONFIG_RMI4_SMB is not set
CONFIG_RMI4_F03=y
CONFIG_RMI4_F03_SERIO=m
CONFIG_RMI4_2D_SENSOR=y
CONFIG_RMI4_F11=y
CONFIG_RMI4_F12=y
CONFIG_RMI4_F30=y
# CONFIG_RMI4_F34 is not set
# CONFIG_RMI4_F54 is not set
# CONFIG_RMI4_F55 is not set

#
# Hardware I/O ports
#
CONFIG_SERIO=y
CONFIG_ARCH_MIGHT_HAVE_PC_SERIO=y
CONFIG_SERIO_I8042=y
CONFIG_SERIO_SERPORT=m
CONFIG_SERIO_CT82C710=m
CONFIG_SERIO_PCIPS2=m
CONFIG_SERIO_LIBPS2=y
CONFIG_SERIO_RAW=m
CONFIG_SERIO_ALTERA_PS2=m
# CONFIG_SERIO_PS2MULT is not set
# CONFIG_SERIO_ARC_PS2 is not set
CONFIG_HYPERV_KEYBOARD=m
# CONFIG_SERIO_GPIO_PS2 is not set
# CONFIG_USERIO is not set
CONFIG_GAMEPORT=m
CONFIG_GAMEPORT_NS558=m
CONFIG_GAMEPORT_L4=m
CONFIG_GAMEPORT_EMU10K1=m
CONFIG_GAMEPORT_FM801=m

#
# Character devices
#
CONFIG_TTY=y
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_LEGACY_PTYS is not set
# CONFIG_SERIAL_NONSTANDARD is not set
# CONFIG_NOZOMI is not set
# CONFIG_N_GSM is not set
# CONFIG_TRACE_SINK is not set
CONFIG_DEVMEM=y
# CONFIG_DEVKMEM is not set

#
# Serial drivers
#
CONFIG_SERIAL_EARLYCON=y
CONFIG_SERIAL_8250=y
# CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set
CONFIG_SERIAL_8250_PNP=y
CONFIG_SERIAL_8250_FINTEK=y
CONFIG_SERIAL_8250_CONSOLE=y
CONFIG_SERIAL_8250_DMA=y
CONFIG_SERIAL_8250_PCI=y
CONFIG_SERIAL_8250_EXAR=y
CONFIG_SERIAL_8250_CS=m
CONFIG_SERIAL_8250_NR_UARTS=32
CONFIG_SERIAL_8250_RUNTIME_UARTS=4
CONFIG_SERIAL_8250_EXTENDED=y
CONFIG_SERIAL_8250_MANY_PORTS=y
CONFIG_SERIAL_8250_SHARE_IRQ=y
# CONFIG_SERIAL_8250_DETECT_IRQ is not set
CONFIG_SERIAL_8250_RSA=y
CONFIG_SERIAL_8250_DW=y
# CONFIG_SERIAL_8250_RT288X is not set
# CONFIG_SERIAL_8250_LPSS is not set
# CONFIG_SERIAL_8250_MID is not set
# CONFIG_SERIAL_8250_MOXA is not set

#
# Non-8250 serial port support
#
# CONFIG_SERIAL_MAX3100 is not set
# CONFIG_SERIAL_MAX310X is not set
# CONFIG_SERIAL_UARTLITE is not set
CONFIG_SERIAL_CORE=y
CONFIG_SERIAL_CORE_CONSOLE=y
CONFIG_SERIAL_JSM=m
# CONFIG_SERIAL_SCCNXP is not set
# CONFIG_SERIAL_SC16IS7XX is not set
# CONFIG_SERIAL_TIMBERDALE is not set
# CONFIG_SERIAL_ALTERA_JTAGUART is not set
# CONFIG_SERIAL_ALTERA_UART is not set
# CONFIG_SERIAL_IFX6X60 is not set
# CONFIG_SERIAL_PCH_UART is not set
# CONFIG_SERIAL_ARC is not set
CONFIG_SERIAL_RP2=m
CONFIG_SERIAL_RP2_NR_UARTS=32
# CONFIG_SERIAL_FSL_LPUART is not set
# CONFIG_SERIAL_DEV_BUS is not set
CONFIG_TTY_PRINTK=m
# CONFIG_VIRTIO_CONSOLE is not set
# CONFIG_IPMI_HANDLER is not set
CONFIG_HW_RANDOM=m
# CONFIG_HW_RANDOM_TIMERIOMEM is not set
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_R3964 is not set
# CONFIG_APPLICOM is not set
# CONFIG_SONYPI is not set

#
# PCMCIA character devices
#
CONFIG_SYNCLINK_CS=m
CONFIG_CARDMAN_4000=m
CONFIG_CARDMAN_4040=m
# CONFIG_SCR24X is not set
CONFIG_IPWIRELESS=m
# CONFIG_MWAVE is not set
# CONFIG_PC8736x_GPIO is not set
# CONFIG_NSC_GPIO is not set
CONFIG_RAW_DRIVER=m
CONFIG_MAX_RAW_DEVS=256
CONFIG_HPET=y
CONFIG_HPET_MMAP=y
CONFIG_HPET_MMAP_DEFAULT=y
CONFIG_HANGCHECK_TIMER=m
CONFIG_TCG_TPM=m
CONFIG_HW_RANDOM_TPM=y
CONFIG_TCG_TIS_CORE=m
CONFIG_TCG_TIS=m
# CONFIG_TCG_TIS_SPI is not set
CONFIG_TCG_TIS_I2C_ATMEL=m
CONFIG_TCG_TIS_I2C_INFINEON=m
CONFIG_TCG_TIS_I2C_NUVOTON=m
CONFIG_TCG_NSC=m
CONFIG_TCG_ATMEL=m
CONFIG_TCG_INFINEON=m
CONFIG_TCG_CRB=m
# CONFIG_TCG_VTPM_PROXY is not set
CONFIG_TCG_TIS_ST33ZP24=m
CONFIG_TCG_TIS_ST33ZP24_I2C=m
# CONFIG_TCG_TIS_ST33ZP24_SPI is not set
# CONFIG_TELCLOCK is not set
CONFIG_DEVPORT=y
# CONFIG_XILLYBUS is not set

#
# I2C support
#
CONFIG_I2C=y
CONFIG_ACPI_I2C_OPREGION=y
CONFIG_I2C_BOARDINFO=y
CONFIG_I2C_COMPAT=y
CONFIG_I2C_CHARDEV=m
CONFIG_I2C_MUX=m

#
# Multiplexer I2C Chip support
#
# CONFIG_I2C_MUX_GPIO is not set
# CONFIG_I2C_MUX_LTC4306 is not set
# CONFIG_I2C_MUX_PCA9541 is not set
# CONFIG_I2C_MUX_PCA954x is not set
# CONFIG_I2C_MUX_REG is not set
# CONFIG_I2C_MUX_MLXCPLD is not set
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_ISMT=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_CBUS_GPIO is not set
CONFIG_I2C_DESIGNWARE_CORE=m
CONFIG_I2C_DESIGNWARE_PLATFORM=m
# CONFIG_I2C_DESIGNWARE_SLAVE is not set
CONFIG_I2C_DESIGNWARE_PCI=m
# CONFIG_I2C_DESIGNWARE_BAYTRAIL is not set
# CONFIG_I2C_EG20T is not set
# CONFIG_I2C_EMEV2 is not set
# CONFIG_I2C_GPIO is not set
CONFIG_I2C_KEMPLD=m
CONFIG_I2C_OCORES=m
CONFIG_I2C_PCA_PLATFORM=m
CONFIG_I2C_SIMTEC=m
# CONFIG_I2C_XILINX is not set

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

#
# Other I2C/SMBus bus drivers
#
# CONFIG_SCx200_ACB is not set
CONFIG_I2C_STUB=m
# CONFIG_I2C_SLAVE is not set
# CONFIG_I2C_DEBUG_CORE is not set
# CONFIG_I2C_DEBUG_ALGO is not set
# CONFIG_I2C_DEBUG_BUS is not set
CONFIG_SPI=y
# CONFIG_SPI_DEBUG is not set
CONFIG_SPI_MASTER=y

#
# SPI Master Controller Drivers
#
# CONFIG_SPI_ALTERA is not set
# CONFIG_SPI_AXI_SPI_ENGINE is not set
CONFIG_SPI_BITBANG=m
# CONFIG_SPI_CADENCE is not set
# CONFIG_SPI_DESIGNWARE is not set
# CONFIG_SPI_GPIO is not set
# CONFIG_SPI_OC_TINY is not set
# CONFIG_SPI_PXA2XX is not set
# CONFIG_SPI_ROCKCHIP is not set
# CONFIG_SPI_SC18IS602 is not set
# CONFIG_SPI_TOPCLIFF_PCH is not set
# CONFIG_SPI_XCOMM is not set
# CONFIG_SPI_XILINX is not set
# CONFIG_SPI_ZYNQMP_GQSPI is not set

#
# SPI Protocol Masters
#
# CONFIG_SPI_SPIDEV is not set
# CONFIG_SPI_LOOPBACK_TEST is not set
# CONFIG_SPI_TLE62X0 is not set
# CONFIG_SPI_SLAVE is not set
# CONFIG_SPMI is not set
# CONFIG_HSI is not set
CONFIG_PPS=y
# CONFIG_PPS_DEBUG is not set

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

#
# PPS generators support
#

#
# PTP clock support
#
CONFIG_PTP_1588_CLOCK=y

#
# Enable PHYLIB and NETWORK_PHY_TIMESTAMPING to see the additional clocks.
#
# CONFIG_PTP_1588_CLOCK_PCH is not set
CONFIG_PTP_1588_CLOCK_KVM=m
CONFIG_PINCTRL=y
CONFIG_PINMUX=y
CONFIG_PINCONF=y
CONFIG_GENERIC_PINCONF=y
# CONFIG_DEBUG_PINCTRL is not set
# CONFIG_PINCTRL_AMD is not set
# CONFIG_PINCTRL_MCP23S08 is not set
# CONFIG_PINCTRL_SX150X is not set
CONFIG_PINCTRL_BAYTRAIL=y
CONFIG_PINCTRL_CHERRYVIEW=y
CONFIG_PINCTRL_INTEL=y
CONFIG_PINCTRL_BROXTON=y
# CONFIG_PINCTRL_CANNONLAKE is not set
# CONFIG_PINCTRL_CEDARFORK is not set
# CONFIG_PINCTRL_DENVERTON is not set
# CONFIG_PINCTRL_GEMINILAKE is not set
# CONFIG_PINCTRL_LEWISBURG is not set
CONFIG_PINCTRL_SUNRISEPOINT=y
CONFIG_GPIOLIB=y
CONFIG_GPIO_ACPI=y
CONFIG_GPIOLIB_IRQCHIP=y
# CONFIG_DEBUG_GPIO is not set
CONFIG_GPIO_SYSFS=y

#
# Memory mapped GPIO drivers
#
# CONFIG_GPIO_AMDPT is not set
# CONFIG_GPIO_DWAPB is not set
# CONFIG_GPIO_EXAR is not set
# CONFIG_GPIO_GENERIC_PLATFORM is not set
# CONFIG_GPIO_ICH is not set
# CONFIG_GPIO_LYNXPOINT is not set
# CONFIG_GPIO_MB86S7X is not set
# CONFIG_GPIO_MOCKUP is not set
# CONFIG_GPIO_VX855 is not set

#
# Port-mapped I/O GPIO drivers
#
# CONFIG_GPIO_F7188X is not set
# CONFIG_GPIO_IT87 is not set
# CONFIG_GPIO_SCH is not set
# CONFIG_GPIO_SCH311X is not set
# CONFIG_GPIO_WINBOND is not set
# CONFIG_GPIO_WS16C48 is not set

#
# I2C GPIO expanders
#
# CONFIG_GPIO_ADP5588 is not set
# CONFIG_GPIO_MAX7300 is not set
# CONFIG_GPIO_MAX732X is not set
# CONFIG_GPIO_PCA953X is not set
# CONFIG_GPIO_PCF857X is not set
# CONFIG_GPIO_TPIC2810 is not set

#
# MFD GPIO expanders
#
CONFIG_GPIO_KEMPLD=m

#
# PCI GPIO expanders
#
# CONFIG_GPIO_AMD8111 is not set
CONFIG_GPIO_ML_IOH=m
# CONFIG_GPIO_PCH is not set
# CONFIG_GPIO_PCI_IDIO_16 is not set
# CONFIG_GPIO_PCIE_IDIO_24 is not set
# CONFIG_GPIO_RDC321X is not set

#
# SPI GPIO expanders
#
# CONFIG_GPIO_MAX3191X is not set
# CONFIG_GPIO_MAX7301 is not set
# CONFIG_GPIO_MC33880 is not set
# CONFIG_GPIO_PISOSR is not set
# CONFIG_GPIO_XRA1403 is not set

#
# USB GPIO expanders
#
CONFIG_GPIO_VIPERBOARD=m
# CONFIG_W1 is not set
# CONFIG_POWER_AVS is not set
# CONFIG_POWER_RESET is not set
CONFIG_POWER_SUPPLY=y
# CONFIG_POWER_SUPPLY_DEBUG is not set
# CONFIG_PDA_POWER is not set
# CONFIG_TEST_POWER is not set
# CONFIG_BATTERY_DS2780 is not set
# CONFIG_BATTERY_DS2781 is not set
# CONFIG_BATTERY_DS2782 is not set
CONFIG_BATTERY_SBS=m
# CONFIG_CHARGER_SBS is not set
# CONFIG_MANAGER_SBS is not set
# CONFIG_BATTERY_BQ27XXX is not set
# CONFIG_BATTERY_MAX17040 is not set
# CONFIG_BATTERY_MAX17042 is not set
# CONFIG_CHARGER_MAX8903 is not set
# CONFIG_CHARGER_LP8727 is not set
# CONFIG_CHARGER_GPIO is not set
# CONFIG_CHARGER_LTC3651 is not set
# CONFIG_CHARGER_BQ2415X is not set
# CONFIG_CHARGER_BQ24257 is not set
# CONFIG_CHARGER_BQ24735 is not set
# CONFIG_CHARGER_BQ25890 is not set
# CONFIG_CHARGER_SMB347 is not set
# CONFIG_BATTERY_GAUGE_LTC2941 is not set
# CONFIG_CHARGER_RT9455 is not set
CONFIG_HWMON=y
CONFIG_HWMON_VID=m
# CONFIG_HWMON_DEBUG_CHIP is not set

#
# Native drivers
#
CONFIG_SENSORS_ABITUGURU=m
CONFIG_SENSORS_ABITUGURU3=m
# CONFIG_SENSORS_AD7314 is not set
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_ADT7310 is not set
# CONFIG_SENSORS_ADT7410 is not set
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_APPLESMC=m
CONFIG_SENSORS_ASB100=m
# CONFIG_SENSORS_ASPEED is not set
CONFIG_SENSORS_ATXP1=m
CONFIG_SENSORS_DS620=m
CONFIG_SENSORS_DS1621=m
CONFIG_SENSORS_DELL_SMM=m
CONFIG_SENSORS_I5K_AMB=m
CONFIG_SENSORS_F71805F=m
CONFIG_SENSORS_F71882FG=m
CONFIG_SENSORS_F75375S=m
CONFIG_SENSORS_FSCHMD=m
CONFIG_SENSORS_FTSTEUTATES=m
CONFIG_SENSORS_GL518SM=m
CONFIG_SENSORS_GL520SM=m
CONFIG_SENSORS_G760A=m
# CONFIG_SENSORS_G762 is not set
# CONFIG_SENSORS_HIH6130 is not set
CONFIG_SENSORS_I5500=m
CONFIG_SENSORS_CORETEMP=m
CONFIG_SENSORS_IT87=m
CONFIG_SENSORS_JC42=m
# CONFIG_SENSORS_POWR1220 is not set
CONFIG_SENSORS_LINEAGE=m
# CONFIG_SENSORS_LTC2945 is not set
# CONFIG_SENSORS_LTC2990 is not set
CONFIG_SENSORS_LTC4151=m
CONFIG_SENSORS_LTC4215=m
# CONFIG_SENSORS_LTC4222 is not set
CONFIG_SENSORS_LTC4245=m
# CONFIG_SENSORS_LTC4260 is not set
CONFIG_SENSORS_LTC4261=m
CONFIG_SENSORS_MAX1111=m
CONFIG_SENSORS_MAX16065=m
CONFIG_SENSORS_MAX1619=m
CONFIG_SENSORS_MAX1668=m
# CONFIG_SENSORS_MAX197 is not set
# CONFIG_SENSORS_MAX31722 is not set
# CONFIG_SENSORS_MAX6621 is not set
CONFIG_SENSORS_MAX6639=m
CONFIG_SENSORS_MAX6642=m
CONFIG_SENSORS_MAX6650=m
# CONFIG_SENSORS_MAX6697 is not set
# CONFIG_SENSORS_MAX31790 is not set
# CONFIG_SENSORS_MCP3021 is not set
# CONFIG_SENSORS_TC654 is not set
CONFIG_SENSORS_MENF21BMC_HWMON=m
CONFIG_SENSORS_ADCXX=m
CONFIG_SENSORS_LM63=m
CONFIG_SENSORS_LM70=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_LM95234 is not set
CONFIG_SENSORS_LM95241=m
CONFIG_SENSORS_LM95245=m
CONFIG_SENSORS_PC87360=m
CONFIG_SENSORS_PC87427=m
CONFIG_SENSORS_NTC_THERMISTOR=m
CONFIG_SENSORS_NCT6683=m
CONFIG_SENSORS_NCT6775=m
# CONFIG_SENSORS_NCT7802 is not set
# CONFIG_SENSORS_NCT7904 is not set
CONFIG_SENSORS_PCF8591=m
# CONFIG_PMBUS is not set
# CONFIG_SENSORS_SHT15 is not set
CONFIG_SENSORS_SHT21=m
# CONFIG_SENSORS_SHT3x is not set
# CONFIG_SENSORS_SHTC1 is not set
CONFIG_SENSORS_SIS5595=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=m
# CONFIG_SENSORS_STTS751 is not set
CONFIG_SENSORS_SMM665=m
# CONFIG_SENSORS_ADC128D818 is not set
CONFIG_SENSORS_ADS1015=m
CONFIG_SENSORS_ADS7828=m
CONFIG_SENSORS_ADS7871=m
CONFIG_SENSORS_AMC6821=m
# CONFIG_SENSORS_INA209 is not set
# CONFIG_SENSORS_INA2XX is not set
# CONFIG_SENSORS_INA3221 is not set
# CONFIG_SENSORS_TC74 is not set
CONFIG_SENSORS_THMC50=m
CONFIG_SENSORS_TMP102=m
# CONFIG_SENSORS_TMP103 is not set
# CONFIG_SENSORS_TMP108 is not set
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_W83773G is not set
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_XGENE is not set

#
# ACPI drivers
#
CONFIG_SENSORS_ACPI_POWER=m
CONFIG_SENSORS_ATK0110=m
CONFIG_THERMAL=y
# CONFIG_THERMAL_STATISTICS is not set
CONFIG_THERMAL_EMERGENCY_POWEROFF_DELAY_MS=0
CONFIG_THERMAL_HWMON=y
CONFIG_THERMAL_WRITABLE_TRIPS=y
CONFIG_THERMAL_DEFAULT_GOV_STEP_WISE=y
# CONFIG_THERMAL_DEFAULT_GOV_FAIR_SHARE is not set
# CONFIG_THERMAL_DEFAULT_GOV_USER_SPACE is not set
# CONFIG_THERMAL_DEFAULT_GOV_POWER_ALLOCATOR is not set
CONFIG_THERMAL_GOV_FAIR_SHARE=y
CONFIG_THERMAL_GOV_STEP_WISE=y
CONFIG_THERMAL_GOV_BANG_BANG=y
CONFIG_THERMAL_GOV_USER_SPACE=y
# CONFIG_THERMAL_GOV_POWER_ALLOCATOR is not set
# CONFIG_CLOCK_THERMAL is not set
# CONFIG_DEVFREQ_THERMAL is not set
# CONFIG_THERMAL_EMULATION is not set
CONFIG_INTEL_POWERCLAMP=m
CONFIG_X86_PKG_TEMP_THERMAL=m
CONFIG_INTEL_SOC_DTS_IOSF_CORE=m
CONFIG_INTEL_SOC_DTS_THERMAL=m

#
# ACPI INT340X thermal drivers
#
CONFIG_INT340X_THERMAL=m
CONFIG_ACPI_THERMAL_REL=m
# CONFIG_INT3406_THERMAL is not set
CONFIG_INTEL_PCH_THERMAL=m
CONFIG_WATCHDOG=y
CONFIG_WATCHDOG_CORE=y
# CONFIG_WATCHDOG_NOWAYOUT is not set
# CONFIG_WATCHDOG_HANDLE_BOOT_ENABLED is not set
# CONFIG_WATCHDOG_SYSFS is not set

#
# Watchdog Device Drivers
#
CONFIG_SOFT_WATCHDOG=m
CONFIG_MENF21BMC_WATCHDOG=m
# CONFIG_WDAT_WDT is not set
# CONFIG_XILINX_WATCHDOG is not set
# CONFIG_ZIIRAVE_WATCHDOG is not set
# CONFIG_CADENCE_WATCHDOG is not set
# CONFIG_DW_WATCHDOG is not set
# CONFIG_MAX63XX_WATCHDOG is not set
CONFIG_ACQUIRE_WDT=m
CONFIG_ADVANTECH_WDT=m
CONFIG_ALIM1535_WDT=m
CONFIG_ALIM7101_WDT=m
# CONFIG_EBC_C384_WDT is not set
CONFIG_F71808E_WDT=m
CONFIG_SP5100_TCO=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_IE6XX_WDT=m
CONFIG_ITCO_WDT=m
CONFIG_ITCO_VENDOR_SUPPORT=y
CONFIG_IT8712F_WDT=m
CONFIG_IT87_WDT=m
CONFIG_HP_WATCHDOG=m
CONFIG_KEMPLD_WDT=m
CONFIG_HPWDT_NMI_DECODING=y
CONFIG_SC1200_WDT=m
CONFIG_PC87413_WDT=m
CONFIG_NV_TCO=m
CONFIG_60XX_WDT=m
# CONFIG_SBC8360_WDT is not set
# CONFIG_SBC7240_WDT is not set
CONFIG_CPU5_WDT=m
CONFIG_SMSC_SCH311X_WDT=m
CONFIG_SMSC37B787_WDT=m
CONFIG_VIA_WDT=m
CONFIG_W83627HF_WDT=m
CONFIG_W83877F_WDT=m
CONFIG_W83977F_WDT=m
CONFIG_MACHZ_WDT=m
CONFIG_SBC_EPX_C3_WATCHDOG=m
# CONFIG_INTEL_MEI_WDT is not set
# CONFIG_NI903X_WDT is not set
# CONFIG_NIC7018_WDT is not set
# CONFIG_MEN_A21_WDT is not set

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

#
# USB-based Watchdog Cards
#
CONFIG_USBPCWATCHDOG=m

#
# Watchdog Pretimeout Governors
#
# CONFIG_WATCHDOG_PRETIMEOUT_GOV is not set
CONFIG_SSB_POSSIBLE=y
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_SILENT is not set
# CONFIG_SSB_DEBUG is not set
# CONFIG_SSB_DRIVER_GPIO is not set
CONFIG_BCMA_POSSIBLE=y
CONFIG_BCMA=m
CONFIG_BCMA_BLOCKIO=y
CONFIG_BCMA_HOST_PCI_POSSIBLE=y
CONFIG_BCMA_HOST_PCI=y
# CONFIG_BCMA_HOST_SOC is not set
CONFIG_BCMA_DRIVER_PCI=y
# CONFIG_BCMA_DRIVER_GMAC_CMN is not set
# CONFIG_BCMA_DRIVER_GPIO is not set
# CONFIG_BCMA_DEBUG is not set

#
# Multifunction device drivers
#
CONFIG_MFD_CORE=m
# CONFIG_MFD_CS5535 is not set
# CONFIG_MFD_AS3711 is not set
# CONFIG_PMIC_ADP5520 is not set
# CONFIG_MFD_AAT2870_CORE is not set
# CONFIG_MFD_BCM590XX is not set
# CONFIG_MFD_BD9571MWV is not set
# CONFIG_MFD_AXP20X_I2C is not set
# CONFIG_MFD_CROS_EC is not set
# CONFIG_PMIC_DA903X is not set
# CONFIG_MFD_DA9052_SPI is not set
# CONFIG_MFD_DA9052_I2C is not set
# CONFIG_MFD_DA9055 is not set
# CONFIG_MFD_DA9062 is not set
# CONFIG_MFD_DA9063 is not set
# CONFIG_MFD_DA9150 is not set
# CONFIG_MFD_DLN2 is not set
# CONFIG_MFD_MC13XXX_SPI is not set
# CONFIG_MFD_MC13XXX_I2C is not set
# CONFIG_HTC_PASIC3 is not set
# CONFIG_HTC_I2CPLD is not set
# CONFIG_MFD_INTEL_QUARK_I2C_GPIO is not set
CONFIG_LPC_ICH=m
CONFIG_LPC_SCH=m
# CONFIG_INTEL_SOC_PMIC is not set
# CONFIG_INTEL_SOC_PMIC_BXTWC is not set
# CONFIG_INTEL_SOC_PMIC_CHTWC is not set
# CONFIG_INTEL_SOC_PMIC_CHTDC_TI is not set
CONFIG_MFD_INTEL_LPSS=m
CONFIG_MFD_INTEL_LPSS_ACPI=m
CONFIG_MFD_INTEL_LPSS_PCI=m
# CONFIG_MFD_JANZ_CMODIO is not set
CONFIG_MFD_KEMPLD=m
# CONFIG_MFD_88PM800 is not set
# CONFIG_MFD_88PM805 is not set
# CONFIG_MFD_88PM860X is not set
# CONFIG_MFD_MAX14577 is not set
# CONFIG_MFD_MAX77693 is not set
# CONFIG_MFD_MAX77843 is not set
# CONFIG_MFD_MAX8907 is not set
# CONFIG_MFD_MAX8925 is not set
# CONFIG_MFD_MAX8997 is not set
# CONFIG_MFD_MAX8998 is not set
# CONFIG_MFD_MT6397 is not set
CONFIG_MFD_MENF21BMC=m
# CONFIG_EZX_PCAP is not set
CONFIG_MFD_VIPERBOARD=m
# CONFIG_MFD_RETU is not set
# CONFIG_MFD_PCF50633 is not set
# CONFIG_UCB1400_CORE is not set
# CONFIG_MFD_RDC321X is not set
# CONFIG_MFD_RT5033 is not set
# CONFIG_MFD_RC5T583 is not set
# CONFIG_MFD_SEC_CORE is not set
# CONFIG_MFD_SI476X_CORE is not set
# CONFIG_MFD_SM501 is not set
# CONFIG_MFD_SKY81452 is not set
# CONFIG_MFD_SMSC is not set
# CONFIG_ABX500_CORE is not set
# CONFIG_MFD_SYSCON is not set
# CONFIG_MFD_TI_AM335X_TSCADC is not set
# CONFIG_MFD_LP3943 is not set
# CONFIG_MFD_LP8788 is not set
# CONFIG_MFD_TI_LMU is not set
# CONFIG_MFD_PALMAS is not set
# CONFIG_TPS6105X is not set
# CONFIG_TPS65010 is not set
# CONFIG_TPS6507X is not set
# CONFIG_MFD_TPS65086 is not set
# CONFIG_MFD_TPS65090 is not set
# CONFIG_MFD_TPS68470 is not set
# CONFIG_MFD_TI_LP873X is not set
# CONFIG_MFD_TPS6586X is not set
# CONFIG_MFD_TPS65910 is not set
# CONFIG_MFD_TPS65912_I2C is not set
# CONFIG_MFD_TPS65912_SPI is not set
# CONFIG_MFD_TPS80031 is not set
# CONFIG_TWL4030_CORE is not set
# CONFIG_TWL6040_CORE is not set
# CONFIG_MFD_WL1273_CORE is not set
# CONFIG_MFD_LM3533 is not set
# CONFIG_MFD_TIMBERDALE is not set
# CONFIG_MFD_VX855 is not set
# CONFIG_MFD_ARIZONA_I2C is not set
# CONFIG_MFD_ARIZONA_SPI is not set
# CONFIG_MFD_WM8400 is not set
# CONFIG_MFD_WM831X_I2C is not set
# CONFIG_MFD_WM831X_SPI is not set
# CONFIG_MFD_WM8350_I2C is not set
# CONFIG_MFD_WM8994 is not set
# CONFIG_REGULATOR is not set
CONFIG_CEC_CORE=m
CONFIG_RC_CORE=m
CONFIG_RC_MAP=m
# CONFIG_LIRC is not set
CONFIG_RC_DECODERS=y
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_SANYO_DECODER=m
CONFIG_IR_SHARP_DECODER=m
CONFIG_IR_MCE_KBD_DECODER=m
CONFIG_IR_XMP_DECODER=m
# CONFIG_IR_IMON_DECODER is not set
CONFIG_RC_DEVICES=y
CONFIG_RC_ATI_REMOTE=m
CONFIG_IR_ENE=m
CONFIG_IR_IMON=m
# CONFIG_IR_IMON_RAW is not set
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_IR_IGORPLUGUSB=m
CONFIG_IR_IGUANA=m
CONFIG_IR_TTUSBIR=m
CONFIG_RC_LOOPBACK=m
# CONFIG_IR_SERIAL is not set
# CONFIG_IR_SIR is not set
CONFIG_MEDIA_SUPPORT=m

#
# Multimedia core support
#
CONFIG_MEDIA_CAMERA_SUPPORT=y
CONFIG_MEDIA_ANALOG_TV_SUPPORT=y
CONFIG_MEDIA_DIGITAL_TV_SUPPORT=y
CONFIG_MEDIA_RADIO_SUPPORT=y
CONFIG_MEDIA_SDR_SUPPORT=y
CONFIG_MEDIA_CEC_SUPPORT=y
# CONFIG_MEDIA_CEC_RC is not set
CONFIG_MEDIA_CONTROLLER=y
# CONFIG_MEDIA_CONTROLLER_DVB is not set
CONFIG_VIDEO_DEV=m
# CONFIG_VIDEO_V4L2_SUBDEV_API is not set
CONFIG_VIDEO_V4L2=m
# CONFIG_VIDEO_ADV_DEBUG is not set
# CONFIG_VIDEO_FIXED_MINOR_RANGES is not set
# CONFIG_VIDEO_PCI_SKELETON is not set
CONFIG_VIDEO_TUNER=m
CONFIG_V4L2_FWNODE=m
CONFIG_VIDEOBUF_GEN=m
CONFIG_VIDEOBUF_DMA_SG=m
CONFIG_VIDEOBUF_VMALLOC=m
CONFIG_VIDEOBUF_DVB=m
CONFIG_DVB_CORE=m
# CONFIG_DVB_MMAP is not set
CONFIG_DVB_NET=y
CONFIG_TTPCI_EEPROM=m
CONFIG_DVB_MAX_ADAPTERS=8
CONFIG_DVB_DYNAMIC_MINORS=y
# CONFIG_DVB_DEMUX_SECTION_LOSS_LOG is not set
# CONFIG_DVB_ULE_DEBUG is not set

#
# Media drivers
#
CONFIG_MEDIA_USB_SUPPORT=y

#
# Webcam devices
#
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_DTCS033=m
CONFIG_USB_GSPCA_ETOMS=m
CONFIG_USB_GSPCA_FINEPIX=m
CONFIG_USB_GSPCA_JEILINJ=m
CONFIG_USB_GSPCA_JL2005BCD=m
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=m
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_STK1135=m
CONFIG_USB_GSPCA_STV0680=m
CONFIG_USB_GSPCA_SUNPLUS=m
CONFIG_USB_GSPCA_T613=m
CONFIG_USB_GSPCA_TOPRO=m
CONFIG_USB_GSPCA_TOUPTEK=m
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_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_VIDEO_USBTV=m

#
# Analog TV USB devices
#
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_USBVISION=m
CONFIG_VIDEO_STK1160_COMMON=m
CONFIG_VIDEO_STK1160=m
# CONFIG_VIDEO_GO7007 is not set

#
# Analog/digital TV USB devices
#
CONFIG_VIDEO_AU0828=m
CONFIG_VIDEO_AU0828_V4L2=y
CONFIG_VIDEO_AU0828_RC=y
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

#
# Digital TV USB devices
#
CONFIG_DVB_USB=m
# CONFIG_DVB_USB_DEBUG is not set
CONFIG_DVB_USB_DIB3000MC=m
CONFIG_DVB_USB_A800=m
CONFIG_DVB_USB_DIBUSB_MB=m
CONFIG_DVB_USB_DIBUSB_MB_FAULTY=y
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_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=m
CONFIG_DVB_USB_DW2102=m
CONFIG_DVB_USB_CINERGY_T2=m
CONFIG_DVB_USB_DTV5100=m
CONFIG_DVB_USB_FRIIO=m
CONFIG_DVB_USB_AZ6027=m
CONFIG_DVB_USB_TECHNISAT_USB2=m
CONFIG_DVB_USB_V2=m
CONFIG_DVB_USB_AF9015=m
CONFIG_DVB_USB_AF9035=m
CONFIG_DVB_USB_ANYSEE=m
CONFIG_DVB_USB_AU6610=m
CONFIG_DVB_USB_AZ6007=m
CONFIG_DVB_USB_CE6230=m
CONFIG_DVB_USB_EC168=m
CONFIG_DVB_USB_GL861=m
CONFIG_DVB_USB_LME2510=m
CONFIG_DVB_USB_MXL111SF=m
CONFIG_DVB_USB_RTL28XXU=m
CONFIG_DVB_USB_DVBSKY=m
# CONFIG_DVB_USB_ZD1301 is not set
CONFIG_DVB_TTUSB_BUDGET=m
CONFIG_DVB_TTUSB_DEC=m
CONFIG_SMS_USB_DRV=m
CONFIG_DVB_B2C2_FLEXCOP_USB=m
# CONFIG_DVB_B2C2_FLEXCOP_USB_DEBUG is not set
CONFIG_DVB_AS102=m

#
# Webcam, TV (analog/digital) USB devices
#
CONFIG_VIDEO_EM28XX=m
CONFIG_VIDEO_EM28XX_V4L2=m
CONFIG_VIDEO_EM28XX_ALSA=m
CONFIG_VIDEO_EM28XX_DVB=m
CONFIG_VIDEO_EM28XX_RC=m

#
# Software defined radio USB devices
#
CONFIG_USB_AIRSPY=m
CONFIG_USB_HACKRF=m
CONFIG_USB_MSI2500=m

#
# USB HDMI CEC adapters
#
CONFIG_USB_PULSE8_CEC=m
# CONFIG_USB_RAINSHADOW_CEC is not set
CONFIG_MEDIA_PCI_SUPPORT=y

#
# Media capture support
#
CONFIG_VIDEO_MEYE=m
CONFIG_VIDEO_SOLO6X10=m
# CONFIG_VIDEO_TW5864 is not set
CONFIG_VIDEO_TW68=m
# CONFIG_VIDEO_TW686X is not set
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

#
# Media capture/analog TV support
#
CONFIG_VIDEO_IVTV=m
# CONFIG_VIDEO_IVTV_DEPRECATED_IOCTLS is not set
CONFIG_VIDEO_IVTV_ALSA=m
CONFIG_VIDEO_FB_IVTV=m
CONFIG_VIDEO_HEXIUM_GEMINI=m
CONFIG_VIDEO_HEXIUM_ORION=m
CONFIG_VIDEO_MXB=m
CONFIG_VIDEO_DT3155=m

#
# Media capture/analog/hybrid TV support
#
CONFIG_VIDEO_CX18=m
CONFIG_VIDEO_CX18_ALSA=m
CONFIG_VIDEO_CX23885=m
CONFIG_MEDIA_ALTERA_CI=m
# CONFIG_VIDEO_CX25821 is not set
CONFIG_VIDEO_CX88=m
CONFIG_VIDEO_CX88_ALSA=m
CONFIG_VIDEO_CX88_BLACKBIRD=m
CONFIG_VIDEO_CX88_DVB=m
CONFIG_VIDEO_CX88_ENABLE_VP3054=y
CONFIG_VIDEO_CX88_VP3054=m
CONFIG_VIDEO_CX88_MPEG=m
CONFIG_VIDEO_BT848=m
CONFIG_DVB_BT8XX=m
CONFIG_VIDEO_SAA7134=m
CONFIG_VIDEO_SAA7134_ALSA=m
CONFIG_VIDEO_SAA7134_RC=y
CONFIG_VIDEO_SAA7134_DVB=m
CONFIG_VIDEO_SAA7164=m

#
# Media digital TV PCI Adapters
#
CONFIG_DVB_AV7110_IR=y
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
CONFIG_DVB_B2C2_FLEXCOP_PCI=m
# CONFIG_DVB_B2C2_FLEXCOP_PCI_DEBUG is not set
CONFIG_DVB_PLUTO2=m
CONFIG_DVB_DM1105=m
CONFIG_DVB_PT1=m
CONFIG_DVB_PT3=m
CONFIG_MANTIS_CORE=m
CONFIG_DVB_MANTIS=m
CONFIG_DVB_HOPPER=m
CONFIG_DVB_NGENE=m
CONFIG_DVB_DDBRIDGE=m
# CONFIG_DVB_DDBRIDGE_MSIENABLE is not set
CONFIG_DVB_SMIPCIE=m
CONFIG_DVB_NETUP_UNIDVB=m
CONFIG_V4L_PLATFORM_DRIVERS=y
CONFIG_VIDEO_CAFE_CCIC=m
# CONFIG_SOC_CAMERA is not set
CONFIG_V4L_MEM2MEM_DRIVERS=y
# CONFIG_VIDEO_MEM2MEM_DEINTERLACE is not set
# CONFIG_VIDEO_SH_VEU is not set
CONFIG_V4L_TEST_DRIVERS=y
CONFIG_VIDEO_VIVID=m
# CONFIG_VIDEO_VIVID_CEC is not set
CONFIG_VIDEO_VIVID_MAX_DEVS=64
# CONFIG_VIDEO_VIM2M is not set
# CONFIG_DVB_PLATFORM_DRIVERS is not set
# CONFIG_CEC_PLATFORM_DRIVERS is not set
# CONFIG_SDR_PLATFORM_DRIVERS is not set

#
# Supported MMC/SDIO adapters
#
CONFIG_SMS_SDIO_DRV=m
CONFIG_RADIO_ADAPTERS=y
CONFIG_RADIO_TEA575X=m
CONFIG_RADIO_SI470X=y
CONFIG_USB_SI470X=m
# CONFIG_I2C_SI470X is not set
# CONFIG_RADIO_SI4713 is not set
CONFIG_USB_MR800=m
CONFIG_USB_DSBR=m
CONFIG_RADIO_MAXIRADIO=m
CONFIG_RADIO_SHARK=m
CONFIG_RADIO_SHARK2=m
CONFIG_USB_KEENE=m
CONFIG_USB_RAREMONO=m
CONFIG_USB_MA901=m
# CONFIG_RADIO_TEA5764 is not set
# CONFIG_RADIO_SAA7706H is not set
# CONFIG_RADIO_TEF6862 is not set
# CONFIG_RADIO_WL1273 is not set

#
# Texas Instruments WL128x FM driver (ST based)
#

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

#
# common driver options
#
CONFIG_VIDEO_CX2341X=m
CONFIG_VIDEO_TVEEPROM=m
CONFIG_CYPRESS_FIRMWARE=m
CONFIG_VIDEOBUF2_CORE=m
CONFIG_VIDEOBUF2_V4L2=m
CONFIG_VIDEOBUF2_MEMOPS=m
CONFIG_VIDEOBUF2_DMA_CONTIG=m
CONFIG_VIDEOBUF2_VMALLOC=m
CONFIG_VIDEOBUF2_DMA_SG=m
CONFIG_VIDEOBUF2_DVB=m
CONFIG_DVB_B2C2_FLEXCOP=m
CONFIG_VIDEO_SAA7146=m
CONFIG_VIDEO_SAA7146_VV=m
CONFIG_SMS_SIANO_MDTV=m
CONFIG_SMS_SIANO_RC=y
# CONFIG_SMS_SIANO_DEBUGFS is not set
CONFIG_VIDEO_V4L2_TPG=m

#
# Media ancillary drivers (tuners, sensors, i2c, spi, frontends)
#
CONFIG_MEDIA_SUBDRV_AUTOSELECT=y
CONFIG_MEDIA_ATTACH=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_CS3308=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

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

#
# Camera sensor devices
#
CONFIG_VIDEO_OV2640=m
CONFIG_VIDEO_OV7670=m
CONFIG_VIDEO_MT9V011=m

#
# Flash devices
#

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

#
# Audio/Video compression chips
#
CONFIG_VIDEO_SAA6752HS=m

#
# SDR tuner chips
#

#
# Miscellaneous helper chips
#
CONFIG_VIDEO_M52790=m

#
# Sensors used on soc_camera driver
#

#
# Media SPI Adapters
#
# CONFIG_CXD2880_SPI_DRV is not set
CONFIG_MEDIA_TUNER=m
CONFIG_MEDIA_TUNER_SIMPLE=m
CONFIG_MEDIA_TUNER_TDA18250=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_MSI001=m
CONFIG_MEDIA_TUNER_MT20XX=m
CONFIG_MEDIA_TUNER_MT2060=m
CONFIG_MEDIA_TUNER_MT2063=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_FC0011=m
CONFIG_MEDIA_TUNER_FC0012=m
CONFIG_MEDIA_TUNER_FC0013=m
CONFIG_MEDIA_TUNER_TDA18212=m
CONFIG_MEDIA_TUNER_E4000=m
CONFIG_MEDIA_TUNER_FC2580=m
CONFIG_MEDIA_TUNER_M88RS6000T=m
CONFIG_MEDIA_TUNER_TUA9001=m
CONFIG_MEDIA_TUNER_SI2157=m
CONFIG_MEDIA_TUNER_IT913X=m
CONFIG_MEDIA_TUNER_R820T=m
CONFIG_MEDIA_TUNER_MXL301RF=m
CONFIG_MEDIA_TUNER_QM1D1C0042=m

#
# Multistandard (satellite) frontends
#
CONFIG_DVB_STB0899=m
CONFIG_DVB_STB6100=m
CONFIG_DVB_STV090x=m
CONFIG_DVB_STV0910=m
CONFIG_DVB_STV6110x=m
CONFIG_DVB_STV6111=m
CONFIG_DVB_MXL5XX=m
CONFIG_DVB_M88DS3103=m

#
# Multistandard (cable + terrestrial) frontends
#
CONFIG_DVB_DRXK=m
CONFIG_DVB_TDA18271C2DD=m
CONFIG_DVB_SI2165=m
CONFIG_DVB_MN88472=m
CONFIG_DVB_MN88473=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_CX24117=m
CONFIG_DVB_CX24120=m
CONFIG_DVB_SI21XX=m
CONFIG_DVB_TS2020=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
CONFIG_DVB_CXD2841ER=m
CONFIG_DVB_RTL2830=m
CONFIG_DVB_RTL2832=m
CONFIG_DVB_RTL2832_SDR=m
CONFIG_DVB_SI2168=m
CONFIG_DVB_AS102_FE=m
CONFIG_DVB_GP8PSK_FE=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_LGDT3306A=m
CONFIG_DVB_LG2160=m
CONFIG_DVB_S5H1409=m
CONFIG_DVB_AU8522=m
CONFIG_DVB_AU8522_DTV=m
CONFIG_DVB_AU8522_V4L=m
CONFIG_DVB_S5H1411=m

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

#
# ISDB-S (satellite) & ISDB-T (terrestrial) frontends
#
CONFIG_DVB_TC90522=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_DRX39XYJ=m
CONFIG_DVB_LNBH25=m
CONFIG_DVB_LNBP21=m
CONFIG_DVB_LNBP22=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
CONFIG_DVB_M88RS2000=m
CONFIG_DVB_AF9033=m
CONFIG_DVB_HORUS3A=m
CONFIG_DVB_ASCOT2E=m
CONFIG_DVB_HELENE=m

#
# Common Interface (EN50221) controller drivers
#
CONFIG_DVB_CXD2099=m
CONFIG_DVB_SP2=m

#
# Tools to develop new frontends
#

#
# Graphics support
#
CONFIG_AGP=y
# CONFIG_AGP_ALI is not set
# CONFIG_AGP_ATI is not set
# CONFIG_AGP_AMD is not set
CONFIG_AGP_AMD64=y
CONFIG_AGP_INTEL=y
# CONFIG_AGP_NVIDIA is not set
CONFIG_AGP_SIS=y
# CONFIG_AGP_SWORKS is not set
CONFIG_AGP_VIA=y
# CONFIG_AGP_EFFICEON is not set
CONFIG_INTEL_GTT=y
CONFIG_VGA_ARB=y
CONFIG_VGA_ARB_MAX_GPUS=16
# CONFIG_VGA_SWITCHEROO is not set
CONFIG_DRM=m
CONFIG_DRM_MIPI_DSI=y
# CONFIG_DRM_DP_AUX_CHARDEV is not set
# CONFIG_DRM_DEBUG_MM_SELFTEST is not set
CONFIG_DRM_KMS_HELPER=m
CONFIG_DRM_KMS_FB_HELPER=y
CONFIG_DRM_FBDEV_EMULATION=y
CONFIG_DRM_FBDEV_OVERALLOC=100
CONFIG_DRM_LOAD_EDID_FIRMWARE=y
CONFIG_DRM_TTM=m

#
# I2C encoder or helper chips
#
CONFIG_DRM_I2C_CH7006=m
CONFIG_DRM_I2C_SIL164=m
# CONFIG_DRM_I2C_NXP_TDA998X is not set
CONFIG_DRM_RADEON=m
# CONFIG_DRM_RADEON_USERPTR is not set
# CONFIG_DRM_AMDGPU is not set

#
# ACP (Audio CoProcessor) Configuration
#

#
# AMD Library routines
#
# CONFIG_DRM_NOUVEAU is not set
CONFIG_DRM_I915=m
# CONFIG_DRM_I915_ALPHA_SUPPORT is not set
CONFIG_DRM_I915_CAPTURE_ERROR=y
CONFIG_DRM_I915_COMPRESS_ERROR=y
CONFIG_DRM_I915_USERPTR=y

#
# drm/i915 Debugging
#
# CONFIG_DRM_I915_WERROR is not set
# CONFIG_DRM_I915_DEBUG is not set
# CONFIG_DRM_I915_SW_FENCE_DEBUG_OBJECTS is not set
# CONFIG_DRM_I915_SW_FENCE_CHECK_DAG is not set
# CONFIG_DRM_I915_SELFTEST is not set
# CONFIG_DRM_I915_LOW_LEVEL_TRACEPOINTS is not set
CONFIG_DRM_I915_DEBUG_VBLANK_EVADE=y
CONFIG_DRM_VGEM=m
# CONFIG_DRM_VMWGFX is not set
# CONFIG_DRM_GMA500 is not set
# CONFIG_DRM_UDL is not set
# CONFIG_DRM_AST is not set
# CONFIG_DRM_MGAG200 is not set
# CONFIG_DRM_CIRRUS_QEMU is not set
# CONFIG_DRM_QXL is not set
# CONFIG_DRM_BOCHS is not set
# CONFIG_DRM_VIRTIO_GPU is not set
CONFIG_DRM_PANEL=y

#
# Display Panels
#
# CONFIG_DRM_PANEL_RASPBERRYPI_TOUCHSCREEN is not set
CONFIG_DRM_BRIDGE=y
CONFIG_DRM_PANEL_BRIDGE=y

#
# Display Interface Bridges
#
# CONFIG_DRM_ANALOGIX_ANX78XX is not set
# CONFIG_DRM_HISI_HIBMC is not set
# CONFIG_DRM_TINYDRM is not set
# CONFIG_DRM_LEGACY is not set
CONFIG_DRM_PANEL_ORIENTATION_QUIRKS=m

#
# Frame buffer Devices
#
CONFIG_FB=y
CONFIG_FIRMWARE_EDID=y
CONFIG_FB_CMDLINE=y
CONFIG_FB_NOTIFY=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_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_DEFERRED_IO=y
CONFIG_FB_BACKLIGHT=y
CONFIG_FB_MODE_HELPERS=y
CONFIG_FB_TILEBLITTING=y

#
# Frame buffer hardware drivers
#
# CONFIG_FB_CIRRUS is not set
# CONFIG_FB_PM2 is not set
# CONFIG_FB_CYBER2000 is not set
# CONFIG_FB_ARC is not set
# CONFIG_FB_ASILIANT is not set
# CONFIG_FB_IMSTT is not set
# CONFIG_FB_VGA16 is not set
CONFIG_FB_UVESA=m
CONFIG_FB_VESA=y
# CONFIG_FB_N411 is not set
# CONFIG_FB_HGA is not set
# CONFIG_FB_OPENCORES is not set
# CONFIG_FB_S1D13XXX is not set
# CONFIG_FB_NVIDIA is not set
# CONFIG_FB_RIVA is not set
# CONFIG_FB_I740 is not set
# CONFIG_FB_I810 is not set
# CONFIG_FB_LE80578 is not set
# CONFIG_FB_INTEL is not set
# CONFIG_FB_MATROX is not set
CONFIG_FB_RADEON=m
CONFIG_FB_RADEON_I2C=y
CONFIG_FB_RADEON_BACKLIGHT=y
# CONFIG_FB_RADEON_DEBUG is not set
# CONFIG_FB_ATY128 is not set
# CONFIG_FB_ATY is not set
# CONFIG_FB_S3 is not set
# CONFIG_FB_SAVAGE is not set
# CONFIG_FB_SIS is not set
# CONFIG_FB_VIA is not set
# CONFIG_FB_NEOMAGIC is not set
# CONFIG_FB_KYRO is not set
# CONFIG_FB_3DFX is not set
# CONFIG_FB_VOODOO1 is not set
# CONFIG_FB_VT8623 is not set
# CONFIG_FB_TRIDENT is not set
# CONFIG_FB_ARK is not set
# CONFIG_FB_PM3 is not set
# CONFIG_FB_CARMINE is not set
# CONFIG_FB_GEODE is not set
# CONFIG_FB_SMSCUFX is not set
# CONFIG_FB_UDL is not set
# CONFIG_FB_IBM_GXT4500 is not set
# CONFIG_FB_VIRTUAL is not set
# CONFIG_FB_METRONOME is not set
# CONFIG_FB_MB862XX is not set
# CONFIG_FB_BROADSHEET is not set
# CONFIG_FB_AUO_K190X is not set
# CONFIG_FB_HYPERV is not set
CONFIG_FB_SIMPLE=y
# CONFIG_FB_SM712 is not set
CONFIG_BACKLIGHT_LCD_SUPPORT=y
# CONFIG_LCD_CLASS_DEVICE is not set
CONFIG_BACKLIGHT_CLASS_DEVICE=y
# CONFIG_BACKLIGHT_GENERIC is not set
CONFIG_BACKLIGHT_APPLE=m
# CONFIG_BACKLIGHT_PM8941_WLED is not set
# CONFIG_BACKLIGHT_SAHARA is not set
# CONFIG_BACKLIGHT_ADP8860 is not set
# CONFIG_BACKLIGHT_ADP8870 is not set
# CONFIG_BACKLIGHT_LM3639 is not set
# CONFIG_BACKLIGHT_GPIO is not set
# CONFIG_BACKLIGHT_LV5207LP is not set
# CONFIG_BACKLIGHT_BD6107 is not set
# CONFIG_BACKLIGHT_ARCXCNN is not set
CONFIG_HDMI=y

#
# Console display driver support
#
CONFIG_VGA_CONSOLE=y
# CONFIG_VGACON_SOFT_SCROLLBACK is not set
CONFIG_DUMMY_CONSOLE=y
CONFIG_DUMMY_CONSOLE_COLUMNS=80
CONFIG_DUMMY_CONSOLE_ROWS=25
CONFIG_FRAMEBUFFER_CONSOLE=y
CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y
CONFIG_FRAMEBUFFER_CONSOLE_ROTATION=y
# CONFIG_LOGO is not set
CONFIG_SOUND=m
CONFIG_SOUND_OSS_CORE=y
# CONFIG_SOUND_OSS_CORE_PRECLAIM is not set
CONFIG_SND=m
CONFIG_SND_TIMER=m
CONFIG_SND_PCM=m
CONFIG_SND_HWDEP=m
CONFIG_SND_SEQ_DEVICE=m
CONFIG_SND_RAWMIDI=m
CONFIG_SND_JACK=y
CONFIG_SND_JACK_INPUT_DEV=y
CONFIG_SND_OSSEMUL=y
CONFIG_SND_MIXER_OSS=m
CONFIG_SND_PCM_OSS=m
CONFIG_SND_PCM_OSS_PLUGINS=y
CONFIG_SND_PCM_TIMER=y
CONFIG_SND_HRTIMER=m
CONFIG_SND_DYNAMIC_MINORS=y
CONFIG_SND_MAX_CARDS=32
CONFIG_SND_SUPPORT_OLD_API=y
CONFIG_SND_PROC_FS=y
CONFIG_SND_VERBOSE_PROCFS=y
# CONFIG_SND_VERBOSE_PRINTK is not set
# CONFIG_SND_DEBUG is not set
CONFIG_SND_VMASTER=y
CONFIG_SND_DMA_SGBUF=y
CONFIG_SND_SEQUENCER=m
CONFIG_SND_SEQ_DUMMY=m
# CONFIG_SND_SEQUENCER_OSS is not set
CONFIG_SND_SEQ_HRTIMER_DEFAULT=y
CONFIG_SND_SEQ_MIDI_EVENT=m
CONFIG_SND_SEQ_MIDI=m
CONFIG_SND_SEQ_MIDI_EMUL=m
CONFIG_SND_SEQ_VIRMIDI=m
CONFIG_SND_MPU401_UART=m
CONFIG_SND_OPL3_LIB=m
CONFIG_SND_OPL3_LIB_SEQ=m
CONFIG_SND_VX_LIB=m
CONFIG_SND_AC97_CODEC=m
CONFIG_SND_DRIVERS=y
CONFIG_SND_PCSP=m
CONFIG_SND_DUMMY=m
CONFIG_SND_ALOOP=m
CONFIG_SND_VIRMIDI=m
CONFIG_SND_MTPAV=m
CONFIG_SND_SERIAL_U16550=m
CONFIG_SND_MPU401=m
CONFIG_SND_AC97_POWER_SAVE=y
CONFIG_SND_AC97_POWER_SAVE_DEFAULT=0
CONFIG_SND_SB_COMMON=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 is not set
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 is not set
# CONFIG_SND_CS5535AUDIO is not set
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_EMU10K1_SEQ=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_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 is not set
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

#
# HD-Audio
#
CONFIG_SND_HDA=m
CONFIG_SND_HDA_INTEL=m
CONFIG_SND_HDA_HWDEP=y
CONFIG_SND_HDA_RECONFIG=y
CONFIG_SND_HDA_INPUT_BEEP=y
CONFIG_SND_HDA_INPUT_BEEP_MODE=1
CONFIG_SND_HDA_PATCH_LOADER=y
CONFIG_SND_HDA_CODEC_REALTEK=m
CONFIG_SND_HDA_CODEC_ANALOG=m
CONFIG_SND_HDA_CODEC_SIGMATEL=m
CONFIG_SND_HDA_CODEC_VIA=m
CONFIG_SND_HDA_CODEC_HDMI=m
CONFIG_SND_HDA_CODEC_CIRRUS=m
CONFIG_SND_HDA_CODEC_CONEXANT=m
CONFIG_SND_HDA_CODEC_CA0110=m
CONFIG_SND_HDA_CODEC_CA0132=m
CONFIG_SND_HDA_CODEC_CA0132_DSP=y
CONFIG_SND_HDA_CODEC_CMEDIA=m
CONFIG_SND_HDA_CODEC_SI3054=m
CONFIG_SND_HDA_GENERIC=m
CONFIG_SND_HDA_POWER_SAVE_DEFAULT=0
CONFIG_SND_HDA_CORE=m
CONFIG_SND_HDA_DSP_LOADER=y
CONFIG_SND_HDA_I915=y
CONFIG_SND_HDA_PREALLOC_SIZE=64
CONFIG_SND_SPI=y
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_USB_HIFACE=m
CONFIG_SND_BCD2000=m
CONFIG_SND_USB_LINE6=m
CONFIG_SND_USB_POD=m
CONFIG_SND_USB_PODHD=m
CONFIG_SND_USB_TONEPORT=m
CONFIG_SND_USB_VARIAX=m
CONFIG_SND_FIREWIRE=y
CONFIG_SND_FIREWIRE_LIB=m
CONFIG_SND_DICE=m
CONFIG_SND_OXFW=m
CONFIG_SND_ISIGHT=m
CONFIG_SND_FIREWORKS=m
CONFIG_SND_BEBOB=m
CONFIG_SND_FIREWIRE_DIGI00X=m
CONFIG_SND_FIREWIRE_TASCAM=m
# CONFIG_SND_FIREWIRE_MOTU is not set
# CONFIG_SND_FIREFACE is not set
CONFIG_SND_PCMCIA=y
CONFIG_SND_VXPOCKET=m
CONFIG_SND_PDAUDIOCF=m
CONFIG_SND_SOC=m
# CONFIG_SND_SOC_AMD_ACP is not set
# CONFIG_SND_ATMEL_SOC is not set
# CONFIG_SND_DESIGNWARE_I2S is not set

#
# SoC Audio for Freescale CPUs
#

#
# Common SoC Audio options for Freescale CPUs:
#
# CONFIG_SND_SOC_FSL_ASRC is not set
# CONFIG_SND_SOC_FSL_SAI is not set
# CONFIG_SND_SOC_FSL_SSI is not set
# CONFIG_SND_SOC_FSL_SPDIF is not set
# CONFIG_SND_SOC_FSL_ESAI is not set
# CONFIG_SND_SOC_IMX_AUDMUX is not set
# CONFIG_SND_I2S_HI6210_I2S is not set
# CONFIG_SND_SOC_IMG is not set
# CONFIG_SND_SOC_INTEL_SST_TOPLEVEL is not set

#
# STMicroelectronics STM32 SOC audio support
#
# CONFIG_SND_SOC_XTFPGA_I2S is not set
# CONFIG_ZX_TDM is not set
CONFIG_SND_SOC_I2C_AND_SPI=m

#
# CODEC drivers
#
# CONFIG_SND_SOC_AC97_CODEC is not set
# CONFIG_SND_SOC_ADAU1701 is not set
# CONFIG_SND_SOC_ADAU1761_I2C is not set
# CONFIG_SND_SOC_ADAU1761_SPI is not set
# CONFIG_SND_SOC_ADAU7002 is not set
# CONFIG_SND_SOC_AK4104 is not set
# CONFIG_SND_SOC_AK4458 is not set
# CONFIG_SND_SOC_AK4554 is not set
# CONFIG_SND_SOC_AK4613 is not set
# CONFIG_SND_SOC_AK4642 is not set
# CONFIG_SND_SOC_AK5386 is not set
# CONFIG_SND_SOC_AK5558 is not set
# CONFIG_SND_SOC_ALC5623 is not set
# CONFIG_SND_SOC_BD28623 is not set
# CONFIG_SND_SOC_BT_SCO is not set
# CONFIG_SND_SOC_CS35L32 is not set
# CONFIG_SND_SOC_CS35L33 is not set
# CONFIG_SND_SOC_CS35L34 is not set
# CONFIG_SND_SOC_CS35L35 is not set
# CONFIG_SND_SOC_CS42L42 is not set
# CONFIG_SND_SOC_CS42L51_I2C is not set
# CONFIG_SND_SOC_CS42L52 is not set
# CONFIG_SND_SOC_CS42L56 is not set
# CONFIG_SND_SOC_CS42L73 is not set
# CONFIG_SND_SOC_CS4265 is not set
# CONFIG_SND_SOC_CS4270 is not set
# CONFIG_SND_SOC_CS4271_I2C is not set
# CONFIG_SND_SOC_CS4271_SPI is not set
# CONFIG_SND_SOC_CS42XX8_I2C is not set
# CONFIG_SND_SOC_CS43130 is not set
# CONFIG_SND_SOC_CS4349 is not set
# CONFIG_SND_SOC_CS53L30 is not set
# CONFIG_SND_SOC_DIO2125 is not set
# CONFIG_SND_SOC_ES7134 is not set
# CONFIG_SND_SOC_ES8316 is not set
# CONFIG_SND_SOC_ES8328_I2C is not set
# CONFIG_SND_SOC_ES8328_SPI is not set
# CONFIG_SND_SOC_GTM601 is not set
# CONFIG_SND_SOC_INNO_RK3036 is not set
# CONFIG_SND_SOC_MAX98504 is not set
# CONFIG_SND_SOC_MAX9867 is not set
# CONFIG_SND_SOC_MAX98927 is not set
# CONFIG_SND_SOC_MAX98373 is not set
# CONFIG_SND_SOC_MAX9860 is not set
# CONFIG_SND_SOC_MSM8916_WCD_DIGITAL is not set
# CONFIG_SND_SOC_PCM1681 is not set
# CONFIG_SND_SOC_PCM1789_I2C is not set
# CONFIG_SND_SOC_PCM179X_I2C is not set
# CONFIG_SND_SOC_PCM179X_SPI is not set
# CONFIG_SND_SOC_PCM186X_I2C is not set
# CONFIG_SND_SOC_PCM186X_SPI is not set
# CONFIG_SND_SOC_PCM3168A_I2C is not set
# CONFIG_SND_SOC_PCM3168A_SPI is not set
# CONFIG_SND_SOC_PCM512x_I2C is not set
# CONFIG_SND_SOC_PCM512x_SPI is not set
# CONFIG_SND_SOC_RT5616 is not set
# CONFIG_SND_SOC_RT5631 is not set
# CONFIG_SND_SOC_SGTL5000 is not set
# CONFIG_SND_SOC_SIRF_AUDIO_CODEC is not set
# CONFIG_SND_SOC_SPDIF is not set
# CONFIG_SND_SOC_SSM2602_SPI is not set
# CONFIG_SND_SOC_SSM2602_I2C is not set
CONFIG_SND_SOC_SSM4567=m
# CONFIG_SND_SOC_STA32X is not set
# CONFIG_SND_SOC_STA350 is not set
# CONFIG_SND_SOC_STI_SAS is not set
# CONFIG_SND_SOC_TAS2552 is not set
# CONFIG_SND_SOC_TAS5086 is not set
# CONFIG_SND_SOC_TAS571X is not set
# CONFIG_SND_SOC_TAS5720 is not set
# CONFIG_SND_SOC_TAS6424 is not set
# CONFIG_SND_SOC_TDA7419 is not set
# CONFIG_SND_SOC_TFA9879 is not set
# CONFIG_SND_SOC_TLV320AIC23_I2C is not set
# CONFIG_SND_SOC_TLV320AIC23_SPI is not set
# CONFIG_SND_SOC_TLV320AIC31XX is not set
# CONFIG_SND_SOC_TLV320AIC32X4_I2C is not set
# CONFIG_SND_SOC_TLV320AIC32X4_SPI is not set
# CONFIG_SND_SOC_TLV320AIC3X is not set
CONFIG_SND_SOC_TS3A227E=m
# CONFIG_SND_SOC_TSCS42XX is not set
# CONFIG_SND_SOC_WM8510 is not set
# CONFIG_SND_SOC_WM8523 is not set
# CONFIG_SND_SOC_WM8524 is not set
# CONFIG_SND_SOC_WM8580 is not set
# CONFIG_SND_SOC_WM8711 is not set
# CONFIG_SND_SOC_WM8728 is not set
# CONFIG_SND_SOC_WM8731 is not set
# CONFIG_SND_SOC_WM8737 is not set
# CONFIG_SND_SOC_WM8741 is not set
# CONFIG_SND_SOC_WM8750 is not set
# CONFIG_SND_SOC_WM8753 is not set
# CONFIG_SND_SOC_WM8770 is not set
# CONFIG_SND_SOC_WM8776 is not set
# CONFIG_SND_SOC_WM8804_I2C is not set
# CONFIG_SND_SOC_WM8804_SPI is not set
# CONFIG_SND_SOC_WM8903 is not set
# CONFIG_SND_SOC_WM8960 is not set
# CONFIG_SND_SOC_WM8962 is not set
# CONFIG_SND_SOC_WM8974 is not set
# CONFIG_SND_SOC_WM8978 is not set
# CONFIG_SND_SOC_WM8985 is not set
# CONFIG_SND_SOC_ZX_AUD96P22 is not set
# CONFIG_SND_SOC_MAX9759 is not set
# CONFIG_SND_SOC_NAU8540 is not set
# CONFIG_SND_SOC_NAU8810 is not set
# CONFIG_SND_SOC_NAU8824 is not set
# CONFIG_SND_SOC_TPA6130A2 is not set
# CONFIG_SND_SIMPLE_CARD is not set
CONFIG_SND_X86=y
# CONFIG_HDMI_LPE_AUDIO is not set
CONFIG_SND_SYNTH_EMUX=m
CONFIG_AC97_BUS=m

#
# HID support
#
CONFIG_HID=m
CONFIG_HID_BATTERY_STRENGTH=y
CONFIG_HIDRAW=y
CONFIG_UHID=m
CONFIG_HID_GENERIC=m

#
# Special HID drivers
#
CONFIG_HID_A4TECH=m
# CONFIG_HID_ACCUTOUCH is not set
CONFIG_HID_ACRUX=m
CONFIG_HID_ACRUX_FF=y
CONFIG_HID_APPLE=m
CONFIG_HID_APPLEIR=m
CONFIG_HID_ASUS=m
CONFIG_HID_AUREAL=m
CONFIG_HID_BELKIN=m
CONFIG_HID_BETOP_FF=m
CONFIG_HID_CHERRY=m
CONFIG_HID_CHICONY=m
CONFIG_HID_CORSAIR=m
CONFIG_HID_PRODIKEYS=m
CONFIG_HID_CMEDIA=m
CONFIG_HID_CP2112=m
CONFIG_HID_CYPRESS=m
CONFIG_HID_DRAGONRISE=m
CONFIG_DRAGONRISE_FF=y
CONFIG_HID_EMS_FF=m
# CONFIG_HID_ELAN is not set
CONFIG_HID_ELECOM=m
CONFIG_HID_ELO=m
CONFIG_HID_EZKEY=m
CONFIG_HID_GEMBIRD=m
# CONFIG_HID_GFRM is not set
CONFIG_HID_HOLTEK=m
CONFIG_HOLTEK_FF=y
# CONFIG_HID_GOOGLE_HAMMER is not set
# CONFIG_HID_GT683R 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_ICADE=m
# CONFIG_HID_ITE is not set
# CONFIG_HID_JABRA is not set
CONFIG_HID_TWINHAN=m
CONFIG_HID_KENSINGTON=m
CONFIG_HID_LCPOWER=m
CONFIG_HID_LED=m
CONFIG_HID_LENOVO=m
CONFIG_HID_LOGITECH=m
CONFIG_HID_LOGITECH_DJ=m
CONFIG_HID_LOGITECH_HIDPP=m
CONFIG_LOGITECH_FF=y
CONFIG_LOGIRUMBLEPAD2_FF=y
CONFIG_LOGIG940_FF=y
CONFIG_LOGIWHEELS_FF=y
CONFIG_HID_MAGICMOUSE=m
# CONFIG_HID_MAYFLASH is not set
CONFIG_HID_MICROSOFT=m
CONFIG_HID_MONTEREY=m
CONFIG_HID_MULTITOUCH=m
# CONFIG_HID_NTI is not set
CONFIG_HID_NTRIG=m
CONFIG_HID_ORTEK=m
CONFIG_HID_PANTHERLORD=m
CONFIG_PANTHERLORD_FF=y
CONFIG_HID_PENMOUNT=m
CONFIG_HID_PETALYNX=m
CONFIG_HID_PICOLCD=m
CONFIG_HID_PICOLCD_FB=y
CONFIG_HID_PICOLCD_BACKLIGHT=y
CONFIG_HID_PICOLCD_LEDS=y
CONFIG_HID_PICOLCD_CIR=y
CONFIG_HID_PLANTRONICS=m
CONFIG_HID_PRIMAX=m
# CONFIG_HID_RETRODE is not set
CONFIG_HID_ROCCAT=m
CONFIG_HID_SAITEK=m
CONFIG_HID_SAMSUNG=m
CONFIG_HID_SONY=m
CONFIG_SONY_FF=y
CONFIG_HID_SPEEDLINK=m
CONFIG_HID_STEELSERIES=m
CONFIG_HID_SUNPLUS=m
CONFIG_HID_RMI=m
CONFIG_HID_GREENASIA=m
CONFIG_GREENASIA_FF=y
CONFIG_HID_HYPERV_MOUSE=m
CONFIG_HID_SMARTJOYPLUS=m
CONFIG_SMARTJOYPLUS_FF=y
CONFIG_HID_TIVO=m
CONFIG_HID_TOPSEED=m
CONFIG_HID_THINGM=m
CONFIG_HID_THRUSTMASTER=m
CONFIG_THRUSTMASTER_FF=y
# CONFIG_HID_UDRAW_PS3 is not set
CONFIG_HID_WACOM=m
CONFIG_HID_WIIMOTE=m
CONFIG_HID_XINMO=m
CONFIG_HID_ZEROPLUS=m
CONFIG_ZEROPLUS_FF=y
CONFIG_HID_ZYDACRON=m
CONFIG_HID_SENSOR_HUB=m
# CONFIG_HID_SENSOR_CUSTOM_SENSOR is not set
CONFIG_HID_ALPS=m

#
# USB HID support
#
CONFIG_USB_HID=m
CONFIG_HID_PID=y
CONFIG_USB_HIDDEV=y

#
# USB HID Boot Protocol drivers
#
# CONFIG_USB_KBD is not set
# CONFIG_USB_MOUSE is not set

#
# I2C HID support
#
CONFIG_I2C_HID=m
CONFIG_USB_OHCI_LITTLE_ENDIAN=y
CONFIG_USB_SUPPORT=y
CONFIG_USB_COMMON=y
CONFIG_USB_ARCH_HAS_HCD=y
CONFIG_USB=m
CONFIG_USB_PCI=y
CONFIG_USB_ANNOUNCE_NEW_DEVICES=y

#
# Miscellaneous USB options
#
CONFIG_USB_DEFAULT_PERSIST=y
CONFIG_USB_DYNAMIC_MINORS=y
# CONFIG_USB_OTG is not set
# CONFIG_USB_OTG_WHITELIST is not set
# CONFIG_USB_OTG_BLACKLIST_HUB is not set
# CONFIG_USB_LEDS_TRIGGER_USBPORT is not set
CONFIG_USB_MON=m
CONFIG_USB_WUSB_CBAF=m
# CONFIG_USB_WUSB_CBAF_DEBUG is not set

#
# USB Host Controller Drivers
#
# CONFIG_USB_C67X00_HCD is not set
CONFIG_USB_XHCI_HCD=m
# CONFIG_USB_XHCI_DBGCAP is not set
CONFIG_USB_XHCI_PCI=m
# CONFIG_USB_XHCI_PLATFORM is not set
CONFIG_USB_EHCI_HCD=m
CONFIG_USB_EHCI_ROOT_HUB_TT=y
CONFIG_USB_EHCI_TT_NEWSCHED=y
CONFIG_USB_EHCI_PCI=m
# CONFIG_USB_EHCI_HCD_PLATFORM is not set
# CONFIG_USB_OXU210HP_HCD is not set
# CONFIG_USB_ISP116X_HCD is not set
# CONFIG_USB_FOTG210_HCD is not set
# CONFIG_USB_MAX3421_HCD is not set
CONFIG_USB_OHCI_HCD=m
CONFIG_USB_OHCI_HCD_PCI=m
# CONFIG_USB_OHCI_HCD_SSB is not set
# CONFIG_USB_OHCI_HCD_PLATFORM is not set
CONFIG_USB_UHCI_HCD=m
CONFIG_USB_U132_HCD=m
CONFIG_USB_SL811_HCD=m
# CONFIG_USB_SL811_HCD_ISO is not set
CONFIG_USB_SL811_CS=m
# CONFIG_USB_R8A66597_HCD is not set
# CONFIG_USB_HCD_BCMA is not set
# CONFIG_USB_HCD_SSB is not set
# CONFIG_USB_HCD_TEST_MODE is not set

#
# 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=m
# CONFIG_USB_STORAGE_DEBUG is not set
CONFIG_USB_STORAGE_REALTEK=m
CONFIG_REALTEK_AUTOPM=y
CONFIG_USB_STORAGE_DATAFAB=m
CONFIG_USB_STORAGE_FREECOM=m
CONFIG_USB_STORAGE_ISD200=m
CONFIG_USB_STORAGE_USBAT=m
CONFIG_USB_STORAGE_SDDR09=m
CONFIG_USB_STORAGE_SDDR55=m
CONFIG_USB_STORAGE_JUMPSHOT=m
CONFIG_USB_STORAGE_ALAUDA=m
CONFIG_USB_STORAGE_ONETOUCH=m
CONFIG_USB_STORAGE_KARMA=m
CONFIG_USB_STORAGE_CYPRESS_ATACB=m
CONFIG_USB_STORAGE_ENE_UB6250=m
CONFIG_USB_UAS=m

#
# USB Imaging devices
#
CONFIG_USB_MDC800=m
CONFIG_USB_MICROTEK=m
CONFIG_USBIP_CORE=m
CONFIG_USBIP_VHCI_HCD=m
CONFIG_USBIP_VHCI_HC_PORTS=8
CONFIG_USBIP_VHCI_NR_HCS=1
CONFIG_USBIP_HOST=m
# CONFIG_USBIP_VUDC is not set
# CONFIG_USBIP_DEBUG is not set
# CONFIG_USB_MUSB_HDRC is not set
# CONFIG_USB_DWC3 is not set
# CONFIG_USB_DWC2 is not set
# CONFIG_USB_CHIPIDEA is not set
# CONFIG_USB_ISP1760 is not set

#
# USB port drivers
#
CONFIG_USB_SERIAL=m
CONFIG_USB_SERIAL_GENERIC=y
CONFIG_USB_SERIAL_SIMPLE=m
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_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_F81232=m
# CONFIG_USB_SERIAL_F8153X is not set
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_METRO=m
CONFIG_USB_SERIAL_MOS7720=m
CONFIG_USB_SERIAL_MOS7840=m
CONFIG_USB_SERIAL_MXUPORT=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_SAFE=m
# CONFIG_USB_SERIAL_SAFE_PADDED is not set
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_XSENS_MT=m
CONFIG_USB_SERIAL_WISHBONE=m
CONFIG_USB_SERIAL_SSU100=m
CONFIG_USB_SERIAL_QT2=m
# CONFIG_USB_SERIAL_UPD78F0730 is not set
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_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_EHSET_TEST_FIXTURE=m
CONFIG_USB_ISIGHTFW=m
CONFIG_USB_YUREX=m
CONFIG_USB_EZUSB_FX2=m
# CONFIG_USB_HUB_USB251XB is not set
# CONFIG_USB_HSIC_USB3503 is not set
# CONFIG_USB_HSIC_USB4604 is not set
# CONFIG_USB_LINK_LAYER_TEST is not set
CONFIG_USB_CHAOSKEY=m
CONFIG_USB_ATM=m
CONFIG_USB_SPEEDTOUCH=m
CONFIG_USB_CXACRU=m
CONFIG_USB_UEAGLEATM=m
CONFIG_USB_XUSBATM=m

#
# USB Physical Layer drivers
#
# CONFIG_NOP_USB_XCEIV is not set
# CONFIG_USB_GPIO_VBUS is not set
# CONFIG_USB_ISP1301 is not set
CONFIG_USB_GADGET=m
# CONFIG_USB_GADGET_DEBUG is not set
# CONFIG_USB_GADGET_DEBUG_FILES is not set
# CONFIG_USB_GADGET_DEBUG_FS is not set
CONFIG_USB_GADGET_VBUS_DRAW=2
CONFIG_USB_GADGET_STORAGE_NUM_BUFFERS=2
# CONFIG_U_SERIAL_CONSOLE is not set

#
# USB Peripheral Controller
#
# CONFIG_USB_FUSB300 is not set
# CONFIG_USB_FOTG210_UDC is not set
# CONFIG_USB_GR_UDC is not set
# CONFIG_USB_R8A66597 is not set
# CONFIG_USB_PXA27X is not set
# CONFIG_USB_MV_UDC is not set
# CONFIG_USB_MV_U3D is not set
# CONFIG_USB_M66592 is not set
# CONFIG_USB_BDC_UDC is not set
# CONFIG_USB_AMD5536UDC is not set
# CONFIG_USB_NET2272 is not set
CONFIG_USB_NET2280=m
# CONFIG_USB_GOKU is not set
CONFIG_USB_EG20T=m
# CONFIG_USB_DUMMY_HCD is not set
CONFIG_USB_LIBCOMPOSITE=m
CONFIG_USB_F_ACM=m
CONFIG_USB_F_SS_LB=m
CONFIG_USB_U_SERIAL=m
CONFIG_USB_U_ETHER=m
CONFIG_USB_U_AUDIO=m
CONFIG_USB_F_SERIAL=m
CONFIG_USB_F_OBEX=m
CONFIG_USB_F_NCM=m
CONFIG_USB_F_ECM=m
CONFIG_USB_F_PHONET=m
CONFIG_USB_F_EEM=m
CONFIG_USB_F_SUBSET=m
CONFIG_USB_F_RNDIS=m
CONFIG_USB_F_MASS_STORAGE=m
CONFIG_USB_F_FS=m
CONFIG_USB_F_UAC1=m
CONFIG_USB_F_UAC2=m
CONFIG_USB_F_UVC=m
CONFIG_USB_F_MIDI=m
CONFIG_USB_F_HID=m
CONFIG_USB_F_PRINTER=m
CONFIG_USB_CONFIGFS=m
CONFIG_USB_CONFIGFS_SERIAL=y
CONFIG_USB_CONFIGFS_ACM=y
CONFIG_USB_CONFIGFS_OBEX=y
CONFIG_USB_CONFIGFS_NCM=y
CONFIG_USB_CONFIGFS_ECM=y
CONFIG_USB_CONFIGFS_ECM_SUBSET=y
CONFIG_USB_CONFIGFS_RNDIS=y
CONFIG_USB_CONFIGFS_EEM=y
CONFIG_USB_CONFIGFS_PHONET=y
CONFIG_USB_CONFIGFS_MASS_STORAGE=y
CONFIG_USB_CONFIGFS_F_LB_SS=y
CONFIG_USB_CONFIGFS_F_FS=y
CONFIG_USB_CONFIGFS_F_UAC1=y
# CONFIG_USB_CONFIGFS_F_UAC1_LEGACY is not set
CONFIG_USB_CONFIGFS_F_UAC2=y
CONFIG_USB_CONFIGFS_F_MIDI=y
CONFIG_USB_CONFIGFS_F_HID=y
CONFIG_USB_CONFIGFS_F_UVC=y
CONFIG_USB_CONFIGFS_F_PRINTER=y
# CONFIG_USB_CONFIGFS_F_TCM is not set
CONFIG_TYPEC=y
# CONFIG_TYPEC_TCPM is not set
# CONFIG_TYPEC_UCSI is not set
# CONFIG_TYPEC_TPS6598X is not set

#
# USB Type-C Multiplexer/DeMultiplexer Switch support
#
# CONFIG_TYPEC_MUX_PI3USB30532 is not set
CONFIG_USB_LED_TRIG=y
# CONFIG_USB_ULPI_BUS is not set
# CONFIG_UWB is not set
CONFIG_MMC=m
CONFIG_MMC_BLOCK=m
CONFIG_MMC_BLOCK_MINORS=256
CONFIG_SDIO_UART=m
# CONFIG_MMC_TEST is not set

#
# MMC/SD/SDIO Host Controller Drivers
#
# CONFIG_MMC_DEBUG is not set
CONFIG_MMC_SDHCI=m
CONFIG_MMC_SDHCI_PCI=m
CONFIG_MMC_RICOH_MMC=y
CONFIG_MMC_SDHCI_ACPI=m
# CONFIG_MMC_SDHCI_PLTFM is not set
CONFIG_MMC_WBSD=m
CONFIG_MMC_TIFM_SD=m
# CONFIG_MMC_SPI is not set
CONFIG_MMC_SDRICOH_CS=m
CONFIG_MMC_CB710=m
CONFIG_MMC_VIA_SDMMC=m
CONFIG_MMC_VUB300=m
CONFIG_MMC_USHC=m
# CONFIG_MMC_USDHI6ROL0 is not set
CONFIG_MMC_CQHCI=m
CONFIG_MMC_TOSHIBA_PCI=m
# CONFIG_MMC_MTK is not set
# CONFIG_MEMSTICK is not set
CONFIG_NEW_LEDS=y
CONFIG_LEDS_CLASS=y
# CONFIG_LEDS_CLASS_FLASH is not set
# CONFIG_LEDS_BRIGHTNESS_HW_CHANGED is not set

#
# LED drivers
#
# CONFIG_LEDS_APU is not set
# CONFIG_LEDS_LM3530 is not set
# CONFIG_LEDS_LM3642 is not set
# CONFIG_LEDS_PCA9532 is not set
# CONFIG_LEDS_GPIO is not set
CONFIG_LEDS_LP3944=m
# CONFIG_LEDS_LP3952 is not set
# CONFIG_LEDS_LP5521 is not set
# CONFIG_LEDS_LP5523 is not set
# CONFIG_LEDS_LP5562 is not set
# CONFIG_LEDS_LP8501 is not set
CONFIG_LEDS_CLEVO_MAIL=m
CONFIG_LEDS_PCA955X=m
# CONFIG_LEDS_PCA955X_GPIO is not set
# CONFIG_LEDS_PCA963X is not set
CONFIG_LEDS_DAC124S085=m
CONFIG_LEDS_BD2802=m
CONFIG_LEDS_INTEL_SS4200=m
CONFIG_LEDS_LT3593=m
# CONFIG_LEDS_TCA6507 is not set
# CONFIG_LEDS_TLC591XX is not set
# CONFIG_LEDS_LM355x is not set
# CONFIG_LEDS_OT200 is not set
CONFIG_LEDS_MENF21BMC=m

#
# LED driver for blink(1) USB RGB LED is under Special HID drivers (HID_THINGM)
#
# CONFIG_LEDS_BLINKM is not set
# CONFIG_LEDS_MLXCPLD is not set
# CONFIG_LEDS_MLXREG is not set
# CONFIG_LEDS_USER is not set
# CONFIG_LEDS_NIC78BX is not set

#
# LED Triggers
#
CONFIG_LEDS_TRIGGERS=y
CONFIG_LEDS_TRIGGER_TIMER=m
CONFIG_LEDS_TRIGGER_ONESHOT=m
# CONFIG_LEDS_TRIGGER_DISK is not set
# CONFIG_LEDS_TRIGGER_MTD is not set
CONFIG_LEDS_TRIGGER_HEARTBEAT=m
CONFIG_LEDS_TRIGGER_BACKLIGHT=m
CONFIG_LEDS_TRIGGER_CPU=y
# CONFIG_LEDS_TRIGGER_ACTIVITY is not set
CONFIG_LEDS_TRIGGER_GPIO=m
CONFIG_LEDS_TRIGGER_DEFAULT_ON=m

#
# iptables trigger is under Netfilter config (LED target)
#
CONFIG_LEDS_TRIGGER_TRANSIENT=m
CONFIG_LEDS_TRIGGER_CAMERA=m
# CONFIG_LEDS_TRIGGER_PANIC is not set
# CONFIG_LEDS_TRIGGER_NETDEV is not set
CONFIG_ACCESSIBILITY=y
CONFIG_A11Y_BRAILLE_CONSOLE=y
# CONFIG_INFINIBAND is not set
CONFIG_EDAC_ATOMIC_SCRUB=y
CONFIG_EDAC_SUPPORT=y
CONFIG_EDAC=y
CONFIG_EDAC_LEGACY_SYSFS=y
# CONFIG_EDAC_DEBUG is not set
CONFIG_EDAC_DECODE_MCE=m
# CONFIG_EDAC_GHES is not set
CONFIG_EDAC_AMD64=m
# CONFIG_EDAC_AMD64_ERROR_INJECTION is not set
# CONFIG_EDAC_AMD76X is not set
# CONFIG_EDAC_E7XXX is not set
CONFIG_EDAC_E752X=m
# CONFIG_EDAC_I82875P is not set
CONFIG_EDAC_I82975X=m
CONFIG_EDAC_I3000=m
CONFIG_EDAC_I3200=m
CONFIG_EDAC_IE31200=m
CONFIG_EDAC_X38=m
CONFIG_EDAC_I5400=m
CONFIG_EDAC_I7CORE=m
# CONFIG_EDAC_I82860 is not set
# CONFIG_EDAC_R82600 is not set
CONFIG_EDAC_I5000=m
CONFIG_EDAC_I5100=m
CONFIG_EDAC_I7300=m
CONFIG_RTC_LIB=y
CONFIG_RTC_MC146818_LIB=y
CONFIG_RTC_CLASS=y
CONFIG_RTC_HCTOSYS=y
CONFIG_RTC_HCTOSYS_DEVICE="rtc0"
CONFIG_RTC_SYSTOHC=y
CONFIG_RTC_SYSTOHC_DEVICE="rtc0"
# CONFIG_RTC_DEBUG is not set
CONFIG_RTC_NVMEM=y

#
# RTC interfaces
#
CONFIG_RTC_INTF_SYSFS=y
CONFIG_RTC_INTF_PROC=y
CONFIG_RTC_INTF_DEV=y
# CONFIG_RTC_INTF_DEV_UIE_EMUL is not set
# CONFIG_RTC_DRV_TEST is not set

#
# I2C RTC drivers
#
# CONFIG_RTC_DRV_ABB5ZES3 is not set
# CONFIG_RTC_DRV_ABX80X is not set
# CONFIG_RTC_DRV_DS1307 is not set
# CONFIG_RTC_DRV_DS1374 is not set
# CONFIG_RTC_DRV_DS1672 is not set
# CONFIG_RTC_DRV_MAX6900 is not set
# CONFIG_RTC_DRV_RS5C372 is not set
# CONFIG_RTC_DRV_ISL1208 is not set
# CONFIG_RTC_DRV_ISL12022 is not set
# CONFIG_RTC_DRV_X1205 is not set
# CONFIG_RTC_DRV_PCF8523 is not set
# CONFIG_RTC_DRV_PCF85063 is not set
# CONFIG_RTC_DRV_PCF85363 is not set
# CONFIG_RTC_DRV_PCF8563 is not set
# CONFIG_RTC_DRV_PCF8583 is not set
# CONFIG_RTC_DRV_M41T80 is not set
# CONFIG_RTC_DRV_BQ32K is not set
# CONFIG_RTC_DRV_S35390A is not set
# CONFIG_RTC_DRV_FM3130 is not set
# CONFIG_RTC_DRV_RX8010 is not set
# CONFIG_RTC_DRV_RX8581 is not set
# CONFIG_RTC_DRV_RX8025 is not set
# CONFIG_RTC_DRV_EM3027 is not set
# CONFIG_RTC_DRV_RV8803 is not set

#
# SPI RTC drivers
#
# CONFIG_RTC_DRV_M41T93 is not set
# CONFIG_RTC_DRV_M41T94 is not set
# CONFIG_RTC_DRV_DS1302 is not set
# CONFIG_RTC_DRV_DS1305 is not set
# CONFIG_RTC_DRV_DS1343 is not set
# CONFIG_RTC_DRV_DS1347 is not set
# CONFIG_RTC_DRV_DS1390 is not set
# CONFIG_RTC_DRV_MAX6916 is not set
# CONFIG_RTC_DRV_R9701 is not set
# CONFIG_RTC_DRV_RX4581 is not set
# CONFIG_RTC_DRV_RX6110 is not set
# CONFIG_RTC_DRV_RS5C348 is not set
# CONFIG_RTC_DRV_MAX6902 is not set
# CONFIG_RTC_DRV_PCF2123 is not set
# CONFIG_RTC_DRV_MCP795 is not set
CONFIG_RTC_I2C_AND_SPI=y

#
# SPI and I2C RTC drivers
#
# CONFIG_RTC_DRV_DS3232 is not set
# CONFIG_RTC_DRV_PCF2127 is not set
# CONFIG_RTC_DRV_RV3029C2 is not set

#
# Platform RTC drivers
#
CONFIG_RTC_DRV_CMOS=y
# CONFIG_RTC_DRV_DS1286 is not set
# CONFIG_RTC_DRV_DS1511 is not set
# CONFIG_RTC_DRV_DS1553 is not set
# CONFIG_RTC_DRV_DS1685_FAMILY is not set
# CONFIG_RTC_DRV_DS1742 is not set
# CONFIG_RTC_DRV_DS2404 is not set
# CONFIG_RTC_DRV_STK17TA8 is not set
# CONFIG_RTC_DRV_M48T86 is not set
# CONFIG_RTC_DRV_M48T35 is not set
# CONFIG_RTC_DRV_M48T59 is not set
# CONFIG_RTC_DRV_MSM6242 is not set
# CONFIG_RTC_DRV_BQ4802 is not set
# CONFIG_RTC_DRV_RP5C01 is not set
# CONFIG_RTC_DRV_V3020 is not set

#
# on-CPU RTC drivers
#
# CONFIG_RTC_DRV_FTRTC010 is not set

#
# HID Sensor RTC drivers
#
# CONFIG_RTC_DRV_HID_SENSOR_TIME is not set
CONFIG_DMADEVICES=y
# CONFIG_DMADEVICES_DEBUG is not set

#
# DMA Devices
#
CONFIG_DMA_ENGINE=y
CONFIG_DMA_VIRTUAL_CHANNELS=m
CONFIG_DMA_ACPI=y
# CONFIG_ALTERA_MSGDMA is not set
CONFIG_INTEL_IDMA64=m
# CONFIG_PCH_DMA is not set
# CONFIG_QCOM_HIDMA_MGMT is not set
# CONFIG_QCOM_HIDMA is not set
CONFIG_DW_DMAC_CORE=m
CONFIG_DW_DMAC=m
# CONFIG_DW_DMAC_PCI is not set

#
# DMA Clients
#
CONFIG_ASYNC_TX_DMA=y
# CONFIG_DMATEST is not set

#
# DMABUF options
#
CONFIG_SYNC_FILE=y
# CONFIG_SW_SYNC is not set
# CONFIG_AUXDISPLAY is not set
CONFIG_UIO=m
CONFIG_UIO_CIF=m
# CONFIG_UIO_PDRV_GENIRQ is not set
# CONFIG_UIO_DMEM_GENIRQ is not set
CONFIG_UIO_AEC=m
CONFIG_UIO_SERCOS3=m
CONFIG_UIO_PCI_GENERIC=m
CONFIG_UIO_NETX=m
# CONFIG_UIO_PRUSS is not set
CONFIG_UIO_MF624=m
# CONFIG_UIO_HV_GENERIC is not set
CONFIG_VFIO_IOMMU_TYPE1=m
CONFIG_VFIO_VIRQFD=m
CONFIG_VFIO=m
# CONFIG_VFIO_NOIOMMU is not set
CONFIG_VFIO_PCI=m
CONFIG_VFIO_PCI_VGA=y
CONFIG_VFIO_PCI_MMAP=y
CONFIG_VFIO_PCI_INTX=y
CONFIG_VFIO_PCI_IGD=y
# CONFIG_VFIO_MDEV is not set
CONFIG_IRQ_BYPASS_MANAGER=m
CONFIG_VIRT_DRIVERS=y
# CONFIG_VBOXGUEST is not set
CONFIG_VIRTIO=m
CONFIG_VIRTIO_MENU=y
CONFIG_VIRTIO_PCI=m
CONFIG_VIRTIO_PCI_LEGACY=y
CONFIG_VIRTIO_BALLOON=m
CONFIG_VIRTIO_INPUT=m
# CONFIG_VIRTIO_MMIO is not set

#
# Microsoft Hyper-V guest support
#
CONFIG_HYPERV=m
CONFIG_HYPERV_UTILS=m
CONFIG_HYPERV_BALLOON=m
CONFIG_STAGING=y
# CONFIG_IPX is not set
# CONFIG_NCP_FS is not set
# CONFIG_PRISM2_USB is not set
# CONFIG_COMEDI is not set
CONFIG_RTL8192U=m
CONFIG_RTLLIB=m
CONFIG_RTLLIB_CRYPTO_CCMP=m
CONFIG_RTLLIB_CRYPTO_TKIP=m
CONFIG_RTLLIB_CRYPTO_WEP=m
CONFIG_RTL8192E=m
# CONFIG_RTL8723BS is not set
CONFIG_R8712U=m
CONFIG_R8188EU=m
CONFIG_88EU_AP_MODE=y
# CONFIG_R8822BE is not set
# CONFIG_RTS5208 is not set
# CONFIG_VT6655 is not set
# CONFIG_VT6656 is not set
# CONFIG_FB_SM750 is not set
# CONFIG_FB_XGI is not set

#
# Speakup console speech
#
CONFIG_SPEAKUP=m
CONFIG_SPEAKUP_SYNTH_ACNTSA=m
CONFIG_SPEAKUP_SYNTH_APOLLO=m
CONFIG_SPEAKUP_SYNTH_AUDPTR=m
CONFIG_SPEAKUP_SYNTH_BNS=m
CONFIG_SPEAKUP_SYNTH_DECTLK=m
CONFIG_SPEAKUP_SYNTH_DECEXT=m
CONFIG_SPEAKUP_SYNTH_LTLK=m
CONFIG_SPEAKUP_SYNTH_SOFT=m
CONFIG_SPEAKUP_SYNTH_SPKOUT=m
CONFIG_SPEAKUP_SYNTH_TXPRT=m
CONFIG_SPEAKUP_SYNTH_DUMMY=m
# CONFIG_STAGING_MEDIA is not set

#
# Android
#
# CONFIG_LTE_GDM724X is not set
# CONFIG_FIREWIRE_SERIAL is not set
# CONFIG_MTD_SPINAND_MT29F is not set
# CONFIG_LNET is not set
# CONFIG_DGNC is not set
# CONFIG_GS_FPGABOOT is not set
# CONFIG_UNISYSSPAR is not set
# CONFIG_FB_TFT is not set
# CONFIG_WILC1000_SDIO is not set
# CONFIG_WILC1000_SPI is not set
# CONFIG_MOST is not set
# CONFIG_KS7010 is not set
# CONFIG_GREYBUS is not set

#
# USB Power Delivery and Type-C drivers
#
# CONFIG_DRM_VBOXVIDEO is not set
# CONFIG_PI433 is not set
# CONFIG_MTK_MMC is not set
CONFIG_X86_PLATFORM_DEVICES=y
CONFIG_ACER_WMI=m
# CONFIG_ACER_WIRELESS is not set
CONFIG_ACERHDF=m
CONFIG_ALIENWARE_WMI=m
CONFIG_ASUS_LAPTOP=m
CONFIG_DELL_SMBIOS=m
# CONFIG_DELL_SMBIOS_WMI is not set
CONFIG_DELL_LAPTOP=m
CONFIG_DELL_WMI=m
CONFIG_DELL_WMI_DESCRIPTOR=m
CONFIG_DELL_WMI_AIO=m
# CONFIG_DELL_WMI_LED is not set
CONFIG_DELL_SMO8800=m
CONFIG_DELL_RBTN=m
CONFIG_FUJITSU_LAPTOP=m
CONFIG_FUJITSU_TABLET=m
CONFIG_AMILO_RFKILL=m
# CONFIG_GPD_POCKET_FAN is not set
# CONFIG_TC1100_WMI is not set
CONFIG_HP_ACCEL=m
CONFIG_HP_WIRELESS=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_SURFACE3_WMI is not set
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 is not set
CONFIG_EEEPC_LAPTOP=m
CONFIG_ASUS_WMI=m
CONFIG_ASUS_NB_WMI=m
CONFIG_EEEPC_WMI=m
CONFIG_ASUS_WIRELESS=m
CONFIG_ACPI_WMI=m
CONFIG_WMI_BMOF=m
# CONFIG_INTEL_WMI_THUNDERBOLT is not set
CONFIG_MSI_WMI=m
# CONFIG_PEAQ_WMI is not set
CONFIG_TOPSTAR_LAPTOP=m
CONFIG_TOSHIBA_BT_RFKILL=m
CONFIG_TOSHIBA_HAPS=m
# CONFIG_TOSHIBA_WMI is not set
CONFIG_ACPI_CMPC=m
# CONFIG_INTEL_INT0002_VGPIO is not set
# CONFIG_INTEL_HID_EVENT is not set
CONFIG_INTEL_VBTN=m
CONFIG_INTEL_IPS=m
# CONFIG_INTEL_PMC_CORE is not set
CONFIG_IBM_RTL=m
CONFIG_SAMSUNG_LAPTOP=m
CONFIG_MXM_WMI=m
CONFIG_INTEL_OAKTRAIL=m
CONFIG_SAMSUNG_Q10=m
CONFIG_APPLE_GMUX=m
CONFIG_INTEL_RST=m
CONFIG_INTEL_SMARTCONNECT=m
CONFIG_PVPANIC=m
CONFIG_INTEL_PMC_IPC=m
CONFIG_SURFACE_PRO3_BUTTON=m
# CONFIG_SURFACE_3_BUTTON is not set
# CONFIG_INTEL_PUNIT_IPC is not set
# CONFIG_MLX_PLATFORM is not set
CONFIG_PMC_ATOM=y
# CONFIG_CHROME_PLATFORMS is not set
# CONFIG_MELLANOX_PLATFORM is not set
CONFIG_CLKDEV_LOOKUP=y
CONFIG_HAVE_CLK_PREPARE=y
CONFIG_COMMON_CLK=y

#
# Common Clock Framework
#
# CONFIG_COMMON_CLK_SI5351 is not set
# CONFIG_COMMON_CLK_SI544 is not set
# CONFIG_COMMON_CLK_CDCE706 is not set
# CONFIG_COMMON_CLK_CS2000_CP is not set
# CONFIG_HWSPINLOCK is not set

#
# Clock Source drivers
#
CONFIG_CLKSRC_I8253=y
CONFIG_CLKEVT_I8253=y
CONFIG_I8253_LOCK=y
CONFIG_CLKBLD_I8253=y
CONFIG_MAILBOX=y
CONFIG_PCC=y
# CONFIG_ALTERA_MBOX is not set
CONFIG_IOMMU_API=y
CONFIG_IOMMU_SUPPORT=y

#
# Generic IOMMU Pagetable Support
#
CONFIG_IOMMU_IOVA=y
CONFIG_DMAR_TABLE=y
CONFIG_INTEL_IOMMU=y
CONFIG_INTEL_IOMMU_SVM=y
# CONFIG_INTEL_IOMMU_DEFAULT_ON is not set
CONFIG_INTEL_IOMMU_FLOPPY_WA=y

#
# Remoteproc drivers
#
# CONFIG_REMOTEPROC is not set

#
# Rpmsg drivers
#
# CONFIG_RPMSG_QCOM_GLINK_RPM is not set
# CONFIG_RPMSG_VIRTIO is not set
# CONFIG_SOUNDWIRE is not set

#
# SOC (System On Chip) specific Drivers
#

#
# Amlogic SoC drivers
#

#
# Broadcom SoC drivers
#

#
# i.MX SoC drivers
#

#
# Qualcomm SoC drivers
#
# CONFIG_SOC_TI is not set

#
# Xilinx SoC drivers
#
# CONFIG_XILINX_VCU is not set
CONFIG_PM_DEVFREQ=y

#
# DEVFREQ Governors
#
CONFIG_DEVFREQ_GOV_SIMPLE_ONDEMAND=m
# CONFIG_DEVFREQ_GOV_PERFORMANCE is not set
# CONFIG_DEVFREQ_GOV_POWERSAVE is not set
# CONFIG_DEVFREQ_GOV_USERSPACE is not set
# CONFIG_DEVFREQ_GOV_PASSIVE is not set

#
# DEVFREQ Drivers
#
# CONFIG_PM_DEVFREQ_EVENT is not set
# CONFIG_EXTCON is not set
# CONFIG_MEMORY is not set
# CONFIG_IIO is not set
# CONFIG_NTB is not set
# CONFIG_VME_BUS is not set
# CONFIG_PWM is not set

#
# IRQ chip support
#
CONFIG_ARM_GIC_MAX_NR=1
# CONFIG_IPACK_BUS is not set
# CONFIG_RESET_CONTROLLER is not set
# CONFIG_FMC is not set

#
# PHY Subsystem
#
CONFIG_GENERIC_PHY=y
# CONFIG_BCM_KONA_USB2_PHY is not set
# CONFIG_PHY_PXA_28NM_HSIC is not set
# CONFIG_PHY_PXA_28NM_USB2 is not set
CONFIG_POWERCAP=y
CONFIG_INTEL_RAPL=m
# CONFIG_MCB is not set

#
# Performance monitor support
#
CONFIG_RAS=y
# CONFIG_THUNDERBOLT is not set

#
# Android
#
# CONFIG_ANDROID is not set
CONFIG_DAX=y
CONFIG_DEV_DAX=m
CONFIG_NVMEM=y

#
# HW tracing support
#
# CONFIG_STM is not set
# CONFIG_INTEL_TH is not set
# CONFIG_FPGA is not set
CONFIG_PM_OPP=y
# CONFIG_SIOX is not set
# CONFIG_SLIMBUS is not set

#
# Firmware Drivers
#
# CONFIG_EDD is not set
CONFIG_FIRMWARE_MEMMAP=y
# CONFIG_DELL_RBU is not set
# CONFIG_DCDBAS is not set
CONFIG_DMIID=y
CONFIG_DMI_SYSFS=y
CONFIG_DMI_SCAN_MACHINE_NON_EFI_FALLBACK=y
# CONFIG_ISCSI_IBFT_FIND is not set
# CONFIG_FW_CFG_SYSFS is not set
CONFIG_GOOGLE_FIRMWARE=y
CONFIG_GOOGLE_COREBOOT_TABLE=y
CONFIG_GOOGLE_COREBOOT_TABLE_ACPI=y
CONFIG_GOOGLE_MEMCONSOLE=y
CONFIG_GOOGLE_MEMCONSOLE_X86_LEGACY=m
CONFIG_GOOGLE_MEMCONSOLE_COREBOOT=y
# CONFIG_GOOGLE_VPD is not set
CONFIG_UEFI_CPER=y

#
# Tegra firmware driver
#

#
# File systems
#
CONFIG_DCACHE_WORD_ACCESS=y
CONFIG_FS_IOMAP=y
# CONFIG_EXT2_FS is not set
# CONFIG_EXT3_FS is not set
CONFIG_EXT4_FS=m
CONFIG_EXT4_USE_FOR_EXT2=y
CONFIG_EXT4_FS_POSIX_ACL=y
CONFIG_EXT4_FS_SECURITY=y
CONFIG_EXT4_ENCRYPTION=y
CONFIG_EXT4_FS_ENCRYPTION=y
# CONFIG_EXT4_DEBUG is not set
CONFIG_JBD2=m
# CONFIG_JBD2_DEBUG is not set
CONFIG_FS_MBCACHE=m
CONFIG_REISERFS_FS=m
# 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=m
CONFIG_JFS_POSIX_ACL=y
CONFIG_JFS_SECURITY=y
# CONFIG_JFS_DEBUG is not set
# CONFIG_JFS_STATISTICS is not set
# CONFIG_XFS_FS is not set
# CONFIG_GFS2_FS is not set
CONFIG_OCFS2_FS=m
CONFIG_OCFS2_FS_O2CB=m
CONFIG_OCFS2_FS_USERSPACE_CLUSTER=m
CONFIG_OCFS2_FS_STATS=y
CONFIG_OCFS2_DEBUG_MASKLOG=y
# CONFIG_OCFS2_DEBUG_FS is not set
CONFIG_BTRFS_FS=m
CONFIG_BTRFS_FS_POSIX_ACL=y
# CONFIG_BTRFS_FS_CHECK_INTEGRITY is not set
# CONFIG_BTRFS_FS_RUN_SANITY_TESTS is not set
# CONFIG_BTRFS_DEBUG is not set
# CONFIG_BTRFS_ASSERT is not set
# CONFIG_BTRFS_FS_REF_VERIFY is not set
CONFIG_NILFS2_FS=m
CONFIG_F2FS_FS=m
CONFIG_F2FS_STAT_FS=y
CONFIG_F2FS_FS_XATTR=y
CONFIG_F2FS_FS_POSIX_ACL=y
CONFIG_F2FS_FS_SECURITY=y
# CONFIG_F2FS_CHECK_FS is not set
CONFIG_F2FS_FS_ENCRYPTION=y
# CONFIG_F2FS_IO_TRACE is not set
# CONFIG_F2FS_FAULT_INJECTION is not set
CONFIG_FS_DAX=y
CONFIG_FS_POSIX_ACL=y
CONFIG_EXPORTFS=y
CONFIG_EXPORTFS_BLOCK_OPS=y
CONFIG_FILE_LOCKING=y
CONFIG_MANDATORY_FILE_LOCKING=y
CONFIG_FS_ENCRYPTION=m
CONFIG_FSNOTIFY=y
CONFIG_DNOTIFY=y
CONFIG_INOTIFY_USER=y
CONFIG_FANOTIFY=y
CONFIG_FANOTIFY_ACCESS_PERMISSIONS=y
CONFIG_QUOTA=y
CONFIG_QUOTA_NETLINK_INTERFACE=y
CONFIG_PRINT_QUOTA_WARNING=y
# CONFIG_QUOTA_DEBUG is not set
CONFIG_QUOTA_TREE=m
CONFIG_QFMT_V1=m
CONFIG_QFMT_V2=m
CONFIG_QUOTACTL=y
CONFIG_AUTOFS4_FS=m
CONFIG_FUSE_FS=m
CONFIG_CUSE=m
CONFIG_OVERLAY_FS=m
# CONFIG_OVERLAY_FS_REDIRECT_DIR is not set
CONFIG_OVERLAY_FS_REDIRECT_ALWAYS_FOLLOW=y
# CONFIG_OVERLAY_FS_INDEX is not set
# CONFIG_OVERLAY_FS_XINO_AUTO is not set

#
# Caches
#
CONFIG_FSCACHE=m
CONFIG_FSCACHE_STATS=y
# 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=m
CONFIG_JOLIET=y
CONFIG_ZISOFS=y
CONFIG_UDF_FS=m
CONFIG_UDF_NLS=y

#
# DOS/FAT/NT Filesystems
#
CONFIG_FAT_FS=m
CONFIG_MSDOS_FS=m
CONFIG_VFAT_FS=m
CONFIG_FAT_DEFAULT_CODEPAGE=437
CONFIG_FAT_DEFAULT_IOCHARSET="ascii"
CONFIG_FAT_DEFAULT_UTF8=y
CONFIG_NTFS_FS=m
# CONFIG_NTFS_DEBUG is not set
# CONFIG_NTFS_RW is not set

#
# Pseudo filesystems
#
CONFIG_PROC_FS=y
CONFIG_PROC_KCORE=y
CONFIG_PROC_VMCORE=y
CONFIG_PROC_SYSCTL=y
CONFIG_PROC_PAGE_MONITOR=y
CONFIG_PROC_CHILDREN=y
CONFIG_KERNFS=y
CONFIG_SYSFS=y
CONFIG_TMPFS=y
CONFIG_TMPFS_POSIX_ACL=y
CONFIG_TMPFS_XATTR=y
CONFIG_HUGETLBFS=y
CONFIG_HUGETLB_PAGE=y
CONFIG_CONFIGFS_FS=m
CONFIG_MISC_FILESYSTEMS=y
# CONFIG_ORANGEFS_FS is not set
CONFIG_ADFS_FS=m
# CONFIG_ADFS_FS_RW is not set
CONFIG_AFFS_FS=m
CONFIG_ECRYPT_FS=m
CONFIG_ECRYPT_FS_MESSAGING=y
CONFIG_HFS_FS=m
CONFIG_HFSPLUS_FS=m
# CONFIG_HFSPLUS_FS_POSIX_ACL is not set
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=y
CONFIG_JFFS2_FS_XATTR=y
CONFIG_JFFS2_FS_POSIX_ACL=y
CONFIG_JFFS2_FS_SECURITY=y
CONFIG_JFFS2_COMPRESSION_OPTIONS=y
CONFIG_JFFS2_ZLIB=y
CONFIG_JFFS2_LZO=y
CONFIG_JFFS2_RTIME=y
# CONFIG_JFFS2_RUBIN is not set
# CONFIG_JFFS2_CMODE_NONE is not set
CONFIG_JFFS2_CMODE_PRIORITY=y
# CONFIG_JFFS2_CMODE_SIZE is not set
# CONFIG_JFFS2_CMODE_FAVOURLZO is not set
CONFIG_UBIFS_FS=m
CONFIG_UBIFS_FS_ADVANCED_COMPR=y
CONFIG_UBIFS_FS_LZO=y
CONFIG_UBIFS_FS_ZLIB=y
# CONFIG_UBIFS_ATIME_SUPPORT is not set
# CONFIG_UBIFS_FS_ENCRYPTION is not set
CONFIG_UBIFS_FS_SECURITY=y
# CONFIG_CRAMFS is not set
CONFIG_SQUASHFS=m
CONFIG_SQUASHFS_FILE_CACHE=y
# CONFIG_SQUASHFS_FILE_DIRECT is not set
CONFIG_SQUASHFS_DECOMP_SINGLE=y
# CONFIG_SQUASHFS_DECOMP_MULTI is not set
# CONFIG_SQUASHFS_DECOMP_MULTI_PERCPU is not set
CONFIG_SQUASHFS_XATTR=y
CONFIG_SQUASHFS_ZLIB=y
# CONFIG_SQUASHFS_LZ4 is not set
CONFIG_SQUASHFS_LZO=y
CONFIG_SQUASHFS_XZ=y
# CONFIG_SQUASHFS_ZSTD is not set
# CONFIG_SQUASHFS_4K_DEVBLK_SIZE is not set
# CONFIG_SQUASHFS_EMBEDDED is not set
CONFIG_SQUASHFS_FRAGMENT_CACHE_SIZE=3
CONFIG_VXFS_FS=m
CONFIG_MINIX_FS=m
CONFIG_OMFS_FS=m
# CONFIG_HPFS_FS is not set
CONFIG_QNX4FS_FS=m
CONFIG_QNX6FS_FS=m
# CONFIG_QNX6FS_DEBUG is not set
CONFIG_ROMFS_FS=m
# CONFIG_ROMFS_BACKED_BY_BLOCK is not set
# CONFIG_ROMFS_BACKED_BY_MTD is not set
CONFIG_ROMFS_BACKED_BY_BOTH=y
CONFIG_ROMFS_ON_BLOCK=y
CONFIG_ROMFS_ON_MTD=y
CONFIG_PSTORE=y
CONFIG_PSTORE_DEFLATE_COMPRESS=y
# CONFIG_PSTORE_LZO_COMPRESS is not set
# CONFIG_PSTORE_LZ4_COMPRESS is not set
# CONFIG_PSTORE_LZ4HC_COMPRESS is not set
# CONFIG_PSTORE_842_COMPRESS is not set
CONFIG_PSTORE_COMPRESS=y
CONFIG_PSTORE_DEFLATE_COMPRESS_DEFAULT=y
CONFIG_PSTORE_COMPRESS_DEFAULT="deflate"
# CONFIG_PSTORE_CONSOLE is not set
# CONFIG_PSTORE_PMSG is not set
# CONFIG_PSTORE_FTRACE is not set
CONFIG_PSTORE_RAM=m
CONFIG_SYSV_FS=m
CONFIG_UFS_FS=m
# CONFIG_UFS_FS_WRITE is not set
# CONFIG_UFS_DEBUG is not set
CONFIG_NETWORK_FILESYSTEMS=y
CONFIG_NFS_FS=m
CONFIG_NFS_V2=m
CONFIG_NFS_V3=m
CONFIG_NFS_V3_ACL=y
CONFIG_NFS_V4=m
CONFIG_NFS_SWAP=y
CONFIG_NFS_V4_1=y
CONFIG_NFS_V4_2=y
CONFIG_PNFS_FILE_LAYOUT=m
CONFIG_PNFS_BLOCK=m
CONFIG_PNFS_FLEXFILE_LAYOUT=m
CONFIG_NFS_V4_1_IMPLEMENTATION_ID_DOMAIN="kernel.org"
# CONFIG_NFS_V4_1_MIGRATION is not set
CONFIG_NFS_V4_SECURITY_LABEL=y
CONFIG_NFS_FSCACHE=y
# CONFIG_NFS_USE_LEGACY_DNS is not set
CONFIG_NFS_USE_KERNEL_DNS=y
CONFIG_NFS_DEBUG=y
CONFIG_NFSD=m
CONFIG_NFSD_V2_ACL=y
CONFIG_NFSD_V3=y
CONFIG_NFSD_V3_ACL=y
CONFIG_NFSD_V4=y
CONFIG_NFSD_PNFS=y
CONFIG_NFSD_BLOCKLAYOUT=y
# CONFIG_NFSD_SCSILAYOUT is not set
# CONFIG_NFSD_FLEXFILELAYOUT is not set
CONFIG_NFSD_V4_SECURITY_LABEL=y
# CONFIG_NFSD_FAULT_INJECTION is not set
CONFIG_GRACE_PERIOD=m
CONFIG_LOCKD=m
CONFIG_LOCKD_V4=y
CONFIG_NFS_ACL_SUPPORT=m
CONFIG_NFS_COMMON=y
CONFIG_SUNRPC=m
CONFIG_SUNRPC_GSS=m
CONFIG_SUNRPC_BACKCHANNEL=y
CONFIG_SUNRPC_SWAP=y
CONFIG_RPCSEC_GSS_KRB5=m
CONFIG_SUNRPC_DEBUG=y
CONFIG_CEPH_FS=m
CONFIG_CEPH_FSCACHE=y
CONFIG_CEPH_FS_POSIX_ACL=y
CONFIG_CIFS=m
# CONFIG_CIFS_STATS is not set
CONFIG_CIFS_WEAK_PW_HASH=y
CONFIG_CIFS_UPCALL=y
CONFIG_CIFS_XATTR=y
CONFIG_CIFS_POSIX=y
CONFIG_CIFS_ACL=y
CONFIG_CIFS_DEBUG=y
# CONFIG_CIFS_DEBUG2 is not set
# CONFIG_CIFS_DEBUG_DUMP_KEYS is not set
CONFIG_CIFS_DFS_UPCALL=y
# CONFIG_CIFS_SMB311 is not set
CONFIG_CIFS_FSCACHE=y
CONFIG_CODA_FS=m
CONFIG_AFS_FS=m
# CONFIG_AFS_DEBUG is not set
CONFIG_AFS_FSCACHE=y
CONFIG_9P_FS=m
CONFIG_9P_FSCACHE=y
CONFIG_9P_FS_POSIX_ACL=y
CONFIG_9P_FS_SECURITY=y
CONFIG_NLS=y
CONFIG_NLS_DEFAULT="utf8"
CONFIG_NLS_CODEPAGE_437=m
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=m
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_MAC_ROMAN=m
CONFIG_NLS_MAC_CELTIC=m
CONFIG_NLS_MAC_CENTEURO=m
CONFIG_NLS_MAC_CROATIAN=m
CONFIG_NLS_MAC_CYRILLIC=m
CONFIG_NLS_MAC_GAELIC=m
CONFIG_NLS_MAC_GREEK=m
CONFIG_NLS_MAC_ICELAND=m
CONFIG_NLS_MAC_INUIT=m
CONFIG_NLS_MAC_ROMANIAN=m
CONFIG_NLS_MAC_TURKISH=m
CONFIG_NLS_UTF8=m
CONFIG_DLM=m
CONFIG_DLM_DEBUG=y

#
# Kernel hacking
#
CONFIG_TRACE_IRQFLAGS_SUPPORT=y

#
# printk and dmesg options
#
CONFIG_PRINTK_TIME=y
CONFIG_CONSOLE_LOGLEVEL_DEFAULT=7
CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4
CONFIG_BOOT_PRINTK_DELAY=y
CONFIG_DYNAMIC_DEBUG=y

#
# Compile-time checks and compiler options
#
# CONFIG_DEBUG_INFO is not set
CONFIG_ENABLE_WARN_DEPRECATED=y
CONFIG_ENABLE_MUST_CHECK=y
CONFIG_FRAME_WARN=2048
CONFIG_STRIP_ASM_SYMS=y
# CONFIG_READABLE_ASM is not set
# CONFIG_UNUSED_SYMBOLS is not set
# CONFIG_PAGE_OWNER is not set
CONFIG_DEBUG_FS=y
# CONFIG_HEADERS_CHECK is not set
# CONFIG_DEBUG_SECTION_MISMATCH is not set
CONFIG_SECTION_MISMATCH_WARN_ONLY=y
CONFIG_FRAME_POINTER=y
# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set
CONFIG_MAGIC_SYSRQ=y
CONFIG_MAGIC_SYSRQ_DEFAULT_ENABLE=0x01b6
CONFIG_MAGIC_SYSRQ_SERIAL=y
CONFIG_DEBUG_KERNEL=y

#
# Memory Debugging
#
CONFIG_PAGE_EXTENSION=y
# CONFIG_DEBUG_PAGEALLOC is not set
CONFIG_PAGE_POISONING=y
CONFIG_PAGE_POISONING_NO_SANITY=y
# CONFIG_PAGE_POISONING_ZERO is not set
# CONFIG_DEBUG_PAGE_REF is not set
# CONFIG_DEBUG_RODATA_TEST is not set
# CONFIG_DEBUG_OBJECTS is not set
# CONFIG_DEBUG_SLAB is not set
CONFIG_HAVE_DEBUG_KMEMLEAK=y
CONFIG_DEBUG_KMEMLEAK=y
CONFIG_DEBUG_KMEMLEAK_EARLY_LOG_SIZE=400
# CONFIG_DEBUG_KMEMLEAK_TEST is not set
# CONFIG_DEBUG_KMEMLEAK_DEFAULT_OFF is not set
# CONFIG_DEBUG_STACK_USAGE is not set
# CONFIG_DEBUG_VM is not set
CONFIG_ARCH_HAS_DEBUG_VIRTUAL=y
# CONFIG_DEBUG_VIRTUAL is not set
CONFIG_DEBUG_MEMORY_INIT=y
CONFIG_MEMORY_NOTIFIER_ERROR_INJECT=m
# CONFIG_DEBUG_PER_CPU_MAPS is not set
# CONFIG_DEBUG_HIGHMEM is not set
CONFIG_HAVE_DEBUG_STACKOVERFLOW=y
CONFIG_DEBUG_STACKOVERFLOW=y
# CONFIG_DEBUG_SHIRQ is not set

#
# Debug Lockups and Hangs
#
CONFIG_LOCKUP_DETECTOR=y
CONFIG_SOFTLOCKUP_DETECTOR=y
# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set
CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0
CONFIG_HARDLOCKUP_DETECTOR_PERF=y
CONFIG_HARDLOCKUP_DETECTOR=y
# CONFIG_BOOTPARAM_HARDLOCKUP_PANIC is not set
CONFIG_BOOTPARAM_HARDLOCKUP_PANIC_VALUE=0
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_WQ_WATCHDOG is not set
# CONFIG_PANIC_ON_OOPS is not set
CONFIG_PANIC_ON_OOPS_VALUE=0
CONFIG_PANIC_TIMEOUT=0
CONFIG_SCHED_DEBUG=y
CONFIG_SCHED_INFO=y
CONFIG_SCHEDSTATS=y
CONFIG_SCHED_STACK_END_CHECK=y
# CONFIG_DEBUG_TIMEKEEPING is not set

#
# Lock Debugging (spinlocks, mutexes, etc...)
#
CONFIG_LOCK_DEBUGGING_SUPPORT=y
# CONFIG_PROVE_LOCKING is not set
# CONFIG_LOCK_STAT is not set
# CONFIG_DEBUG_RT_MUTEXES is not set
# CONFIG_DEBUG_SPINLOCK is not set
# CONFIG_DEBUG_MUTEXES is not set
# CONFIG_DEBUG_WW_MUTEX_SLOWPATH is not set
# CONFIG_DEBUG_RWSEMS is not set
# CONFIG_DEBUG_LOCK_ALLOC is not set
# CONFIG_DEBUG_ATOMIC_SLEEP is not set
# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set
# CONFIG_LOCK_TORTURE_TEST is not set
# CONFIG_WW_MUTEX_SELFTEST is not set
CONFIG_STACKTRACE=y
CONFIG_WARN_ALL_UNSEEDED_RANDOM=y
# CONFIG_DEBUG_KOBJECT is not set
CONFIG_DEBUG_BUGVERBOSE=y
CONFIG_DEBUG_LIST=y
# CONFIG_DEBUG_PI_LIST is not set
# CONFIG_DEBUG_SG is not set
# CONFIG_DEBUG_NOTIFIERS is not set
# CONFIG_DEBUG_CREDENTIALS is not set

#
# RCU Debugging
#
# CONFIG_RCU_PERF_TEST is not set
# CONFIG_RCU_TORTURE_TEST is not set
CONFIG_RCU_CPU_STALL_TIMEOUT=21
# CONFIG_RCU_TRACE is not set
# CONFIG_RCU_EQS_DEBUG is not set
# CONFIG_DEBUG_WQ_FORCE_RR_CPU is not set
# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set
# CONFIG_CPU_HOTPLUG_STATE_CONTROL is not set
CONFIG_NOTIFIER_ERROR_INJECTION=m
CONFIG_PM_NOTIFIER_ERROR_INJECT=m
# CONFIG_NETDEV_NOTIFIER_ERROR_INJECT is not set
# CONFIG_FAULT_INJECTION is not set
CONFIG_FUNCTION_ERROR_INJECTION=y
# CONFIG_LATENCYTOP is not set
CONFIG_USER_STACKTRACE_SUPPORT=y
CONFIG_NOP_TRACER=y
CONFIG_HAVE_FUNCTION_TRACER=y
CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y
CONFIG_HAVE_DYNAMIC_FTRACE=y
CONFIG_HAVE_DYNAMIC_FTRACE_WITH_REGS=y
CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y
CONFIG_HAVE_SYSCALL_TRACEPOINTS=y
CONFIG_HAVE_FENTRY=y
CONFIG_HAVE_C_RECORDMCOUNT=y
CONFIG_TRACER_MAX_TRACE=y
CONFIG_TRACE_CLOCK=y
CONFIG_RING_BUFFER=y
CONFIG_EVENT_TRACING=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_PREEMPTIRQ_EVENTS is not set
# CONFIG_IRQSOFF_TRACER is not set
# CONFIG_SCHED_TRACER is not set
# CONFIG_HWLAT_TRACER is not set
CONFIG_FTRACE_SYSCALLS=y
CONFIG_TRACER_SNAPSHOT=y
# CONFIG_TRACER_SNAPSHOT_PER_CPU_SWAP is not set
CONFIG_BRANCH_PROFILE_NONE=y
# CONFIG_PROFILE_ANNOTATED_BRANCHES is not set
CONFIG_STACK_TRACER=y
CONFIG_BLK_DEV_IO_TRACE=y
CONFIG_KPROBE_EVENTS=y
# CONFIG_UPROBE_EVENTS is not set
CONFIG_BPF_EVENTS=y
CONFIG_PROBE_EVENTS=y
CONFIG_DYNAMIC_FTRACE=y
CONFIG_DYNAMIC_FTRACE_WITH_REGS=y
# CONFIG_FUNCTION_PROFILER is not set
# CONFIG_BPF_KPROBE_OVERRIDE is not set
CONFIG_FTRACE_MCOUNT_RECORD=y
# CONFIG_FTRACE_STARTUP_TEST is not set
CONFIG_MMIOTRACE=y
# CONFIG_HIST_TRIGGERS is not set
# CONFIG_MMIOTRACE_TEST is not set
# CONFIG_TRACEPOINT_BENCHMARK is not set
# CONFIG_RING_BUFFER_BENCHMARK is not set
# CONFIG_RING_BUFFER_STARTUP_TEST is not set
# CONFIG_TRACE_EVAL_MAP_FILE is not set
CONFIG_TRACING_EVENTS_GPIO=y
# CONFIG_PROVIDE_OHCI1394_DMA_INIT is not set
# CONFIG_DMA_API_DEBUG is not set
# CONFIG_RUNTIME_TESTING_MENU is not set
CONFIG_MEMTEST=y
# CONFIG_BUG_ON_DATA_CORRUPTION is not set
# CONFIG_SAMPLES is not set
CONFIG_HAVE_ARCH_KGDB=y
# CONFIG_KGDB is not set
CONFIG_ARCH_HAS_UBSAN_SANITIZE_ALL=y
CONFIG_UBSAN=y
CONFIG_UBSAN_SANITIZE_ALL=y
# CONFIG_UBSAN_ALIGNMENT is not set
CONFIG_UBSAN_NULL=y
# CONFIG_TEST_UBSAN is not set
CONFIG_ARCH_HAS_DEVMEM_IS_ALLOWED=y
CONFIG_STRICT_DEVMEM=y
CONFIG_IO_STRICT_DEVMEM=y
# CONFIG_X86_VERBOSE_BOOTUP is not set
CONFIG_EARLY_PRINTK=y
# CONFIG_EARLY_PRINTK_DBGP is not set
# CONFIG_EARLY_PRINTK_USB_XDBC is not set
CONFIG_X86_PTDUMP_CORE=y
# CONFIG_X86_PTDUMP is not set
CONFIG_DEBUG_WX=y
CONFIG_DOUBLEFAULT=y
# CONFIG_DEBUG_TLBFLUSH is not set
CONFIG_HAVE_MMIOTRACE_SUPPORT=y
# CONFIG_X86_DECODER_SELFTEST is not set
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_ENTRY is not set
# CONFIG_DEBUG_NMI_SELFTEST is not set
CONFIG_X86_DEBUG_FPU=y
# CONFIG_PUNIT_ATOM_DEBUG is not set
CONFIG_UNWINDER_FRAME_POINTER=y
# CONFIG_UNWINDER_GUESS is not set

#
# Security options
#
CONFIG_KEYS=y
# CONFIG_PERSISTENT_KEYRINGS is not set
# CONFIG_BIG_KEYS is not set
# CONFIG_TRUSTED_KEYS is not set
CONFIG_ENCRYPTED_KEYS=m
# CONFIG_KEY_DH_OPERATIONS is not set
CONFIG_SECURITY_DMESG_RESTRICT=y
CONFIG_SECURITY=y
CONFIG_SECURITYFS=y
CONFIG_SECURITY_NETWORK=y
CONFIG_SECURITY_NETWORK_XFRM=y
CONFIG_SECURITY_PATH=y
# CONFIG_INTEL_TXT is not set
CONFIG_LSM_MMAP_MIN_ADDR=65536
CONFIG_HAVE_HARDENED_USERCOPY_ALLOCATOR=y
CONFIG_HARDENED_USERCOPY=y
CONFIG_HARDENED_USERCOPY_FALLBACK=y
# CONFIG_HARDENED_USERCOPY_PAGESPAN is not set
CONFIG_FORTIFY_SOURCE=y
# CONFIG_STATIC_USERMODEHELPER is not set
CONFIG_SECURITY_SELINUX=y
# CONFIG_SECURITY_SELINUX_BOOTPARAM is not set
# CONFIG_SECURITY_SELINUX_DISABLE is not set
CONFIG_SECURITY_SELINUX_DEVELOP=y
CONFIG_SECURITY_SELINUX_AVC_STATS=y
CONFIG_SECURITY_SELINUX_CHECKREQPROT_VALUE=1
# CONFIG_SECURITY_SMACK is not set
CONFIG_SECURITY_TOMOYO=y
CONFIG_SECURITY_TOMOYO_MAX_ACCEPT_ENTRY=2048
CONFIG_SECURITY_TOMOYO_MAX_AUDIT_LOG=1024
# CONFIG_SECURITY_TOMOYO_OMIT_USERSPACE_LOADER is not set
CONFIG_SECURITY_TOMOYO_POLICY_LOADER="/sbin/tomoyo-init"
CONFIG_SECURITY_TOMOYO_ACTIVATION_TRIGGER="/sbin/init"
CONFIG_SECURITY_APPARMOR=y
CONFIG_SECURITY_APPARMOR_BOOTPARAM_VALUE=1
CONFIG_SECURITY_APPARMOR_HASH=y
CONFIG_SECURITY_APPARMOR_HASH_DEFAULT=y
# CONFIG_SECURITY_APPARMOR_DEBUG is not set
# CONFIG_SECURITY_LOADPIN is not set
CONFIG_SECURITY_YAMA=y
CONFIG_INTEGRITY=y
# CONFIG_INTEGRITY_SIGNATURE is not set
CONFIG_INTEGRITY_AUDIT=y
# CONFIG_IMA is not set
# CONFIG_EVM is not set
# CONFIG_DEFAULT_SECURITY_SELINUX is not set
# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
# CONFIG_DEFAULT_SECURITY_APPARMOR is not set
CONFIG_DEFAULT_SECURITY_DAC=y
CONFIG_DEFAULT_SECURITY=""
CONFIG_XOR_BLOCKS=m
CONFIG_ASYNC_CORE=m
CONFIG_ASYNC_MEMCPY=m
CONFIG_ASYNC_XOR=m
CONFIG_ASYNC_PQ=m
CONFIG_ASYNC_RAID6_RECOV=m
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_RNG_DEFAULT=y
CONFIG_CRYPTO_AKCIPHER2=y
CONFIG_CRYPTO_AKCIPHER=y
CONFIG_CRYPTO_KPP2=y
CONFIG_CRYPTO_KPP=m
CONFIG_CRYPTO_ACOMP2=y
CONFIG_CRYPTO_RSA=y
CONFIG_CRYPTO_DH=m
CONFIG_CRYPTO_ECDH=m
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_NULL2=y
CONFIG_CRYPTO_PCRYPT=m
CONFIG_CRYPTO_WORKQUEUE=y
CONFIG_CRYPTO_CRYPTD=m
# CONFIG_CRYPTO_MCRYPTD is not set
CONFIG_CRYPTO_AUTHENC=m
CONFIG_CRYPTO_TEST=m
CONFIG_CRYPTO_SIMD=m

#
# Authenticated Encryption with Associated Data
#
CONFIG_CRYPTO_CCM=m
CONFIG_CRYPTO_GCM=y
CONFIG_CRYPTO_CHACHA20POLY1305=m
CONFIG_CRYPTO_SEQIV=y
CONFIG_CRYPTO_ECHAINIV=m

#
# Block modes
#
CONFIG_CRYPTO_CBC=m
# CONFIG_CRYPTO_CFB is not set
CONFIG_CRYPTO_CTR=y
CONFIG_CRYPTO_CTS=m
CONFIG_CRYPTO_ECB=m
CONFIG_CRYPTO_LRW=m
CONFIG_CRYPTO_PCBC=m
CONFIG_CRYPTO_XTS=m
# CONFIG_CRYPTO_KEYWRAP is not set

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

#
# Digest
#
CONFIG_CRYPTO_CRC32C=y
CONFIG_CRYPTO_CRC32C_INTEL=y
CONFIG_CRYPTO_CRC32=y
CONFIG_CRYPTO_CRC32_PCLMUL=y
CONFIG_CRYPTO_CRCT10DIF=y
CONFIG_CRYPTO_GHASH=y
CONFIG_CRYPTO_POLY1305=m
CONFIG_CRYPTO_MD4=m
CONFIG_CRYPTO_MD5=y
CONFIG_CRYPTO_MICHAEL_MIC=m
CONFIG_CRYPTO_RMD128=m
CONFIG_CRYPTO_RMD160=m
CONFIG_CRYPTO_RMD256=m
CONFIG_CRYPTO_RMD320=m
CONFIG_CRYPTO_SHA1=y
CONFIG_CRYPTO_SHA256=y
CONFIG_CRYPTO_SHA512=m
# CONFIG_CRYPTO_SHA3 is not set
# CONFIG_CRYPTO_SM3 is not set
CONFIG_CRYPTO_TGR192=m
CONFIG_CRYPTO_WP512=m

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

#
# Compression
#
CONFIG_CRYPTO_DEFLATE=y
CONFIG_CRYPTO_LZO=y
# CONFIG_CRYPTO_842 is not set
CONFIG_CRYPTO_LZ4=m
CONFIG_CRYPTO_LZ4HC=m

#
# Random Number Generation
#
CONFIG_CRYPTO_ANSI_CPRNG=m
CONFIG_CRYPTO_DRBG_MENU=y
CONFIG_CRYPTO_DRBG_HMAC=y
# CONFIG_CRYPTO_DRBG_HASH is not set
# CONFIG_CRYPTO_DRBG_CTR is not set
CONFIG_CRYPTO_DRBG=y
CONFIG_CRYPTO_JITTERENTROPY=y
CONFIG_CRYPTO_USER_API=m
CONFIG_CRYPTO_USER_API_HASH=m
CONFIG_CRYPTO_USER_API_SKCIPHER=m
# CONFIG_CRYPTO_USER_API_RNG is not set
CONFIG_CRYPTO_USER_API_AEAD=m
CONFIG_CRYPTO_HASH_INFO=y
# CONFIG_CRYPTO_HW is not set
CONFIG_ASYMMETRIC_KEY_TYPE=y
CONFIG_ASYMMETRIC_PUBLIC_KEY_SUBTYPE=y
CONFIG_X509_CERTIFICATE_PARSER=y
CONFIG_PKCS7_MESSAGE_PARSER=y
# CONFIG_PKCS7_TEST_KEY is not set
# CONFIG_SIGNED_PE_FILE_VERIFICATION is not set

#
# Certificates for signature checking
#
CONFIG_SYSTEM_TRUSTED_KEYRING=y
CONFIG_SYSTEM_TRUSTED_KEYS=""
# CONFIG_SYSTEM_EXTRA_CERTIFICATE is not set
# CONFIG_SECONDARY_TRUSTED_KEYRING is not set
# CONFIG_SYSTEM_BLACKLIST_KEYRING is not set
CONFIG_HAVE_KVM=y
CONFIG_HAVE_KVM_IRQCHIP=y
CONFIG_HAVE_KVM_IRQFD=y
CONFIG_HAVE_KVM_IRQ_ROUTING=y
CONFIG_HAVE_KVM_EVENTFD=y
CONFIG_KVM_MMIO=y
CONFIG_KVM_ASYNC_PF=y
CONFIG_HAVE_KVM_MSI=y
CONFIG_HAVE_KVM_CPU_RELAX_INTERCEPT=y
CONFIG_KVM_VFIO=y
CONFIG_KVM_GENERIC_DIRTYLOG_READ_PROTECT=y
CONFIG_HAVE_KVM_IRQ_BYPASS=y
CONFIG_VIRTUALIZATION=y
CONFIG_KVM=m
CONFIG_KVM_INTEL=m
CONFIG_KVM_AMD=m
# CONFIG_KVM_MMU_AUDIT is not set
CONFIG_VHOST_NET=m
CONFIG_VHOST_SCSI=m
CONFIG_VHOST_VSOCK=m
CONFIG_VHOST=m
# CONFIG_VHOST_CROSS_ENDIAN_LEGACY is not set
CONFIG_BINARY_PRINTF=y

#
# Library routines
#
CONFIG_RAID6_PQ=m
CONFIG_BITREVERSE=y
CONFIG_RATIONAL=y
CONFIG_GENERIC_STRNCPY_FROM_USER=y
CONFIG_GENERIC_STRNLEN_USER=y
CONFIG_GENERIC_NET_UTILS=y
CONFIG_GENERIC_FIND_FIRST_BIT=y
CONFIG_GENERIC_PCI_IOMAP=y
CONFIG_GENERIC_IOMAP=y
CONFIG_ARCH_HAS_FAST_MULTIPLIER=y
CONFIG_CRC_CCITT=m
CONFIG_CRC16=m
CONFIG_CRC_T10DIF=y
CONFIG_CRC_ITU_T=m
CONFIG_CRC32=y
# CONFIG_CRC32_SELFTEST is not set
CONFIG_CRC32_SLICEBY8=y
# CONFIG_CRC32_SLICEBY4 is not set
# CONFIG_CRC32_SARWATE is not set
# CONFIG_CRC32_BIT is not set
# CONFIG_CRC4 is not set
CONFIG_CRC7=m
CONFIG_LIBCRC32C=m
CONFIG_CRC8=m
CONFIG_XXHASH=m
CONFIG_AUDIT_GENERIC=y
# CONFIG_RANDOM32_SELFTEST is not set
CONFIG_ZLIB_INFLATE=y
CONFIG_ZLIB_DEFLATE=y
CONFIG_LZO_COMPRESS=y
CONFIG_LZO_DECOMPRESS=y
CONFIG_LZ4_COMPRESS=m
CONFIG_LZ4HC_COMPRESS=m
CONFIG_LZ4_DECOMPRESS=y
CONFIG_ZSTD_COMPRESS=m
CONFIG_ZSTD_DECOMPRESS=m
CONFIG_XZ_DEC=y
CONFIG_XZ_DEC_X86=y
# CONFIG_XZ_DEC_POWERPC is not set
# CONFIG_XZ_DEC_IA64 is not set
# CONFIG_XZ_DEC_ARM is not set
# CONFIG_XZ_DEC_ARMTHUMB is not set
# CONFIG_XZ_DEC_SPARC is not set
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_DECOMPRESS_LZ4=y
CONFIG_GENERIC_ALLOCATOR=y
CONFIG_REED_SOLOMON=m
CONFIG_REED_SOLOMON_ENC8=y
CONFIG_REED_SOLOMON_DEC8=y
CONFIG_REED_SOLOMON_DEC16=y
CONFIG_BCH=m
CONFIG_TEXTSEARCH=y
CONFIG_TEXTSEARCH_KMP=m
CONFIG_TEXTSEARCH_BM=m
CONFIG_TEXTSEARCH_FSM=m
CONFIG_INTERVAL_TREE=y
CONFIG_RADIX_TREE_MULTIORDER=y
CONFIG_ASSOCIATIVE_ARRAY=y
CONFIG_HAS_IOMEM=y
CONFIG_HAS_IOPORT_MAP=y
CONFIG_HAS_DMA=y
CONFIG_SGL_ALLOC=y
CONFIG_DMA_DIRECT_OPS=y
CONFIG_CHECK_SIGNATURE=y
CONFIG_CPU_RMAP=y
CONFIG_DQL=y
CONFIG_GLOB=y
# CONFIG_GLOB_SELFTEST is not set
CONFIG_NLATTR=y
CONFIG_CLZ_TAB=y
CONFIG_CORDIC=m
# CONFIG_DDR is not set
CONFIG_IRQ_POLL=y
CONFIG_MPILIB=y
CONFIG_OID_REGISTRY=y
CONFIG_FONT_SUPPORT=y
# CONFIG_FONTS is not set
CONFIG_FONT_8x8=y
CONFIG_FONT_8x16=y
CONFIG_SG_POOL=y
CONFIG_ARCH_HAS_SG_CHAIN=y
CONFIG_SBITMAP=y
# CONFIG_STRING_SELFTEST is not set

[-- Attachment #2: S/MIME Cryptographic Signature --]
[-- Type: application/pkcs7-signature, Size: 5174 bytes --]

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

end of thread, other threads:[~2018-05-21 18:39 UTC | newest]

Thread overview: 65+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-04-26  4:11 Linux messages full of `random: get_random_u32 called from` Sultan Alsawaf
2018-04-26  5:00 ` Theodore Y. Ts'o
2018-04-26  5:05   ` Sultan Alsawaf
2018-04-26  7:32     ` Theodore Y. Ts'o
2018-04-26 15:17       ` Sultan Alsawaf
2018-04-26 19:25         ` Theodore Y. Ts'o
2018-04-26 20:22           ` Sultan Alsawaf
2018-04-26 20:47             ` Christian Brauner
2018-04-27  0:00               ` Theodore Y. Ts'o
2018-04-27 15:38                 ` Jason A. Donenfeld
2018-04-27 19:14                   ` Theodore Y. Ts'o
2018-04-26 23:56             ` Theodore Y. Ts'o
2018-04-27  5:20               ` Sultan Alsawaf
2018-04-27 20:10                 ` Theodore Y. Ts'o
2018-04-27 22:59                   ` Sultan Alsawaf
2018-04-29 14:32                   ` Pavel Machek
2018-04-29 17:05                     ` Sultan Alsawaf
2018-04-29 18:41                       ` Pavel Machek
2018-04-29 20:20                         ` Sultan Alsawaf
2018-04-29 21:18                           ` Pavel Machek
2018-04-29 21:34                             ` Sultan Alsawaf
2018-04-29 22:05                           ` Theodore Y. Ts'o
2018-04-29 22:26                             ` Sultan Alsawaf
2018-04-29 22:43                               ` Jason A. Donenfeld
2018-04-29 22:49                                 ` Sultan Alsawaf
2018-04-30  0:11                                   ` Theodore Y. Ts'o
2018-04-30  4:34                                     ` Sultan Alsawaf
2018-04-30 16:11                                       ` Theodore Y. Ts'o
2018-05-01 19:53                                         ` Pavel Machek
2018-04-29 22:43                             ` Pavel Machek
2018-04-30  0:32                             ` Laura Abbott
2018-04-30 21:12                             ` Jeremy Cline
2018-05-01 11:52                               ` Justin Forbes
2018-05-01 12:55                                 ` Theodore Y. Ts'o
2018-05-01 22:35                                   ` Justin Forbes
2018-05-02  0:02                                     ` Theodore Y. Ts'o
2018-05-02 12:09                                       ` Justin Forbes
2018-05-02 16:26                                         ` Theodore Y. Ts'o
2018-05-02 17:49                                           ` Laura Abbott
2018-05-02 22:25                                             ` Theodore Y. Ts'o
2018-05-03  6:19                                               ` Pavel Machek
2018-05-03 12:23                                               ` Justin Forbes
2018-05-02  0:43                                     ` Sultan Alsawaf
2018-05-02  0:56                                       ` Theodore Y. Ts'o
2018-05-02  1:11                                         ` Sultan Alsawaf
2018-04-29 18:30                   ` Sultan Alsawaf
2018-04-29 20:08                     ` Theodore Y. Ts'o
2018-05-18  1:27                   ` Trent Piepho
2018-05-18  2:32                     ` Theodore Y. Ts'o
2018-05-18 22:56                       ` Trent Piepho
2018-05-18 23:22                         ` Theodore Y. Ts'o
2018-05-21 18:39                           ` Trent Piepho
2018-04-29 14:29               ` Pavel Machek
  -- strict thread matches above, loose matches on Subject: below --
2018-04-24 11:48 Paul Menzel
2018-04-24 13:56 ` Theodore Y. Ts'o
2018-04-24 14:30   ` Paul Menzel
2018-04-24 15:49   ` Theodore Y. Ts'o
2018-04-24 15:56     ` Paul Menzel
2018-04-25  7:41       ` Theodore Y. Ts'o
2018-04-26  3:48         ` Paul Menzel
2018-04-29 14:22           ` Pavel Machek
2018-04-29 23:02   ` Dave Jones
2018-04-29 23:07     ` Dave Jones
2018-04-30  0:21       ` Theodore Y. Ts'o
2018-04-26  5:51 ` Pavel Machek

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).