diff options
208 files changed, 21265 insertions, 1709 deletions
diff --git a/DISTRO_PORTING b/DISTRO_PORTING index 51a244389d..68107e46c9 100644 --- a/DISTRO_PORTING +++ b/DISTRO_PORTING @@ -25,21 +25,19 @@ HOWTO: NTP POOL: - By default, timesyncd uses the Google NTP servers - time[1-4].google.com. They serve time that is not standards - compliant, and can be up to .5s off. Google does not - officially support these servers for the broader - audience. Distributions and vendors really should not ship - OSes or devices with these NTP servers configured. Instead, - please register your own vendor pool at ntp.org and make it - the built-in default by passing --with-ntp-servers= to - configure. Registering vendor pools is free: + By default, timesyncd uses the Google Public NTP servers + time[1-4].google.com. They serve time that uses a leap second + smear, and can be up to .5s off from servers that use stepped + leap seconds. - http://www.pool.ntp.org/en/vendors.html + https://developers.google.com/time/smear + + If you prefer to use leap second steps, please register your own + vendor pool at ntp.org and make it the built-in default by + passing --with-ntp-servers= to configure. Registering vendor + pools is free: - Again, if you ship your software or device with the default - NTP servers, then you will get served wrong time, and will - rely on services that might not be supported for long. + http://www.pool.ntp.org/en/vendors.html PAM: The default PAM config shipped by systemd is really bare bones. diff --git a/Makefile-man.am b/Makefile-man.am index c47bedd0df..6f59658445 100644 --- a/Makefile-man.am +++ b/Makefile-man.am @@ -481,6 +481,7 @@ MANPAGES_ALIAS += \ man/systemd-udevd-control.socket.8 \ man/systemd-udevd-kernel.socket.8 \ man/systemd-udevd.8 \ + man/systemd-umount.1 \ man/systemd-update-done.8 \ man/systemd-user.conf.5 \ man/systemd-volatile-root.8 \ @@ -837,6 +838,7 @@ man/systemd-tmpfiles-setup.service.8: man/systemd-tmpfiles.8 man/systemd-udevd-control.socket.8: man/systemd-udevd.service.8 man/systemd-udevd-kernel.socket.8: man/systemd-udevd.service.8 man/systemd-udevd.8: man/systemd-udevd.service.8 +man/systemd-umount.1: man/systemd-mount.1 man/systemd-update-done.8: man/systemd-update-done.service.8 man/systemd-user.conf.5: man/systemd-system.conf.5 man/systemd-volatile-root.8: man/systemd-volatile-root.service.8 @@ -1787,6 +1789,9 @@ man/systemd-udevd-kernel.socket.html: man/systemd-udevd.service.html man/systemd-udevd.html: man/systemd-udevd.service.html $(html-alias) +man/systemd-umount.html: man/systemd-mount.html + $(html-alias) + man/systemd-update-done.html: man/systemd-update-done.service.html $(html-alias) diff --git a/Makefile.am b/Makefile.am index c87c547e05..77e5aa7402 100644 --- a/Makefile.am +++ b/Makefile.am @@ -673,6 +673,15 @@ EXTRA_DIST += \ @INTLTOOL_POLICY_RULE@ +systemd-mount-install-hook: + -$(LN_S) systemd-mount $(DESTDIR)$(bindir)/systemd-umount + +systemd-mount-uninstall-hook: + -rm $(DESTDIR)$(bindir)/systemd-umount + +INSTALL_EXEC_HOOKS += systemd-mount-install-hook +UNINSTALL_EXEC_HOOKS += systemd-mount-uninstall-hook + # ------------------------------------------------------------------------------ MANPAGES = @@ -1721,6 +1730,7 @@ EXTRA_DIST += \ test/test-execute/exec-restrict-namespaces-yes.service \ test/test-execute/exec-restrict-namespaces-mnt.service \ test/test-execute/exec-restrict-namespaces-mnt-blacklist.service \ + test/test-execute/exec-read-only-path-succeed.service \ test/bus-policy/hello.conf \ test/bus-policy/methods.conf \ test/bus-policy/ownerships.conf \ @@ -4002,19 +4012,19 @@ check_DATA += \ test/sys endif -# packed sysfs test tree -test/sys: test/sys.tar.xz - -rm -rf test/sys +# sysfs test tree +test/sys: test/sys-script.py + -rm -rf $@ $(AM_V_at)$(MKDIR_P) $(dir $@) - $(AM_V_GEN)tar -C test/ -xJf $(top_srcdir)/test/sys.tar.xz - -touch test/sys + $(AM_V_GEN)$(top_srcdir)/test/sys-script.py $(dir $@) + -touch $@ test-sys-distclean: -rm -rf test/sys DISTCLEAN_LOCAL_HOOKS += test-sys-distclean EXTRA_DIST += \ - test/sys.tar.xz \ + test/sys-script.py \ test/udev-test.pl \ test/hwdb-test.sh \ test/rule-syntax-check.py \ @@ -5747,6 +5757,8 @@ libnetworkd_core_la_SOURCES = \ src/network/networkd-link.c \ src/network/networkd-link-bus.c \ src/network/networkd-ipv4ll.c \ + src/network/networkd-ipv6-proxy-ndp.h \ + src/network/networkd-ipv6-proxy-ndp.c \ src/network/networkd-dhcp4.c \ src/network/networkd-dhcp6.c \ src/network/networkd-ndisc.h \ @@ -6235,6 +6247,7 @@ substitutions = \ SED_PROCESS = \ $(AM_V_GEN)$(MKDIR_P) $(dir $@) && \ $(SED) $(subst '|,-e 's|@,$(subst =,\@|,$(subst |',|g',$(substitutions)))) \ + -e '/^\#\# /d' \ < $< > $@ units/%: units/%.in @@ -67,12 +67,15 @@ REQUIREMENTS: create additional symlinks in /dev/disk/ and /dev/tape: CONFIG_BLK_DEV_BSG - Required for PrivateNetwork and PrivateDevices in service units: + Required for PrivateNetwork= and PrivateDevices= in service units: CONFIG_NET_NS CONFIG_DEVPTS_MULTIPLE_INSTANCES Note that systemd-localed.service and other systemd units use PrivateNetwork and PrivateDevices so this is effectively required. + Required for PrivateUsers= in service units: + CONFIG_USER_NS + Optional but strongly recommended: CONFIG_IPV6 CONFIG_AUTOFS4_FS @@ -272,11 +275,6 @@ WARNINGS: false positives will be triggered by code which violates some rules but is actually safe. - Currently, systemd-timesyncd defaults to use the Google NTP - servers if not specified otherwise at configure time. You - really should not ship an OS or device with this default - setting. See DISTRO_PORTING for details. - ENGINEERING AND CONSULTING SERVICES: Kinvolk (https://kinvolk.io) offers professional engineering and consulting services for systemd. Please contact Chris Kühl @@ -24,10 +24,29 @@ Janitorial Clean-ups: Features: +* set SystemCallArchitectures=native on all our services + +* maybe add call sd_journal_set_block_timeout() or so to set SO_SNDTIMEO for + the sd-journal logging socket, and, if the timeout is set to 0, sets + O_NONBLOCK on it. That way people can control if and when to block for + logging. + +* journald: when we recv a log datagram via the native or syslog transports, + search for the PID in the active stream connections, and let's make sure to + always process the datagrams before the streams. Then, cache client metadata + per stream in the stream object. This way we can somewhat fix the race with + quickly exiting processes which log as long as they had their own stream + connection... + * Maybe add a small tool invoked early at boot, that adds in or resizes partitions automatically, to be used when the media used is actually larger than the image written onto it is. +* Maybe add PrivatePIDs= as new unit setting, and do minimal PID namespacing + after all. Be strict however, only support the equivalent of nspawn's + --as-pid2 switch, and sanely proxy sd_notify() messages dropping stuff such + as MAINPID. + * change the dependency Set* objects in Unit structures to become Hashmap*, and then store a bit mask who created a specific dependency: the source unit via fragment configuration, the destination unit via fragment configuration, or @@ -41,6 +60,15 @@ Features: the service cgroup, which is supposed to monitor the service, and when it exits the service is considered failed by its monitor. +* track the per-service PAM process properly (i.e. as an additional control + process), so that it may be queried on the bus and everything. + +* add a new "debug" job mode, that is propagated to unit_start() and for + services results in two things: we raise SIGSTOP right before invoking + execve() and turn off watchdog support. Then, use that to implement + "systemd-gdb" for attaching to the start-up of any system service in its + natural habitat. + * replace all canonicalize_file_name() invocations by chase_symlinks(), in particulr those where a rootdir is relevant. @@ -48,6 +76,9 @@ Features: * set ProtectSystem=strict for all our usual services. +* fix PrivateNetwork= so that we fall back gracefully on kernels lacking + namespacing support (similar for the other namespacing options) + * maybe add gpt-partition-based user management: each user gets his own LUKS-encrypted GPT partition with a new GPT type. A small nss module enumerates users via udev partition enumeration. UIDs are assigned in a fixed @@ -91,8 +122,6 @@ Features: * switch to ProtectSystem=strict for all our long-running services where that's possible -* If RootDirectory= is used, mount /proc, /sys, /dev into it, if not mounted yet - * Permit masking specific netlink APIs with RestrictAddressFamily= * nspawn: start UID allocation loop from hash of container name @@ -122,8 +151,6 @@ Features: * Add DataDirectory=, CacheDirectory= and LogDirectory= to match RuntimeDirectory=, and create it as necessary when starting a service, owned by the right user. -* Add RootImage= for mounting a disk image or file as root directory - * make sure the ratelimit object can deal with USEC_INFINITY as way to turn off things * journalctl: make sure -f ends when the container indicated by -M terminates diff --git a/catalog/systemd.ru.catalog.in b/catalog/systemd.ru.catalog.in index df55478592..3ee1ed63c0 100644 --- a/catalog/systemd.ru.catalog.in +++ b/catalog/systemd.ru.catalog.in @@ -1,7 +1,7 @@ # This file is part of systemd. # # Copyright 2012 Lennart Poettering -# Copyright 2013-2016 Sergey Ptashnick +# Copyright 2013-2017 Sergey Ptashnick # # systemd is free software; you can redistribute it and/or modify it # under the terms of the GNU Lesser General Public License as published by @@ -102,6 +102,18 @@ Documentation: man:core(5) ВероÑтно, Ñто произошло из-за ошибки, допущенной в коде программы. РекомендуетÑÑ Ñообщить её разработчикам о возникшей проблеме. +# Subject: Core file was truncated to @SIZE_LIMIT@ bytes +-- 5aadd8e954dc4b1a8c954d63fd9e1137 +Subject: Файл Ñ Ð´Ð°Ð¼Ð¿Ð¾Ð¼ памÑти был урезан до @SIZE_LIMIT@ байт +Defined-By: systemd +Support: %SUPPORT_URL% +Documentation: man:coredump.conf(5) + +Объем памÑти процеÑÑа превыÑил Ð¾Ð³Ñ€Ð°Ð½Ð¸Ñ‡ÐµÐ½Ð¸Ñ Ð½Ð° размер дампа, уÑтановленные +Ð´Ð»Ñ systemd-coredump(8). ЗапиÑаны только первые @SIZE_LIMIT@ байт. Ðе иÑключено, +что Ñтот дамп еще пригоден Ð´Ð»Ñ Ð°Ð½Ð°Ð»Ð¸Ð·Ð°, Ñ…Ð¾Ñ‚Ñ Ð¸Ð½Ñтрументы Ð´Ð»Ñ Ð°Ð½Ð°Ð»Ð¸Ð·Ð° +дампов (например, gdb(1)) могут выдать предупреждение, что файл был урезан. + # Subject: A new session @SESSION_ID@ has been created for user @USER_ID@ -- 8d45620c1a4348dbb17410da57c60c66 Subject: Ð”Ð»Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ @USER_ID@ Ñоздан новый ÑÐµÐ°Ð½Ñ @SESSION_ID@ @@ -175,6 +187,19 @@ Support: %SUPPORT_URL% ЗапуÑк ÑиÑтемных Ñлужб занÑл @USERSPACE_USEC@ микроÑекунд. +# Subject: User manager start-up is now complete +-- eed00a68ffd84e31882105fd973abdd1 +Subject: Завершен запуÑк менеджера пользовательÑкого ÑеанÑа +Defined-By: systemd +Support: %SUPPORT_URL% + +Менеджер пользовательÑкого ÑеанÑа Ð´Ð»Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ñ Ð¸Ð´ÐµÐ½Ñ‚Ð¸Ñ„Ð¸ÐºÐ°Ñ‚Ð¾Ñ€Ð¾Ð¼ @_UID@ +был запущен. Ð’Ñе Ñлужбы, ÑтоÑвшие в очереди на запуÑк, также были запущены. Тем +не менее, прочие Ñлужбы могут вÑе еще находитьÑÑ Ð² процеÑÑе запуÑка, либо могут +быть запущены позднее. + +ЗапуÑк менеджера занÑл @USERSPACE_USEC@ микроÑекунд. + # Subject: System sleep state @SLEEP@ entered -- 6bbd95ee977941e497c48be27c254128 Subject: СиÑтема перешла в ÑоÑтоÑние Ñна (@SLEEP@) diff --git a/catalog/systemd.zh_CN.catalog.in b/catalog/systemd.zh_CN.catalog.in index ba7c697c16..13030e14dc 100644 --- a/catalog/systemd.zh_CN.catalog.in +++ b/catalog/systemd.zh_CN.catalog.in @@ -137,7 +137,7 @@ Support: %SUPPORT_URL% -- 6bbd95ee977941e497c48be27c254128 Subject: 系统已进入 @SLEEP@ ç¡çœ çŠ¶æ€ Defined-By: systemd -Support: http://lists.freedesktop.org/mailman/listinfo/systemd-deve +Support: %SUPPORT_URL% 系统现已进入 @SLEEP@ ç¡çœ 状æ€ã€‚ diff --git a/configure.ac b/configure.ac index 48c71ce340..ef8a8087af 100644 --- a/configure.ac +++ b/configure.ac @@ -331,13 +331,15 @@ AC_CHECK_DECLS([ kcmp, keyctl, LO_FLAGS_PARTSCAN, - copy_file_range], + copy_file_range, + explicit_bzero], [], [], [[ #include <sys/types.h> #include <unistd.h> #include <sys/mount.h> #include <fcntl.h> #include <sched.h> +#include <string.h> #include <linux/loop.h> #include <linux/random.h> ]]) @@ -601,6 +603,15 @@ AC_ARG_WITH([nobody-group], AC_SUBST(NOBODY_GROUP_NAME) AC_DEFINE_UNQUOTED(NOBODY_GROUP_NAME, ["$NOBODY_GROUP_NAME"], [The name of the nobody group (the one with GID 65534)]) +AC_ARG_WITH([fallback-hostname], + AS_HELP_STRING([--with-fallback-hostname=NAME], + [specify the hostname used if none configured]), + [FALLBACK_HOSTNAME="$withval"], + [FALLBACK_HOSTNAME=localhost]) + +AC_SUBST(FALLBACK_HOSTNAME) +AC_DEFINE_UNQUOTED(FALLBACK_HOSTNAME, ["$FALLBACK_HOSTNAME"], [The hostname used if none configured]) + # ------------------------------------------------------------------------------ have_xz=no AC_ARG_ENABLE(xz, AS_HELP_STRING([--disable-xz], [disable optional XZ support])) @@ -1135,10 +1146,7 @@ AC_ARG_WITH(ntp-servers, AS_HELP_STRING([--with-ntp-servers=NTPSERVERS], [space-separated list of default NTP servers]), [NTP_SERVERS="$withval"], - [NTP_SERVERS="time1.google.com time2.google.com time3.google.com time4.google.com" - AC_MSG_WARN([*** Using Google NTP servers. - Do not ship OSes or devices with these default settings. - See DISTRO_PORTING for details!])]) + [NTP_SERVERS="time1.google.com time2.google.com time3.google.com time4.google.com"]) AC_DEFINE_UNQUOTED(NTP_SERVERS, ["$NTP_SERVERS"], [Default NTP Servers]) AC_SUBST(NTP_SERVERS) @@ -1715,12 +1723,13 @@ AC_MSG_RESULT([ Wheel group: ${have_wheel_group} Debug shell: ${SUSHELL} @ ${DEBUGTTY} TTY GID: ${TTY_GID} - Maximum System UID: ${SYSTEM_UID_MAX} - Maximum System GID: ${SYSTEM_GID_MAX} + Maximum system UID: ${SYSTEM_UID_MAX} + Maximum system GID: ${SYSTEM_GID_MAX} Certificate root: ${CERTIFICATEROOT} Support URL: ${SUPPORT_URL} - Nobody User Name: ${NOBODY_USER_NAME} - Nobody Group Name: ${NOBODY_GROUP_NAME} + nobody user name: ${NOBODY_USER_NAME} + nobody group name: ${NOBODY_GROUP_NAME} + Fallback hostname: ${FALLBACK_HOSTNAME} CFLAGS: ${OUR_CFLAGS} ${CFLAGS} CPPFLAGS: ${OUR_CPPFLAGS} ${CPPFLAGS} diff --git a/hwdb/60-sensor.hwdb b/hwdb/60-sensor.hwdb index 3160cf77e8..fcbdcabf30 100644 --- a/hwdb/60-sensor.hwdb +++ b/hwdb/60-sensor.hwdb @@ -15,7 +15,7 @@ # /etc/udev/hwdb.d/61-sensor-local.hwdb # and add your rules there. To load the new rules execute (as root): # systemd-hwdb update -# udevadm trigger `dirname $(udevadm info -n "/dev/iio:deviceXXX" -q path)` +# udevadm trigger -y `dirname $(udevadm info -n "/dev/iio:deviceXXX" -q path)` # where /dev/iio:deviceXXX is the device in question. # # If your changes are generally applicable, preferably send them as a pull @@ -25,6 +25,9 @@ # include your new rules, a description of the device, and the output of # udevadm info --export-db # +# For hwdb format and systemd behavior: +# https://www.freedesktop.org/software/systemd/man/hwdb.html +# # Allowed properties are: # ACCEL_MOUNT_MATRIX=<matrix> # @@ -34,11 +37,17 @@ # eg. the identity matrix. # # [1]: https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=dfc57732ad38f93ae6232a3b4e64fd077383a0f1 - +# # # Sort by brand, model ######################################### +# AsusTek +######################################### +sensor:modalias:acpi:SMO8500*:dmi:*svn*ASUSTeK*:*pn*TP500LB* + ACCEL_MOUNT_MATRIX=0, 1, 0; 1, 0, 0; 0, 0, 0 + +######################################### # Winbook ######################################### sensor:modalias:acpi:BMA250*:dmi:*svn*WinBook*:*pn*TW100* diff --git a/hwdb/70-mouse.hwdb b/hwdb/70-mouse.hwdb index 7b1a85fb03..772534f495 100644 --- a/hwdb/70-mouse.hwdb +++ b/hwdb/70-mouse.hwdb @@ -531,6 +531,10 @@ mouse:bluetooth:v056ep0061:name:Laser BTmouse: mouse:usb:v1532p0042:name:Razer Razer Abyssus: MOUSE_DPI=3500@1000 +# Razer DeathAdder Black Edition +mouse:usb:v1532p0029:name:Razer Razer DeathAdder: + MOUSE_DPI=3500@1000 + ########################################## # Roccat ########################################## diff --git a/hwdb/70-touchpad.hwdb b/hwdb/70-touchpad.hwdb index 088e63bc31..82a4b7a575 100644 --- a/hwdb/70-touchpad.hwdb +++ b/hwdb/70-touchpad.hwdb @@ -47,3 +47,9 @@ touchpad:usb:* ########################################################### touchpad:usb:v05ac* ID_INPUT_TOUCHPAD_INTEGRATION=internal + +########################################################### +# Wacom +########################################################### +touchpad:usb:v056a* + ID_INPUT_TOUCHPAD_INTEGRATION=external diff --git a/man/busctl.xml b/man/busctl.xml index 052a33097f..f63d0d5bab 100644 --- a/man/busctl.xml +++ b/man/busctl.xml @@ -291,11 +291,11 @@ <listitem><para>Similar to <command>monitor</command> but writes the output in pcap format (for details, see the <ulink - url="http://wiki.wireshark.org/Development/LibpcapFileFormat">Libpcap - File Format</ulink> description. Make sure to redirect the - output to STDOUT to a file. Tools like + url="https://wiki.wireshark.org/Development/LibpcapFileFormat">Libpcap + File Format</ulink> description). Make sure to redirect + standard output to a file. Tools like <citerefentry project='die-net'><refentrytitle>wireshark</refentrytitle><manvolnum>1</manvolnum></citerefentry> - may be used to dissect and view the generated + may be used to dissect and view the resulting files.</para></listitem> </varlistentry> diff --git a/man/pam_systemd.xml b/man/pam_systemd.xml index ddda81bc90..6e1aa0dd9a 100644 --- a/man/pam_systemd.xml +++ b/man/pam_systemd.xml @@ -59,29 +59,23 @@ <citerefentry><refentrytitle>systemd-logind.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>, and hence the systemd control group hierarchy.</para> - <para>On login, this module ensures the following:</para> + <para>On login, this module — in conjunction with <filename>systemd-logind.service</filename> — ensures the + following:</para> <orderedlist> - <listitem><para>If it does not exist yet, the user runtime - directory <filename>/run/user/$USER</filename> is created and - its ownership changed to the user that is logging - in.</para></listitem> - - <listitem><para>The <varname>$XDG_SESSION_ID</varname> - environment variable is initialized. If auditing is available - and <command>pam_loginuid.so</command> was run before this - module (which is highly recommended), the variable is - initialized from the auditing session id - (<filename>/proc/self/sessionid</filename>). Otherwise, an + <listitem><para>If it does not exist yet, the user runtime directory <filename>/run/user/$UID</filename> is + either created or mounted as new <literal>tmpfs</literal> file system with quota applied, and its ownership + changed to the user that is logging in.</para></listitem> + + <listitem><para>The <varname>$XDG_SESSION_ID</varname> environment variable is initialized. If auditing is + available and <command>pam_loginuid.so</command> was run before this module (which is highly recommended), the + variable is initialized from the auditing session id (<filename>/proc/self/sessionid</filename>). Otherwise, an independent session counter is used.</para></listitem> - <listitem><para>A new systemd scope unit is created for the - session. If this is the first concurrent session of the user, an - implicit slice below <filename>user.slice</filename> is - automatically created and the scope placed into it. An instance - of the system service <filename>user@.service</filename>, which - runs the systemd user manager instance, is started. - </para></listitem> + <listitem><para>A new systemd scope unit is created for the session. If this is the first concurrent session of + the user, an implicit per-user slice unit below <filename>user.slice</filename> is automatically created and the + scope placed into it. An instance of the system service <filename>user@.service</filename>, which runs the + systemd user manager instance, is started. </para></listitem> </orderedlist> <para>On logout, this module ensures the following:</para> @@ -89,10 +83,9 @@ <orderedlist> <listitem><para>If enabled in <citerefentry><refentrytitle>logind.conf</refentrytitle> - <manvolnum>5</manvolnum></citerefentry>, all processes of the - session are terminated. If the last concurrent session of a user - ends, the user's systemd instance will be terminated too, and so - will the user's slice unit.</para></listitem> + <manvolnum>5</manvolnum></citerefentry> (<varname>KillUserProcesses=</varname>), all processes of the session are + terminated. If the last concurrent session of a user ends, the user's systemd instance will be terminated too, + and so will the user's slice unit.</para></listitem> <listitem><para>If the last concurrent session of a user ends, the <varname>$XDG_RUNTIME_DIR</varname> directory and all its diff --git a/man/sd_journal_print.xml b/man/sd_journal_print.xml index ff3638c909..a741abe32d 100644 --- a/man/sd_journal_print.xml +++ b/man/sd_journal_print.xml @@ -133,7 +133,7 @@ project='man-pages'><refentrytitle>readv</refentrytitle><manvolnum>3</manvolnum></citerefentry> for details) instead of the format string. Each structure should reference one field of the entry to submit. The second argument specifies the number of structures in the array. <function>sd_journal_sendv()</function> is particularly useful to - submit binary objects to the journal where that is necessary. Note that this function wil not strip trailing + submit binary objects to the journal where that is necessary. Note that this function will not strip trailing whitespace of the passed fields, but passes the specified data along unmodified. This is different from both <function>sd_journal_print()</function> and <function>sd_journal_send()</function> described above, which are based on format strings, and do strip trailing whitespace.</para> diff --git a/man/sd_notify.xml b/man/sd_notify.xml index 6e98041912..4dcefc4baf 100644 --- a/man/sd_notify.xml +++ b/man/sd_notify.xml @@ -268,6 +268,15 @@ <citerefentry><refentrytitle>systemd.service</refentrytitle><manvolnum>5</manvolnum></citerefentry> for details.</para> + <para>Note that <function>sd_notify()</function> notifications may be attributed to units correctly only if either + the sending process is still around at the time PID 1 processes the message, or if the sending process is + explicitly runtime-tracked by the service manager. The latter is the case if the service manager originally forked + off the process, i.e. on all processes that match <varname>NotifyAccess=</varname><option>main</option> or + <varname>NotifyAccess=</varname><option>exec</option>. Conversely, if an auxiliary process of the unit sends an + <function>sd_notify()</function> message and immediately exits, the service manager might not be able to properly + attribute the message to the unit, and thus will ignore it, even if + <varname>NotifyAccess=</varname><option>all</option> is set for it.</para> + <para><function>sd_notifyf()</function> is similar to <function>sd_notify()</function> but takes a <function>printf()</function>-like format string plus diff --git a/man/systemctl.xml b/man/systemctl.xml index 87cf52172b..25db00e5f6 100644 --- a/man/systemctl.xml +++ b/man/systemctl.xml @@ -393,10 +393,14 @@ <xi:include href="user-system-options.xml" xpointer="user" /> <xi:include href="user-system-options.xml" xpointer="system" /> - <!-- we do not document -failed here, as it has been made - redundant by -state=failed, which it predates. To keep - things simple, we only document the new switch, while - keeping the old one around for compatibility only. --> + <varlistentry> + <term><option>--failed</option></term> + + <listitem> + <para>List units in failed state. This is equivalent to + <option>--state=failed</option>.</para> + </listitem> + </varlistentry> <varlistentry> <term><option>--no-wall</option></term> diff --git a/man/systemd-analyze.xml b/man/systemd-analyze.xml index 7d5410d693..095d4e7e78 100644 --- a/man/systemd-analyze.xml +++ b/man/systemd-analyze.xml @@ -354,7 +354,7 @@ Documentation=man:nosuchfile(1) Requires=different.service [Service] -Desription=x +Description=x $ systemd-analyze verify ./user.slice [./user.slice:9] Unknown lvalue 'WhatIsThis' in section 'Unit' diff --git a/man/systemd-cgls.xml b/man/systemd-cgls.xml index e8f0368f48..219514b183 100644 --- a/man/systemd-cgls.xml +++ b/man/systemd-cgls.xml @@ -54,6 +54,12 @@ <arg choice="opt" rep="repeat">OPTIONS</arg> <arg choice="opt" rep="repeat">CGROUP</arg> </cmdsynopsis> + <cmdsynopsis> + <command>systemd-cgls</command> + <arg choice="opt" rep="repeat">OPTIONS</arg> + <arg choice="plain"><option>--unit</option>|<option>--user-unit</option></arg> + <arg choice="opt" rep="repeat">UNIT</arg> + </cmdsynopsis> </refsynopsisdiv> <refsect1> @@ -96,6 +102,21 @@ </varlistentry> <varlistentry> + <term><option>-u</option></term> + <term><option>--unit</option></term> + + <listitem><para>Show cgroup subtrees for the specified units.</para> + </listitem> + </varlistentry> + + <varlistentry> + <term><option>--user-unit</option></term> + + <listitem><para>Show cgroup subtrees for the specified user units.</para> + </listitem> + </varlistentry> + + <varlistentry> <term><option>-k</option></term> <listitem><para>Include kernel threads in output. diff --git a/man/systemd-firstboot.xml b/man/systemd-firstboot.xml index 8cdc297a0e..539422ab98 100644 --- a/man/systemd-firstboot.xml +++ b/man/systemd-firstboot.xml @@ -63,8 +63,14 @@ <para><command>systemd-firstboot</command> initializes the most basic system settings interactively on the first boot, or - optionally non-interactively when a system image is created. The - following settings may be set up:</para> + optionally non-interactively when a system image is created. + The service is started if <varname>ConditionFirstBoot=yes</varname> + is satisfied. This essentially means that <filename>/etc</filename> + is empty, see + <citerefentry><refentrytitle>systemd.unit</refentrytitle><manvolnum>5</manvolnum></citerefentry> + for details.</para> + + <para>The following settings may be set up:</para> <itemizedlist> <listitem><para>The system locale, more specifically the two diff --git a/man/systemd-fstab-generator.xml b/man/systemd-fstab-generator.xml index 5f37e9193e..50d24d67f0 100644 --- a/man/systemd-fstab-generator.xml +++ b/man/systemd-fstab-generator.xml @@ -193,7 +193,7 @@ <para>If set to <option>state</option> the generator will leave the root directory mount point unaltered, however will mount a <literal>tmpfs</literal> file system to - <filename>/var</filename>. In this mode the normal system configuration (i.e the contents of + <filename>/var</filename>. In this mode the normal system configuration (i.e. the contents of <literal>/etc</literal>) is in effect (and may be modified during system runtime), however the system state (i.e. the contents of <literal>/var</literal>) is reset at boot and lost at shutdown.</para> diff --git a/man/systemd-logind.service.xml b/man/systemd-logind.service.xml index f0bdb1c756..9288f48f07 100644 --- a/man/systemd-logind.service.xml +++ b/man/systemd-logind.service.xml @@ -60,8 +60,14 @@ manages user logins. It is responsible for:</para> <itemizedlist> - <listitem><para>Keeping track of users and sessions, their - processes and their idle state</para></listitem> + <listitem><para>Keeping track of users and sessions, their processes and their idle state. This is implemented by + allocating a systemd slice unit for each user below <filename>user.slice</filename>, and a scope unit below it + for each concurrent session of a user. Also, a per-user service manager is started as system service instance of + <filename>user@.service</filename> for each user logged in.</para></listitem> + + <listitem><para>Generating and managing session IDs. If auditing is available and an audit session ID is set for + a session already, the session ID is initialized from it. Otherwise, an independent session counter is + used.</para></listitem> <listitem><para>Providing PolicyKit-based access for users to operations such as system shutdown or sleep</para></listitem> diff --git a/man/systemd-mount.xml b/man/systemd-mount.xml index 06b7c85bd8..8bba286787 100644 --- a/man/systemd-mount.xml +++ b/man/systemd-mount.xml @@ -45,7 +45,8 @@ <refnamediv> <refname>systemd-mount</refname> - <refpurpose>Establish a mount or auto-mount point transiently</refpurpose> + <refname>systemd-umount</refname> + <refpurpose>Establish and destroy transient mount or auto-mount points</refpurpose> </refnamediv> <refsynopsisdiv> @@ -60,6 +61,11 @@ <arg choice="opt" rep="repeat"><replaceable>OPTIONS</replaceable></arg> <arg choice="plain"><option>--list</option></arg> </cmdsynopsis> + <cmdsynopsis> + <command>systemd-umount</command> + <arg choice="opt" rep="repeat"><replaceable>OPTIONS</replaceable></arg> + <arg choice="plain" rep="repeat"><replaceable>WHERE</replaceable></arg> + </cmdsynopsis> </refsynopsisdiv> <refsect1> @@ -91,6 +97,9 @@ <para>Use the <option>--list</option> command to show a terse table of all local, known block devices with file systems that may be mounted with this command.</para> + + <para><command>systemd-umount</command> can be used to unmount a mount or automount point. It is the same + as <command>systemd-mount</command> <option>--unmount</option>.</para> </refsect1> <refsect1> @@ -239,6 +248,15 @@ such as labels, etc.</para></listitem> </varlistentry> + <varlistentry> + <term><option>-u</option></term> + <term><option>--umount</option></term> + + <listitem><para>Stop the mount and automount units corresponding to the specified mount points + <replaceable>WHERE</replaceable>.</para> + </listitem> + </varlistentry> + <xi:include href="user-system-options.xml" xpointer="user" /> <xi:include href="user-system-options.xml" xpointer="system" /> <xi:include href="user-system-options.xml" xpointer="host" /> diff --git a/man/systemd-notify.xml b/man/systemd-notify.xml index 4a8e119eb6..8c56a6b8ed 100644 --- a/man/systemd-notify.xml +++ b/man/systemd-notify.xml @@ -72,10 +72,24 @@ <para>The command line may carry a list of environment variables to send as part of the status update.</para> - <para>Note that systemd will refuse reception of status updates - from this command unless <varname>NotifyAccess=all</varname> is - set for the service unit this command is called from.</para> - + <para>Note that systemd will refuse reception of status updates from this command unless + <varname>NotifyAccess=</varname> is set for the service unit this command is called from.</para> + + <para>Note that <function>sd_notify()</function> notifications may be attributed to units correctly only if either + the sending process is still around at the time PID 1 processes the message, or if the sending process is + explicitly runtime-tracked by the service manager. The latter is the case if the service manager originally forked + off the process, i.e. on all processes that match <varname>NotifyAccess=</varname><option>main</option> or + <varname>NotifyAccess=</varname><option>exec</option>. Conversely, if an auxiliary process of the unit sends an + <function>sd_notify()</function> message and immediately exits, the service manager might not be able to properly + attribute the message to the unit, and thus will ignore it, even if + <varname>NotifyAccess=</varname><option>all</option> is set for it.</para> + + <para><command>systemd-notify</command> will first attempt to invoke <function>sd_notify()</function> pretending to + have the PID of the invoking process. This will only succeed when invoked with sufficient privileges. On failure, + it will then fall back to invoking it under its own PID. This behaviour is useful in order that when the tool is + invoked from a shell script the shell process — and not the <command>systemd-notify</command> process — appears as + sender of the message, which in turn is helpful if the shell process is the main process of a service, due to the + limitations of <varname>NotifyAccess=</varname><option>all</option> described above.</para> </refsect1> <refsect1> diff --git a/man/systemd-nspawn.xml b/man/systemd-nspawn.xml index f6b3f57fc7..17c14e9f22 100644 --- a/man/systemd-nspawn.xml +++ b/man/systemd-nspawn.xml @@ -256,10 +256,14 @@ <listitem><para>Takes a data integrity (dm-verity) root hash specified in hexadecimal. This option enables data integrity checks using dm-verity, if the used image contains the appropriate integrity data (see above). The - specified hash must match the root hash of integrity data, and is usually at least 256bits (and hence 64 - hexadecimal characters) long (in case of SHA256 for example). If this option is not specified, but a file with - the <filename>.roothash</filename> suffix is found next to the image file, bearing otherwise the same name the - root hash is read from it and automatically used.</para></listitem> + specified hash must match the root hash of integrity data, and is usually at least 256 bits (and hence 64 + formatted hexadecimal characters) long (in case of SHA256 for example). If this option is not specified, but + the image file carries the <literal>user.verity.roothash</literal> extended file attribute (see <citerefentry + project='man-pages'><refentrytitle>xattr</refentrytitle><manvolnum>7</manvolnum></citerefentry>), then the root + hash is read from it, also as formatted hexadecimal characters. If the extended file attribute is not found (or + is not supported by the underlying file system), but a file with the <filename>.roothash</filename> suffix is + found next to the image file, bearing otherwise the same name, the root hash is read from it and automatically + used, also as formatted hexadecimal characters.</para></listitem> </varlistentry> <varlistentry> @@ -336,6 +340,22 @@ </varlistentry> <varlistentry> + <term><option>--pivot-root=</option></term> + + <listitem><para>Pivot the specified directory to <filename>/</filename> inside the container, and either unmount the + container's old root, or pivot it to another specified directory. Takes one of: a path argument — in which case the + specified path will be pivoted to <filename>/</filename> and the old root will be unmounted; or a colon-separated pair + of new root path and pivot destination for the old root. The new root path will be pivoted to <filename>/</filename>, + and the old <filename>/</filename> will be pivoted to the other directory. Both paths must be absolute, and are resolved + in the container's file system namespace.</para> + + <para>This is for containers which have several bootable directories in them; for example, several + <ulink url="https://ostree.readthedocs.io/en/latest/">OSTree</ulink> deployments. It emulates the behavior of + the boot loader and initial RAM disk which normally select which directory to mount as the root and start the + container's PID 1 in.</para></listitem> + </varlistentry> + + <varlistentry> <term><option>-u</option></term> <term><option>--user=</option></term> @@ -1026,8 +1046,9 @@ <example> <title>Download a Fedora image and start a shell in it</title> - <programlisting># machinectl pull-raw --verify=no http://ftp.halifax.rwth-aachen.de/fedora/linux/releases/24/CloudImages/x86_64/images/Fedora-Cloud-Base-24-1.2.x86_64.raw.xz -# systemd-nspawn -M Fedora-Cloud-Base-24-1.2.x86_64.raw</programlisting> + <programlisting># machinectl pull-raw --verify=no \ + https://download.fedoraproject.org/pub/fedora/linux/releases/25/CloudImages/x86_64/images/Fedora-Cloud-Base-25-1.3.x86_64.raw.xz +# systemd-nspawn -M Fedora-Cloud-Base-25-1.3.x86_64.raw</programlisting> <para>This downloads an image using <citerefentry><refentrytitle>machinectl</refentrytitle><manvolnum>1</manvolnum></citerefentry> @@ -1037,7 +1058,9 @@ <example> <title>Build and boot a minimal Fedora distribution in a container</title> - <programlisting># dnf -y --releasever=23 --installroot=/srv/mycontainer --disablerepo='*' --enablerepo=fedora --enablerepo=updates install systemd passwd dnf fedora-release vim-minimal + <programlisting># dnf -y --releasever=25 --installroot=/srv/mycontainer \ + --disablerepo='*' --enablerepo=fedora --enablerepo=updates install \ + systemd passwd dnf fedora-release vim-minimal # systemd-nspawn -bD /srv/mycontainer</programlisting> <para>This installs a minimal Fedora distribution into the @@ -1080,7 +1103,16 @@ <title>Run a container with SELinux sandbox security contexts</title> <programlisting># chcon system_u:object_r:svirt_sandbox_file_t:s0:c0,c1 -R /srv/container -# systemd-nspawn -L system_u:object_r:svirt_sandbox_file_t:s0:c0,c1 -Z system_u:system_r:svirt_lxc_net_t:s0:c0,c1 -D /srv/container /bin/sh</programlisting> +# systemd-nspawn -L system_u:object_r:svirt_sandbox_file_t:s0:c0,c1 \ + -Z system_u:system_r:svirt_lxc_net_t:s0:c0,c1 -D /srv/container /bin/sh</programlisting> + </example> + + <example> + <title>Run a container with an OSTree deployment</title> + + <programlisting># systemd-nspawn -b -i ~/image.raw \ + --pivot-root=/ostree/deploy/$OS/deploy/$CHECKSUM:/sysroot \ + --bind=+/sysroot/ostree/deploy/$OS/var:/var</programlisting> </example> </refsect1> diff --git a/man/systemd-resolve.xml b/man/systemd-resolve.xml index f3dbaec744..50da971b07 100644 --- a/man/systemd-resolve.xml +++ b/man/systemd-resolve.xml @@ -273,7 +273,7 @@ <literal>payload</literal>, the payload of the packet is exported. If the argument is <literal>packet</literal>, the whole packet is dumped in wire format, prefixed by length specified as a little-endian 64-bit number. This format allows multiple packets - to be dumped and unambigously parsed.</para></listitem> + to be dumped and unambiguously parsed.</para></listitem> </varlistentry> <varlistentry> diff --git a/man/systemd-run.xml b/man/systemd-run.xml index 8d881f15d6..5e44b1523d 100644 --- a/man/systemd-run.xml +++ b/man/systemd-run.xml @@ -77,7 +77,7 @@ other service, and thus shows up in the output of <command>systemctl list-units</command> like any other unit. It will run in a clean and detached execution environment, with the service manager as its parent process. In this mode, <command>systemd-run</command> will start the service asynchronously in the background and return after the - command has begun execution (unless <option>--no-block</option> or <option>--watch</option> are specified, see + command has begun execution (unless <option>--no-block</option> or <option>--wait</option> are specified, see below).</para> <para>If a command is run as transient scope unit, it will be executed by <command>systemd-run</command> itself as @@ -250,7 +250,7 @@ command. See <varname>OnActiveSec=</varname>, <varname>OnBootSec=</varname>, <varname>OnStartupSec=</varname>, <varname>OnUnitActiveSec=</varname> and <varname>OnUnitInactiveSec=</varname> in <citerefentry><refentrytitle>systemd.timer</refentrytitle><manvolnum>5</manvolnum></citerefentry> for - details. These options may not be combined with <option>--scope</option>.</para> + details. These options may not be combined with <option>--scope</option> or <option>--pty</option>.</para> </listitem> </varlistentry> @@ -259,7 +259,7 @@ <listitem><para>Defines a calendar timer for starting the specified command. See <varname>OnCalendar=</varname> in <citerefentry><refentrytitle>systemd.timer</refentrytitle><manvolnum>5</manvolnum></citerefentry>. This - option may not be combined with <option>--scope</option>.</para> + option may not be combined with <option>--scope</option> or <option>--pty</option>.</para> </listitem> </varlistentry> diff --git a/man/systemd-socket-proxyd.xml b/man/systemd-socket-proxyd.xml index a86b13daa8..b8a7800b82 100644 --- a/man/systemd-socket-proxyd.xml +++ b/man/systemd-socket-proxyd.xml @@ -135,8 +135,7 @@ server { </example> <example> <title>Enabling the proxy</title> - <programlisting><![CDATA[# systemctl enable proxy-to-nginx.socket -# systemctl start proxy-to-nginx.socket + <programlisting><![CDATA[# systemctl enable --now proxy-to-nginx.socket $ curl http://localhost:80/]]></programlisting> </example> </refsect2> @@ -176,8 +175,7 @@ server { </example> <example> <title>Enabling the proxy</title> - <programlisting><![CDATA[# systemctl enable proxy-to-nginx.socket -# systemctl start proxy-to-nginx.socket + <programlisting><![CDATA[# systemctl enable --now proxy-to-nginx.socket $ curl http://localhost:80/]]></programlisting> </example> </refsect2> diff --git a/man/systemd-suspend.service.xml b/man/systemd-suspend.service.xml index a8beb86f4d..c7733f2885 100644 --- a/man/systemd-suspend.service.xml +++ b/man/systemd-suspend.service.xml @@ -89,8 +89,10 @@ <para>Note that scripts or binaries dropped in <filename>/usr/lib/systemd/system-sleep/</filename> are intended for local use only and should be considered hacks. If applications - want to be notified of system suspend/hibernation and resume, - there are much nicer interfaces available.</para> + want to react to system suspend/hibernation and resume, + they should rather use the <ulink + url="http://www.freedesktop.org/wiki/Software/systemd/inhibit">Inhibitor + interface</ulink>.</para> <para>Note that <filename>systemd-suspend.service</filename>, diff --git a/man/systemd.exec.xml b/man/systemd.exec.xml index 07da57e11a..16f0f07db7 100644 --- a/man/systemd.exec.xml +++ b/man/systemd.exec.xml @@ -86,12 +86,10 @@ <para>A few execution parameters result in additional, automatic dependencies to be added.</para> - <para>Units with <varname>WorkingDirectory=</varname> or - <varname>RootDirectory=</varname> set automatically gain - dependencies of type <varname>Requires=</varname> and - <varname>After=</varname> on all mount units required to access - the specified paths. This is equivalent to having them listed - explicitly in <varname>RequiresMountsFor=</varname>.</para> + <para>Units with <varname>WorkingDirectory=</varname>, <varname>RootDirectory=</varname> or + <varname>RootImage=</varname> set automatically gain dependencies of type <varname>Requires=</varname> and + <varname>After=</varname> on all mount units required to access the specified paths. This is equivalent to having + them listed explicitly in <varname>RequiresMountsFor=</varname>.</para> <para>Similar, units with <varname>PrivateTmp=</varname> enabled automatically get mount unit dependencies for all mounts required to access <filename>/tmp</filename> and <filename>/var/tmp</filename>. They will also gain an @@ -117,9 +115,10 @@ <varname>User=</varname> is used. If not set, defaults to the root directory when systemd is running as a system instance and the respective user's home directory if run as user. If the setting is prefixed with the <literal>-</literal> character, a missing working directory is not considered fatal. If - <varname>RootDirectory=</varname> is not set, then <varname>WorkingDirectory=</varname> is relative to the root - of the system running the service manager. Note that setting this parameter might result in additional - dependencies to be added to the unit (see above).</para></listitem> + <varname>RootDirectory=</varname>/<varname>RootImage=</varname> is not set, then + <varname>WorkingDirectory=</varname> is relative to the root of the system running the service manager. Note + that setting this parameter might result in additional dependencies to be added to the unit (see + above).</para></listitem> </varlistentry> <varlistentry> @@ -132,8 +131,33 @@ the <function>chroot()</function> jail. Note that setting this parameter might result in additional dependencies to be added to the unit (see above).</para> - <para>The <varname>PrivateUsers=</varname> setting is particularly useful in conjunction with - <varname>RootDirectory=</varname>. For details, see below.</para></listitem> + <para>The <varname>MountAPIVFS=</varname> and <varname>PrivateUsers=</varname> settings are particularly useful + in conjunction with <varname>RootDirectory=</varname>. For details, see below.</para></listitem> + </varlistentry> + + <varlistentry> + <term><varname>RootImage=</varname></term> + <listitem><para>Takes a path to a block device node or regular file as argument. This call is similar to + <varname>RootDirectory=</varname> however mounts a file system hierarchy from a block device node or loopack + file instead of a directory. The device node or file system image file needs to contain a file system without a + partition table, or a file system within an MBR/MS-DOS or GPT partition table with only a single + Linux-compatible partition, or a set of file systems within a GPT partition table that follows the <ulink + url="http://www.freedesktop.org/wiki/Specifications/DiscoverablePartitionsSpec/">Discoverable Partitions + Specification</ulink>.</para></listitem> + </varlistentry> + + <varlistentry> + <term><varname>MountAPIVFS=</varname></term> + + <listitem><para>Takes a boolean argument. If on, a private mount namespace for the unit's processes is created + and the API file systems <filename>/proc</filename>, <filename>/sys</filename>, and <filename>/dev</filename> + are mounted inside of it, unless they are already mounted. Note that this option has no effect unless used in + conjunction with <varname>RootDirectory=</varname>/<varname>RootImage=</varname> as these three mounts are + generally mounted in the host anyway, and unless the root directory is changed, the private mount namespace + will be a 1:1 copy of the host's, and include these three mounts. Note that the <filename>/dev</filename> file + system of the host is bind mounted if this option is used without <varname>PrivateDevices=</varname>. To run + the service with a private, minimal version of <filename>/dev/</filename>, combine this option with + <varname>PrivateDevices=</varname>.</para></listitem> </varlistentry> <varlistentry> @@ -938,7 +962,7 @@ access a process might have to the file system hierarchy. Each setting takes a space-separated list of paths relative to the host's root directory (i.e. the system running the service manager). Note that if paths contain symlinks, they are resolved relative to the root directory set with - <varname>RootDirectory=</varname>.</para> + <varname>RootDirectory=</varname>/<varname>RootImage=</varname>.</para> <para>Paths listed in <varname>ReadWritePaths=</varname> are accessible from within the namespace with the same access modes as from outside of it. Paths listed in <varname>ReadOnlyPaths=</varname> are accessible for @@ -957,9 +981,10 @@ <para>Paths in <varname>ReadWritePaths=</varname>, <varname>ReadOnlyPaths=</varname> and <varname>InaccessiblePaths=</varname> may be prefixed with <literal>-</literal>, in which case they will be ignored when they do not exist. If prefixed with <literal>+</literal> the paths are taken relative to the root - directory of the unit, as configured with <varname>RootDirectory=</varname>, instead of relative to the root - directory of the host (see above). When combining <literal>-</literal> and <literal>+</literal> on the same - path make sure to specify <literal>-</literal> first, and <literal>+</literal> second.</para> + directory of the unit, as configured with <varname>RootDirectory=</varname>/<varname>RootImage=</varname>, + instead of relative to the root directory of the host (see above). When combining <literal>-</literal> and + <literal>+</literal> on the same path make sure to specify <literal>-</literal> first, and <literal>+</literal> + second.</para> <para>Note that using this setting will disconnect propagation of mounts from the service to the host (propagation in the opposite direction continues to work). This means that this setting may not be used for @@ -981,7 +1006,7 @@ source path, destination path and option string, where the latter two are optional. If only a source path is specified the source and destination is taken to be the same. The option string may be either <literal>rbind</literal> or <literal>norbind</literal> for configuring a recursive or non-recursive bind - mount. If the destination parth is omitted, the option string must be omitted too.</para> + mount. If the destination path is omitted, the option string must be omitted too.</para> <para><varname>BindPaths=</varname> creates regular writable bind mounts (unless the source file system mount is already marked read-only), while <varname>BindReadOnlyPaths=</varname> creates read-only bind mounts. These @@ -990,9 +1015,9 @@ that in this case both read-only and regular bind mounts are reset, regardless which of the two settings is used.</para> - <para>This option is particularly useful when <varname>RootDirectory=</varname> is used. In this case the - source path refers to a path on the host file system, while the destination path referes to a path below the - root directory of the unit.</para></listitem> + <para>This option is particularly useful when <varname>RootDirectory=</varname>/<varname>RootImage=</varname> + is used. In this case the source path refers to a path on the host file system, while the destination path + refers to a path below the root directory of the unit.</para></listitem> </varlistentry> <varlistentry> @@ -1080,10 +1105,10 @@ such as <varname>CapabilityBoundingSet=</varname> will affect only the latter, and there's no way to acquire additional capabilities in the host's user namespace. Defaults to off.</para> - <para>This setting is particularly useful in conjunction with <varname>RootDirectory=</varname>, as the need to - synchronize the user and group databases in the root directory and on the host is reduced, as the only users - and groups who need to be matched are <literal>root</literal>, <literal>nobody</literal> and the unit's own - user and group.</para></listitem> + <para>This setting is particularly useful in conjunction with + <varname>RootDirectory=</varname>/<varname>RootImage=</varname>, as the need to synchronize the user and group + databases in the root directory and on the host is reduced, as the only users and groups who need to be matched + are <literal>root</literal>, <literal>nobody</literal> and the unit's own user and group.</para></listitem> </varlistentry> <varlistentry> @@ -1335,6 +1360,11 @@ filter is reset, all prior assignments will have no effect. This does not affect commands prefixed with <literal>+</literal>.</para> + <para>Note that on systems supporting multiple ABIs (such as x86/x86-64) it is recommended to turn off + alternative ABIs for services, so that they cannot be used to circumvent the restrictions of this + option. Specifically, it is recommended to combine this option with + <varname>SystemCallArchitectures=native</varname> or similar.</para> + <para>Note that strict system call filters may impact execution and error handling code paths of the service invocation. Specifically, access to the <function>execve</function> system call is required for the execution of the service binary — if it is blocked service invocation will necessarily fail. Also, if execution of the @@ -1484,64 +1514,62 @@ <varlistentry> <term><varname>SystemCallArchitectures=</varname></term> - <listitem><para>Takes a space-separated list of architecture identifiers to - include in the system call filter. The known architecture identifiers are the same - as for <varname>ConditionArchitecture=</varname> described in - <citerefentry><refentrytitle>systemd.unit</refentrytitle><manvolnum>5</manvolnum></citerefentry>, - as well as <constant>x32</constant>, <constant>mips64-n32</constant>, - <constant>mips64-le-n32</constant>, and the special identifier - <constant>native</constant>. Only system calls of the specified architectures will - be permitted to processes of this unit. This is an effective way to disable - compatibility with non-native architectures for processes, for example to prohibit - execution of 32-bit x86 binaries on 64-bit x86-64 systems. The special - <constant>native</constant> identifier implicitly maps to the native architecture - of the system (or more strictly: to the architecture the system manager is - compiled for). If running in user mode, or in system mode, but without the - <constant>CAP_SYS_ADMIN</constant> capability (e.g. setting - <varname>User=nobody</varname>), <varname>NoNewPrivileges=yes</varname> is - implied. Note that setting this option to a non-empty list implies that - <constant>native</constant> is included too. By default, this option is set to the - empty list, i.e. no architecture system call filtering is applied. - </para></listitem> + <listitem><para>Takes a space-separated list of architecture identifiers to include in the system call + filter. The known architecture identifiers are the same as for <varname>ConditionArchitecture=</varname> + described in <citerefentry><refentrytitle>systemd.unit</refentrytitle><manvolnum>5</manvolnum></citerefentry>, + as well as <constant>x32</constant>, <constant>mips64-n32</constant>, <constant>mips64-le-n32</constant>, and + the special identifier <constant>native</constant>. Only system calls of the specified architectures will be + permitted to processes of this unit. This is an effective way to disable compatibility with non-native + architectures for processes, for example to prohibit execution of 32-bit x86 binaries on 64-bit x86-64 + systems. The special <constant>native</constant> identifier implicitly maps to the native architecture of the + system (or more strictly: to the architecture the system manager is compiled for). If running in user mode, or + in system mode, but without the <constant>CAP_SYS_ADMIN</constant> capability (e.g. setting + <varname>User=nobody</varname>), <varname>NoNewPrivileges=yes</varname> is implied. Note that setting this + option to a non-empty list implies that <constant>native</constant> is included too. By default, this option is + set to the empty list, i.e. no system call architecture filtering is applied.</para> + + <para>Note that system call filtering is not equally effective on all architectures. For example, on x86 + filtering of network socket-related calls is not possible, due to ABI limitations — a limitation that x86-64 + does not have, however. On systems supporting multiple ABIs at the same time — such as x86/x86-64 — it is hence + recommended to limit the set of permitted system call architectures so that secondary ABIs may not be used to + circumvent the restrictions applied to the native ABI of the system. In particular, setting + <varname>SystemCallFilter=native</varname> is a good choice for disabling non-native ABIs.</para> + + <para>System call architectures may also be restricted system-wide via the + <varname>SystemCallArchitectures=</varname> option in the global configuration. See + <citerefentry><refentrytitle>systemd-system.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry> for + details.</para></listitem> </varlistentry> <varlistentry> <term><varname>RestrictAddressFamilies=</varname></term> - <listitem><para>Restricts the set of socket address families - accessible to the processes of this unit. Takes a - space-separated list of address family names to whitelist, - such as - <constant>AF_UNIX</constant>, - <constant>AF_INET</constant> or - <constant>AF_INET6</constant>. When - prefixed with <constant>~</constant> the listed address - families will be applied as blacklist, otherwise as whitelist. - Note that this restricts access to the - <citerefentry project='man-pages'><refentrytitle>socket</refentrytitle><manvolnum>2</manvolnum></citerefentry> - system call only. Sockets passed into the process by other - means (for example, by using socket activation with socket - units, see - <citerefentry><refentrytitle>systemd.socket</refentrytitle><manvolnum>5</manvolnum></citerefentry>) - are unaffected. Also, sockets created with - <function>socketpair()</function> (which creates connected - AF_UNIX sockets only) are unaffected. Note that this option - has no effect on 32-bit x86 and is ignored (but works - correctly on x86-64). If running in user mode, or in system - mode, but without the <constant>CAP_SYS_ADMIN</constant> - capability (e.g. setting <varname>User=nobody</varname>), - <varname>NoNewPrivileges=yes</varname> is implied. By - default, no restriction applies, all address families are - accessible to processes. If assigned the empty string, any - previous list changes are undone.</para> - - <para>Use this option to limit exposure of processes to remote - systems, in particular via exotic network protocols. Note that - in most cases, the local <constant>AF_UNIX</constant> address - family should be included in the configured whitelist as it is - frequently used for local communication, including for + <listitem><para>Restricts the set of socket address families accessible to the processes of this unit. Takes a + space-separated list of address family names to whitelist, such as <constant>AF_UNIX</constant>, + <constant>AF_INET</constant> or <constant>AF_INET6</constant>. When prefixed with <constant>~</constant> the + listed address families will be applied as blacklist, otherwise as whitelist. Note that this restricts access + to the <citerefentry + project='man-pages'><refentrytitle>socket</refentrytitle><manvolnum>2</manvolnum></citerefentry> system call + only. Sockets passed into the process by other means (for example, by using socket activation with socket + units, see <citerefentry><refentrytitle>systemd.socket</refentrytitle><manvolnum>5</manvolnum></citerefentry>) + are unaffected. Also, sockets created with <function>socketpair()</function> (which creates connected AF_UNIX + sockets only) are unaffected. Note that this option has no effect on 32-bit x86, s390, s390x, mips, mips-le, + ppc, ppc-le, pcc64, ppc64-le and is ignored (but works correctly on other ABIs, including x86-64). Note that on + systems supporting multiple ABIs (such as x86/x86-64) it is recommended to turn off alternative ABIs for + services, so that they cannot be used to circumvent the restrictions of this option. Specifically, it is + recommended to combine this option with <varname>SystemCallArchitectures=native</varname> or similar. If + running in user mode, or in system mode, but without the <constant>CAP_SYS_ADMIN</constant> capability + (e.g. setting <varname>User=nobody</varname>), <varname>NoNewPrivileges=yes</varname> is implied. By default, + no restrictions apply, all address families are accessible to processes. If assigned the empty string, any + previous address familiy restriction changes are undone. This setting does not affect commands prefixed with + <literal>+</literal>.</para> + + <para>Use this option to limit exposure of processes to remote access, in particular via exotic and sensitive + network protocols, such as <constant>AF_PACKET</constant>. Note that in most cases, the local + <constant>AF_UNIX</constant> address family should be included in the configured whitelist as it is frequently + used for local communication, including for <citerefentry><refentrytitle>syslog</refentrytitle><manvolnum>2</manvolnum></citerefentry> - logging. This does not affect commands prefixed with <literal>+</literal>.</para></listitem> + logging.</para></listitem> </varlistentry> <varlistentry> @@ -1565,11 +1593,10 @@ <citerefentry><refentrytitle>setns</refentrytitle><manvolnum>2</manvolnum></citerefentry> system calls, taking the specified flags parameters into account. Note that — if this option is used — in addition to restricting creation and switching of the specified types of namespaces (or all of them, if true) access to the - <function>setns()</function> system call with a zero flags parameter is prohibited. - If running in user mode, or in system mode, but without the <constant>CAP_SYS_ADMIN</constant> - capability (e.g. setting <varname>User=</varname>), <varname>NoNewPrivileges=yes</varname> - is implied. - </para></listitem> + <function>setns()</function> system call with a zero flags parameter is prohibited. This setting is only + supported on x86, x86-64, s390 and s390x, and enforces no restrictions on other architectures. If running in user + mode, or in system mode, but without the <constant>CAP_SYS_ADMIN</constant> capability (e.g. setting + <varname>User=</varname>), <varname>NoNewPrivileges=yes</varname> is implied. </para></listitem> </varlistentry> <varlistentry> @@ -1618,22 +1645,23 @@ <term><varname>MemoryDenyWriteExecute=</varname></term> <listitem><para>Takes a boolean argument. If set, attempts to create memory mappings that are writable and - executable at the same time, or to change existing memory mappings to become executable, or mapping shared memory - segments as executable are prohibited. - Specifically, a system call filter is added that rejects - <citerefentry><refentrytitle>mmap</refentrytitle><manvolnum>2</manvolnum></citerefentry> - system calls with both <constant>PROT_EXEC</constant> and <constant>PROT_WRITE</constant> set, - <citerefentry><refentrytitle>mprotect</refentrytitle><manvolnum>2</manvolnum></citerefentry> - system calls with <constant>PROT_EXEC</constant> set and - <citerefentry><refentrytitle>shmat</refentrytitle><manvolnum>2</manvolnum></citerefentry> - system calls with <constant>SHM_EXEC</constant> set. Note that this option is incompatible with programs - that generate program code dynamically at runtime, such as JIT execution engines, or programs compiled making - use of the code "trampoline" feature of various C compilers. This option improves service security, as it makes - harder for software exploits to change running code dynamically. - If running in user mode, or in system mode, but without the <constant>CAP_SYS_ADMIN</constant> - capability (e.g. setting <varname>User=</varname>), <varname>NoNewPrivileges=yes</varname> - is implied. - </para></listitem> + executable at the same time, or to change existing memory mappings to become executable, or mapping shared + memory segments as executable are prohibited. Specifically, a system call filter is added that rejects + <citerefentry><refentrytitle>mmap</refentrytitle><manvolnum>2</manvolnum></citerefentry> system calls with both + <constant>PROT_EXEC</constant> and <constant>PROT_WRITE</constant> set, + <citerefentry><refentrytitle>mprotect</refentrytitle><manvolnum>2</manvolnum></citerefentry> system calls with + <constant>PROT_EXEC</constant> set and + <citerefentry><refentrytitle>shmat</refentrytitle><manvolnum>2</manvolnum></citerefentry> system calls with + <constant>SHM_EXEC</constant> set. Note that this option is incompatible with programs that generate program + code dynamically at runtime, such as JIT execution engines, or programs compiled making use of the code + "trampoline" feature of various C compilers. This option improves service security, as it makes harder for + software exploits to change running code dynamically. Note that this feature is fully available on x86-64, and + partially on x86. Specifically, the <function>shmat()</function> protection is not available on x86. Note that + on systems supporting multiple ABIs (such as x86/x86-64) it is recommended to turn off alternative ABIs for + services, so that they cannot be used to circumvent the restrictions of this option. Specifically, it is + recommended to combine this option with <varname>SystemCallArchitectures=native</varname> or similar. If + running in user mode, or in system mode, but without the <constant>CAP_SYS_ADMIN</constant> capability + (e.g. setting <varname>User=</varname>), <varname>NoNewPrivileges=yes</varname> is implied. </para></listitem> </varlistentry> <varlistentry> diff --git a/man/systemd.journal-fields.xml b/man/systemd.journal-fields.xml index 494f97aad1..2b0acee407 100644 --- a/man/systemd.journal-fields.xml +++ b/man/systemd.journal-fields.xml @@ -243,6 +243,16 @@ </varlistentry> <varlistentry> + <term><varname>_SYSTEMD_INVOCATION_ID=</varname></term> + <listitem> + <para>The invocation ID for the runtime cycle of the unit + the message was generated in, as available to processes + of the unit in <varname>$INVOCATION_ID</varname> (see + <citerefentry><refentrytitle>systemd.exec</refentrytitle><manvolnum>5</manvolnum></citerefentry>).</para> + </listitem> + </varlistentry> + + <varlistentry> <term><varname>_HOSTNAME=</varname></term> <listitem> <para>The name of the originating host.</para> diff --git a/man/systemd.mount.xml b/man/systemd.mount.xml index 2117433bf0..bb372d788a 100644 --- a/man/systemd.mount.xml +++ b/man/systemd.mount.xml @@ -337,14 +337,12 @@ <varlistentry> <term><varname>What=</varname></term> - <listitem><para>Takes an absolute path of a device node, file - or other resource to mount. See - <citerefentry project='man-pages'><refentrytitle>mount</refentrytitle><manvolnum>8</manvolnum></citerefentry> - for details. If this refers to a device node, a dependency on - the respective device unit is automatically created. (See - <citerefentry><refentrytitle>systemd.device</refentrytitle><manvolnum>5</manvolnum></citerefentry> - for more information.) This option is - mandatory.</para></listitem> + <listitem><para>Takes an absolute path of a device node, file or other resource to mount. See <citerefentry + project='man-pages'><refentrytitle>mount</refentrytitle><manvolnum>8</manvolnum></citerefentry> for details. If + this refers to a device node, a dependency on the respective device unit is automatically created. (See + <citerefentry><refentrytitle>systemd.device</refentrytitle><manvolnum>5</manvolnum></citerefentry> for more + information.) This option is mandatory. Note that the usual specifier expansion is applied to this setting, + literal percent characters should hence be written as <literal>%%</literal>.</para></listitem> </varlistentry> <varlistentry> @@ -366,9 +364,9 @@ <varlistentry> <term><varname>Options=</varname></term> - <listitem><para>Mount options to use when mounting. This takes - a comma-separated list of options. This setting is - optional.</para></listitem> + <listitem><para>Mount options to use when mounting. This takes a comma-separated list of options. This setting + is optional. Note that the usual specifier expansion is applied to this setting, literal percent characters + should hence be written as <literal>%%</literal>.</para></listitem> </varlistentry> <varlistentry> diff --git a/man/systemd.network.xml b/man/systemd.network.xml index 8d44779a0c..b807ebf29b 100644 --- a/man/systemd.network.xml +++ b/man/systemd.network.xml @@ -612,6 +612,25 @@ </para></listitem> </varlistentry> <varlistentry> + <term><varname>IPv6ProxyNDPAddress=</varname></term> + <listitem><para>An IPv6 address, for which Neighbour Advertisement + messages will be proxied. + Proxy NDP (Neighbor Discovery Protocol) is a technique for IPv6 to + allow routing of addresses to a different destination when peers expect them + to be present on a certain physical link. + In this case a router answers Neighbour Advertisement messages intended for + another machine by offering its own MAC address as destination. + Unlike proxy ARP for IPv4, is not enabled globally, but will only send Neighbour + Advertisement messages for addresses in the IPv6 neighbor proxy table, + which can also be shown by <command>ip -6 neighbour show proxy</command> + This option may be specified more than once. systemd-networkd will control the + per-interface `proxy_ndp` switch for each configured interface, depending on whether + there are <option>IPv6ProxyNDPAddress=</option> entries configured and add these to + the kernels IPv6 neighbor proxy table. + Defaults to unset. + </para></listitem> + </varlistentry> + <varlistentry> <term><varname>Bridge=</varname></term> <listitem> <para>The name of the bridge to add the link to. See @@ -1454,7 +1473,7 @@ Name=bond1 Kind=bond </programlisting> - <programlisting># /etc/systemd/network/30-bond1-dev1.nework + <programlisting># /etc/systemd/network/30-bond1-dev1.network [Match] MACAddress=52:54:00:e9:64:41 @@ -1462,7 +1481,7 @@ MACAddress=52:54:00:e9:64:41 Bond=bond1 </programlisting> - <programlisting># /etc/systemd/network/30-bond1-dev2.nework + <programlisting># /etc/systemd/network/30-bond1-dev2.network [Match] MACAddress=52:54:00:e9:64:42 diff --git a/man/systemd.nspawn.xml b/man/systemd.nspawn.xml index 7143188356..4f3f052911 100644 --- a/man/systemd.nspawn.xml +++ b/man/systemd.nspawn.xml @@ -202,6 +202,15 @@ </varlistentry> <varlistentry> + <term><varname>PivotRoot=</varname></term> + + <listitem><para>Selects a directory to pivot to <filename>/</filename> inside the container when starting up. + Takes a single path, or a pair of two paths separated by a colon. Both paths must be absolute, and are resolved + in the container's file system namespace. This corresponds to the <option>--pivot-root=</option> command line + switch.</para></listitem> + </varlistentry> + + <varlistentry> <term><varname>Capability=</varname></term> <term><varname>DropCapability=</varname></term> diff --git a/man/systemd.offline-updates.xml b/man/systemd.offline-updates.xml index d673cf5db8..06690b41f4 100644 --- a/man/systemd.offline-updates.xml +++ b/man/systemd.offline-updates.xml @@ -91,7 +91,7 @@ update units. Only one service should perform an update (see the next point), and all the other ones should exit cleanly with a "success" return code and without doing anything. Update services should be ordered after <filename>sysinit.target</filename> - so that the update starts after after all file systems have been mounted.</para> + so that the update starts after all file systems have been mounted.</para> </listitem> <listitem> diff --git a/man/systemd.service.xml b/man/systemd.service.xml index 522ed5e61e..627176750f 100644 --- a/man/systemd.service.xml +++ b/man/systemd.service.xml @@ -136,9 +136,10 @@ process it supervises. A number of options that may be used in this section are shared with other unit types. These options are documented in - <citerefentry><refentrytitle>systemd.exec</refentrytitle><manvolnum>5</manvolnum></citerefentry> + <citerefentry><refentrytitle>systemd.exec</refentrytitle><manvolnum>5</manvolnum></citerefentry>, + <citerefentry><refentrytitle>systemd.kill</refentrytitle><manvolnum>5</manvolnum></citerefentry> and - <citerefentry><refentrytitle>systemd.kill</refentrytitle><manvolnum>5</manvolnum></citerefentry>. + <citerefentry><refentrytitle>systemd.resource-control</refentrytitle><manvolnum>5</manvolnum></citerefentry>. The options specific to the <literal>[Service]</literal> section of service units are the following:</para> @@ -792,26 +793,26 @@ <varlistentry> <term><varname>NotifyAccess=</varname></term> - <listitem><para>Controls access to the service status - notification socket, as accessible via the - <citerefentry><refentrytitle>sd_notify</refentrytitle><manvolnum>3</manvolnum></citerefentry> - call. Takes one of <option>none</option> (the default), - <option>main</option>, <option>exec</option> or - <option>all</option>. If <option>none</option>, no daemon status - updates are accepted from the service processes, all status - update messages are ignored. If <option>main</option>, only - service updates sent from the main process of the service are - accepted. If <option>exec</option>, only service updates sent - from any of the control processes originating from one of the - <varname>Exec*=</varname> commands are accepted. If - <option>all</option>, all services updates from all members of - the service's control group are accepted. This option should - be set to open access to the notification socket when using - <varname>Type=notify</varname> or - <varname>WatchdogSec=</varname> (see above). If those options - are used but <varname>NotifyAccess=</varname> is not - configured, it will be implicitly set to - <option>main</option>.</para></listitem> + <listitem><para>Controls access to the service status notification socket, as accessible via the + <citerefentry><refentrytitle>sd_notify</refentrytitle><manvolnum>3</manvolnum></citerefentry> call. Takes one + of <option>none</option> (the default), <option>main</option>, <option>exec</option> or + <option>all</option>. If <option>none</option>, no daemon status updates are accepted from the service + processes, all status update messages are ignored. If <option>main</option>, only service updates sent from the + main process of the service are accepted. If <option>exec</option>, only service updates sent from any of the + main or control processes originating from one of the <varname>Exec*=</varname> commands are accepted. If + <option>all</option>, all services updates from all members of the service's control group are accepted. This + option should be set to open access to the notification socket when using <varname>Type=notify</varname> or + <varname>WatchdogSec=</varname> (see above). If those options are used but <varname>NotifyAccess=</varname> is + not configured, it will be implicitly set to <option>main</option>.</para> + + <para>Note that <function>sd_notify()</function> notifications may be attributed to units correctly only if + either the sending process is still around at the time PID 1 processes the message, or if the sending process + is explicitly runtime-tracked by the service manager. The latter is the case if the service manager originally + forked off the process, i.e. on all processes that match <option>main</option> or + <option>exec</option>. Conversely, if an auxiliary process of the unit sends an + <function>sd_notify()</function> message and immediately exits, the service manager might not be able to + properly attribute the message to the unit, and thus will ignore it, even if + <varname>NotifyAccess=</varname><option>all</option> is set for it.</para></listitem> </varlistentry> <varlistentry> diff --git a/man/systemd.swap.xml b/man/systemd.swap.xml index cf4e1ba839..184abff260 100644 --- a/man/systemd.swap.xml +++ b/man/systemd.swap.xml @@ -94,10 +94,10 @@ dependencies on the device units or the mount units of the files they are activated from.</para> - <para>Swap units with <varname>DefaultDependencies=</varname> in the <literal>[Unit]</literal> section enabled - implicitly acquire a <varname>Conflicts=</varname> and an <varname>After=</varname> dependency on - <filename>umount.target</filename> so that they are deactivated at shutdown, unless - <varname>DefaultDependencies=no</varname> is specified.</para> + <para>Swap units with <varname>DefaultDependencies=</varname> set to its default <option>yes</option> value in the + <literal>[Unit]</literal> section enabled implicitly acquire a <varname>Conflicts=</varname> and a + <varname>Before=</varname> dependency on <filename>umount.target</filename> so that they are deactivated at + shutdown as well as a <varname>Before=swap.target</varname> dependency.</para> <para>Additional implicit dependencies may be added as result of execution and resource control parameters as documented in @@ -170,17 +170,15 @@ <varlistentry> <term><varname>What=</varname></term> - <listitem><para>Takes an absolute path of a device node or - file to use for paging. See - <citerefentry project='man-pages'><refentrytitle>swapon</refentrytitle><manvolnum>8</manvolnum></citerefentry> - for details. If this refers to a device node, a dependency on - the respective device unit is automatically created. (See - <citerefentry><refentrytitle>systemd.device</refentrytitle><manvolnum>5</manvolnum></citerefentry> - for more information.) If this refers to a file, a dependency - on the respective mount unit is automatically created. (See - <citerefentry><refentrytitle>systemd.mount</refentrytitle><manvolnum>5</manvolnum></citerefentry> - for more information.) This option is - mandatory.</para></listitem> + <listitem><para>Takes an absolute path of a device node or file to use for paging. See <citerefentry + project='man-pages'><refentrytitle>swapon</refentrytitle><manvolnum>8</manvolnum></citerefentry> for + details. If this refers to a device node, a dependency on the respective device unit is automatically + created. (See + <citerefentry><refentrytitle>systemd.device</refentrytitle><manvolnum>5</manvolnum></citerefentry> for more + information.) If this refers to a file, a dependency on the respective mount unit is automatically + created. (See <citerefentry><refentrytitle>systemd.mount</refentrytitle><manvolnum>5</manvolnum></citerefentry> + for more information.) This option is mandatory. Note that the usual specifier expansion is applied to this + setting, literal percent characters should hence be written as <literal>%%</literal>.</para></listitem> </varlistentry> <varlistentry> @@ -195,12 +193,11 @@ <varlistentry> <term><varname>Options=</varname></term> - <listitem><para>May contain an option string for the swap - device. This may be used for controlling discard options among - other functionality, if the swap backing device supports the - discard or trim operation. (See + <listitem><para>May contain an option string for the swap device. This may be used for controlling discard + options among other functionality, if the swap backing device supports the discard or trim operation. (See <citerefentry project='man-pages'><refentrytitle>swapon</refentrytitle><manvolnum>8</manvolnum></citerefentry> - for more information.) </para></listitem> + for more information.) Note that the usual specifier expansion is applied to this setting, literal percent + characters should hence be written as <literal>%%</literal>.</para></listitem> </varlistentry> <varlistentry> diff --git a/man/systemd.unit.xml b/man/systemd.unit.xml index dbb0dc7bd7..417840e6c2 100644 --- a/man/systemd.unit.xml +++ b/man/systemd.unit.xml @@ -203,7 +203,8 @@ <filename>/run/systemd/system</filename> directories. Drop-in files in <filename>/etc</filename> take precedence over those in <filename>/run</filename> which in turn take precedence over those in <filename>/usr/lib</filename>. Drop-in files under any of these directories take precedence - over unit files wherever located.</para> + over unit files wherever located. Multiple drop-in files with different names are applied in + lexicographic order, regardless of which of the directories they reside in.</para> <!-- Note that we do not document .include here, as we consider it mostly obsolete, and want people to use .d/ drop-ins instead. --> @@ -630,11 +631,9 @@ all mount units required to access the specified path.</para> <para>Mount points marked with <option>noauto</option> are not - mounted automatically and will be ignored for the purposes of - this option. If such a mount should be a requirement for this - unit, direct dependencies on the mount units may be added - (<varname>Requires=</varname> and <varname>After=</varname> or - some other combination). </para></listitem> + mounted automatically through <filename>local-fs.target</filename>, + but are still honored for the purposes of this option, i.e. they + will be pulled in by this unit.</para></listitem> </varlistentry> <varlistentry> @@ -1343,7 +1342,7 @@ ExecStart=/usr/sbin/foo-daemon file <filename><replaceable>name</replaceable>.conf</filename> there that only changes the specific settings one is interested in. Note that multiple such drop-in files are read if - present.</para> + present, processed in lexicographic order of their filename.</para> <para>The advantage of the first method is that one easily overrides the complete unit, the vendor unit is not parsed at @@ -9,24 +9,24 @@ msgstr "" "Project-Id-Version: systemd master\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2016-04-23 14:24+0200\n" -"PO-Revision-Date: 2016-11-30 16:00+0100\n" +"PO-Revision-Date: 2017-02-07 18:38+0100\n" "Last-Translator: Daniel Rusek <mail@asciiwolf.com>\n" "Language: cs\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 " -"|| n%100>=20) ? 1 : 2);\n" +"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n" +"%100>=20) ? 1 : 2);\n" +"Language-Team: \n" +"X-Generator: Poedit 1.8.7.1\n" #: ../src/core/org.freedesktop.systemd1.policy.in.in.h:1 msgid "Send passphrase back to system" msgstr "Odeslat heslo zpÄ›t do systému" #: ../src/core/org.freedesktop.systemd1.policy.in.in.h:2 -msgid "" -"Authentication is required to send the entered passphrase back to the system." -msgstr "" -"Autentizace je vyžadována pro odeslánà zadaného hesla do systému." +msgid "Authentication is required to send the entered passphrase back to the system." +msgstr "Autentizace je vyžadována pro odeslánà zadaného hesla do systému." #: ../src/core/org.freedesktop.systemd1.policy.in.in.h:3 msgid "Manage system services or other units" @@ -35,8 +35,7 @@ msgstr "Správa systémových služeb nebo dalÅ¡Ãch jednotek" #: ../src/core/org.freedesktop.systemd1.policy.in.in.h:4 msgid "Authentication is required to manage system services or other units." msgstr "" -"Autentizace je vyžadována pro správu systémových služeb nebo dalÅ¡Ãch " -"jednotek." +"Autentizace je vyžadována pro správu systémových služeb nebo dalÅ¡Ãch jednotek." #: ../src/core/org.freedesktop.systemd1.policy.in.in.h:5 msgid "Manage system service or unit files" @@ -48,17 +47,15 @@ msgstr "Autentizace je vyžadována pro správu systémové služby nebo souborÅ #: ../src/core/org.freedesktop.systemd1.policy.in.in.h:7 msgid "Set or unset system and service manager environment variables" -msgstr "" -"Nastavenà nebo ruÅ¡enà promÄ›nných správce systému a služeb" - +msgstr "Nastavenà nebo ruÅ¡enà promÄ›nných správce systému a služeb" #: ../src/core/org.freedesktop.systemd1.policy.in.in.h:8 msgid "" -"Authentication is required to set or unset system and service manager " -"environment variables." +"Authentication is required to set or unset system and service manager environment " +"variables." msgstr "" -"Autentizace je vyžadována pro nastavenà nebo ruÅ¡enà promÄ›nných správce " -"systému a služeb." +"Autentizace je vyžadována pro nastavenà nebo ruÅ¡enà promÄ›nných správce systému a " +"služeb." #: ../src/core/org.freedesktop.systemd1.policy.in.in.h:9 msgid "Reload the systemd state" @@ -82,11 +79,11 @@ msgstr "Nastavenà statického názvu stoje" #: ../src/hostname/org.freedesktop.hostname1.policy.in.h:4 msgid "" -"Authentication is required to set the statically configured local host name, " -"as well as the pretty host name." +"Authentication is required to set the statically configured local host name, as " +"well as the pretty host name." msgstr "" -"Autentizace je vyžadována pro nastavenà staticky konfigurovaného názvu " -"lokálnÃho stroje, stejnÄ› tak pro zmÄ›nu uživatelsky pÅ™ÃvÄ›tivého jména." +"Autentizace je vyžadována pro nastavenà staticky konfigurovaného názvu lokálnÃho " +"stroje, stejnÄ› tak pro zmÄ›nu uživatelsky pÅ™ÃvÄ›tivého jména." #: ../src/hostname/org.freedesktop.hostname1.policy.in.h:5 msgid "Set machine information" @@ -137,18 +134,15 @@ msgstr "Nastavenà systémové konfigurace klávesnice" #: ../src/locale/org.freedesktop.locale1.policy.in.h:4 msgid "Authentication is required to set the system keyboard settings." -msgstr "" -"Autentizace je vyžadována pro nastavenà systémové konfigurace klávesnice." +msgstr "Autentizace je vyžadována pro nastavenà systémové konfigurace klávesnice." #: ../src/login/org.freedesktop.login1.policy.in.h:1 msgid "Allow applications to inhibit system shutdown" msgstr "Povolit aplikacÃm zakázat vypnutà systému" #: ../src/login/org.freedesktop.login1.policy.in.h:2 -msgid "" -"Authentication is required for an application to inhibit system shutdown." -msgstr "" -"Autentizace je vyžadována pro povolenà aplikacÃm zakázat vypnutà systému." +msgid "Authentication is required for an application to inhibit system shutdown." +msgstr "Autentizace je vyžadována pro povolenà aplikacÃm zakázat vypnutà systému." #: ../src/login/org.freedesktop.login1.policy.in.h:3 msgid "Allow applications to delay system shutdown" @@ -156,8 +150,7 @@ msgstr "Povolit aplikacÃm odložit vypnutà systému" #: ../src/login/org.freedesktop.login1.policy.in.h:4 msgid "Authentication is required for an application to delay system shutdown." -msgstr "" -"Autentizace je vyžadována pro povolenà aplikacÃm odložit vypnutà systému." +msgstr "Autentizace je vyžadována pro povolenà aplikacÃm odložit vypnutà systému." #: ../src/login/org.freedesktop.login1.policy.in.h:5 msgid "Allow applications to inhibit system sleep" @@ -165,8 +158,7 @@ msgstr "Povolit aplikacÃm zakázat uspánà systému" #: ../src/login/org.freedesktop.login1.policy.in.h:6 msgid "Authentication is required for an application to inhibit system sleep." -msgstr "" -"Autentizace je vyžadována pro povolenà aplikacÃm zakázat uspánà systému." +msgstr "Autentizace je vyžadována pro povolenà aplikacÃm zakázat uspánà systému." #: ../src/login/org.freedesktop.login1.policy.in.h:7 msgid "Allow applications to delay system sleep" @@ -174,8 +166,7 @@ msgstr "Povolit aplikacÃm odložit uspánà systému" #: ../src/login/org.freedesktop.login1.policy.in.h:8 msgid "Authentication is required for an application to delay system sleep." -msgstr "" -"Autentizace je vyžadována pro povolenà aplikacÃm odložit uspánà systému." +msgstr "Autentizace je vyžadována pro povolenà aplikacÃm odložit uspánà systému." #: ../src/login/org.freedesktop.login1.policy.in.h:9 msgid "Allow applications to inhibit automatic system suspend" @@ -183,47 +174,43 @@ msgstr "Povolit aplikacÃm zakázat automatické vypnutà systému" #: ../src/login/org.freedesktop.login1.policy.in.h:10 msgid "" -"Authentication is required for an application to inhibit automatic system " -"suspend." +"Authentication is required for an application to inhibit automatic system suspend." msgstr "" -"Autentizace je vyžadována pro povolenà aplikacÃm zakázat automatické " -"vypnutà systému." +"Autentizace je vyžadována pro povolenà aplikacÃm zakázat automatické vypnutà " +"systému." #: ../src/login/org.freedesktop.login1.policy.in.h:11 msgid "Allow applications to inhibit system handling of the power key" -msgstr "" -"Povolit aplikacÃm zakázat chovanà systému na stisknutà vypÃnacÃho tlaÄÃtka" +msgstr "Povolit aplikacÃm zakázat chovanà systému na stisknutà vypÃnacÃho tlaÄÃtka" #: ../src/login/org.freedesktop.login1.policy.in.h:12 msgid "" -"Authentication is required for an application to inhibit system handling of " -"the power key." +"Authentication is required for an application to inhibit system handling of the " +"power key." msgstr "" "Autentizace je vyžadována pro povolenà aplikacÃm zakázat chovanà systému na " "stisknutà vypÃnacÃho tlaÄÃtka." #: ../src/login/org.freedesktop.login1.policy.in.h:13 msgid "Allow applications to inhibit system handling of the suspend key" -msgstr "" -"Povolit aplikacÃm zakázat chovanà systému na stisknutà uspávacÃho tlaÄÃtka" +msgstr "Povolit aplikacÃm zakázat chovanà systému na stisknutà uspávacÃho tlaÄÃtka" #: ../src/login/org.freedesktop.login1.policy.in.h:14 msgid "" -"Authentication is required for an application to inhibit system handling of " -"the suspend key." +"Authentication is required for an application to inhibit system handling of the " +"suspend key." msgstr "" "Autentizace je vyžadována pro povolenà aplikacÃm zakázat chovanà systému na " "stisknutà uspávacÃho tlaÄÃtka." #: ../src/login/org.freedesktop.login1.policy.in.h:15 msgid "Allow applications to inhibit system handling of the hibernate key" -msgstr "" -"Povolit aplikacÃm zakázat chovanà systému na stisknutà tlaÄÃtka hibernace" +msgstr "Povolit aplikacÃm zakázat chovanà systému na stisknutà tlaÄÃtka hibernace" #: ../src/login/org.freedesktop.login1.policy.in.h:16 msgid "" -"Authentication is required for an application to inhibit system handling of " -"the hibernate key." +"Authentication is required for an application to inhibit system handling of the " +"hibernate key." msgstr "" "Autentizace je vyžadována pro povolenà aplikacÃm zakázat chovanà systému na " "stisknutà tlaÄÃtka hibernace." @@ -234,8 +221,8 @@ msgstr "Povolit aplikacÃm zakázat chovanà systému na zavÅ™enà vÃka" #: ../src/login/org.freedesktop.login1.policy.in.h:18 msgid "" -"Authentication is required for an application to inhibit system handling of " -"the lid switch." +"Authentication is required for an application to inhibit system handling of the " +"lid switch." msgstr "" "Autentizace je vyžadována pro povolenà aplikacÃm zakázat chovanà systému na " "zavÅ™enà vÃka." @@ -255,8 +242,7 @@ msgstr "Povolit nepÅ™ihlášeným uživatelům spouÅ¡tÄ›t programy" #: ../src/login/org.freedesktop.login1.policy.in.h:22 msgid "Authentication is required to run programs as a non-logged-in user." -msgstr "" -"Autentizace je vyžadována ke spuÅ¡tÄ›nà programů jako nepÅ™ihlášený uživatel." +msgstr "Autentizace je vyžadována ke spuÅ¡tÄ›nà programů jako nepÅ™ihlášený uživatel." #: ../src/login/org.freedesktop.login1.policy.in.h:23 msgid "Allow attaching devices to seats" @@ -271,8 +257,7 @@ msgid "Flush device to seat attachments" msgstr "OdstranÄ›nà pÅ™iÅ™azenà zaÅ™Ãzenà ke stanoviÅ¡tÃm" #: ../src/login/org.freedesktop.login1.policy.in.h:26 -msgid "" -"Authentication is required for resetting how devices are attached to seats." +msgid "Authentication is required for resetting how devices are attached to seats." msgstr "" "Autentizace je vyžadována pro reset způsobu jak jsou zaÅ™Ãzenà pÅ™iÅ™azována ke " "stanoviÅ¡tÃm." @@ -294,8 +279,8 @@ msgid "" "Authentication is required for powering off the system while other users are " "logged in." msgstr "" -"Autentizace je vyžadována pro vypnutà systému, když jsou pÅ™ihlášeni " -"dalÅ¡Ã uživatelé." +"Autentizace je vyžadována pro vypnutà systému, když jsou pÅ™ihlášeni dalÅ¡Ã " +"uživatelé." #: ../src/login/org.freedesktop.login1.policy.in.h:31 msgid "Power off the system while an application asked to inhibit it" @@ -303,11 +288,11 @@ msgstr "Vypnout systém, i když aplikace požádala o zákaz vypnutÃ" #: ../src/login/org.freedesktop.login1.policy.in.h:32 msgid "" -"Authentication is required for powering off the system while an application " -"asked to inhibit it." +"Authentication is required for powering off the system while an application asked " +"to inhibit it." msgstr "" -"Autentizace je vyžadována pro vypnutà systému, když aplikace požádala o " -"zákaz vypnutÃ." +"Autentizace je vyžadována pro vypnutà systému, když aplikace požádala o zákaz " +"vypnutÃ." #: ../src/login/org.freedesktop.login1.policy.in.h:33 msgid "Reboot the system" @@ -323,11 +308,11 @@ msgstr "Restartovat systém, i když jsou pÅ™ihlášeni dalÅ¡Ã uživatelé" #: ../src/login/org.freedesktop.login1.policy.in.h:36 msgid "" -"Authentication is required for rebooting the system while other users are " -"logged in." +"Authentication is required for rebooting the system while other users are logged " +"in." msgstr "" -"Autentizace je vyžadována pro restart systému, když jsou pÅ™ihlášeni " -"dalÅ¡Ã uživatelé." +"Autentizace je vyžadována pro restart systému, když jsou pÅ™ihlášeni dalÅ¡Ã " +"uživatelé." #: ../src/login/org.freedesktop.login1.policy.in.h:37 msgid "Reboot the system while an application asked to inhibit it" @@ -335,11 +320,11 @@ msgstr "Restartovat systém, i když aplikace požádala o zákaz restartu" #: ../src/login/org.freedesktop.login1.policy.in.h:38 msgid "" -"Authentication is required for rebooting the system while an application " -"asked to inhibit it." +"Authentication is required for rebooting the system while an application asked to " +"inhibit it." msgstr "" -"Autentizace je vyžadována pro restart systému, když aplikace požádala o " -"zákaz restartu." +"Autentizace je vyžadována pro restart systému, když aplikace požádala o zákaz " +"restartu." #: ../src/login/org.freedesktop.login1.policy.in.h:39 msgid "Suspend the system" @@ -355,11 +340,10 @@ msgstr "Uspat systém, i když jsou pÅ™ihlášeni dalÅ¡Ã uživatelé" #: ../src/login/org.freedesktop.login1.policy.in.h:42 msgid "" -"Authentication is required for suspending the system while other users are " -"logged in." +"Authentication is required for suspending the system while other users are logged " +"in." msgstr "" -"Autentizace je vyžadována pro uspánà systému, když jsou pÅ™ihlášeni " -"dalÅ¡Ã uživatelé." +"Autentizace je vyžadována pro uspánà systému, když jsou pÅ™ihlášeni dalÅ¡Ã uživatelé." #: ../src/login/org.freedesktop.login1.policy.in.h:43 msgid "Suspend the system while an application asked to inhibit it" @@ -367,11 +351,11 @@ msgstr "Uspat systém, i když aplikace požádala o zákaz uspánÃ" #: ../src/login/org.freedesktop.login1.policy.in.h:44 msgid "" -"Authentication is required for suspending the system while an application " -"asked to inhibit it." +"Authentication is required for suspending the system while an application asked to " +"inhibit it." msgstr "" -"Autentizace je vyžadována pro uspánà systému, když aplikace požádala o " -"zákaz uspánÃ." +"Autentizace je vyžadována pro uspánà systému, když aplikace požádala o zákaz " +"uspánÃ." #: ../src/login/org.freedesktop.login1.policy.in.h:45 msgid "Hibernate the system" @@ -387,11 +371,11 @@ msgstr "Hibernovat systém, i když jsou pÅ™ihlášeni dalÅ¡Ã uživatelé" #: ../src/login/org.freedesktop.login1.policy.in.h:48 msgid "" -"Authentication is required for hibernating the system while other users are " -"logged in." +"Authentication is required for hibernating the system while other users are logged " +"in." msgstr "" -"Autentizace je vyžadována pro hibernaci systému, když jsou pÅ™ihlášeni " -"dalÅ¡Ã uživatelé." +"Autentizace je vyžadována pro hibernaci systému, když jsou pÅ™ihlášeni dalÅ¡Ã " +"uživatelé." #: ../src/login/org.freedesktop.login1.policy.in.h:49 msgid "Hibernate the system while an application asked to inhibit it" @@ -399,19 +383,18 @@ msgstr "Hibernace systému, i když aplikace požádala o zákaz hibernace" #: ../src/login/org.freedesktop.login1.policy.in.h:50 msgid "" -"Authentication is required for hibernating the system while an application " -"asked to inhibit it." +"Authentication is required for hibernating the system while an application asked " +"to inhibit it." msgstr "" -"Autentizace je vyžadována pro hibernaci systému, když aplikace požádala o " -"zákaz hibernace." +"Autentizace je vyžadována pro hibernaci systému, když aplikace požádala o zákaz " +"hibernace." #: ../src/login/org.freedesktop.login1.policy.in.h:51 msgid "Manage active sessions, users and seats" msgstr "Správa aktivnÃch sezenÃ, uživatelů a stanoviÅ¡Å¥" #: ../src/login/org.freedesktop.login1.policy.in.h:52 -msgid "" -"Authentication is required for managing active sessions, users and seats." +msgid "Authentication is required for managing active sessions, users and seats." msgstr "" "Autentizace je vyžadována pro správu aktivnÃch sezenÃ, uživatelů a stanoviÅ¡Å¥." @@ -429,8 +412,7 @@ msgstr "Povolit indikaci firmwaru bootovat instalaÄnà prostÅ™edÃ" #: ../src/login/org.freedesktop.login1.policy.in.h:56 msgid "" -"Authentication is required to indicate to the firmware to boot to setup " -"interface." +"Authentication is required to indicate to the firmware to boot to setup interface." msgstr "" "Autentizace je vyžadována k povolenà indikace firmwaru bootovat instalaÄnà " "prostÅ™edÃ." @@ -480,8 +462,7 @@ msgid "Acquire a pseudo TTY in a local container" msgstr "ZÃskánà Pseudo TTY v lokálnÃm kontejneru" #: ../src/machine/org.freedesktop.machine1.policy.in.h:10 -msgid "" -"Authentication is required to acquire a pseudo TTY in a local container." +msgid "Authentication is required to acquire a pseudo TTY in a local container." msgstr "Autentizace je vyžadována pro zÃskánà pseudo TTY v lokálnÃm kontejneru." #: ../src/machine/org.freedesktop.machine1.policy.in.h:11 @@ -497,8 +478,7 @@ msgid "Manage local virtual machines and containers" msgstr "Spravovat lokálnà virtuálnà stroje a kontejnery" #: ../src/machine/org.freedesktop.machine1.policy.in.h:14 -msgid "" -"Authentication is required to manage local virtual machines and containers." +msgid "Authentication is required to manage local virtual machines and containers." msgstr "" "Autentizace je vyžadována pro správu lokálnÃch virtuálnÃch strojů a kontejnerů." @@ -508,10 +488,8 @@ msgstr "Spravovat lokálnà obrazy virtuálnÃch strojů a kontejnerů" #: ../src/machine/org.freedesktop.machine1.policy.in.h:16 msgid "" -"Authentication is required to manage local virtual machine and container " -"images." -msgstr "" -"Autentizace je vyžadována ke správÄ› obrazů virtuálnÃch strojů a kontejnerů." +"Authentication is required to manage local virtual machine and container images." +msgstr "Autentizace je vyžadována ke správÄ› obrazů virtuálnÃch strojů a kontejnerů." #: ../src/timedate/org.freedesktop.timedate1.policy.in.h:1 msgid "Set system time" @@ -535,11 +513,10 @@ msgstr "Nastavit RTC na lokálnà Äasovou zónu nebo UTC" #: ../src/timedate/org.freedesktop.timedate1.policy.in.h:6 msgid "" -"Authentication is required to control whether the RTC stores the local or " -"UTC time." +"Authentication is required to control whether the RTC stores the local or UTC time." msgstr "" -"Autentizace je vyžadována pro kontrolu jestli RTC ukládá lokálnà Äasovou " -"zónu nebo UTC Äas." +"Autentizace je vyžadována pro kontrolu jestli RTC ukládá lokálnà Äasovou zónu nebo " +"UTC Äas." #: ../src/timedate/org.freedesktop.timedate1.policy.in.h:7 msgid "Turn network time synchronization on or off" @@ -547,8 +524,8 @@ msgstr "Zapnout nebo vypnout synchronizaci s Äasem ze sÃtÄ›" #: ../src/timedate/org.freedesktop.timedate1.policy.in.h:8 msgid "" -"Authentication is required to control whether network time synchronization " -"shall be enabled." +"Authentication is required to control whether network time synchronization shall " +"be enabled." msgstr "Autentizace je vyžadována pro kontrolu synchronizace Äasu ze sÃtÄ›." #: ../src/core/dbus-unit.c:459 @@ -573,9 +550,7 @@ msgstr "Autentizace je vyžadována pro ukonÄenà „$(unit)â€." #: ../src/core/dbus-unit.c:601 msgid "Authentication is required to reset the \"failed\" state of '$(unit)'." -msgstr "" -"Autentizace je vyžadována pro resetovánà chybného stavu " -"„$(unit)â€." +msgstr "Autentizace je vyžadována pro resetovánà chybného stavu „$(unit)â€." #: ../src/core/dbus-unit.c:634 msgid "Authentication is required to set properties on '$(unit)'." @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: systemd master\n" "Report-Msgid-Bugs-To: https://github.com/systemd/systemd/issues\n" -"POT-Creation-Date: 2016-27-04 11:57+0100\n" +"POT-Creation-Date: 2016-04-27 11:57+0100\n" "PO-Revision-Date: 2016-04-27 12:11+0200\n" "Language-Team: \n" "MIME-Version: 1.0\n" diff --git a/po/id.po b/po/id.po index 72eb94c7ec..72eb94c7ec 100755..100644 --- a/po/id.po +++ b/po/id.po diff --git a/rules/99-systemd.rules.in b/rules/99-systemd.rules.in index 98153bce0f..edd1faa17a 100644 --- a/rules/99-systemd.rules.in +++ b/rules/99-systemd.rules.in @@ -10,6 +10,8 @@ ACTION=="remove", GOTO="systemd_end" SUBSYSTEM=="tty", KERNEL=="tty[a-zA-Z]*|hvc*|xvc*|hvsi*|ttysclp*|sclp_line*|3270/tty[0-9]*", TAG+="systemd" KERNEL=="vport*", TAG+="systemd" +SUBSYSTEM=="ubi", TAG+="systemd" + SUBSYSTEM=="block", TAG+="systemd" SUBSYSTEM=="block", ACTION=="add", ENV{DM_UDEV_DISABLE_OTHER_RULES_FLAG}=="1", ENV{SYSTEMD_READY}="0" diff --git a/shell-completion/bash/journalctl b/shell-completion/bash/journalctl index a999a10df1..c90a114497 100644 --- a/shell-completion/bash/journalctl +++ b/shell-completion/bash/journalctl @@ -42,10 +42,10 @@ _journalctl() { --version --list-catalog --update-catalog --list-boots --show-cursor --dmesg -k --pager-end -e -r --reverse --utc -x --catalog --no-full --force --dump-catalog - --flush --rotate --sync' + --flush --rotate --sync --no-hostname' [ARG]='-b --boot --this-boot -D --directory --file -F --field -M --machine -o --output -u --unit --user-unit -p --priority - --vacuum-size --vacuum-time' + --vacuum-size --vacuum-time --vacuum-files' [ARGUNKNOWN]='-c --cursor --interval -n --lines -S --since -U --until --after-cursor --verify-key -t --identifier --root' @@ -82,6 +82,9 @@ _journalctl() { --user-unit) comps=$(journalctl -F '_SYSTEMD_USER_UNIT' 2>/dev/null) ;; + --identifier|-t) + comps=$(journalctl -F 'SYSLOG_IDENTIFIER' 2>/dev/null) + ;; *) return 0 ;; diff --git a/shell-completion/bash/systemctl.in b/shell-completion/bash/systemctl.in index 34589e2888..e4ccad8799 100644 --- a/shell-completion/bash/systemctl.in +++ b/shell-completion/bash/systemctl.in @@ -124,9 +124,9 @@ _systemctl () { local -A OPTS=( [STANDALONE]='--all -a --reverse --after --before --defaults --force -f --full -l --global - --help -h --no-ask-password --no-block --no-legend --no-pager --no-reload --no-wall + --help -h --no-ask-password --no-block --no-legend --no-pager --no-reload --no-wall --now --quiet -q --privileged -P --system --user --version --runtime --recursive -r --firmware-setup - --show-types -i --ignore-inhibitors --plain' + --show-types -i --ignore-inhibitors --plain --failed' [ARG]='--host -H --kill-who --property -p --signal -s --type -t --state --job-mode --root --preset-mode -n --lines -o --output -M --machine' ) diff --git a/shell-completion/zsh/_journalctl b/shell-completion/zsh/_journalctl index ef67fcf2a0..4a78a2e946 100644 --- a/shell-completion/zsh/_journalctl +++ b/shell-completion/zsh/_journalctl @@ -107,8 +107,8 @@ _arguments -s \ '--user[Show messages from user services]' \ '(--directory -D -M --machine --root --file)'{-M+,--machine=}'[Operate on local container]:machines:_sd_machines' \ '(--directory -D -M --machine --root --file)'{-D+,--directory=}'[Show journal files from directory]:directories:_directories' \ - '(--directory -D -M --machine --root --file)''--root=[Operate on catalog hierarchy under specified directory]:directories:_directories' \ - '(--directory -D -M --machine --root)--file=[Operate on specified journal files]:file:_files' \ + '(--directory -D -M --machine --root --file)--root=[Operate on catalog hierarchy under specified directory]:directories:_directories' \ + '(--directory -D -M --machine --root)*--file=[Operate on specified journal files]:file:_files' \ '--new-id128[Generate a new 128 Bit ID]' \ '--header[Show journal header information]' \ '--disk-usage[Show total disk usage]' \ diff --git a/shell-completion/zsh/_systemctl.in b/shell-completion/zsh/_systemctl.in index d77a2df74e..92a56ba99a 100644 --- a/shell-completion/zsh/_systemctl.in +++ b/shell-completion/zsh/_systemctl.in @@ -98,11 +98,11 @@ __systemctl() # Fills the unit list _systemctl_all_units() { - if ( [[ ${+_sys_all_units} -eq 0 ]] || _cache_invalid SYS_ALL_UNITS ) && - ! _retrieve_cache SYS_ALL_UNITS; + if ( [[ ${+_sys_all_units} -eq 0 ]] || _cache_invalid SYS_ALL_UNITS$_sys_service_mgr ) || + ! _retrieve_cache SYS_ALL_UNITS$_sys_service_mgr; then _sys_all_units=( ${${(f)"$(__systemctl list-units --all)"}%% *} ) - _store_cache SYS_ALL_UNITS _sys_all_units + _store_cache SYS_ALL_UNITS$_sys_service_mgr _sys_all_units fi } @@ -111,14 +111,14 @@ _systemctl_really_all_units() { local -a all_unit_files; local -a really_all_units; - if ( [[ ${+_sys_really_all_units} -eq 0 ]] || _cache_invalid SYS_REALLY_ALL_UNITS ) && - ! _retrieve_cache SYS_REALLY_ALL_UNITS; + if ( [[ ${+_sys_really_all_units} -eq 0 ]] || _cache_invalid SYS_REALLY_ALL_UNITS$_sys_service_mgr ) || + ! _retrieve_cache SYS_REALLY_ALL_UNITS$_sys_service_mgr; then all_unit_files=( ${${(f)"$(__systemctl list-unit-files)"}%% *} ) _systemctl_all_units really_all_units=($_sys_all_units $all_unit_files) _sys_really_all_units=(${(u)really_all_units}) - _store_cache SYS_REALLY_ALL_UNITS _sys_really_all_units + _store_cache SYS_REALLY_ALL_UNITS$_sys_service_mgr _sys_really_all_units fi } @@ -330,13 +330,13 @@ _unit_types() { } _unit_properties() { - if ( [[ ${+_sys_all_properties} -eq 0 ]] || _cache_invalid SYS_ALL_PROPERTIES ) && - ! _retrieve_cache SYS_ALL_PROPERTIES; + if ( [[ ${+_sys_all_properties} -eq 0 ]] || _cache_invalid SYS_ALL_PROPERTIES$_sys_service_mgr ) || + ! _retrieve_cache SYS_ALL_PROPERTIES$_sys_service_mgr; then _sys_all_properties=( ${${(M)${(f)"$(__systemctl show --all; @rootlibexecdir@/systemd --dump-configuration-items)"}##[[:alnum:]]##=*}%%=*} ) - _store_cache SYS_ALL_PROPRTIES _sys_all_properties + _store_cache SYS_ALL_PROPERTIES$_sys_service_mgr _sys_all_properties fi _values -s , "${_sys_all_properties[@]}" } @@ -386,4 +386,5 @@ _arguments -s \ {-o+,--output=}'[Change journal output mode]:modes:_sd_outputmodes' \ '--firmware-setup[Tell the firmware to show the setup menu on next boot]' \ '--plain[When used with list-dependencies, print output as a list]' \ + '--failed[Show failed units]' \ '*::systemctl command:_systemctl_command' diff --git a/src/analyze/analyze.c b/src/analyze/analyze.c index 51d881c5fb..a9402fdb28 100644 --- a/src/analyze/analyze.c +++ b/src/analyze/analyze.c @@ -461,6 +461,7 @@ static int acquire_host_info(sd_bus *bus, struct host_info **hi) { "org.freedesktop.hostname1", "/org/freedesktop/hostname1", hostname_map, + &error, host); if (r < 0) log_debug_errno(r, "Failed to get host information from systemd-hostnamed: %s", bus_error_message(&error, r)); @@ -469,6 +470,7 @@ static int acquire_host_info(sd_bus *bus, struct host_info **hi) { "org.freedesktop.systemd1", "/org/freedesktop/systemd1", manager_map, + &error, host); if (r < 0) return log_error_errno(r, "Failed to get host information from systemd: %s", bus_error_message(&error, r)); diff --git a/src/basic/MurmurHash2.c b/src/basic/MurmurHash2.c index 9020793930..a282a21201 100644 --- a/src/basic/MurmurHash2.c +++ b/src/basic/MurmurHash2.c @@ -69,9 +69,9 @@ uint32_t MurmurHash2 ( const void * key, int len, uint32_t seed ) switch(len) { - case 3: h ^= data[2] << 16; - case 2: h ^= data[1] << 8; - case 1: h ^= data[0]; + case 3: h ^= data[2] << 16; /* fall through */ + case 2: h ^= data[1] << 8; /* fall through */ + case 1: h ^= data[0]; /* fall through */ h *= m; }; diff --git a/src/basic/architecture.c b/src/basic/architecture.c index b74dc0db78..5a3dc08a4a 100644 --- a/src/basic/architecture.c +++ b/src/basic/architecture.c @@ -123,7 +123,8 @@ int uname_architecture(void) { { "crisv32", ARCHITECTURE_CRIS }, #elif defined(__nios2__) { "nios2", ARCHITECTURE_NIOS2 }, -#elif defined(__riscv__) +#elif defined(__riscv__) || defined(__riscv) + /* __riscv__ is obsolete, remove in 2018 */ { "riscv32", ARCHITECTURE_RISCV32 }, { "riscv64", ARCHITECTURE_RISCV64 }, # if __SIZEOF_POINTER__ == 4 diff --git a/src/basic/architecture.h b/src/basic/architecture.h index b329df2f6d..d6b8603b06 100644 --- a/src/basic/architecture.h +++ b/src/basic/architecture.h @@ -194,7 +194,8 @@ int uname_architecture(void); #elif defined(__nios2__) # define native_architecture() ARCHITECTURE_NIOS2 # define LIB_ARCH_TUPLE "nios2-linux-gnu" -#elif defined(__riscv__) +#elif defined(__riscv__) || defined(__riscv) + /* __riscv__ is obsolete, remove in 2018 */ # if __SIZEOF_POINTER__ == 4 # define native_architecture() ARCHITECTURE_RISCV32 # define LIB_ARCH_TUPLE "riscv32-linux-gnu" diff --git a/src/basic/calendarspec.c b/src/basic/calendarspec.c index 2e5622699d..2323eb8555 100644 --- a/src/basic/calendarspec.c +++ b/src/basic/calendarspec.c @@ -116,8 +116,7 @@ static void normalize_chain(CalendarComponent **c) { /* Drop non-unique entries */ for (k = n-1; k > 0; k--) { - if (b[k-1]->start == next->start && - b[k-1]->repeat == next->repeat) { + if (component_compare(&b[k-1], &next) == 0) { free(b[k-1]); continue; } @@ -1020,7 +1019,7 @@ static int find_end_of_month(struct tm *tm, bool utc, int day) { t.tm_mon++; t.tm_mday = 1 - day; - if (mktime_or_timegm(&t, utc) == (time_t) -1 || + if (mktime_or_timegm(&t, utc) < 0 || t.tm_mon != tm->tm_mon) return -1; @@ -1086,7 +1085,7 @@ static bool tm_out_of_bounds(const struct tm *tm, bool utc) { t = *tm; - if (mktime_or_timegm(&t, utc) == (time_t) -1) + if (mktime_or_timegm(&t, utc) < 0) return true; /* @@ -1115,7 +1114,7 @@ static bool matches_weekday(int weekdays_bits, const struct tm *tm, bool utc) { return true; t = *tm; - if (mktime_or_timegm(&t, utc) == (time_t) -1) + if (mktime_or_timegm(&t, utc) < 0) return false; k = t.tm_wday == 0 ? 6 : t.tm_wday - 1; @@ -1228,6 +1227,9 @@ int calendar_spec_next_usec(const CalendarSpec *spec, usec_t usec, usec_t *next) assert(spec); assert(next); + if (usec > USEC_TIMESTAMP_FORMATTABLE_MAX) + return -EINVAL; + usec++; t = (time_t) (usec / USEC_PER_SEC); assert_se(localtime_or_gmtime_r(&t, &tm, spec->utc)); @@ -1238,7 +1240,7 @@ int calendar_spec_next_usec(const CalendarSpec *spec, usec_t usec, usec_t *next) return r; t = mktime_or_timegm(&tm, spec->utc); - if (t == (time_t) -1) + if (t < 0) return -EINVAL; *next = (usec_t) t * USEC_PER_SEC + tm_usec; diff --git a/src/basic/cgroup-util.c b/src/basic/cgroup-util.c index d2d18f13f0..6948ed3931 100644 --- a/src/basic/cgroup-util.c +++ b/src/basic/cgroup-util.c @@ -182,8 +182,7 @@ int cg_read_subgroup(DIR *d, char **fn) { if (de->d_type != DT_DIR) continue; - if (streq(de->d_name, ".") || - streq(de->d_name, "..")) + if (dot_or_dot_dot(de->d_name)) continue; b = strdup(de->d_name); diff --git a/src/basic/conf-files.c b/src/basic/conf-files.c index c0c22610d7..b5780194df 100644 --- a/src/basic/conf-files.c +++ b/src/basic/conf-files.c @@ -43,7 +43,6 @@ static int files_add(Hashmap *h, const char *root, const char *path, const char int r; assert(path); - assert(suffix); dirpath = prefix_roota(root, path); @@ -94,7 +93,6 @@ static int conf_files_list_strv_internal(char ***strv, const char *suffix, const int r; assert(strv); - assert(suffix); /* This alters the dirs string array */ if (!path_strv_resolve_uniq(dirs, root)) @@ -126,7 +124,6 @@ int conf_files_list_strv(char ***strv, const char *suffix, const char *root, con _cleanup_strv_free_ char **copy = NULL; assert(strv); - assert(suffix); copy = strv_copy((char**) dirs); if (!copy) diff --git a/src/basic/copy.c b/src/basic/copy.c index 9883f5fa31..e9a7efd232 100644 --- a/src/basic/copy.c +++ b/src/basic/copy.c @@ -331,7 +331,7 @@ static int fd_copy_directory( struct stat buf; int q; - if (STR_IN_SET(de->d_name, ".", "..")) + if (dot_or_dot_dot(de->d_name)) continue; if (fstatat(dirfd(d), de->d_name, &buf, AT_SYMLINK_NOFOLLOW) < 0) { diff --git a/src/basic/dirent-util.c b/src/basic/dirent-util.c index 59067121b7..6b9d26773e 100644 --- a/src/basic/dirent-util.c +++ b/src/basic/dirent-util.c @@ -70,5 +70,8 @@ bool dirent_is_file_with_suffix(const struct dirent *de, const char *suffix) { if (de->d_name[0] == '.') return false; + if (!suffix) + return true; + return endswith(de->d_name, suffix); } diff --git a/src/basic/fs-util.c b/src/basic/fs-util.c index e31fa2711a..8fe19ee4e4 100644 --- a/src/basic/fs-util.c +++ b/src/basic/fs-util.c @@ -723,6 +723,8 @@ int chase_symlinks(const char *path, const char *original_root, unsigned flags, return -errno; if (S_ISLNK(st.st_mode)) { + char *joined; + _cleanup_free_ char *destination = NULL; /* This is a symlink, in this case read the destination. But let's make sure we don't follow @@ -746,9 +748,6 @@ int chase_symlinks(const char *path, const char *original_root, unsigned flags, if (fd < 0) return -errno; - free_and_replace(buffer, destination); - - todo = buffer; free(done); /* Note that we do not revalidate the root, we take it as is. */ @@ -760,19 +759,17 @@ int chase_symlinks(const char *path, const char *original_root, unsigned flags, return -ENOMEM; } - } else { - char *joined; + } - /* A relative destination. If so, this is what we'll prefix what's left to do with what - * we just read, and start the loop again, but remain in the current directory. */ + /* Prefix what's left to do with what we just read, and start the loop again, + * but remain in the current directory. */ - joined = strjoin("/", destination, todo); - if (!joined) - return -ENOMEM; + joined = strjoin("/", destination, todo); + if (!joined) + return -ENOMEM; - free(buffer); - todo = buffer = joined; - } + free(buffer); + todo = buffer = joined; continue; } diff --git a/src/basic/hexdecoct.c b/src/basic/hexdecoct.c index 6843aedd0a..2d6e377f0a 100644 --- a/src/basic/hexdecoct.c +++ b/src/basic/hexdecoct.c @@ -72,10 +72,10 @@ int unhexchar(char c) { } char *hexmem(const void *p, size_t l) { - char *r, *z; const uint8_t *x; + char *r, *z; - z = r = malloc(l * 2 + 1); + z = r = new(char, l * 2 + 1); if (!r) return NULL; diff --git a/src/basic/khash.c b/src/basic/khash.c index 9a2a3edb75..84648dc1c9 100644 --- a/src/basic/khash.c +++ b/src/basic/khash.c @@ -143,7 +143,7 @@ int khash_dup(khash *h, khash **ret) { copy->fd = -1; copy->algorithm = strdup(h->algorithm); - if (!copy) + if (!copy->algorithm) return -ENOMEM; copy->fd = accept4(h->fd, NULL, 0, SOCK_CLOEXEC); diff --git a/src/basic/nss-util.h b/src/basic/nss-util.h index e7844fff96..9d927a8227 100644 --- a/src/basic/nss-util.h +++ b/src/basic/nss-util.h @@ -27,6 +27,10 @@ #define NSS_SIGNALS_BLOCK SIGALRM,SIGVTALRM,SIGPIPE,SIGCHLD,SIGTSTP,SIGIO,SIGHUP,SIGUSR1,SIGUSR2,SIGPROF,SIGURG,SIGWINCH +#ifndef DEPRECATED_RES_USE_INET6 +# define DEPRECATED_RES_USE_INET6 0x00002000 +#endif + #define NSS_GETHOSTBYNAME_PROTOTYPES(module) \ enum nss_status _nss_##module##_gethostbyname4_r( \ const char *name, \ @@ -92,7 +96,7 @@ enum nss_status _nss_##module##_gethostbyname_r( \ int *errnop, int *h_errnop) { \ enum nss_status ret = NSS_STATUS_NOTFOUND; \ \ - if (_res.options & RES_USE_INET6) \ + if (_res.options & DEPRECATED_RES_USE_INET6) \ ret = _nss_##module##_gethostbyname3_r( \ name, \ AF_INET6, \ diff --git a/src/basic/path-util.c b/src/basic/path-util.c index 9a51e0d8bc..1313a52c9c 100644 --- a/src/basic/path-util.c +++ b/src/basic/path-util.c @@ -699,10 +699,7 @@ bool filename_is_valid(const char *p) { if (isempty(p)) return false; - if (streq(p, ".")) - return false; - - if (streq(p, "..")) + if (dot_or_dot_dot(p)) return false; e = strchrnul(p, '/'); @@ -720,14 +717,17 @@ bool path_is_safe(const char *p) { if (isempty(p)) return false; - if (streq(p, "..") || startswith(p, "../") || endswith(p, "/..") || strstr(p, "/../")) + if (dot_or_dot_dot(p)) + return false; + + if (startswith(p, "../") || endswith(p, "/..") || strstr(p, "/../")) return false; if (strlen(p)+1 > PATH_MAX) return false; /* The following two checks are not really dangerous, but hey, they still are confusing */ - if (streq(p, ".") || startswith(p, "./") || endswith(p, "/.") || strstr(p, "/./")) + if (startswith(p, "./") || endswith(p, "/.") || strstr(p, "/./")) return false; if (strstr(p, "//")) @@ -892,3 +892,16 @@ int systemd_installation_has_version(const char *root, unsigned minimal_version) return false; } + +bool dot_or_dot_dot(const char *path) { + if (!path) + return false; + if (path[0] != '.') + return false; + if (path[1] == 0) + return true; + if (path[1] != '.') + return false; + + return path[2] == 0; +} diff --git a/src/basic/path-util.h b/src/basic/path-util.h index 349cdac7d6..35aef3adc8 100644 --- a/src/basic/path-util.h +++ b/src/basic/path-util.h @@ -141,3 +141,5 @@ bool is_device_path(const char *path); bool is_deviceallow_pattern(const char *path); int systemd_installation_has_version(const char *root, unsigned minimal_version); + +bool dot_or_dot_dot(const char *path); diff --git a/src/basic/proc-cmdline.c b/src/basic/proc-cmdline.c index 6ecb6c3f0d..f703e7f145 100644 --- a/src/basic/proc-cmdline.c +++ b/src/basic/proc-cmdline.c @@ -148,7 +148,7 @@ int proc_cmdline_get_key(const char *key, unsigned flags, char **value) { * a) The "value" parameter is used. In this case a parameter beginning with the "key" string followed by "=" * is searched, and the value following this is returned in "value". * - * b) as above, but the PROC_CMDLINE_VALUE_OPTIONAL flag is set. In this case if the the key is found as a + * b) as above, but the PROC_CMDLINE_VALUE_OPTIONAL flag is set. In this case if the key is found as a * separate word (i.e. not followed by "=" but instead by whitespace or the end of the command line), then * this is also accepted, and "value" is returned as NULL. * diff --git a/src/basic/raw-clone.h b/src/basic/raw-clone.h index d473828999..c6e531ada4 100644 --- a/src/basic/raw-clone.h +++ b/src/basic/raw-clone.h @@ -47,8 +47,8 @@ static inline int raw_clone(unsigned long flags) { assert((flags & (CLONE_VM|CLONE_PARENT_SETTID|CLONE_CHILD_SETTID| CLONE_CHILD_CLEARTID|CLONE_SETTLS)) == 0); -#if defined(__s390__) || defined(__CRIS__) - /* On s390 and cris the order of the first and second arguments +#if defined(__s390x__) || defined(__s390__) || defined(__CRIS__) + /* On s390/s390x and cris the order of the first and second arguments * of the raw clone() system call is reversed. */ return (int) syscall(__NR_clone, NULL, flags); #elif defined(__sparc__) && defined(__arch64__) diff --git a/src/basic/rm-rf.c b/src/basic/rm-rf.c index 07d42f78dd..08497af729 100644 --- a/src/basic/rm-rf.c +++ b/src/basic/rm-rf.c @@ -83,7 +83,7 @@ int rm_rf_children(int fd, RemoveFlags flags, struct stat *root_dev) { bool is_dir; struct stat st; - if (streq(de->d_name, ".") || streq(de->d_name, "..")) + if (dot_or_dot_dot(de->d_name)) continue; if (de->d_type == DT_UNKNOWN || diff --git a/src/basic/siphash24.c b/src/basic/siphash24.c index 8c1cdc3db6..4bb41786c8 100644 --- a/src/basic/siphash24.c +++ b/src/basic/siphash24.c @@ -127,18 +127,25 @@ void siphash24_compress(const void *_in, size_t inlen, struct siphash *state) { switch (left) { case 7: state->padding |= ((uint64_t) in[6]) << 48; + /* fall through */ case 6: state->padding |= ((uint64_t) in[5]) << 40; + /* fall through */ case 5: state->padding |= ((uint64_t) in[4]) << 32; + /* fall through */ case 4: state->padding |= ((uint64_t) in[3]) << 24; + /* fall through */ case 3: state->padding |= ((uint64_t) in[2]) << 16; + /* fall through */ case 2: state->padding |= ((uint64_t) in[1]) << 8; + /* fall through */ case 1: state->padding |= ((uint64_t) in[0]); + /* fall through */ case 0: break; } diff --git a/src/basic/socket-util.c b/src/basic/socket-util.c index 77f81a60ba..17e90a8994 100644 --- a/src/basic/socket-util.c +++ b/src/basic/socket-util.c @@ -877,7 +877,7 @@ bool ifname_valid(const char *p) { if (strlen(p) >= IFNAMSIZ) return false; - if (STR_IN_SET(p, ".", "..")) + if (dot_or_dot_dot(p)) return false; while (*p) { diff --git a/src/basic/string-util.c b/src/basic/string-util.c index 2ba3604ba0..9d2f4bc8f9 100644 --- a/src/basic/string-util.c +++ b/src/basic/string-util.c @@ -821,6 +821,7 @@ int free_and_strdup(char **p, const char *s) { return 1; } +#if !HAVE_DECL_EXPLICIT_BZERO /* * Pointer to memset is volatile so that compiler must de-reference * the pointer and can't assume that it points to any function in @@ -831,19 +832,19 @@ typedef void *(*memset_t)(void *,int,size_t); static volatile memset_t memset_func = memset; -void* memory_erase(void *p, size_t l) { - return memset_func(p, 'x', l); +void explicit_bzero(void *p, size_t l) { + memset_func(p, '\0', l); } +#endif char* string_erase(char *x) { - if (!x) return NULL; /* A delicious drop of snake-oil! To be called on memory where * we stored passphrases or so, after we used them. */ - - return memory_erase(x, strlen(x)); + explicit_bzero(x, strlen(x)); + return x; } char *string_free_erase(char *s) { diff --git a/src/basic/string-util.h b/src/basic/string-util.h index e99f7964be..be44dedff4 100644 --- a/src/basic/string-util.h +++ b/src/basic/string-util.h @@ -189,7 +189,10 @@ static inline void *memmem_safe(const void *haystack, size_t haystacklen, const return memmem(haystack, haystacklen, needle, needlelen); } -void* memory_erase(void *p, size_t l); +#if !HAVE_DECL_EXPLICIT_BZERO +void explicit_bzero(void *p, size_t l); +#endif + char *string_erase(char *x); char *string_free_erase(char *s); diff --git a/src/basic/time-util.c b/src/basic/time-util.c index 7a5b29d77e..a0db97c41a 100644 --- a/src/basic/time-util.c +++ b/src/basic/time-util.c @@ -185,7 +185,7 @@ usec_t triple_timestamp_by_clock(triple_timestamp *ts, clockid_t clock) { usec_t timespec_load(const struct timespec *ts) { assert(ts); - if (ts->tv_sec == (time_t) -1 && ts->tv_nsec == (long) -1) + if (ts->tv_sec < 0 || ts->tv_nsec < 0) return USEC_INFINITY; if ((usec_t) ts->tv_sec > (UINT64_MAX - (ts->tv_nsec / NSEC_PER_USEC)) / USEC_PER_SEC) @@ -199,7 +199,7 @@ usec_t timespec_load(const struct timespec *ts) { nsec_t timespec_load_nsec(const struct timespec *ts) { assert(ts); - if (ts->tv_sec == (time_t) -1 && ts->tv_nsec == (long) -1) + if (ts->tv_sec < 0 || ts->tv_nsec < 0) return NSEC_INFINITY; if ((nsec_t) ts->tv_sec >= (UINT64_MAX - ts->tv_nsec) / NSEC_PER_SEC) @@ -211,7 +211,8 @@ nsec_t timespec_load_nsec(const struct timespec *ts) { struct timespec *timespec_store(struct timespec *ts, usec_t u) { assert(ts); - if (u == USEC_INFINITY) { + if (u == USEC_INFINITY || + u / USEC_PER_SEC >= TIME_T_MAX) { ts->tv_sec = (time_t) -1; ts->tv_nsec = (long) -1; return ts; @@ -226,8 +227,7 @@ struct timespec *timespec_store(struct timespec *ts, usec_t u) { usec_t timeval_load(const struct timeval *tv) { assert(tv); - if (tv->tv_sec == (time_t) -1 && - tv->tv_usec == (suseconds_t) -1) + if (tv->tv_sec < 0 || tv->tv_usec < 0) return USEC_INFINITY; if ((usec_t) tv->tv_sec > (UINT64_MAX - tv->tv_usec) / USEC_PER_SEC) @@ -241,7 +241,8 @@ usec_t timeval_load(const struct timeval *tv) { struct timeval *timeval_store(struct timeval *tv, usec_t u) { assert(tv); - if (u == USEC_INFINITY) { + if (u == USEC_INFINITY|| + u / USEC_PER_SEC > TIME_T_MAX) { tv->tv_sec = (time_t) -1; tv->tv_usec = (suseconds_t) -1; } else { @@ -288,9 +289,11 @@ static char *format_timestamp_internal( if (t <= 0 || t == USEC_INFINITY) return NULL; /* Timestamp is unset */ + /* Let's not format times with years > 9999 */ + if (t > USEC_TIMESTAMP_FORMATTABLE_MAX) + return NULL; + sec = (time_t) (t / USEC_PER_SEC); /* Round down */ - if ((usec_t) sec != (t / USEC_PER_SEC)) - return NULL; /* overflow? */ if (!localtime_or_gmtime_r(&sec, &tm, utc)) return NULL; @@ -551,12 +554,12 @@ void dual_timestamp_serialize(FILE *f, const char *name, dual_timestamp *t) { } int dual_timestamp_deserialize(const char *value, dual_timestamp *t) { - unsigned long long a, b; + uint64_t a, b; assert(value); assert(t); - if (sscanf(value, "%llu %llu", &a, &b) != 2) { + if (sscanf(value, "%" PRIu64 "%" PRIu64, &a, &b) != 2) { log_debug("Failed to parse dual timestamp value \"%s\": %m", value); return -EINVAL; } @@ -830,16 +833,23 @@ parse_usec: from_tm: x = mktime_or_timegm(&tm, utc); - if (x == (time_t) -1) + if (x < 0) return -EINVAL; if (weekday >= 0 && tm.tm_wday != weekday) return -EINVAL; ret = (usec_t) x * USEC_PER_SEC + x_usec; + if (ret > USEC_TIMESTAMP_FORMATTABLE_MAX) + return -EINVAL; finish: + if (ret + plus < ret) /* overflow? */ + return -EINVAL; ret += plus; + if (ret > USEC_TIMESTAMP_FORMATTABLE_MAX) + return -EINVAL; + if (ret > minus) ret -= minus; else @@ -1271,7 +1281,7 @@ bool clock_supported(clockid_t clock) { if (!clock_boottime_supported()) return false; - /* fall through, after checking the cached value for CLOCK_BOOTTIME. */ + /* fall through */ default: /* For everything else, check properly */ diff --git a/src/basic/time-util.h b/src/basic/time-util.h index f67a4474ed..7463507f51 100644 --- a/src/basic/time-util.h +++ b/src/basic/time-util.h @@ -181,3 +181,14 @@ static inline usec_t usec_sub(usec_t timestamp, int64_t delta) { return timestamp - delta; } + +#if SIZEOF_TIME_T == 8 +/* The last second we can format is 31. Dec 9999, 1s before midnight, because otherwise we'd enter 5 digit year + * territory. However, since we want to stay away from this in all timezones we take one day off. */ +#define USEC_TIMESTAMP_FORMATTABLE_MAX ((usec_t) 253402214399000000) +#elif SIZEOF_TIME_T == 4 +/* With a 32bit time_t we can't go beyond 2038... */ +#define USEC_TIMESTAMP_FORMATTABLE_MAX ((usec_t) 2147483647000000) +#else +#error "Yuck, time_t is neither 4 not 8 bytes wide?" +#endif diff --git a/src/basic/virt.c b/src/basic/virt.c index 33641e6886..03ce71a728 100644 --- a/src/basic/virt.c +++ b/src/basic/virt.c @@ -49,7 +49,7 @@ static int detect_vm_cpuid(void) { { "KVMKVMKVM", VIRTUALIZATION_KVM }, /* http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=1009458 */ { "VMwareVMware", VIRTUALIZATION_VMWARE }, - /* http://msdn.microsoft.com/en-us/library/ff542428.aspx */ + /* https://docs.microsoft.com/en-us/virtualization/hyper-v-on-windows/reference/tlfs */ { "Microsoft Hv", VIRTUALIZATION_MICROSOFT }, /* https://wiki.freebsd.org/bhyve */ { "bhyve bhyve ", VIRTUALIZATION_BHYVE }, diff --git a/src/boot/efi/boot.c b/src/boot/efi/boot.c index 44ea6215dc..7cc54a8cdd 100644 --- a/src/boot/efi/boot.c +++ b/src/boot/efi/boot.c @@ -1647,7 +1647,7 @@ static EFI_STATUS image_start(EFI_HANDLE parent_image, const Config *config, con loaded_image->LoadOptionsSize = (StrLen(loaded_image->LoadOptions)+1) * sizeof(CHAR16); #ifdef SD_BOOT_LOG_TPM - /* Try to log any options to the TPM, escpecially to catch manually edited options */ + /* Try to log any options to the TPM, especially to catch manually edited options */ err = tpm_log_event(SD_TPM_PCR, (EFI_PHYSICAL_ADDRESS) loaded_image->LoadOptions, loaded_image->LoadOptionsSize, loaded_image->LoadOptions); diff --git a/src/boot/efi/stub.c b/src/boot/efi/stub.c index 1e250f34f4..7c1ffb1bca 100644 --- a/src/boot/efi/stub.c +++ b/src/boot/efi/stub.c @@ -100,7 +100,7 @@ EFI_STATUS efi_main(EFI_HANDLE image, EFI_SYSTEM_TABLE *sys_table) { cmdline = line; #ifdef SD_BOOT_LOG_TPM - /* Try to log any options to the TPM, escpecially manually edited options */ + /* Try to log any options to the TPM, especially manually edited options */ err = tpm_log_event(SD_TPM_PCR, (EFI_PHYSICAL_ADDRESS) loaded_image->LoadOptions, loaded_image->LoadOptionsSize, loaded_image->LoadOptions); diff --git a/src/cgls/cgls.c b/src/cgls/cgls.c index b55aa86a40..5574c14555 100644 --- a/src/cgls/cgls.c +++ b/src/cgls/cgls.c @@ -26,7 +26,6 @@ #include "sd-bus.h" #include "alloc-util.h" -#include "bus-error.h" #include "bus-util.h" #include "cgroup-show.h" #include "cgroup-util.h" @@ -35,12 +34,21 @@ #include "output-mode.h" #include "pager.h" #include "path-util.h" +#include "strv.h" #include "unit-name.h" #include "util.h" static bool arg_no_pager = false; static bool arg_kernel_threads = false; static bool arg_all = false; + +static enum { + SHOW_UNIT_NONE, + SHOW_UNIT_SYSTEM, + SHOW_UNIT_USER, +} arg_show_unit = SHOW_UNIT_NONE; +static char **arg_names = NULL; + static int arg_full = -1; static char* arg_machine = NULL; @@ -51,6 +59,8 @@ static void help(void) { " --version Show package version\n" " --no-pager Do not pipe output into a pager\n" " -a --all Show all groups, including empty\n" + " -u --unit Show the subtrees of specifified system units\n" + " --user-unit Show the subtrees of specifified user units\n" " -l --full Do not ellipsize output\n" " -k Include kernel threads in output\n" " -M --machine= Show container\n" @@ -62,15 +72,18 @@ static int parse_argv(int argc, char *argv[]) { enum { ARG_NO_PAGER = 0x100, ARG_VERSION, + ARG_USER_UNIT, }; static const struct option options[] = { - { "help", no_argument, NULL, 'h' }, - { "version", no_argument, NULL, ARG_VERSION }, - { "no-pager", no_argument, NULL, ARG_NO_PAGER }, - { "all", no_argument, NULL, 'a' }, - { "full", no_argument, NULL, 'l' }, - { "machine", required_argument, NULL, 'M' }, + { "help", no_argument, NULL, 'h' }, + { "version", no_argument, NULL, ARG_VERSION }, + { "no-pager", no_argument, NULL, ARG_NO_PAGER }, + { "all", no_argument, NULL, 'a' }, + { "full", no_argument, NULL, 'l' }, + { "machine", required_argument, NULL, 'M' }, + { "unit", optional_argument, NULL, 'u' }, + { "user-unit", optional_argument, NULL, ARG_USER_UNIT }, {} }; @@ -79,7 +92,7 @@ static int parse_argv(int argc, char *argv[]) { assert(argc >= 1); assert(argv); - while ((c = getopt_long(argc, argv, "hkalM:", options, NULL)) >= 0) + while ((c = getopt_long(argc, argv, "-hkalM:u::", options, NULL)) >= 0) switch (c) { @@ -98,6 +111,24 @@ static int parse_argv(int argc, char *argv[]) { arg_all = true; break; + case 'u': + arg_show_unit = SHOW_UNIT_SYSTEM; + if (strv_push(&arg_names, optarg) < 0) /* push optarg if not empty */ + return log_oom(); + break; + + case ARG_USER_UNIT: + arg_show_unit = SHOW_UNIT_USER; + if (strv_push(&arg_names, optarg) < 0) /* push optarg if not empty */ + return log_oom(); + break; + + case 1: + /* positional argument */ + if (strv_push(&arg_names, optarg) < 0) + return log_oom(); + break; + case 'l': arg_full = true; break; @@ -117,51 +148,12 @@ static int parse_argv(int argc, char *argv[]) { assert_not_reached("Unhandled option"); } - return 1; -} - -static int get_cgroup_root(char **ret) { - _cleanup_(sd_bus_error_free) sd_bus_error error = SD_BUS_ERROR_NULL; - _cleanup_(sd_bus_flush_close_unrefp) sd_bus *bus = NULL; - _cleanup_free_ char *unit = NULL, *path = NULL; - const char *m; - int r; - - if (!arg_machine) { - r = cg_get_root_path(ret); - if (r == -ENOMEDIUM) - return log_error_errno(r, "Failed to get root control group path: No cgroup filesystem mounted on /sys/fs/cgroup"); - else if (r < 0) - return log_error_errno(r, "Failed to get root control group path: %m"); - - return 0; + if (arg_machine && arg_show_unit != SHOW_UNIT_NONE) { + log_error("Cannot combine --unit or --user-unit with --machine=."); + return -EINVAL; } - m = strjoina("/run/systemd/machines/", arg_machine); - r = parse_env_file(m, NEWLINE, "SCOPE", &unit, NULL); - if (r < 0) - return log_error_errno(r, "Failed to load machine data: %m"); - - path = unit_dbus_path_from_name(unit); - if (!path) - return log_oom(); - - r = bus_connect_transport_systemd(BUS_TRANSPORT_LOCAL, NULL, false, &bus); - if (r < 0) - return log_error_errno(r, "Failed to create bus connection: %m"); - - r = sd_bus_get_property_string( - bus, - "org.freedesktop.systemd1", - path, - unit_dbus_interface_from_name(unit), - "ControlGroup", - &error, - ret); - if (r < 0) - return log_error_errno(r, "Failed to query unit control group path: %s", bus_error_message(&error, r)); - - return 0; + return 1; } static void show_cg_info(const char *controller, const char *path) { @@ -194,31 +186,65 @@ int main(int argc, char *argv[]) { (arg_full > 0) * OUTPUT_FULL_WIDTH | arg_kernel_threads * OUTPUT_KERNEL_THREADS; - if (optind < argc) { + if (arg_names) { + _cleanup_(sd_bus_flush_close_unrefp) sd_bus *bus = NULL; _cleanup_free_ char *root = NULL; - int i; + char **name; - r = get_cgroup_root(&root); - if (r < 0) - goto finish; - - for (i = optind; i < argc; i++) { + STRV_FOREACH(name, arg_names) { int q; - if (path_startswith(argv[i], "/sys/fs/cgroup")) { + if (arg_show_unit != SHOW_UNIT_NONE) { + /* Command line arguments are unit names */ + _cleanup_free_ char *cgroup = NULL; + + if (!bus) { + /* Connect to the bus only if necessary */ + r = bus_connect_transport_systemd(BUS_TRANSPORT_LOCAL, NULL, + arg_show_unit == SHOW_UNIT_USER, + &bus); + if (r < 0) { + log_error_errno(r, "Failed to create bus connection: %m"); + goto finish; + } + } + + q = show_cgroup_get_unit_path_and_warn(bus, *name, &cgroup); + if (q < 0) + goto failed; + + if (isempty(cgroup)) { + log_warning("Unit %s not found.", *name); + q = -ENOENT; + goto failed; + } + + printf("Unit %s (%s):\n", *name, cgroup); + fflush(stdout); + + q = show_cgroup_by_path(cgroup, NULL, 0, output_flags); - printf("Directory %s:\n", argv[i]); + } else if (path_startswith(*name, "/sys/fs/cgroup")) { + + printf("Directory %s:\n", *name); fflush(stdout); - q = show_cgroup_by_path(argv[i], NULL, 0, output_flags); + q = show_cgroup_by_path(*name, NULL, 0, output_flags); } else { _cleanup_free_ char *c = NULL, *p = NULL, *j = NULL; const char *controller, *path; - r = cg_split_spec(argv[i], &c, &p); - if (r < 0) { - log_error_errno(r, "Failed to split argument %s: %m", argv[i]); - goto finish; + if (!root) { + /* Query root only if needed, treat error as fatal */ + r = show_cgroup_get_path_and_warn(arg_machine, NULL, &root); + if (r < 0) + goto finish; + } + + q = cg_split_spec(*name, &c, &p); + if (q < 0) { + log_error_errno(q, "Failed to split argument %s: %m", *name); + goto failed; } controller = c ?: SYSTEMD_CGROUP_CONTROLLER; @@ -239,7 +265,8 @@ int main(int argc, char *argv[]) { q = show_cgroup(controller, path, NULL, 0, output_flags); } - if (q < 0) + failed: + if (q < 0 && r >= 0) r = q; } @@ -267,7 +294,7 @@ int main(int argc, char *argv[]) { if (!done) { _cleanup_free_ char *root = NULL; - r = get_cgroup_root(&root); + r = show_cgroup_get_path_and_warn(arg_machine, NULL, &root); if (r < 0) goto finish; @@ -283,6 +310,7 @@ int main(int argc, char *argv[]) { finish: pager_close(); + free(arg_names); /* don't free the strings */ return r < 0 ? EXIT_FAILURE : EXIT_SUCCESS; } diff --git a/src/cgtop/cgtop.c b/src/cgtop/cgtop.c index af5c3d8695..50ac6a58b0 100644 --- a/src/cgtop/cgtop.c +++ b/src/cgtop/cgtop.c @@ -31,6 +31,7 @@ #include "alloc-util.h" #include "bus-error.h" #include "bus-util.h" +#include "cgroup-show.h" #include "cgroup-util.h" #include "fd-util.h" #include "fileio.h" @@ -862,13 +863,9 @@ static int parse_argv(int argc, char *argv[]) { assert_not_reached("Unhandled option"); } - if (optind == argc-1) { - if (arg_machine) { - log_error("Specifying a control group path together with the -M option is not allowed"); - return -EINVAL; - } + if (optind == argc - 1) arg_root = argv[optind]; - } else if (optind < argc) { + else if (optind < argc) { log_error("Too many arguments."); return -EINVAL; } @@ -890,59 +887,6 @@ static const char* counting_what(void) { return "userspace processes (excl. kernel)"; } -static int get_cgroup_root(char **ret) { - _cleanup_(sd_bus_error_free) sd_bus_error error = SD_BUS_ERROR_NULL; - _cleanup_(sd_bus_flush_close_unrefp) sd_bus *bus = NULL; - _cleanup_free_ char *unit = NULL, *path = NULL; - const char *m; - int r; - - if (arg_root) { - char *aux; - - aux = strdup(arg_root); - if (!aux) - return log_oom(); - - *ret = aux; - return 0; - } - - if (!arg_machine) { - r = cg_get_root_path(ret); - if (r < 0) - return log_error_errno(r, "Failed to get root control group path: %m"); - - return 0; - } - - m = strjoina("/run/systemd/machines/", arg_machine); - r = parse_env_file(m, NEWLINE, "SCOPE", &unit, NULL); - if (r < 0) - return log_error_errno(r, "Failed to load machine data: %m"); - - path = unit_dbus_path_from_name(unit); - if (!path) - return log_oom(); - - r = bus_connect_transport_systemd(BUS_TRANSPORT_LOCAL, NULL, false, &bus); - if (r < 0) - return log_error_errno(r, "Failed to create bus connection: %m"); - - r = sd_bus_get_property_string( - bus, - "org.freedesktop.systemd1", - path, - unit_dbus_interface_from_name(unit), - "ControlGroup", - &error, - ret); - if (r < 0) - return log_error_errno(r, "Failed to query unit control group path: %s", bus_error_message(&error, r)); - - return 0; -} - int main(int argc, char *argv[]) { int r; Hashmap *a = NULL, *b = NULL; @@ -967,11 +911,12 @@ int main(int argc, char *argv[]) { if (r <= 0) goto finish; - r = get_cgroup_root(&root); + r = show_cgroup_get_path_and_warn(arg_machine, arg_root, &root); if (r < 0) { log_error_errno(r, "Failed to get root control group path: %m"); goto finish; - } + } else + log_debug("Cgroup path: %s", root); a = hashmap_new(&string_hash_ops); b = hashmap_new(&string_hash_ops); diff --git a/src/core/dbus-execute.c b/src/core/dbus-execute.c index 9960b7a811..7df4cab3f6 100644 --- a/src/core/dbus-execute.c +++ b/src/core/dbus-execute.c @@ -758,6 +758,7 @@ const sd_bus_vtable bus_exec_vtable[] = { SD_BUS_PROPERTY("LimitRTTIMESoft", "t", bus_property_get_rlimit, offsetof(ExecContext, rlimit[RLIMIT_RTTIME]), SD_BUS_VTABLE_PROPERTY_CONST), SD_BUS_PROPERTY("WorkingDirectory", "s", property_get_working_directory, 0, SD_BUS_VTABLE_PROPERTY_CONST), SD_BUS_PROPERTY("RootDirectory", "s", NULL, offsetof(ExecContext, root_directory), SD_BUS_VTABLE_PROPERTY_CONST), + SD_BUS_PROPERTY("RootImage", "s", NULL, offsetof(ExecContext, root_image), SD_BUS_VTABLE_PROPERTY_CONST), SD_BUS_PROPERTY("OOMScoreAdjust", "i", property_get_oom_score_adjust, 0, SD_BUS_VTABLE_PROPERTY_CONST), SD_BUS_PROPERTY("Nice", "i", property_get_nice, 0, SD_BUS_VTABLE_PROPERTY_CONST), SD_BUS_PROPERTY("IOScheduling", "i", property_get_ioprio, 0, SD_BUS_VTABLE_PROPERTY_CONST), @@ -828,6 +829,7 @@ const sd_bus_vtable bus_exec_vtable[] = { SD_BUS_PROPERTY("RestrictNamespaces", "t", bus_property_get_ulong, offsetof(ExecContext, restrict_namespaces), SD_BUS_VTABLE_PROPERTY_CONST), SD_BUS_PROPERTY("BindPaths", "a(ssbt)", property_get_bind_paths, 0, SD_BUS_VTABLE_PROPERTY_CONST), SD_BUS_PROPERTY("BindReadOnlyPaths", "a(ssbt)", property_get_bind_paths, 0, SD_BUS_VTABLE_PROPERTY_CONST), + SD_BUS_PROPERTY("MountAPIVFS", "b", bus_property_get_bool, offsetof(ExecContext, mount_apivfs), SD_BUS_VTABLE_PROPERTY_CONST), SD_BUS_VTABLE_END }; @@ -1047,7 +1049,7 @@ int bus_exec_context_set_transient_property( return 1; - } else if (STR_IN_SET(name, "TTYPath", "RootDirectory")) { + } else if (STR_IN_SET(name, "TTYPath", "RootDirectory", "RootImage")) { const char *s; r = sd_bus_message_read(message, "s", &s); @@ -1060,6 +1062,8 @@ int bus_exec_context_set_transient_property( if (mode != UNIT_CHECK) { if (streq(name, "TTYPath")) r = free_and_strdup(&c->tty_path, s); + else if (streq(name, "RootImage")) + r = free_and_strdup(&c->root_image, s); else { assert(streq(name, "RootDirectory")); r = free_and_strdup(&c->root_directory, s); @@ -1207,7 +1211,7 @@ int bus_exec_context_set_transient_property( "PrivateTmp", "PrivateDevices", "PrivateNetwork", "PrivateUsers", "NoNewPrivileges", "SyslogLevelPrefix", "MemoryDenyWriteExecute", "RestrictRealtime", "DynamicUser", "RemoveIPC", "ProtectKernelTunables", - "ProtectKernelModules", "ProtectControlGroups")) { + "ProtectKernelModules", "ProtectControlGroups", "MountAPIVFS")) { int b; r = sd_bus_message_read(message, "b", &b); @@ -1247,6 +1251,8 @@ int bus_exec_context_set_transient_property( c->protect_kernel_modules = b; else if (streq(name, "ProtectControlGroups")) c->protect_control_groups = b; + else if (streq(name, "MountAPIVFS")) + c->mount_apivfs = b; unit_write_drop_in_private_format(u, mode, name, "%s=%s", name, yes_no(b)); } @@ -1382,7 +1388,7 @@ int bus_exec_context_set_transient_property( _cleanup_free_ char *joined = NULL; _cleanup_fclose_ FILE *f = NULL; - _cleanup_free_ char **l = NULL; + _cleanup_strv_free_ char **l = NULL; size_t size = 0; char **i; @@ -1495,12 +1501,15 @@ int bus_exec_context_set_transient_property( return r; STRV_FOREACH(p, l) { - int offset; - if (!utf8_is_valid(*p)) + const char *i = *p; + size_t offset; + + if (!utf8_is_valid(i)) return sd_bus_error_setf(error, SD_BUS_ERROR_INVALID_ARGS, "Invalid %s", name); - offset = **p == '-'; - if (!path_is_absolute(*p + offset)) + offset = i[0] == '-'; + offset += i[offset] == '+'; + if (!path_is_absolute(i + offset)) return sd_bus_error_setf(error, SD_BUS_ERROR_INVALID_ARGS, "Invalid %s", name); } @@ -1519,7 +1528,6 @@ int bus_exec_context_set_transient_property( unit_write_drop_in_private_format(u, mode, name, "%s=", name); } else { r = strv_extend_strv(dirs, l, true); - if (r < 0) return -ENOMEM; @@ -1698,7 +1706,7 @@ int bus_exec_context_set_transient_property( if (!path_is_absolute(source)) return sd_bus_error_setf(error, SD_BUS_ERROR_INVALID_ARGS, "Source path %s is not absolute.", source); if (!path_is_absolute(destination)) - return sd_bus_error_setf(error, SD_BUS_ERROR_INVALID_ARGS, "Destination path %s is not absolute.", source); + return sd_bus_error_setf(error, SD_BUS_ERROR_INVALID_ARGS, "Destination path %s is not absolute.", destination); if (!IN_SET(mount_flags, 0, MS_REC)) return sd_bus_error_setf(error, SD_BUS_ERROR_INVALID_ARGS, "Unknown mount flags."); diff --git a/src/core/dbus-manager.c b/src/core/dbus-manager.c index 9876251438..f87b52a266 100644 --- a/src/core/dbus-manager.c +++ b/src/core/dbus-manager.c @@ -19,6 +19,7 @@ #include <errno.h> #include <sys/prctl.h> +#include <sys/statvfs.h> #include <unistd.h> #include "alloc-util.h" @@ -38,6 +39,7 @@ #include "fs-util.h" #include "install.h" #include "log.h" +#include "parse-util.h" #include "path-util.h" #include "selinux-access.h" #include "stat-util.h" @@ -48,6 +50,10 @@ #include "virt.h" #include "watchdog.h" +/* Require 16MiB free in /run/systemd for reloading/reexecing. After all we need to serialize our state there, and if + * we can't we'll fail badly. */ +#define RELOAD_DISK_SPACE_MIN (UINT64_C(16) * UINT64_C(1024) * UINT64_C(1024)) + static UnitFileFlags unit_file_bools_to_flags(bool runtime, bool force) { return (runtime ? UNIT_FILE_RUNTIME : 0) | (force ? UNIT_FILE_FORCE : 0); @@ -842,13 +848,9 @@ static int method_get_unit_processes(sd_bus_message *message, void *userdata, sd if (r < 0) return r; - r = manager_load_unit(m, name, NULL, error, &u); - if (r < 0) - return r; - - r = bus_unit_check_load_state(u, error); - if (r < 0) - return r; + u = manager_get_unit(m, name); + if (!u) + return sd_bus_error_setf(error, BUS_ERROR_NO_SUCH_UNIT, "Unit %s not loaded.", name); return bus_unit_method_get_processes(message, u, error); } @@ -1312,6 +1314,40 @@ static int method_refuse_snapshot(sd_bus_message *message, void *userdata, sd_bu return sd_bus_error_setf(error, SD_BUS_ERROR_NOT_SUPPORTED, "Support for snapshots has been removed."); } +static int verify_run_space(const char *message, sd_bus_error *error) { + struct statvfs svfs; + uint64_t available; + + if (statvfs("/run/systemd", &svfs) < 0) + return sd_bus_error_set_errnof(error, errno, "Failed to statvfs(/run/systemd): %m"); + + available = (uint64_t) svfs.f_bfree * (uint64_t) svfs.f_bsize; + + if (available < RELOAD_DISK_SPACE_MIN) { + char fb_available[FORMAT_BYTES_MAX], fb_need[FORMAT_BYTES_MAX]; + return sd_bus_error_setf(error, + BUS_ERROR_DISK_FULL, + "%s, not enough space available on /run/systemd. " + "Currently, %s are free, but a safety buffer of %s is enforced.", + message, + format_bytes(fb_available, sizeof(fb_available), available), + format_bytes(fb_need, sizeof(fb_need), RELOAD_DISK_SPACE_MIN)); + } + + return 0; +} + +int verify_run_space_and_log(const char *message) { + _cleanup_(sd_bus_error_free) sd_bus_error error = SD_BUS_ERROR_NULL; + int r; + + r = verify_run_space(message, &error); + if (r < 0) + log_error_errno(r, "%s", bus_error_message(&error, r)); + + return r; +} + static int method_reload(sd_bus_message *message, void *userdata, sd_bus_error *error) { Manager *m = userdata; int r; @@ -1319,6 +1355,10 @@ static int method_reload(sd_bus_message *message, void *userdata, sd_bus_error * assert(message); assert(m); + r = verify_run_space("Refusing to reload", error); + if (r < 0) + return r; + r = mac_selinux_access_check(message, "reload", error); if (r < 0) return r; @@ -1351,6 +1391,10 @@ static int method_reexecute(sd_bus_message *message, void *userdata, sd_bus_erro assert(message); assert(m); + r = verify_run_space("Refusing to reexecute", error); + if (r < 0) + return r; + r = mac_selinux_access_check(message, "reload", error); if (r < 0) return r; @@ -1469,11 +1513,26 @@ static int method_switch_root(sd_bus_message *message, void *userdata, sd_bus_er char *ri = NULL, *rt = NULL; const char *root, *init; Manager *m = userdata; + struct statvfs svfs; + uint64_t available; int r; assert(message); assert(m); + if (statvfs("/run/systemd", &svfs) < 0) + return sd_bus_error_set_errnof(error, errno, "Failed to statvfs(/run/systemd): %m"); + + available = (uint64_t) svfs.f_bfree * (uint64_t) svfs.f_bsize; + + if (available < RELOAD_DISK_SPACE_MIN) { + char fb_available[FORMAT_BYTES_MAX], fb_need[FORMAT_BYTES_MAX]; + log_warning("Dangerously low amount of free space on /run/systemd, root switching operation might not complete successfuly. " + "Currently, %s are free, but %s are suggested. Proceeding anyway.", + format_bytes(fb_available, sizeof(fb_available), available), + format_bytes(fb_need, sizeof(fb_need), RELOAD_DISK_SPACE_MIN)); + } + r = mac_selinux_access_check(message, "reboot", error); if (r < 0) return r; @@ -1853,63 +1912,6 @@ static int send_unit_files_changed(sd_bus *bus, void *userdata) { return sd_bus_send(bus, message, NULL); } -static int reply_unit_file_changes_and_free( - Manager *m, - sd_bus_message *message, - int carries_install_info, - UnitFileChange *changes, - unsigned n_changes) { - - _cleanup_(sd_bus_message_unrefp) sd_bus_message *reply = NULL; - unsigned i; - int r; - - if (unit_file_changes_have_modification(changes, n_changes)) { - r = bus_foreach_bus(m, NULL, send_unit_files_changed, NULL); - if (r < 0) - log_debug_errno(r, "Failed to send UnitFilesChanged signal: %m"); - } - - r = sd_bus_message_new_method_return(message, &reply); - if (r < 0) - goto fail; - - if (carries_install_info >= 0) { - r = sd_bus_message_append(reply, "b", carries_install_info); - if (r < 0) - goto fail; - } - - r = sd_bus_message_open_container(reply, 'a', "(sss)"); - if (r < 0) - goto fail; - - for (i = 0; i < n_changes; i++) - if (changes[i].type >= 0) { - const char *change = unit_file_change_type_to_string(changes[i].type); - assert(change != NULL); - - r = sd_bus_message_append( - reply, "(sss)", - change, - changes[i].path, - changes[i].source); - if (r < 0) - goto fail; - } - - r = sd_bus_message_close_container(reply); - if (r < 0) - goto fail; - - unit_file_changes_free(changes, n_changes); - return sd_bus_send(NULL, reply, NULL); - -fail: - unit_file_changes_free(changes, n_changes); - return r; -} - /* Create an error reply, using the error information from changes[] * if possible, and fall back to generating an error from error code c. * The error message only describes the first error. @@ -1923,12 +1925,14 @@ static int install_error( unsigned n_changes) { int r; unsigned i; - assert(c < 0); for (i = 0; i < n_changes; i++) + switch(changes[i].type) { + case 0 ... INT_MAX: continue; + case -EEXIST: if (changes[i].source) r = sd_bus_error_setf(error, BUS_ERROR_UNIT_EXISTS, @@ -1939,29 +1943,106 @@ static int install_error( "File %s already exists.", changes[i].path); goto found; + case -ERFKILL: r = sd_bus_error_setf(error, BUS_ERROR_UNIT_MASKED, "Unit file %s is masked.", changes[i].path); goto found; + case -EADDRNOTAVAIL: r = sd_bus_error_setf(error, BUS_ERROR_UNIT_GENERATED, "Unit %s is transient or generated.", changes[i].path); goto found; + case -ELOOP: r = sd_bus_error_setf(error, BUS_ERROR_UNIT_LINKED, "Refusing to operate on linked unit file %s", changes[i].path); goto found; + + case -ENOENT: + r = sd_bus_error_setf(error, BUS_ERROR_NO_SUCH_UNIT, "Unit file %s does not exist.", changes[i].path); + goto found; + default: r = sd_bus_error_set_errnof(error, changes[i].type, "File %s: %m", changes[i].path); goto found; } - r = c; + r = c < 0 ? c : -EINVAL; + found: unit_file_changes_free(changes, n_changes); return r; } +static int reply_unit_file_changes_and_free( + Manager *m, + sd_bus_message *message, + int carries_install_info, + UnitFileChange *changes, + unsigned n_changes, + sd_bus_error *error) { + + _cleanup_(sd_bus_message_unrefp) sd_bus_message *reply = NULL; + bool bad = false, good = false; + unsigned i; + int r; + + if (unit_file_changes_have_modification(changes, n_changes)) { + r = bus_foreach_bus(m, NULL, send_unit_files_changed, NULL); + if (r < 0) + log_debug_errno(r, "Failed to send UnitFilesChanged signal: %m"); + } + + r = sd_bus_message_new_method_return(message, &reply); + if (r < 0) + goto fail; + + if (carries_install_info >= 0) { + r = sd_bus_message_append(reply, "b", carries_install_info); + if (r < 0) + goto fail; + } + + r = sd_bus_message_open_container(reply, 'a', "(sss)"); + if (r < 0) + goto fail; + + for (i = 0; i < n_changes; i++) { + + if (changes[i].type < 0) { + bad = true; + continue; + } + + r = sd_bus_message_append( + reply, "(sss)", + unit_file_change_type_to_string(changes[i].type), + changes[i].path, + changes[i].source); + if (r < 0) + goto fail; + + good = true; + } + + /* If there was a failed change, and no successful change, then return the first failure as proper method call + * error. */ + if (bad && !good) + return install_error(error, 0, changes, n_changes); + + r = sd_bus_message_close_container(reply); + if (r < 0) + goto fail; + + unit_file_changes_free(changes, n_changes); + return sd_bus_send(NULL, reply, NULL); + +fail: + unit_file_changes_free(changes, n_changes); + return r; +} + static int method_enable_unit_files_generic( sd_bus_message *message, Manager *m, @@ -1998,7 +2079,7 @@ static int method_enable_unit_files_generic( if (r < 0) return install_error(error, r, changes, n_changes); - return reply_unit_file_changes_and_free(m, message, carries_install_info ? r : -1, changes, n_changes); + return reply_unit_file_changes_and_free(m, message, carries_install_info ? r : -1, changes, n_changes, error); } static int method_enable_unit_files(sd_bus_message *message, void *userdata, sd_bus_error *error) { @@ -2067,7 +2148,7 @@ static int method_preset_unit_files_with_mode(sd_bus_message *message, void *use if (r < 0) return install_error(error, r, changes, n_changes); - return reply_unit_file_changes_and_free(m, message, r, changes, n_changes); + return reply_unit_file_changes_and_free(m, message, r, changes, n_changes, error); } static int method_disable_unit_files_generic( @@ -2102,7 +2183,7 @@ static int method_disable_unit_files_generic( if (r < 0) return install_error(error, r, changes, n_changes); - return reply_unit_file_changes_and_free(m, message, -1, changes, n_changes); + return reply_unit_file_changes_and_free(m, message, -1, changes, n_changes, error); } static int method_disable_unit_files(sd_bus_message *message, void *userdata, sd_bus_error *error) { @@ -2137,7 +2218,7 @@ static int method_revert_unit_files(sd_bus_message *message, void *userdata, sd_ if (r < 0) return install_error(error, r, changes, n_changes); - return reply_unit_file_changes_and_free(m, message, -1, changes, n_changes); + return reply_unit_file_changes_and_free(m, message, -1, changes, n_changes, error); } static int method_set_default_target(sd_bus_message *message, void *userdata, sd_bus_error *error) { @@ -2168,7 +2249,7 @@ static int method_set_default_target(sd_bus_message *message, void *userdata, sd if (r < 0) return install_error(error, r, changes, n_changes); - return reply_unit_file_changes_and_free(m, message, -1, changes, n_changes); + return reply_unit_file_changes_and_free(m, message, -1, changes, n_changes, error); } static int method_preset_all_unit_files(sd_bus_message *message, void *userdata, sd_bus_error *error) { @@ -2211,7 +2292,7 @@ static int method_preset_all_unit_files(sd_bus_message *message, void *userdata, if (r < 0) return install_error(error, r, changes, n_changes); - return reply_unit_file_changes_and_free(m, message, -1, changes, n_changes); + return reply_unit_file_changes_and_free(m, message, -1, changes, n_changes, error); } static int method_add_dependency_unit_files(sd_bus_message *message, void *userdata, sd_bus_error *error) { @@ -2251,7 +2332,7 @@ static int method_add_dependency_unit_files(sd_bus_message *message, void *userd if (r < 0) return install_error(error, r, changes, n_changes); - return reply_unit_file_changes_and_free(m, message, -1, changes, n_changes); + return reply_unit_file_changes_and_free(m, message, -1, changes, n_changes, error); } static int method_get_unit_file_links(sd_bus_message *message, void *userdata, sd_bus_error *error) { diff --git a/src/core/dbus-manager.h b/src/core/dbus-manager.h index 36a2e9481b..9f3222da28 100644 --- a/src/core/dbus-manager.h +++ b/src/core/dbus-manager.h @@ -26,3 +26,5 @@ extern const sd_bus_vtable bus_manager_vtable[]; void bus_manager_send_finished(Manager *m, usec_t firmware_usec, usec_t loader_usec, usec_t kernel_usec, usec_t initrd_usec, usec_t userspace_usec, usec_t total_usec); void bus_manager_send_reloading(Manager *m, bool active); void bus_manager_send_change_signal(Manager *m); + +int verify_run_space_and_log(const char *message); diff --git a/src/core/dbus-unit.c b/src/core/dbus-unit.c index 2adc1d9288..f1306a023f 100644 --- a/src/core/dbus-unit.c +++ b/src/core/dbus-unit.c @@ -1006,6 +1006,10 @@ int bus_unit_method_get_processes(sd_bus_message *message, void *userdata, sd_bu assert(message); + r = mac_selinux_unit_access_check(u, message, "status", error); + if (r < 0) + return r; + pids = set_new(NULL); if (!pids) return -ENOMEM; @@ -1218,7 +1222,7 @@ int bus_unit_queue_job( (type == JOB_STOP && u->refuse_manual_stop) || ((type == JOB_RESTART || type == JOB_TRY_RESTART) && (u->refuse_manual_start || u->refuse_manual_stop)) || (type == JOB_RELOAD_OR_START && job_type_collapse(type, u) == JOB_START && u->refuse_manual_start)) - return sd_bus_error_setf(error, BUS_ERROR_ONLY_BY_DEPENDENCY, "Operation refused, unit %s may be requested by dependency only.", u->id); + return sd_bus_error_setf(error, BUS_ERROR_ONLY_BY_DEPENDENCY, "Operation refused, unit %s may be requested by dependency only (it is configured to refuse manual start/stop).", u->id); r = manager_add_job(u->manager, type, u, mode, error, &j); if (r < 0) diff --git a/src/core/dbus.c b/src/core/dbus.c index 07ab21f199..0493e5786c 100644 --- a/src/core/dbus.c +++ b/src/core/dbus.c @@ -175,7 +175,7 @@ static int signal_activation_request(sd_bus_message *message, void *userdata, sd goto failed; if (u->refuse_manual_start) { - r = sd_bus_error_setf(&error, BUS_ERROR_ONLY_BY_DEPENDENCY, "Operation refused, %s may be requested by dependency only.", u->id); + r = sd_bus_error_setf(&error, BUS_ERROR_ONLY_BY_DEPENDENCY, "Operation refused, %s may be requested by dependency only (it is configured to refuse manual start/stop).", u->id); goto failed; } @@ -477,7 +477,7 @@ static int bus_kill_context_find(sd_bus *bus, const char *path, const char *inte } static int bus_job_enumerate(sd_bus *bus, const char *path, void *userdata, char ***nodes, sd_bus_error *error) { - _cleanup_free_ char **l = NULL; + _cleanup_strv_free_ char **l = NULL; Manager *m = userdata; unsigned k = 0; Iterator i; @@ -504,7 +504,7 @@ static int bus_job_enumerate(sd_bus *bus, const char *path, void *userdata, char } static int bus_unit_enumerate(sd_bus *bus, const char *path, void *userdata, char ***nodes, sd_bus_error *error) { - _cleanup_free_ char **l = NULL; + _cleanup_strv_free_ char **l = NULL; Manager *m = userdata; unsigned k = 0; Iterator i; @@ -1041,6 +1041,7 @@ int bus_init(Manager *m, bool try_bus_connect) { static void destroy_bus(Manager *m, sd_bus **bus) { Iterator i; + Unit *u; Job *j; assert(m); @@ -1049,6 +1050,17 @@ static void destroy_bus(Manager *m, sd_bus **bus) { if (!*bus) return; + /* Make sure all bus slots watching names are released. */ + HASHMAP_FOREACH(u, m->watch_bus, i) { + if (!u->match_bus_slot) + continue; + + if (sd_bus_slot_get_bus(u->match_bus_slot) != *bus) + continue; + + u->match_bus_slot = sd_bus_slot_unref(u->match_bus_slot); + } + /* Get rid of tracked clients on this bus */ if (m->subscribed && sd_bus_track_get_bus(m->subscribed) == *bus) m->subscribed = sd_bus_track_unref(m->subscribed); diff --git a/src/core/execute.c b/src/core/execute.c index 06a291fd39..4c2968f971 100644 --- a/src/core/execute.c +++ b/src/core/execute.c @@ -1643,6 +1643,9 @@ static bool exec_needs_mount_namespace( assert(context); assert(params); + if (context->root_image) + return true; + if (!strv_isempty(context->read_write_paths) || !strv_isempty(context->read_only_paths) || !strv_isempty(context->inaccessible_paths)) @@ -1665,6 +1668,9 @@ static bool exec_needs_mount_namespace( context->protect_control_groups) return true; + if (context->mount_apivfs) + return true; + return false; } @@ -1685,25 +1691,31 @@ static int setup_private_users(uid_t uid, gid_t gid) { * child then writes the UID mapping, under full privileges. The parent waits for the child to finish and * continues execution normally. */ - if (uid != 0 && uid_is_valid(uid)) - asprintf(&uid_map, - "0 0 1\n" /* Map root → root */ - UID_FMT " " UID_FMT " 1\n", /* Map $UID → $UID */ - uid, uid); - else + if (uid != 0 && uid_is_valid(uid)) { + r = asprintf(&uid_map, + "0 0 1\n" /* Map root → root */ + UID_FMT " " UID_FMT " 1\n", /* Map $UID → $UID */ + uid, uid); + if (r < 0) + return -ENOMEM; + } else { uid_map = strdup("0 0 1\n"); /* The case where the above is the same */ - if (!uid_map) - return -ENOMEM; + if (!uid_map) + return -ENOMEM; + } - if (gid != 0 && gid_is_valid(gid)) - asprintf(&gid_map, - "0 0 1\n" /* Map root → root */ - GID_FMT " " GID_FMT " 1\n", /* Map $GID → $GID */ - gid, gid); - else + if (gid != 0 && gid_is_valid(gid)) { + r = asprintf(&gid_map, + "0 0 1\n" /* Map root → root */ + GID_FMT " " GID_FMT " 1\n", /* Map $GID → $GID */ + gid, gid); + if (r < 0) + return -ENOMEM; + } else { gid_map = strdup("0 0 1\n"); /* The case where the above is the same */ - if (!gid_map) - return -ENOMEM; + if (!gid_map) + return -ENOMEM; + } /* Create a communication channel so that the parent can tell the child when it finished creating the user * namespace. */ @@ -1896,8 +1908,8 @@ static int compile_read_write_paths( _cleanup_strv_free_ char **l = NULL; char **rt; - /* Compile the list of writable paths. This is the combination of the explicitly configured paths, plus all - * runtime directories. */ + /* Compile the list of writable paths. This is the combination of + * the explicitly configured paths, plus all runtime directories. */ if (strv_isempty(context->read_write_paths) && strv_isempty(context->runtime_directory)) { @@ -1926,20 +1938,26 @@ static int compile_read_write_paths( return 0; } -static int apply_mount_namespace(Unit *u, const ExecContext *context, - const ExecParameters *params, - ExecRuntime *runtime) { - int r; - _cleanup_free_ char **rw = NULL; +static int apply_mount_namespace( + Unit *u, + ExecCommand *command, + const ExecContext *context, + const ExecParameters *params, + ExecRuntime *runtime) { + + _cleanup_strv_free_ char **rw = NULL; char *tmp = NULL, *var = NULL; - const char *root_dir = NULL; + const char *root_dir = NULL, *root_image = NULL; NameSpaceInfo ns_info = { .ignore_protect_paths = false, .private_dev = context->private_devices, .protect_control_groups = context->protect_control_groups, .protect_kernel_tunables = context->protect_kernel_tunables, .protect_kernel_modules = context->protect_kernel_modules, + .mount_apivfs = context->mount_apivfs, }; + bool apply_restrictions; + int r; assert(context); @@ -1958,8 +1976,12 @@ static int apply_mount_namespace(Unit *u, const ExecContext *context, if (r < 0) return r; - if (params->flags & EXEC_APPLY_CHROOT) - root_dir = context->root_directory; + if (params->flags & EXEC_APPLY_CHROOT) { + root_image = context->root_image; + + if (!root_image) + root_dir = context->root_directory; + } /* * If DynamicUser=no and RootDirectory= is set then lets pass a relaxed @@ -1969,16 +1991,20 @@ static int apply_mount_namespace(Unit *u, const ExecContext *context, if (!context->dynamic_user && root_dir) ns_info.ignore_protect_paths = true; - r = setup_namespace(root_dir, &ns_info, rw, - context->read_only_paths, - context->inaccessible_paths, + apply_restrictions = (params->flags & EXEC_APPLY_PERMISSIONS) && !command->privileged; + + r = setup_namespace(root_dir, root_image, + &ns_info, rw, + apply_restrictions ? context->read_only_paths : NULL, + apply_restrictions ? context->inaccessible_paths : NULL, context->bind_mounts, context->n_bind_mounts, tmp, var, - context->protect_home, - context->protect_system, - context->mount_flags); + apply_restrictions ? context->protect_home : PROTECT_HOME_NO, + apply_restrictions ? context->protect_system : PROTECT_SYSTEM_NO, + context->mount_flags, + DISSECT_IMAGE_DISCARD_ON_LOOP); /* If we couldn't set up the namespace this is probably due to a * missing capability. In this case, silently proceeed. */ @@ -1992,33 +2018,47 @@ static int apply_mount_namespace(Unit *u, const ExecContext *context, return r; } -static int apply_working_directory(const ExecContext *context, - const ExecParameters *params, - const char *home, - const bool needs_mount_ns) { - const char *d; - const char *wd; +static int apply_working_directory( + const ExecContext *context, + const ExecParameters *params, + const char *home, + const bool needs_mount_ns, + int *exit_status) { + + const char *d, *wd; assert(context); + assert(exit_status); + + if (context->working_directory_home) { + + if (!home) { + *exit_status = EXIT_CHDIR; + return -ENXIO; + } - if (context->working_directory_home) wd = home; - else if (context->working_directory) + + } else if (context->working_directory) wd = context->working_directory; else wd = "/"; if (params->flags & EXEC_APPLY_CHROOT) { if (!needs_mount_ns && context->root_directory) - if (chroot(context->root_directory) < 0) + if (chroot(context->root_directory) < 0) { + *exit_status = EXIT_CHROOT; return -errno; + } d = wd; } else - d = strjoina(strempty(context->root_directory), "/", strempty(wd)); + d = prefix_roota(context->root_directory, wd); - if (chdir(d) < 0 && !context->working_directory_missing_ok) + if (chdir(d) < 0 && !context->working_directory_missing_ok) { + *exit_status = EXIT_CHDIR; return -errno; + } return 0; } @@ -2160,6 +2200,35 @@ static int send_user_lookup( return 0; } +static int acquire_home(const ExecContext *c, uid_t uid, const char** home, char **buf) { + int r; + + assert(c); + assert(home); + assert(buf); + + /* If WorkingDirectory=~ is set, try to acquire a usable home directory. */ + + if (*home) + return 0; + + if (!c->working_directory_home) + return 0; + + if (uid == 0) { + /* Hardcode /root as home directory for UID 0 */ + *home = "/root"; + return 1; + } + + r = get_home_dir(buf); + if (r < 0) + return r; + + *home = *buf; + return 1; +} + static int exec_child( Unit *unit, ExecCommand *command, @@ -2177,7 +2246,7 @@ static int exec_child( char **error_message) { _cleanup_strv_free_ char **our_env = NULL, **pass_env = NULL, **accum_env = NULL, **final_argv = NULL; - _cleanup_free_ char *mac_selinux_context_net = NULL; + _cleanup_free_ char *mac_selinux_context_net = NULL, *home_buffer = NULL; _cleanup_free_ gid_t *supplementary_gids = NULL; const char *username = NULL, *groupname = NULL; const char *home = NULL, *shell = NULL; @@ -2330,6 +2399,13 @@ static int exec_child( user_lookup_fd = safe_close(user_lookup_fd); + r = acquire_home(context, uid, &home, &home_buffer); + if (r < 0) { + *exit_status = EXIT_CHDIR; + *error_message = strdup("Failed to determine $HOME for user"); + return r; + } + /* If a socket is connected to STDIN/STDOUT/STDERR, we * must sure to drop O_NONBLOCK */ if (socket_fd >= 0) @@ -2433,11 +2509,12 @@ static int exec_child( } if (context->utmp_id) - utmp_put_init_process(context->utmp_id, getpid(), getsid(0), context->tty_path, + utmp_put_init_process(context->utmp_id, getpid(), getsid(0), + context->tty_path, context->utmp_mode == EXEC_UTMP_INIT ? INIT_PROCESS : context->utmp_mode == EXEC_UTMP_LOGIN ? LOGIN_PROCESS : USER_PROCESS, - username ? "root" : context->user); + username); if (context->user) { r = chown_terminal(STDIN_FILENO, uid); @@ -2536,7 +2613,7 @@ static int exec_child( needs_mount_namespace = exec_needs_mount_namespace(context, params, runtime); if (needs_mount_namespace) { - r = apply_mount_namespace(unit, context, params, runtime); + r = apply_mount_namespace(unit, command, context, params, runtime); if (r < 0) { *exit_status = EXIT_NAMESPACE; return r; @@ -2544,11 +2621,9 @@ static int exec_child( } /* Apply just after mount namespace setup */ - r = apply_working_directory(context, params, home, needs_mount_namespace); - if (r < 0) { - *exit_status = EXIT_CHROOT; + r = apply_working_directory(context, params, home, needs_mount_namespace, exit_status); + if (r < 0) return r; - } /* Drop groups as early as possbile */ if ((params->flags & EXEC_APPLY_PERMISSIONS) && !command->privileged) { @@ -2975,6 +3050,7 @@ void exec_context_done(ExecContext *c) { c->working_directory = mfree(c->working_directory); c->root_directory = mfree(c->root_directory); + c->root_image = mfree(c->root_image); c->tty_path = mfree(c->tty_path); c->syslog_identifier = mfree(c->syslog_identifier); c->user = mfree(c->user); @@ -3096,7 +3172,7 @@ const char* exec_context_fdname(const ExecContext *c, int fd_index) { int exec_context_named_iofds(Unit *unit, const ExecContext *c, const ExecParameters *p, int named_iofds[3]) { unsigned i, targets; - const char *stdio_fdname[3]; + const char* stdio_fdname[3]; assert(c); assert(p); @@ -3109,18 +3185,32 @@ int exec_context_named_iofds(Unit *unit, const ExecContext *c, const ExecParamet stdio_fdname[i] = exec_context_fdname(c, i); for (i = 0; i < p->n_fds && targets > 0; i++) - if (named_iofds[STDIN_FILENO] < 0 && c->std_input == EXEC_INPUT_NAMED_FD && stdio_fdname[STDIN_FILENO] && streq(p->fd_names[i], stdio_fdname[STDIN_FILENO])) { + if (named_iofds[STDIN_FILENO] < 0 && + c->std_input == EXEC_INPUT_NAMED_FD && + stdio_fdname[STDIN_FILENO] && + streq(p->fd_names[i], stdio_fdname[STDIN_FILENO])) { + named_iofds[STDIN_FILENO] = p->fds[i]; targets--; - } else if (named_iofds[STDOUT_FILENO] < 0 && c->std_output == EXEC_OUTPUT_NAMED_FD && stdio_fdname[STDOUT_FILENO] && streq(p->fd_names[i], stdio_fdname[STDOUT_FILENO])) { + + } else if (named_iofds[STDOUT_FILENO] < 0 && + c->std_output == EXEC_OUTPUT_NAMED_FD && + stdio_fdname[STDOUT_FILENO] && + streq(p->fd_names[i], stdio_fdname[STDOUT_FILENO])) { + named_iofds[STDOUT_FILENO] = p->fds[i]; targets--; - } else if (named_iofds[STDERR_FILENO] < 0 && c->std_error == EXEC_OUTPUT_NAMED_FD && stdio_fdname[STDERR_FILENO] && streq(p->fd_names[i], stdio_fdname[STDERR_FILENO])) { + + } else if (named_iofds[STDERR_FILENO] < 0 && + c->std_error == EXEC_OUTPUT_NAMED_FD && + stdio_fdname[STDERR_FILENO] && + streq(p->fd_names[i], stdio_fdname[STDERR_FILENO])) { + named_iofds[STDERR_FILENO] = p->fds[i]; targets--; } - return (targets == 0 ? 0 : -ENOENT); + return targets == 0 ? 0 : -ENOENT; } int exec_context_load_environment(Unit *unit, const ExecContext *c, char ***l) { @@ -3276,6 +3366,7 @@ void exec_context_dump(ExecContext *c, FILE* f, const char *prefix) { "%sPrivateUsers: %s\n" "%sProtectHome: %s\n" "%sProtectSystem: %s\n" + "%sMountAPIVFS: %s\n" "%sIgnoreSIGPIPE: %s\n" "%sMemoryDenyWriteExecute: %s\n" "%sRestrictRealtime: %s\n", @@ -3292,10 +3383,14 @@ void exec_context_dump(ExecContext *c, FILE* f, const char *prefix) { prefix, yes_no(c->private_users), prefix, protect_home_to_string(c->protect_home), prefix, protect_system_to_string(c->protect_system), + prefix, yes_no(c->mount_apivfs), prefix, yes_no(c->ignore_sigpipe), prefix, yes_no(c->memory_deny_write_execute), prefix, yes_no(c->restrict_realtime)); + if (c->root_image) + fprintf(f, "%sRootImage: %s\n", prefix, c->root_image); + STRV_FOREACH(e, c->environment) fprintf(f, "%sEnvironment: %s\n", prefix, *e); diff --git a/src/core/execute.h b/src/core/execute.h index f8694ef520..9f2b6fd39e 100644 --- a/src/core/execute.h +++ b/src/core/execute.h @@ -106,7 +106,7 @@ struct ExecContext { char **pass_environment; struct rlimit *rlimit[_RLIMIT_MAX]; - char *working_directory, *root_directory; + char *working_directory, *root_directory, *root_image; bool working_directory_missing_ok; bool working_directory_home; @@ -183,6 +183,7 @@ struct ExecContext { bool protect_kernel_tunables; bool protect_kernel_modules; bool protect_control_groups; + bool mount_apivfs; bool no_new_privileges; diff --git a/src/core/job.c b/src/core/job.c index f7c4c59c32..00f7d7998f 100644 --- a/src/core/job.c +++ b/src/core/job.c @@ -697,7 +697,7 @@ _pure_ static const char *job_get_status_message_format(Unit *u, JobType t, JobR static void job_print_status_message(Unit *u, JobType t, JobResult result) { static const struct { const char *color, *word; - } const statuses[_JOB_RESULT_MAX] = { + } statuses[_JOB_RESULT_MAX] = { [JOB_DONE] = { ANSI_GREEN, " OK " }, [JOB_TIMEOUT] = { ANSI_HIGHLIGHT_RED, " TIME " }, [JOB_FAILED] = { ANSI_HIGHLIGHT_RED, "FAILED" }, diff --git a/src/core/killall.c b/src/core/killall.c index b3aa22adc5..7a9df546ee 100644 --- a/src/core/killall.c +++ b/src/core/killall.c @@ -66,29 +66,26 @@ static bool ignore_proc(pid_t pid, bool warn_rootfs) { if (count <= 0) return true; - /* Processes with argv[0][0] = '@' we ignore from the killing - * spree. + /* Processes with argv[0][0] = '@' we ignore from the killing spree. * * http://www.freedesktop.org/wiki/Software/systemd/RootStorageDaemons */ - if (c == '@' && warn_rootfs) { - _cleanup_free_ char *comm = NULL; + if (c != '@') + return false; - r = pid_from_same_root_fs(pid); - if (r < 0) - return true; + if (warn_rootfs && + pid_from_same_root_fs(pid) == 0) { + + _cleanup_free_ char *comm = NULL; get_process_comm(pid, &comm); - if (r) - log_notice("Process " PID_FMT " (%s) has been marked to be excluded from killing. It is " - "running from the root file system, and thus likely to block re-mounting of the " - "root file system to read-only. Please consider moving it into an initrd file " - "system instead.", pid, strna(comm)); - return true; - } else if (c == '@') - return true; + log_notice("Process " PID_FMT " (%s) has been marked to be excluded from killing. It is " + "running from the root file system, and thus likely to block re-mounting of the " + "root file system to read-only. Please consider moving it into an initrd file " + "system instead.", pid, strna(comm)); + } - return false; + return true; } static void wait_for_children(Set *pids, sigset_t *mask) { diff --git a/src/core/load-dropin.c b/src/core/load-dropin.c index f83fa09301..ff3636149a 100644 --- a/src/core/load-dropin.c +++ b/src/core/load-dropin.c @@ -19,51 +19,121 @@ #include "conf-parser.h" +#include "fs-util.h" #include "load-dropin.h" #include "load-fragment.h" #include "log.h" +#include "stat-util.h" +#include "string-util.h" #include "strv.h" #include "unit-name.h" #include "unit.h" -static int add_dependency_consumer( - UnitDependency dependency, - const char *entry, - const char* filepath, - void *arg) { - Unit *u = arg; +static bool unit_name_compatible(const char *a, const char *b) { + _cleanup_free_ char *prefix = NULL; int r; - assert(u); + /* the straightforward case: the symlink name matches the target */ + if (streq(a, b)) + return true; + + r = unit_name_template(a, &prefix); + if (r < 0) { + log_oom(); + return true; + } + + /* an instance name points to a target that is just the template name */ + if (streq(prefix, b)) + return true; + + return false; +} + +static int process_deps(Unit *u, UnitDependency dependency, const char *dir_suffix) { + _cleanup_strv_free_ char **paths = NULL; + char **p; + int r; - r = unit_add_dependency_by_name(u, dependency, entry, filepath, true); + r = unit_file_find_dropin_paths(NULL, + u->manager->lookup_paths.search_path, + u->manager->unit_path_cache, + dir_suffix, + NULL, + u->names, + &paths); if (r < 0) - log_error_errno(r, "Cannot add dependency %s to %s, ignoring: %m", entry, u->id); + return r; + + STRV_FOREACH(p, paths) { + const char *entry; + _cleanup_free_ char *target = NULL; + + entry = basename(*p); + + if (null_or_empty_path(*p) > 0) { + /* an error usually means an invalid symlink, which is not a mask */ + log_unit_debug(u, "%s dependency on %s is masked by %s, ignoring.", + unit_dependency_to_string(dependency), entry, *p); + continue; + } + + r = is_symlink(*p); + if (r < 0) { + log_unit_warning_errno(u, r, "%s dropin %s unreadable, ignoring: %m", + unit_dependency_to_string(dependency), *p); + continue; + } + if (r == 0) { + log_unit_warning(u, "%s dependency dropin %s is not a symlink, ignoring.", + unit_dependency_to_string(dependency), *p); + continue; + } + + if (!unit_name_is_valid(entry, UNIT_NAME_ANY)) { + log_unit_warning(u, "%s dependency dropin %s is not a valid unit name, ignoring.", + unit_dependency_to_string(dependency), *p); + continue; + } + + r = readlink_malloc(*p, &target); + if (r < 0) { + log_unit_warning_errno(u, r, "readlink(\"%s\") failed, ignoring: %m", *p); + continue; + } + + /* We don't treat this as an error, especially because we didn't check this for a + * long time. Nevertheless, we warn, because such mismatch can be mighty confusing. */ + if (!unit_name_compatible(entry, basename(target))) + log_unit_warning(u, "%s dependency dropin %s target %s has different name", + unit_dependency_to_string(dependency), *p, target); + + r = unit_add_dependency_by_name(u, dependency, entry, *p, true); + if (r < 0) + log_unit_error_errno(u, r, "cannot add %s dependency on %s, ignoring: %m", + unit_dependency_to_string(dependency), entry); + } return 0; } int unit_load_dropin(Unit *u) { _cleanup_strv_free_ char **l = NULL; - Iterator i; - char *t, **f; + char **f; int r; assert(u); - /* Load dependencies from supplementary drop-in directories */ - - SET_FOREACH(t, u->names, i) { - char **p; + /* Load dependencies from .wants and .requires directories */ + r = process_deps(u, UNIT_WANTS, ".wants"); + if (r < 0) + return r; - STRV_FOREACH(p, u->manager->lookup_paths.search_path) { - unit_file_process_dir(u->manager->unit_path_cache, *p, t, ".wants", UNIT_WANTS, - add_dependency_consumer, u, NULL); - unit_file_process_dir(u->manager->unit_path_cache, *p, t, ".requires", UNIT_REQUIRES, - add_dependency_consumer, u, NULL); - } - } + r = process_deps(u, UNIT_REQUIRES, ".requires"); + if (r < 0) + return r; + /* Load .conf dropins */ r = unit_find_dropin_paths(u, &l); if (r <= 0) return 0; diff --git a/src/core/load-dropin.h b/src/core/load-dropin.h index 942d26724e..5828a223ce 100644 --- a/src/core/load-dropin.h +++ b/src/core/load-dropin.h @@ -25,10 +25,11 @@ /* Read service data supplementary drop-in directories */ static inline int unit_find_dropin_paths(Unit *u, char ***paths) { - return unit_file_find_dropin_paths(u->manager->lookup_paths.search_path, - u->manager->unit_path_cache, - u->names, - paths); + return unit_file_find_dropin_conf_paths(NULL, + u->manager->lookup_paths.search_path, + u->manager->unit_path_cache, + u->names, + paths); } int unit_load_dropin(Unit *u); diff --git a/src/core/load-fragment-gperf.gperf.m4 b/src/core/load-fragment-gperf.gperf.m4 index 15f22a2681..cb9e6fea27 100644 --- a/src/core/load-fragment-gperf.gperf.m4 +++ b/src/core/load-fragment-gperf.gperf.m4 @@ -19,6 +19,7 @@ m4_dnl Define the context options only once m4_define(`EXEC_CONTEXT_CONFIG_ITEMS', `$1.WorkingDirectory, config_parse_working_directory, 0, offsetof($1, exec_context) $1.RootDirectory, config_parse_unit_path_printf, 0, offsetof($1, exec_context.root_directory) +$1.RootImage, config_parse_unit_path_printf, 0, offsetof($1, exec_context.root_image) $1.User, config_parse_user_group, 0, offsetof($1, exec_context.user) $1.Group, config_parse_user_group, 0, offsetof($1, exec_context.group) $1.SupplementaryGroups, config_parse_user_group_strv, 0, offsetof($1, exec_context.supplementary_groups) @@ -101,6 +102,7 @@ $1.PrivateUsers, config_parse_bool, 0, $1.ProtectSystem, config_parse_protect_system, 0, offsetof($1, exec_context) $1.ProtectHome, config_parse_protect_home, 0, offsetof($1, exec_context) $1.MountFlags, config_parse_exec_mount_flags, 0, offsetof($1, exec_context) +$1.MountAPIVFS, config_parse_bool, 0, offsetof($1, exec_context.mount_apivfs) $1.Personality, config_parse_personality, 0, offsetof($1, exec_context.personality) $1.RuntimeDirectoryMode, config_parse_mode, 0, offsetof($1, exec_context.runtime_directory_mode) $1.RuntimeDirectory, config_parse_runtime_directory, 0, offsetof($1, exec_context.runtime_directory) diff --git a/src/core/load-fragment.c b/src/core/load-fragment.c index bc0cf73d39..5b7471c0d0 100644 --- a/src/core/load-fragment.c +++ b/src/core/load-fragment.c @@ -620,7 +620,7 @@ int config_parse_exec( * If it's prefixed with - and the path doesn't exist, * we ignore it instead of erroring out; * if it's prefixed with @, we allow overriding of argv[0]; - * and if it's prefixed with !, it will be run with full privileges */ + * and if it's prefixed with +, it will be run with full privileges */ if (*f == '-' && !ignore) ignore = true; else if (*f == '@' && !separate_argv0) @@ -3839,7 +3839,8 @@ int config_parse_namespace_path_strv( cur = rvalue; for (;;) { _cleanup_free_ char *word = NULL, *resolved = NULL, *joined = NULL; - bool ignore_enoent; + const char *w; + bool ignore_enoent = false, shall_prefix = false; r = extract_first_word(&cur, &word, NULL, EXTRACT_QUOTES); if (r == 0) @@ -3856,9 +3857,17 @@ int config_parse_namespace_path_strv( continue; } - ignore_enoent = word[0] == '-'; + w = word; + if (startswith(w, "-")) { + ignore_enoent = true; + w++; + } + if (startswith(w, "+")) { + shall_prefix = true; + w++; + } - r = unit_full_printf(u, word + ignore_enoent, &resolved); + r = unit_full_printf(u, w, &resolved); if (r < 0) { log_syntax(unit, LOG_ERR, filename, line, r, "Failed to resolve specifiers in %s: %m", word); continue; @@ -3871,7 +3880,9 @@ int config_parse_namespace_path_strv( path_kill_slashes(resolved); - joined = strjoin(ignore_enoent ? "-" : "", resolved); + joined = strjoin(ignore_enoent ? "-" : "", + shall_prefix ? "+" : "", + resolved); r = strv_push(sv, joined); if (r < 0) diff --git a/src/core/manager.c b/src/core/manager.c index d83c5ef5e2..e4da945777 100644 --- a/src/core/manager.c +++ b/src/core/manager.c @@ -1984,7 +1984,9 @@ static int manager_dispatch_signal_fd(sd_event_source *source, int fd, uint32_t if (MANAGER_IS_SYSTEM(m)) { /* This is for compatibility with the * original sysvinit */ - m->exit_code = MANAGER_REEXECUTE; + r = verify_run_space_and_log("Refusing to reexecute"); + if (r >= 0) + m->exit_code = MANAGER_REEXECUTE; break; } @@ -2061,7 +2063,9 @@ static int manager_dispatch_signal_fd(sd_event_source *source, int fd, uint32_t } case SIGHUP: - m->exit_code = MANAGER_RELOAD; + r = verify_run_space_and_log("Refusing to reload"); + if (r >= 0) + m->exit_code = MANAGER_RELOAD; break; default: { @@ -2432,18 +2436,22 @@ void manager_send_unit_plymouth(Manager *m, Unit *u) { } int manager_open_serialization(Manager *m, FILE **_f) { - const char *path; int fd = -1; FILE *f; assert(_f); - path = MANAGER_IS_SYSTEM(m) ? "/run/systemd" : "/tmp"; - fd = open_tmpfile_unlinkable(path, O_RDWR|O_CLOEXEC); - if (fd < 0) - return -errno; + fd = memfd_create("systemd-serialization", MFD_CLOEXEC); + if (fd < 0) { + const char *path; - log_debug("Serializing state to %s", path); + path = MANAGER_IS_SYSTEM(m) ? "/run/systemd" : "/tmp"; + fd = open_tmpfile_unlinkable(path, O_RDWR|O_CLOEXEC); + if (fd < 0) + return -errno; + log_debug("Serializing state to %s.", path); + } else + log_debug("Serializing state to memfd."); f = fdopen(fd, "w+"); if (!f) { diff --git a/src/core/mount.c b/src/core/mount.c index 8192a3616f..ca0c4b0d5e 100644 --- a/src/core/mount.c +++ b/src/core/mount.c @@ -1241,7 +1241,7 @@ static void mount_sigchld_event(Unit *u, pid_t pid, int code, int status) { if (f == MOUNT_SUCCESS || m->from_proc_self_mountinfo) /* If /bin/mount returned success, or if we see the mount point in /proc/self/mountinfo we are - * happy. If we see the first condition first, we should see the the second condition + * happy. If we see the first condition first, we should see the second condition * immediately after – or /bin/mount lies to us and is broken. */ mount_enter_mounted(m, f); else @@ -1408,7 +1408,7 @@ static int mount_setup_new_unit( u->source_path = strdup("/proc/self/mountinfo"); MOUNT(u)->where = strdup(where); - if (!u->source_path && !MOUNT(u)->where) + if (!u->source_path || !MOUNT(u)->where) return -ENOMEM; /* Make sure to initialize those fields before mount_is_extrinsic(). */ @@ -1435,6 +1435,7 @@ static int mount_setup_new_unit( return r; } + unit_add_to_load_queue(u); flags->is_mounted = true; flags->just_mounted = true; flags->just_changed = true; diff --git a/src/core/namespace.c b/src/core/namespace.c index 834883267c..75dca5b791 100644 --- a/src/core/namespace.c +++ b/src/core/namespace.c @@ -30,6 +30,7 @@ #include "dev-setup.h" #include "fd-util.h" #include "fs-util.h" +#include "loop-util.h" #include "loopback-setup.h" #include "missing.h" #include "mkdir.h" @@ -52,10 +53,13 @@ typedef enum MountMode { INACCESSIBLE, BIND_MOUNT, BIND_MOUNT_RECURSIVE, - READONLY, PRIVATE_TMP, PRIVATE_VAR_TMP, PRIVATE_DEV, + BIND_DEV, + SYSFS, + PROCFS, + READONLY, READWRITE, } MountMode; @@ -70,13 +74,13 @@ typedef struct MountEntry { char *source_malloc; } MountEntry; -/* - * The following Protect tables are to protect paths and mark some of them - * READONLY, in case a path is covered by an option from another table, then - * it is marked READWRITE in the current one, and the more restrictive mode is - * applied from that other table. This way all options can be combined in a - * safe and comprehensible way for users. - */ +/* If MountAPIVFS= is used, let's mount /sys and /proc into the it, but only as a fallback if the user hasn't mounted + * something there already. These mounts are hence overriden by any other explicitly configured mounts. */ +static const MountEntry apivfs_table[] = { + { "/proc", PROCFS, false }, + { "/dev", BIND_DEV, false }, + { "/sys", SYSFS, false }, +}; /* ProtectKernelTunables= option and the related filesystem APIs */ static const MountEntry protect_kernel_tunables_table[] = { @@ -176,6 +180,13 @@ static const char *mount_entry_source(const MountEntry *p) { return p->source_malloc ?: p->source_const; } +static void mount_entry_done(MountEntry *p) { + assert(p); + + p->path_malloc = mfree(p->path_malloc); + p->source_malloc = mfree(p->source_malloc); +} + static int append_access_mounts(MountEntry **p, char **strv, MountMode mode) { char **i; @@ -351,7 +362,7 @@ static void drop_duplicates(MountEntry *m, unsigned *n) { if (previous && path_equal(mount_entry_path(f), mount_entry_path(previous))) { log_debug("%s is duplicate.", mount_entry_path(f)); previous->read_only = previous->read_only || mount_entry_read_only(f); /* Propagate the read-only flag to the remaining entry */ - f->path_malloc = mfree(f->path_malloc); + mount_entry_done(f); continue; } @@ -379,7 +390,7 @@ static void drop_inaccessible(MountEntry *m, unsigned *n) { * it, as inaccessible paths really should drop the entire subtree. */ if (clear && path_startswith(mount_entry_path(f), clear)) { log_debug("%s is masked by %s.", mount_entry_path(f), clear); - f->path_malloc = mfree(f->path_malloc); + mount_entry_done(f); continue; } @@ -419,7 +430,7 @@ static void drop_nop(MountEntry *m, unsigned *n) { /* We found it, let's see if it's the same mode, if so, we can drop this entry */ if (found && p->mode == f->mode) { log_debug("%s is redundant by %s", mount_entry_path(f), mount_entry_path(p)); - f->path_malloc = mfree(f->path_malloc); + mount_entry_done(f); continue; } } @@ -447,7 +458,7 @@ static void drop_outside_root(const char *root_directory, MountEntry *m, unsigne if (!path_startswith(mount_entry_path(f), root_directory)) { log_debug("%s is outside of root directory.", mount_entry_path(f)); - f->path_malloc = mfree(f->path_malloc); + mount_entry_done(f); continue; } @@ -458,7 +469,7 @@ static void drop_outside_root(const char *root_directory, MountEntry *m, unsigne *n = t - m; } -static int mount_dev(MountEntry *m) { +static int mount_private_dev(MountEntry *m) { static const char devnodes[] = "/dev/null\0" "/dev/zero\0" @@ -597,6 +608,62 @@ fail: return r; } +static int mount_bind_dev(MountEntry *m) { + int r; + + assert(m); + + /* Implements the little brother of mount_private_dev(): simply bind mounts the host's /dev into the service's + * /dev. This is only used when RootDirectory= is set. */ + + r = path_is_mount_point(mount_entry_path(m), NULL, 0); + if (r < 0) + return log_debug_errno(r, "Unable to determine whether /dev is already mounted: %m"); + if (r > 0) /* make this a NOP if /dev is already a mount point */ + return 0; + + if (mount("/dev", mount_entry_path(m), NULL, MS_BIND|MS_REC, NULL) < 0) + return log_debug_errno(errno, "Failed to bind mount %s: %m", mount_entry_path(m)); + + return 1; +} + +static int mount_sysfs(MountEntry *m) { + int r; + + assert(m); + + r = path_is_mount_point(mount_entry_path(m), NULL, 0); + if (r < 0) + return log_debug_errno(r, "Unable to determine whether /sys is already mounted: %m"); + if (r > 0) /* make this a NOP if /sys is already a mount point */ + return 0; + + /* Bind mount the host's version so that we get all child mounts of it, too. */ + if (mount("/sys", mount_entry_path(m), NULL, MS_BIND|MS_REC, NULL) < 0) + return log_debug_errno(errno, "Failed to mount %s: %m", mount_entry_path(m)); + + return 1; +} + +static int mount_procfs(MountEntry *m) { + int r; + + assert(m); + + r = path_is_mount_point(mount_entry_path(m), NULL, 0); + if (r < 0) + return log_debug_errno(r, "Unable to determine whether /proc is already mounted: %m"); + if (r > 0) /* make this a NOP if /proc is already a mount point */ + return 0; + + /* Mount a new instance, so that we get the one that matches our user namespace, if we are running in one */ + if (mount("proc", mount_entry_path(m), "proc", MS_NOSUID|MS_NOEXEC|MS_NODEV, NULL) < 0) + return log_debug_errno(errno, "Failed to mount %s: %m", mount_entry_path(m)); + + return 1; +} + static int mount_entry_chase( const char *root_directory, MountEntry *m, @@ -684,6 +751,7 @@ static int apply_mount( case BIND_MOUNT_RECURSIVE: /* Also chase the source mount */ + r = mount_entry_chase(root_directory, m, mount_entry_source(m), &m->source_malloc); if (r <= 0) return r; @@ -700,7 +768,16 @@ static int apply_mount( break; case PRIVATE_DEV: - return mount_dev(m); + return mount_private_dev(m); + + case BIND_DEV: + return mount_bind_dev(m); + + case SYSFS: + return mount_sysfs(m); + + case PROCFS: + return mount_procfs(m); default: assert_not_reached("Unknown mode"); @@ -722,7 +799,7 @@ static int make_read_only(MountEntry *m, char **blacklist) { if (mount_entry_read_only(m)) r = bind_remount_recursive(mount_entry_path(m), true, blacklist); - else if (m->mode == PRIVATE_DEV) { /* Can be readonly but the submounts can't*/ + else if (m->mode == PRIVATE_DEV) { /* Superblock can be readonly but the submounts can't*/ if (mount(NULL, mount_entry_path(m), NULL, MS_REMOUNT|DEV_MOUNT_OPTIONS|MS_RDONLY, NULL) < 0) r = -errno; } else @@ -738,6 +815,17 @@ static int make_read_only(MountEntry *m, char **blacklist) { return r; } +static bool namespace_info_mount_apivfs(const NameSpaceInfo *ns_info) { + assert(ns_info); + + /* ProtectControlGroups= and ProtectKernelTunables= imply MountAPIVFS=, since to protect the API VFS mounts, + * they need to be around in the first place... */ + + return ns_info->mount_apivfs || + ns_info->protect_control_groups || + ns_info->protect_kernel_tunables; +} + static unsigned namespace_calculate_mounts( const NameSpaceInfo *ns_info, char** read_write_paths, @@ -774,11 +862,13 @@ static unsigned namespace_calculate_mounts( (ns_info->protect_kernel_tunables ? ELEMENTSOF(protect_kernel_tunables_table) : 0) + (ns_info->protect_control_groups ? 1 : 0) + (ns_info->protect_kernel_modules ? ELEMENTSOF(protect_kernel_modules_table) : 0) + - protect_home_cnt + protect_system_cnt; + protect_home_cnt + protect_system_cnt + + (namespace_info_mount_apivfs(ns_info) ? ELEMENTSOF(apivfs_table) : 0); } int setup_namespace( const char* root_directory, + const char* root_image, const NameSpaceInfo *ns_info, char** read_write_paths, char** read_only_paths, @@ -789,16 +879,57 @@ int setup_namespace( const char* var_tmp_dir, ProtectHome protect_home, ProtectSystem protect_system, - unsigned long mount_flags) { + unsigned long mount_flags, + DissectImageFlags dissect_image_flags) { + _cleanup_(loop_device_unrefp) LoopDevice *loop_device = NULL; + _cleanup_(decrypted_image_unrefp) DecryptedImage *decrypted_image = NULL; + _cleanup_(dissected_image_unrefp) DissectedImage *dissected_image = NULL; + _cleanup_free_ void *root_hash = NULL; MountEntry *m, *mounts = NULL; + size_t root_hash_size = 0; bool make_slave = false; unsigned n_mounts; int r = 0; + assert(ns_info); + if (mount_flags == 0) mount_flags = MS_SHARED; + if (root_image) { + dissect_image_flags |= DISSECT_IMAGE_REQUIRE_ROOT; + + if (protect_system == PROTECT_SYSTEM_STRICT && strv_isempty(read_write_paths)) + dissect_image_flags |= DISSECT_IMAGE_READ_ONLY; + + r = loop_device_make_by_path(root_image, + dissect_image_flags & DISSECT_IMAGE_READ_ONLY ? O_RDONLY : O_RDWR, + &loop_device); + if (r < 0) + return r; + + r = root_hash_load(root_image, &root_hash, &root_hash_size); + if (r < 0) + return r; + + r = dissect_image(loop_device->fd, root_hash, root_hash_size, dissect_image_flags, &dissected_image); + if (r < 0) + return r; + + r = dissected_image_decrypt(dissected_image, NULL, root_hash, root_hash_size, dissect_image_flags, &decrypted_image); + if (r < 0) + return r; + + if (!root_directory) { + /* Create a mount point for the image, if it's still missing. We use the same mount point for + * all images, which is safe, since they all live in their own namespaces after all, and hence + * won't see each other. */ + root_directory = "/run/systemd/unit-root"; + (void) mkdir(root_directory, 0700); + } + } + n_mounts = namespace_calculate_mounts( ns_info, read_write_paths, @@ -878,6 +1009,12 @@ int setup_namespace( if (r < 0) goto finish; + if (namespace_info_mount_apivfs(ns_info)) { + r = append_static_mounts(&m, apivfs_table, ELEMENTSOF(apivfs_table), ns_info->ignore_protect_paths); + if (r < 0) + goto finish; + } + assert(mounts + n_mounts == m); /* Prepend the root directory where that's necessary */ @@ -907,7 +1044,19 @@ int setup_namespace( } } - if (root_directory) { + if (root_image) { + r = dissected_image_mount(dissected_image, root_directory, dissect_image_flags); + if (r < 0) + goto finish; + + r = decrypted_image_relinquish(decrypted_image); + if (r < 0) + goto finish; + + loop_device_relinquish(loop_device); + + } else if (root_directory) { + /* Turn directory into bind mount, if it isn't one yet */ r = path_is_mount_point(root_directory, NULL, AT_SYMLINK_FOLLOW); if (r < 0) @@ -964,7 +1113,7 @@ int setup_namespace( finish: for (m = mounts; m < mounts + n_mounts; m++) - free(m->path_malloc); + mount_entry_done(m); return r; } diff --git a/src/core/namespace.h b/src/core/namespace.h index de3edc419c..f54954bd86 100644 --- a/src/core/namespace.h +++ b/src/core/namespace.h @@ -25,6 +25,7 @@ typedef struct BindMount BindMount; #include <stdbool.h> +#include "dissect-image.h" #include "macro.h" typedef enum ProtectHome { @@ -50,6 +51,7 @@ struct NameSpaceInfo { bool protect_control_groups:1; bool protect_kernel_tunables:1; bool protect_kernel_modules:1; + bool mount_apivfs:1; }; struct BindMount { @@ -62,6 +64,7 @@ struct BindMount { int setup_namespace( const char *root_directory, + const char *root_image, const NameSpaceInfo *ns_info, char **read_write_paths, char **read_only_paths, @@ -72,7 +75,8 @@ int setup_namespace( const char *var_tmp_dir, ProtectHome protect_home, ProtectSystem protect_system, - unsigned long mount_flags); + unsigned long mount_flags, + DissectImageFlags dissected_image_flags); int setup_tmp_dirs( const char *id, diff --git a/src/core/socket.c b/src/core/socket.c index 3cae6b31bb..a7b9ada65c 100644 --- a/src/core/socket.c +++ b/src/core/socket.c @@ -2668,6 +2668,7 @@ const char* socket_port_type_to_string(SocketPort *p) { if (socket_address_family(&p->address) == AF_NETLINK) return "Netlink"; + /* fall through */ default: return NULL; } diff --git a/src/core/timer.c b/src/core/timer.c index c6b28dd9c5..af67b7591a 100644 --- a/src/core/timer.c +++ b/src/core/timer.c @@ -232,7 +232,7 @@ static void timer_dump(Unit *u, FILE *f, const char *prefix) { if (v->base == TIMER_CALENDAR) { _cleanup_free_ char *p = NULL; - calendar_spec_to_string(v->calendar_spec, &p); + (void) calendar_spec_to_string(v->calendar_spec, &p); fprintf(f, "%s%s: %s\n", @@ -350,7 +350,7 @@ static void add_random(Timer *t, usec_t *v) { else *v += add; - log_unit_info(UNIT(t), "Adding %s random time.", format_timespan(s, sizeof(s), add, 0)); + log_unit_debug(UNIT(t), "Adding %s random time.", format_timespan(s, sizeof(s), add, 0)); } static void timer_enter_waiting(Timer *t, bool initial) { @@ -422,7 +422,8 @@ static void timer_enter_waiting(Timer *t, bool initial) { } /* In a container we don't want to include the time the host * was already up when the container started, so count from - * our own startup. Fall through. */ + * our own startup. */ + /* fall through */ case TIMER_STARTUP: base = UNIT(t)->manager->userspace_timestamp.monotonic; break; diff --git a/src/core/transaction.c b/src/core/transaction.c index e22e3b30c2..b6d1062414 100644 --- a/src/core/transaction.c +++ b/src/core/transaction.c @@ -907,7 +907,10 @@ int transaction_add_job_and_dependencies( SET_FOREACH(dep, following, i) { r = transaction_add_job_and_dependencies(tr, type, dep, ret, false, false, false, ignore_order, e); if (r < 0) { - log_unit_warning(dep, "Cannot add dependency job for, ignoring: %s", bus_error_message(e, r)); + log_unit_full(dep, + r == -ERFKILL ? LOG_INFO : LOG_WARNING, + r, "Cannot add dependency job, ignoring: %s", + bus_error_message(e, r)); sd_bus_error_free(e); } } diff --git a/src/core/unit.c b/src/core/unit.c index 409668f6d2..5e4b1567d8 100644 --- a/src/core/unit.c +++ b/src/core/unit.c @@ -862,6 +862,12 @@ int unit_add_exec_dependencies(Unit *u, ExecContext *c) { return r; } + if (c->root_image) { + r = unit_require_mounts_for(u, c->root_image); + if (r < 0) + return r; + } + if (!MANAGER_IS_SYSTEM(u->manager)) return 0; @@ -1083,6 +1089,7 @@ void unit_dump(Unit *u, FILE *f, const char *prefix) { /* Common implementation for multiple backends */ int unit_load_fragment_and_dropin(Unit *u) { + Unit *t; int r; assert(u); @@ -1095,16 +1102,18 @@ int unit_load_fragment_and_dropin(Unit *u) { if (u->load_state == UNIT_STUB) return -ENOENT; - /* Load drop-in directory data */ - r = unit_load_dropin(unit_follow_merge(u)); - if (r < 0) - return r; + /* If the unit is an alias and the final unit has already been + * loaded, there's no point in reloading the dropins one more time. */ + t = unit_follow_merge(u); + if (t != u && t->load_state != UNIT_STUB) + return 0; - return 0; + return unit_load_dropin(t); } /* Common implementation for multiple backends */ int unit_load_fragment_and_dropin_optional(Unit *u) { + Unit *t; int r; assert(u); @@ -1120,12 +1129,13 @@ int unit_load_fragment_and_dropin_optional(Unit *u) { if (u->load_state == UNIT_STUB) u->load_state = UNIT_LOADED; - /* Load drop-in directory data */ - r = unit_load_dropin(unit_follow_merge(u)); - if (r < 0) - return r; + /* If the unit is an alias and the final unit has already been + * loaded, there's no point in reloading the dropins one more time. */ + t = unit_follow_merge(u); + if (t != u && t->load_state != UNIT_STUB) + return 0; - return 0; + return unit_load_dropin(t); } int unit_add_default_target_dependency(Unit *u, Unit *target) { @@ -2640,7 +2650,7 @@ void unit_unwatch_bus_name(Unit *u, const char *name) { assert(u); assert(name); - hashmap_remove_value(u->manager->watch_bus, name, u); + (void) hashmap_remove_value(u->manager->watch_bus, name, u); u->match_bus_slot = sd_bus_slot_unref(u->match_bus_slot); } diff --git a/src/coredump/coredump.c b/src/coredump/coredump.c index d55d896df4..1f6fb5de1e 100644 --- a/src/coredump/coredump.c +++ b/src/coredump/coredump.c @@ -642,7 +642,11 @@ static int get_process_container_parent_cmdline(pid_t pid, char** cmdline) { if (r < 0) return r; - return get_process_cmdline(container_pid, 0, false, cmdline); + r = get_process_cmdline(container_pid, 0, false, cmdline); + if (r < 0) + return r; + + return 1; } static int change_uid_gid(const char *context[]) { diff --git a/src/cryptsetup/cryptsetup.c b/src/cryptsetup/cryptsetup.c index cefd1b85df..91c653312a 100644 --- a/src/cryptsetup/cryptsetup.c +++ b/src/cryptsetup/cryptsetup.c @@ -594,7 +594,7 @@ static int help(void) { int main(int argc, char *argv[]) { struct crypt_device *cd = NULL; - int r; + int r = -EINVAL; if (argc <= 1) { r = help(); @@ -603,7 +603,6 @@ int main(int argc, char *argv[]) { if (argc < 3) { log_error("This program requires at least two arguments."); - r = -EINVAL; goto finish; } @@ -750,7 +749,6 @@ int main(int argc, char *argv[]) { } else { log_error("Unknown verb %s.", argv[1]); - r = -EINVAL; goto finish; } diff --git a/src/dissect/dissect.c b/src/dissect/dissect.c index fd9db5ba87..59bd7d9e84 100644 --- a/src/dissect/dissect.c +++ b/src/dissect/dissect.c @@ -191,6 +191,14 @@ int main(int argc, char *argv[]) { goto finish; } + if (!arg_root_hash) { + r = root_hash_load(arg_image, &arg_root_hash, &arg_root_hash_size); + if (r < 0) { + log_error_errno(r, "Failed to read root hash file for %s: %m", arg_image); + goto finish; + } + } + r = dissect_image(d->fd, arg_root_hash, arg_root_hash_size, arg_flags, &m); if (r == -ENOPKG) { log_error_errno(r, "Couldn't identify a suitable partition table or file system in %s.", arg_image); diff --git a/src/fstab-generator/fstab-generator.c b/src/fstab-generator/fstab-generator.c index 3c601a63e2..d97bafd1fb 100644 --- a/src/fstab-generator/fstab-generator.c +++ b/src/fstab-generator/fstab-generator.c @@ -57,6 +57,34 @@ static char *arg_usr_fstype = NULL; static char *arg_usr_options = NULL; static VolatileMode arg_volatile_mode = _VOLATILE_MODE_INVALID; +static int write_options(FILE *f, const char *options) { + _cleanup_free_ char *o = NULL; + + if (isempty(options)) + return 0; + + if (streq(options, "defaults")) + return 0; + + o = strreplace(options, "%", "%%"); + if (!o) + return log_oom(); + + fprintf(f, "Options=%s\n", o); + return 1; +} + +static int write_what(FILE *f, const char *what) { + _cleanup_free_ char *w = NULL; + + w = strreplace(what, "%", "%%"); + if (!w) + return log_oom(); + + fprintf(f, "What=%s\n", w); + return 1; +} + static int add_swap( const char *what, struct mntent *me, @@ -96,17 +124,19 @@ static int add_swap( "Failed to create unit file %s: %m", unit); - fprintf(f, - "# Automatically generated by systemd-fstab-generator\n\n" - "[Unit]\n" - "SourcePath=/etc/fstab\n" - "Documentation=man:fstab(5) man:systemd-fstab-generator(8)\n\n" - "[Swap]\n" - "What=%s\n", - what); + fputs("# Automatically generated by systemd-fstab-generator\n\n" + "[Unit]\n" + "SourcePath=/etc/fstab\n" + "Documentation=man:fstab(5) man:systemd-fstab-generator(8)\n\n" + "[Swap]\n", f); + + r = write_what(f, what); + if (r < 0) + return r; - if (!isempty(me->mnt_opts) && !streq(me->mnt_opts, "defaults")) - fprintf(f, "Options=%s\n", me->mnt_opts); + r = write_options(f, me->mnt_opts); + if (r < 0) + return r; r = fflush_and_check(f); if (r < 0) @@ -331,11 +361,13 @@ static int add_mount( fprintf(f, "\n" "[Mount]\n" - "What=%s\n" "Where=%s\n", - what, where); + r = write_what(f, what); + if (r < 0) + return r; + if (!isempty(fstype) && !streq(fstype, "auto")) fprintf(f, "Type=%s\n", fstype); @@ -347,8 +379,9 @@ static int add_mount( if (r < 0) return r; - if (!isempty(filtered) && !streq(filtered, "defaults")) - fprintf(f, "Options=%s\n", filtered); + r = write_options(f, filtered); + if (r < 0) + return r; r = fflush_and_check(f); if (r < 0) diff --git a/src/gpt-auto-generator/gpt-auto-generator.c b/src/gpt-auto-generator/gpt-auto-generator.c index e61ef8f249..b958070c90 100644 --- a/src/gpt-auto-generator/gpt-auto-generator.c +++ b/src/gpt-auto-generator/gpt-auto-generator.c @@ -658,7 +658,7 @@ static int get_block_device_harder(const char *path, dev_t *dev) { FOREACH_DIRENT_ALL(de, d, return -errno) { - if (STR_IN_SET(de->d_name, ".", "..")) + if (dot_or_dot_dot(de->d_name)) continue; if (!IN_SET(de->d_type, DT_LNK, DT_UNKNOWN)) diff --git a/src/hostname/hostnamectl.c b/src/hostname/hostnamectl.c index 07c57fb567..f5a9de94a6 100644 --- a/src/hostname/hostnamectl.c +++ b/src/hostname/hostnamectl.c @@ -137,10 +137,8 @@ static int show_one_name(sd_bus *bus, const char* attr) { "org.freedesktop.hostname1", attr, &error, &reply, "s"); - if (r < 0) { - log_error("Could not get property: %s", bus_error_message(&error, -r)); - return r; - } + if (r < 0) + return log_error_errno(r, "Could not get property: %s", bus_error_message(&error, r)); r = sd_bus_message_read(reply, "s", &s); if (r < 0) @@ -151,7 +149,7 @@ static int show_one_name(sd_bus *bus, const char* attr) { return 0; } -static int show_all_names(sd_bus *bus) { +static int show_all_names(sd_bus *bus, sd_bus_error *error) { StatusInfo info = {}; static const struct bus_properties_map hostname_map[] = { @@ -181,6 +179,7 @@ static int show_all_names(sd_bus *bus) { "org.freedesktop.hostname1", "/org/freedesktop/hostname1", hostname_map, + error, &info); if (r < 0) goto fail; @@ -189,6 +188,7 @@ static int show_all_names(sd_bus *bus) { "org.freedesktop.systemd1", "/org/freedesktop/systemd1", manager_map, + error, &info); print_status_info(&info); @@ -212,6 +212,8 @@ fail: } static int show_status(sd_bus *bus, char **args, unsigned n) { + int r; + assert(args); if (arg_pretty || arg_static || arg_transient) { @@ -226,8 +228,15 @@ static int show_status(sd_bus *bus, char **args, unsigned n) { arg_static ? "StaticHostname" : "Hostname"; return show_one_name(bus, attr); - } else - return show_all_names(bus); + } else { + _cleanup_(sd_bus_error_free) sd_bus_error error = SD_BUS_ERROR_NULL; + + r = show_all_names(bus, &error); + if (r < 0) + return log_error_errno(r, "Failed to query system properties: %s", bus_error_message(&error, r)); + + return 0; + } } static int set_simple_string(sd_bus *bus, const char *method, const char *value) { diff --git a/src/hostname/hostnamed.c b/src/hostname/hostnamed.c index 74256e4444..4657cf8c77 100644 --- a/src/hostname/hostnamed.c +++ b/src/hostname/hostnamed.c @@ -283,7 +283,7 @@ static int context_update_kernel_hostname(Context *c) { /* ... and the ultimate fallback */ else - hn = "localhost"; + hn = FALLBACK_HOSTNAME; if (sethostname_idempotent(hn) < 0) return -errno; @@ -419,7 +419,7 @@ static int method_set_hostname(sd_bus_message *m, void *userdata, sd_bus_error * name = c->data[PROP_STATIC_HOSTNAME]; if (isempty(name)) - name = "localhost"; + name = FALLBACK_HOSTNAME; if (!hostname_is_valid(name, false)) return sd_bus_error_setf(error, SD_BUS_ERROR_INVALID_ARGS, "Invalid hostname '%s'", name); diff --git a/src/journal-remote/journal-gatewayd.c b/src/journal-remote/journal-gatewayd.c index 8ad9738edf..9a1c5b76ca 100644 --- a/src/journal-remote/journal-gatewayd.c +++ b/src/journal-remote/journal-gatewayd.c @@ -912,7 +912,7 @@ static int parse_argv(int argc, char *argv[]) { assert(argc >= 0); assert(argv); - while ((c = getopt_long(argc, argv, "h", options, NULL)) >= 0) + while ((c = getopt_long(argc, argv, "hD:", options, NULL)) >= 0) switch(c) { @@ -958,6 +958,7 @@ static int parse_argv(int argc, char *argv[]) { break; #else log_error("Option --trust is not available."); + return -EINVAL; #endif case 'D': arg_directory = optarg; @@ -1028,10 +1029,9 @@ int main(int argc, char *argv[]) { { MHD_OPTION_END, 0, NULL }}; int opts_pos = 2; - /* We force MHD_USE_PIPE_FOR_SHUTDOWN here, in order - * to make sure libmicrohttpd doesn't use shutdown() - * on our listening socket, which would break socket - * re-activation. See + /* We force MHD_USE_ITC here, in order to make sure + * libmicrohttpd doesn't use shutdown() on our listening + * socket, which would break socket re-activation. See * * https://lists.gnu.org/archive/html/libmicrohttpd/2015-09/msg00014.html * https://github.com/systemd/systemd/pull/1286 @@ -1040,7 +1040,7 @@ int main(int argc, char *argv[]) { int flags = MHD_USE_DEBUG | MHD_USE_DUAL_STACK | - MHD_USE_PIPE_FOR_SHUTDOWN | + MHD_USE_ITC | MHD_USE_POLL | MHD_USE_THREAD_PER_CONNECTION; diff --git a/src/journal-remote/journal-remote.c b/src/journal-remote/journal-remote.c index d86c3681b1..d0d8d936e3 100644 --- a/src/journal-remote/journal-remote.c +++ b/src/journal-remote/journal-remote.c @@ -648,9 +648,9 @@ static int setup_microhttpd_server(RemoteServer *s, int flags = MHD_USE_DEBUG | MHD_USE_DUAL_STACK | - MHD_USE_EPOLL_LINUX_ONLY | + MHD_USE_EPOLL | MHD_USE_PEDANTIC_CHECKS | - MHD_USE_PIPE_FOR_SHUTDOWN; + MHD_USE_ITC; const union MHD_DaemonInfo *info; int r, epoll_fd; diff --git a/src/journal-remote/microhttpd-util.h b/src/journal-remote/microhttpd-util.h index af26ab69fe..49def4f630 100644 --- a/src/journal-remote/microhttpd-util.h +++ b/src/journal-remote/microhttpd-util.h @@ -24,13 +24,25 @@ #include "macro.h" +/* Those defines are added when options are renamed, hence the check for the *old* name. */ + /* Compatiblity with libmicrohttpd < 0.9.38 */ #ifndef MHD_HTTP_NOT_ACCEPTABLE -#define MHD_HTTP_NOT_ACCEPTABLE MHD_HTTP_METHOD_NOT_ACCEPTABLE +# define MHD_HTTP_NOT_ACCEPTABLE MHD_HTTP_METHOD_NOT_ACCEPTABLE +#endif + +/* Renamed in µhttpd 0.9.52 */ +#ifndef MHD_USE_EPOLL_LINUX_ONLY +# define MHD_USE_EPOLL MHD_USE_EPOLL_LINUX_ONLY +#endif + +/* Renamed in µhttpd 0.9.51 */ +#ifndef MHD_USE_PIPE_FOR_SHUTDOWN +# define MHD_USE_ITC MHD_USE_PIPE_FOR_SHUTDOWN #endif #if MHD_VERSION < 0x00094203 -#define MHD_create_response_from_fd_at_offset64 MHD_create_response_from_fd_at_offset +# define MHD_create_response_from_fd_at_offset64 MHD_create_response_from_fd_at_offset #endif void microhttpd_logger(void *arg, const char *fmt, va_list ap) _printf_(2, 0); diff --git a/src/journal/journal-file.c b/src/journal/journal-file.c index d3e0214731..ef87b176fa 100644 --- a/src/journal/journal-file.c +++ b/src/journal/journal-file.c @@ -42,6 +42,7 @@ #include "sd-event.h" #include "set.h" #include "string-util.h" +#include "strv.h" #include "xattr-util.h" #define DEFAULT_DATA_HASH_TABLE_SIZE (2047ULL*sizeof(HashItem)) @@ -285,7 +286,7 @@ static int journal_file_set_online(JournalFile *f) { continue; /* Canceled restart from offlining, must wait for offlining to complete however. */ - /* fall through to wait */ + /* fall through */ default: { int r; @@ -507,42 +508,58 @@ static int journal_file_refresh_header(JournalFile *f) { return r; } -static int journal_file_verify_header(JournalFile *f) { +static bool warn_wrong_flags(const JournalFile *f, bool compatible) { + const uint32_t any = compatible ? HEADER_COMPATIBLE_ANY : HEADER_INCOMPATIBLE_ANY, + supported = compatible ? HEADER_COMPATIBLE_SUPPORTED : HEADER_INCOMPATIBLE_SUPPORTED; + const char *type = compatible ? "compatible" : "incompatible"; uint32_t flags; + flags = le32toh(compatible ? f->header->compatible_flags : f->header->incompatible_flags); + + if (flags & ~supported) { + if (flags & ~any) + log_debug("Journal file %s has unknown %s flags 0x%"PRIx32, + f->path, type, flags & ~any); + flags = (flags & any) & ~supported; + if (flags) { + const char* strv[3]; + unsigned n = 0; + _cleanup_free_ char *t = NULL; + + if (compatible && (flags & HEADER_COMPATIBLE_SEALED)) + strv[n++] = "sealed"; + if (!compatible && (flags & HEADER_INCOMPATIBLE_COMPRESSED_XZ)) + strv[n++] = "xz-compressed"; + if (!compatible && (flags & HEADER_INCOMPATIBLE_COMPRESSED_LZ4)) + strv[n++] = "lz4-compressed"; + strv[n] = NULL; + assert(n < ELEMENTSOF(strv)); + + t = strv_join((char**) strv, ", "); + log_debug("Journal file %s uses %s %s %s disabled at compilation time.", + f->path, type, n > 1 ? "flags" : "flag", strnull(t)); + } + return true; + } + + return false; +} + +static int journal_file_verify_header(JournalFile *f) { assert(f); assert(f->header); if (memcmp(f->header->signature, HEADER_SIGNATURE, 8)) return -EBADMSG; - /* In both read and write mode we refuse to open files with - * incompatible flags we don't know */ - flags = le32toh(f->header->incompatible_flags); - if (flags & ~HEADER_INCOMPATIBLE_SUPPORTED) { - if (flags & ~HEADER_INCOMPATIBLE_ANY) - log_debug("Journal file %s has unknown incompatible flags %"PRIx32, - f->path, flags & ~HEADER_INCOMPATIBLE_ANY); - flags = (flags & HEADER_INCOMPATIBLE_ANY) & ~HEADER_INCOMPATIBLE_SUPPORTED; - if (flags) - log_debug("Journal file %s uses incompatible flags %"PRIx32 - " disabled at compilation time.", f->path, flags); + /* In both read and write mode we refuse to open files with incompatible + * flags we don't know. */ + if (warn_wrong_flags(f, false)) return -EPROTONOSUPPORT; - } - /* When open for writing we refuse to open files with - * compatible flags, too */ - flags = le32toh(f->header->compatible_flags); - if (f->writable && (flags & ~HEADER_COMPATIBLE_SUPPORTED)) { - if (flags & ~HEADER_COMPATIBLE_ANY) - log_debug("Journal file %s has unknown compatible flags %"PRIx32, - f->path, flags & ~HEADER_COMPATIBLE_ANY); - flags = (flags & HEADER_COMPATIBLE_ANY) & ~HEADER_COMPATIBLE_SUPPORTED; - if (flags) - log_debug("Journal file %s uses compatible flags %"PRIx32 - " disabled at compilation time.", f->path, flags); + /* When open for writing we refuse to open files with compatible flags, too. */ + if (f->writable && warn_wrong_flags(f, true)) return -EPROTONOSUPPORT; - } if (f->header->state >= _STATE_MAX) return -EBADMSG; @@ -580,12 +597,12 @@ static int journal_file_verify_header(JournalFile *f) { state = f->header->state; - if (state == STATE_ONLINE) { + if (state == STATE_ARCHIVED) + return -ESHUTDOWN; /* Already archived */ + else if (state == STATE_ONLINE) { log_debug("Journal file %s is already online. Assuming unclean closing.", f->path); return -EBUSY; - } else if (state == STATE_ARCHIVED) - return -ESHUTDOWN; - else if (state != STATE_OFFLINE) { + } else if (state != STATE_OFFLINE) { log_debug("Journal file %s has unknown state %i.", f->path, state); return -EBUSY; } @@ -3087,13 +3104,18 @@ int journal_file_open( } } - if (fname) + if (fname) { f->path = strdup(fname); - else /* If we don't know the path, fill in something explanatory and vaguely useful */ - asprintf(&f->path, "/proc/self/%i", fd); - if (!f->path) { - r = -ENOMEM; - goto fail; + if (!f->path) { + r = -ENOMEM; + goto fail; + } + } else { + /* If we don't know the path, fill in something explanatory and vaguely useful */ + if (asprintf(&f->path, "/proc/self/%i", fd) < 0) { + r = -ENOMEM; + goto fail; + } } f->chain_cache = ordered_hashmap_new(&uint64_hash_ops); @@ -3330,12 +3352,12 @@ int journal_file_open_reliably( r = journal_file_open(-1, fname, flags, mode, compress, seal, metrics, mmap_cache, deferred_closes, template, ret); if (!IN_SET(r, - -EBADMSG, /* corrupted */ - -ENODATA, /* truncated */ - -EHOSTDOWN, /* other machine */ - -EPROTONOSUPPORT, /* incompatible feature */ - -EBUSY, /* unclean shutdown */ - -ESHUTDOWN, /* already archived */ + -EBADMSG, /* Corrupted */ + -ENODATA, /* Truncated */ + -EHOSTDOWN, /* Other machine */ + -EPROTONOSUPPORT, /* Incompatible feature */ + -EBUSY, /* Unclean shutdown */ + -ESHUTDOWN, /* Already archived */ -EIO, /* IO error, including SIGBUS on mmap */ -EIDRM, /* File has been deleted */ -ETXTBSY)) /* File is from the future */ diff --git a/src/journal/journalctl.c b/src/journal/journalctl.c index 2a5f2b37e8..9ad6f115a1 100644 --- a/src/journal/journalctl.c +++ b/src/journal/journalctl.c @@ -686,7 +686,9 @@ static int parse_argv(int argc, char *argv[]) { r = free_and_strdup(&arg_verify_key, optarg); if (r < 0) return r; - string_erase(optarg); + /* Use memset not string_erase so this doesn't look confusing + * in ps or htop output. */ + memset(optarg, 'x', strlen(optarg)); arg_merge = false; break; @@ -1910,7 +1912,9 @@ static int access_check(sd_journal *j) { break; case EPROTONOSUPPORT: - log_warning_errno(err, "Journal file %s uses an unsupported feature, ignoring file.", path); + log_warning_errno(err, "Journal file %1$s uses an unsupported feature, ignoring file.\n" + "Use SYSTEMD_LOG_LEVEL=debug journalctl --file=%1$s to see the details.", + path); break; case EBADMSG: diff --git a/src/journal/lookup3.c b/src/journal/lookup3.c index d8f1a4977d..ec725ce46c 100644 --- a/src/journal/lookup3.c +++ b/src/journal/lookup3.c @@ -48,6 +48,10 @@ on 1 byte), but shoehorning those bytes into integers efficiently is messy. # include <endian.h> /* attempt to define endianness */ #endif +#if __GNUC__ >= 7 +_Pragma("GCC diagnostic ignored \"-Wimplicit-fallthrough\"") +#endif + /* * My best guess at if you are big-endian or little-endian. This may * need adjustment. diff --git a/src/libsystemd-network/dhcp6-option.c b/src/libsystemd-network/dhcp6-option.c index 5462e03476..f8056dbc4b 100644 --- a/src/libsystemd-network/dhcp6-option.c +++ b/src/libsystemd-network/dhcp6-option.c @@ -339,7 +339,7 @@ int dhcp6_option_parse_ip6addrs(uint8_t *optval, uint16_t optlen, int dhcp6_option_parse_domainname(const uint8_t *optval, uint16_t optlen, char ***str_arr) { size_t pos = 0, idx = 0; - _cleanup_free_ char **names = NULL; + _cleanup_strv_free_ char **names = NULL; int r; assert_return(optlen > 1, -ENODATA); diff --git a/src/libsystemd-network/lldp-network.c b/src/libsystemd-network/lldp-network.c index 59c25598e9..ae2f6744d5 100644 --- a/src/libsystemd-network/lldp-network.c +++ b/src/libsystemd-network/lldp-network.c @@ -47,6 +47,13 @@ int lldp_network_bind_raw_socket(int ifindex) { .filter = (struct sock_filter*) filter, }; + struct packet_mreq mreq = { + .mr_ifindex = ifindex, + .mr_type = PACKET_MR_MULTICAST, + .mr_alen = ETH_ALEN, + .mr_address = { 0x01, 0x80, 0xC2, 0x00, 0x00, 0x00 } + }; + union sockaddr_union saddrll = { .ll.sll_family = AF_PACKET, .ll.sll_ifindex = ifindex, @@ -66,6 +73,20 @@ int lldp_network_bind_raw_socket(int ifindex) { if (r < 0) return -errno; + r = setsockopt(fd, SOL_PACKET, PACKET_ADD_MEMBERSHIP, &mreq, sizeof(mreq)); + if (r < 0) + return -errno; + + mreq.mr_address[ETH_ALEN - 1] = 0x03; + r = setsockopt(fd, SOL_PACKET, PACKET_ADD_MEMBERSHIP, &mreq, sizeof(mreq)); + if (r < 0) + return -errno; + + mreq.mr_address[ETH_ALEN - 1] = 0x0E; + r = setsockopt(fd, SOL_PACKET, PACKET_ADD_MEMBERSHIP, &mreq, sizeof(mreq)); + if (r < 0) + return -errno; + r = bind(fd, &saddrll.sa, sizeof(saddrll.ll)); if (r < 0) return -errno; diff --git a/src/libsystemd-network/sd-dhcp-server.c b/src/libsystemd-network/sd-dhcp-server.c index 0e57ab6b69..2890681561 100644 --- a/src/libsystemd-network/sd-dhcp-server.c +++ b/src/libsystemd-network/sd-dhcp-server.c @@ -857,7 +857,7 @@ int dhcp_server_handle_message(sd_dhcp_server *server, DHCPMessage *message, if (!existing_lease) { lease = new0(DHCPLease, 1); - lease->address = req->requested_ip; + lease->address = address; lease->client_id.data = memdup(req->client_id.data, req->client_id.length); if (!lease->client_id.data) { diff --git a/src/libsystemd-network/sd-dhcp6-client.c b/src/libsystemd-network/sd-dhcp6-client.c index e81215f7d7..6444b0ce94 100644 --- a/src/libsystemd-network/sd-dhcp6-client.c +++ b/src/libsystemd-network/sd-dhcp6-client.c @@ -999,7 +999,7 @@ static int client_receive_message( break; } - /* fall through for Soliciation Rapid Commit option check */ + /* fall through */ /* for Soliciation Rapid Commit option check */ case DHCP6_STATE_REQUEST: case DHCP6_STATE_RENEW: case DHCP6_STATE_REBIND: diff --git a/src/libsystemd-network/sd-dhcp6-lease.c b/src/libsystemd-network/sd-dhcp6-lease.c index ab59977a3f..8396407e9f 100644 --- a/src/libsystemd-network/sd-dhcp6-lease.c +++ b/src/libsystemd-network/sd-dhcp6-lease.c @@ -226,7 +226,7 @@ int dhcp6_lease_set_domains(sd_dhcp6_lease *lease, uint8_t *optval, if (r < 0) return 0; - free(lease->domains); + strv_free(lease->domains); lease->domains = domains; lease->domains_count = r; diff --git a/src/libsystemd/sd-bus/bus-common-errors.c b/src/libsystemd/sd-bus/bus-common-errors.c index d2a826bf6e..b40ba2520c 100644 --- a/src/libsystemd/sd-bus/bus-common-errors.c +++ b/src/libsystemd/sd-bus/bus-common-errors.c @@ -38,7 +38,7 @@ BUS_ERROR_MAP_ELF_REGISTER const sd_bus_error_map bus_common_errors[] = { SD_BUS_ERROR_MAP(BUS_ERROR_TRANSACTION_JOBS_CONFLICTING, EDEADLK), SD_BUS_ERROR_MAP(BUS_ERROR_TRANSACTION_ORDER_IS_CYCLIC, EDEADLK), SD_BUS_ERROR_MAP(BUS_ERROR_TRANSACTION_IS_DESTRUCTIVE, EDEADLK), - SD_BUS_ERROR_MAP(BUS_ERROR_UNIT_MASKED, ESHUTDOWN), + SD_BUS_ERROR_MAP(BUS_ERROR_UNIT_MASKED, ERFKILL), SD_BUS_ERROR_MAP(BUS_ERROR_UNIT_GENERATED, EADDRNOTAVAIL), SD_BUS_ERROR_MAP(BUS_ERROR_UNIT_LINKED, ELOOP), SD_BUS_ERROR_MAP(BUS_ERROR_JOB_TYPE_NOT_APPLICABLE, EBADR), @@ -47,6 +47,7 @@ BUS_ERROR_MAP_ELF_REGISTER const sd_bus_error_map bus_common_errors[] = { SD_BUS_ERROR_MAP(BUS_ERROR_SCOPE_NOT_RUNNING, EHOSTDOWN), SD_BUS_ERROR_MAP(BUS_ERROR_NO_SUCH_DYNAMIC_USER, ESRCH), SD_BUS_ERROR_MAP(BUS_ERROR_NOT_REFERENCED, EUNATCH), + SD_BUS_ERROR_MAP(BUS_ERROR_DISK_FULL, ENOSPC), SD_BUS_ERROR_MAP(BUS_ERROR_NO_SUCH_MACHINE, ENXIO), SD_BUS_ERROR_MAP(BUS_ERROR_NO_SUCH_IMAGE, ENOENT), diff --git a/src/libsystemd/sd-bus/bus-common-errors.h b/src/libsystemd/sd-bus/bus-common-errors.h index 525b79fa77..4523be05ce 100644 --- a/src/libsystemd/sd-bus/bus-common-errors.h +++ b/src/libsystemd/sd-bus/bus-common-errors.h @@ -43,6 +43,7 @@ #define BUS_ERROR_SCOPE_NOT_RUNNING "org.freedesktop.systemd1.ScopeNotRunning" #define BUS_ERROR_NO_SUCH_DYNAMIC_USER "org.freedesktop.systemd1.NoSuchDynamicUser" #define BUS_ERROR_NOT_REFERENCED "org.freedesktop.systemd1.NotReferenced" +#define BUS_ERROR_DISK_FULL "org.freedesktop.systemd1.DiskFull" #define BUS_ERROR_NO_SUCH_MACHINE "org.freedesktop.machine1.NoSuchMachine" #define BUS_ERROR_NO_SUCH_IMAGE "org.freedesktop.machine1.NoSuchImage" diff --git a/src/libsystemd/sd-device/sd-device.c b/src/libsystemd/sd-device/sd-device.c index bc5e92f8fe..efeadf0cd4 100644 --- a/src/libsystemd/sd-device/sd-device.c +++ b/src/libsystemd/sd-device/sd-device.c @@ -560,7 +560,7 @@ int device_read_uevent_file(sd_device *device) { value = &uevent[i]; state = VALUE; - /* fall through to handle empty property */ + /* fall through */ /* to handle empty property */ case VALUE: if (strchr(NEWLINE, uevent[i])) { uevent[i] = '\0'; diff --git a/src/libsystemd/sd-event/sd-event.c b/src/libsystemd/sd-event/sd-event.c index f94959adac..b4686d0065 100644 --- a/src/libsystemd/sd-event/sd-event.c +++ b/src/libsystemd/sd-event/sd-event.c @@ -730,7 +730,6 @@ static void event_unmask_signal_data(sd_event *e, struct signal_data *d, int sig /* If all the mask is all-zero we can get rid of the structure */ hashmap_remove(e->signal_data, &d->priority); - assert(!d->current); safe_close(d->fd); free(d); return; @@ -2226,11 +2225,16 @@ static int process_signal(sd_event *e, struct signal_data *d, uint32_t events) { } static int source_dispatch(sd_event_source *s) { + EventSourceType saved_type; int r = 0; assert(s); assert(s->pending || s->type == SOURCE_EXIT); + /* Save the event source type, here, so that we still know it after the event callback which might invalidate + * the event. */ + saved_type = s->type; + if (s->type != SOURCE_DEFER && s->type != SOURCE_EXIT) { r = source_set_pending(s, false); if (r < 0) @@ -2318,7 +2322,7 @@ static int source_dispatch(sd_event_source *s) { if (r < 0) log_debug_errno(r, "Event source %s (type %s) returned error, disabling: %m", - strna(s->description), event_source_type_to_string(s->type)); + strna(s->description), event_source_type_to_string(saved_type)); if (s->n_ref == 0) source_free(s); diff --git a/src/libudev/libudev-util.c b/src/libudev/libudev-util.c index a9819b9db3..1d73d8f090 100644 --- a/src/libudev/libudev-util.c +++ b/src/libudev/libudev-util.c @@ -161,6 +161,20 @@ void util_remove_trailing_chars(char *path, char c) path[--len] = '\0'; } +/* + * Copy from 'str' to 'to', while removing all leading and trailing whitespace, + * and replacing each run of consecutive whitespace with a single underscore. + * The chars from 'str' are copied up to the \0 at the end of the string, or + * at most 'len' chars. This appends \0 to 'to', at the end of the copied + * characters. + * + * If 'len' chars are copied into 'to', the final \0 is placed at len+1 + * (i.e. 'to[len] = \0'), so the 'to' buffer must have at least len+1 + * chars available. + * + * Note this may be called with 'str' == 'to', i.e. to replace whitespace + * in-place in a buffer. This function can handle that situation. + */ int util_replace_whitespace(const char *str, char *to, size_t len) { size_t i, j; diff --git a/src/locale/localectl.c b/src/locale/localectl.c index 81afb4909f..0bd18a5c0b 100644 --- a/src/locale/localectl.c +++ b/src/locale/localectl.c @@ -166,6 +166,8 @@ static int show_status(sd_bus *bus, char **args, unsigned n) { { "Locale", "as", NULL, offsetof(StatusInfo, locale) }, {} }; + + _cleanup_(sd_bus_error_free) sd_bus_error error = SD_BUS_ERROR_NULL; int r; assert(bus); @@ -174,9 +176,10 @@ static int show_status(sd_bus *bus, char **args, unsigned n) { "org.freedesktop.locale1", "/org/freedesktop/locale1", map, + &error, &info); if (r < 0) - return log_error_errno(r, "Could not get properties: %m"); + return log_error_errno(r, "Could not get properties: %s", bus_error_message(&error, r)); print_overridden_variables(); print_status_info(&info); diff --git a/src/login/loginctl.c b/src/login/loginctl.c index 4c618ed19e..7dea5c0859 100644 --- a/src/login/loginctl.c +++ b/src/login/loginctl.c @@ -240,7 +240,6 @@ static int list_seats(int argc, char *argv[], void *userdata) { sd_bus *bus = userdata; unsigned k = 0; int r; - assert(bus); assert(argv); @@ -280,35 +279,17 @@ static int list_seats(int argc, char *argv[], void *userdata) { } static int show_unit_cgroup(sd_bus *bus, const char *interface, const char *unit, pid_t leader) { + _cleanup_free_ char *cgroup = NULL; _cleanup_(sd_bus_error_free) sd_bus_error error = SD_BUS_ERROR_NULL; - _cleanup_(sd_bus_message_unrefp) sd_bus_message *reply = NULL; - _cleanup_free_ char *path = NULL; - const char *cgroup; unsigned c; int r; assert(bus); assert(unit); - path = unit_dbus_path_from_name(unit); - if (!path) - return log_oom(); - - r = sd_bus_get_property( - bus, - "org.freedesktop.systemd1", - path, - interface, - "ControlGroup", - &error, - &reply, - "s"); - if (r < 0) - return log_error_errno(r, "Failed to query ControlGroup: %s", bus_error_message(&error, r)); - - r = sd_bus_message_read(reply, "s", &cgroup); + r = show_cgroup_get_unit_path_and_warn(bus, unit, &cgroup); if (r < 0) - return bus_log_parse_error(r); + return r; if (isempty(cgroup)) return 0; @@ -501,14 +482,15 @@ static int print_session_status_info(sd_bus *bus, const char *path, bool *new_li {} }; + _cleanup_(sd_bus_error_free) sd_bus_error error = SD_BUS_ERROR_NULL; char since1[FORMAT_TIMESTAMP_RELATIVE_MAX], *s1; char since2[FORMAT_TIMESTAMP_MAX], *s2; _cleanup_(session_status_info_clear) SessionStatusInfo i = {}; int r; - r = bus_map_all_properties(bus, "org.freedesktop.login1", path, map, &i); + r = bus_map_all_properties(bus, "org.freedesktop.login1", path, map, &error, &i); if (r < 0) - return log_error_errno(r, "Could not get properties: %m"); + return log_error_errno(r, "Could not get properties: %s", bus_error_message(&error, r)); if (*new_line) printf("\n"); @@ -630,14 +612,15 @@ static int print_user_status_info(sd_bus *bus, const char *path, bool *new_line) {} }; + _cleanup_(sd_bus_error_free) sd_bus_error error = SD_BUS_ERROR_NULL; char since1[FORMAT_TIMESTAMP_RELATIVE_MAX], *s1; char since2[FORMAT_TIMESTAMP_MAX], *s2; _cleanup_(user_status_info_clear) UserStatusInfo i = {}; int r; - r = bus_map_all_properties(bus, "org.freedesktop.login1", path, map, &i); + r = bus_map_all_properties(bus, "org.freedesktop.login1", path, map, &error, &i); if (r < 0) - return log_error_errno(r, "Could not get properties: %m"); + return log_error_errno(r, "Could not get properties: %s", bus_error_message(&error, r)); if (*new_line) printf("\n"); @@ -704,12 +687,13 @@ static int print_seat_status_info(sd_bus *bus, const char *path, bool *new_line) {} }; + _cleanup_(sd_bus_error_free) sd_bus_error error = SD_BUS_ERROR_NULL; _cleanup_(seat_status_info_clear) SeatStatusInfo i = {}; int r; - r = bus_map_all_properties(bus, "org.freedesktop.login1", path, map, &i); + r = bus_map_all_properties(bus, "org.freedesktop.login1", path, map, &error, &i); if (r < 0) - return log_error_errno(r, "Could not get properties: %m"); + return log_error_errno(r, "Could not get properties: %s", bus_error_message(&error, r)); if (*new_line) printf("\n"); diff --git a/src/login/logind-dbus.c b/src/login/logind-dbus.c index 3873bf3e96..ad44ca290e 100644 --- a/src/login/logind-dbus.c +++ b/src/login/logind-dbus.c @@ -2396,13 +2396,9 @@ static int method_set_wall_message( if (r == 0) return 1; /* Will call us back */ - if (isempty(wall_message)) - m->wall_message = mfree(m->wall_message); - else { - r = free_and_strdup(&m->wall_message, wall_message); - if (r < 0) - return log_oom(); - } + r = free_and_strdup(&m->wall_message, empty_to_null(wall_message)); + if (r < 0) + return log_oom(); m->enable_wall_messages = enable_wall_messages; diff --git a/src/login/logind-seat.c b/src/login/logind-seat.c index f0d8a1f554..bfbd07309d 100644 --- a/src/login/logind-seat.c +++ b/src/login/logind-seat.c @@ -541,8 +541,6 @@ int seat_attach_session(Seat *s, Session *session) { LIST_PREPEND(sessions_by_seat, s->sessions, session); seat_assign_position(s, session); - seat_send_changed(s, "Sessions", NULL); - /* On seats with VTs, the VT logic defines which session is active. On * seats without VTs, we automatically activate new sessions. */ if (!seat_has_vts(s)) diff --git a/src/login/logind-session.c b/src/login/logind-session.c index d8bb1ea0a8..fd7fcf7f2c 100644 --- a/src/login/logind-session.c +++ b/src/login/logind-session.c @@ -586,12 +586,10 @@ int session_start(Session *s) { /* Send signals */ session_send_signal(s, true); - user_send_changed(s->user, "Sessions", "Display", NULL); + user_send_changed(s->user, "Display", NULL); if (s->seat) { if (s->seat->active == s) - seat_send_changed(s->seat, "Sessions", "ActiveSession", NULL); - else - seat_send_changed(s->seat, "Sessions", NULL); + seat_send_changed(s->seat, "ActiveSession", NULL); } return 0; @@ -698,11 +696,10 @@ int session_finalize(Session *s) { seat_set_active(s->seat, NULL); seat_save(s->seat); - seat_send_changed(s->seat, "Sessions", NULL); } user_save(s->user); - user_send_changed(s->user, "Sessions", "Display", NULL); + user_send_changed(s->user, "Display", NULL); return 0; } diff --git a/src/machine/machinectl.c b/src/machine/machinectl.c index 31a40d47c3..fe4f1b7726 100644 --- a/src/machine/machinectl.c +++ b/src/machine/machinectl.c @@ -477,35 +477,17 @@ static int list_images(int argc, char *argv[], void *userdata) { } static int show_unit_cgroup(sd_bus *bus, const char *unit, pid_t leader) { + _cleanup_free_ char *cgroup = NULL; _cleanup_(sd_bus_error_free) sd_bus_error error = SD_BUS_ERROR_NULL; - _cleanup_(sd_bus_message_unrefp) sd_bus_message *reply = NULL; - _cleanup_free_ char *path = NULL; - const char *cgroup; int r; unsigned c; assert(bus); assert(unit); - path = unit_dbus_path_from_name(unit); - if (!path) - return log_oom(); - - r = sd_bus_get_property( - bus, - "org.freedesktop.systemd1", - path, - unit_dbus_interface_from_name(unit), - "ControlGroup", - &error, - &reply, - "s"); + r = show_cgroup_get_unit_path_and_warn(bus, unit, &cgroup); if (r < 0) - return log_error_errno(r, "Failed to query ControlGroup: %s", bus_error_message(&error, r)); - - r = sd_bus_message_read(reply, "s", &cgroup); - if (r < 0) - return bus_log_parse_error(r); + return r; if (isempty(cgroup)) return 0; @@ -790,6 +772,7 @@ static int show_machine_info(const char *verb, sd_bus *bus, const char *path, bo {} }; + _cleanup_(sd_bus_error_free) sd_bus_error error = SD_BUS_ERROR_NULL; _cleanup_(machine_status_info_clear) MachineStatusInfo info = {}; int r; @@ -802,9 +785,10 @@ static int show_machine_info(const char *verb, sd_bus *bus, const char *path, bo "org.freedesktop.machine1", path, map, + &error, &info); if (r < 0) - return log_error_errno(r, "Could not get properties: %m"); + return log_error_errno(r, "Could not get properties: %s", bus_error_message(&error, r)); if (*new_line) printf("\n"); @@ -980,6 +964,7 @@ static int show_image_info(sd_bus *bus, const char *path, bool *new_line) { {} }; + _cleanup_(sd_bus_error_free) sd_bus_error error = SD_BUS_ERROR_NULL; _cleanup_(image_status_info_clear) ImageStatusInfo info = {}; int r; @@ -991,9 +976,10 @@ static int show_image_info(sd_bus *bus, const char *path, bool *new_line) { "org.freedesktop.machine1", path, map, + &error, &info); if (r < 0) - return log_error_errno(r, "Could not get properties: %m"); + return log_error_errno(r, "Could not get properties: %s", bus_error_message(&error, r)); if (*new_line) printf("\n"); @@ -1047,6 +1033,8 @@ static int show_pool_info(sd_bus *bus) { .usage = (uint64_t) -1, .limit = (uint64_t) -1, }; + + _cleanup_(sd_bus_error_free) sd_bus_error error = SD_BUS_ERROR_NULL; int r; assert(bus); @@ -1055,9 +1043,10 @@ static int show_pool_info(sd_bus *bus) { "org.freedesktop.machine1", "/org/freedesktop/machine1", map, + &error, &info); if (r < 0) - return log_error_errno(r, "Could not get properties: %m"); + return log_error_errno(r, "Could not get properties: %s", bus_error_message(&error, r)); print_pool_status_info(bus, &info); diff --git a/src/mount/mount-tool.c b/src/mount/mount-tool.c index 9d79e81918..4b3cac8a22 100644 --- a/src/mount/mount-tool.c +++ b/src/mount/mount-tool.c @@ -40,6 +40,7 @@ enum { ACTION_DEFAULT, ACTION_MOUNT, ACTION_AUTOMOUNT, + ACTION_UMOUNT, ACTION_LIST, } arg_action = ACTION_DEFAULT; @@ -99,6 +100,7 @@ static void help(void) { " Set automount unit property\n" " --bind-device Bind automount unit to device\n" " --list List mountable block devices\n" + " -u --umount Unmount mount points\n" , program_invocation_short_name); } @@ -137,6 +139,7 @@ static int parse_argv(int argc, char *argv[]) { { "discover", no_argument, NULL, ARG_DISCOVER }, { "type", required_argument, NULL, 't' }, { "options", required_argument, NULL, 'o' }, + { "fsck", required_argument, NULL, ARG_FSCK }, { "description", required_argument, NULL, ARG_DESCRIPTION }, { "property", required_argument, NULL, 'p' }, { "automount", required_argument, NULL, ARG_AUTOMOUNT }, @@ -144,6 +147,8 @@ static int parse_argv(int argc, char *argv[]) { { "automount-property", required_argument, NULL, ARG_AUTOMOUNT_PROPERTY }, { "bind-device", no_argument, NULL, ARG_BIND_DEVICE }, { "list", no_argument, NULL, ARG_LIST }, + { "umount", no_argument, NULL, 'u' }, + { "unmount", no_argument, NULL, 'u' }, {}, }; @@ -152,7 +157,10 @@ static int parse_argv(int argc, char *argv[]) { assert(argc >= 0); assert(argv); - while ((c = getopt_long(argc, argv, "hqH:M:t:o:p:A", options, NULL)) >= 0) + if (strstr(program_invocation_short_name, "systemd-umount")) + arg_action = ACTION_UMOUNT; + + while ((c = getopt_long(argc, argv, "hqH:M:t:o:p:Au", options, NULL)) >= 0) switch (c) { @@ -263,6 +271,10 @@ static int parse_argv(int argc, char *argv[]) { arg_action = ACTION_LIST; break; + case 'u': + arg_action = ACTION_UMOUNT; + break; + case '?': return -EINVAL; @@ -607,6 +619,89 @@ static int start_transient_automount( return 0; } +static int stop_mount( + sd_bus *bus, + char **argv, + const char *suffix) { + + _cleanup_(sd_bus_message_unrefp) sd_bus_message *m = NULL, *reply = NULL; + _cleanup_(sd_bus_error_free) sd_bus_error error = SD_BUS_ERROR_NULL; + _cleanup_(bus_wait_for_jobs_freep) BusWaitForJobs *w = NULL; + _cleanup_free_ char *mount_unit = NULL; + int r; + + if (!arg_no_block) { + r = bus_wait_for_jobs_new(bus, &w); + if (r < 0) + return log_error_errno(r, "Could not watch jobs: %m"); + } + + r = unit_name_from_path(arg_mount_where, suffix, &mount_unit); + if (r < 0) + return log_error_errno(r, "Failed to make mount unit name: %m"); + + r = sd_bus_message_new_method_call( + bus, + &m, + "org.freedesktop.systemd1", + "/org/freedesktop/systemd1", + "org.freedesktop.systemd1.Manager", + "StopUnit"); + if (r < 0) + return bus_log_create_error(r); + + r = sd_bus_message_set_allow_interactive_authorization(m, arg_ask_password); + if (r < 0) + return bus_log_create_error(r); + + /* Name and mode */ + r = sd_bus_message_append(m, "ss", mount_unit, "fail"); + if (r < 0) + return bus_log_create_error(r); + + polkit_agent_open_if_enabled(); + + r = sd_bus_call(bus, m, 0, &error, &reply); + if (r < 0) + return log_error_errno(r, "Failed to stop mount unit: %s", bus_error_message(&error, r)); + + if (w) { + const char *object; + + r = sd_bus_message_read(reply, "o", &object); + if (r < 0) + return bus_log_parse_error(r); + + r = bus_wait_for_jobs_one(w, object, arg_quiet); + if (r < 0) + return r; + } + + if (!arg_quiet) + log_info("Stopped unit %s%s%s for mount point: %s%s%s", + ansi_highlight(), mount_unit, ansi_normal(), + ansi_highlight(), arg_mount_where, ansi_normal()); + + return 0; +} + +static int stop_mounts( + sd_bus *bus, + char **argv) { + + int r; + + r = stop_mount(bus, argv + optind, ".mount"); + if (r < 0) + return r; + + r = stop_mount(bus, argv + optind, ".automount"); + if (r < 0) + return r; + + return 0; +} + static int acquire_mount_type(struct udev_device *d) { const char *v; @@ -1093,6 +1188,10 @@ int main(int argc, char* argv[]) { r = start_transient_automount(bus, argv + optind); break; + case ACTION_UMOUNT: + r = stop_mounts(bus, argv + optind); + break; + default: assert_not_reached("Unexpected action."); } diff --git a/src/network/networkd-address.c b/src/network/networkd-address.c index 2b698d9531..ffd2e18a45 100644 --- a/src/network/networkd-address.c +++ b/src/network/networkd-address.c @@ -809,8 +809,8 @@ int config_parse_label( if (r < 0) return r; - if (!ifname_valid(rvalue)) { - log_syntax(unit, LOG_ERR, filename, line, 0, "Interface label is not valid or too long, ignoring assignment: %s", rvalue); + if (strlen(rvalue) >= IFNAMSIZ) { + log_syntax(unit, LOG_ERR, filename, line, 0, "Interface label is too long, ignoring assignment: %s", rvalue); return 0; } diff --git a/src/network/networkd-ipv6-proxy-ndp.c b/src/network/networkd-ipv6-proxy-ndp.c new file mode 100644 index 0000000000..11c1cd9268 --- /dev/null +++ b/src/network/networkd-ipv6-proxy-ndp.c @@ -0,0 +1,209 @@ +/*** + This file is part of systemd. + + Copyright 2017 Florian Klink <flokli@flokli.de> + + systemd is free software; you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published by + the Free Software Foundation; either version 2.1 of the License, or + (at your option) any later version. + + systemd is distributed in the hope that it will be useful, but + WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with systemd; If not, see <http://www.gnu.org/licenses/>. +***/ + +#include <netinet/ether.h> +#include <linux/if.h> +#include <unistd.h> + +#include "fileio.h" +#include "netlink-util.h" +#include "networkd-ipv6-proxy-ndp.h" +#include "networkd-link.h" +#include "networkd-manager.h" +#include "networkd-network.h" +#include "string-util.h" + +static bool ipv6_proxy_ndp_is_needed(Link *link) { + assert(link); + + if (link->flags & IFF_LOOPBACK) + return false; + + if (!link->network) + return false; + + if (link->network->n_ipv6_proxy_ndp_addresses == 0) + return false; + + return true; +} + +static int ipv6_proxy_ndp_set(Link *link) { + const char *p = NULL; + int r, v; + + assert(link); + + v = ipv6_proxy_ndp_is_needed(link); + p = strjoina("/proc/sys/net/ipv6/conf/", link->ifname, "/proxy_ndp"); + + r = write_string_file(p, one_zero(v), WRITE_STRING_FILE_VERIFY_ON_FAILURE); + if (r < 0) + log_link_warning_errno(link, r, "Cannot configure proxy NDP for interface: %m"); + + return 0; +} + +int ipv6_proxy_ndp_address_new_static(Network *network, IPv6ProxyNDPAddress **ret) { + _cleanup_(ipv6_proxy_ndp_address_freep) IPv6ProxyNDPAddress *ipv6_proxy_ndp_address = NULL; + + assert(network); + assert(ret); + + /* allocate space for IPv6ProxyNDPAddress entry */ + ipv6_proxy_ndp_address = new0(IPv6ProxyNDPAddress, 1); + if (!ipv6_proxy_ndp_address) + return -ENOMEM; + + ipv6_proxy_ndp_address->network = network; + + LIST_PREPEND(ipv6_proxy_ndp_addresses, network->ipv6_proxy_ndp_addresses, ipv6_proxy_ndp_address); + network->n_ipv6_proxy_ndp_addresses++; + + *ret = ipv6_proxy_ndp_address; + ipv6_proxy_ndp_address = NULL; + + return 0; +} + +void ipv6_proxy_ndp_address_free(IPv6ProxyNDPAddress *ipv6_proxy_ndp_address) { + if (!ipv6_proxy_ndp_address) + return; + + if (ipv6_proxy_ndp_address->network) { + LIST_REMOVE(ipv6_proxy_ndp_addresses, ipv6_proxy_ndp_address->network->ipv6_proxy_ndp_addresses, + ipv6_proxy_ndp_address); + + assert(ipv6_proxy_ndp_address->network->n_ipv6_proxy_ndp_addresses > 0); + ipv6_proxy_ndp_address->network->n_ipv6_proxy_ndp_addresses--; + } + + free(ipv6_proxy_ndp_address); +} + +int config_parse_ipv6_proxy_ndp_address( + const char *unit, + const char *filename, + unsigned line, + const char *section, + unsigned section_line, + const char *lvalue, + int ltype, + const char *rvalue, + void *data, + void *userdata) { + + Network *network = userdata; + _cleanup_(ipv6_proxy_ndp_address_freep) IPv6ProxyNDPAddress *ipv6_proxy_ndp_address = NULL; + int r; + union in_addr_union buffer; + + assert(filename); + assert(section); + assert(lvalue); + assert(rvalue); + assert(data); + + r = ipv6_proxy_ndp_address_new_static(network, &ipv6_proxy_ndp_address); + if (r < 0) + return r; + + r = in_addr_from_string(AF_INET6, rvalue, &buffer); + if (r < 0) { + log_syntax(unit, LOG_ERR, filename, line, r, "Failed to parse IPv6 proxy NDP address, ignoring: %s", + rvalue); + return 0; + } + + r = in_addr_is_null(AF_INET6, &buffer); + if (r != 0) { + log_syntax(unit, LOG_ERR, filename, line, r, + "IPv6 proxy NDP address can not be the ANY address, ignoring: %s", rvalue); + return 0; + } + + ipv6_proxy_ndp_address->in_addr = buffer.in6; + ipv6_proxy_ndp_address = NULL; + + return 0; +} + +static int set_ipv6_proxy_ndp_address_handler(sd_netlink *rtnl, sd_netlink_message *m, void *userdata) { + Link *link = userdata; + int r; + + assert(link); + + r = sd_netlink_message_get_errno(m); + if (r < 0 && r != -EEXIST) + log_link_error_errno(link, r, "Could not add IPv6 proxy ndp address entry: %m"); + + return 1; +} + +/* send a request to the kernel to add a IPv6 Proxy entry to the neighbour table */ +int ipv6_proxy_ndp_address_configure(Link *link, IPv6ProxyNDPAddress *ipv6_proxy_ndp_address) { + _cleanup_(sd_netlink_message_unrefp) sd_netlink_message *req = NULL; + sd_netlink *rtnl; + int r; + + assert(link); + assert(link->network); + assert(link->manager); + assert(ipv6_proxy_ndp_address); + + rtnl = link->manager->rtnl; + + /* create new netlink message */ + r = sd_rtnl_message_new_neigh(rtnl, &req, RTM_NEWNEIGH, link->ifindex, AF_INET6); + if (r < 0) + return rtnl_log_create_error(r); + + r = sd_rtnl_message_neigh_set_flags(req, NLM_F_REQUEST | NTF_PROXY); + if (r < 0) + return rtnl_log_create_error(r); + + r = sd_netlink_message_append_in6_addr(req, NDA_DST, &ipv6_proxy_ndp_address->in_addr); + if (r < 0) + return rtnl_log_create_error(r); + + r = sd_netlink_call_async(rtnl, req, set_ipv6_proxy_ndp_address_handler, link, 0, NULL); + if (r < 0) + return log_link_error_errno(link, r, "Could not send rtnetlink message: %m"); + + return 0; +} + +/* configure all ipv6 proxy ndp addresses */ +int ipv6_proxy_ndp_addresses_configure(Link *link) { + IPv6ProxyNDPAddress *ipv6_proxy_ndp_address; + int r; + + /* enable or disable proxy_ndp itself depending on whether ipv6_proxy_ndp_addresses are set or not */ + r = ipv6_proxy_ndp_set(link); + if (r != 0) + return r; + + LIST_FOREACH(ipv6_proxy_ndp_addresses, ipv6_proxy_ndp_address, link->network->ipv6_proxy_ndp_addresses) { + r = ipv6_proxy_ndp_address_configure(link, ipv6_proxy_ndp_address); + if (r != 0) + return r; + } + return 0; +} diff --git a/src/network/networkd-ipv6-proxy-ndp.h b/src/network/networkd-ipv6-proxy-ndp.h new file mode 100644 index 0000000000..f09169f40f --- /dev/null +++ b/src/network/networkd-ipv6-proxy-ndp.h @@ -0,0 +1,44 @@ +#pragma once + +/*** + This file is part of systemd. + + Copyright 2017 Florian Klink <flokli@flokli.de> + + systemd is free software; you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published by + the Free Software Foundation; either version 2.1 of the License, or + (at your option) any later version. + + systemd is distributed in the hope that it will be useful, but + WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with systemd; If not, see <http://www.gnu.org/licenses/>. +***/ + +#include "list.h" +#include "macro.h" + +typedef struct Network Network; +typedef struct IPv6ProxyNDPAddress IPv6ProxyNDPAddress; +typedef struct Link Link; + +struct IPv6ProxyNDPAddress { + Network *network; + struct in6_addr in_addr; + + LIST_FIELDS(IPv6ProxyNDPAddress, ipv6_proxy_ndp_addresses); +}; + + +int ipv6_proxy_ndp_address_new_static(Network *network, IPv6ProxyNDPAddress ** ipv6_proxy_ndp_address); +void ipv6_proxy_ndp_address_free(IPv6ProxyNDPAddress *ipv6_proxy_ndp_address); +int ipv6_proxy_ndp_address_configure(Link *link, IPv6ProxyNDPAddress *ipv6_proxy_ndp_address); +int ipv6_proxy_ndp_addresses_configure(Link *link); + +DEFINE_TRIVIAL_CLEANUP_FUNC(IPv6ProxyNDPAddress*, ipv6_proxy_ndp_address_free); + +int config_parse_ipv6_proxy_ndp_address(const char *unit, const char *filename, unsigned line, const char *section, unsigned section_line, const char *lvalue, int ltype, const char *rvalue, void *data, void *userdata); diff --git a/src/network/networkd-link.c b/src/network/networkd-link.c index b993d27c2f..0c1229336b 100644 --- a/src/network/networkd-link.c +++ b/src/network/networkd-link.c @@ -28,6 +28,7 @@ #include "fileio.h" #include "netlink-util.h" #include "network-internal.h" +#include "networkd-ipv6-proxy-ndp.h" #include "networkd-lldp-tx.h" #include "networkd-manager.h" #include "networkd-ndisc.h" @@ -2448,6 +2449,10 @@ static int link_configure(Link *link) { if (r < 0) return r; + r = ipv6_proxy_ndp_addresses_configure(link); + if (r < 0) + return r; + r = link_set_ipv4_forward(link); if (r < 0) return r; diff --git a/src/network/networkd-network-gperf.gperf b/src/network/networkd-network-gperf.gperf index 7b54e81fb8..68052ba544 100644 --- a/src/network/networkd-network-gperf.gperf +++ b/src/network/networkd-network-gperf.gperf @@ -67,6 +67,7 @@ Network.ActiveSlave, config_parse_bool, Network.PrimarySlave, config_parse_bool, 0, offsetof(Network, primary_slave) Network.IPv4ProxyARP, config_parse_tristate, 0, offsetof(Network, proxy_arp) Network.ProxyARP, config_parse_tristate, 0, offsetof(Network, proxy_arp) +Network.IPv6ProxyNDPAddress, config_parse_ipv6_proxy_ndp_address, 0, 0 Network.BindCarrier, config_parse_strv, 0, offsetof(Network, bind_carrier) Address.Address, config_parse_address, 0, 0 Address.Peer, config_parse_address, 0, 0 diff --git a/src/network/networkd-network.c b/src/network/networkd-network.c index bc4dc95ff9..92062ca00c 100644 --- a/src/network/networkd-network.c +++ b/src/network/networkd-network.c @@ -70,6 +70,7 @@ static int network_load_one(Manager *manager, const char *filename) { LIST_HEAD_INIT(network->static_addresses); LIST_HEAD_INIT(network->static_routes); LIST_HEAD_INIT(network->static_fdb_entries); + LIST_HEAD_INIT(network->ipv6_proxy_ndp_addresses); network->stacked_netdevs = hashmap_new(&string_hash_ops); if (!network->stacked_netdevs) @@ -152,6 +153,7 @@ static int network_load_one(Manager *manager, const char *filename) { "DHCPv4\0" /* compat */ "DHCPServer\0" "IPv6AcceptRA\0" + "IPv6NDPProxyAddress\0" "Bridge\0" "BridgeFDB\0" "BridgeVLAN\0", @@ -224,6 +226,7 @@ void network_free(Network *network) { Route *route; Address *address; FdbEntry *fdb_entry; + IPv6ProxyNDPAddress *ipv6_proxy_ndp_address; Iterator i; if (!network) @@ -268,6 +271,9 @@ void network_free(Network *network) { while ((fdb_entry = network->static_fdb_entries)) fdb_entry_free(fdb_entry); + while ((ipv6_proxy_ndp_address = network->ipv6_proxy_ndp_addresses)) + ipv6_proxy_ndp_address_free(ipv6_proxy_ndp_address); + hashmap_free(network->addresses_by_section); hashmap_free(network->routes_by_section); hashmap_free(network->fdb_entries_by_section); diff --git a/src/network/networkd-network.h b/src/network/networkd-network.h index b7da9d22d4..f06828a899 100644 --- a/src/network/networkd-network.h +++ b/src/network/networkd-network.h @@ -31,6 +31,7 @@ #include "networkd-brvlan.h" #include "networkd-fdb.h" #include "networkd-lldp-tx.h" +#include "networkd-ipv6-proxy-ndp.h" #include "networkd-route.h" #include "networkd-util.h" #include "netdev/netdev.h" @@ -188,10 +189,12 @@ struct Network { LIST_HEAD(Address, static_addresses); LIST_HEAD(Route, static_routes); LIST_HEAD(FdbEntry, static_fdb_entries); + LIST_HEAD(IPv6ProxyNDPAddress, ipv6_proxy_ndp_addresses); unsigned n_static_addresses; unsigned n_static_routes; unsigned n_static_fdb_entries; + unsigned n_ipv6_proxy_ndp_addresses; Hashmap *addresses_by_section; Hashmap *routes_by_section; diff --git a/src/nspawn/nspawn-gperf.gperf b/src/nspawn/nspawn-gperf.gperf index c0fa4bfa1f..e5fdf63162 100644 --- a/src/nspawn/nspawn-gperf.gperf +++ b/src/nspawn/nspawn-gperf.gperf @@ -26,6 +26,7 @@ Exec.KillSignal, config_parse_signal, 0, offsetof(Settings, Exec.Personality, config_parse_personality, 0, offsetof(Settings, personality) Exec.MachineID, config_parse_id128, 0, offsetof(Settings, machine_id) Exec.WorkingDirectory, config_parse_path, 0, offsetof(Settings, working_directory) +Exec.PivotRoot, config_parse_pivot_root, 0, 0 Exec.PrivateUsers, config_parse_private_users, 0, 0 Exec.NotifyReady, config_parse_bool, 0, offsetof(Settings, notify_ready) Files.ReadOnly, config_parse_tristate, 0, offsetof(Settings, read_only) diff --git a/src/nspawn/nspawn-mount.c b/src/nspawn/nspawn-mount.c index 72c007f204..4b2838b752 100644 --- a/src/nspawn/nspawn-mount.c +++ b/src/nspawn/nspawn-mount.c @@ -1349,3 +1349,116 @@ fail: (void) rmdir(template); return r; } + +/* Expects *pivot_root_new and *pivot_root_old to be initialised to allocated memory or NULL. */ +int pivot_root_parse(char **pivot_root_new, char **pivot_root_old, const char *s) { + _cleanup_free_ char *root_new = NULL, *root_old = NULL; + const char *p = s; + int r; + + assert(pivot_root_new); + assert(pivot_root_old); + + r = extract_first_word(&p, &root_new, ":", EXTRACT_DONT_COALESCE_SEPARATORS); + if (r < 0) + return r; + if (r == 0) + return -EINVAL; + + if (isempty(p)) + root_old = NULL; + else { + root_old = strdup(p); + if (!root_old) + return -ENOMEM; + } + + if (!path_is_absolute(root_new)) + return -EINVAL; + if (root_old && !path_is_absolute(root_old)) + return -EINVAL; + + free_and_replace(*pivot_root_new, root_new); + free_and_replace(*pivot_root_old, root_old); + + return 0; +} + +int setup_pivot_root(const char *directory, const char *pivot_root_new, const char *pivot_root_old) { + _cleanup_free_ char *directory_pivot_root_new = NULL; + _cleanup_free_ char *pivot_tmp_pivot_root_old = NULL; + char pivot_tmp[] = "/tmp/nspawn-pivot-XXXXXX"; + bool remove_pivot_tmp = false; + int r; + + assert(directory); + + if (!pivot_root_new) + return 0; + + /* Pivot pivot_root_new to / and the existing / to pivot_root_old. + * If pivot_root_old is NULL, the existing / disappears. + * This requires a temporary directory, pivot_tmp, which is + * not a child of either. + * + * This is typically used for OSTree-style containers, where + * the root partition contains several sysroots which could be + * run. Normally, one would be chosen by the bootloader and + * pivoted to / by initramfs. + * + * For example, for an OSTree deployment, pivot_root_new + * would be: /ostree/deploy/$os/deploy/$checksum. Note that this + * code doesn’t do the /var mount which OSTree expects: use + * --bind +/sysroot/ostree/deploy/$os/var:/var for that. + * + * So in the OSTree case, we’ll end up with something like: + * - directory = /tmp/nspawn-root-123456 + * - pivot_root_new = /ostree/deploy/os/deploy/123abc + * - pivot_root_old = /sysroot + * - directory_pivot_root_new = + * /tmp/nspawn-root-123456/ostree/deploy/os/deploy/123abc + * - pivot_tmp = /tmp/nspawn-pivot-123456 + * - pivot_tmp_pivot_root_old = /tmp/nspawn-pivot-123456/sysroot + * + * Requires all file systems at directory and below to be mounted + * MS_PRIVATE or MS_SLAVE so they can be moved. + */ + directory_pivot_root_new = prefix_root(directory, pivot_root_new); + + /* Remount directory_pivot_root_new to make it movable. */ + r = mount_verbose(LOG_ERR, directory_pivot_root_new, directory_pivot_root_new, NULL, MS_BIND, NULL); + if (r < 0) + goto done; + + if (pivot_root_old) { + if (!mkdtemp(pivot_tmp)) { + r = log_error_errno(errno, "Failed to create temporary directory: %m"); + goto done; + } + + remove_pivot_tmp = true; + pivot_tmp_pivot_root_old = prefix_root(pivot_tmp, pivot_root_old); + + r = mount_verbose(LOG_ERR, directory_pivot_root_new, pivot_tmp, NULL, MS_MOVE, NULL); + if (r < 0) + goto done; + + r = mount_verbose(LOG_ERR, directory, pivot_tmp_pivot_root_old, NULL, MS_MOVE, NULL); + if (r < 0) + goto done; + + r = mount_verbose(LOG_ERR, pivot_tmp, directory, NULL, MS_MOVE, NULL); + if (r < 0) + goto done; + } else { + r = mount_verbose(LOG_ERR, directory_pivot_root_new, directory, NULL, MS_MOVE, NULL); + if (r < 0) + goto done; + } + +done: + if (remove_pivot_tmp) + (void) rmdir(pivot_tmp); + + return r; +} diff --git a/src/nspawn/nspawn-mount.h b/src/nspawn/nspawn-mount.h index 6b33fbff57..2777d2169b 100644 --- a/src/nspawn/nspawn-mount.h +++ b/src/nspawn/nspawn-mount.h @@ -70,3 +70,6 @@ int mount_custom(const char *dest, CustomMount *mounts, unsigned n, bool userns, int setup_volatile(const char *directory, VolatileMode mode, bool userns, uid_t uid_shift, uid_t uid_range, const char *selinux_apifs_context); int setup_volatile_state(const char *directory, VolatileMode mode, bool userns, uid_t uid_shift, uid_t uid_range, const char *selinux_apifs_context); + +int pivot_root_parse(char **pivot_root_new, char **pivot_root_old, const char *s); +int setup_pivot_root(const char *directory, const char *pivot_root_new, const char *pivot_root_old); diff --git a/src/nspawn/nspawn-patch-uid.c b/src/nspawn/nspawn-patch-uid.c index ded5866d05..1a3f129db0 100644 --- a/src/nspawn/nspawn-patch-uid.c +++ b/src/nspawn/nspawn-patch-uid.c @@ -375,7 +375,7 @@ static int recurse_fd(int fd, bool donate_fd, const struct stat *st, uid_t shift FOREACH_DIRENT_ALL(de, d, r = -errno; goto finish) { struct stat fst; - if (STR_IN_SET(de->d_name, ".", "..")) + if (dot_or_dot_dot(de->d_name)) continue; if (fstatat(dirfd(d), de->d_name, &fst, AT_SYMLINK_NOFOLLOW) < 0) { diff --git a/src/nspawn/nspawn-settings.c b/src/nspawn/nspawn-settings.c index 22b74d88e4..5217d10665 100644 --- a/src/nspawn/nspawn-settings.c +++ b/src/nspawn/nspawn-settings.c @@ -90,6 +90,8 @@ Settings* settings_free(Settings *s) { strv_free(s->parameters); strv_free(s->environment); free(s->user); + free(s->pivot_root_new); + free(s->pivot_root_old); free(s->working_directory); strv_free(s->network_interfaces); @@ -237,6 +239,34 @@ int config_parse_id128( return 0; } +int config_parse_pivot_root( + const char *unit, + const char *filename, + unsigned line, + const char *section, + unsigned section_line, + const char *lvalue, + int ltype, + const char *rvalue, + void *data, + void *userdata) { + + Settings *settings = data; + int r; + + assert(filename); + assert(lvalue); + assert(rvalue); + + r = pivot_root_parse(&settings->pivot_root_new, &settings->pivot_root_old, rvalue); + if (r < 0) { + log_syntax(unit, LOG_ERR, filename, line, r, "Invalid pivot root mount specification %s: %m", rvalue); + return 0; + } + + return 0; +} + int config_parse_bind( const char *unit, const char *filename, diff --git a/src/nspawn/nspawn-settings.h b/src/nspawn/nspawn-settings.h index e9ea087191..021403258f 100644 --- a/src/nspawn/nspawn-settings.h +++ b/src/nspawn/nspawn-settings.h @@ -57,7 +57,8 @@ typedef enum SettingsMask { SETTING_WORKING_DIRECTORY = 1 << 12, SETTING_USERNS = 1 << 13, SETTING_NOTIFY_READY = 1 << 14, - _SETTINGS_MASK_ALL = (1 << 15) -1 + SETTING_PIVOT_ROOT = 1 << 15, + _SETTINGS_MASK_ALL = (1 << 16) -1 } SettingsMask; typedef struct Settings { @@ -72,6 +73,8 @@ typedef struct Settings { unsigned long personality; sd_id128_t machine_id; char *working_directory; + char *pivot_root_new; + char *pivot_root_old; UserNamespaceMode userns_mode; uid_t uid_shift, uid_range; bool notify_ready; @@ -109,6 +112,7 @@ int config_parse_capability(const char *unit, const char *filename, unsigned lin int config_parse_id128(const char *unit, const char *filename, unsigned line, const char *section, unsigned section_line, const char *lvalue, int ltype, const char *rvalue, void *data, void *userdata); int config_parse_expose_port(const char *unit, const char *filename, unsigned line, const char *section, unsigned section_line, const char *lvalue, int ltype, const char *rvalue, void *data, void *userdata); int config_parse_volatile_mode(const char *unit, const char *filename, unsigned line, const char *section, unsigned section_line, const char *lvalue, int ltype, const char *rvalue, void *data, void *userdata); +int config_parse_pivot_root(const char *unit, const char *filename, unsigned line, const char *section, unsigned section_line, const char *lvalue, int ltype, const char *rvalue, void *data, void *userdata); int config_parse_bind(const char *unit, const char *filename, unsigned line, const char *section, unsigned section_line, const char *lvalue, int ltype, const char *rvalue, void *data, void *userdata); int config_parse_tmpfs(const char *unit, const char *filename, unsigned line, const char *section, unsigned section_line, const char *lvalue, int ltype, const char *rvalue, void *data, void *userdata); int config_parse_overlay(const char *unit, const char *filename, unsigned line, const char *section, unsigned section_line, const char *lvalue, int ltype, const char *rvalue, void *data, void *userdata); diff --git a/src/nspawn/nspawn-stub-pid1.c b/src/nspawn/nspawn-stub-pid1.c index 38ab37367e..7f2a53a245 100644 --- a/src/nspawn/nspawn-stub-pid1.c +++ b/src/nspawn/nspawn-stub-pid1.c @@ -87,7 +87,7 @@ int stub_pid1(sd_id128_t uuid) { /* Flush out /proc/self/environ, so that we don't leak the environment from the host into the container. Also, * set $container= and $container_uuid= so that clients in the container that query it from /proc/1/environ - * find them set set. */ + * find them set. */ sd_id128_to_string(uuid, new_environment + sizeof(new_environment) - SD_ID128_STRING_MAX); reset_environ(new_environment, sizeof(new_environment)); diff --git a/src/nspawn/nspawn.c b/src/nspawn/nspawn.c index 532be148a6..b172b44933 100644 --- a/src/nspawn/nspawn.c +++ b/src/nspawn/nspawn.c @@ -132,6 +132,8 @@ typedef enum LinkJournal { static char *arg_directory = NULL; static char *arg_template = NULL; static char *arg_chdir = NULL; +static char *arg_pivot_root_new = NULL; +static char *arg_pivot_root_old = NULL; static char *arg_user = NULL; static sd_id128_t arg_uuid = {}; static char *arg_machine = NULL; @@ -221,6 +223,8 @@ static void help(void) { " -a --as-pid2 Maintain a stub init as PID1, invoke binary as PID2\n" " -b --boot Boot up full system (i.e. invoke init)\n" " --chdir=PATH Set working directory in the container\n" + " --pivot-root=PATH[:PATH]\n" + " Pivot root to given directory in the container\n" " -u --user=USER Run the command under specified user or uid\n" " -M --machine=NAME Set the machine name for the container\n" " --uuid=UUID Set a specific machine UUID for the container\n" @@ -427,6 +431,7 @@ static int parse_argv(int argc, char *argv[]) { ARG_KILL_SIGNAL, ARG_SETTINGS, ARG_CHDIR, + ARG_PIVOT_ROOT, ARG_PRIVATE_USERS_CHOWN, ARG_NOTIFY_READY, ARG_ROOT_HASH, @@ -478,6 +483,7 @@ static int parse_argv(int argc, char *argv[]) { { "kill-signal", required_argument, NULL, ARG_KILL_SIGNAL }, { "settings", required_argument, NULL, ARG_SETTINGS }, { "chdir", required_argument, NULL, ARG_CHDIR }, + { "pivot-root", required_argument, NULL, ARG_PIVOT_ROOT }, { "notify-ready", required_argument, NULL, ARG_NOTIFY_READY }, { "root-hash", required_argument, NULL, ARG_ROOT_HASH }, {} @@ -676,9 +682,8 @@ static int parse_argv(int argc, char *argv[]) { r = free_and_strdup(&arg_machine, optarg); if (r < 0) return log_oom(); - - break; } + break; case 'Z': arg_selinux_context = optarg; @@ -1013,6 +1018,14 @@ static int parse_argv(int argc, char *argv[]) { arg_settings_mask |= SETTING_WORKING_DIRECTORY; break; + case ARG_PIVOT_ROOT: + r = pivot_root_parse(&arg_pivot_root_new, &arg_pivot_root_old, optarg); + if (r < 0) + return log_error_errno(r, "Failed to parse --pivot-root= argument %s: %m", optarg); + + arg_settings_mask |= SETTING_PIVOT_ROOT; + break; + case ARG_NOTIFY_READY: r = parse_boolean(optarg); if (r < 0) { @@ -1918,7 +1931,7 @@ static int wait_for_container(pid_t pid, ContainerStatus *container) { return 0; } - /* CLD_KILLED fallthrough */ + /* fall through */ case CLD_DUMPED: log_error("Container %s terminated by signal %s.", arg_machine, signal_to_string(status.si_status)); @@ -2131,6 +2144,7 @@ static int inner_child( NULL, /* NOTIFY_SOCKET */ NULL }; + const char *exec_target; _cleanup_strv_free_ char **env_use = NULL; int r; @@ -2325,20 +2339,25 @@ static int inner_child( a[0] = (char*) "/sbin/init"; execve(a[0], a, env_use); - } else if (!strv_isempty(arg_parameters)) + + exec_target = "/usr/lib/systemd/systemd, /lib/systemd/systemd, /sbin/init"; + } else if (!strv_isempty(arg_parameters)) { + exec_target = arg_parameters[0]; execvpe(arg_parameters[0], arg_parameters, env_use); - else { + } else { if (!arg_chdir) /* If we cannot change the directory, we'll end up in /, that is expected. */ (void) chdir(home ?: "/root"); execle("/bin/bash", "-bash", NULL, env_use); execle("/bin/sh", "-sh", NULL, env_use); + + exec_target = "/bin/bash, /bin/sh"; } r = -errno; (void) log_open(); - return log_error_errno(r, "execv() failed: %m"); + return log_error_errno(r, "execv(%s) failed: %m", exec_target); } static int setup_sd_notify_child(void) { @@ -2488,6 +2507,13 @@ static int outer_child( if (r < 0) return r; + r = setup_pivot_root( + directory, + arg_pivot_root_new, + arg_pivot_root_old); + if (r < 0) + return r; + r = setup_volatile( directory, arg_volatile_mode, @@ -2910,6 +2936,12 @@ static int load_settings(void) { settings->parameters = NULL; } + if ((arg_settings_mask & SETTING_PIVOT_ROOT) == 0 && + settings->pivot_root_new) { + free_and_replace(arg_pivot_root_new, settings->pivot_root_new); + free_and_replace(arg_pivot_root_old, settings->pivot_root_old); + } + if ((arg_settings_mask & SETTING_WORKING_DIRECTORY) == 0 && settings->working_directory) { free(arg_chdir); @@ -3475,53 +3507,6 @@ static int run(int master, return 1; /* loop again */ } -static int load_root_hash(const char *image) { - _cleanup_free_ char *text = NULL, *fn = NULL; - char *n, *e; - void *k; - size_t l; - int r; - - assert_se(image); - - /* Try to load the root hash from a file next to the image file if it exists. */ - - if (arg_root_hash) - return 0; - - fn = new(char, strlen(image) + strlen(".roothash") + 1); - if (!fn) - return log_oom(); - - n = stpcpy(fn, image); - e = endswith(fn, ".raw"); - if (e) - n = e; - - strcpy(n, ".roothash"); - - r = read_one_line_file(fn, &text); - if (r == -ENOENT) - return 0; - if (r < 0) { - log_warning_errno(r, "Failed to read %s, ignoring: %m", fn); - return 0; - } - - r = unhexmem(text, strlen(text), &k, &l); - if (r < 0) - return log_error_errno(r, "Invalid root hash: %s", text); - if (l < sizeof(sd_id128_t)) { - free(k); - return log_error_errno(r, "Root hash too short: %s", text); - } - - arg_root_hash = k; - arg_root_hash_size = l; - - return 0; -} - int main(int argc, char *argv[]) { _cleanup_free_ char *console = NULL; @@ -3737,9 +3722,13 @@ int main(int argc, char *argv[]) { goto finish; } - r = load_root_hash(arg_image); - if (r < 0) - goto finish; + if (!arg_root_hash) { + r = root_hash_load(arg_image, &arg_root_hash, &arg_root_hash_size); + if (r < 0) { + log_error_errno(r, "Failed to load root hash file for %s: %m", arg_image); + goto finish; + } + } } if (!mkdtemp(tmprootdir)) { @@ -3910,6 +3899,8 @@ finish: free(arg_image); free(arg_machine); free(arg_user); + free(arg_pivot_root_new); + free(arg_pivot_root_old); free(arg_chdir); strv_free(arg_setenv); free(arg_network_bridge); diff --git a/src/nss-myhostname/nss-myhostname.c b/src/nss-myhostname/nss-myhostname.c index 11c27575c0..326672cab5 100644 --- a/src/nss-myhostname/nss-myhostname.c +++ b/src/nss-myhostname/nss-myhostname.c @@ -55,7 +55,7 @@ enum nss_status _nss_myhostname_gethostbyname4_r( _cleanup_free_ struct local_address *addresses = NULL; _cleanup_free_ char *hn = NULL; const char *canonical = NULL; - int n_addresses = 0, lo_ifi; + int n_addresses = 0; uint32_t local_address_ipv4; struct local_address *a; size_t l, idx, ms; @@ -111,9 +111,6 @@ enum nss_status _nss_myhostname_gethostbyname4_r( local_address_ipv4 = LOCALADDRESS_IPV4; } - /* If this call fails we fill in 0 as scope. Which is fine */ - lo_ifi = n_addresses <= 0 ? LOOPBACK_IFINDEX : 0; - l = strlen(canonical); ms = ALIGN(l+1) + ALIGN(sizeof(struct gaih_addrtuple)) * (n_addresses > 0 ? n_addresses : 2); if (buflen < ms) { @@ -135,7 +132,7 @@ enum nss_status _nss_myhostname_gethostbyname4_r( r_tuple->name = r_name; r_tuple->family = AF_INET6; memcpy(r_tuple->addr, LOCALADDRESS_IPV6, 16); - r_tuple->scopeid = (uint32_t) lo_ifi; + r_tuple->scopeid = 0; idx += ALIGN(sizeof(struct gaih_addrtuple)); r_tuple_prev = r_tuple; @@ -146,7 +143,7 @@ enum nss_status _nss_myhostname_gethostbyname4_r( r_tuple->name = r_name; r_tuple->family = AF_INET; *(uint32_t*) r_tuple->addr = local_address_ipv4; - r_tuple->scopeid = (uint32_t) lo_ifi; + r_tuple->scopeid = 0; idx += ALIGN(sizeof(struct gaih_addrtuple)); r_tuple_prev = r_tuple; @@ -158,7 +155,7 @@ enum nss_status _nss_myhostname_gethostbyname4_r( r_tuple->next = r_tuple_prev; r_tuple->name = r_name; r_tuple->family = a->family; - r_tuple->scopeid = a->ifindex; + r_tuple->scopeid = a->family == AF_INET6 && IN6_IS_ADDR_LINKLOCAL(&a->address.in6) ? a->ifindex : 0; memcpy(r_tuple->addr, &a->address, 16); idx += ALIGN(sizeof(struct gaih_addrtuple)); diff --git a/src/nss-resolve/nss-resolve.c b/src/nss-resolve/nss-resolve.c index d46a3afe91..ce8d59d390 100644 --- a/src/nss-resolve/nss-resolve.c +++ b/src/nss-resolve/nss-resolve.c @@ -110,6 +110,20 @@ static int count_addresses(sd_bus_message *m, int af, const char **canonical) { return c; } +static uint32_t ifindex_to_scopeid(int family, const void *a, int ifindex) { + struct in6_addr in6; + + if (family != AF_INET6) + return 0; + + /* Some apps can't deal with the scope ID attached to non-link-local addresses. Hence, let's suppress that. */ + + assert(sizeof(in6) == FAMILY_ADDRESS_SIZE(AF_INET)); + memcpy(&in6, a, sizeof(struct in6_addr)); + + return IN6_IS_ADDR_LINKLOCAL(&in6) ? ifindex : 0; +} + enum nss_status _nss_resolve_gethostbyname4_r( const char *name, struct gaih_addrtuple **pat, @@ -245,7 +259,7 @@ enum nss_status _nss_resolve_gethostbyname4_r( r_tuple->next = i == c-1 ? NULL : (struct gaih_addrtuple*) ((char*) r_tuple + ALIGN(sizeof(struct gaih_addrtuple))); r_tuple->name = r_name; r_tuple->family = family; - r_tuple->scopeid = ifindex; + r_tuple->scopeid = ifindex_to_scopeid(family, a, ifindex); memcpy(r_tuple->addr, a, sz); idx += ALIGN(sizeof(struct gaih_addrtuple)); diff --git a/src/reply-password/reply-password.c b/src/reply-password/reply-password.c index 17eab9772e..a17c8a62b8 100644 --- a/src/reply-password/reply-password.c +++ b/src/reply-password/reply-password.c @@ -90,7 +90,7 @@ int main(int argc, char *argv[]) { r = send_on_socket(fd, argv[2], packet, length); finish: - memory_erase(packet, sizeof(packet)); + explicit_bzero(packet, sizeof(packet)); return r < 0 ? EXIT_FAILURE : EXIT_SUCCESS; } diff --git a/src/resolve/resolve-tool.c b/src/resolve/resolve-tool.c index 0c62e5b385..3cec36817a 100644 --- a/src/resolve/resolve-tool.c +++ b/src/resolve/resolve-tool.c @@ -1186,6 +1186,7 @@ static int status_ifindex(sd_bus *bus, int ifindex, const char *name, bool *empt {} }; + _cleanup_(sd_bus_error_free) sd_bus_error error = SD_BUS_ERROR_NULL; _cleanup_free_ char *ifi = NULL, *p = NULL; char ifname[IF_NAMESIZE] = ""; char **i; @@ -1213,9 +1214,10 @@ static int status_ifindex(sd_bus *bus, int ifindex, const char *name, bool *empt "org.freedesktop.resolve1", p, property_map, + &error, &link_info); if (r < 0) { - log_error_errno(r, "Failed to get link data for %i: %m", ifindex); + log_error_errno(r, "Failed to get link data for %i: %s", ifindex, bus_error_message(&error, r)); goto finish; } @@ -1405,6 +1407,7 @@ static int status_global(sd_bus *bus, bool *empty_line) { {} }; + _cleanup_(sd_bus_error_free) sd_bus_error error = SD_BUS_ERROR_NULL; char **i; int r; @@ -1415,9 +1418,10 @@ static int status_global(sd_bus *bus, bool *empty_line) { "org.freedesktop.resolve1", "/org/freedesktop/resolve1", property_map, + &error, &global_info); if (r < 0) { - log_error_errno(r, "Failed to get global data: %m"); + log_error_errno(r, "Failed to get global data: %s", bus_error_message(&error, r)); goto finish; } diff --git a/src/resolve/resolved-bus.c b/src/resolve/resolved-bus.c index 2ca65e6953..2c50109388 100644 --- a/src/resolve/resolved-bus.c +++ b/src/resolve/resolved-bus.c @@ -211,7 +211,7 @@ static void bus_method_resolve_hostname_complete(DnsQuery *q) { r = sd_bus_message_append( reply, "st", normalized, - SD_RESOLVED_FLAGS_MAKE(q->answer_protocol, q->answer_family, q->answer_authenticated)); + SD_RESOLVED_FLAGS_MAKE(q->answer_protocol, q->answer_family, dns_query_fully_authenticated(q))); if (r < 0) goto finish; @@ -439,7 +439,7 @@ static void bus_method_resolve_address_complete(DnsQuery *q) { if (r < 0) goto finish; - r = sd_bus_message_append(reply, "t", SD_RESOLVED_FLAGS_MAKE(q->answer_protocol, q->answer_family, q->answer_authenticated)); + r = sd_bus_message_append(reply, "t", SD_RESOLVED_FLAGS_MAKE(q->answer_protocol, q->answer_family, dns_query_fully_authenticated(q))); if (r < 0) goto finish; @@ -605,7 +605,7 @@ static void bus_method_resolve_record_complete(DnsQuery *q) { if (r < 0) goto finish; - r = sd_bus_message_append(reply, "t", SD_RESOLVED_FLAGS_MAKE(q->answer_protocol, q->answer_family, q->answer_authenticated)); + r = sd_bus_message_append(reply, "t", SD_RESOLVED_FLAGS_MAKE(q->answer_protocol, q->answer_family, dns_query_fully_authenticated(q))); if (r < 0) goto finish; @@ -979,7 +979,7 @@ static void resolve_service_all_complete(DnsQuery *q) { reply, "ssst", name, type, domain, - SD_RESOLVED_FLAGS_MAKE(q->answer_protocol, q->answer_family, q->answer_authenticated)); + SD_RESOLVED_FLAGS_MAKE(q->answer_protocol, q->answer_family, dns_query_fully_authenticated(q))); if (r < 0) goto finish; diff --git a/src/resolve/resolved-dns-query.c b/src/resolve/resolved-dns-query.c index e03db4d003..c58845c3b6 100644 --- a/src/resolve/resolved-dns-query.c +++ b/src/resolve/resolved-dns-query.c @@ -403,6 +403,7 @@ DnsQuery *dns_query_free(DnsQuery *q) { sd_bus_track_unref(q->bus_track); dns_packet_unref(q->request_dns_packet); + dns_packet_unref(q->reply_dns_packet); if (q->request_dns_stream) { /* Detach the stream from our query, in case something else keeps a reference to it. */ @@ -1028,6 +1029,9 @@ int dns_query_process_cname(DnsQuery *q) { if (q->flags & SD_RESOLVED_NO_CNAME) return -ELOOP; + if (!q->answer_authenticated) + q->previous_redirect_unauthenticated = true; + /* OK, let's actually follow the CNAME */ r = dns_query_cname_redirect(q, cname); if (r < 0) @@ -1115,3 +1119,9 @@ const char *dns_query_string(DnsQuery *q) { return dns_question_first_name(q->question_idna); } + +bool dns_query_fully_authenticated(DnsQuery *q) { + assert(q); + + return q->answer_authenticated && !q->previous_redirect_unauthenticated; +} diff --git a/src/resolve/resolved-dns-query.h b/src/resolve/resolved-dns-query.h index 49a35b846b..b8ea48f6af 100644 --- a/src/resolve/resolved-dns-query.h +++ b/src/resolve/resolved-dns-query.h @@ -71,7 +71,6 @@ struct DnsQuery { * family */ bool suppress_unroutable_family; - /* If true, the RR TTLs of the answer will be clamped by their current left validity in the cache */ bool clamp_ttl; @@ -90,6 +89,7 @@ struct DnsQuery { int answer_family; DnsSearchDomain *answer_search_domain; int answer_errno; /* if state is DNS_TRANSACTION_ERRNO */ + bool previous_redirect_unauthenticated; /* Bus client information */ sd_bus_message *request; @@ -102,6 +102,7 @@ struct DnsQuery { /* DNS stub information */ DnsPacket *request_dns_packet; DnsStream *request_dns_stream; + DnsPacket *reply_dns_packet; /* Completion callback */ void (*complete)(DnsQuery* q); @@ -139,3 +140,5 @@ DnsQuestion* dns_query_question_for_protocol(DnsQuery *q, DnsProtocol protocol); const char *dns_query_string(DnsQuery *q); DEFINE_TRIVIAL_CLEANUP_FUNC(DnsQuery*, dns_query_free); + +bool dns_query_fully_authenticated(DnsQuery *q); diff --git a/src/resolve/resolved-dns-server.c b/src/resolve/resolved-dns-server.c index 22c64e8491..10562d03ec 100644 --- a/src/resolve/resolved-dns-server.c +++ b/src/resolve/resolved-dns-server.c @@ -451,18 +451,22 @@ DnsServerFeatureLevel dns_server_possible_feature_level(DnsServer *s) { s->possible_feature_level = DNS_SERVER_FEATURE_LEVEL_EDNS0; } else if (s->n_failed_udp >= DNS_SERVER_FEATURE_RETRY_ATTEMPTS && - s->possible_feature_level >= DNS_SERVER_FEATURE_LEVEL_UDP) { + s->possible_feature_level >= (dns_server_get_dnssec_mode(s) == DNSSEC_YES ? DNS_SERVER_FEATURE_LEVEL_LARGE : DNS_SERVER_FEATURE_LEVEL_UDP)) { /* We lost too many UDP packets in a row, and are on a feature level of UDP or higher. If the * packets are lost, maybe the server cannot parse them, hence downgrading sounds like a good - * idea. We might downgrade all the way down to TCP this way. */ + * idea. We might downgrade all the way down to TCP this way. + * + * If strict DNSSEC mode is used we won't downgrade below DO level however, as packet loss + * might have many reasons, a broken DNSSEC implementation being only one reason. And if the + * user is strict on DNSSEC, then let's assume that DNSSEC is not the fault here. */ log_debug("Lost too many UDP packets, downgrading feature level..."); s->possible_feature_level--; } else if (s->n_failed_tcp >= DNS_SERVER_FEATURE_RETRY_ATTEMPTS && s->packet_truncated && - s->possible_feature_level > DNS_SERVER_FEATURE_LEVEL_UDP) { + s->possible_feature_level > (dns_server_get_dnssec_mode(s) == DNSSEC_YES ? DNS_SERVER_FEATURE_LEVEL_LARGE : DNS_SERVER_FEATURE_LEVEL_UDP)) { /* We got too many TCP connection failures in a row, we had at least one truncated packet, and * are on a feature level above UDP. By downgrading things and getting rid of DNSSEC or EDNS0 @@ -779,6 +783,15 @@ bool dns_server_address_valid(int family, const union in_addr_union *sa) { return true; } +DnssecMode dns_server_get_dnssec_mode(DnsServer *s) { + assert(s); + + if (s->link) + return link_get_dnssec_mode(s->link); + + return manager_get_dnssec_mode(s->manager); +} + static const char* const dns_server_type_table[_DNS_SERVER_TYPE_MAX] = { [DNS_SERVER_SYSTEM] = "system", [DNS_SERVER_FALLBACK] = "fallback", diff --git a/src/resolve/resolved-dns-server.h b/src/resolve/resolved-dns-server.h index 83e288a202..406282d864 100644 --- a/src/resolve/resolved-dns-server.h +++ b/src/resolve/resolved-dns-server.h @@ -144,6 +144,8 @@ void manager_next_dns_server(Manager *m); bool dns_server_address_valid(int family, const union in_addr_union *sa); +DnssecMode dns_server_get_dnssec_mode(DnsServer *s); + DEFINE_TRIVIAL_CLEANUP_FUNC(DnsServer*, dns_server_unref); extern const struct hash_ops dns_server_hash_ops; diff --git a/src/resolve/resolved-dns-stub.c b/src/resolve/resolved-dns-stub.c index 932e5b58a2..7d43825960 100644 --- a/src/resolve/resolved-dns-stub.c +++ b/src/resolve/resolved-dns-stub.c @@ -29,49 +29,33 @@ static int manager_dns_stub_udp_fd(Manager *m); static int manager_dns_stub_tcp_fd(Manager *m); static int dns_stub_make_reply_packet( - uint16_t id, - int rcode, + DnsPacket **p, DnsQuestion *q, - DnsAnswer *answer, - bool add_opt, /* add an OPT RR to this packet */ - bool edns0_do, /* set the EDNS0 DNSSEC OK bit */ - bool ad, /* set the DNSSEC authenticated data bit */ - DnsPacket **ret) { + DnsAnswer *answer) { - _cleanup_(dns_packet_unrefp) DnsPacket *p = NULL; DnsResourceRecord *rr; unsigned c = 0; int r; + assert(p); + /* Note that we don't bother with any additional RRs, as this is stub is for local lookups only, and hence * roundtrips aren't expensive. */ - r = dns_packet_new(&p, DNS_PROTOCOL_DNS, 0); - if (r < 0) - return r; - - /* If the client didn't do EDNS, clamp the rcode to 4 bit */ - if (!add_opt && rcode > 0xF) - rcode = DNS_RCODE_SERVFAIL; + if (!*p) { + r = dns_packet_new(p, DNS_PROTOCOL_DNS, 0); + if (r < 0) + return r; - DNS_PACKET_HEADER(p)->id = id; - DNS_PACKET_HEADER(p)->flags = htobe16(DNS_PACKET_MAKE_FLAGS( - 1 /* qr */, - 0 /* opcode */, - 0 /* aa */, - 0 /* tc */, - 1 /* rd */, - 1 /* ra */, - ad /* ad */, - 0 /* cd */, - rcode)); + r = dns_packet_append_question(*p, q); + if (r < 0) + return r; - r = dns_packet_append_question(p, q); - if (r < 0) - return r; - DNS_PACKET_HEADER(p)->qdcount = htobe16(dns_question_size(q)); + DNS_PACKET_HEADER(*p)->qdcount = htobe16(dns_question_size(q)); + } DNS_ANSWER_FOREACH(rr, answer) { + r = dns_question_matches_rr(q, rr, NULL); if (r < 0) return r; @@ -86,13 +70,46 @@ static int dns_stub_make_reply_packet( continue; add: - r = dns_packet_append_rr(p, rr, 0, NULL, NULL); + r = dns_packet_append_rr(*p, rr, 0, NULL, NULL); if (r < 0) return r; c++; } - DNS_PACKET_HEADER(p)->ancount = htobe16(c); + + DNS_PACKET_HEADER(*p)->ancount = htobe16(be16toh(DNS_PACKET_HEADER(*p)->ancount) + c); + + return 0; +} + +static int dns_stub_finish_reply_packet( + DnsPacket *p, + uint16_t id, + int rcode, + bool add_opt, /* add an OPT RR to this packet? */ + bool edns0_do, /* set the EDNS0 DNSSEC OK bit? */ + bool ad) { /* set the DNSSEC authenticated data bit? */ + + int r; + + assert(p); + + /* If the client didn't do EDNS, clamp the rcode to 4 bit */ + if (!add_opt && rcode > 0xF) + rcode = DNS_RCODE_SERVFAIL; + + DNS_PACKET_HEADER(p)->id = id; + + DNS_PACKET_HEADER(p)->flags = htobe16(DNS_PACKET_MAKE_FLAGS( + 1 /* qr */, + 0 /* opcode */, + 0 /* aa */, + 0 /* tc */, + 1 /* rd */, + 1 /* ra */, + ad /* ad */, + 0 /* cd */, + rcode)); if (add_opt) { r = dns_packet_append_opt(p, ADVERTISE_DATAGRAM_SIZE_MAX, edns0_do, rcode, NULL); @@ -100,9 +117,6 @@ static int dns_stub_make_reply_packet( return r; } - *ret = p; - p = NULL; - return 0; } @@ -155,7 +169,11 @@ static int dns_stub_send_failure(Manager *m, DnsStream *s, DnsPacket *p, int rco assert(m); assert(p); - r = dns_stub_make_reply_packet(DNS_PACKET_ID(p), rcode, p->question, NULL, !!p->opt, DNS_PACKET_DO(p), false, &reply); + r = dns_stub_make_reply_packet(&reply, p->question, NULL); + if (r < 0) + return log_debug_errno(r, "Failed to make failure packet: %m"); + + r = dns_stub_finish_reply_packet(reply, DNS_PACKET_ID(p), rcode, !!p->opt, DNS_PACKET_DO(p), false); if (r < 0) return log_debug_errno(r, "Failed to build failure packet: %m"); @@ -170,26 +188,40 @@ static void dns_stub_query_complete(DnsQuery *q) { switch (q->state) { - case DNS_TRANSACTION_SUCCESS: { - _cleanup_(dns_packet_unrefp) DnsPacket *reply = NULL; + case DNS_TRANSACTION_SUCCESS: + + r = dns_stub_make_reply_packet(&q->reply_dns_packet, q->question_idna, q->answer); + if (r < 0) { + log_debug_errno(r, "Failed to build reply packet: %m"); + break; + } + + r = dns_query_process_cname(q); + if (r == -ELOOP) { + (void) dns_stub_send_failure(q->manager, q->request_dns_stream, q->request_dns_packet, DNS_RCODE_SERVFAIL); + break; + } + if (r < 0) { + log_debug_errno(r, "Failed to process CNAME: %m"); + break; + } + if (r == DNS_QUERY_RESTARTED) + return; - r = dns_stub_make_reply_packet( + r = dns_stub_finish_reply_packet( + q->reply_dns_packet, DNS_PACKET_ID(q->request_dns_packet), q->answer_rcode, - q->question_idna, - q->answer, !!q->request_dns_packet->opt, DNS_PACKET_DO(q->request_dns_packet), - DNS_PACKET_DO(q->request_dns_packet) && q->answer_authenticated, - &reply); + DNS_PACKET_DO(q->request_dns_packet) && dns_query_fully_authenticated(q)); if (r < 0) { - log_debug_errno(r, "Failed to build reply packet: %m"); + log_debug_errno(r, "Failed to finish reply packet: %m"); break; } - (void) dns_stub_send(q->manager, q->request_dns_stream, q->request_dns_packet, reply); + (void) dns_stub_send(q->manager, q->request_dns_stream, q->request_dns_packet, q->reply_dns_packet); break; - } case DNS_TRANSACTION_RCODE_FAILURE: (void) dns_stub_send_failure(q->manager, q->request_dns_stream, q->request_dns_packet, q->answer_rcode); @@ -301,7 +333,7 @@ static void dns_stub_process_query(Manager *m, DnsStream *s, DnsPacket *p) { goto fail; } - r = dns_query_new(m, &q, p->question, p->question, 0, SD_RESOLVED_PROTOCOLS_ALL|SD_RESOLVED_NO_SEARCH|SD_RESOLVED_NO_CNAME); + r = dns_query_new(m, &q, p->question, p->question, 0, SD_RESOLVED_PROTOCOLS_ALL|SD_RESOLVED_NO_SEARCH); if (r < 0) { log_error_errno(r, "Failed to generate query object: %m"); dns_stub_send_failure(m, s, p, DNS_RCODE_SERVFAIL); @@ -328,7 +360,7 @@ static void dns_stub_process_query(Manager *m, DnsStream *s, DnsPacket *p) { goto fail; } - log_info("Processing query..."); + log_debug("Processing query..."); return; fail: diff --git a/src/resolve/resolved-dns-transaction.c b/src/resolve/resolved-dns-transaction.c index 81131df91e..0c7a8867fb 100644 --- a/src/resolve/resolved-dns-transaction.c +++ b/src/resolve/resolved-dns-transaction.c @@ -926,7 +926,16 @@ void dns_transaction_process_reply(DnsTransaction *t, DnsPacket *p) { dns_transaction_retry(t, false /* use the same server */); return; - } else if (DNS_PACKET_TC(p)) + } + + if (DNS_PACKET_RCODE(p) == DNS_RCODE_REFUSED) { + /* This server refused our request? If so, try again, use a different server */ + log_debug("Server returned REFUSED, switching servers, and retrying."); + dns_transaction_retry(t, true /* pick a new server */); + return; + } + + if (DNS_PACKET_TC(p)) dns_server_packet_truncated(t->server, t->current_feature_level); break; diff --git a/src/resolve/resolved-link-bus.c b/src/resolve/resolved-link-bus.c index 364812250f..59cd6cf1cb 100644 --- a/src/resolve/resolved-link-bus.c +++ b/src/resolve/resolved-link-bus.c @@ -462,7 +462,7 @@ int bus_link_method_set_dnssec(sd_bus_message *message, void *userdata, sd_bus_e int bus_link_method_set_dnssec_negative_trust_anchors(sd_bus_message *message, void *userdata, sd_bus_error *error) { _cleanup_set_free_free_ Set *ns = NULL; - _cleanup_free_ char **ntas = NULL; + _cleanup_strv_free_ char **ntas = NULL; Link *l = userdata; int r; char **i; diff --git a/src/resolve/resolved-manager.c b/src/resolve/resolved-manager.c index f81d6f0a55..791c125613 100644 --- a/src/resolve/resolved-manager.c +++ b/src/resolve/resolved-manager.c @@ -322,12 +322,13 @@ static int manager_network_monitor_listen(Manager *m) { return 0; } -static int determine_hostname(char **llmnr_hostname, char **mdns_hostname) { +static int determine_hostname(char **full_hostname, char **llmnr_hostname, char **mdns_hostname) { _cleanup_free_ char *h = NULL, *n = NULL; char label[DNS_LABEL_MAX]; const char *p; int r, k; + assert(full_hostname); assert(llmnr_hostname); assert(mdns_hostname); @@ -374,32 +375,33 @@ static int determine_hostname(char **llmnr_hostname, char **mdns_hostname) { *llmnr_hostname = n; n = NULL; + *full_hostname = h; + h = NULL; + return 0; } static int on_hostname_change(sd_event_source *es, int fd, uint32_t revents, void *userdata) { - _cleanup_free_ char *llmnr_hostname = NULL, *mdns_hostname = NULL; + _cleanup_free_ char *full_hostname = NULL, *llmnr_hostname = NULL, *mdns_hostname = NULL; Manager *m = userdata; int r; assert(m); - r = determine_hostname(&llmnr_hostname, &mdns_hostname); + r = determine_hostname(&full_hostname, &llmnr_hostname, &mdns_hostname); if (r < 0) return 0; /* ignore invalid hostnames */ - if (streq(llmnr_hostname, m->llmnr_hostname) && streq(mdns_hostname, m->mdns_hostname)) + if (streq(full_hostname, m->full_hostname) && + streq(llmnr_hostname, m->llmnr_hostname) && + streq(mdns_hostname, m->mdns_hostname)) return 0; - log_info("System hostname changed to '%s'.", llmnr_hostname); - - free(m->llmnr_hostname); - free(m->mdns_hostname); + log_info("System hostname changed to '%s'.", full_hostname); - m->llmnr_hostname = llmnr_hostname; - m->mdns_hostname = mdns_hostname; - - llmnr_hostname = mdns_hostname = NULL; + free_and_replace(m->full_hostname, full_hostname); + free_and_replace(m->llmnr_hostname, llmnr_hostname); + free_and_replace(m->mdns_hostname, mdns_hostname); manager_refresh_rrs(m); @@ -428,9 +430,14 @@ static int manager_watch_hostname(Manager *m) { (void) sd_event_source_set_description(m->hostname_event_source, "hostname"); - r = determine_hostname(&m->llmnr_hostname, &m->mdns_hostname); + r = determine_hostname(&m->full_hostname, &m->llmnr_hostname, &m->mdns_hostname); if (r < 0) { log_info("Defaulting to hostname 'linux'."); + + m->full_hostname = strdup("linux"); + if (!m->full_hostname) + return log_oom(); + m->llmnr_hostname = strdup("linux"); if (!m->llmnr_hostname) return log_oom(); @@ -439,7 +446,7 @@ static int manager_watch_hostname(Manager *m) { if (!m->mdns_hostname) return log_oom(); } else - log_info("Using system hostname '%s'.", m->llmnr_hostname); + log_info("Using system hostname '%s'.", m->full_hostname); return 0; } @@ -626,6 +633,8 @@ Manager *manager_free(Manager *m) { sd_event_source_unref(m->hostname_event_source); safe_close(m->hostname_fd); + + free(m->full_hostname); free(m->llmnr_hostname); free(m->mdns_hostname); @@ -1150,8 +1159,14 @@ int manager_is_own_hostname(Manager *m, const char *name) { return r; } - if (m->mdns_hostname) - return dns_name_equal(name, m->mdns_hostname); + if (m->mdns_hostname) { + r = dns_name_equal(name, m->mdns_hostname); + if (r != 0) + return r; + } + + if (m->full_hostname) + return dns_name_equal(name, m->full_hostname); return 0; } @@ -1353,7 +1368,7 @@ void manager_cleanup_saved_user(Manager *m) { if (!IN_SET(de->d_type, DT_UNKNOWN, DT_REG)) continue; - if (STR_IN_SET(de->d_name, ".", "..")) + if (dot_or_dot_dot(de->d_name)) continue; r = parse_ifindex(de->d_name, &ifindex); diff --git a/src/resolve/resolved-manager.h b/src/resolve/resolved-manager.h index 0b52ca594a..97c52b7729 100644 --- a/src/resolve/resolved-manager.h +++ b/src/resolve/resolved-manager.h @@ -109,6 +109,7 @@ struct Manager { sd_event_source *bus_retry_event_source; /* The hostname we publish on LLMNR and mDNS */ + char *full_hostname; char *llmnr_hostname; char *mdns_hostname; DnsResourceKey *llmnr_host_ipv4_key; diff --git a/src/run/run.c b/src/run/run.c index 99f03465b0..f8257abc93 100644 --- a/src/run/run.c +++ b/src/run/run.c @@ -403,6 +403,11 @@ static int parse_argv(int argc, char *argv[]) { return -EINVAL; } + if (arg_pty && arg_no_block) { + log_error("--pty is not compatible with --no-block."); + return -EINVAL; + } + if (arg_scope && with_timer()) { log_error("Timer options are not supported in --scope mode."); return -EINVAL; @@ -784,21 +789,23 @@ static void run_context_free(RunContext *c) { } static void run_context_check_done(RunContext *c) { - bool done = true; + bool done; assert(c); if (c->match) - done = done && (c->active_state && STR_IN_SET(c->active_state, "inactive", "failed")); + done = STRPTR_IN_SET(c->active_state, "inactive", "failed"); + else + done = true; - if (c->forward) - done = done && pty_forward_is_done(c->forward); + if (c->forward && done) /* If the service is gone, it's time to drain the output */ + done = pty_forward_drain(c->forward); if (done) sd_event_exit(c->event, EXIT_SUCCESS); } -static int on_properties_changed(sd_bus_message *m, void *userdata, sd_bus_error *error) { +static int run_context_update(RunContext *c, const char *path) { static const struct bus_properties_map map[] = { { "ActiveState", "s", NULL, offsetof(RunContext, active_state) }, @@ -811,23 +818,33 @@ static int on_properties_changed(sd_bus_message *m, void *userdata, sd_bus_error {} }; - RunContext *c = userdata; + _cleanup_(sd_bus_error_free) sd_bus_error error = SD_BUS_ERROR_NULL; int r; r = bus_map_all_properties(c->bus, "org.freedesktop.systemd1", - sd_bus_message_get_path(m), + path, map, + &error, c); if (r < 0) { sd_event_exit(c->event, EXIT_FAILURE); - return log_error_errno(r, "Failed to query unit state: %m"); + return log_error_errno(r, "Failed to query unit state: %s", bus_error_message(&error, r)); } run_context_check_done(c); return 0; } +static int on_properties_changed(sd_bus_message *m, void *userdata, sd_bus_error *error) { + RunContext *c = userdata; + + assert(m); + assert(c); + + return run_context_update(c, sd_bus_message_get_path(m)); +} + static int pty_forward_handler(PTYForward *f, int rcode, void *userdata) { RunContext *c = userdata; @@ -985,6 +1002,8 @@ static int start_transient_service( if (arg_wait || master >= 0) { _cleanup_(run_context_free) RunContext c = {}; + _cleanup_free_ char *path = NULL; + const char *mt; c.bus = sd_bus_ref(bus); @@ -1007,27 +1026,27 @@ static int start_transient_service( pty_forward_set_handler(c.forward, pty_forward_handler, &c); } - if (arg_wait) { - _cleanup_free_ char *path = NULL; - const char *mt; - path = unit_dbus_path_from_name(service); - if (!path) - return log_oom(); + path = unit_dbus_path_from_name(service); + if (!path) + return log_oom(); - mt = strjoina("type='signal'," - "sender='org.freedesktop.systemd1'," - "path='", path, "'," - "interface='org.freedesktop.DBus.Properties'," - "member='PropertiesChanged'"); - r = sd_bus_add_match(bus, &c.match, mt, on_properties_changed, &c); - if (r < 0) - return log_error_errno(r, "Failed to add properties changed signal."); + mt = strjoina("type='signal'," + "sender='org.freedesktop.systemd1'," + "path='", path, "'," + "interface='org.freedesktop.DBus.Properties'," + "member='PropertiesChanged'"); + r = sd_bus_add_match(bus, &c.match, mt, on_properties_changed, &c); + if (r < 0) + return log_error_errno(r, "Failed to add properties changed signal."); - r = sd_bus_attach_event(bus, c.event, 0); - if (r < 0) - return log_error_errno(r, "Failed to attach bus to event loop."); - } + r = sd_bus_attach_event(bus, c.event, 0); + if (r < 0) + return log_error_errno(r, "Failed to attach bus to event loop."); + + r = run_context_update(&c, path); + if (r < 0) + return r; r = sd_event_loop(c.event); if (r < 0) @@ -1041,7 +1060,13 @@ static int start_transient_service( fputc('\n', stdout); } - if (!arg_quiet) { + if (arg_wait && !arg_quiet) { + + /* Explicitly destroy the PTY forwarder, so that the PTY device is usable again, in its + * original settings (i.e. proper line breaks), so that we can show the summary in a pretty + * way. */ + c.forward = pty_forward_free(c.forward); + if (!isempty(c.result)) log_info("Finished with result: %s", strna(c.result)); @@ -1416,7 +1441,7 @@ int main(int argc, char* argv[]) { /* If --wait is used connect via the bus, unconditionally, as ref/unref is not supported via the limited direct * connection */ - if (arg_wait) + if (arg_wait || arg_pty) r = bus_connect_transport(arg_transport, arg_host, arg_user, &bus); else r = bus_connect_transport_systemd(arg_transport, arg_host, arg_user, &bus); diff --git a/src/shared/ask-password-api.c b/src/shared/ask-password-api.c index 3e877920da..e3b29e390c 100644 --- a/src/shared/ask-password-api.c +++ b/src/shared/ask-password-api.c @@ -95,7 +95,7 @@ static int retrieve_key(key_serial_t serial, char ***ret) { if (n < m) break; - memory_erase(p, n); + explicit_bzero(p, n); free(p); m *= 2; } @@ -104,7 +104,7 @@ static int retrieve_key(key_serial_t serial, char ***ret) { if (!l) return -ENOMEM; - memory_erase(p, n); + explicit_bzero(p, n); *ret = l; return 0; @@ -140,7 +140,7 @@ static int add_to_keyring(const char *keyname, AskPasswordFlags flags, char **pa return r; serial = add_key("user", keyname, p, n, KEY_SPEC_USER_KEYRING); - memory_erase(p, n); + explicit_bzero(p, n); if (serial == -1) return -errno; @@ -390,7 +390,7 @@ int ask_password_tty( } x = strndup(passphrase, p); - memory_erase(passphrase, p); + explicit_bzero(passphrase, p); if (!x) { r = -ENOMEM; goto finish; @@ -647,7 +647,7 @@ int ask_password_agent( l = strv_new("", NULL); else l = strv_parse_nulstr(passphrase+1, n-1); - memory_erase(passphrase, n); + explicit_bzero(passphrase, n); if (!l) { r = -ENOMEM; goto finish; diff --git a/src/shared/bus-unit-util.c b/src/shared/bus-unit-util.c index 829be2c6da..4ca614f647 100644 --- a/src/shared/bus-unit-util.c +++ b/src/shared/bus-unit-util.c @@ -208,7 +208,7 @@ int bus_append_unit_property_assignment(sd_bus_message *m, const char *assignmen "PrivateTmp", "PrivateDevices", "PrivateNetwork", "PrivateUsers", "NoNewPrivileges", "SyslogLevelPrefix", "Delegate", "RemainAfterElapse", "MemoryDenyWriteExecute", "RestrictRealtime", "DynamicUser", "RemoveIPC", "ProtectKernelTunables", - "ProtectKernelModules", "ProtectControlGroups")) { + "ProtectKernelModules", "ProtectControlGroups", "MountAPIVFS")) { r = parse_boolean(eq); if (r < 0) @@ -266,7 +266,7 @@ int bus_append_unit_property_assignment(sd_bus_message *m, const char *assignmen "StandardInput", "StandardOutput", "StandardError", "Description", "Slice", "Type", "WorkingDirectory", "RootDirectory", "SyslogIdentifier", "ProtectSystem", - "ProtectHome", "SELinuxContext", "Restart")) + "ProtectHome", "SELinuxContext", "Restart", "RootImage")) r = sd_bus_message_append(m, "v", "s", eq); else if (streq(field, "SyslogLevel")) { @@ -484,7 +484,7 @@ int bus_append_unit_property_assignment(sd_bus_message *m, const char *assignmen for (p = eq;;) { _cleanup_free_ char *word = NULL; - int offset; + size_t offset; r = extract_first_word(&p, &word, NULL, EXTRACT_QUOTES); if (r < 0) { @@ -500,6 +500,8 @@ int bus_append_unit_property_assignment(sd_bus_message *m, const char *assignmen } offset = word[0] == '-'; + offset += word[offset] == '+'; + if (!path_is_absolute(word + offset)) { log_error("Failed to parse %s value %s", field, eq); return -EINVAL; @@ -552,7 +554,7 @@ int bus_append_unit_property_assignment(sd_bus_message *m, const char *assignmen } else if (streq(field, "RestrictNamespaces")) { bool invert = false; - uint64_t flags = 0; + unsigned long flags = 0; if (eq[0] == '~') { invert = true; @@ -573,7 +575,7 @@ int bus_append_unit_property_assignment(sd_bus_message *m, const char *assignmen if (invert) flags = (~flags) & NAMESPACE_FLAGS_ALL; - r = sd_bus_message_append(m, "v", "t", flags); + r = sd_bus_message_append(m, "v", "t", (uint64_t) flags); } else if ((dep = unit_dependency_from_string(field)) >= 0) r = sd_bus_message_append(m, "v", "as", 1, eq); else if (streq(field, "MountFlags")) { @@ -583,7 +585,7 @@ int bus_append_unit_property_assignment(sd_bus_message *m, const char *assignmen if (r < 0) return log_error_errno(r, "Failed to parse mount propagation flags: %s", eq); - r = sd_bus_message_append(m, "v", "t", f); + r = sd_bus_message_append(m, "v", "t", (uint64_t) f); } else if (STR_IN_SET(field, "BindPaths", "BindReadOnlyPaths")) { const char *p = eq; diff --git a/src/shared/bus-util.c b/src/shared/bus-util.c index 6aebe18fc0..8ddfb584ea 100644 --- a/src/shared/bus-util.c +++ b/src/shared/bus-util.c @@ -1116,9 +1116,9 @@ static int map_basic(sd_bus *bus, const char *member, sd_bus_message *m, sd_bus_ int bus_message_map_all_properties( sd_bus_message *m, const struct bus_properties_map *map, + sd_bus_error *error, void *userdata) { - _cleanup_(sd_bus_error_free) sd_bus_error error = SD_BUS_ERROR_NULL; int r; assert(m); @@ -1156,9 +1156,9 @@ int bus_message_map_all_properties( v = (uint8_t *)userdata + prop->offset; if (map[i].set) - r = prop->set(sd_bus_message_get_bus(m), member, m, &error, v); + r = prop->set(sd_bus_message_get_bus(m), member, m, error, v); else - r = map_basic(sd_bus_message_get_bus(m), member, m, &error, v); + r = map_basic(sd_bus_message_get_bus(m), member, m, error, v); if (r < 0) return r; @@ -1184,6 +1184,7 @@ int bus_message_map_all_properties( int bus_message_map_properties_changed( sd_bus_message *m, const struct bus_properties_map *map, + sd_bus_error *error, void *userdata) { const char *member; @@ -1192,7 +1193,7 @@ int bus_message_map_properties_changed( assert(m); assert(map); - r = bus_message_map_all_properties(m, map, userdata); + r = bus_message_map_all_properties(m, map, error, userdata); if (r < 0) return r; @@ -1222,10 +1223,10 @@ int bus_map_all_properties( const char *destination, const char *path, const struct bus_properties_map *map, + sd_bus_error *error, void *userdata) { _cleanup_(sd_bus_message_unrefp) sd_bus_message *m = NULL; - _cleanup_(sd_bus_error_free) sd_bus_error error = SD_BUS_ERROR_NULL; int r; assert(bus); @@ -1239,13 +1240,13 @@ int bus_map_all_properties( path, "org.freedesktop.DBus.Properties", "GetAll", - &error, + error, &m, "s", ""); if (r < 0) return r; - return bus_message_map_all_properties(m, map, userdata); + return bus_message_map_all_properties(m, map, error, userdata); } int bus_connect_transport(BusTransport transport, const char *host, bool user, sd_bus **ret) { diff --git a/src/shared/bus-util.h b/src/shared/bus-util.h index af5f133912..d9ce4263bb 100644 --- a/src/shared/bus-util.h +++ b/src/shared/bus-util.h @@ -50,9 +50,9 @@ struct bus_properties_map { int bus_map_id128(sd_bus *bus, const char *member, sd_bus_message *m, sd_bus_error *error, void *userdata); -int bus_message_map_all_properties(sd_bus_message *m, const struct bus_properties_map *map, void *userdata); -int bus_message_map_properties_changed(sd_bus_message *m, const struct bus_properties_map *map, void *userdata); -int bus_map_all_properties(sd_bus *bus, const char *destination, const char *path, const struct bus_properties_map *map, void *userdata); +int bus_message_map_all_properties(sd_bus_message *m, const struct bus_properties_map *map, sd_bus_error *error, void *userdata); +int bus_message_map_properties_changed(sd_bus_message *m, const struct bus_properties_map *map, sd_bus_error *error, void *userdata); +int bus_map_all_properties(sd_bus *bus, const char *destination, const char *path, const struct bus_properties_map *map, sd_bus_error *error, void *userdata); int bus_async_unregister_and_exit(sd_event *e, sd_bus *bus, const char *name); diff --git a/src/shared/cgroup-show.c b/src/shared/cgroup-show.c index 5d21742a09..8765cf2f49 100644 --- a/src/shared/cgroup-show.c +++ b/src/shared/cgroup-show.c @@ -24,10 +24,15 @@ #include <stdlib.h> #include <string.h> +#include <systemd/sd-bus.h> + #include "alloc-util.h" +#include "bus-error.h" +#include "bus-util.h" #include "cgroup-show.h" #include "cgroup-util.h" #include "fd-util.h" +#include "fileio.h" #include "format-util.h" #include "locale-util.h" #include "macro.h" @@ -36,6 +41,7 @@ #include "process-util.h" #include "string-util.h" #include "terminal-util.h" +#include "unit-name.h" static void show_pid_array( pid_t pids[], @@ -73,7 +79,7 @@ static void show_pid_array( for (i = 0; i < n_pids; i++) { _cleanup_free_ char *t = NULL; - get_process_cmdline(pids[i], n_columns, true, &t); + (void) get_process_cmdline(pids[i], n_columns, true, &t); if (extra) printf("%s%s ", prefix, special_glyph(TRIANGULAR_BULLET)); @@ -310,3 +316,81 @@ int show_cgroup_and_extra_by_spec( return show_cgroup_and_extra(controller, path, prefix, n_columns, extra_pids, n_extra_pids, flags); } + +int show_cgroup_get_unit_path_and_warn( + sd_bus *bus, + const char *unit, + char **ret) { + + _cleanup_(sd_bus_error_free) sd_bus_error error = SD_BUS_ERROR_NULL; + _cleanup_free_ char *path = NULL; + int r; + + path = unit_dbus_path_from_name(unit); + if (!path) + return log_oom(); + + r = sd_bus_get_property_string( + bus, + "org.freedesktop.systemd1", + path, + unit_dbus_interface_from_name(unit), + "ControlGroup", + &error, + ret); + if (r < 0) + return log_error_errno(r, "Failed to query unit control group path: %s", + bus_error_message(&error, r)); + + return 0; +} + +int show_cgroup_get_path_and_warn( + const char *machine, + const char *prefix, + char **ret) { + + int r; + _cleanup_free_ char *root = NULL; + + if (machine) { + _cleanup_(sd_bus_flush_close_unrefp) sd_bus *bus = NULL; + _cleanup_free_ char *unit = NULL; + const char *m; + + m = strjoina("/run/systemd/machines/", machine); + r = parse_env_file(m, NEWLINE, "SCOPE", &unit, NULL); + if (r < 0) + return log_error_errno(r, "Failed to load machine data: %m"); + + r = bus_connect_transport_systemd(BUS_TRANSPORT_LOCAL, NULL, false, &bus); + if (r < 0) + return log_error_errno(r, "Failed to create bus connection: %m"); + + r = show_cgroup_get_unit_path_and_warn(bus, unit, &root); + if (r < 0) + return r; + } else { + r = cg_get_root_path(&root); + if (r == -ENOMEDIUM) + return log_error_errno(r, "Failed to get root control group path.\n" + "No cgroup filesystem mounted on /sys/fs/cgroup"); + else if (r < 0) + return log_error_errno(r, "Failed to get root control group path: %m"); + } + + if (prefix) { + char *t; + + t = strjoin(root, prefix); + if (!t) + return log_oom(); + + *ret = t; + } else { + *ret = root; + root = NULL; + } + + return 0; +} diff --git a/src/shared/cgroup-show.h b/src/shared/cgroup-show.h index 5c1d6e6d98..736f0f34c8 100644 --- a/src/shared/cgroup-show.h +++ b/src/shared/cgroup-show.h @@ -22,6 +22,8 @@ #include <stdbool.h> #include <sys/types.h> +#include <systemd/sd-bus.h> + #include "logs-show.h" #include "output-mode.h" @@ -30,3 +32,12 @@ int show_cgroup(const char *controller, const char *path, const char *prefix, un int show_cgroup_and_extra_by_spec(const char *spec, const char *prefix, unsigned n_columns, const pid_t extra_pids[], unsigned n_extra_pids, OutputFlags flags); int show_cgroup_and_extra(const char *controller, const char *path, const char *prefix, unsigned n_columns, const pid_t extra_pids[], unsigned n_extra_pids, OutputFlags flags); + +int show_cgroup_get_unit_path_and_warn( + sd_bus *bus, + const char *unit, + char **ret); +int show_cgroup_get_path_and_warn( + const char *machine, + const char *prefix, + char **ret); diff --git a/src/shared/clean-ipc.c b/src/shared/clean-ipc.c index f2d1555c13..f59f6f23ae 100644 --- a/src/shared/clean-ipc.c +++ b/src/shared/clean-ipc.c @@ -225,7 +225,7 @@ static int clean_posix_shm_internal(DIR *dir, uid_t uid, gid_t gid) { FOREACH_DIRENT_ALL(de, dir, goto fail) { struct stat st; - if (STR_IN_SET(de->d_name, "..", ".")) + if (dot_or_dot_dot(de->d_name)) continue; if (fstatat(dirfd(dir), de->d_name, &st, AT_SYMLINK_NOFOLLOW) < 0) { @@ -310,7 +310,7 @@ static int clean_posix_mq(uid_t uid, gid_t gid) { struct stat st; char fn[1+strlen(de->d_name)+1]; - if (STR_IN_SET(de->d_name, "..", ".")) + if (dot_or_dot_dot(de->d_name)) continue; if (fstatat(dirfd(dir), de->d_name, &st, AT_SYMLINK_NOFOLLOW) < 0) { diff --git a/src/shared/dissect-image.c b/src/shared/dissect-image.c index 878cb008aa..410a7764ed 100644 --- a/src/shared/dissect-image.c +++ b/src/shared/dissect-image.c @@ -28,14 +28,19 @@ #include "blkid-util.h" #include "dissect-image.h" #include "fd-util.h" +#include "fileio.h" +#include "fs-util.h" #include "gpt.h" +#include "hexdecoct.h" #include "mount-util.h" #include "path-util.h" #include "stat-util.h" #include "stdio-util.h" #include "string-table.h" #include "string-util.h" +#include "strv.h" #include "udev-util.h" +#include "xattr-util.h" static int probe_filesystem(const char *node, char **ret_fstype) { #ifdef HAVE_BLKID @@ -347,9 +352,6 @@ int dissect_image(int fd, const void *root_hash, size_t root_hash_size, DissectI sd_id128_t type_id, id; bool rw = true; - if (pflags & GPT_FLAG_NO_AUTO) - continue; - sid = blkid_partition_get_uuid(pp); if (!sid) continue; @@ -363,18 +365,37 @@ int dissect_image(int fd, const void *root_hash, size_t root_hash_size, DissectI continue; if (sd_id128_equal(type_id, GPT_HOME)) { + + if (pflags & GPT_FLAG_NO_AUTO) + continue; + designator = PARTITION_HOME; rw = !(pflags & GPT_FLAG_READ_ONLY); } else if (sd_id128_equal(type_id, GPT_SRV)) { + + if (pflags & GPT_FLAG_NO_AUTO) + continue; + designator = PARTITION_SRV; rw = !(pflags & GPT_FLAG_READ_ONLY); } else if (sd_id128_equal(type_id, GPT_ESP)) { + + /* Note that we don't check the GPT_FLAG_NO_AUTO flag for the ESP, as it is not defined + * there. We instead check the GPT_FLAG_NO_BLOCK_IO_PROTOCOL, as recommended by the + * UEFI spec (See "12.3.3 Number and Location of System Partitions"). */ + + if (pflags & GPT_FLAG_NO_BLOCK_IO_PROTOCOL) + continue; + designator = PARTITION_ESP; fstype = "vfat"; } #ifdef GPT_ROOT_NATIVE else if (sd_id128_equal(type_id, GPT_ROOT_NATIVE)) { + if (pflags & GPT_FLAG_NO_AUTO) + continue; + /* If a root ID is specified, ignore everything but the root id */ if (!sd_id128_is_null(root_uuid) && !sd_id128_equal(root_uuid, id)) continue; @@ -384,6 +405,9 @@ int dissect_image(int fd, const void *root_hash, size_t root_hash_size, DissectI rw = !(pflags & GPT_FLAG_READ_ONLY); } else if (sd_id128_equal(type_id, GPT_ROOT_NATIVE_VERITY)) { + if (pflags & GPT_FLAG_NO_AUTO) + continue; + m->can_verity = true; /* Ignore verity unless a root hash is specified */ @@ -399,6 +423,9 @@ int dissect_image(int fd, const void *root_hash, size_t root_hash_size, DissectI #ifdef GPT_ROOT_SECONDARY else if (sd_id128_equal(type_id, GPT_ROOT_SECONDARY)) { + if (pflags & GPT_FLAG_NO_AUTO) + continue; + /* If a root ID is specified, ignore everything but the root id */ if (!sd_id128_is_null(root_uuid) && !sd_id128_equal(root_uuid, id)) continue; @@ -407,6 +434,10 @@ int dissect_image(int fd, const void *root_hash, size_t root_hash_size, DissectI architecture = SECONDARY_ARCHITECTURE; rw = !(pflags & GPT_FLAG_READ_ONLY); } else if (sd_id128_equal(type_id, GPT_ROOT_SECONDARY_VERITY)) { + + if (pflags & GPT_FLAG_NO_AUTO) + continue; + m->can_verity = true; /* Ignore verity unless root has is specified */ @@ -420,10 +451,17 @@ int dissect_image(int fd, const void *root_hash, size_t root_hash_size, DissectI } #endif else if (sd_id128_equal(type_id, GPT_SWAP)) { + + if (pflags & GPT_FLAG_NO_AUTO) + continue; + designator = PARTITION_SWAP; fstype = "swap"; } else if (sd_id128_equal(type_id, GPT_LINUX_GENERIC)) { + if (pflags & GPT_FLAG_NO_AUTO) + continue; + if (generic_node) multiple_generic = true; else { @@ -624,7 +662,9 @@ static int mount_partition( DissectImageFlags flags) { const char *p, *options = NULL, *node, *fstype; + _cleanup_free_ char *chased = NULL; bool rw; + int r; assert(m); assert(where); @@ -641,9 +681,13 @@ static int mount_partition( rw = m->rw && !(flags & DISSECT_IMAGE_READ_ONLY); - if (directory) - p = strjoina(where, directory); - else + if (directory) { + r = chase_symlinks(directory, where, CHASE_PREFIX_ROOT, &chased); + if (r < 0) + return r; + + p = chased; + } else p = where; /* If requested, turn on discard support. */ @@ -677,22 +721,23 @@ int dissected_image_mount(DissectedImage *m, const char *where, DissectImageFlag return r; if (m->partitions[PARTITION_ESP].found) { - const char *mp, *x; + const char *mp; /* Mount the ESP to /efi if it exists and is empty. If it doesn't exist, use /boot instead. */ - mp = "/efi"; - x = strjoina(where, mp); - r = dir_is_empty(x); - if (r == -ENOENT) { - mp = "/boot"; - x = strjoina(where, mp); - r = dir_is_empty(x); - } - if (r > 0) { - r = mount_partition(m->partitions + PARTITION_ESP, where, mp, flags); + FOREACH_STRING(mp, "/efi", "/boot") { + _cleanup_free_ char *p = NULL; + + r = chase_symlinks(mp, where, CHASE_PREFIX_ROOT, &p); if (r < 0) - return r; + continue; + + r = dir_is_empty(p); + if (r > 0) { + r = mount_partition(m->partitions + PARTITION_ESP, where, mp, flags); + if (r < 0) + return r; + } } } @@ -1078,6 +1123,62 @@ int decrypted_image_relinquish(DecryptedImage *d) { return 0; } +int root_hash_load(const char *image, void **ret, size_t *ret_size) { + _cleanup_free_ char *text = NULL; + _cleanup_free_ void *k = NULL; + size_t l; + int r; + + assert(image); + assert(ret); + assert(ret_size); + + if (is_device_path(image)) { + /* If we are asked to load the root hash for a device node, exit early */ + *ret = NULL; + *ret_size = 0; + return 0; + } + + r = getxattr_malloc(image, "user.verity.roothash", &text, true); + if (r < 0) { + char *fn, *e, *n; + + if (!IN_SET(r, -ENODATA, -EOPNOTSUPP, -ENOENT)) + return r; + + fn = newa(char, strlen(image) + strlen(".roothash") + 1); + n = stpcpy(fn, image); + e = endswith(fn, ".raw"); + if (e) + n = e; + + strcpy(n, ".roothash"); + + r = read_one_line_file(fn, &text); + if (r == -ENOENT) { + *ret = NULL; + *ret_size = 0; + return 0; + } + if (r < 0) + return r; + } + + r = unhexmem(text, strlen(text), &k, &l); + if (r < 0) + return r; + if (l < sizeof(sd_id128_t)) + return -EINVAL; + + *ret = k; + *ret_size = l; + + k = NULL; + + return 1; +} + static const char *const partition_designator_table[] = { [PARTITION_ROOT] = "root", [PARTITION_ROOT_SECONDARY] = "root-secondary", diff --git a/src/shared/dissect-image.h b/src/shared/dissect-image.h index 26319bd8e7..cdb083be6f 100644 --- a/src/shared/dissect-image.h +++ b/src/shared/dissect-image.h @@ -94,3 +94,5 @@ int decrypted_image_relinquish(DecryptedImage *d); const char* partition_designator_to_string(int i) _const_; int partition_designator_from_string(const char *name) _pure_; + +int root_hash_load(const char *image, void **ret, size_t *ret_size); diff --git a/src/shared/dropin.c b/src/shared/dropin.c index 3cbfe13f4c..15ccd1b6ca 100644 --- a/src/shared/dropin.c +++ b/src/shared/dropin.c @@ -29,6 +29,7 @@ #include "escape.h" #include "fd-util.h" #include "fileio-label.h" +#include "fs-util.h" #include "hashmap.h" #include "log.h" #include "macro.h" @@ -42,11 +43,10 @@ int drop_in_file(const char *dir, const char *unit, unsigned level, const char *name, char **_p, char **_q) { + char prefix[DECIMAL_STR_MAX(unsigned)]; _cleanup_free_ char *b = NULL; char *p, *q; - char prefix[DECIMAL_STR_MAX(unsigned)]; - assert(unit); assert(name); assert(_p); @@ -116,125 +116,99 @@ int write_drop_in_format(const char *dir, const char *unit, unsigned level, return write_drop_in(dir, unit, level, name, p); } -static int iterate_dir( +static int unit_file_find_dir( + const char *original_root, const char *path, - UnitDependency dependency, - dependency_consumer_t consumer, - void *arg, - char ***strv) { + char ***dirs) { - _cleanup_closedir_ DIR *d = NULL; - struct dirent *de; + _cleanup_free_ char *chased = NULL; int r; assert(path); - /* The config directories are special, since the order of the - * drop-ins matters */ - if (dependency < 0) { - r = strv_extend(strv, path); - if (r < 0) - return log_oom(); - + r = chase_symlinks(path, original_root, 0, &chased); + if (r == -ENOENT) /* Ignore -ENOENT, after all most units won't have a drop-in dir */ return 0; - } - - assert(consumer); - - d = opendir(path); - if (!d) { - if (errno == ENOENT) - return 0; - - return log_error_errno(errno, "Failed to open directory %s: %m", path); - } - - FOREACH_DIRENT(de, d, return log_error_errno(errno, "Failed to read directory %s: %m", path)) { - _cleanup_free_ char *f = NULL; - - f = strjoin(path, "/", de->d_name); - if (!f) - return log_oom(); + if (r < 0) + return log_full_errno(LOG_WARNING, r, "Failed to canonicalize path %s: %m", path); - r = consumer(dependency, de->d_name, f, arg); - if (r < 0) - return r; - } + r = strv_push(dirs, chased); + if (r < 0) + return log_oom(); + chased = NULL; return 0; } -int unit_file_process_dir( +static int unit_file_find_dirs( + const char *original_root, Set *unit_path_cache, const char *unit_path, const char *name, const char *suffix, - UnitDependency dependency, - dependency_consumer_t consumer, - void *arg, - char ***strv) { + char ***dirs) { - _cleanup_free_ char *path = NULL; + char *path; int r; assert(unit_path); assert(name); assert(suffix); - path = strjoin(unit_path, "/", name, suffix); - if (!path) - return log_oom(); + path = strjoina(unit_path, "/", name, suffix); - if (!unit_path_cache || set_get(unit_path_cache, path)) - (void) iterate_dir(path, dependency, consumer, arg, strv); + if (!unit_path_cache || set_get(unit_path_cache, path)) { + r = unit_file_find_dir(original_root, path, dirs); + if (r < 0) + return r; + } if (unit_name_is_valid(name, UNIT_NAME_INSTANCE)) { - _cleanup_free_ char *template = NULL, *p = NULL; /* Also try the template dir */ + _cleanup_free_ char *template = NULL; + r = unit_name_template(name, &template); if (r < 0) return log_error_errno(r, "Failed to generate template from unit name: %m"); - p = strjoin(unit_path, "/", template, suffix); - if (!p) - return log_oom(); - - if (!unit_path_cache || set_get(unit_path_cache, p)) - (void) iterate_dir(p, dependency, consumer, arg, strv); + return unit_file_find_dirs(original_root, unit_path_cache, unit_path, template, suffix, dirs); } return 0; } int unit_file_find_dropin_paths( + const char *original_root, char **lookup_path, Set *unit_path_cache, + const char *dir_suffix, + const char *file_suffix, Set *names, - char ***paths) { + char ***ret) { - _cleanup_strv_free_ char **strv = NULL, **ans = NULL; + _cleanup_strv_free_ char **dirs = NULL, **ans = NULL; Iterator i; - char *t; + char *t, **p; int r; - assert(paths); - - SET_FOREACH(t, names, i) { - char **p; + assert(ret); + SET_FOREACH(t, names, i) STRV_FOREACH(p, lookup_path) - unit_file_process_dir(unit_path_cache, *p, t, ".d", _UNIT_DEPENDENCY_INVALID, NULL, NULL, &strv); - } + unit_file_find_dirs(original_root, unit_path_cache, *p, t, dir_suffix, &dirs); - if (strv_isempty(strv)) + if (strv_isempty(dirs)) { + *ret = NULL; return 0; + } - r = conf_files_list_strv(&ans, ".conf", NULL, (const char**) strv); + r = conf_files_list_strv(&ans, file_suffix, NULL, (const char**) dirs); if (r < 0) - return log_warning_errno(r, "Failed to get list of configuration files: %m"); + return log_warning_errno(r, "Failed to sort the list of configuration files: %m"); - *paths = ans; + *ret = ans; ans = NULL; + return 1; } diff --git a/src/shared/dropin.h b/src/shared/dropin.h index c1936f397b..a2b8cdce61 100644 --- a/src/shared/dropin.h +++ b/src/shared/dropin.h @@ -33,29 +33,24 @@ int write_drop_in(const char *dir, const char *unit, unsigned level, int write_drop_in_format(const char *dir, const char *unit, unsigned level, const char *name, const char *format, ...) _printf_(5, 6); -/** - * This callback will be called for each directory entry @entry, - * with @filepath being the full path to the entry. - * - * If return value is negative, loop will be aborted. - */ -typedef int (*dependency_consumer_t)(UnitDependency dependency, - const char *entry, - const char* filepath, - void *arg); - -int unit_file_process_dir( - Set * unit_path_cache, - const char *unit_path, - const char *name, - const char *suffix, - UnitDependency dependency, - dependency_consumer_t consumer, - void *arg, - char ***strv); - int unit_file_find_dropin_paths( + const char *original_root, char **lookup_path, Set *unit_path_cache, + const char *dir_suffix, + const char *file_suffix, Set *names, char ***paths); + +static inline int unit_file_find_dropin_conf_paths( + const char *original_root, + char **lookup_path, + Set *unit_path_cache, + Set *names, + char ***paths) { + return unit_file_find_dropin_paths(original_root, + lookup_path, + unit_path_cache, + ".d", ".conf", + names, paths); +} diff --git a/src/shared/gpt.h b/src/shared/gpt.h index 13d80d611c..cc752006fa 100644 --- a/src/shared/gpt.h +++ b/src/shared/gpt.h @@ -71,6 +71,8 @@ # define GPT_ROOT_NATIVE_VERITY GPT_ROOT_ARM_VERITY #endif +#define GPT_FLAG_NO_BLOCK_IO_PROTOCOL (1ULL << 1) + /* Flags we recognize on the root, swap, home and srv partitions when * doing auto-discovery. These happen to be identical to what * Microsoft defines for its own Basic Data Partitions, but that's diff --git a/src/shared/install.c b/src/shared/install.c index 478abac8ab..58c8e852b2 100644 --- a/src/shared/install.c +++ b/src/shared/install.c @@ -208,7 +208,7 @@ static int path_is_control(const LookupPaths *p, const char *path) { path_equal_ptr(parent, p->runtime_control); } -static int path_is_config(const LookupPaths *p, const char *path) { +static int path_is_config(const LookupPaths *p, const char *path, bool check_parent) { _cleanup_free_ char *parent = NULL; assert(p); @@ -217,15 +217,19 @@ static int path_is_config(const LookupPaths *p, const char *path) { /* Note that we do *not* have generic checks for /etc or /run in place, since with * them we couldn't discern configuration from transient or generated units */ - parent = dirname_malloc(path); - if (!parent) - return -ENOMEM; + if (check_parent) { + parent = dirname_malloc(path); + if (!parent) + return -ENOMEM; + + path = parent; + } - return path_equal_ptr(parent, p->persistent_config) || - path_equal_ptr(parent, p->runtime_config); + return path_equal_ptr(path, p->persistent_config) || + path_equal_ptr(path, p->runtime_config); } -static int path_is_runtime(const LookupPaths *p, const char *path) { +static int path_is_runtime(const LookupPaths *p, const char *path, bool check_parent) { _cleanup_free_ char *parent = NULL; const char *rpath; @@ -239,16 +243,20 @@ static int path_is_runtime(const LookupPaths *p, const char *path) { if (rpath && path_startswith(rpath, "/run")) return true; - parent = dirname_malloc(path); - if (!parent) - return -ENOMEM; + if (check_parent) { + parent = dirname_malloc(path); + if (!parent) + return -ENOMEM; - return path_equal_ptr(parent, p->runtime_config) || - path_equal_ptr(parent, p->generator) || - path_equal_ptr(parent, p->generator_early) || - path_equal_ptr(parent, p->generator_late) || - path_equal_ptr(parent, p->transient) || - path_equal_ptr(parent, p->runtime_control); + path = parent; + } + + return path_equal_ptr(path, p->runtime_config) || + path_equal_ptr(path, p->generator) || + path_equal_ptr(path, p->generator_early) || + path_equal_ptr(path, p->generator_late) || + path_equal_ptr(path, p->transient) || + path_equal_ptr(path, p->runtime_control); } static int path_is_vendor(const LookupPaths *p, const char *path) { @@ -381,6 +389,12 @@ void unit_file_dump_changes(int r, const char *verb, const UnitFileChange *chang verb, changes[i].path); logged = true; break; + + case -ENOENT: + log_error_errno(changes[i].type, "Failed to %s unit, unit %s does not exist.", verb, changes[i].path); + logged = true; + break; + default: assert(changes[i].type < 0); log_error_errno(changes[i].type, "Failed to %s unit, file %s: %m.", @@ -677,7 +691,6 @@ static int find_symlinks_fd( int fd, const char *path, const char *config_path, - const LookupPaths *lp, bool *same_name_link) { _cleanup_closedir_ DIR *d = NULL; @@ -688,7 +701,6 @@ static int find_symlinks_fd( assert(fd >= 0); assert(path); assert(config_path); - assert(lp); assert(same_name_link); d = fdopendir(fd); @@ -722,7 +734,7 @@ static int find_symlinks_fd( } /* This will close nfd, regardless whether it succeeds or not */ - q = find_symlinks_fd(root_dir, name, nfd, p, config_path, lp, same_name_link); + q = find_symlinks_fd(root_dir, name, nfd, p, config_path, same_name_link); if (q > 0) return 1; if (r == 0) @@ -800,7 +812,6 @@ static int find_symlinks( const char *root_dir, const char *name, const char *config_path, - const LookupPaths *lp, bool *same_name_link) { int fd; @@ -817,44 +828,82 @@ static int find_symlinks( } /* This takes possession of fd and closes it */ - return find_symlinks_fd(root_dir, name, fd, config_path, config_path, lp, same_name_link); + return find_symlinks_fd(root_dir, name, fd, config_path, config_path, same_name_link); } static int find_symlinks_in_scope( - UnitFileScope scope, const LookupPaths *paths, const char *name, UnitFileState *state) { - bool same_name_link_runtime = false, same_name_link = false; + bool same_name_link_runtime = false, same_name_link_config = false; + bool enabled_in_runtime = false, enabled_at_all = false; + char **p; int r; - assert(scope >= 0); - assert(scope < _UNIT_FILE_SCOPE_MAX); assert(paths); assert(name); - /* First look in the persistent config path */ - r = find_symlinks(paths->root_dir, name, paths->persistent_config, paths, &same_name_link); - if (r < 0) - return r; - if (r > 0) { - *state = UNIT_FILE_ENABLED; - return r; + STRV_FOREACH(p, paths->search_path) { + bool same_name_link = false; + + r = find_symlinks(paths->root_dir, name, *p, &same_name_link); + if (r < 0) + return r; + if (r > 0) { + /* We found symlinks in this dir? Yay! Let's see where precisely it is enabled. */ + + r = path_is_config(paths, *p, false); + if (r < 0) + return r; + if (r > 0) { + /* This is the best outcome, let's return it immediately. */ + *state = UNIT_FILE_ENABLED; + return 1; + } + + r = path_is_runtime(paths, *p, false); + if (r < 0) + return r; + if (r > 0) + enabled_in_runtime = true; + else + enabled_at_all = true; + + } else if (same_name_link) { + + r = path_is_config(paths, *p, false); + if (r < 0) + return r; + if (r > 0) + same_name_link_config = true; + else { + r = path_is_runtime(paths, *p, false); + if (r < 0) + return r; + if (r > 0) + same_name_link_runtime = true; + } + } } - /* Then look in runtime config path */ - r = find_symlinks(paths->root_dir, name, paths->runtime_config, paths, &same_name_link_runtime); - if (r < 0) - return r; - if (r > 0) { + if (enabled_in_runtime) { *state = UNIT_FILE_ENABLED_RUNTIME; - return r; + return 1; + } + + /* Here's a special rule: if the unit we are looking for is an instance, and it symlinked in the search path + * outside of runtime and configuration directory, then we consider it statically enabled. Note we do that only + * for instance, not for regular names, as those are merely aliases, while instances explicitly instantiate + * something, and hence are a much stronger concept. */ + if (enabled_at_all && unit_name_is_valid(name, UNIT_NAME_INSTANCE)) { + *state = UNIT_FILE_STATIC; + return 1; } /* Hmm, we didn't find it, but maybe we found the same name * link? */ - if (same_name_link) { + if (same_name_link_config) { *state = UNIT_FILE_LINKED; return 1; } @@ -1354,7 +1403,8 @@ static int install_info_follow( InstallContext *c, UnitFileInstallInfo *i, const char *root_dir, - SearchFlags flags) { + SearchFlags flags, + bool ignore_different_name) { assert(c); assert(i); @@ -1367,7 +1417,7 @@ static int install_info_follow( /* If the basename doesn't match, the caller should add a * complete new entry for this. */ - if (!streq(basename(i->symlink_target), i->name)) + if (!ignore_different_name && !streq(basename(i->symlink_target), i->name)) return -EXDEV; free_and_replace(i->path, i->symlink_target); @@ -1408,14 +1458,14 @@ static int install_info_traverse( return -ELOOP; if (!(flags & SEARCH_FOLLOW_CONFIG_SYMLINKS)) { - r = path_is_config(paths, i->path); + r = path_is_config(paths, i->path, true); if (r < 0) return r; if (r > 0) return -ELOOP; } - r = install_info_follow(c, i, paths->root_dir, flags); + r = install_info_follow(c, i, paths->root_dir, flags, false); if (r == -EXDEV) { _cleanup_free_ char *buffer = NULL; const char *bn; @@ -1439,6 +1489,18 @@ static int install_info_traverse( if (r < 0) return r; + if (streq(buffer, i->name)) { + + /* We filled in the instance, and the target stayed the same? If so, then let's + * honour the link as it is. */ + + r = install_info_follow(c, i, paths->root_dir, flags, true); + if (r < 0) + return r; + + continue; + } + bn = buffer; } @@ -1751,7 +1813,9 @@ static int install_context_mark_for_removal( InstallContext *c, const LookupPaths *paths, Set **remove_symlinks_to, - const char *config_path) { + const char *config_path, + UnitFileChange **changes, + unsigned *n_changes) { UnitFileInstallInfo *i; int r; @@ -1777,19 +1841,26 @@ static int install_context_mark_for_removal( r = install_info_traverse(scope, c, paths, i, SEARCH_LOAD|SEARCH_FOLLOW_CONFIG_SYMLINKS, NULL); if (r == -ENOLINK) { - log_debug_errno(r, "Name %s leads to a dangling symlink, ignoring.", i->name); - continue; - } else if (r == -ENOENT && i->auxiliary) { - /* some unit specified in Also= or similar is missing */ - log_debug_errno(r, "Auxiliary unit %s not found, ignoring.", i->name); - continue; - } else if (r < 0) - return log_debug_errno(r, "Failed to find unit %s: %m", i->name); + log_debug_errno(r, "Name %s leads to a dangling symlink, removing name.", i->name); + unit_file_changes_add(changes, n_changes, UNIT_FILE_IS_DANGLING, i->path ?: i->name, NULL); + } else if (r == -ENOENT) { + + if (i->auxiliary) /* some unit specified in Also= or similar is missing */ + log_debug_errno(r, "Auxiliary unit of %s not found, removing name.", i->name); + else { + log_debug_errno(r, "Unit %s not found, removing name.", i->name); + unit_file_changes_add(changes, n_changes, r, i->path ?: i->name, NULL); + } - if (i->type != UNIT_FILE_TYPE_REGULAR) { - log_debug("Unit %s has type %s, ignoring.", - i->name, - unit_file_type_to_string(i->type) ?: "invalid"); + } else if (r < 0) { + log_debug_errno(r, "Failed to find unit %s, removing name: %m", i->name); + unit_file_changes_add(changes, n_changes, r, i->path ?: i->name, NULL); + } else if (i->type == UNIT_FILE_TYPE_MASKED) { + log_debug("Unit file %s is masked, ignoring.", i->name); + unit_file_changes_add(changes, n_changes, UNIT_FILE_IS_MASKED, i->path ?: i->name, NULL); + continue; + } else if (i->type != UNIT_FILE_TYPE_REGULAR) { + log_debug("Unit %s has type %s, ignoring.", i->name, unit_file_type_to_string(i->type) ?: "invalid"); continue; } @@ -1822,6 +1893,8 @@ int unit_file_mask( return r; config_path = (flags & UNIT_FILE_RUNTIME) ? paths.runtime_config : paths.persistent_config; + if (!config_path) + return -ENXIO; STRV_FOREACH(i, files) { _cleanup_free_ char *path = NULL; @@ -1870,6 +1943,9 @@ int unit_file_unmask( return r; config_path = (flags & UNIT_FILE_RUNTIME) ? paths.runtime_config : paths.persistent_config; + if (!config_path) + return -ENXIO; + dry_run = !!(flags & UNIT_FILE_DRY_RUN); STRV_FOREACH(i, files) { @@ -1959,6 +2035,8 @@ int unit_file_link( return r; config_path = (flags & UNIT_FILE_RUNTIME) ? paths.runtime_config : paths.persistent_config; + if (!config_path) + return -ENXIO; STRV_FOREACH(i, files) { _cleanup_free_ char *full = NULL; @@ -2027,7 +2105,7 @@ static int path_shall_revert(const LookupPaths *paths, const char *path) { /* Checks whether the path is one where the drop-in directories shall be removed. */ - r = path_is_config(paths, path); + r = path_is_config(paths, path, true); if (r != 0) return r; @@ -2135,7 +2213,7 @@ int unit_file_revert( if (errno != ENOENT) return -errno; } else if (S_ISREG(st.st_mode) || S_ISLNK(st.st_mode)) { - r = path_is_config(&paths, path); + r = path_is_config(&paths, path, true); if (r < 0) return r; if (r > 0) { @@ -2226,6 +2304,8 @@ int unit_file_add_dependency( return r; config_path = (flags & UNIT_FILE_RUNTIME) ? paths.runtime_config : paths.persistent_config; + if (!config_path) + return -ENXIO; r = install_info_discover(scope, &c, &paths, target, SEARCH_FOLLOW_CONFIG_SYMLINKS, &target_info, changes, n_changes); @@ -2291,6 +2371,8 @@ int unit_file_enable( return r; config_path = (flags & UNIT_FILE_RUNTIME) ? paths.runtime_config : paths.persistent_config; + if (!config_path) + return -ENXIO; STRV_FOREACH(f, files) { r = install_info_discover(scope, &c, &paths, *f, SEARCH_LOAD|SEARCH_FOLLOW_CONFIG_SYMLINKS, @@ -2335,6 +2417,8 @@ int unit_file_disable( return r; config_path = (flags & UNIT_FILE_RUNTIME) ? paths.runtime_config : paths.persistent_config; + if (!config_path) + return -ENXIO; STRV_FOREACH(i, files) { if (!unit_name_is_valid(*i, UNIT_NAME_ANY)) @@ -2345,7 +2429,7 @@ int unit_file_disable( return r; } - r = install_context_mark_for_removal(scope, &c, &paths, &remove_symlinks_to, config_path); + r = install_context_mark_for_removal(scope, &c, &paths, &remove_symlinks_to, config_path, changes, n_changes); if (r < 0) return r; @@ -2481,7 +2565,7 @@ static int unit_file_lookup_state( switch (i->type) { case UNIT_FILE_TYPE_MASKED: - r = path_is_runtime(paths, i->path); + r = path_is_runtime(paths, i->path, true); if (r < 0) return r; @@ -2505,7 +2589,7 @@ static int unit_file_lookup_state( break; } - r = find_symlinks_in_scope(scope, paths, i->name, &state); + r = find_symlinks_in_scope(paths, i->name, &state); if (r < 0) return r; if (r == 0) { @@ -2734,7 +2818,7 @@ static int execute_preset( if (mode != UNIT_FILE_PRESET_ENABLE_ONLY) { _cleanup_set_free_free_ Set *remove_symlinks_to = NULL; - r = install_context_mark_for_removal(scope, minus, paths, &remove_symlinks_to, config_path); + r = install_context_mark_for_removal(scope, minus, paths, &remove_symlinks_to, config_path, changes, n_changes); if (r < 0) return r; @@ -2829,6 +2913,8 @@ int unit_file_preset( return r; config_path = (flags & UNIT_FILE_RUNTIME) ? paths.runtime_config : paths.persistent_config; + if (!config_path) + return -ENXIO; r = read_presets(scope, root_dir, &presets); if (r < 0) @@ -2867,6 +2953,8 @@ int unit_file_preset_all( return r; config_path = (flags & UNIT_FILE_RUNTIME) ? paths.runtime_config : paths.persistent_config; + if (!config_path) + return -ENXIO; r = read_presets(scope, root_dir, &presets); if (r < 0) diff --git a/src/shared/logs-show.c b/src/shared/logs-show.c index 75ea25c8ac..72c43e80cb 100644 --- a/src/shared/logs-show.c +++ b/src/shared/logs-show.c @@ -246,6 +246,11 @@ static int output_timestamp_realtime(FILE *f, sd_journal *j, OutputMode mode, Ou if (r < 0) return log_error_errno(r, "Failed to get realtime timestamp: %m"); + if (x > USEC_TIMESTAMP_FORMATTABLE_MAX) { + log_error("Timestamp cannot be printed"); + return -EINVAL; + } + if (mode == OUTPUT_SHORT_FULL) { const char *k; diff --git a/src/shared/path-lookup.c b/src/shared/path-lookup.c index 586ef64e72..09a44534e2 100644 --- a/src/shared/path-lookup.c +++ b/src/shared/path-lookup.c @@ -33,6 +33,7 @@ #include "stat-util.h" #include "string-util.h" #include "strv.h" +#include "user-util.h" #include "util.h" static int user_runtime_dir(char **ret, const char *suffix) { @@ -57,6 +58,7 @@ static int user_runtime_dir(char **ret, const char *suffix) { static int user_config_dir(char **ret, const char *suffix) { const char *e; char *j; + int r; assert(ret); @@ -64,11 +66,11 @@ static int user_config_dir(char **ret, const char *suffix) { if (e) j = strappend(e, suffix); else { - const char *home; + _cleanup_free_ char *home = NULL; - home = getenv("HOME"); - if (!home) - return -ENXIO; + r = get_home_dir(&home); + if (r < 0) + return r; j = strjoin(home, "/.config", suffix); } @@ -83,6 +85,7 @@ static int user_config_dir(char **ret, const char *suffix) { static int user_data_dir(char **ret, const char *suffix) { const char *e; char *j; + int r; assert(ret); assert(suffix); @@ -95,12 +98,11 @@ static int user_data_dir(char **ret, const char *suffix) { if (e) j = strappend(e, suffix); else { - const char *home; - - home = getenv("HOME"); - if (!home) - return -ENXIO; + _cleanup_free_ char *home = NULL; + r = get_home_dir(&home); + if (r < 0) + return r; j = strjoin(home, "/.local/share", suffix); } @@ -136,10 +138,10 @@ static char** user_dirs( NULL }; - const char *e; _cleanup_strv_free_ char **config_dirs = NULL, **data_dirs = NULL; _cleanup_free_ char *data_home = NULL; _cleanup_strv_free_ char **res = NULL; + const char *e; char **tmp; int r; @@ -186,9 +188,8 @@ static char** user_dirs( if (strv_extend(&res, generator_early) < 0) return NULL; - if (!strv_isempty(config_dirs)) - if (strv_extend_strv_concat(&res, config_dirs, "/systemd/user") < 0) - return NULL; + if (strv_extend_strv_concat(&res, config_dirs, "/systemd/user") < 0) + return NULL; if (strv_extend(&res, persistent_config) < 0) return NULL; @@ -205,9 +206,8 @@ static char** user_dirs( if (strv_extend(&res, data_home) < 0) return NULL; - if (!strv_isempty(data_dirs)) - if (strv_extend_strv_concat(&res, data_dirs, "/systemd/user") < 0) - return NULL; + if (strv_extend_strv_concat(&res, data_dirs, "/systemd/user") < 0) + return NULL; if (strv_extend_strv(&res, (char**) data_unit_paths, false) < 0) return NULL; @@ -220,6 +220,7 @@ static char** user_dirs( tmp = res; res = NULL; + return tmp; } @@ -328,12 +329,18 @@ static int acquire_config_dirs(UnitFileScope scope, char **persistent, char **ru case UNIT_FILE_USER: r = user_config_dir(&a, "/systemd/user"); - if (r < 0) + if (r < 0 && r != -ENXIO) return r; r = user_runtime_dir(runtime, "/systemd/user"); - if (r < 0) - return r; + if (r < 0) { + if (r != -ENXIO) + return r; + + /* If XDG_RUNTIME_DIR is not set, don't consider that fatal, simply initialize the runtime + * directory to NULL */ + *runtime = NULL; + } *persistent = a; a = NULL; @@ -382,12 +389,18 @@ static int acquire_control_dirs(UnitFileScope scope, char **persistent, char **r case UNIT_FILE_USER: r = user_config_dir(&a, "/systemd/system.control"); - if (r < 0) + if (r < 0 && r != -ENXIO) return r; r = user_runtime_dir(runtime, "/systemd/system.control"); - if (r < 0) - return r; + if (r < 0) { + if (r != -ENXIO) + return r; + + /* If XDG_RUNTIME_DIR is not set, don't consider this fatal, simply initialize the directory to + * NULL */ + *runtime = NULL; + } break; @@ -474,22 +487,26 @@ int lookup_paths_init( return -ENOMEM; } + /* Note: when XDG_RUNTIME_DIR is not set this will not return -ENXIO, but simply set runtime_config to NULL */ r = acquire_config_dirs(scope, &persistent_config, &runtime_config); - if (r < 0 && r != -ENXIO) + if (r < 0) return r; if ((flags & LOOKUP_PATHS_EXCLUDE_GENERATED) == 0) { + /* Note: if XDG_RUNTIME_DIR is not set, this will fail completely with ENXIO */ r = acquire_generator_dirs(scope, &generator, &generator_early, &generator_late); if (r < 0 && r != -EOPNOTSUPP && r != -ENXIO) return r; } + /* Note: if XDG_RUNTIME_DIR is not set, this will fail completely with ENXIO */ r = acquire_transient_dir(scope, &transient); if (r < 0 && r != -EOPNOTSUPP && r != -ENXIO) return r; + /* Note: when XDG_RUNTIME_DIR is not set this will not return -ENXIO, but simply set runtime_control to NULL */ r = acquire_control_dirs(scope, &persistent_control, &runtime_control); - if (r < 0 && r != -EOPNOTSUPP && r != -ENXIO) + if (r < 0 && r != -EOPNOTSUPP) return r; /* First priority is whatever has been passed to us via env vars */ diff --git a/src/shared/ptyfwd.c b/src/shared/ptyfwd.c index 293c6673fc..59b541d519 100644 --- a/src/shared/ptyfwd.c +++ b/src/shared/ptyfwd.c @@ -69,6 +69,7 @@ struct PTYForward { bool read_from_master:1; bool done:1; + bool drain:1; bool last_char_set:1; char last_char; @@ -302,6 +303,11 @@ static int shovel(PTYForward *f) { return pty_forward_done(f, 0); } + /* If we were asked to drain, and there's nothing more to handle from the master, then call the callback + * too. */ + if (f->drain && f->out_buffer_full == 0 && !f->master_readable) + return pty_forward_done(f, 0); + return 0; } @@ -438,6 +444,9 @@ int pty_forward_new( r = sd_event_add_io(f->event, &f->stdin_event_source, STDIN_FILENO, EPOLLIN|EPOLLET, on_stdin_event, f); if (r < 0 && r != -EPERM) return r; + + if (r >= 0) + (void) sd_event_source_set_description(f->stdin_event_source, "ptyfwd-stdin"); } r = sd_event_add_io(f->event, &f->stdout_event_source, STDOUT_FILENO, EPOLLOUT|EPOLLET, on_stdout_event, f); @@ -446,15 +455,21 @@ int pty_forward_new( f->stdout_writable = true; else if (r < 0) return r; + else + (void) sd_event_source_set_description(f->stdout_event_source, "ptyfwd-stdout"); r = sd_event_add_io(f->event, &f->master_event_source, master, EPOLLIN|EPOLLOUT|EPOLLET, on_master_event, f); if (r < 0) return r; + (void) sd_event_source_set_description(f->master_event_source, "ptyfwd-master"); + r = sd_event_add_signal(f->event, &f->sigwinch_event_source, SIGWINCH, on_sigwinch_event, f); if (r < 0) return r; + (void) sd_event_source_set_description(f->sigwinch_event_source, "ptyfwd-sigwinch"); + *ret = f; f = NULL; @@ -519,3 +534,18 @@ void pty_forward_set_handler(PTYForward *f, PTYForwardHandler cb, void *userdata f->handler = cb; f->userdata = userdata; } + +bool pty_forward_drain(PTYForward *f) { + assert(f); + + /* Starts draining the forwarder. Specifically: + * + * - Returns true if there are no unprocessed bytes from the pty, false otherwise + * + * - Makes sure the handler function is called the next time the number of unprocessed bytes hits zero + */ + + f->drain = true; + + return f->out_buffer_full == 0 && !f->master_readable; +} diff --git a/src/shared/ptyfwd.h b/src/shared/ptyfwd.h index bd5d5fec0d..3fad1d3b26 100644 --- a/src/shared/ptyfwd.h +++ b/src/shared/ptyfwd.h @@ -51,4 +51,6 @@ bool pty_forward_is_done(PTYForward *f); void pty_forward_set_handler(PTYForward *f, PTYForwardHandler handler, void *userdata); +bool pty_forward_drain(PTYForward *f); + DEFINE_TRIVIAL_CLEANUP_FUNC(PTYForward*, pty_forward_free); diff --git a/src/shared/seccomp-util.c b/src/shared/seccomp-util.c index 2c73cb8fa4..84964f750f 100644 --- a/src/shared/seccomp-util.c +++ b/src/shared/seccomp-util.c @@ -36,31 +36,72 @@ const uint32_t seccomp_local_archs[] = { -#if defined(__i386__) || defined(__x86_64__) + /* Note: always list the native arch we are compiled as last, so that users can blacklist seccomp(), but our own calls to it still succeed */ + +#if defined(__x86_64__) && defined(__ILP32__) SCMP_ARCH_X86, SCMP_ARCH_X86_64, + SCMP_ARCH_X32, /* native */ +#elif defined(__x86_64__) && !defined(__ILP32__) + SCMP_ARCH_X86, SCMP_ARCH_X32, - -#elif defined(__arm__) || defined(__aarch64__) + SCMP_ARCH_X86_64, /* native */ +#elif defined(__i386__) + SCMP_ARCH_X86, +#elif defined(__aarch64__) SCMP_ARCH_ARM, - SCMP_ARCH_AARCH64, - -#elif defined(__mips__) || defined(__mips64__) + SCMP_ARCH_AARCH64, /* native */ +#elif defined(__arm__) + SCMP_ARCH_ARM, +#elif defined(__mips__) && __BYTE_ORDER == __BIG_ENDIAN && _MIPS_SIM == _MIPS_SIM_ABI32 + SCMP_ARCH_MIPSEL, + SCMP_ARCH_MIPS, /* native */ +#elif defined(__mips__) && __BYTE_ORDER == __LITTLE_ENDIAN && _MIPS_SIM == _MIPS_SIM_ABI32 SCMP_ARCH_MIPS, - SCMP_ARCH_MIPS64, + SCMP_ARCH_MIPSEL, /* native */ +#elif defined(__mips__) && __BYTE_ORDER == __BIG_ENDIAN && _MIPS_SIM == _MIPS_SIM_ABI64 + SCMP_ARCH_MIPSEL, + SCMP_ARCH_MIPS, + SCMP_ARCH_MIPSEL64N32, + SCMP_ARCH_MIPS64N32, + SCMP_ARCH_MIPSEL64, + SCMP_ARCH_MIPS64, /* native */ +#elif defined(__mips__) && __BYTE_ORDER == __LITTLE_ENDIAN && _MIPS_SIM == _MIPS_SIM_ABI64 + SCMP_ARCH_MIPS, + SCMP_ARCH_MIPSEL, SCMP_ARCH_MIPS64N32, + SCMP_ARCH_MIPSEL64N32, + SCMP_ARCH_MIPS64, + SCMP_ARCH_MIPSEL64, /* native */ +#elif defined(__mips__) && __BYTE_ORDER == __BIG_ENDIAN && _MIPS_SIM == _MIPS_SIM_NABI32 SCMP_ARCH_MIPSEL, + SCMP_ARCH_MIPS, SCMP_ARCH_MIPSEL64, + SCMP_ARCH_MIPS64, SCMP_ARCH_MIPSEL64N32, - -#elif defined(__powerpc__) || defined(__powerpc64__) + SCMP_ARCH_MIPS64N32, /* native */ +#elif defined(__mips__) && __BYTE_ORDER == __LITTLE_ENDIAN && _MIPS_SIM == _MIPS_SIM_NABI32 + SCMP_ARCH_MIPS, + SCMP_ARCH_MIPSEL, + SCMP_ARCH_MIPS64, + SCMP_ARCH_MIPSEL64, + SCMP_ARCH_MIPS64N32, + SCMP_ARCH_MIPSEL64N32, /* native */ +#elif defined(__powerpc64__) && __BYTE_ORDER == __BIG_ENDIAN SCMP_ARCH_PPC, - SCMP_ARCH_PPC64, SCMP_ARCH_PPC64LE, - -#elif defined(__s390__) || defined(__s390x__) + SCMP_ARCH_PPC64, /* native */ +#elif defined(__powerpc64__) && __BYTE_ORDER == __LITTLE_ENDIAN + SCMP_ARCH_PPC, + SCMP_ARCH_PPC64, + SCMP_ARCH_PPC64LE, /* native */ +#elif defined(__powerpc__) + SCMP_ARCH_PPC, +#elif defined(__s390x__) + SCMP_ARCH_S390, + SCMP_ARCH_S390X, /* native */ +#elif defined(__s390__) SCMP_ARCH_S390, - SCMP_ARCH_S390X, #endif (uint32_t) -1 }; @@ -171,11 +212,11 @@ int seccomp_init_for_arch(scmp_filter_ctx *ret, uint32_t arch, uint32_t default_ if (arch != SCMP_ARCH_NATIVE && arch != seccomp_arch_native()) { - r = seccomp_arch_add(seccomp, arch); + r = seccomp_arch_remove(seccomp, seccomp_arch_native()); if (r < 0) goto finish; - r = seccomp_arch_remove(seccomp, seccomp_arch_native()); + r = seccomp_arch_add(seccomp, arch); if (r < 0) goto finish; @@ -344,6 +385,7 @@ const SyscallFilterSet syscall_filter_sets[_SYSCALL_FILTER_SET_MAX] = { "mknodat\0" "mmap2\0" "mmap\0" + "munmap\0" "newfstatat\0" "open\0" "openat\0" @@ -750,10 +792,35 @@ int seccomp_restrict_namespaces(unsigned long retain) { SECCOMP_FOREACH_LOCAL_ARCH(arch) { _cleanup_(seccomp_releasep) scmp_filter_ctx seccomp = NULL; + int clone_reversed_order = -1; unsigned i; log_debug("Operating on architecture: %s", seccomp_arch_to_string(arch)); + switch (arch) { + + case SCMP_ARCH_X86_64: + case SCMP_ARCH_X86: + case SCMP_ARCH_X32: + clone_reversed_order = 0; + break; + + case SCMP_ARCH_S390: + case SCMP_ARCH_S390X: + /* On s390/s390x the first two parameters to clone are switched */ + clone_reversed_order = 1; + break; + + /* Please add more definitions here, if you port systemd to other architectures! */ + +#if !defined(__i386__) && !defined(__x86_64__) && !defined(__s390__) && !defined(__s390x__) +#warning "Consider adding the right clone() syscall definitions here!" +#endif + } + + if (clone_reversed_order < 0) /* we don't know the right order, let's ignore this arch... */ + continue; + r = seccomp_init_for_arch(&seccomp, arch, SCMP_ACT_ALLOW); if (r < 0) return r; @@ -802,12 +869,20 @@ int seccomp_restrict_namespaces(unsigned long retain) { break; } - r = seccomp_rule_add_exact( - seccomp, - SCMP_ACT_ERRNO(EPERM), - SCMP_SYS(clone), - 1, - SCMP_A0(SCMP_CMP_MASKED_EQ, f, f)); + if (clone_reversed_order == 0) + r = seccomp_rule_add_exact( + seccomp, + SCMP_ACT_ERRNO(EPERM), + SCMP_SYS(clone), + 1, + SCMP_A0(SCMP_CMP_MASKED_EQ, f, f)); + else + r = seccomp_rule_add_exact( + seccomp, + SCMP_ACT_ERRNO(EPERM), + SCMP_SYS(clone), + 1, + SCMP_A1(SCMP_CMP_MASKED_EQ, f, f)); if (r < 0) { log_debug_errno(r, "Failed to add clone() rule for architecture %s, skipping: %m", seccomp_arch_to_string(arch)); break; @@ -878,10 +953,37 @@ int seccomp_restrict_address_families(Set *address_families, bool whitelist) { SECCOMP_FOREACH_LOCAL_ARCH(arch) { _cleanup_(seccomp_releasep) scmp_filter_ctx seccomp = NULL; + bool supported; Iterator i; log_debug("Operating on architecture: %s", seccomp_arch_to_string(arch)); + switch (arch) { + + case SCMP_ARCH_X86_64: + case SCMP_ARCH_X32: + case SCMP_ARCH_ARM: + case SCMP_ARCH_AARCH64: + /* These we know we support (i.e. are the ones that do not use socketcall()) */ + supported = true; + break; + + case SCMP_ARCH_X86: + case SCMP_ARCH_S390: + case SCMP_ARCH_S390X: + case SCMP_ARCH_PPC: + case SCMP_ARCH_PPC64: + case SCMP_ARCH_PPC64LE: + default: + /* These we either know we don't support (i.e. are the ones that do use socketcall()), or we + * don't know */ + supported = false; + break; + } + + if (!supported) + continue; + r = seccomp_init_for_arch(&seccomp, arch, SCMP_ACT_ALLOW); if (r < 0) return r; @@ -1083,27 +1185,81 @@ int seccomp_restrict_realtime(void) { } int seccomp_memory_deny_write_execute(void) { + uint32_t arch; int r; SECCOMP_FOREACH_LOCAL_ARCH(arch) { _cleanup_(seccomp_releasep) scmp_filter_ctx seccomp = NULL; + int filter_syscall = 0, block_syscall = 0, shmat_syscall = 0; log_debug("Operating on architecture: %s", seccomp_arch_to_string(arch)); + switch (arch) { + + case SCMP_ARCH_X86: + filter_syscall = SCMP_SYS(mmap2); + block_syscall = SCMP_SYS(mmap); + + /* Note that shmat() isn't available on i386, where the call is multiplexed through ipc(). We + * ignore that here, which means there's still a way to get writable/executable memory, if an + * IPC key is mapped like this on i386. That's a pity, but no total loss. */ + break; + + case SCMP_ARCH_X86_64: + case SCMP_ARCH_X32: + filter_syscall = SCMP_SYS(mmap); + shmat_syscall = SCMP_SYS(shmat); + break; + + /* Please add more definitions here, if you port systemd to other architectures! */ + +#if !defined(__i386__) && !defined(__x86_64__) +#warning "Consider adding the right mmap() syscall definitions here!" +#endif + } + + /* Can't filter mmap() on this arch, then skip it */ + if (filter_syscall == 0) + continue; + r = seccomp_init_for_arch(&seccomp, arch, SCMP_ACT_ALLOW); if (r < 0) return r; - r = seccomp_rule_add_exact( - seccomp, - SCMP_ACT_ERRNO(EPERM), - SCMP_SYS(mmap), - 1, - SCMP_A2(SCMP_CMP_MASKED_EQ, PROT_EXEC|PROT_WRITE, PROT_EXEC|PROT_WRITE)); - if (r < 0) { - log_debug_errno(r, "Failed to add mmap() rule for architecture %s, skipping: %m", seccomp_arch_to_string(arch)); - continue; + if (filter_syscall != 0) { + r = seccomp_rule_add_exact( + seccomp, + SCMP_ACT_ERRNO(EPERM), + filter_syscall, + 1, + SCMP_A2(SCMP_CMP_MASKED_EQ, PROT_EXEC|PROT_WRITE, PROT_EXEC|PROT_WRITE)); + if (r < 0) { + _cleanup_free_ char *n = NULL; + + n = seccomp_syscall_resolve_num_arch(arch, filter_syscall); + log_debug_errno(r, "Failed to add %s() rule for architecture %s, skipping: %m", + strna(n), + seccomp_arch_to_string(arch)); + continue; + } + } + + if (block_syscall != 0) { + r = seccomp_rule_add_exact( + seccomp, + SCMP_ACT_ERRNO(EPERM), + block_syscall, + 0); + if (r < 0) { + _cleanup_free_ char *n = NULL; + + n = seccomp_syscall_resolve_num_arch(arch, block_syscall); + log_debug_errno(r, "Failed to add %s() rule for architecture %s, skipping: %m", + strna(n), + seccomp_arch_to_string(arch)); + continue; + } } r = seccomp_rule_add_exact( @@ -1117,15 +1273,17 @@ int seccomp_memory_deny_write_execute(void) { continue; } - r = seccomp_rule_add_exact( - seccomp, - SCMP_ACT_ERRNO(EPERM), - SCMP_SYS(shmat), - 1, - SCMP_A2(SCMP_CMP_MASKED_EQ, SHM_EXEC, SHM_EXEC)); - if (r < 0) { - log_debug_errno(r, "Failed to add shmat() rule for architecture %s, skipping: %m", seccomp_arch_to_string(arch)); - continue; + if (shmat_syscall != 0) { + r = seccomp_rule_add_exact( + seccomp, + SCMP_ACT_ERRNO(EPERM), + SCMP_SYS(shmat), + 1, + SCMP_A2(SCMP_CMP_MASKED_EQ, SHM_EXEC, SHM_EXEC)); + if (r < 0) { + log_debug_errno(r, "Failed to add shmat() rule for architecture %s, skipping: %m", seccomp_arch_to_string(arch)); + continue; + } } r = seccomp_load(seccomp); diff --git a/src/shared/seccomp-util.h b/src/shared/seccomp-util.h index 4438e87fa6..61f94de638 100644 --- a/src/shared/seccomp-util.h +++ b/src/shared/seccomp-util.h @@ -76,6 +76,28 @@ int seccomp_restrict_address_families(Set *address_families, bool whitelist); int seccomp_restrict_realtime(void); int seccomp_memory_deny_write_execute(void); +#if defined(__i386__) || defined(__s390x__) || defined(__s390__) || defined(__powerpc64__) || defined(__powerpc__) || defined (__mips__) +/* On these archs, socket() is implemented via the socketcall() syscall multiplexer, and we can't restrict it hence via + * seccomp */ +#define SECCOMP_RESTRICT_ADDRESS_FAMILIES_BROKEN 1 +#else +#define SECCOMP_RESTRICT_ADDRESS_FAMILIES_BROKEN 0 +#endif + +/* mmap() blocking is only available on some archs for now */ +#if defined(__x86_64__) || defined(__i386__) +#define SECCOMP_MEMORY_DENY_WRITE_EXECUTE_BROKEN 0 +#else +#define SECCOMP_MEMORY_DENY_WRITE_EXECUTE_BROKEN 1 +#endif + +/* we don't know the right order of the clone() parameters except for these archs, for now */ +#if defined(__x86_64__) || defined(__i386__) || defined(__s390x__) || defined(__s390__) +#define SECCOMP_RESTRICT_NAMESPACES_BROKEN 0 +#else +#define SECCOMP_RESTRICT_NAMESPACES_BROKEN 1 +#endif + extern const uint32_t seccomp_local_archs[]; #define SECCOMP_FOREACH_LOCAL_ARCH(arch) \ diff --git a/src/system-update-generator/system-update-generator.c b/src/system-update-generator/system-update-generator.c index 6ffb169b21..f1514c9638 100644 --- a/src/system-update-generator/system-update-generator.c +++ b/src/system-update-generator/system-update-generator.c @@ -22,6 +22,7 @@ #include "fs-util.h" #include "log.h" +#include "proc-cmdline.h" #include "special.h" #include "string-util.h" #include "util.h" @@ -47,11 +48,27 @@ static int generate_symlink(void) { if (symlink(SYSTEM_DATA_UNIT_PATH "/system-update.target", p) < 0) return log_error_errno(errno, "Failed to create symlink %s: %m", p); + return 1; +} + +static int parse_proc_cmdline_item(const char *key, const char *value, void *data) { + assert(key); + + /* Check if a run level is specified on the kernel command line. The + * command line has higher priority than any on-disk configuration, so + * it'll make any symlink we create moot. + */ + + if (streq(key, "systemd.unit") && !proc_cmdline_value_missing(key, value)) + log_warning("Offline system update overriden by kernel command line systemd.unit= setting"); + else if (!value && runlevel_to_target(key)) + log_warning("Offline system update overriden by runlevel \"%s\" on the kernel command line", key); + return 0; } int main(int argc, char *argv[]) { - int r; + int r, k; if (argc > 1 && argc != 4) { log_error("This program takes three or no arguments."); @@ -69,5 +86,11 @@ int main(int argc, char *argv[]) { r = generate_symlink(); + if (r > 0) { + k = proc_cmdline_parse(parse_proc_cmdline_item, NULL, 0); + if (k < 0) + log_warning_errno(k, "Failed to parse kernel command line, ignoring: %m"); + } + return r < 0 ? EXIT_FAILURE : EXIT_SUCCESS; } diff --git a/src/systemctl/systemctl.c b/src/systemctl/systemctl.c index 41e8d6075a..2336ae34f4 100644 --- a/src/systemctl/systemctl.c +++ b/src/systemctl/systemctl.c @@ -1922,7 +1922,7 @@ static int get_machine_properties(sd_bus *bus, struct machine_info *mi) { bus = container; } - r = bus_map_all_properties(bus, "org.freedesktop.systemd1", "/org/freedesktop/systemd1", machine_info_property_map, mi); + r = bus_map_all_properties(bus, "org.freedesktop.systemd1", "/org/freedesktop/systemd1", machine_info_property_map, NULL, mi); if (r < 0) return r; @@ -1957,7 +1957,7 @@ static int get_machine_list( machine_infos[c].name = hn; hn = NULL; - get_machine_properties(bus, &machine_infos[c]); + (void) get_machine_properties(bus, &machine_infos[c]); c++; } @@ -1987,7 +1987,7 @@ static int get_machine_list( return log_oom(); } - get_machine_properties(NULL, &machine_infos[c]); + (void) get_machine_properties(NULL, &machine_infos[c]); c++; } @@ -2484,7 +2484,7 @@ static int unit_file_find_path(LookupPaths *lp, const char *unit_name, char **un _cleanup_free_ char *path = NULL, *lpath = NULL; int r; - path = path_join(arg_root, *p, unit_name); + path = path_join(NULL, *p, unit_name); if (!path) return log_oom(); @@ -2601,7 +2601,8 @@ static int unit_find_paths( return log_error_errno(r, "Failed to add unit name: %m"); if (dropin_paths) { - r = unit_file_find_dropin_paths(lp->search_path, NULL, names, &dropins); + r = unit_file_find_dropin_conf_paths(arg_root, lp->search_path, + NULL, names, &dropins); if (r < 0) return r; } @@ -4952,7 +4953,7 @@ static int show_one( return log_error_errno(r, "Failed to get properties: %s", bus_error_message(&error, r)); if (unit) { - r = bus_message_map_all_properties(reply, property_map, &info); + r = bus_message_map_all_properties(reply, property_map, &error, &info); if (r < 0) return log_error_errno(r, "Failed to map properties: %s", bus_error_message(&error, r)); @@ -5029,13 +5030,10 @@ static int show_one( r = 0; if (show_properties) { char **pp; - int not_found_level = streq(verb, "show") ? LOG_DEBUG : LOG_WARNING; STRV_FOREACH(pp, arg_properties) - if (!set_contains(found_properties, *pp)) { - log_full(not_found_level, "Property %s does not exist.", *pp); - r = -ENXIO; - } + if (!set_contains(found_properties, *pp)) + log_debug("Property %s does not exist.", *pp); } else if (streq(verb, "help")) show_unit_help(&info); @@ -5127,8 +5125,9 @@ static int show_all( static int show_system_status(sd_bus *bus) { char since1[FORMAT_TIMESTAMP_RELATIVE_MAX], since2[FORMAT_TIMESTAMP_MAX]; - _cleanup_free_ char *hn = NULL; + _cleanup_(sd_bus_error_free) sd_bus_error error = SD_BUS_ERROR_NULL; _cleanup_(machine_info_clear) struct machine_info mi = {}; + _cleanup_free_ char *hn = NULL; const char *on, *off; int r; @@ -5136,9 +5135,9 @@ static int show_system_status(sd_bus *bus) { if (!hn) return log_oom(); - r = bus_map_all_properties(bus, "org.freedesktop.systemd1", "/org/freedesktop/systemd1", machine_info_property_map, &mi); + r = bus_map_all_properties(bus, "org.freedesktop.systemd1", "/org/freedesktop/systemd1", machine_info_property_map, &error, &mi); if (r < 0) - return log_error_errno(r, "Failed to read server status: %m"); + return log_error_errno(r, "Failed to read server status: %s", bus_error_message(&error, r)); if (streq_ptr(mi.state, "degraded")) { on = ansi_highlight_red(); @@ -5655,16 +5654,22 @@ static int switch_root(int argc, char *argv[], void *userdata) { } /* Instruct PID1 to exclude us from its killing spree applied during - * the transition from the initrd to the main system otherwise we would - * exit with a failure status even though the switch to the new root - * has succeed. */ - if (in_initrd()) - argv_cmdline[0] = '@'; + * the transition. Otherwise we would exit with a failure status even + * though the switch to the new root has succeed. */ + argv_cmdline[0] = '@'; r = acquire_bus(BUS_MANAGER, &bus); if (r < 0) return r; + /* If we are slow to exit after the root switch, the new systemd instance + * will send us a signal to terminate. Just ignore it and exit normally. + * This way the unit does not end up as failed. + */ + r = ignore_signals(SIGTERM, -1); + if (r < 0) + log_warning_errno(r, "Failed to change disposition of SIGTERM to ignore: %m"); + log_debug("Switching root - root: %s; init: %s", root, strna(init)); r = sd_bus_call_method( @@ -5676,8 +5681,11 @@ static int switch_root(int argc, char *argv[], void *userdata) { &error, NULL, "ss", root, init); - if (r < 0) + if (r < 0) { + (void) default_signals(SIGTERM, -1); + return log_error_errno(r, "Failed to switch root: %s", bus_error_message(&error, r)); + } return 0; } @@ -6021,7 +6029,7 @@ static int unit_exists(const char *unit) { if (r < 0) return log_error_errno(r, "Failed to get properties: %s", bus_error_message(&error, r)); - r = bus_message_map_all_properties(reply, property_map, &info); + r = bus_message_map_all_properties(reply, property_map, &error, &info); if (r < 0) return log_error_errno(r, "Failed to map properties: %s", bus_error_message(&error, r)); @@ -6211,21 +6219,25 @@ static int enable_unit(int argc, char *argv[], void *userdata) { "4) In case of template units, the unit is meant to be enabled with some\n" " instance name specified."); - if (arg_now && n_changes > 0 && STR_IN_SET(argv[0], "enable", "disable", "mask")) { - char *new_args[n_changes + 2]; + if (arg_now && STR_IN_SET(argv[0], "enable", "disable", "mask")) { sd_bus *bus; - unsigned i; + unsigned len, i; r = acquire_bus(BUS_MANAGER, &bus); if (r < 0) goto finish; - new_args[0] = (char*) (streq(argv[0], "enable") ? "start" : "stop"); - for (i = 0; i < n_changes; i++) - new_args[i + 1] = basename(changes[i].path); - new_args[i + 1] = NULL; + len = strv_length(names); + { + char *new_args[len + 2]; + + new_args[0] = (char*) (streq(argv[0], "enable") ? "start" : "stop"); + for (i = 0; i < len; i++) + new_args[i + 1] = basename(names[i]); + new_args[i + 1] = NULL; - r = start_unit(strv_length(new_args), new_args, userdata); + r = start_unit(len + 1, new_args, userdata); + } } finish: @@ -6928,6 +6940,7 @@ static void systemctl_help(void) { " -a --all Show all properties/all units currently in memory,\n" " including dead/empty ones. To list all units installed on\n" " the system, use the 'list-unit-files' command instead.\n" + " --failed Same as --state=failed\n" " -l --full Don't ellipsize unit names on output\n" " -r --recursive Show unit list of host and local containers\n" " --reverse Show reverse dependencies with 'list-dependencies'\n" diff --git a/src/test/test-af-list.c b/src/test/test-af-list.c index e2479133de..e5ca54c8e7 100644 --- a/src/test/test-af-list.c +++ b/src/test/test-af-list.c @@ -24,6 +24,7 @@ #include "string-util.h" #include "util.h" +_unused_ \ static const struct af_name* lookup_af(register const char *str, register GPERF_LEN_TYPE len); #include "af-from-name.h" diff --git a/src/test/test-arphrd-list.c b/src/test/test-arphrd-list.c index 8f4f342faa..bb51518c9c 100644 --- a/src/test/test-arphrd-list.c +++ b/src/test/test-arphrd-list.c @@ -24,6 +24,7 @@ #include "string-util.h" #include "util.h" +_unused_ \ static const struct arphrd_name* lookup_arphrd(register const char *str, register GPERF_LEN_TYPE len); #include "arphrd-from-name.h" diff --git a/src/test/test-calendarspec.c b/src/test/test-calendarspec.c index 1f34a91b10..f90b73aeaf 100644 --- a/src/test/test-calendarspec.c +++ b/src/test/test-calendarspec.c @@ -192,6 +192,7 @@ int main(int argc, char* argv[]) { test_one("00..07-*-*", "2000..2007-*-* 00:00:00"); test_one("*:20..39/5", "*-*-* *:20..35/5:00"); test_one("00:00:20..40/1", "*-*-* 00:00:20..40"); + test_one("*~03/1,03..05", "*-*~03/1,03..05 00:00:00"); test_next("2016-03-27 03:17:00", "", 12345, 1459048620000000); test_next("2016-03-27 03:17:00", "CET", 12345, 1459041420000000); diff --git a/src/test/test-date.c b/src/test/test-date.c index a8d3f1e083..b77598c81d 100644 --- a/src/test/test-date.c +++ b/src/test/test-date.c @@ -95,6 +95,16 @@ int main(int argc, char *argv[]) { test_one_noutc("@1395716396"); test_should_parse("today UTC"); test_should_fail("today UTC UTC"); + test_should_parse("1970-1-1 UTC"); + test_should_fail("1969-1-1 UTC"); +#if SIZEOF_TIME_T == 8 + test_should_parse("9999-12-30 23:59:59 UTC"); + test_should_fail("9999-12-31 00:00:00 UTC"); + test_should_fail("10000-01-01 00:00:00 UTC"); +#elif SIZEOF_TIME_T == 4 + test_should_parse("2038-01-19 03:14:07 UTC"); + test_should_fail( "2038-01-19 03:14:08 UTC"); +#endif return 0; } diff --git a/src/test/test-execute.c b/src/test/test-execute.c index bc9a2021f9..1e479b9843 100644 --- a/src/test/test-execute.c +++ b/src/test/test-execute.c @@ -422,6 +422,10 @@ static void test_exec_spec_interpolation(Manager *m) { test(m, "exec-spec-interpolation.service", 0, CLD_EXITED); } +static void test_exec_read_only_path_suceed(Manager *m) { + test(m, "exec-read-only-path-succeed.service", 0, CLD_EXITED); +} + static int run_tests(UnitFileScope scope, const test_function_t *tests) { const test_function_t *test = NULL; Manager *m = NULL; @@ -475,6 +479,7 @@ int main(int argc, char *argv[]) { test_exec_oomscoreadjust, test_exec_ioschedulingclass, test_exec_spec_interpolation, + test_exec_read_only_path_suceed, NULL, }; static const test_function_t system_tests[] = { diff --git a/src/test/test-fs-util.c b/src/test/test-fs-util.c index ae68587be9..e774f567e0 100644 --- a/src/test/test-fs-util.c +++ b/src/test/test-fs-util.c @@ -186,6 +186,13 @@ static void test_chase_symlinks(void) { r = chase_symlinks(p, NULL, CHASE_NONEXISTENT, &result); assert_se(r == -ENOENT); + p = strjoina(temp, "/target"); + q = strjoina(temp, "/top"); + assert_se(symlink(q, p) >= 0); + p = strjoina(temp, "/target/idontexist"); + r = chase_symlinks(p, NULL, 0, &result); + assert_se(r == -ENOENT); + assert_se(rm_rf(temp, REMOVE_ROOT|REMOVE_PHYSICAL) >= 0); } @@ -298,12 +305,23 @@ static void test_var_tmp(void) { } } +static void test_dot_or_dot_dot(void) { + assert_se(!dot_or_dot_dot(NULL)); + assert_se(!dot_or_dot_dot("")); + assert_se(!dot_or_dot_dot("xxx")); + assert_se(dot_or_dot_dot(".")); + assert_se(dot_or_dot_dot("..")); + assert_se(!dot_or_dot_dot(".foo")); + assert_se(!dot_or_dot_dot("..foo")); +} + int main(int argc, char *argv[]) { test_unlink_noerrno(); test_readlink_and_make_absolute(); test_get_files_in_directory(); test_var_tmp(); test_chase_symlinks(); + test_dot_or_dot_dot(); return 0; } diff --git a/src/test/test-install-root.c b/src/test/test-install-root.c index d0bc8004f3..575401cb91 100644 --- a/src/test/test-install-root.c +++ b/src/test/test-install-root.c @@ -736,6 +736,28 @@ static void test_preset_order(const char *root) { assert_se(unit_file_get_state(UNIT_FILE_SYSTEM, root, "prefix-2.service", &state) >= 0 && state == UNIT_FILE_DISABLED); } +static void test_static_instance(const char *root) { + UnitFileState state; + const char *p; + + assert_se(unit_file_get_state(UNIT_FILE_SYSTEM, root, "static-instance@.service", &state) == -ENOENT); + assert_se(unit_file_get_state(UNIT_FILE_SYSTEM, root, "static-instance@foo.service", &state) == -ENOENT); + + p = strjoina(root, "/usr/lib/systemd/system/static-instance@.service"); + assert_se(write_string_file(p, + "[Install]\n" + "WantedBy=multi-user.target\n", WRITE_STRING_FILE_CREATE) >= 0); + + assert_se(unit_file_get_state(UNIT_FILE_SYSTEM, root, "static-instance@.service", &state) >= 0 && state == UNIT_FILE_DISABLED); + assert_se(unit_file_get_state(UNIT_FILE_SYSTEM, root, "static-instance@foo.service", &state) >= 0 && state == UNIT_FILE_DISABLED); + + p = strjoina(root, "/usr/lib/systemd/system/static-instance@foo.service"); + assert_se(symlink("static-instance@.service", p) >= 0); + + assert_se(unit_file_get_state(UNIT_FILE_SYSTEM, root, "static-instance@.service", &state) >= 0 && state == UNIT_FILE_DISABLED); + assert_se(unit_file_get_state(UNIT_FILE_SYSTEM, root, "static-instance@foo.service", &state) >= 0 && state == UNIT_FILE_STATIC); +} + int main(int argc, char *argv[]) { char root[] = "/tmp/rootXXXXXX"; const char *p; @@ -766,6 +788,7 @@ int main(int argc, char *argv[]) { test_preset_and_list(root); test_preset_order(root); test_revert(root); + test_static_instance(root); assert_se(rm_rf(root, REMOVE_ROOT|REMOVE_PHYSICAL) >= 0); diff --git a/src/test/test-ns.c b/src/test/test-ns.c index c99bcb371b..0125d905a6 100644 --- a/src/test/test-ns.c +++ b/src/test/test-ns.c @@ -77,6 +77,7 @@ int main(int argc, char *argv[]) { log_info("Not chrooted"); r = setup_namespace(root_directory, + NULL, &ns_info, (char **) writable, (char **) readonly, @@ -86,6 +87,7 @@ int main(int argc, char *argv[]) { var_tmp_dir, PROTECT_HOME_NO, PROTECT_SYSTEM_NO, + 0, 0); if (r < 0) { log_error_errno(r, "Failed to setup namespace: %m"); diff --git a/src/test/test-nss.c b/src/test/test-nss.c index 4ccfe75147..b59cb7aa69 100644 --- a/src/test/test-nss.c +++ b/src/test/test-nss.c @@ -511,7 +511,7 @@ int main(int argc, char **argv) { _cleanup_free_ char *dir = NULL; _cleanup_strv_free_ char **modules = NULL, **names = NULL; _cleanup_free_ struct local_address *addresses = NULL; - int n_addresses; + int n_addresses = 0; char **module; int r; diff --git a/src/test/test-seccomp.c b/src/test/test-seccomp.c index 6f15879c45..34a1275162 100644 --- a/src/test/test-seccomp.c +++ b/src/test/test-seccomp.c @@ -158,6 +158,8 @@ static void test_restrict_namespace(void) { assert_se(streq(s, "cgroup ipc net mnt pid user uts")); assert_se(namespace_flag_from_string_many(s, &ul) == 0 && ul == NAMESPACE_FLAGS_ALL); +#if SECCOMP_RESTRICT_NAMESPACES_BROKEN == 0 + if (!is_seccomp_available()) return; if (geteuid() != 0) @@ -216,6 +218,7 @@ static void test_restrict_namespace(void) { } assert_se(wait_for_terminate_and_warn("nsseccomp", pid, true) == EXIT_SUCCESS); +#endif } static void test_protect_sysctl(void) { @@ -283,8 +286,14 @@ static void test_restrict_address_families(void) { assert_se(fd >= 0); safe_close(fd); +#if SECCOMP_RESTRICT_ADDRESS_FAMILIES_BROKEN + fd = socket(AF_UNIX, SOCK_DGRAM, 0); + assert_se(fd >= 0); + safe_close(fd); +#else assert_se(socket(AF_UNIX, SOCK_DGRAM, 0) < 0); assert_se(errno == EAFNOSUPPORT); +#endif fd = socket(AF_NETLINK, SOCK_DGRAM, 0); assert_se(fd >= 0); @@ -300,11 +309,21 @@ static void test_restrict_address_families(void) { assert_se(fd >= 0); safe_close(fd); +#if SECCOMP_RESTRICT_ADDRESS_FAMILIES_BROKEN + fd = socket(AF_UNIX, SOCK_DGRAM, 0); + assert_se(fd >= 0); + safe_close(fd); + + fd = socket(AF_NETLINK, SOCK_DGRAM, 0); + assert_se(fd >= 0); + safe_close(fd); +#else assert_se(socket(AF_UNIX, SOCK_DGRAM, 0) < 0); assert_se(errno == EAFNOSUPPORT); assert_se(socket(AF_NETLINK, SOCK_DGRAM, 0) < 0); assert_se(errno == EAFNOSUPPORT); +#endif _exit(EXIT_SUCCESS); } @@ -368,11 +387,21 @@ static void test_memory_deny_write_execute(void) { assert_se(p != MAP_FAILED); assert_se(munmap(p, page_size()) >= 0); - seccomp_memory_deny_write_execute(); + p = mmap(NULL, page_size(), PROT_WRITE|PROT_READ, MAP_PRIVATE|MAP_ANONYMOUS, -1,0); + assert_se(p != MAP_FAILED); + assert_se(munmap(p, page_size()) >= 0); + assert_se(seccomp_memory_deny_write_execute() >= 0); + +#if SECCOMP_MEMORY_DENY_WRITE_EXECUTE_BROKEN + p = mmap(NULL, page_size(), PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_ANONYMOUS, -1,0); + assert_se(p != MAP_FAILED); + assert_se(munmap(p, page_size()) >= 0); +#else p = mmap(NULL, page_size(), PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_ANONYMOUS, -1,0); assert_se(p == MAP_FAILED); assert_se(errno == EPERM); +#endif p = mmap(NULL, page_size(), PROT_WRITE|PROT_READ, MAP_PRIVATE|MAP_ANONYMOUS, -1,0); assert_se(p != MAP_FAILED); diff --git a/src/test/test-string-util.c b/src/test/test-string-util.c index e43373b0f5..4b3e924cfb 100644 --- a/src/test/test-string-util.c +++ b/src/test/test-string-util.c @@ -29,31 +29,20 @@ static void test_string_erase(void) { assert_se(streq(string_erase(x), "")); x = strdupa("1"); - assert_se(streq(string_erase(x), "x")); - - x = strdupa("12"); - assert_se(streq(string_erase(x), "xx")); - - x = strdupa("123"); - assert_se(streq(string_erase(x), "xxx")); - - x = strdupa("1234"); - assert_se(streq(string_erase(x), "xxxx")); - - x = strdupa("12345"); - assert_se(streq(string_erase(x), "xxxxx")); - - x = strdupa("123456"); - assert_se(streq(string_erase(x), "xxxxxx")); - - x = strdupa("1234567"); - assert_se(streq(string_erase(x), "xxxxxxx")); - - x = strdupa("12345678"); - assert_se(streq(string_erase(x), "xxxxxxxx")); + assert_se(streq(string_erase(x), "")); x = strdupa("123456789"); - assert_se(streq(string_erase(x), "xxxxxxxxx")); + assert_se(streq(string_erase(x), "")); + + assert_se(x[1] == '\0'); + assert_se(x[2] == '\0'); + assert_se(x[3] == '\0'); + assert_se(x[4] == '\0'); + assert_se(x[5] == '\0'); + assert_se(x[6] == '\0'); + assert_se(x[7] == '\0'); + assert_se(x[8] == '\0'); + assert_se(x[9] == '\0'); } static void test_ascii_strcasecmp_n(void) { diff --git a/src/test/test-time.c b/src/test/test-time.c index 8259491813..911282bf0c 100644 --- a/src/test/test-time.c +++ b/src/test/test-time.c @@ -17,9 +17,10 @@ along with systemd; If not, see <http://www.gnu.org/licenses/>. ***/ +#include "random-util.h" +#include "string-util.h" #include "strv.h" #include "time-util.h" -#include "random-util.h" static void test_parse_sec(void) { usec_t u; @@ -248,6 +249,30 @@ static void test_format_timestamp(void) { } } +static void test_format_timestamp_utc_one(usec_t t, const char *result) { + char buf[FORMAT_TIMESTAMP_MAX]; + + assert_se(!format_timestamp_utc(buf, sizeof(buf), t) == !result); + + if (result) + assert_se(streq(result, buf)); +} + +static void test_format_timestamp_utc(void) { + test_format_timestamp_utc_one(0, NULL); + test_format_timestamp_utc_one(1, "Thu 1970-01-01 00:00:00 UTC"); + test_format_timestamp_utc_one(USEC_PER_SEC, "Thu 1970-01-01 00:00:01 UTC"); + +#if SIZEOF_TIME_T == 8 + test_format_timestamp_utc_one(USEC_TIMESTAMP_FORMATTABLE_MAX, "Thu 9999-12-30 23:59:59 UTC"); +#elif SIZEOF_TIME_T == 4 + test_format_timestamp_utc_one(USEC_TIMESTAMP_FORMATTABLE_MAX, "Tue 2038-01-19 03:14:07 UTC"); +#endif + + test_format_timestamp_utc_one(USEC_TIMESTAMP_FORMATTABLE_MAX+1, NULL); + test_format_timestamp_utc_one(USEC_INFINITY, NULL); +} + int main(int argc, char *argv[]) { uintmax_t x; @@ -262,6 +287,7 @@ int main(int argc, char *argv[]) { test_usec_add(); test_usec_sub(); test_format_timestamp(); + test_format_timestamp_utc(); /* Ensure time_t is signed */ assert_cc((time_t) -1 < (time_t) 1); diff --git a/src/timedate/timedatectl.c b/src/timedate/timedatectl.c index 553ef67011..281b1534a3 100644 --- a/src/timedate/timedatectl.c +++ b/src/timedate/timedatectl.c @@ -165,6 +165,8 @@ static int show_status(sd_bus *bus, char **args, unsigned n) { { "RTCTimeUSec", "t", NULL, offsetof(StatusInfo, rtc_time) }, {} }; + + _cleanup_(sd_bus_error_free) sd_bus_error error = SD_BUS_ERROR_NULL; int r; assert(bus); @@ -173,9 +175,10 @@ static int show_status(sd_bus *bus, char **args, unsigned n) { "org.freedesktop.timedate1", "/org/freedesktop/timedate1", map, + &error, &info); if (r < 0) - return log_error_errno(r, "Failed to query server: %m"); + return log_error_errno(r, "Failed to query server: %s", bus_error_message(&error, r)); print_status_info(&info); diff --git a/src/tmpfiles/tmpfiles.c b/src/tmpfiles/tmpfiles.c index f4ce9791fb..c4f4d46ca1 100644 --- a/src/tmpfiles/tmpfiles.c +++ b/src/tmpfiles/tmpfiles.c @@ -385,7 +385,7 @@ static int dir_cleanup( usec_t age; _cleanup_free_ char *sub_path = NULL; - if (STR_IN_SET(dent->d_name, ".", "..")) + if (dot_or_dot_dot(dent->d_name)) continue; if (fstatat(dirfd(d), dent->d_name, &s, AT_SYMLINK_NOFOLLOW) < 0) { @@ -1070,9 +1070,7 @@ static int item_do_children(Item *i, const char *path, action_t action) { _cleanup_free_ char *p = NULL; int q; - errno = 0; - - if (STR_IN_SET(de->d_name, ".", "..")) + if (dot_or_dot_dot(de->d_name)) continue; p = strjoin(path, "/", de->d_name); diff --git a/src/tty-ask-password-agent/tty-ask-password-agent.c b/src/tty-ask-password-agent/tty-ask-password-agent.c index b45490be1a..a17c006d57 100644 --- a/src/tty-ask-password-agent/tty-ask-password-agent.c +++ b/src/tty-ask-password-agent/tty-ask-password-agent.c @@ -243,7 +243,7 @@ static int ask_password_plymouth( r = 0; finish: - memory_erase(buffer, sizeof(buffer)); + explicit_bzero(buffer, sizeof(buffer)); return r; } @@ -283,7 +283,7 @@ static int send_passwords(const char *socket_name, char **passwords) { r = log_debug_errno(errno, "sendto(): %m"); finish: - memory_erase(packet, packet_length); + explicit_bzero(packet, packet_length); return r; } diff --git a/src/udev/udev-event.c b/src/udev/udev-event.c index deffefd60b..3f9c3ed0cf 100644 --- a/src/udev/udev-event.c +++ b/src/udev/udev-event.c @@ -73,29 +73,219 @@ void udev_event_unref(struct udev_event *event) { free(event); } +enum subst_type { + SUBST_UNKNOWN, + SUBST_DEVNODE, + SUBST_ATTR, + SUBST_ENV, + SUBST_KERNEL, + SUBST_KERNEL_NUMBER, + SUBST_DRIVER, + SUBST_DEVPATH, + SUBST_ID, + SUBST_MAJOR, + SUBST_MINOR, + SUBST_RESULT, + SUBST_PARENT, + SUBST_NAME, + SUBST_LINKS, + SUBST_ROOT, + SUBST_SYS, +}; + +static size_t subst_format_var(struct udev_event *event, struct udev_device *dev, + enum subst_type type, char *attr, + char *dest, size_t l) { + char *s = dest; + + switch (type) { + case SUBST_DEVPATH: + l = strpcpy(&s, l, udev_device_get_devpath(dev)); + break; + case SUBST_KERNEL: + l = strpcpy(&s, l, udev_device_get_sysname(dev)); + break; + case SUBST_KERNEL_NUMBER: + if (udev_device_get_sysnum(dev) == NULL) + break; + l = strpcpy(&s, l, udev_device_get_sysnum(dev)); + break; + case SUBST_ID: + if (event->dev_parent == NULL) + break; + l = strpcpy(&s, l, udev_device_get_sysname(event->dev_parent)); + break; + case SUBST_DRIVER: { + const char *driver; + + if (event->dev_parent == NULL) + break; + + driver = udev_device_get_driver(event->dev_parent); + if (driver == NULL) + break; + l = strpcpy(&s, l, driver); + break; + } + case SUBST_MAJOR: { + char num[UTIL_PATH_SIZE]; + + sprintf(num, "%u", major(udev_device_get_devnum(dev))); + l = strpcpy(&s, l, num); + break; + } + case SUBST_MINOR: { + char num[UTIL_PATH_SIZE]; + + sprintf(num, "%u", minor(udev_device_get_devnum(dev))); + l = strpcpy(&s, l, num); + break; + } + case SUBST_RESULT: { + char *rest; + int i; + + if (event->program_result == NULL) + break; + /* get part of the result string */ + i = 0; + if (attr != NULL) + i = strtoul(attr, &rest, 10); + if (i > 0) { + char result[UTIL_PATH_SIZE]; + char tmp[UTIL_PATH_SIZE]; + char *cpos; + + strscpy(result, sizeof(result), event->program_result); + cpos = result; + while (--i) { + while (cpos[0] != '\0' && !isspace(cpos[0])) + cpos++; + while (isspace(cpos[0])) + cpos++; + if (cpos[0] == '\0') + break; + } + if (i > 0) { + log_error("requested part of result string not found"); + break; + } + strscpy(tmp, sizeof(tmp), cpos); + /* %{2+}c copies the whole string from the second part on */ + if (rest[0] != '+') { + cpos = strchr(tmp, ' '); + if (cpos) + cpos[0] = '\0'; + } + l = strpcpy(&s, l, tmp); + } else { + l = strpcpy(&s, l, event->program_result); + } + break; + } + case SUBST_ATTR: { + const char *value = NULL; + char vbuf[UTIL_NAME_SIZE]; + size_t len; + int count; + + if (attr == NULL) { + log_error("missing file parameter for attr"); + break; + } + + /* try to read the value specified by "[dmi/id]product_name" */ + if (util_resolve_subsys_kernel(event->udev, attr, vbuf, sizeof(vbuf), 1) == 0) + value = vbuf; + + /* try to read the attribute the device */ + if (value == NULL) + value = udev_device_get_sysattr_value(event->dev, attr); + + /* try to read the attribute of the parent device, other matches have selected */ + if (value == NULL && event->dev_parent != NULL && event->dev_parent != event->dev) + value = udev_device_get_sysattr_value(event->dev_parent, attr); + + if (value == NULL) + break; + + /* strip trailing whitespace, and replace unwanted characters */ + if (value != vbuf) + strscpy(vbuf, sizeof(vbuf), value); + len = strlen(vbuf); + while (len > 0 && isspace(vbuf[--len])) + vbuf[len] = '\0'; + count = util_replace_chars(vbuf, UDEV_ALLOWED_CHARS_INPUT); + if (count > 0) + log_debug("%i character(s) replaced" , count); + l = strpcpy(&s, l, vbuf); + break; + } + case SUBST_PARENT: { + struct udev_device *dev_parent; + const char *devnode; + + dev_parent = udev_device_get_parent(event->dev); + if (dev_parent == NULL) + break; + devnode = udev_device_get_devnode(dev_parent); + if (devnode != NULL) + l = strpcpy(&s, l, devnode + strlen("/dev/")); + break; + } + case SUBST_DEVNODE: + if (udev_device_get_devnode(dev) != NULL) + l = strpcpy(&s, l, udev_device_get_devnode(dev)); + break; + case SUBST_NAME: + if (event->name != NULL) + l = strpcpy(&s, l, event->name); + else if (udev_device_get_devnode(dev) != NULL) + l = strpcpy(&s, l, udev_device_get_devnode(dev) + strlen("/dev/")); + else + l = strpcpy(&s, l, udev_device_get_sysname(dev)); + break; + case SUBST_LINKS: { + struct udev_list_entry *list_entry; + + list_entry = udev_device_get_devlinks_list_entry(dev); + if (list_entry == NULL) + break; + l = strpcpy(&s, l, udev_list_entry_get_name(list_entry) + strlen("/dev/")); + udev_list_entry_foreach(list_entry, udev_list_entry_get_next(list_entry)) + l = strpcpyl(&s, l, " ", udev_list_entry_get_name(list_entry) + strlen("/dev/"), NULL); + break; + } + case SUBST_ROOT: + l = strpcpy(&s, l, "/dev"); + break; + case SUBST_SYS: + l = strpcpy(&s, l, "/sys"); + break; + case SUBST_ENV: + if (attr == NULL) { + break; + } else { + const char *value; + + value = udev_device_get_property_value(event->dev, attr); + if (value == NULL) + break; + l = strpcpy(&s, l, value); + break; + } + default: + log_error("unknown substitution type=%i", type); + break; + } + + return s - dest; +} + size_t udev_event_apply_format(struct udev_event *event, const char *src, char *dest, size_t size, bool replace_whitespace) { struct udev_device *dev = event->dev; - enum subst_type { - SUBST_UNKNOWN, - SUBST_DEVNODE, - SUBST_ATTR, - SUBST_ENV, - SUBST_KERNEL, - SUBST_KERNEL_NUMBER, - SUBST_DRIVER, - SUBST_DEVPATH, - SUBST_ID, - SUBST_MAJOR, - SUBST_MINOR, - SUBST_RESULT, - SUBST_PARENT, - SUBST_NAME, - SUBST_LINKS, - SUBST_ROOT, - SUBST_SYS, - }; static const struct subst_map { const char *name; const char fmt; @@ -132,10 +322,9 @@ size_t udev_event_apply_format(struct udev_event *event, for (;;) { enum subst_type type = SUBST_UNKNOWN; - char attrbuf[UTIL_PATH_SIZE], sbuf[UTIL_PATH_SIZE]; - char *attr = NULL, *_s; - size_t _l; - bool replws = replace_whitespace; + char attrbuf[UTIL_PATH_SIZE]; + char *attr = NULL; + size_t subst_len; while (from[0] != '\0') { if (from[0] == '$') { @@ -204,213 +393,17 @@ subst: attr = NULL; } - /* result subst handles space as field separator */ - if (type == SUBST_RESULT) - replws = false; - - if (replws) { - /* store dest string ptr and remaining len */ - _s = s; - _l = l; - /* temporarily use sbuf */ - s = sbuf; - l = UTIL_PATH_SIZE; - } - - switch (type) { - case SUBST_DEVPATH: - l = strpcpy(&s, l, udev_device_get_devpath(dev)); - break; - case SUBST_KERNEL: - l = strpcpy(&s, l, udev_device_get_sysname(dev)); - break; - case SUBST_KERNEL_NUMBER: - if (udev_device_get_sysnum(dev) == NULL) - break; - l = strpcpy(&s, l, udev_device_get_sysnum(dev)); - break; - case SUBST_ID: - if (event->dev_parent == NULL) - break; - l = strpcpy(&s, l, udev_device_get_sysname(event->dev_parent)); - break; - case SUBST_DRIVER: { - const char *driver; - - if (event->dev_parent == NULL) - break; - - driver = udev_device_get_driver(event->dev_parent); - if (driver == NULL) - break; - l = strpcpy(&s, l, driver); - break; - } - case SUBST_MAJOR: { - char num[UTIL_PATH_SIZE]; - - sprintf(num, "%u", major(udev_device_get_devnum(dev))); - l = strpcpy(&s, l, num); - break; - } - case SUBST_MINOR: { - char num[UTIL_PATH_SIZE]; - - sprintf(num, "%u", minor(udev_device_get_devnum(dev))); - l = strpcpy(&s, l, num); - break; - } - case SUBST_RESULT: { - char *rest; - int i; - - if (event->program_result == NULL) - break; - /* get part of the result string */ - i = 0; - if (attr != NULL) - i = strtoul(attr, &rest, 10); - if (i > 0) { - char result[UTIL_PATH_SIZE]; - char tmp[UTIL_PATH_SIZE]; - char *cpos; - - strscpy(result, sizeof(result), event->program_result); - cpos = result; - while (--i) { - while (cpos[0] != '\0' && !isspace(cpos[0])) - cpos++; - while (isspace(cpos[0])) - cpos++; - if (cpos[0] == '\0') - break; - } - if (i > 0) { - log_error("requested part of result string not found"); - break; - } - strscpy(tmp, sizeof(tmp), cpos); - /* %{2+}c copies the whole string from the second part on */ - if (rest[0] != '+') { - cpos = strchr(tmp, ' '); - if (cpos) - cpos[0] = '\0'; - } - l = strpcpy(&s, l, tmp); - } else { - l = strpcpy(&s, l, event->program_result); - } - break; - } - case SUBST_ATTR: { - const char *value = NULL; - char vbuf[UTIL_NAME_SIZE]; - size_t len; - int count; - - if (attr == NULL) { - log_error("missing file parameter for attr"); - break; - } - - /* try to read the value specified by "[dmi/id]product_name" */ - if (util_resolve_subsys_kernel(event->udev, attr, vbuf, sizeof(vbuf), 1) == 0) - value = vbuf; - - /* try to read the attribute the device */ - if (value == NULL) - value = udev_device_get_sysattr_value(event->dev, attr); - - /* try to read the attribute of the parent device, other matches have selected */ - if (value == NULL && event->dev_parent != NULL && event->dev_parent != event->dev) - value = udev_device_get_sysattr_value(event->dev_parent, attr); - - if (value == NULL) - break; + subst_len = subst_format_var(event, dev, type, attr, s, l); - /* strip trailing whitespace, and replace unwanted characters */ - if (value != vbuf) - strscpy(vbuf, sizeof(vbuf), value); - len = strlen(vbuf); - while (len > 0 && isspace(vbuf[--len])) - vbuf[len] = '\0'; - count = util_replace_chars(vbuf, UDEV_ALLOWED_CHARS_INPUT); - if (count > 0) - log_debug("%i character(s) replaced" , count); - l = strpcpy(&s, l, vbuf); - break; - } - case SUBST_PARENT: { - struct udev_device *dev_parent; - const char *devnode; - - dev_parent = udev_device_get_parent(event->dev); - if (dev_parent == NULL) - break; - devnode = udev_device_get_devnode(dev_parent); - if (devnode != NULL) - l = strpcpy(&s, l, devnode + strlen("/dev/")); - break; - } - case SUBST_DEVNODE: - if (udev_device_get_devnode(dev) != NULL) - l = strpcpy(&s, l, udev_device_get_devnode(dev)); - break; - case SUBST_NAME: - if (event->name != NULL) - l = strpcpy(&s, l, event->name); - else if (udev_device_get_devnode(dev) != NULL) - l = strpcpy(&s, l, udev_device_get_devnode(dev) + strlen("/dev/")); - else - l = strpcpy(&s, l, udev_device_get_sysname(dev)); - break; - case SUBST_LINKS: { - struct udev_list_entry *list_entry; + /* SUBST_RESULT handles spaces itself */ + if (replace_whitespace && type != SUBST_RESULT) + /* util_replace_whitespace can replace in-place, + * and does nothing if subst_len == 0 + */ + subst_len = util_replace_whitespace(s, s, subst_len); - list_entry = udev_device_get_devlinks_list_entry(dev); - if (list_entry == NULL) - break; - l = strpcpy(&s, l, udev_list_entry_get_name(list_entry) + strlen("/dev/")); - udev_list_entry_foreach(list_entry, udev_list_entry_get_next(list_entry)) - l = strpcpyl(&s, l, " ", udev_list_entry_get_name(list_entry) + strlen("/dev/"), NULL); - break; - } - case SUBST_ROOT: - l = strpcpy(&s, l, "/dev"); - break; - case SUBST_SYS: - l = strpcpy(&s, l, "/sys"); - break; - case SUBST_ENV: - if (attr == NULL) { - break; - } else { - const char *value; - - value = udev_device_get_property_value(event->dev, attr); - if (value == NULL) - break; - l = strpcpy(&s, l, value); - break; - } - default: - log_error("unknown substitution type=%i", type); - break; - } - - /* replace whitespace in sbuf and copy to dest */ - if (replws) { - size_t tmplen = UTIL_PATH_SIZE - l; - - /* restore s and l to dest string values */ - s = _s; - l = _l; - - /* copy ws-replaced value to s */ - tmplen = util_replace_whitespace(sbuf, s, MIN(tmplen, l)); - l -= tmplen; - s += tmplen; - } + s += subst_len; + l -= subst_len; } out: diff --git a/src/veritysetup/veritysetup-generator.c b/src/veritysetup/veritysetup-generator.c index 519ac050f9..0bb0bd6e8f 100644 --- a/src/veritysetup/veritysetup-generator.c +++ b/src/veritysetup/veritysetup-generator.c @@ -76,10 +76,10 @@ static int create_device(void) { r = unit_name_from_path(u, ".device", &d); if (r < 0) - return log_error_errno(r, "Failed to to generate unit name: %m"); + return log_error_errno(r, "Failed to generate unit name: %m"); r = unit_name_from_path(v, ".device", &e); if (r < 0) - return log_error_errno(r, "Failed to to generate unit name: %m"); + return log_error_errno(r, "Failed to generate unit name: %m"); f = fopen(p, "wxe"); if (!f) diff --git a/sysctl.d/50-default.conf b/sysctl.d/50-default.conf index f08f32e849..aff99300d9 100644 --- a/sysctl.d/50-default.conf +++ b/sysctl.d/50-default.conf @@ -14,7 +14,8 @@ # System Request functionality of the kernel (SYNC) # # Use kernel.sysrq = 1 to allow all keys. -# See http://fedoraproject.org/wiki/QA/Sysrq for a list of values and keys. +# See https://www.kernel.org/doc/html/latest/admin-guide/sysrq.html for a list +# of values and keys. kernel.sysrq = 16 # Append the PID to the core filename diff --git a/test/TEST-15-DROPIN/Makefile b/test/TEST-15-DROPIN/Makefile new file mode 120000 index 0000000000..e9f93b1104 --- /dev/null +++ b/test/TEST-15-DROPIN/Makefile @@ -0,0 +1 @@ +../TEST-01-BASIC/Makefile
\ No newline at end of file diff --git a/test/TEST-15-DROPIN/test-dropin.sh b/test/TEST-15-DROPIN/test-dropin.sh new file mode 100755 index 0000000000..9d8af99ac4 --- /dev/null +++ b/test/TEST-15-DROPIN/test-dropin.sh @@ -0,0 +1,274 @@ +#! /bin/bash + +set -e +set -x + +_clear_service () { + systemctl stop $1.service 2>/dev/null || : + rm -f /{etc,run,usr/lib}/systemd/system/$1.service + rm -fr /{etc,run,usr/lib}/systemd/system/$1.service.d + rm -fr /{etc,run,usr/lib}/systemd/system/$1.service.{wants,requires} +} + +clear_services () { + for u in $*; do + _clear_service $u + done + systemctl daemon-reload +} + +create_service () { + clear_services $1 + + cat >/etc/systemd/system/$1.service<<EOF +[Unit] +Description=$1 unit + +[Service] +ExecStart=/bin/sleep 100000 +EOF + mkdir -p /{etc,run,usr/lib}/systemd/system/$1.service.d + mkdir -p /etc/systemd/system/$1.service.{wants,requires} + mkdir -p /run/systemd/system/$1.service.{wants,requires} + mkdir -p /usr/lib/systemd/system/$1.service.{wants,requires} +} + +create_services () { + for u in $*; do + create_service $u + done +} + +check_ok () { + [ $# -eq 3 ] || return + + x="$(systemctl show --value -p $2 $1)" + case "$x" in + *$3*) return 0 ;; + *) return 1 + esac +} + +check_ko () { + ! check_ok "$@" +} + +test_basic_dropins () { + echo "Testing basic dropins..." + + echo "*** test a wants b wants c" + create_services a b c + ln -s ../b.service /etc/systemd/system/a.service.wants/ + ln -s ../c.service /etc/systemd/system/b.service.wants/ + check_ok a Wants b.service + check_ok b Wants c.service + + echo "*** test a wants,requires b" + create_services a b c + ln -s ../b.service /etc/systemd/system/a.service.wants/ + ln -s ../b.service /etc/systemd/system/a.service.requires/ + check_ok a Wants b.service + check_ok a Requires b.service + + echo "*** test a wants nonexistent" + create_service a + ln -s ../nonexistent.service /etc/systemd/system/a.service.wants/ + check_ok a Wants nonexistent.service + systemctl start a + systemctl stop a + + echo "*** test a requires nonexistent" + ln -sf ../nonexistent.service /etc/systemd/system/a.service.requires/ + systemctl daemon-reload + check_ok a Requires nonexistent.service + + # 'b' is already loaded when 'c' pulls it in via a dropin. + echo "*** test a,c require b" + create_services a b c + ln -sf ../b.service /etc/systemd/system/a.service.requires/ + ln -sf ../b.service /etc/systemd/system/c.service.requires/ + systemctl start a + check_ok c Requires b.service + systemctl stop a b + + # 'b' is already loaded when 'c' pulls it in via an alias dropin. + echo "*** test a wants alias" + create_services a b c + ln -sf c.service /etc/systemd/system/c1.service + ln -sf ../c.service /etc/systemd/system/a.service.wants/ + ln -sf ../c1.service /etc/systemd/system/b.service.wants/ + systemctl start a + check_ok a Wants c.service + check_ok b Wants c.service + systemctl stop a c + + clear_services a b c +} + +test_template_dropins () { + echo "Testing template dropins..." + + create_services foo bar@ yup@ + + ln -s /etc/systemd/system/bar@.service /etc/systemd/system/foo.service.wants/bar@1.service + check_ok foo Wants bar@1.service + + clear_services foo bar@ yup@ +} + +test_alias_dropins () { + echo "Testing alias dropins..." + + echo "*** test a wants b1 alias of b" + create_services a b + ln -sf b.service /etc/systemd/system/b1.service + ln -sf ../b1.service /etc/systemd/system/a.service.wants/ + check_ok a Wants b.service + systemctl start a + systemctl --quiet is-active b + systemctl stop a b + rm /etc/systemd/system/b1.service + clear_services a b + + # A weird behavior: the dependencies for 'a' may vary. It can be + # changed by loading an alias... + # + # [1] 'a1' is loaded and then "renamed" into 'a'. 'a1' is therefore + # part of the names set so all its specific dropins are loaded. + # + # [2] 'a' is already loaded. 'a1' is simply only merged into 'a' so + # none of its dropins are loaded ('y' is missing from the deps). + echo "*** test 2" + create_services a x y + mkdir -p /etc/systemd/system/a1.service.wants/ + ln -sf a.service /etc/systemd/system/a1.service + ln -sf ../x.service /etc/systemd/system/a.service.wants/ + ln -sf ../y.service /etc/systemd/system/a1.service.wants/ + check_ok a1 Wants x.service # see [1] + check_ok a1 Wants y.service + systemctl start a + check_ok a1 Wants x.service # see [2] + check_ko a1 Wants y.service + systemctl stop a x y + rm /etc/systemd/system/a1.service + + clear_services a x y +} + +test_masked_dropins () { + echo "Testing masked dropins..." + + create_services a b + + # 'b' is masked for both deps + echo "*** test a wants,requires b is masked" + ln -sf /dev/null /etc/systemd/system/a.service.wants/b.service + ln -sf /dev/null /etc/systemd/system/a.service.requires/b.service + check_ko a Wants b.service + check_ko a Requires b.service + + # 'a' wants 'b' and 'b' is masked at a lower level + echo "*** test a wants b, mask override" + ln -sf ../b.service /etc/systemd/system/a.service.wants/b.service + ln -sf /dev/null /usr/lib/systemd/system/a.service.wants/b.service + check_ok a Wants b.service + + # 'a' wants 'b' and 'b' is masked at a higher level + echo "*** test a wants b, mask" + ln -sf /dev/null /etc/systemd/system/a.service.wants/b.service + ln -sf ../b.service /usr/lib/systemd/system/a.service.wants/b.service + check_ko a Wants b.service + + # 'b1' is an alias for 'b': masking 'b' dep should not influence 'b1' dep + echo "*** test a wants b, b1, and one is masked" + create_services a b + ln -sf b.service /etc/systemd/system/b1.service + ln -sf /dev/null /etc/systemd/system/a.service.wants/b.service + ln -sf ../b1.service /usr/lib/systemd/system/a.service.wants/b1.service + systemctl cat a + systemctl show -p Wants,Requires a + systemctl cat b1 + systemctl show -p Wants,Requires b1 + check_ok a Wants b.service + check_ko a Wants b1.service # the alias does not show up in the list of units + rm /etc/systemd/system/b1.service + + # 'b1' is an alias for 'b': masking 'b1' should not influence 'b' dep + echo "*** test a wants b, alias dep is masked" + create_services a b + ln -sf b.service /etc/systemd/system/b1.service + ln -sf /dev/null /etc/systemd/system/a.service.wants/b1.service + ln -sf ../b.service /usr/lib/systemd/system/a.service.wants/b.service + check_ok a Wants b.service + check_ko a Wants b1.service # the alias does not show up in the list of units + rm /etc/systemd/system/b1.service + + # 'a' has Wants=b.service but also has a masking + # dropin 'b': 'b' should still be pulled in. + echo "*** test a wants b both ways" + create_services a b + ln -sf /dev/null /etc/systemd/system/a.service.wants/b.service + cat >/usr/lib/systemd/system/a.service.d/wants-b.conf<<EOF +[Unit] +Wants=b.service +EOF + check_ok a Wants b.service + + # mask a dropin that points to an nonexistent unit. + echo "*** test a wants nonexistent is masked" + create_services a + ln -sf /dev/null /etc/systemd/system/a.service.requires/nonexistent.service + ln -sf ../nonexistent.service /usr/lib/systemd/system/a.service.requires/ + check_ko a Requires nonexistent.service + + # 'b' is already loaded when 'c' pulls it in via a dropin but 'b' is + # masked at a higher level. + echo "*** test a wants b is masked" + create_services a b c + ln -sf ../b.service /etc/systemd/system/a.service.requires/ + ln -sf ../b.service /run/systemd/system/c.service.requires/ + ln -sf /dev/null /etc/systemd/system/c.service.requires/b.service + systemctl start a + check_ko c Requires b.service + systemctl stop a b + + # 'b' is already loaded when 'c' pulls it in via a dropin but 'b' is + # masked at a lower level. + echo "*** test a requires b is masked" + create_services a b c + ln -sf ../b.service /etc/systemd/system/a.service.requires/ + ln -sf ../b.service /etc/systemd/system/c.service.requires/ + ln -sf /dev/null /run/systemd/system/c.service.requires/b.service + systemctl start a + check_ok c Requires b.service + systemctl stop a b + + # 'a' requires 2 aliases of 'b' and one of them is a mask. + echo "*** test a requires alias of b, other alias masked" + create_services a b + ln -sf b.service /etc/systemd/system/b1.service + ln -sf b.service /etc/systemd/system/b2.service + ln -sf /dev/null /etc/systemd/system/a.service.requires/b1.service + ln -sf ../b1.service /run/systemd/system/a.service.requires/ + ln -sf ../b2.service /usr/lib/systemd/system/a.service.requires/ + check_ok a Requires b + + # Same as above but now 'b' is masked. + echo "*** test a requires alias of b, b dep masked" + create_services a b + ln -sf b.service /etc/systemd/system/b1.service + ln -sf b.service /etc/systemd/system/b2.service + ln -sf ../b1.service /run/systemd/system/a.service.requires/ + ln -sf ../b2.service /usr/lib/systemd/system/a.service.requires/ + ln -sf /dev/null /etc/systemd/system/a.service.requires/b.service + check_ok a Requires b + + clear_services a b +} + +test_basic_dropins +test_template_dropins +test_alias_dropins +test_masked_dropins + +touch /testok diff --git a/test/TEST-15-DROPIN/test.sh b/test/TEST-15-DROPIN/test.sh new file mode 100755 index 0000000000..1b460db7b1 --- /dev/null +++ b/test/TEST-15-DROPIN/test.sh @@ -0,0 +1,46 @@ +#!/bin/bash +# -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*- +# ex: ts=8 sw=4 sts=4 et filetype=sh + +TEST_DESCRIPTION="Dropin tests" + +. $TEST_BASE_DIR/test-functions + + +test_run_nspawn() { + if ! run_nspawn; then + dwarn "can't run systemd-nspawn, skipping" + return 0 + fi + check_result_nspawn +} + +test_run() { + test_run_nspawn || return +} + +test_setup() { + # create the basic filesystem layout + setup_basic_environment >/dev/null + + # mask some services that we do not want to run in these tests + ln -s /dev/null $initdir/etc/systemd/system/systemd-hwdb-update.service + ln -s /dev/null $initdir/etc/systemd/system/systemd-journal-catalog-update.service + ln -s /dev/null $initdir/etc/systemd/system/systemd-networkd.service + ln -s /dev/null $initdir/etc/systemd/system/systemd-networkd.socket + ln -s /dev/null $initdir/etc/systemd/system/systemd-resolved.service + + # import the test scripts in the rootfs and plug them in systemd + cp testsuite.service $initdir/etc/systemd/system/ + cp test-dropin.sh $initdir/ + setup_testsuite + + # create dedicated rootfs for nspawn (located in $TESTDIR/nspawn-root) + setup_nspawn_root +} + +test_cleanup() { + return 0 +} + +do_test "$@" diff --git a/test/TEST-15-DROPIN/testsuite.service b/test/TEST-15-DROPIN/testsuite.service new file mode 100644 index 0000000000..d9790c2610 --- /dev/null +++ b/test/TEST-15-DROPIN/testsuite.service @@ -0,0 +1,7 @@ +[Unit] +Description=Testsuite service +After=multi-user.target + +[Service] +ExecStart=/test-dropin.sh +Type=oneshot diff --git a/test/create-sys-script.py b/test/create-sys-script.py new file mode 100755 index 0000000000..4b7abd24ae --- /dev/null +++ b/test/create-sys-script.py @@ -0,0 +1,183 @@ +#!/usr/bin/python3 + +OUTFILE_HEADER = """#!/usr/bin/python3 +# +# create-sys-script.py +# +# (C) 2017 Canonical Ltd. +# Author: Dan Streetman <dan.streetman@canonical.com> +# +# systemd is free software; you can redistribute it and/or modify it +# under the terms of the GNU Lesser General Public License as published by +# the Free Software Foundation; either version 2.1 of the License, or +# (at your option) any later version. +# +# systemd is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public License +# along with systemd; If not, see <http://www.gnu.org/licenses/>. +# +""" + +# Use this only to (re-)create the test/sys-script.py script, +# after adding or modifying anything in the test/sys/ directory + + +import os, sys, stat, tempfile, filecmp + + +OUTFILE = "sys-script.py" +OUTFILE_MODE = 0o775 + +OUTFILE_FUNCS = r""" +import os, sys + +def d(path, mode): + os.mkdir(path, mode) + +def l(path, src): + os.symlink(src, path) + +def f(path, mode, contents): + with open(path, "wb") as f: + f.write(contents) + os.chmod(path, mode) + +""" + +OUTFILE_MAIN = """ +if len(sys.argv) < 2: + exit("Usage: {} <target dir>".format(sys.argv[0])) + +if not os.path.isdir(sys.argv[1]): + exit("Target dir {} not found".format(sys.argv[1])) + +os.chdir(sys.argv[1]) + +""" + + +def handle_dir(outfile, path): + m = os.lstat(path).st_mode & 0o777 + outfile.write("d('{}', {:#o})\n".format(path, m)) + + +def handle_link(outfile, path): + src = os.readlink(path) + outfile.write("l('{}', '{}')\n".format(path, src)) + + +def escape_single_quotes(b): + # remove the b'' wrapping each line repr + r = repr(b)[2:-1] + # python escapes all ' only if there are ' and " in the string + if '"' not in r: + r = r.replace("'", r"\'") + # return line with all ' escaped + return r + + +def handle_file(outfile, path): + m = os.lstat(path).st_mode & 0o777 + with open(path, "rb") as f: + b = f.read() + if b.count(b"\n") > 1: + r = "\n".join([ escape_single_quotes(l) for l in b.split(b"\n") ]) + r = "b'''{r}'''".format(r=r) + else: + r = repr(b) + outfile.write("f('{}', {:#o}, {})\n".format(path, m, r)) + + +def process_sysdir(outfile): + for (dirpath, dirnames, filenames) in os.walk("sys"): + handle_dir(outfile, dirpath) + for d in dirnames: + path = os.path.join(dirpath, d) + if stat.S_ISLNK(os.lstat(path).st_mode): + handle_link(outfile, path) + for f in filenames: + path = os.path.join(dirpath, f) + mode = os.lstat(path).st_mode + if stat.S_ISLNK(mode): + handle_link(outfile, path) + elif stat.S_ISREG(mode): + handle_file(outfile, path) + + +def verify_dir(tmpd, path_a): + path_b = os.path.join(tmpd, path_a) + mode_a = os.lstat(path_a).st_mode + mode_b = os.lstat(path_b).st_mode + if not stat.S_ISDIR(mode_b): + raise Exception("Not directory") + if (mode_a & 0o777) != (mode_b & 0o777): + raise Exception("Permissions mismatch") + + +def verify_link(tmpd, path_a): + path_b = os.path.join(tmpd, path_a) + if not stat.S_ISLNK(os.lstat(path_b).st_mode): + raise Exception("Not symlink") + if os.readlink(path_a) != os.readlink(path_b): + raise Exception("Symlink dest mismatch") + + +def verify_file(tmpd, path_a): + path_b = os.path.join(tmpd, path_a) + mode_a = os.lstat(path_a).st_mode + mode_b = os.lstat(path_b).st_mode + if not stat.S_ISREG(mode_b): + raise Exception("Not file") + if (mode_a & 0o777) != (mode_b & 0o777): + raise Exception("Permissions mismatch") + if not filecmp.cmp(path_a, path_b, shallow=False): + raise Exception("File contents mismatch") + + +def verify_script(tmpd): + for (dirpath, dirnames, filenames) in os.walk("sys"): + try: + path = dirpath + verify_dir(tmpd, path) + for d in dirnames: + path = os.path.join(dirpath, d) + if stat.S_ISLNK(os.lstat(path).st_mode): + verify_link(tmpd, path) + for f in filenames: + path = os.path.join(dirpath, f) + mode = os.lstat(path).st_mode + if stat.S_ISLNK(mode): + verify_link(tmpd, path) + elif stat.S_ISREG(mode): + verify_file(tmpd, path) + except Exception: + print("FAIL on '{}'".format(path), file=sys.stderr) + raise + + +if __name__ == "__main__": + # Always operate in the dir where this script is + os.chdir(os.path.dirname(sys.argv[0])) + + if not os.path.isdir("sys"): + exit("No sys/ directory; please create before running this") + + print("Creating {} using contents of sys/".format(OUTFILE)) + + with open(OUTFILE, "w") as f: + os.chmod(OUTFILE, OUTFILE_MODE) + f.write(OUTFILE_HEADER.replace(os.path.basename(sys.argv[0]), OUTFILE)) + f.write(OUTFILE_FUNCS) + f.write(OUTFILE_MAIN) + process_sysdir(f) + + with tempfile.TemporaryDirectory() as tmpd: + print("Recreating sys/ using {} at {}".format(OUTFILE, tmpd)) + os.system("./{script} {tmpd}".format(script=OUTFILE, tmpd=tmpd)) + verify_script(tmpd) + + print("Verification successful, {} is correct".format(OUTFILE)) diff --git a/test/networkd-test.py b/test/networkd-test.py index 8599398c1c..e0dddeb053 100755 --- a/test/networkd-test.py +++ b/test/networkd-test.py @@ -201,7 +201,11 @@ class ClientTestBase(NetworkdTestingUtilities): def do_test(self, coldplug=True, ipv6=False, extra_opts='', online_timeout=10, dhcp_mode='yes'): - subprocess.check_call(['systemctl', 'start', 'systemd-resolved']) + try: + subprocess.check_call(['systemctl', 'start', 'systemd-resolved']) + except subprocess.CalledProcessError: + self.show_journal('systemd-resolved.service') + raise self.write_network(self.config, '''\ [Match] Name=%s diff --git a/test/sys-script.py b/test/sys-script.py new file mode 100755 index 0000000000..a9c0046667 --- /dev/null +++ b/test/sys-script.py @@ -0,0 +1,16861 @@ +#!/usr/bin/python3 +# +# sys-script.py +# +# (C) 2017 Canonical Ltd. +# Author: Dan Streetman <dan.streetman@canonical.com> +# +# systemd is free software; you can redistribute it and/or modify it +# under the terms of the GNU Lesser General Public License as published by +# the Free Software Foundation; either version 2.1 of the License, or +# (at your option) any later version. +# +# systemd is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public License +# along with systemd; If not, see <http://www.gnu.org/licenses/>. +# + +import os, sys + +def d(path, mode): + os.mkdir(path, mode) + +def l(path, src): + os.symlink(src, path) + +def f(path, mode, contents): + with open(path, "wb") as f: + f.write(contents) + os.chmod(path, mode) + + +if len(sys.argv) < 2: + exit("Usage: {} <target dir>".format(sys.argv[0])) + +if not os.path.isdir(sys.argv[1]): + exit("Target dir {} not found".format(sys.argv[1])) + +os.chdir(sys.argv[1]) + +d('sys', 0o755) +d('sys/kernel', 0o775) +f('sys/kernel/kexec_crash_loaded', 0o664, b'0\n') +f('sys/kernel/kexec_loaded', 0o664, b'0\n') +f('sys/kernel/uevent_helper', 0o664, b'\n') +f('sys/kernel/vmcoreinfo', 0o664, b'f15380 1000\n') +f('sys/kernel/notes', 0o664, b'\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00GNU\x00Z\r!\x804\xc2\x8atA<"f5(\xe7m\xe8-i-') +f('sys/kernel/uevent_seqnum', 0o664, b'1407\n') +d('sys/kernel/slab', 0o775) +d('sys/kernel/slab/kmalloc-96', 0o775) +f('sys/kernel/slab/kmalloc-96/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-96/ctor', 0o664, b'') +f('sys/kernel/slab/kmalloc-96/hwcache_align', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-96/slab_size', 0o664, b'168\n') +f('sys/kernel/slab/kmalloc-96/total_objects', 0o664, b'768\n') +f('sys/kernel/slab/kmalloc-96/slabs', 0o664, b'32\n') +f('sys/kernel/slab/kmalloc-96/poison', 0o664, b'1\n') +f('sys/kernel/slab/kmalloc-96/alloc_calls', 0o664, b''' 5 sched_create_group+0x1f/0x220 age=8351870/8359354/8366881 pid=1333-2177 cpus=0-1 + 10 __register_sysctl_paths+0x56/0x340 age=8370387/8378535/8379888 pid=1-901 cpus=0-1 + 15 __create_workqueue_key+0x31/0x290 age=8370409/8377818/8380009 pid=1-900 cpus=0-1 + 59 load_module+0x19c0/0x1b30 age=8303111/8368469/8376350 pid=105-2754 cpus=0-1 + 5 __vmalloc_area_node+0xfb/0x140 age=8355400/8371519/8376226 pid=147-1813 cpus=0 + 22 __register_chrdev_region+0x2d/0x1a0 age=8309177/8375269/8380004 pid=1-2711 cpus=0-1 + 1 do_sys_poll+0xdb/0x450 age=9671 pid=2262 cpus=1 + 98 d_alloc+0x19d/0x1f0 age=22395/7516545/8376320 pid=317-13453 cpus=0-1 + 8 sys_eventfd2+0x51/0xb0 age=8339333/8339377/8339421 pid=2400 cpus=0 + 1 mb_cache_create+0x62/0x1f0 age=8379846 pid=1 cpus=1 + 9 sysfs_setattr+0x19a/0x1f0 age=61999/6511912/8377277 pid=63-13308 cpus=0-1 + 1 sysfs_open_file+0x1c5/0x230 age=0 pid=13466 cpus=0 + 17 copy_semundo+0x71/0xc0 age=3847042/8077586/8366263 pid=1370-2590 cpus=0-1 + 2 __crypto_alloc_tfm+0x43/0x1b0 age=8373678/8373678/8373678 pid=126 cpus=1 + 2 pcim_iomap_table+0x45/0x60 age=8379289/8379547/8379805 pid=1 cpus=0-1 + 26 pci_create_attr+0x3d/0x140 age=8378994/8378994/8378995 pid=1 cpus=0 + 8 pci_enable_msi+0xb1/0x2b0 age=8356336/8373963/8379844 pid=1-1541 cpus=0-1 + 1 fb_add_videomode+0x89/0xf0 age=8379841 pid=1 cpus=1 + 1 soft_cursor+0x92/0x220 age=8379841 pid=1 cpus=1 + 20 acpi_os_create_semaphore+0x36/0xaa age=8379969/8380118/8380142 pid=0-1 cpus=0 + 6 acpi_ds_build_internal_package_obj+0xaf/0x1df age=8379981/8379985/8379993 pid=1 cpus=0 + 2 acpi_ds_build_internal_buffer_obj+0xe1/0x121 age=8379986/8379986/8379987 pid=1 cpus=0 + 1 acpi_ev_create_gpe_block+0x5f/0x3bf age=8379999 pid=1 cpus=0 + 62 pnp_new_resource+0x25/0x60 age=8379891/8379894/8379895 pid=1 cpus=0 + 1 tty_register_driver+0x1b3/0x2a0 age=8379806 pid=1 cpus=1 + 5 kbd_connect+0x4e/0xe0 age=8374352/8375743/8379035 pid=17-341 cpus=0-1 + 17 __class_create+0x3d/0xa0 age=8374616/8377737/8380008 pid=1-215 cpus=0-1 + 2 scsi_probe_and_add_lun+0x65e/0xd80 age=8379084/8379252/8379421 pid=1 cpus=0-1 + 3 inet_rtm_newaddr+0xdb/0x220 age=8325560/8353789/8367912 pid=1197-1541 cpus=0-1 + 2 cache_add_dev+0x7c/0x546 age=8379855/8379855/8379856 pid=1 cpus=0 + 22 kernel_param_sysfs_setup+0x2f/0xc9 age=8380005/8380005/8380005 pid=1 cpus=0 + 15 acpi_system_init+0x12e/0x260 age=8379898/8379898/8379899 pid=1 cpus=0 + 1 pci_mmcfg_insert_resources+0x5d/0x123 age=8378994 pid=1 cpus=0 + 1 0xffffffffa0065104 age=8356008 pid=1766 cpus=0 + 1 bitmap_create+0x373/0xad0 [md_mod] age=8370145 pid=916 cpus=0 + 256 r1bio_pool_alloc+0x2f/0x60 [raid1] age=8370154/8370154/8370154 pid=916 cpus=0 + 8 ip6addrlbl_add+0x75/0x330 [ipv6] age=8360215/8360215/8360215 pid=1549 cpus=0 + 1 ip6_route_net_init+0x22/0xd0 [ipv6] age=8360216 pid=1549 cpus=0 + 6 snd_mixer_oss_build_input+0x431/0x5c0 [snd_mixer_oss] age=8355594/8355594/8355595 pid=1813 cpus=0 +''') +f('sys/kernel/slab/kmalloc-96/objs_per_slab', 0o664, b'24\n') +f('sys/kernel/slab/kmalloc-96/shrink', 0o664, b'') +f('sys/kernel/slab/kmalloc-96/trace', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-96/object_size', 0o664, b'96\n') +f('sys/kernel/slab/kmalloc-96/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-96/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-96/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-96/objects_partial', 0o664, b'95\n') +f('sys/kernel/slab/kmalloc-96/objects', 0o664, b'743\n') +f('sys/kernel/slab/kmalloc-96/order', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-96/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/kmalloc-96/store_user', 0o664, b'1\n') +f('sys/kernel/slab/kmalloc-96/align', 0o664, b'8\n') +f('sys/kernel/slab/kmalloc-96/partial', 0o664, b'5\n') +f('sys/kernel/slab/kmalloc-96/validate', 0o664, b'') +f('sys/kernel/slab/kmalloc-96/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/kmalloc-96/free_calls', 0o664, b''' 507 <not-available> age=4303047439 pid=0 cpus=0 + 1 free_notes_attrs+0x4b/0x50 age=8375086 pid=383 cpus=0 + 1 audit_send_list+0x88/0xa0 age=8361087 pid=1538 cpus=1 + 6 __vunmap+0xe9/0x120 age=8309178/8363011/8375091 pid=126-2711 cpus=0-1 + 1 do_sys_poll+0x32b/0x450 age=9672 pid=2262 cpus=1 + 30 d_callback+0x22/0x40 age=22587/7808930/8375651 pid=0-13433 cpus=0-1 + 20 sysfs_release+0x63/0xa0 age=22407/6699376/8376561 pid=165-13453 cpus=0-1 + 1 release_sysfs_dirent+0x22/0xd0 age=8367199 pid=1309 cpus=1 + 116 free_rb_tree_fname+0x5c/0xb0 age=53501/7931736/8376455 pid=163-13373 cpus=0-1 + 7 kobject_uevent_env+0x11a/0x470 age=67088/6542620/8379296 pid=1-419 cpus=0-1 + 1 msi_free_irqs+0xad/0x110 age=8356355 pid=1541 cpus=0 + 1 acpi_os_execute_deferred+0x34/0x39 age=8379958 pid=13 cpus=1 + 1 acpi_walk_resources+0xa4/0xbd age=8379895 pid=1 cpus=0 + 1 acpi_pci_irq_add_prt+0x30b/0x324 age=8379922 pid=1 cpus=0 + 6 scsi_execute_req+0x9f/0xf0 age=8335607/8359788/8379422 pid=1-1456 cpus=0-1 + 9 netlink_destroy_callback+0x21/0x30 age=8325561/8347615/8367913 pid=1197-2527 cpus=0-1 + 12 huft_free+0x1e/0x2f age=8379857/8379857/8379857 pid=1 cpus=0 + 2 r1bio_pool_free+0x9/0x10 [raid1] age=8364428/8364431/8364434 pid=0 cpus=0 +''') +f('sys/kernel/slab/kmalloc-96/aliases', 0o664, b'0\n') +d('sys/kernel/slab/blkdev_requests', 0o775) +f('sys/kernel/slab/blkdev_requests/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/blkdev_requests/ctor', 0o664, b'') +f('sys/kernel/slab/blkdev_requests/hwcache_align', 0o664, b'0\n') +f('sys/kernel/slab/blkdev_requests/slab_size', 0o664, b'376\n') +f('sys/kernel/slab/blkdev_requests/total_objects', 0o664, b'84\n') +f('sys/kernel/slab/blkdev_requests/slabs', 0o664, b'4\n') +f('sys/kernel/slab/blkdev_requests/poison', 0o664, b'1\n') +f('sys/kernel/slab/blkdev_requests/alloc_calls', 0o664, b' 12 mempool_alloc_slab+0x11/0x20 age=61529/5606309/8378864 pid=1-13295 cpus=0-1\n') +f('sys/kernel/slab/blkdev_requests/objs_per_slab', 0o664, b'21\n') +f('sys/kernel/slab/blkdev_requests/shrink', 0o664, b'') +f('sys/kernel/slab/blkdev_requests/trace', 0o664, b'0\n') +f('sys/kernel/slab/blkdev_requests/object_size', 0o664, b'304\n') +f('sys/kernel/slab/blkdev_requests/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/blkdev_requests/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/blkdev_requests/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/blkdev_requests/objects_partial', 0o664, b'8\n') +f('sys/kernel/slab/blkdev_requests/objects', 0o664, b'50\n') +f('sys/kernel/slab/blkdev_requests/order', 0o664, b'1\n') +f('sys/kernel/slab/blkdev_requests/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/blkdev_requests/store_user', 0o664, b'1\n') +f('sys/kernel/slab/blkdev_requests/align', 0o664, b'0\n') +f('sys/kernel/slab/blkdev_requests/partial', 0o664, b'2\n') +f('sys/kernel/slab/blkdev_requests/validate', 0o664, b'') +f('sys/kernel/slab/blkdev_requests/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/blkdev_requests/free_calls', 0o664, b''' 7 <not-available> age=4303046881 pid=0 cpus=0 + 5 mempool_free_slab+0x12/0x20 age=63050/1742015/8378750 pid=0-1456 cpus=0 +''') +f('sys/kernel/slab/blkdev_requests/aliases', 0o664, b'0\n') +d('sys/kernel/slab/tw_sock_TCP', 0o775) +f('sys/kernel/slab/tw_sock_TCP/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/tw_sock_TCP/ctor', 0o664, b'') +f('sys/kernel/slab/tw_sock_TCP/hwcache_align', 0o664, b'1\n') +f('sys/kernel/slab/tw_sock_TCP/slab_size', 0o664, b'256\n') +f('sys/kernel/slab/tw_sock_TCP/total_objects', 0o664, b'16\n') +f('sys/kernel/slab/tw_sock_TCP/slabs', 0o664, b'1\n') +f('sys/kernel/slab/tw_sock_TCP/poison', 0o664, b'1\n') +f('sys/kernel/slab/tw_sock_TCP/alloc_calls', 0o664, b'No data\n') +f('sys/kernel/slab/tw_sock_TCP/objs_per_slab', 0o664, b'16\n') +f('sys/kernel/slab/tw_sock_TCP/shrink', 0o664, b'') +f('sys/kernel/slab/tw_sock_TCP/trace', 0o664, b'0\n') +f('sys/kernel/slab/tw_sock_TCP/object_size', 0o664, b'136\n') +f('sys/kernel/slab/tw_sock_TCP/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/tw_sock_TCP/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/tw_sock_TCP/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/tw_sock_TCP/objects_partial', 0o664, b'0\n') +f('sys/kernel/slab/tw_sock_TCP/objects', 0o664, b'16\n') +f('sys/kernel/slab/tw_sock_TCP/order', 0o664, b'0\n') +f('sys/kernel/slab/tw_sock_TCP/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/tw_sock_TCP/store_user', 0o664, b'1\n') +f('sys/kernel/slab/tw_sock_TCP/align', 0o664, b'0\n') +f('sys/kernel/slab/tw_sock_TCP/partial', 0o664, b'0\n') +f('sys/kernel/slab/tw_sock_TCP/validate', 0o664, b'') +f('sys/kernel/slab/tw_sock_TCP/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/tw_sock_TCP/free_calls', 0o664, b'No data\n') +f('sys/kernel/slab/tw_sock_TCP/aliases', 0o664, b'0\n') +d('sys/kernel/slab/Acpi-Parse', 0o775) +f('sys/kernel/slab/Acpi-Parse/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/Acpi-Parse/ctor', 0o664, b'') +f('sys/kernel/slab/Acpi-Parse/hwcache_align', 0o664, b'0\n') +f('sys/kernel/slab/Acpi-Parse/slab_size', 0o664, b'120\n') +f('sys/kernel/slab/Acpi-Parse/total_objects', 0o664, b'68\n') +f('sys/kernel/slab/Acpi-Parse/slabs', 0o664, b'2\n') +f('sys/kernel/slab/Acpi-Parse/poison', 0o664, b'1\n') +f('sys/kernel/slab/Acpi-Parse/alloc_calls', 0o664, b'No data\n') +f('sys/kernel/slab/Acpi-Parse/objs_per_slab', 0o664, b'34\n') +f('sys/kernel/slab/Acpi-Parse/shrink', 0o664, b'') +f('sys/kernel/slab/Acpi-Parse/trace', 0o664, b'0\n') +f('sys/kernel/slab/Acpi-Parse/object_size', 0o664, b'48\n') +f('sys/kernel/slab/Acpi-Parse/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/Acpi-Parse/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/Acpi-Parse/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/Acpi-Parse/objects_partial', 0o664, b'0\n') +f('sys/kernel/slab/Acpi-Parse/objects', 0o664, b'68\n') +f('sys/kernel/slab/Acpi-Parse/order', 0o664, b'0\n') +f('sys/kernel/slab/Acpi-Parse/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/Acpi-Parse/store_user', 0o664, b'1\n') +f('sys/kernel/slab/Acpi-Parse/align', 0o664, b'0\n') +f('sys/kernel/slab/Acpi-Parse/partial', 0o664, b'0\n') +f('sys/kernel/slab/Acpi-Parse/validate', 0o664, b'') +f('sys/kernel/slab/Acpi-Parse/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/Acpi-Parse/free_calls', 0o664, b'No data\n') +f('sys/kernel/slab/Acpi-Parse/aliases', 0o664, b'0\n') +d('sys/kernel/slab/sgpool-8', 0o775) +f('sys/kernel/slab/sgpool-8/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/sgpool-8/ctor', 0o664, b'') +f('sys/kernel/slab/sgpool-8/hwcache_align', 0o664, b'1\n') +f('sys/kernel/slab/sgpool-8/slab_size', 0o664, b'384\n') +f('sys/kernel/slab/sgpool-8/total_objects', 0o664, b'42\n') +f('sys/kernel/slab/sgpool-8/slabs', 0o664, b'2\n') +f('sys/kernel/slab/sgpool-8/poison', 0o664, b'1\n') +f('sys/kernel/slab/sgpool-8/alloc_calls', 0o664, b' 2 mempool_alloc_slab+0x11/0x20 age=8379297/8379297/8379297 pid=1 cpus=0\n') +f('sys/kernel/slab/sgpool-8/objs_per_slab', 0o664, b'21\n') +f('sys/kernel/slab/sgpool-8/shrink', 0o664, b'') +f('sys/kernel/slab/sgpool-8/trace', 0o664, b'0\n') +f('sys/kernel/slab/sgpool-8/object_size', 0o664, b'256\n') +f('sys/kernel/slab/sgpool-8/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/sgpool-8/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/sgpool-8/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/sgpool-8/objects_partial', 0o664, b'0\n') +f('sys/kernel/slab/sgpool-8/objects', 0o664, b'42\n') +f('sys/kernel/slab/sgpool-8/order', 0o664, b'1\n') +f('sys/kernel/slab/sgpool-8/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/sgpool-8/store_user', 0o664, b'1\n') +f('sys/kernel/slab/sgpool-8/align', 0o664, b'0\n') +f('sys/kernel/slab/sgpool-8/partial', 0o664, b'0\n') +f('sys/kernel/slab/sgpool-8/validate', 0o664, b'') +f('sys/kernel/slab/sgpool-8/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/sgpool-8/free_calls', 0o664, b' 2 <not-available> age=4303046847 pid=0 cpus=0\n') +f('sys/kernel/slab/sgpool-8/aliases', 0o664, b'0\n') +d('sys/kernel/slab/dnotify_cache', 0o775) +f('sys/kernel/slab/dnotify_cache/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/dnotify_cache/ctor', 0o664, b'') +f('sys/kernel/slab/dnotify_cache/hwcache_align', 0o664, b'0\n') +f('sys/kernel/slab/dnotify_cache/slab_size', 0o664, b'112\n') +f('sys/kernel/slab/dnotify_cache/total_objects', 0o664, b'0\n') +f('sys/kernel/slab/dnotify_cache/slabs', 0o664, b'0\n') +f('sys/kernel/slab/dnotify_cache/poison', 0o664, b'1\n') +f('sys/kernel/slab/dnotify_cache/alloc_calls', 0o664, b'No data\n') +f('sys/kernel/slab/dnotify_cache/objs_per_slab', 0o664, b'36\n') +f('sys/kernel/slab/dnotify_cache/shrink', 0o664, b'') +f('sys/kernel/slab/dnotify_cache/trace', 0o664, b'0\n') +f('sys/kernel/slab/dnotify_cache/object_size', 0o664, b'40\n') +f('sys/kernel/slab/dnotify_cache/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/dnotify_cache/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/dnotify_cache/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/dnotify_cache/objects_partial', 0o664, b'0\n') +f('sys/kernel/slab/dnotify_cache/objects', 0o664, b'0\n') +f('sys/kernel/slab/dnotify_cache/order', 0o664, b'0\n') +f('sys/kernel/slab/dnotify_cache/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/dnotify_cache/store_user', 0o664, b'1\n') +f('sys/kernel/slab/dnotify_cache/align', 0o664, b'0\n') +f('sys/kernel/slab/dnotify_cache/partial', 0o664, b'0\n') +f('sys/kernel/slab/dnotify_cache/validate', 0o664, b'') +f('sys/kernel/slab/dnotify_cache/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/dnotify_cache/free_calls', 0o664, b'No data\n') +f('sys/kernel/slab/dnotify_cache/aliases', 0o664, b'0\n') +d('sys/kernel/slab/kmalloc-16', 0o775) +f('sys/kernel/slab/kmalloc-16/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-16/ctor', 0o664, b'') +f('sys/kernel/slab/kmalloc-16/hwcache_align', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-16/slab_size', 0o664, b'88\n') +f('sys/kernel/slab/kmalloc-16/total_objects', 0o664, b'2254\n') +f('sys/kernel/slab/kmalloc-16/slabs', 0o664, b'49\n') +f('sys/kernel/slab/kmalloc-16/poison', 0o664, b'1\n') +f('sys/kernel/slab/kmalloc-16/alloc_calls', 0o664, b''' 2 arch_acpi_processor_init_pdc+0x71/0x180 age=8375737/8375768/8375799 pid=330 cpus=0 + 2 arch_acpi_processor_init_pdc+0xab/0x180 age=8375737/8375768/8375799 pid=330 cpus=0 + 5 sched_create_group+0x40/0x220 age=8351840/8359324/8366851 pid=1333-2177 cpus=0-1 + 5 sched_create_group+0x62/0x220 age=8351840/8359324/8366851 pid=1333-2177 cpus=0-1 + 2 setup_modinfo_version+0x19/0x30 age=8374630/8375434/8376238 pid=122-126 cpus=0-1 + 365 load_module+0x1ac4/0x1b30 age=8303081/8369498/8376320 pid=105-2754 cpus=0-1 + 13 mempool_create_node+0x4b/0xf0 age=8379859/8379929/8379974 pid=1 cpus=0 + 1 krealloc+0x1e/0x60 age=8375802 pid=330 cpus=0 + 4 __vmalloc_area_node+0xfb/0x140 age=8374701/8375120/8375833 pid=126-392 cpus=0 + 7 alloc_vfsmnt+0x97/0x180 age=61473/7184623/8379853 pid=1-13348 cpus=0-1 + 2 proc_symlink+0x4d/0xb0 age=8380112/8380112/8380112 pid=0 cpus=0 + 1275 sysfs_new_dirent+0x10c/0x120 age=22645/7761348/8379979 pid=1-13295 cpus=0-1 + 2 ext3_fill_super+0x691/0x1a20 age=8369671/8374021/8378371 pid=1-962 cpus=0 + 406 kvasprintf+0x55/0x90 age=22645/7760583/8380112 pid=0-13295 cpus=0-1 + 1 bit_cursor+0x223/0x6a0 age=8356170 pid=7 cpus=0 + 12 acpi_ds_build_internal_package_obj+0xaf/0x1df age=8379944/8379946/8379954 pid=1 cpus=0 + 14 acpi_ds_build_internal_buffer_obj+0xe1/0x121 age=8379945/8379955/8379961 pid=1 cpus=0 + 2 acpi_ut_copy_simple_object+0x8f/0x11c age=8375657/8375665/8375674 pid=396 cpus=0 + 5 acpi_irq_stats_init+0x1bd/0x268 age=8379969/8379969/8379969 pid=1 cpus=0 + 14 pnp_add_id+0x1e/0xe0 age=8379861/8379863/8379866 pid=1 cpus=0 + 9 reserve_range+0x39/0x130 age=8379850/8379850/8379850 pid=1 cpus=0 + 1 trackpoint_detect+0x94/0x190 age=8378732 pid=17 cpus=0 + 2 proto_register+0xf2/0x260 age=8360199/8370021/8379844 pid=1-1549 cpus=0 + 2 neigh_sysctl_register+0x1cd/0x330 age=8360183/8366975/8373768 pid=126-1549 cpus=0-1 + 1 nl_pid_hash_rehash+0x180/0x1a0 age=8361057 pid=1533 cpus=0 + 1 genl_register_family+0x1b6/0x1e0 age=8379853 pid=1 cpus=0 + 1 __devinet_sysctl_register+0xb8/0x120 age=8373768 pid=126 cpus=1 + 1 pci_acpi_scan_root+0x3f/0x230 age=8379897 pid=1 cpus=0 + 1 acpi_parse_mcfg+0x61/0x140 age=8379976 pid=1 cpus=0 + 1 pci_mmcfg_arch_init+0x26/0x129 age=8379976 pid=1 cpus=0 + 1 icmp_sk_init+0x32/0x13f age=8379826 pid=1 cpus=0 + 5 hub_probe+0x26b/0x820 [usbcore] age=8374065/8374558/8374911 pid=143-147 cpus=0-1 + 12 usb_cache_string+0x65/0xa0 [usbcore] age=22646/4900582/8374931 pid=143-419 cpus=0-1 + 1 usb_create_ep_files+0x283/0x350 [usbcore] age=8374798 pid=143 cpus=0 + 1 0xffffffffa006595f age=8360191 pid=1549 cpus=0 + 13 snd_info_create_entry+0x30/0xa0 [snd] age=8355564/8372743/8374175 pid=107-1813 cpus=0-1 + 1 snd_oss_info_register+0x40/0xc0 [snd] age=8374813 pid=107 cpus=1 + 1 async_chainiv_givencrypt+0xf9/0x110 [crypto_blkcipher] age=8374570 pid=215 cpus=0 + 1 eseqiv_alloc+0x6d/0x80 [crypto_blkcipher] age=8374570 pid=215 cpus=0 + 1 run+0xa9/0x500 [raid1] age=8370124 pid=916 cpus=0 + 1 __addrconf_sysctl_register+0xcd/0x140 [ipv6] age=8360183 pid=1549 cpus=0 +''') +f('sys/kernel/slab/kmalloc-16/objs_per_slab', 0o664, b'46\n') +f('sys/kernel/slab/kmalloc-16/shrink', 0o664, b'') +f('sys/kernel/slab/kmalloc-16/trace', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-16/object_size', 0o664, b'16\n') +f('sys/kernel/slab/kmalloc-16/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-16/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-16/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-16/objects_partial', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-16/objects', 0o664, b'2254\n') +f('sys/kernel/slab/kmalloc-16/order', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-16/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/kmalloc-16/store_user', 0o664, b'1\n') +f('sys/kernel/slab/kmalloc-16/align', 0o664, b'8\n') +f('sys/kernel/slab/kmalloc-16/partial', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-16/validate', 0o664, b'') +f('sys/kernel/slab/kmalloc-16/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/kmalloc-16/free_calls', 0o664, b''' 1912 <not-available> age=4303047409 pid=0 cpus=0 + 2 free_sched_group+0x62/0x80 age=8375109/8375395/8375681 pid=0-72 cpus=0-1 + 2 free_sched_group+0x6b/0x80 age=8375109/8375395/8375681 pid=0-72 cpus=0-1 + 3 free_sect_attrs+0x2e/0x50 age=8375055/8375055/8375055 pid=383 cpus=0 + 3 __vunmap+0xe9/0x120 age=8373650/8374619/8375152 pid=181-754 cpus=0 + 7 vfs_rename+0x301/0x450 age=125333/5028818/8367033 pid=829-13249 cpus=0 + 10 bio_free_map_data+0x14/0x30 age=23581/2550049/8379364 pid=0-1738 cpus=0-1 + 10 bio_free_map_data+0x1d/0x30 age=53581/4218001/8379379 pid=0-558 cpus=0-1 + 60 remove_kevent+0x44/0x60 age=61364/3011504/8354072 pid=1547-2544 cpus=0-1 + 49 release_sysfs_dirent+0x8c/0xd0 age=7824392/8263442/8379778 pid=1-2141 cpus=0-1 + 9 kobject_release+0xe1/0x140 age=7833231/8247578/8373891 pid=419-1541 cpus=0-1 + 70 kobject_uevent_env+0x11a/0x470 age=409229/8261185/8379979 pid=1-12942 cpus=0-1 + 2 bit_cursor+0x23b/0x6a0 age=8356171/8367984/8379797 pid=1-7 cpus=0-1 + 1 acpi_ds_create_operand+0x12c/0x209 age=8379867 pid=1 cpus=0 + 2 acpi_ns_get_node+0x92/0xa1 age=8374467/8374504/8374542 pid=215 cpus=0-1 + 8 acpi_ut_delete_internal_obj+0x15f/0x16f age=8366439/8374588/8375781 pid=330-1358 cpus=0 + 16 acpi_ut_delete_internal_object_list+0x28/0x2f age=8374469/8378935/8379920 pid=1-396 cpus=0 + 2 reserve_range+0x11d/0x130 age=8379851/8379851/8379851 pid=1 cpus=0 + 3 release_firmware+0x57/0x70 age=8356214/8363521/8367182 pid=1285-1541 cpus=0-1 + 8 module_add_driver+0x66/0xd0 age=8373538/8375876/8379266 pid=1-181 cpus=0-1 + 1 power_supply_uevent+0x1a0/0x210 age=8375647 pid=7 cpus=0 + 2 get_modalias+0xd4/0x120 age=8355835/8367906/8379977 pid=1-1772 cpus=0 + 1 nl_pid_hash_rehash+0x18e/0x1a0 age=8356437 pid=1708 cpus=0 + 2 fib_hash_free+0x35/0x40 age=8367899/8367899/8367899 pid=1185 cpus=0 + 2 wireless_send_event+0x172/0x330 age=8329605/8342854/8356103 pid=1545 cpus=0-1 + 10 usb_get_configuration+0x42d/0x1480 [usbcore] age=22733/6708190/8374932 pid=143-419 cpus=0-1 +''') +f('sys/kernel/slab/kmalloc-16/aliases', 0o664, b'0\n') +d('sys/kernel/slab/filp', 0o775) +f('sys/kernel/slab/filp/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/filp/ctor', 0o664, b'') +f('sys/kernel/slab/filp/hwcache_align', 0o664, b'1\n') +f('sys/kernel/slab/filp/slab_size', 0o664, b'384\n') +f('sys/kernel/slab/filp/total_objects', 0o664, b'4158\n') +f('sys/kernel/slab/filp/slabs', 0o664, b'198\n') +f('sys/kernel/slab/filp/poison', 0o664, b'1\n') +f('sys/kernel/slab/filp/alloc_calls', 0o664, b' 4081 get_empty_filp+0x44/0x1a0 age=0/7917861/8378089 pid=1-20296 cpus=0-1\n') +f('sys/kernel/slab/filp/objs_per_slab', 0o664, b'21\n') +f('sys/kernel/slab/filp/shrink', 0o664, b'') +f('sys/kernel/slab/filp/trace', 0o664, b'0\n') +f('sys/kernel/slab/filp/object_size', 0o664, b'288\n') +f('sys/kernel/slab/filp/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/filp/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/filp/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/filp/objects_partial', 0o664, b'685\n') +f('sys/kernel/slab/filp/objects', 0o664, b'4064\n') +f('sys/kernel/slab/filp/order', 0o664, b'1\n') +f('sys/kernel/slab/filp/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/filp/store_user', 0o664, b'1\n') +f('sys/kernel/slab/filp/align', 0o664, b'0\n') +f('sys/kernel/slab/filp/partial', 0o664, b'33\n') +f('sys/kernel/slab/filp/validate', 0o664, b'') +f('sys/kernel/slab/filp/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/filp/free_calls', 0o664, b''' 866 <not-available> age=4303047162 pid=0 cpus=0 + 3217 file_free_rcu+0x16/0x20 age=10/7799670/8377025 pid=0-20296 cpus=0-1 +''') +f('sys/kernel/slab/filp/aliases', 0o664, b'0\n') +d('sys/kernel/slab/kmalloc-2048', 0o775) +f('sys/kernel/slab/kmalloc-2048/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-2048/ctor', 0o664, b'') +f('sys/kernel/slab/kmalloc-2048/hwcache_align', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-2048/slab_size', 0o664, b'2120\n') +f('sys/kernel/slab/kmalloc-2048/total_objects', 0o664, b'600\n') +f('sys/kernel/slab/kmalloc-2048/slabs', 0o664, b'40\n') +f('sys/kernel/slab/kmalloc-2048/poison', 0o664, b'1\n') +f('sys/kernel/slab/kmalloc-2048/alloc_calls', 0o664, b''' 53 load_module+0x18d5/0x1b30 age=8303006/8368517/8376245 pid=105-2754 cpus=0-1 + 1 mempool_create_node+0x4b/0xf0 age=8370049 pid=916 cpus=0 + 20 sget+0xc4/0x460 age=61397/7958673/8380037 pid=0-13348 cpus=0-1 + 15 alloc_fdtable+0x81/0x160 age=4219/6197046/8357231 pid=1532-12336 cpus=0-1 + 2 journal_init_common+0x1a/0x130 age=8369592/8373942/8378292 pid=1-962 cpus=0 + 15 alloc_disk_node+0x1b/0x120 age=61949/7263912/8379312 pid=1-13295 cpus=0-1 + 1 pci_create_bus+0x3a/0x240 age=8379822 pid=1 cpus=0 + 21 alloc_pci_dev+0x1a/0x40 age=8379818/8379820/8379822 pid=1 cpus=0 + 1 framebuffer_alloc+0x3a/0x80 age=8379737 pid=1 cpus=1 + 74 acpi_add_single_object+0x4e/0xd3c age=8379823/8379836/8379852 pid=1 cpus=0 + 1 acpi_irq_stats_init+0xcb/0x268 age=8379894 pid=1 cpus=0 + 11 pnp_alloc_dev+0x35/0x120 age=8379786/8379789/8379791 pid=1 cpus=0 + 11 init_dev+0x12e/0x6f0 age=7217110/8250882/8378132 pid=33-2593 cpus=0-1 + 3 init_dev+0x2aa/0x6f0 age=7217110/7969221/8364310 pid=1258-2593 cpus=0-1 + 1 tty_register_driver+0x1b3/0x2a0 age=8379706 pid=1 cpus=1 + 2 tty_write+0x160/0x280 age=913316/4463710/8014104 pid=1206-3110 cpus=0 + 2 kobj_map_init+0x22/0xa0 age=8379899/8379968/8380037 pid=0-1 cpus=0 + 3 mousedev_create+0x36/0x2d0 age=53460/5603607/8378947 pid=1-419 cpus=0 + 1 atkbd_connect+0x33/0x290 age=8378940 pid=17 cpus=1 + 2 thermal_zone_device_register+0x6f/0x310 age=8374790/8374807/8374825 pid=329 cpus=0-1 + 15 sk_prot_alloc+0x83/0xb0 age=8328308/8367505/8379903 pid=1-2586 cpus=0-1 + 1 reqsk_queue_alloc+0x112/0x120 age=8356786 pid=1690 cpus=0 + 255 __netdev_alloc_skb+0x1f/0x40 age=8356300/8356301/8356303 pid=1541 cpus=0 + 10 neigh_sysctl_register+0x8d/0x330 age=8360107/8368337/8379760 pid=1-1549 cpus=0-1 + 6 __devinet_sysctl_register+0x74/0x120 age=8373573/8377097/8379760 pid=1-126 cpus=0-1 + 7 pci_add_new_bus+0x25/0x160 age=8379818/8379818/8379820 pid=1 cpus=0 + 1 i8042_create_aux_port+0x36/0x10f age=8378959 pid=1 cpus=0 + 1 i8042_probe+0x190/0x68d age=8378959 pid=1 cpus=0 + 1 netdev_init+0x32/0xc2 age=8379782 pid=1 cpus=0 + 1 netdev_init+0x66/0xc2 age=8379782 pid=1 cpus=0 + 1 fib_net_init+0x21/0x14c age=8379760 pid=1 cpus=0 + 10 usb_alloc_dev+0x36/0x2c0 [usbcore] age=22875/5876181/8374868 pid=143-419 cpus=0-1 + 2 acpi_thermal_add+0x36/0x4bb [thermal] age=8374792/8374809/8374827 pid=329 cpus=0-1 + 5 evdev_open+0xaf/0x1e0 [evdev] age=8364377/8364927/8365226 pid=1443 cpus=0-1 + 8 evdev_connect+0x54/0x1f0 [evdev] age=53452/7334685/8375002 pid=187-419 cpus=0-1 + 1 rtc_device_register+0xa4/0x260 [rtc_core] age=8374707 pid=208 cpus=0 + 1 iwl3945_bg_request_scan+0x5d3/0x660 [iwl3945] age=8356027 pid=733 cpus=0 + 1 iwl3945_pci_probe+0xd26/0x1020 [iwl3945] age=8373700 pid=126 cpus=1 + 1 patch_ad1981+0x1b/0x1d0 [snd_hda_intel] age=8374101 pid=107 cpus=1 + 1 rfkill_allocate+0x24/0xc0 [rfkill] age=8374401 pid=215 cpus=0 + 1 fuse_fill_super+0x26d/0x6d0 [fuse] age=8335736 pid=2476 cpus=0 +''') +f('sys/kernel/slab/kmalloc-2048/objs_per_slab', 0o664, b'15\n') +f('sys/kernel/slab/kmalloc-2048/shrink', 0o664, b'') +f('sys/kernel/slab/kmalloc-2048/trace', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-2048/object_size', 0o664, b'2048\n') +f('sys/kernel/slab/kmalloc-2048/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-2048/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-2048/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-2048/objects_partial', 0o664, b'59\n') +f('sys/kernel/slab/kmalloc-2048/objects', 0o664, b'584\n') +f('sys/kernel/slab/kmalloc-2048/order', 0o664, b'3\n') +f('sys/kernel/slab/kmalloc-2048/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/kmalloc-2048/store_user', 0o664, b'1\n') +f('sys/kernel/slab/kmalloc-2048/align', 0o664, b'8\n') +f('sys/kernel/slab/kmalloc-2048/partial', 0o664, b'5\n') +f('sys/kernel/slab/kmalloc-2048/validate', 0o664, b'') +f('sys/kernel/slab/kmalloc-2048/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/kmalloc-2048/free_calls', 0o664, b''' 424 <not-available> age=4303047334 pid=0 cpus=0 + 1 __vunmap+0xe9/0x120 age=8374513 pid=107 cpus=1 + 79 free_fdtable_rcu+0x71/0xb0 age=7254/7749386/8377555 pid=0-13365 cpus=0-1 + 4 show_stat+0x50e/0x530 age=23516/2125165/8360113 pid=1258-1868 cpus=0 + 4 acpi_add_single_object+0xc9a/0xd3c age=8379824/8379831/8379839 pid=1 cpus=0 + 20 release_one_tty+0x145/0x190 age=8352386/8360775/8370275 pid=55-2136 cpus=0-1 + 1 atkbd_connect+0x1ae/0x290 age=8378923 pid=17 cpus=0 + 8 sk_free+0xcd/0x100 age=656267/7395001/8360982 pid=1533-12333 cpus=0-1 + 18 skb_release_data+0x85/0xd0 age=61516/7352252/8379750 pid=1-13343 cpus=0-1 + 5 __scm_destroy+0x41/0x50 age=7217111/8111550/8352414 pid=2135-2593 cpus=0-1 + 1 huft_build+0x163/0x63e age=8379752 pid=1 cpus=0 + 1 inflate_fixed+0x17c/0x193 age=8379752 pid=1 cpus=0 + 1 usb_release_dev+0x59/0x70 [usbcore] age=53835 pid=419 cpus=0 + 1 acpi_processor_get_throttling_info+0x2e4/0x58c [processor] age=8375644 pid=330 cpus=0 + 1 acpi_thermal_add+0x457/0x4bb [thermal] age=8374828 pid=329 cpus=1 + 1 snd_ctl_ioctl+0x2cf/0x960 [snd] age=8373099 pid=786 cpus=0 +''') +f('sys/kernel/slab/kmalloc-2048/aliases', 0o664, b'0\n') +d('sys/kernel/slab/cfq_queue', 0o775) +f('sys/kernel/slab/cfq_queue/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/cfq_queue/ctor', 0o664, b'') +f('sys/kernel/slab/cfq_queue/hwcache_align', 0o664, b'0\n') +f('sys/kernel/slab/cfq_queue/slab_size', 0o664, b'208\n') +f('sys/kernel/slab/cfq_queue/total_objects', 0o664, b'95\n') +f('sys/kernel/slab/cfq_queue/slabs', 0o664, b'5\n') +f('sys/kernel/slab/cfq_queue/poison', 0o664, b'1\n') +f('sys/kernel/slab/cfq_queue/alloc_calls', 0o664, b' 67 cfq_get_queue+0xc6/0x220 age=168/7825503/8379604 pid=1-13466 cpus=0-1\n') +f('sys/kernel/slab/cfq_queue/objs_per_slab', 0o664, b'19\n') +f('sys/kernel/slab/cfq_queue/shrink', 0o664, b'') +f('sys/kernel/slab/cfq_queue/trace', 0o664, b'0\n') +f('sys/kernel/slab/cfq_queue/object_size', 0o664, b'136\n') +f('sys/kernel/slab/cfq_queue/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/cfq_queue/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/cfq_queue/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/cfq_queue/objects_partial', 0o664, b'35\n') +f('sys/kernel/slab/cfq_queue/objects', 0o664, b'92\n') +f('sys/kernel/slab/cfq_queue/order', 0o664, b'0\n') +f('sys/kernel/slab/cfq_queue/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/cfq_queue/store_user', 0o664, b'1\n') +f('sys/kernel/slab/cfq_queue/align', 0o664, b'8\n') +f('sys/kernel/slab/cfq_queue/partial', 0o664, b'2\n') +f('sys/kernel/slab/cfq_queue/validate', 0o664, b'') +f('sys/kernel/slab/cfq_queue/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/cfq_queue/free_calls', 0o664, b''' 11 <not-available> age=4303047621 pid=0 cpus=0 + 56 cfq_put_queue+0x6f/0xe0 age=45755/7905388/8375272 pid=163-26529 cpus=0-1 +''') +f('sys/kernel/slab/cfq_queue/aliases', 0o664, b'0\n') +d('sys/kernel/slab/ext3_xattr', 0o775) +f('sys/kernel/slab/ext3_xattr/reclaim_account', 0o664, b'1\n') +f('sys/kernel/slab/ext3_xattr/ctor', 0o664, b'') +f('sys/kernel/slab/ext3_xattr/hwcache_align', 0o664, b'0\n') +f('sys/kernel/slab/ext3_xattr/slab_size', 0o664, b'160\n') +f('sys/kernel/slab/ext3_xattr/total_objects', 0o664, b'25\n') +f('sys/kernel/slab/ext3_xattr/slabs', 0o664, b'1\n') +f('sys/kernel/slab/ext3_xattr/poison', 0o664, b'1\n') +f('sys/kernel/slab/ext3_xattr/alloc_calls', 0o664, b' 4 mb_cache_entry_alloc+0x15/0x50 age=5766034/7671829/8319899 pid=2676-9046 cpus=0\n') +f('sys/kernel/slab/ext3_xattr/objs_per_slab', 0o664, b'25\n') +f('sys/kernel/slab/ext3_xattr/shrink', 0o664, b'') +f('sys/kernel/slab/ext3_xattr/trace', 0o664, b'0\n') +f('sys/kernel/slab/ext3_xattr/object_size', 0o664, b'88\n') +f('sys/kernel/slab/ext3_xattr/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/ext3_xattr/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/ext3_xattr/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/ext3_xattr/objects_partial', 0o664, b'0\n') +f('sys/kernel/slab/ext3_xattr/objects', 0o664, b'25\n') +f('sys/kernel/slab/ext3_xattr/order', 0o664, b'0\n') +f('sys/kernel/slab/ext3_xattr/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/ext3_xattr/store_user', 0o664, b'1\n') +f('sys/kernel/slab/ext3_xattr/align', 0o664, b'0\n') +f('sys/kernel/slab/ext3_xattr/partial', 0o664, b'0\n') +f('sys/kernel/slab/ext3_xattr/validate', 0o664, b'') +f('sys/kernel/slab/ext3_xattr/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/ext3_xattr/free_calls', 0o664, b' 4 <not-available> age=4303047503 pid=0 cpus=0\n') +f('sys/kernel/slab/ext3_xattr/aliases', 0o664, b'0\n') +d('sys/kernel/slab/bio', 0o775) +f('sys/kernel/slab/bio/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/bio/ctor', 0o664, b'') +f('sys/kernel/slab/bio/hwcache_align', 0o664, b'1\n') +f('sys/kernel/slab/bio/slab_size', 0o664, b'192\n') +f('sys/kernel/slab/bio/total_objects', 0o664, b'42\n') +f('sys/kernel/slab/bio/slabs', 0o664, b'2\n') +f('sys/kernel/slab/bio/poison', 0o664, b'1\n') +f('sys/kernel/slab/bio/alloc_calls', 0o664, b' 2 mempool_alloc_slab+0x11/0x20 age=8379518/8379518/8379518 pid=1 cpus=0\n') +f('sys/kernel/slab/bio/objs_per_slab', 0o664, b'21\n') +f('sys/kernel/slab/bio/shrink', 0o664, b'') +f('sys/kernel/slab/bio/trace', 0o664, b'0\n') +f('sys/kernel/slab/bio/object_size', 0o664, b'104\n') +f('sys/kernel/slab/bio/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/bio/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/bio/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/bio/objects_partial', 0o664, b'0\n') +f('sys/kernel/slab/bio/objects', 0o664, b'42\n') +f('sys/kernel/slab/bio/order', 0o664, b'0\n') +f('sys/kernel/slab/bio/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/bio/store_user', 0o664, b'1\n') +f('sys/kernel/slab/bio/align', 0o664, b'8\n') +f('sys/kernel/slab/bio/partial', 0o664, b'0\n') +f('sys/kernel/slab/bio/validate', 0o664, b'') +f('sys/kernel/slab/bio/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/bio/free_calls', 0o664, b' 2 <not-available> age=4303046952 pid=0 cpus=0\n') +f('sys/kernel/slab/bio/aliases', 0o664, b'0\n') +d('sys/kernel/slab/TCP', 0o775) +f('sys/kernel/slab/TCP/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/TCP/ctor', 0o664, b'') +f('sys/kernel/slab/TCP/hwcache_align', 0o664, b'1\n') +f('sys/kernel/slab/TCP/slab_size', 0o664, b'2304\n') +f('sys/kernel/slab/TCP/total_objects', 0o664, b'28\n') +f('sys/kernel/slab/TCP/slabs', 0o664, b'2\n') +f('sys/kernel/slab/TCP/poison', 0o664, b'1\n') +f('sys/kernel/slab/TCP/alloc_calls', 0o664, b' 3 sk_prot_alloc+0x1e/0xb0 age=926836/5879023/8356238 pid=1206-1920 cpus=0\n') +f('sys/kernel/slab/TCP/objs_per_slab', 0o664, b'14\n') +f('sys/kernel/slab/TCP/shrink', 0o664, b'') +f('sys/kernel/slab/TCP/trace', 0o664, b'0\n') +f('sys/kernel/slab/TCP/object_size', 0o664, b'2200\n') +f('sys/kernel/slab/TCP/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/TCP/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/TCP/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/TCP/objects_partial', 0o664, b'0\n') +f('sys/kernel/slab/TCP/objects', 0o664, b'28\n') +f('sys/kernel/slab/TCP/order', 0o664, b'3\n') +f('sys/kernel/slab/TCP/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/TCP/store_user', 0o664, b'1\n') +f('sys/kernel/slab/TCP/align', 0o664, b'0\n') +f('sys/kernel/slab/TCP/partial', 0o664, b'0\n') +f('sys/kernel/slab/TCP/validate', 0o664, b'') +f('sys/kernel/slab/TCP/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/TCP/free_calls', 0o664, b' 3 sk_free+0x80/0x100 age=932105/5881414/8356684 pid=0-1762 cpus=0\n') +f('sys/kernel/slab/TCP/aliases', 0o664, b'0\n') +d('sys/kernel/slab/nsproxy', 0o775) +f('sys/kernel/slab/nsproxy/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/nsproxy/ctor', 0o664, b'') +f('sys/kernel/slab/nsproxy/hwcache_align', 0o664, b'0\n') +f('sys/kernel/slab/nsproxy/slab_size', 0o664, b'128\n') +f('sys/kernel/slab/nsproxy/total_objects', 0o664, b'0\n') +f('sys/kernel/slab/nsproxy/slabs', 0o664, b'0\n') +f('sys/kernel/slab/nsproxy/poison', 0o664, b'1\n') +f('sys/kernel/slab/nsproxy/alloc_calls', 0o664, b'No data\n') +f('sys/kernel/slab/nsproxy/objs_per_slab', 0o664, b'32\n') +f('sys/kernel/slab/nsproxy/shrink', 0o664, b'') +f('sys/kernel/slab/nsproxy/trace', 0o664, b'0\n') +f('sys/kernel/slab/nsproxy/object_size', 0o664, b'56\n') +f('sys/kernel/slab/nsproxy/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/nsproxy/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/nsproxy/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/nsproxy/objects_partial', 0o664, b'0\n') +f('sys/kernel/slab/nsproxy/objects', 0o664, b'0\n') +f('sys/kernel/slab/nsproxy/order', 0o664, b'0\n') +f('sys/kernel/slab/nsproxy/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/nsproxy/store_user', 0o664, b'1\n') +f('sys/kernel/slab/nsproxy/align', 0o664, b'8\n') +f('sys/kernel/slab/nsproxy/partial', 0o664, b'0\n') +f('sys/kernel/slab/nsproxy/validate', 0o664, b'') +f('sys/kernel/slab/nsproxy/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/nsproxy/free_calls', 0o664, b'No data\n') +f('sys/kernel/slab/nsproxy/aliases', 0o664, b'0\n') +d('sys/kernel/slab/inotify_watch_cache', 0o775) +f('sys/kernel/slab/inotify_watch_cache/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/inotify_watch_cache/ctor', 0o664, b'') +f('sys/kernel/slab/inotify_watch_cache/hwcache_align', 0o664, b'0\n') +f('sys/kernel/slab/inotify_watch_cache/slab_size', 0o664, b'144\n') +f('sys/kernel/slab/inotify_watch_cache/total_objects', 0o664, b'168\n') +f('sys/kernel/slab/inotify_watch_cache/slabs', 0o664, b'6\n') +f('sys/kernel/slab/inotify_watch_cache/poison', 0o664, b'1\n') +f('sys/kernel/slab/inotify_watch_cache/alloc_calls', 0o664, b' 126 sys_inotify_add_watch+0x15e/0x1d0 age=60497/8227702/8376765 pid=72-13355 cpus=0-1\n') +f('sys/kernel/slab/inotify_watch_cache/objs_per_slab', 0o664, b'28\n') +f('sys/kernel/slab/inotify_watch_cache/shrink', 0o664, b'') +f('sys/kernel/slab/inotify_watch_cache/trace', 0o664, b'0\n') +f('sys/kernel/slab/inotify_watch_cache/object_size', 0o664, b'72\n') +f('sys/kernel/slab/inotify_watch_cache/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/inotify_watch_cache/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/inotify_watch_cache/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/inotify_watch_cache/objects_partial', 0o664, b'24\n') +f('sys/kernel/slab/inotify_watch_cache/objects', 0o664, b'164\n') +f('sys/kernel/slab/inotify_watch_cache/order', 0o664, b'0\n') +f('sys/kernel/slab/inotify_watch_cache/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/inotify_watch_cache/store_user', 0o664, b'1\n') +f('sys/kernel/slab/inotify_watch_cache/align', 0o664, b'0\n') +f('sys/kernel/slab/inotify_watch_cache/partial', 0o664, b'1\n') +f('sys/kernel/slab/inotify_watch_cache/validate', 0o664, b'') +f('sys/kernel/slab/inotify_watch_cache/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/inotify_watch_cache/free_calls', 0o664, b''' 122 <not-available> age=4303047477 pid=0 cpus=0 + 4 free_inotify_user_watch+0x60/0x70 age=104648/4219698/8334832 pid=2423-13211 cpus=0 +''') +f('sys/kernel/slab/inotify_watch_cache/aliases', 0o664, b'0\n') +d('sys/kernel/slab/fs_cache', 0o775) +f('sys/kernel/slab/fs_cache/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/fs_cache/ctor', 0o664, b'') +f('sys/kernel/slab/fs_cache/hwcache_align', 0o664, b'1\n') +f('sys/kernel/slab/fs_cache/slab_size', 0o664, b'192\n') +f('sys/kernel/slab/fs_cache/total_objects', 0o664, b'126\n') +f('sys/kernel/slab/fs_cache/slabs', 0o664, b'6\n') +f('sys/kernel/slab/fs_cache/poison', 0o664, b'1\n') +f('sys/kernel/slab/fs_cache/alloc_calls', 0o664, b' 79 __copy_fs_struct+0x28/0xc0 age=4126/7761540/8379883 pid=1-12336 cpus=0-1\n') +f('sys/kernel/slab/fs_cache/objs_per_slab', 0o664, b'21\n') +f('sys/kernel/slab/fs_cache/shrink', 0o664, b'') +f('sys/kernel/slab/fs_cache/trace', 0o664, b'0\n') +f('sys/kernel/slab/fs_cache/object_size', 0o664, b'104\n') +f('sys/kernel/slab/fs_cache/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/fs_cache/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/fs_cache/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/fs_cache/objects_partial', 0o664, b'75\n') +f('sys/kernel/slab/fs_cache/objects', 0o664, b'117\n') +f('sys/kernel/slab/fs_cache/order', 0o664, b'0\n') +f('sys/kernel/slab/fs_cache/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/fs_cache/store_user', 0o664, b'1\n') +f('sys/kernel/slab/fs_cache/align', 0o664, b'0\n') +f('sys/kernel/slab/fs_cache/partial', 0o664, b'4\n') +f('sys/kernel/slab/fs_cache/validate', 0o664, b'') +f('sys/kernel/slab/fs_cache/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/fs_cache/free_calls', 0o664, b''' 7 <not-available> age=4303047241 pid=0 cpus=0 + 72 put_fs_struct+0x37/0x40 age=7168/7706405/8375333 pid=145-20292 cpus=0-1 +''') +f('sys/kernel/slab/fs_cache/aliases', 0o664, b'0\n') +d('sys/kernel/slab/kmalloc-512', 0o775) +f('sys/kernel/slab/kmalloc-512/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-512/ctor', 0o664, b'') +f('sys/kernel/slab/kmalloc-512/hwcache_align', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-512/slab_size', 0o664, b'584\n') +f('sys/kernel/slab/kmalloc-512/total_objects', 0o664, b'504\n') +f('sys/kernel/slab/kmalloc-512/slabs', 0o664, b'36\n') +f('sys/kernel/slab/kmalloc-512/poison', 0o664, b'1\n') +f('sys/kernel/slab/kmalloc-512/alloc_calls', 0o664, b''' 14 __register_sysctl_paths+0x56/0x340 age=8360125/8372514/8379788 pid=1-1549 cpus=0 + 14 param_sysfs_setup+0x87/0x140 age=8355309/8375663/8379919 pid=1-1813 cpus=0-1 + 59 module_add_modinfo_attrs+0x25/0xf0 age=8303025/8368384/8376264 pid=105-2754 cpus=0-1 + 2 __vmalloc_area_node+0xfb/0x140 age=8374650/8375296/8375942 pid=126-144 cpus=0 + 1 dma_kmalloc_cache+0xca/0x150 age=8375776 pid=163 cpus=0 + 107 kmem_cache_create+0x4e/0x2e0 age=8360130/8377702/8380056 pid=0-1549 cpus=0-1 + 2 __percpu_alloc_mask+0xbc/0x140 age=8379768/8379768/8379768 pid=1 cpus=1 + 17 sys_inotify_init1+0xaa/0x220 age=8333709/8350157/8376641 pid=72-2544 cpus=0-1 + 4 sys_epoll_create1+0x41/0x100 age=2416994/6871289/8356805 pid=1690-20296 cpus=0-1 + 2 __crypto_alloc_tfm+0x43/0x1b0 age=8373592/8373592/8373592 pid=126 cpus=1 + 1 crypto_alloc_instance+0x2b/0xe0 age=8373592 pid=745 cpus=0 + 3 elevator_alloc+0x67/0xc0 age=62000/5606780/8379335 pid=1-13295 cpus=0-1 + 3 cfq_init_queue+0x1b/0x120 age=62000/5606780/8379335 pid=1-13295 cpus=0-1 + 1 fb_alloc_cmap+0x66/0x150 age=8379756 pid=1 cpus=1 + 1 fb_alloc_cmap+0x81/0x150 age=8379756 pid=1 cpus=1 + 1 fb_alloc_cmap+0x9c/0x150 age=8379756 pid=1 cpus=1 + 1 fbcon_startup+0xd6/0x2f0 age=8379755 pid=1 cpus=1 + 1 acpi_ds_build_internal_buffer_obj+0xe1/0x121 age=8379896 pid=1 cpus=0 + 1 make_acpi_ec+0x1a/0xcb age=8379913 pid=1 cpus=0 + 1 acpi_irq_stats_init+0x83/0x268 age=8379913 pid=1 cpus=0 + 1 acpi_irq_stats_init+0xa7/0x268 age=8379913 pid=1 cpus=0 + 5 alloc_tty_driver+0x1c/0x40 age=8309091/8365595/8379725 pid=1-2711 cpus=1 + 2 vt_ioctl+0x1874/0x1c30 age=8356613/8356613/8356613 pid=1703 cpus=0 + 8 set_inverse_transl+0xa0/0xb0 age=8355024/8367389/8379755 pid=1-1898 cpus=1 + 2 con_clear_unimap+0x2a/0xd0 age=8355024/8367389/8379755 pid=1-1898 cpus=1 + 7 vc_allocate+0x99/0x1b0 age=8356563/8358748/8368241 pid=1135-1729 cpus=0-1 + 1 hpet_alloc+0x6b/0x3c0 age=8379798 pid=1 cpus=0 + 4 uart_open+0x36c/0x4b0 age=8368845/8368914/8369120 pid=1059-1073 cpus=0-1 + 43 bus_add_driver+0x4f/0x280 age=8303025/8373842/8379841 pid=1-2754 cpus=0-1 + 9 bus_register+0x35/0x290 age=8373434/8378695/8379923 pid=1-770 cpus=0-1 + 30 __class_register+0x28/0x1e0 age=8374523/8378099/8379922 pid=1-352 cpus=0-1 + 1 mousedev_open+0xc8/0x1d0 age=8354269 pid=1738 cpus=0 + 1 cpufreq_add_dev+0x8f/0x5c0 age=8366381 pid=1358 cpus=0 + 4 sock_alloc_send_skb+0x1cd/0x200 age=8330763/8342704/8350746 pid=1738 cpus=0-1 + 1 alloc_netdev_mq+0x6c/0x180 age=8373712 pid=126 cpus=1 + 4 inetdev_init+0x28/0x190 age=8373592/8375784/8379779 pid=1-126 cpus=0-1 + 2 fib_hash_table+0x1c/0x80 age=8379779/8379779/8379779 pid=1 cpus=0 + 1 ioapic_init_sysfs+0x74/0xcf age=8379769 pid=1 cpus=1 + 3 snd_malloc_sgbuf_pages+0xbe/0x1f0 [snd_page_alloc] age=8374119/8374119/8374119 pid=107 cpus=1 + 1 usb_get_configuration+0x18f/0x1480 [usbcore] age=22677 pid=419 cpus=0 + 1 usb_get_configuration+0x5f2/0x1480 [usbcore] age=8372692 pid=419 cpus=0 + 2 acpi_processor_get_throttling_info+0x21f/0x58c [processor] age=8375662/8375686/8375710 pid=330 cpus=0 + 48 snd_info_create_entry+0x1b/0xa0 [snd] age=8355304/8371157/8374867 pid=107-1813 cpus=0-1 + 4 snd_timer_new+0x40/0x190 [snd_timer] age=8374097/8374262/8374757 pid=107 cpus=1 + 2 ieee80211_key_alloc+0x37/0xe0 [mac80211] age=3544694/3544694/3544694 pid=1545 cpus=0 + 3 snd_pcm_new_stream+0x161/0x520 [snd_pcm] age=8374119/8374119/8374119 pid=107 cpus=1 + 1 snd_hda_bus_new+0x31/0xf4 [snd_hda_intel] age=8374122 pid=107 cpus=1 + 1 crypto_blkcipher_type+0x54/0xffffffffffffff8e [crypto_blkcipher] age=8374450 pid=215 cpus=0 + 1 md_import_device+0x32/0x290 [md_mod] age=8370110 pid=916 cpus=0 + 1 bitmap_create+0x5e/0xad0 [md_mod] age=8370066 pid=916 cpus=0 + 1 run+0x42/0x500 [raid1] age=8370068 pid=916 cpus=0 + 1 ip6_route_net_init+0x4d/0xd0 [ipv6] age=8360130 pid=1549 cpus=0 +''') +f('sys/kernel/slab/kmalloc-512/objs_per_slab', 0o664, b'14\n') +f('sys/kernel/slab/kmalloc-512/shrink', 0o664, b'') +f('sys/kernel/slab/kmalloc-512/trace', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-512/object_size', 0o664, b'512\n') +f('sys/kernel/slab/kmalloc-512/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-512/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-512/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-512/objects_partial', 0o664, b'79\n') +f('sys/kernel/slab/kmalloc-512/objects', 0o664, b'443\n') +f('sys/kernel/slab/kmalloc-512/order', 0o664, b'1\n') +f('sys/kernel/slab/kmalloc-512/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/kmalloc-512/store_user', 0o664, b'1\n') +f('sys/kernel/slab/kmalloc-512/align', 0o664, b'8\n') +f('sys/kernel/slab/kmalloc-512/partial', 0o664, b'10\n') +f('sys/kernel/slab/kmalloc-512/validate', 0o664, b'') +f('sys/kernel/slab/kmalloc-512/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/kmalloc-512/free_calls', 0o664, b''' 163 <not-available> age=4303047353 pid=0 cpus=0 + 4 __vunmap+0xe9/0x120 age=8374515/8375319/8376179 pid=122-215 cpus=0 + 1 kmem_cache_shrink+0x5d/0x1b0 age=8379872 pid=1 cpus=0 + 33 load_elf_binary+0xa7e/0x1e20 age=8303117/8365402/8377217 pid=62-2754 cpus=0-1 + 19 load_elf_binary+0xc37/0x1e20 age=8355044/8370854/8376371 pid=197-1912 cpus=0-1 + 1 crypto_larval_destroy+0x2b/0x40 age=8373593 pid=126 cpus=1 + 210 skb_release_data+0x85/0xd0 age=22792/8177097/8379923 pid=1-20296 cpus=0-1 + 1 acpi_processor_get_power_info+0x2eb/0x569 [processor] age=8375661 pid=330 cpus=1 + 1 skcipher_geniv_alloc+0xea/0x3f0 [crypto_blkcipher] age=8374478 pid=215 cpus=0 + 1 snd_mixer_oss_build_input+0x402/0x5c0 [snd_mixer_oss] age=8355509 pid=1813 cpus=0 +''') +f('sys/kernel/slab/kmalloc-512/aliases', 0o664, b'0\n') +d('sys/kernel/slab/biovec-256', 0o775) +f('sys/kernel/slab/biovec-256/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/biovec-256/ctor', 0o664, b'') +f('sys/kernel/slab/biovec-256/hwcache_align', 0o664, b'1\n') +f('sys/kernel/slab/biovec-256/slab_size', 0o664, b'4224\n') +f('sys/kernel/slab/biovec-256/total_objects', 0o664, b'7\n') +f('sys/kernel/slab/biovec-256/slabs', 0o664, b'1\n') +f('sys/kernel/slab/biovec-256/poison', 0o664, b'1\n') +f('sys/kernel/slab/biovec-256/alloc_calls', 0o664, b' 2 mempool_alloc_slab+0x11/0x20 age=8379465/8379465/8379465 pid=1 cpus=0\n') +f('sys/kernel/slab/biovec-256/objs_per_slab', 0o664, b'7\n') +f('sys/kernel/slab/biovec-256/shrink', 0o664, b'') +f('sys/kernel/slab/biovec-256/trace', 0o664, b'0\n') +f('sys/kernel/slab/biovec-256/object_size', 0o664, b'4096\n') +f('sys/kernel/slab/biovec-256/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/biovec-256/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/biovec-256/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/biovec-256/objects_partial', 0o664, b'2\n') +f('sys/kernel/slab/biovec-256/objects', 0o664, b'2\n') +f('sys/kernel/slab/biovec-256/order', 0o664, b'3\n') +f('sys/kernel/slab/biovec-256/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/biovec-256/store_user', 0o664, b'1\n') +f('sys/kernel/slab/biovec-256/align', 0o664, b'0\n') +f('sys/kernel/slab/biovec-256/partial', 0o664, b'1\n') +f('sys/kernel/slab/biovec-256/validate', 0o664, b'') +f('sys/kernel/slab/biovec-256/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/biovec-256/free_calls', 0o664, b' 2 <not-available> age=4303046899 pid=0 cpus=0\n') +f('sys/kernel/slab/biovec-256/aliases', 0o664, b'0\n') +d('sys/kernel/slab/kmalloc-128', 0o775) +f('sys/kernel/slab/kmalloc-128/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-128/ctor', 0o664, b'') +f('sys/kernel/slab/kmalloc-128/hwcache_align', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-128/slab_size', 0o664, b'200\n') +f('sys/kernel/slab/kmalloc-128/total_objects', 0o664, b'360\n') +f('sys/kernel/slab/kmalloc-128/slabs', 0o664, b'18\n') +f('sys/kernel/slab/kmalloc-128/poison', 0o664, b'1\n') +f('sys/kernel/slab/kmalloc-128/alloc_calls', 0o664, b''' 17 param_sysfs_setup+0x87/0x140 age=8366402/8376536/8379939 pid=1-1358 cpus=0-1 + 1 mempool_create_node+0x4b/0xf0 age=8379025 pid=1 cpus=0 + 4 __vmalloc_area_node+0xfb/0x140 age=8303049/8349608/8370350 pid=900-2754 cpus=0 + 2 shmem_fill_super+0x38/0x200 age=8377584/8378686/8379788 pid=1-46 cpus=0-1 + 56 __percpu_alloc_mask+0xbc/0x140 age=61988/7483637/8379799 pid=1-13295 cpus=0-1 + 11 cdev_alloc+0x1a/0x50 age=61988/7621848/8379938 pid=1-13295 cpus=0-1 + 110 d_alloc+0x19d/0x1f0 age=22451/5346628/8376065 pid=401-13439 cpus=0-1 + 2 bm_register_write+0x63/0x630 age=8354053/8354053/8354053 pid=2054 cpus=1 + 2 alloc_disk_node+0x6c/0x120 age=62016/4220683/8379351 pid=1-13295 cpus=1 + 20 ida_pre_get+0x86/0x90 age=8298034/8372144/8380076 pid=0-2761 cpus=0-1 + 5 acpi_ds_build_internal_package_obj+0xaf/0x1df age=8379905/8379914/8379918 pid=1 cpus=0 + 2 acpi_ds_build_internal_buffer_obj+0xe1/0x121 age=8379921/8379921/8379921 pid=1 cpus=0 + 1 acpi_ev_create_gpe_block+0xb2/0x3bf age=8379933 pid=1 cpus=0 + 4 acpi_add_single_object+0x5d8/0xd3c age=8379862/8379869/8379873 pid=1 cpus=0 + 41 con_insert_unipair+0xd6/0x110 age=8355044/8369520/8379775 pid=1-1898 cpus=1 + 2 thermal_zone_bind_cooling_device+0xde/0x2a0 age=8374828/8374828/8374828 pid=329 cpus=0 + 4 led_trigger_register_simple+0x2b/0x80 age=8375615/8375659/8375793 pid=392-396 cpus=0 + 1 sock_kmalloc+0x5c/0x70 age=8328344 pid=2586 cpus=0 + 3 alloc_netdev_mq+0x6c/0x180 age=8373612/8376531/8379814 pid=1-126 cpus=0-1 + 2 neigh_table_init_no_netlink+0xd2/0x250 age=8360154/8369976/8379799 pid=1-1549 cpus=0 + 8 neigh_parms_alloc+0x5d/0x110 age=8360146/8367976/8379799 pid=1-1549 cpus=0-1 + 4 fz_hash_alloc+0x4a/0x60 age=8325493/8357250/8367862 pid=1185-1541 cpus=0-1 + 1 get_local_pda+0x39/0x9b age=8380015 pid=1 cpus=0 + 1 mnt_init+0xf9/0x202 age=8380076 pid=0 cpus=0 + 1 net_ns_init+0x49/0x16d age=8379942 pid=1 cpus=0 + 3 sg_add+0x8c/0x400 [sg] age=61988/5604850/8376284 pid=169-13295 cpus=0 + 3 usb_get_configuration+0x5f2/0x1480 [usbcore] age=22696/22696/22696 pid=419 cpus=0 + 15 usb_get_configuration+0x1388/0x1480 [usbcore] age=22696/3922325/8372712 pid=419 cpus=0 + 1 0xffffffffa0065117 age=8374777 pid=107 cpus=1 + 1 ieee80211_led_init+0x1b/0x230 [mac80211] age=8373612 pid=126 cpus=1 + 1 ieee80211_led_init+0x83/0x230 [mac80211] age=8373612 pid=126 cpus=1 + 1 ieee80211_led_init+0xeb/0x230 [mac80211] age=8373611 pid=126 cpus=1 + 1 ieee80211_led_init+0x153/0x230 [mac80211] age=8373611 pid=126 cpus=1 + 1 snd_hda_codec_new+0x1ec/0x559 [snd_hda_intel] age=8374142 pid=107 cpus=1 + 1 md_register_thread+0x35/0xd0 [md_mod] age=8370088 pid=916 cpus=0 + 1 fib6_net_init+0x7e/0x130 [ipv6] age=8360149 pid=1549 cpus=0 +''') +f('sys/kernel/slab/kmalloc-128/objs_per_slab', 0o664, b'20\n') +f('sys/kernel/slab/kmalloc-128/shrink', 0o664, b'') +f('sys/kernel/slab/kmalloc-128/trace', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-128/object_size', 0o664, b'128\n') +f('sys/kernel/slab/kmalloc-128/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-128/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-128/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-128/objects_partial', 0o664, b'83\n') +f('sys/kernel/slab/kmalloc-128/objects', 0o664, b'343\n') +f('sys/kernel/slab/kmalloc-128/order', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-128/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/kmalloc-128/store_user', 0o664, b'1\n') +f('sys/kernel/slab/kmalloc-128/align', 0o664, b'8\n') +f('sys/kernel/slab/kmalloc-128/partial', 0o664, b'5\n') +f('sys/kernel/slab/kmalloc-128/validate', 0o664, b'') +f('sys/kernel/slab/kmalloc-128/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/kmalloc-128/free_calls', 0o664, b''' 197 <not-available> age=4303047372 pid=0 cpus=0 + 3 call_usermodehelper_freeinfo+0x27/0x30 age=8360145/8367948/8373612 pid=745-1532 cpus=0 + 2 __vunmap+0xe9/0x120 age=8375480/8375882/8376284 pid=105-169 cpus=0 + 5 percpu_free+0x2d/0x60 age=7838031/7838092/7838171 pid=419-3347 cpus=0 + 1 cdev_dynamic_release+0x19/0x20 age=7838171 pid=419 cpus=0 + 49 d_callback+0x22/0x40 age=53327/5302082/8375461 pid=0-13314 cpus=0-1 + 51 load_elf_binary+0xaf/0x1e20 age=25315/7326461/8377585 pid=46-21952 cpus=0-1 + 1 free_rb_tree_fname+0x5c/0xb0 age=8366816 pid=1274 cpus=0 + 1 disk_release+0x2e/0x50 age=7838031 pid=3347 cpus=0 + 2 free_bitmap+0x29/0x80 age=8368053/8369024/8369995 pid=55 cpus=0-1 + 1 acpi_evaluate_reference+0x100/0x117 age=8374829 pid=329 cpus=0 + 6 acpi_get_object_info+0x1b6/0x1d4 age=8379736/8379841/8379873 pid=1 cpus=0-1 + 4 do_acpi_find_child+0x48/0x51 age=8379209/8379658/8379850 pid=1 cpus=0-1 + 1 unpack_to_rootfs+0x105/0xa39 age=8379790 pid=1 cpus=0 + 1 sg_remove+0x1ca/0x240 [sg] age=7838171 pid=419 cpus=0 + 6 usb_release_interface_cache+0x2c/0x60 [usbcore] age=7833192/7833192/7833192 pid=419 cpus=1 + 2 usb_release_interface_cache+0x47/0x60 [usbcore] age=7833192/7833192/7833192 pid=419 cpus=1 + 1 acpi_processor_get_throttling_info+0x15e/0x58c [processor] age=8375683 pid=330 cpus=0 +''') +f('sys/kernel/slab/kmalloc-128/aliases', 0o664, b'0\n') +d('sys/kernel/slab/ip_dst_cache', 0o775) +f('sys/kernel/slab/ip_dst_cache/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/ip_dst_cache/ctor', 0o664, b'') +f('sys/kernel/slab/ip_dst_cache/hwcache_align', 0o664, b'1\n') +f('sys/kernel/slab/ip_dst_cache/slab_size', 0o664, b'384\n') +f('sys/kernel/slab/ip_dst_cache/total_objects', 0o664, b'42\n') +f('sys/kernel/slab/ip_dst_cache/slabs', 0o664, b'2\n') +f('sys/kernel/slab/ip_dst_cache/poison', 0o664, b'1\n') +f('sys/kernel/slab/ip_dst_cache/alloc_calls', 0o664, b' 1 dst_alloc+0x2b/0x90 age=920684 pid=1206 cpus=0\n') +f('sys/kernel/slab/ip_dst_cache/objs_per_slab', 0o664, b'21\n') +f('sys/kernel/slab/ip_dst_cache/shrink', 0o664, b'') +f('sys/kernel/slab/ip_dst_cache/trace', 0o664, b'0\n') +f('sys/kernel/slab/ip_dst_cache/object_size', 0o664, b'312\n') +f('sys/kernel/slab/ip_dst_cache/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/ip_dst_cache/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/ip_dst_cache/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/ip_dst_cache/objects_partial', 0o664, b'0\n') +f('sys/kernel/slab/ip_dst_cache/objects', 0o664, b'42\n') +f('sys/kernel/slab/ip_dst_cache/order', 0o664, b'1\n') +f('sys/kernel/slab/ip_dst_cache/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/ip_dst_cache/store_user', 0o664, b'1\n') +f('sys/kernel/slab/ip_dst_cache/align', 0o664, b'0\n') +f('sys/kernel/slab/ip_dst_cache/partial', 0o664, b'0\n') +f('sys/kernel/slab/ip_dst_cache/validate', 0o664, b'') +f('sys/kernel/slab/ip_dst_cache/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/ip_dst_cache/free_calls', 0o664, b' 1 <not-available> age=4303046733 pid=0 cpus=0\n') +f('sys/kernel/slab/ip_dst_cache/aliases', 0o664, b'0\n') +d('sys/kernel/slab/journal_head', 0o775) +f('sys/kernel/slab/journal_head/reclaim_account', 0o664, b'1\n') +f('sys/kernel/slab/journal_head/ctor', 0o664, b'') +f('sys/kernel/slab/journal_head/hwcache_align', 0o664, b'0\n') +f('sys/kernel/slab/journal_head/slab_size', 0o664, b'168\n') +f('sys/kernel/slab/journal_head/total_objects', 0o664, b'7680\n') +f('sys/kernel/slab/journal_head/slabs', 0o664, b'320\n') +f('sys/kernel/slab/journal_head/poison', 0o664, b'1\n') +f('sys/kernel/slab/journal_head/alloc_calls', 0o664, b' 7662 journal_add_journal_head+0x9f/0x1b0 age=0/2379/651354 pid=1336-13466 cpus=0-1\n') +f('sys/kernel/slab/journal_head/objs_per_slab', 0o664, b'24\n') +f('sys/kernel/slab/journal_head/shrink', 0o664, b'') +f('sys/kernel/slab/journal_head/trace', 0o664, b'0\n') +f('sys/kernel/slab/journal_head/object_size', 0o664, b'96\n') +f('sys/kernel/slab/journal_head/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/journal_head/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/journal_head/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/journal_head/objects_partial', 0o664, b'0\n') +f('sys/kernel/slab/journal_head/objects', 0o664, b'7680\n') +f('sys/kernel/slab/journal_head/order', 0o664, b'0\n') +f('sys/kernel/slab/journal_head/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/journal_head/store_user', 0o664, b'1\n') +f('sys/kernel/slab/journal_head/align', 0o664, b'0\n') +f('sys/kernel/slab/journal_head/partial', 0o664, b'0\n') +f('sys/kernel/slab/journal_head/validate', 0o664, b'') +f('sys/kernel/slab/journal_head/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/journal_head/free_calls', 0o664, b''' 7589 <not-available> age=4303047557 pid=0 cpus=0 + 74 __journal_remove_journal_head+0xcb/0x160 age=1585/52253/654521 pid=32-13248 cpus=0-1 +''') +f('sys/kernel/slab/journal_head/aliases', 0o664, b'0\n') +d('sys/kernel/slab/scsi_data_buffer', 0o775) +f('sys/kernel/slab/scsi_data_buffer/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/scsi_data_buffer/ctor', 0o664, b'') +f('sys/kernel/slab/scsi_data_buffer/hwcache_align', 0o664, b'0\n') +f('sys/kernel/slab/scsi_data_buffer/slab_size', 0o664, b'96\n') +f('sys/kernel/slab/scsi_data_buffer/total_objects', 0o664, b'0\n') +f('sys/kernel/slab/scsi_data_buffer/slabs', 0o664, b'0\n') +f('sys/kernel/slab/scsi_data_buffer/poison', 0o664, b'1\n') +f('sys/kernel/slab/scsi_data_buffer/alloc_calls', 0o664, b'No data\n') +f('sys/kernel/slab/scsi_data_buffer/objs_per_slab', 0o664, b'42\n') +f('sys/kernel/slab/scsi_data_buffer/shrink', 0o664, b'') +f('sys/kernel/slab/scsi_data_buffer/trace', 0o664, b'0\n') +f('sys/kernel/slab/scsi_data_buffer/object_size', 0o664, b'24\n') +f('sys/kernel/slab/scsi_data_buffer/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/scsi_data_buffer/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/scsi_data_buffer/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/scsi_data_buffer/objects_partial', 0o664, b'0\n') +f('sys/kernel/slab/scsi_data_buffer/objects', 0o664, b'0\n') +f('sys/kernel/slab/scsi_data_buffer/order', 0o664, b'0\n') +f('sys/kernel/slab/scsi_data_buffer/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/scsi_data_buffer/store_user', 0o664, b'1\n') +f('sys/kernel/slab/scsi_data_buffer/align', 0o664, b'0\n') +f('sys/kernel/slab/scsi_data_buffer/partial', 0o664, b'0\n') +f('sys/kernel/slab/scsi_data_buffer/validate', 0o664, b'') +f('sys/kernel/slab/scsi_data_buffer/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/scsi_data_buffer/free_calls', 0o664, b'No data\n') +f('sys/kernel/slab/scsi_data_buffer/aliases', 0o664, b'0\n') +d('sys/kernel/slab/fuse_request', 0o775) +f('sys/kernel/slab/fuse_request/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/fuse_request/ctor', 0o664, b'') +f('sys/kernel/slab/fuse_request/hwcache_align', 0o664, b'0\n') +f('sys/kernel/slab/fuse_request/slab_size', 0o664, b'728\n') +f('sys/kernel/slab/fuse_request/total_objects', 0o664, b'44\n') +f('sys/kernel/slab/fuse_request/slabs', 0o664, b'2\n') +f('sys/kernel/slab/fuse_request/poison', 0o664, b'1\n') +f('sys/kernel/slab/fuse_request/alloc_calls', 0o664, b' 1 fuse_request_alloc+0x1a/0x40 [fuse] age=8336120 pid=2476 cpus=0\n') +f('sys/kernel/slab/fuse_request/objs_per_slab', 0o664, b'22\n') +f('sys/kernel/slab/fuse_request/shrink', 0o664, b'') +f('sys/kernel/slab/fuse_request/trace', 0o664, b'0\n') +f('sys/kernel/slab/fuse_request/object_size', 0o664, b'656\n') +f('sys/kernel/slab/fuse_request/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/fuse_request/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/fuse_request/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/fuse_request/objects_partial', 0o664, b'0\n') +f('sys/kernel/slab/fuse_request/objects', 0o664, b'44\n') +f('sys/kernel/slab/fuse_request/order', 0o664, b'2\n') +f('sys/kernel/slab/fuse_request/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/fuse_request/store_user', 0o664, b'1\n') +f('sys/kernel/slab/fuse_request/align', 0o664, b'0\n') +f('sys/kernel/slab/fuse_request/partial', 0o664, b'0\n') +f('sys/kernel/slab/fuse_request/validate', 0o664, b'') +f('sys/kernel/slab/fuse_request/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/fuse_request/free_calls', 0o664, b' 1 <not-available> age=4303047718 pid=0 cpus=0\n') +f('sys/kernel/slab/fuse_request/aliases', 0o664, b'0\n') +d('sys/kernel/slab/pid', 0o775) +f('sys/kernel/slab/pid/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/pid/ctor', 0o664, b'') +f('sys/kernel/slab/pid/hwcache_align', 0o664, b'1\n') +f('sys/kernel/slab/pid/slab_size', 0o664, b'192\n') +f('sys/kernel/slab/pid/total_objects', 0o664, b'252\n') +f('sys/kernel/slab/pid/slabs', 0o664, b'12\n') +f('sys/kernel/slab/pid/poison', 0o664, b'1\n') +f('sys/kernel/slab/pid/alloc_calls', 0o664, b' 207 alloc_pid+0x26/0x430 age=4190/8015525/8379960 pid=0-13212 cpus=0-1\n') +f('sys/kernel/slab/pid/objs_per_slab', 0o664, b'21\n') +f('sys/kernel/slab/pid/shrink', 0o664, b'') +f('sys/kernel/slab/pid/trace', 0o664, b'0\n') +f('sys/kernel/slab/pid/object_size', 0o664, b'80\n') +f('sys/kernel/slab/pid/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/pid/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/pid/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/pid/objects_partial', 0o664, b'131\n') +f('sys/kernel/slab/pid/objects', 0o664, b'236\n') +f('sys/kernel/slab/pid/order', 0o664, b'0\n') +f('sys/kernel/slab/pid/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/pid/store_user', 0o664, b'1\n') +f('sys/kernel/slab/pid/align', 0o664, b'8\n') +f('sys/kernel/slab/pid/partial', 0o664, b'7\n') +f('sys/kernel/slab/pid/validate', 0o664, b'') +f('sys/kernel/slab/pid/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/pid/free_calls', 0o664, b''' 69 <not-available> age=4303047306 pid=0 cpus=0 + 138 put_pid+0x36/0x40 age=7228/7841898/8377070 pid=0-13258 cpus=0-1 +''') +f('sys/kernel/slab/pid/aliases', 0o664, b'0\n') +d('sys/kernel/slab/ext2_inode_cache', 0o775) +f('sys/kernel/slab/ext2_inode_cache/reclaim_account', 0o664, b'1\n') +f('sys/kernel/slab/ext2_inode_cache/ctor', 0o664, b'init_once+0x0/0x60\n') +f('sys/kernel/slab/ext2_inode_cache/hwcache_align', 0o664, b'0\n') +f('sys/kernel/slab/ext2_inode_cache/slab_size', 0o664, b'1456\n') +f('sys/kernel/slab/ext2_inode_cache/total_objects', 0o664, b'0\n') +f('sys/kernel/slab/ext2_inode_cache/slabs', 0o664, b'0\n') +f('sys/kernel/slab/ext2_inode_cache/poison', 0o664, b'1\n') +f('sys/kernel/slab/ext2_inode_cache/alloc_calls', 0o664, b'No data\n') +f('sys/kernel/slab/ext2_inode_cache/objs_per_slab', 0o664, b'22\n') +f('sys/kernel/slab/ext2_inode_cache/shrink', 0o664, b'') +f('sys/kernel/slab/ext2_inode_cache/trace', 0o664, b'0\n') +f('sys/kernel/slab/ext2_inode_cache/object_size', 0o664, b'1384\n') +f('sys/kernel/slab/ext2_inode_cache/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/ext2_inode_cache/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/ext2_inode_cache/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/ext2_inode_cache/objects_partial', 0o664, b'0\n') +f('sys/kernel/slab/ext2_inode_cache/objects', 0o664, b'0\n') +f('sys/kernel/slab/ext2_inode_cache/order', 0o664, b'3\n') +f('sys/kernel/slab/ext2_inode_cache/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/ext2_inode_cache/store_user', 0o664, b'1\n') +f('sys/kernel/slab/ext2_inode_cache/align', 0o664, b'0\n') +f('sys/kernel/slab/ext2_inode_cache/partial', 0o664, b'0\n') +f('sys/kernel/slab/ext2_inode_cache/validate', 0o664, b'') +f('sys/kernel/slab/ext2_inode_cache/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/ext2_inode_cache/free_calls', 0o664, b'No data\n') +f('sys/kernel/slab/ext2_inode_cache/aliases', 0o664, b'0\n') +d('sys/kernel/slab/kmalloc-1024', 0o775) +f('sys/kernel/slab/kmalloc-1024/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-1024/ctor', 0o664, b'') +f('sys/kernel/slab/kmalloc-1024/hwcache_align', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-1024/slab_size', 0o664, b'1096\n') +f('sys/kernel/slab/kmalloc-1024/total_objects', 0o664, b'580\n') +f('sys/kernel/slab/kmalloc-1024/slabs', 0o664, b'20\n') +f('sys/kernel/slab/kmalloc-1024/poison', 0o664, b'1\n') +f('sys/kernel/slab/kmalloc-1024/alloc_calls', 0o664, b''' 23 __register_sysctl_paths+0x56/0x340 age=8360116/8368981/8379769 pid=1-1549 cpus=0-1 + 5 param_sysfs_setup+0x87/0x140 age=8355550/8371926/8379909 pid=1-1805 cpus=0-1 + 5 load_module+0x18d5/0x1b30 age=8328407/8365286/8375764 pid=208-2578 cpus=0 + 2 __vmalloc_area_node+0xfb/0x140 age=8360170/8367347/8374524 pid=107-1549 cpus=0 + 4 __percpu_alloc_mask+0xbc/0x140 age=8379760/8379760/8379760 pid=1 cpus=0 + 113 alloc_pipe_info+0x25/0x60 age=125624/8270722/8377065 pid=1-13212 cpus=0-1 + 2 alloc_fdtable+0x81/0x160 age=2417000/5386894/8356789 pid=1690 cpus=0-1 + 1 mb_cache_create+0xb6/0x1f0 age=8379750 pid=1 cpus=1 + 1 mb_cache_create+0x11e/0x1f0 age=8379750 pid=1 cpus=1 + 8 add_partition+0x45/0x250 age=61959/7339549/8379206 pid=1-13295 cpus=0 + 2 __crypto_alloc_tfm+0x43/0x1b0 age=3544684/3544684/3544684 pid=1545 cpus=0 + 1 pci_create_bus+0x82/0x240 age=8379831 pid=1 cpus=0 + 14 pcie_port_device_register+0x254/0x4a0 age=8379746/8379746/8379748 pid=1 cpus=1 + 1 acpi_ev_create_gpe_block+0x10b/0x3bf age=8379903 pid=1 cpus=0 + 1 acpi_tb_resize_root_table_list+0x66/0xdb age=8375731 pid=330 cpus=0 + 2 tty_buffer_request_room+0x136/0x190 age=8214639/8272696/8330753 pid=0-2262 cpus=0 + 1 tty_register_driver+0x1b3/0x2a0 age=8309081 pid=2711 cpus=1 + 10 tty_write+0x160/0x280 age=7214010/8238951/8377659 pid=34-2590 cpus=0-1 + 2 set_inverse_trans_unicode+0xce/0xf0 age=8355014/8367379/8379745 pid=1-1898 cpus=1 + 1 uart_register_driver+0x31/0x1c0 age=8379710 pid=1 cpus=1 + 166 device_create_vargs+0x8c/0x100 age=22658/8173620/8379911 pid=1-13295 cpus=0-1 + 8 platform_device_alloc+0x37/0x90 age=8367172/8376785/8379911 pid=1-1285 cpus=0-1 + 3 scsi_alloc_target+0x63/0x2e0 age=61990/5606770/8379325 pid=1-13295 cpus=0-1 + 2 sd_probe+0x86/0x430 age=61986/4220653/8379321 pid=1-13295 cpus=1 + 1 ahci_port_start+0x34/0xe0 age=8379708 pid=1 cpus=1 + 1 psmouse_connect+0x5b/0x2c0 age=8378898 pid=17 cpus=1 + 2 thermal_cooling_device_register+0x7f/0x290 age=8375643/8375667/8375692 pid=330 cpus=0-1 + 1 hid_add_field+0xcc/0x3a0 age=53473 pid=419 cpus=0 + 4 sock_alloc_send_skb+0x1cd/0x200 age=8344775/8349266/8350926 pid=1738 cpus=0-1 + 3 __rtnl_register+0x79/0x90 age=8360119/8373266/8379912 pid=1-1549 cpus=0 + 6 qdisc_alloc+0x34/0xd0 age=8356043/8356079/8356257 pid=1541 cpus=0 + 1 dmi_id_init+0x2a4/0x30c age=8379910 pid=1 cpus=0 + 5 hub_probe+0xdd/0x820 [usbcore] age=8373999/8374492/8374845 pid=143-147 cpus=0-1 + 5 usb_create_hcd+0x39/0x150 [usbcore] age=8374071/8374526/8374892 pid=143-147 cpus=0 + 26 usb_set_configuration+0x441/0x5f0 [usbcore] age=22663/3237429/8374857 pid=143-419 cpus=0-1 + 10 usb_get_configuration+0x92/0x1480 [usbcore] age=22667/5876069/8374865 pid=143-419 cpus=0-1 + 34 usb_create_ep_files+0x51/0x350 [usbcore] age=22579/5431762/8374732 pid=143-419 cpus=0-1 + 1 acpi_battery_add+0x29/0x1d3 [battery] age=8375630 pid=396 cpus=0 + 1 snd_card_new+0x38/0x370 [snd] age=8374136 pid=107 cpus=0 + 1 sta_info_alloc+0x3c/0x1d0 [mac80211] age=8329523 pid=742 cpus=0 + 2 snd_pcm_new+0x47/0x130 [snd_pcm] age=8374109/8374109/8374109 pid=107 cpus=1 + 1 rs_alloc_sta+0x25/0x120 [iwl3945] age=8329523 pid=742 cpus=0 + 1 get_alloc_hash+0x9b/0x140 [snd_hda_intel] age=8373108 pid=786 cpus=0 + 1 azx_probe+0xb3/0xc20 [snd_hda_intel] age=8374129 pid=107 cpus=0 + 1 azx_probe+0x4a9/0xc20 [snd_hda_intel] age=8374122 pid=107 cpus=0 + 1 snd_hda_codec_new+0x3e/0x559 [snd_hda_intel] age=8374112 pid=107 cpus=1 + 1 md_probe+0xa1/0x360 [md_mod] age=8370183 pid=916 cpus=0 + 8 loop_alloc+0x28/0x140 [loop] age=8369639/8369639/8369639 pid=951 cpus=0 + 4 ipv6_add_dev+0x69/0x330 [ipv6] age=8360116/8360117/8360119 pid=1549 cpus=0 + 1 ipv6_route_sysctl_init+0x22/0xb0 [ipv6] age=8360115 pid=1549 cpus=0 + 2 snd_seq_create_port+0x35/0x180 [snd_seq] age=8355549/8355549/8355549 pid=1805 cpus=0 +''') +f('sys/kernel/slab/kmalloc-1024/objs_per_slab', 0o664, b'29\n') +f('sys/kernel/slab/kmalloc-1024/shrink', 0o664, b'') +f('sys/kernel/slab/kmalloc-1024/trace', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-1024/object_size', 0o664, b'1024\n') +f('sys/kernel/slab/kmalloc-1024/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-1024/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-1024/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-1024/objects_partial', 0o664, b'196\n') +f('sys/kernel/slab/kmalloc-1024/objects', 0o664, b'544\n') +f('sys/kernel/slab/kmalloc-1024/order', 0o664, b'3\n') +f('sys/kernel/slab/kmalloc-1024/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/kmalloc-1024/store_user', 0o664, b'1\n') +f('sys/kernel/slab/kmalloc-1024/align', 0o664, b'8\n') +f('sys/kernel/slab/kmalloc-1024/partial', 0o664, b'8\n') +f('sys/kernel/slab/kmalloc-1024/validate', 0o664, b'') +f('sys/kernel/slab/kmalloc-1024/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/kmalloc-1024/free_calls', 0o664, b''' 216 <not-available> age=4303047343 pid=0 cpus=0 + 1 __vunmap+0xe9/0x120 age=8360137 pid=1549 cpus=0 + 64 __free_pipe_info+0x5c/0x70 age=55301/8227248/8377668 pid=34-13363 cpus=0-1 + 19 acpi_ds_delete_walk_state+0xc9/0xcd age=8355814/8376228/8380000 pid=0-1772 cpus=0-1 + 1 acpi_tb_resize_root_table_list+0xbf/0xdb age=8375732 pid=330 cpus=0 + 2 release_one_tty+0xc7/0x190 age=8352476/8361380/8370284 pid=55-1253 cpus=0-1 + 1 vt_ioctl+0x273/0x1c30 age=8356598 pid=1703 cpus=0 + 14 device_create_release+0x9/0x10 age=8352395/8354628/8356598 pid=1703-2139 cpus=0-1 + 1 fw_dev_release+0x20/0x30 age=8356148 pid=1541 cpus=0 + 184 skb_release_data+0x85/0xd0 age=22639/7036434/8379911 pid=0-13303 cpus=0-1 +''') +f('sys/kernel/slab/kmalloc-1024/aliases', 0o664, b'0\n') +d('sys/kernel/slab/files_cache', 0o775) +f('sys/kernel/slab/files_cache/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/files_cache/ctor', 0o664, b'') +f('sys/kernel/slab/files_cache/hwcache_align', 0o664, b'1\n') +f('sys/kernel/slab/files_cache/slab_size', 0o664, b'896\n') +f('sys/kernel/slab/files_cache/total_objects', 0o664, b'108\n') +f('sys/kernel/slab/files_cache/slabs', 0o664, b'6\n') +f('sys/kernel/slab/files_cache/poison', 0o664, b'1\n') +f('sys/kernel/slab/files_cache/alloc_calls', 0o664, b' 80 dup_fd+0x2e/0x420 age=4136/7769280/8379905 pid=0-12336 cpus=0-1\n') +f('sys/kernel/slab/files_cache/objs_per_slab', 0o664, b'18\n') +f('sys/kernel/slab/files_cache/shrink', 0o664, b'') +f('sys/kernel/slab/files_cache/trace', 0o664, b'0\n') +f('sys/kernel/slab/files_cache/object_size', 0o664, b'768\n') +f('sys/kernel/slab/files_cache/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/files_cache/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/files_cache/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/files_cache/objects_partial', 0o664, b'29\n') +f('sys/kernel/slab/files_cache/objects', 0o664, b'101\n') +f('sys/kernel/slab/files_cache/order', 0o664, b'2\n') +f('sys/kernel/slab/files_cache/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/files_cache/store_user', 0o664, b'1\n') +f('sys/kernel/slab/files_cache/align', 0o664, b'0\n') +f('sys/kernel/slab/files_cache/partial', 0o664, b'2\n') +f('sys/kernel/slab/files_cache/validate', 0o664, b'') +f('sys/kernel/slab/files_cache/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/files_cache/free_calls', 0o664, b''' 9 <not-available> age=4303047250 pid=0 cpus=0 + 31 put_files_struct+0xb4/0xe0 age=7177/7367129/8366999 pid=1202-20292 cpus=0-1 + 40 free_fdtable_rcu+0xa0/0xb0 age=61634/7953135/8376143 pid=0-12335 cpus=0-1 +''') +f('sys/kernel/slab/files_cache/aliases', 0o664, b'0\n') +d('sys/kernel/slab/UDP-Lite', 0o775) +f('sys/kernel/slab/UDP-Lite/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/UDP-Lite/ctor', 0o664, b'') +f('sys/kernel/slab/UDP-Lite/hwcache_align', 0o664, b'1\n') +f('sys/kernel/slab/UDP-Lite/slab_size', 0o664, b'1344\n') +f('sys/kernel/slab/UDP-Lite/total_objects', 0o664, b'0\n') +f('sys/kernel/slab/UDP-Lite/slabs', 0o664, b'0\n') +f('sys/kernel/slab/UDP-Lite/poison', 0o664, b'1\n') +f('sys/kernel/slab/UDP-Lite/alloc_calls', 0o664, b'No data\n') +f('sys/kernel/slab/UDP-Lite/objs_per_slab', 0o664, b'12\n') +f('sys/kernel/slab/UDP-Lite/shrink', 0o664, b'') +f('sys/kernel/slab/UDP-Lite/trace', 0o664, b'0\n') +f('sys/kernel/slab/UDP-Lite/object_size', 0o664, b'1232\n') +f('sys/kernel/slab/UDP-Lite/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/UDP-Lite/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/UDP-Lite/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/UDP-Lite/objects_partial', 0o664, b'0\n') +f('sys/kernel/slab/UDP-Lite/objects', 0o664, b'0\n') +f('sys/kernel/slab/UDP-Lite/order', 0o664, b'2\n') +f('sys/kernel/slab/UDP-Lite/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/UDP-Lite/store_user', 0o664, b'1\n') +f('sys/kernel/slab/UDP-Lite/align', 0o664, b'0\n') +f('sys/kernel/slab/UDP-Lite/partial', 0o664, b'0\n') +f('sys/kernel/slab/UDP-Lite/validate', 0o664, b'') +f('sys/kernel/slab/UDP-Lite/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/UDP-Lite/free_calls', 0o664, b'No data\n') +f('sys/kernel/slab/UDP-Lite/aliases', 0o664, b'0\n') +d('sys/kernel/slab/mnt_cache', 0o775) +f('sys/kernel/slab/mnt_cache/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/mnt_cache/ctor', 0o664, b'') +f('sys/kernel/slab/mnt_cache/hwcache_align', 0o664, b'1\n') +f('sys/kernel/slab/mnt_cache/slab_size', 0o664, b'320\n') +f('sys/kernel/slab/mnt_cache/total_objects', 0o664, b'36\n') +f('sys/kernel/slab/mnt_cache/slabs', 0o664, b'3\n') +f('sys/kernel/slab/mnt_cache/poison', 0o664, b'1\n') +f('sys/kernel/slab/mnt_cache/alloc_calls', 0o664, b' 25 alloc_vfsmnt+0x1f/0x180 age=61162/8041266/8379801 pid=0-13348 cpus=0-1\n') +f('sys/kernel/slab/mnt_cache/objs_per_slab', 0o664, b'12\n') +f('sys/kernel/slab/mnt_cache/shrink', 0o664, b'') +f('sys/kernel/slab/mnt_cache/trace', 0o664, b'0\n') +f('sys/kernel/slab/mnt_cache/object_size', 0o664, b'224\n') +f('sys/kernel/slab/mnt_cache/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/mnt_cache/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/mnt_cache/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/mnt_cache/objects_partial', 0o664, b'4\n') +f('sys/kernel/slab/mnt_cache/objects', 0o664, b'28\n') +f('sys/kernel/slab/mnt_cache/order', 0o664, b'0\n') +f('sys/kernel/slab/mnt_cache/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/mnt_cache/store_user', 0o664, b'1\n') +f('sys/kernel/slab/mnt_cache/align', 0o664, b'0\n') +f('sys/kernel/slab/mnt_cache/partial', 0o664, b'1\n') +f('sys/kernel/slab/mnt_cache/validate', 0o664, b'') +f('sys/kernel/slab/mnt_cache/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/mnt_cache/free_calls', 0o664, b''' 24 <not-available> age=4303047098 pid=0 cpus=0 + 1 free_vfsmnt+0x2c/0x40 age=7837771 pid=3347 cpus=0 +''') +f('sys/kernel/slab/mnt_cache/aliases', 0o664, b'0\n') +d('sys/kernel/slab/skbuff_head_cache', 0o775) +f('sys/kernel/slab/skbuff_head_cache/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/skbuff_head_cache/ctor', 0o664, b'') +f('sys/kernel/slab/skbuff_head_cache/hwcache_align', 0o664, b'1\n') +f('sys/kernel/slab/skbuff_head_cache/slab_size', 0o664, b'320\n') +f('sys/kernel/slab/skbuff_head_cache/total_objects', 0o664, b'588\n') +f('sys/kernel/slab/skbuff_head_cache/slabs', 0o664, b'49\n') +f('sys/kernel/slab/skbuff_head_cache/poison', 0o664, b'1\n') +f('sys/kernel/slab/skbuff_head_cache/alloc_calls', 0o664, b' 550 __alloc_skb+0x44/0x150 age=1665/3999351/8355948 pid=733-1738 cpus=0-1\n') +f('sys/kernel/slab/skbuff_head_cache/objs_per_slab', 0o664, b'12\n') +f('sys/kernel/slab/skbuff_head_cache/shrink', 0o664, b'') +f('sys/kernel/slab/skbuff_head_cache/trace', 0o664, b'0\n') +f('sys/kernel/slab/skbuff_head_cache/object_size', 0o664, b'208\n') +f('sys/kernel/slab/skbuff_head_cache/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/skbuff_head_cache/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/skbuff_head_cache/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/skbuff_head_cache/objects_partial', 0o664, b'18\n') +f('sys/kernel/slab/skbuff_head_cache/objects', 0o664, b'570\n') +f('sys/kernel/slab/skbuff_head_cache/order', 0o664, b'0\n') +f('sys/kernel/slab/skbuff_head_cache/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/skbuff_head_cache/store_user', 0o664, b'1\n') +f('sys/kernel/slab/skbuff_head_cache/align', 0o664, b'0\n') +f('sys/kernel/slab/skbuff_head_cache/partial', 0o664, b'3\n') +f('sys/kernel/slab/skbuff_head_cache/validate', 0o664, b'') +f('sys/kernel/slab/skbuff_head_cache/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/skbuff_head_cache/free_calls', 0o664, b''' 333 <not-available> age=4303046979 pid=0 cpus=0 + 217 __kfree_skb+0x3a/0xa0 age=1666/662694/8356220 pid=0-13466 cpus=0-1 +''') +f('sys/kernel/slab/skbuff_head_cache/aliases', 0o664, b'0\n') +d('sys/kernel/slab/fuse_inode', 0o775) +f('sys/kernel/slab/fuse_inode/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/fuse_inode/ctor', 0o664, b'fuse_inode_init_once+0x0/0x10 [fuse]\n') +f('sys/kernel/slab/fuse_inode/hwcache_align', 0o664, b'1\n') +f('sys/kernel/slab/fuse_inode/slab_size', 0o664, b'1344\n') +f('sys/kernel/slab/fuse_inode/total_objects', 0o664, b'12\n') +f('sys/kernel/slab/fuse_inode/slabs', 0o664, b'1\n') +f('sys/kernel/slab/fuse_inode/poison', 0o664, b'1\n') +f('sys/kernel/slab/fuse_inode/alloc_calls', 0o664, b' 1 fuse_alloc_inode+0x1a/0xe0 [fuse] age=8336111 pid=2476 cpus=0\n') +f('sys/kernel/slab/fuse_inode/objs_per_slab', 0o664, b'12\n') +f('sys/kernel/slab/fuse_inode/shrink', 0o664, b'') +f('sys/kernel/slab/fuse_inode/trace', 0o664, b'0\n') +f('sys/kernel/slab/fuse_inode/object_size', 0o664, b'1248\n') +f('sys/kernel/slab/fuse_inode/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/fuse_inode/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/fuse_inode/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/fuse_inode/objects_partial', 0o664, b'1\n') +f('sys/kernel/slab/fuse_inode/objects', 0o664, b'1\n') +f('sys/kernel/slab/fuse_inode/order', 0o664, b'2\n') +f('sys/kernel/slab/fuse_inode/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/fuse_inode/store_user', 0o664, b'1\n') +f('sys/kernel/slab/fuse_inode/align', 0o664, b'0\n') +f('sys/kernel/slab/fuse_inode/partial', 0o664, b'1\n') +f('sys/kernel/slab/fuse_inode/validate', 0o664, b'') +f('sys/kernel/slab/fuse_inode/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/fuse_inode/free_calls', 0o664, b' 1 <not-available> age=4303047710 pid=0 cpus=0\n') +f('sys/kernel/slab/fuse_inode/aliases', 0o664, b'0\n') +d('sys/kernel/slab/skbuff_fclone_cache', 0o775) +f('sys/kernel/slab/skbuff_fclone_cache/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/skbuff_fclone_cache/ctor', 0o664, b'') +f('sys/kernel/slab/skbuff_fclone_cache/hwcache_align', 0o664, b'1\n') +f('sys/kernel/slab/skbuff_fclone_cache/slab_size', 0o664, b'512\n') +f('sys/kernel/slab/skbuff_fclone_cache/total_objects', 0o664, b'32\n') +f('sys/kernel/slab/skbuff_fclone_cache/slabs', 0o664, b'2\n') +f('sys/kernel/slab/skbuff_fclone_cache/poison', 0o664, b'1\n') +f('sys/kernel/slab/skbuff_fclone_cache/alloc_calls', 0o664, b'No data\n') +f('sys/kernel/slab/skbuff_fclone_cache/objs_per_slab', 0o664, b'16\n') +f('sys/kernel/slab/skbuff_fclone_cache/shrink', 0o664, b'') +f('sys/kernel/slab/skbuff_fclone_cache/trace', 0o664, b'0\n') +f('sys/kernel/slab/skbuff_fclone_cache/object_size', 0o664, b'420\n') +f('sys/kernel/slab/skbuff_fclone_cache/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/skbuff_fclone_cache/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/skbuff_fclone_cache/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/skbuff_fclone_cache/objects_partial', 0o664, b'0\n') +f('sys/kernel/slab/skbuff_fclone_cache/objects', 0o664, b'32\n') +f('sys/kernel/slab/skbuff_fclone_cache/order', 0o664, b'1\n') +f('sys/kernel/slab/skbuff_fclone_cache/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/skbuff_fclone_cache/store_user', 0o664, b'1\n') +f('sys/kernel/slab/skbuff_fclone_cache/align', 0o664, b'0\n') +f('sys/kernel/slab/skbuff_fclone_cache/partial', 0o664, b'0\n') +f('sys/kernel/slab/skbuff_fclone_cache/validate', 0o664, b'') +f('sys/kernel/slab/skbuff_fclone_cache/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/skbuff_fclone_cache/free_calls', 0o664, b'No data\n') +f('sys/kernel/slab/skbuff_fclone_cache/aliases', 0o664, b'0\n') +d('sys/kernel/slab/buffer_head', 0o775) +f('sys/kernel/slab/buffer_head/reclaim_account', 0o664, b'1\n') +f('sys/kernel/slab/buffer_head/ctor', 0o664, b'init_buffer_head+0x0/0x20\n') +f('sys/kernel/slab/buffer_head/hwcache_align', 0o664, b'0\n') +f('sys/kernel/slab/buffer_head/slab_size', 0o664, b'176\n') +f('sys/kernel/slab/buffer_head/total_objects', 0o664, b'31487\n') +f('sys/kernel/slab/buffer_head/slabs', 0o664, b'1369\n') +f('sys/kernel/slab/buffer_head/poison', 0o664, b'1\n') +f('sys/kernel/slab/buffer_head/alloc_calls', 0o664, b' 31488 alloc_buffer_head+0x19/0x50 age=1/3079345/8378152 pid=1-32767 cpus=0-1\n') +f('sys/kernel/slab/buffer_head/objs_per_slab', 0o664, b'23\n') +f('sys/kernel/slab/buffer_head/shrink', 0o664, b'') +f('sys/kernel/slab/buffer_head/trace', 0o664, b'0\n') +f('sys/kernel/slab/buffer_head/object_size', 0o664, b'104\n') +f('sys/kernel/slab/buffer_head/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/buffer_head/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/buffer_head/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/buffer_head/objects_partial', 0o664, b'0\n') +f('sys/kernel/slab/buffer_head/objects', 0o664, b'31487\n') +f('sys/kernel/slab/buffer_head/order', 0o664, b'0\n') +f('sys/kernel/slab/buffer_head/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/buffer_head/store_user', 0o664, b'1\n') +f('sys/kernel/slab/buffer_head/align', 0o664, b'0\n') +f('sys/kernel/slab/buffer_head/partial', 0o664, b'0\n') +f('sys/kernel/slab/buffer_head/validate', 0o664, b'') +f('sys/kernel/slab/buffer_head/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/buffer_head/free_calls', 0o664, b''' 14436 <not-available> age=4303047199 pid=0 cpus=0 + 17053 free_buffer_head+0x20/0x40 age=1227/1928220/8379062 pid=1-32759 cpus=0-1 +''') +f('sys/kernel/slab/buffer_head/aliases', 0o664, b'0\n') +d('sys/kernel/slab/blkdev_queue', 0o775) +f('sys/kernel/slab/blkdev_queue/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/blkdev_queue/ctor', 0o664, b'') +f('sys/kernel/slab/blkdev_queue/hwcache_align', 0o664, b'0\n') +f('sys/kernel/slab/blkdev_queue/slab_size', 0o664, b'2496\n') +f('sys/kernel/slab/blkdev_queue/total_objects', 0o664, b'26\n') +f('sys/kernel/slab/blkdev_queue/slabs', 0o664, b'2\n') +f('sys/kernel/slab/blkdev_queue/poison', 0o664, b'1\n') +f('sys/kernel/slab/blkdev_queue/alloc_calls', 0o664, b' 12 blk_alloc_queue_node+0x1c/0xc0 age=61520/7678497/8378855 pid=1-13295 cpus=0-1\n') +f('sys/kernel/slab/blkdev_queue/objs_per_slab', 0o664, b'13\n') +f('sys/kernel/slab/blkdev_queue/shrink', 0o664, b'') +f('sys/kernel/slab/blkdev_queue/trace', 0o664, b'0\n') +f('sys/kernel/slab/blkdev_queue/object_size', 0o664, b'2424\n') +f('sys/kernel/slab/blkdev_queue/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/blkdev_queue/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/blkdev_queue/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/blkdev_queue/objects_partial', 0o664, b'10\n') +f('sys/kernel/slab/blkdev_queue/objects', 0o664, b'23\n') +f('sys/kernel/slab/blkdev_queue/order', 0o664, b'3\n') +f('sys/kernel/slab/blkdev_queue/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/blkdev_queue/store_user', 0o664, b'1\n') +f('sys/kernel/slab/blkdev_queue/align', 0o664, b'0\n') +f('sys/kernel/slab/blkdev_queue/partial', 0o664, b'1\n') +f('sys/kernel/slab/blkdev_queue/validate', 0o664, b'') +f('sys/kernel/slab/blkdev_queue/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/blkdev_queue/free_calls', 0o664, b' 12 <not-available> age=4303046873 pid=0 cpus=0\n') +f('sys/kernel/slab/blkdev_queue/aliases', 0o664, b'0\n') +d('sys/kernel/slab/RAW', 0o775) +f('sys/kernel/slab/RAW/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/RAW/ctor', 0o664, b'') +f('sys/kernel/slab/RAW/hwcache_align', 0o664, b'1\n') +f('sys/kernel/slab/RAW/slab_size', 0o664, b'1280\n') +f('sys/kernel/slab/RAW/total_objects', 0o664, b'12\n') +f('sys/kernel/slab/RAW/slabs', 0o664, b'1\n') +f('sys/kernel/slab/RAW/poison', 0o664, b'1\n') +f('sys/kernel/slab/RAW/alloc_calls', 0o664, b' 3 sk_prot_alloc+0x1e/0xb0 age=8379168/8379171/8379177 pid=1 cpus=0\n') +f('sys/kernel/slab/RAW/objs_per_slab', 0o664, b'12\n') +f('sys/kernel/slab/RAW/shrink', 0o664, b'') +f('sys/kernel/slab/RAW/trace', 0o664, b'0\n') +f('sys/kernel/slab/RAW/object_size', 0o664, b'1208\n') +f('sys/kernel/slab/RAW/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/RAW/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/RAW/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/RAW/objects_partial', 0o664, b'3\n') +f('sys/kernel/slab/RAW/objects', 0o664, b'3\n') +f('sys/kernel/slab/RAW/order', 0o664, b'2\n') +f('sys/kernel/slab/RAW/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/RAW/store_user', 0o664, b'1\n') +f('sys/kernel/slab/RAW/align', 0o664, b'0\n') +f('sys/kernel/slab/RAW/partial', 0o664, b'1\n') +f('sys/kernel/slab/RAW/validate', 0o664, b'') +f('sys/kernel/slab/RAW/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/RAW/free_calls', 0o664, b' 3 <not-available> age=4303046751 pid=0 cpus=0\n') +f('sys/kernel/slab/RAW/aliases', 0o664, b'0\n') +d('sys/kernel/slab/blkdev_ioc', 0o775) +f('sys/kernel/slab/blkdev_ioc/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/blkdev_ioc/ctor', 0o664, b'') +f('sys/kernel/slab/blkdev_ioc/hwcache_align', 0o664, b'0\n') +f('sys/kernel/slab/blkdev_ioc/slab_size', 0o664, b'200\n') +f('sys/kernel/slab/blkdev_ioc/total_objects', 0o664, b'100\n') +f('sys/kernel/slab/blkdev_ioc/slabs', 0o664, b'5\n') +f('sys/kernel/slab/blkdev_ioc/poison', 0o664, b'1\n') +f('sys/kernel/slab/blkdev_ioc/alloc_calls', 0o664, b' 64 alloc_io_context+0x19/0xa0 age=3410/8058449/8378873 pid=1-13466 cpus=0-1\n') +f('sys/kernel/slab/blkdev_ioc/objs_per_slab', 0o664, b'20\n') +f('sys/kernel/slab/blkdev_ioc/shrink', 0o664, b'') +f('sys/kernel/slab/blkdev_ioc/trace', 0o664, b'0\n') +f('sys/kernel/slab/blkdev_ioc/object_size', 0o664, b'128\n') +f('sys/kernel/slab/blkdev_ioc/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/blkdev_ioc/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/blkdev_ioc/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/blkdev_ioc/objects_partial', 0o664, b'38\n') +f('sys/kernel/slab/blkdev_ioc/objects', 0o664, b'98\n') +f('sys/kernel/slab/blkdev_ioc/order', 0o664, b'0\n') +f('sys/kernel/slab/blkdev_ioc/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/blkdev_ioc/store_user', 0o664, b'1\n') +f('sys/kernel/slab/blkdev_ioc/align', 0o664, b'0\n') +f('sys/kernel/slab/blkdev_ioc/partial', 0o664, b'2\n') +f('sys/kernel/slab/blkdev_ioc/validate', 0o664, b'') +f('sys/kernel/slab/blkdev_ioc/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/blkdev_ioc/free_calls', 0o664, b''' 9 <not-available> age=4303046891 pid=0 cpus=0 + 55 put_io_context+0xb2/0xd0 age=45025/8043308/8374605 pid=145-13349 cpus=0-1 +''') +f('sys/kernel/slab/blkdev_ioc/aliases', 0o664, b'0\n') +d('sys/kernel/slab/sigqueue', 0o775) +f('sys/kernel/slab/sigqueue/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/sigqueue/ctor', 0o664, b'') +f('sys/kernel/slab/sigqueue/hwcache_align', 0o664, b'0\n') +f('sys/kernel/slab/sigqueue/slab_size', 0o664, b'232\n') +f('sys/kernel/slab/sigqueue/total_objects', 0o664, b'34\n') +f('sys/kernel/slab/sigqueue/slabs', 0o664, b'2\n') +f('sys/kernel/slab/sigqueue/poison', 0o664, b'1\n') +f('sys/kernel/slab/sigqueue/alloc_calls', 0o664, b'No data\n') +f('sys/kernel/slab/sigqueue/objs_per_slab', 0o664, b'17\n') +f('sys/kernel/slab/sigqueue/shrink', 0o664, b'') +f('sys/kernel/slab/sigqueue/trace', 0o664, b'0\n') +f('sys/kernel/slab/sigqueue/object_size', 0o664, b'160\n') +f('sys/kernel/slab/sigqueue/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/sigqueue/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/sigqueue/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/sigqueue/objects_partial', 0o664, b'0\n') +f('sys/kernel/slab/sigqueue/objects', 0o664, b'34\n') +f('sys/kernel/slab/sigqueue/order', 0o664, b'0\n') +f('sys/kernel/slab/sigqueue/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/sigqueue/store_user', 0o664, b'1\n') +f('sys/kernel/slab/sigqueue/align', 0o664, b'8\n') +f('sys/kernel/slab/sigqueue/partial', 0o664, b'0\n') +f('sys/kernel/slab/sigqueue/validate', 0o664, b'') +f('sys/kernel/slab/sigqueue/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/sigqueue/free_calls', 0o664, b'No data\n') +f('sys/kernel/slab/sigqueue/aliases', 0o664, b'0\n') +d('sys/kernel/slab/TCPv6', 0o775) +f('sys/kernel/slab/TCPv6/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/TCPv6/ctor', 0o664, b'') +f('sys/kernel/slab/TCPv6/hwcache_align', 0o664, b'1\n') +f('sys/kernel/slab/TCPv6/slab_size', 0o664, b'2432\n') +f('sys/kernel/slab/TCPv6/total_objects', 0o664, b'26\n') +f('sys/kernel/slab/TCPv6/slabs', 0o664, b'2\n') +f('sys/kernel/slab/TCPv6/poison', 0o664, b'1\n') +f('sys/kernel/slab/TCPv6/alloc_calls', 0o664, b'No data\n') +f('sys/kernel/slab/TCPv6/objs_per_slab', 0o664, b'13\n') +f('sys/kernel/slab/TCPv6/shrink', 0o664, b'') +f('sys/kernel/slab/TCPv6/trace', 0o664, b'0\n') +f('sys/kernel/slab/TCPv6/object_size', 0o664, b'2336\n') +f('sys/kernel/slab/TCPv6/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/TCPv6/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/TCPv6/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/TCPv6/objects_partial', 0o664, b'0\n') +f('sys/kernel/slab/TCPv6/objects', 0o664, b'26\n') +f('sys/kernel/slab/TCPv6/order', 0o664, b'3\n') +f('sys/kernel/slab/TCPv6/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/TCPv6/store_user', 0o664, b'1\n') +f('sys/kernel/slab/TCPv6/align', 0o664, b'0\n') +f('sys/kernel/slab/TCPv6/partial', 0o664, b'0\n') +f('sys/kernel/slab/TCPv6/validate', 0o664, b'') +f('sys/kernel/slab/TCPv6/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/TCPv6/free_calls', 0o664, b'No data\n') +f('sys/kernel/slab/TCPv6/aliases', 0o664, b'0\n') +d('sys/kernel/slab/kioctx', 0o775) +f('sys/kernel/slab/kioctx/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/kioctx/ctor', 0o664, b'') +f('sys/kernel/slab/kioctx/hwcache_align', 0o664, b'1\n') +f('sys/kernel/slab/kioctx/slab_size', 0o664, b'640\n') +f('sys/kernel/slab/kioctx/total_objects', 0o664, b'0\n') +f('sys/kernel/slab/kioctx/slabs', 0o664, b'0\n') +f('sys/kernel/slab/kioctx/poison', 0o664, b'1\n') +f('sys/kernel/slab/kioctx/alloc_calls', 0o664, b'No data\n') +f('sys/kernel/slab/kioctx/objs_per_slab', 0o664, b'12\n') +f('sys/kernel/slab/kioctx/shrink', 0o664, b'') +f('sys/kernel/slab/kioctx/trace', 0o664, b'0\n') +f('sys/kernel/slab/kioctx/object_size', 0o664, b'512\n') +f('sys/kernel/slab/kioctx/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/kioctx/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/kioctx/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/kioctx/objects_partial', 0o664, b'0\n') +f('sys/kernel/slab/kioctx/objects', 0o664, b'0\n') +f('sys/kernel/slab/kioctx/order', 0o664, b'1\n') +f('sys/kernel/slab/kioctx/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/kioctx/store_user', 0o664, b'1\n') +f('sys/kernel/slab/kioctx/align', 0o664, b'8\n') +f('sys/kernel/slab/kioctx/partial', 0o664, b'0\n') +f('sys/kernel/slab/kioctx/validate', 0o664, b'') +f('sys/kernel/slab/kioctx/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/kioctx/free_calls', 0o664, b'No data\n') +f('sys/kernel/slab/kioctx/aliases', 0o664, b'0\n') +d('sys/kernel/slab/kmalloc-32', 0o775) +f('sys/kernel/slab/kmalloc-32/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-32/ctor', 0o664, b'') +f('sys/kernel/slab/kmalloc-32/hwcache_align', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-32/slab_size', 0o664, b'104\n') +f('sys/kernel/slab/kmalloc-32/total_objects', 0o664, b'624\n') +f('sys/kernel/slab/kmalloc-32/slabs', 0o664, b'16\n') +f('sys/kernel/slab/kmalloc-32/poison', 0o664, b'1\n') +f('sys/kernel/slab/kmalloc-32/alloc_calls', 0o664, b''' 1 mtrr_file_add+0xb0/0xe0 age=8355511 pid=1738 cpus=0 + 2 arch_acpi_processor_init_pdc+0x8e/0x180 age=8375727/8375758/8375789 pid=330 cpus=0 + 1 pm_qos_add_requirement+0x34/0xe0 age=8376080 pid=122 cpus=1 + 59 setup_modinfo_srcversion+0x19/0x30 age=8303075/8368435/8376316 pid=105-2754 cpus=0-1 + 42 load_module+0x1455/0x1b30 age=8303075/8366312/8375832 pid=107-2754 cpus=0-1 + 151 load_module+0x1ac4/0x1b30 age=8303071/8368871/8376310 pid=105-2754 cpus=0-1 + 3 mempool_create_node+0x4b/0xf0 age=62046/5606826/8379381 pid=1-13295 cpus=0-1 + 1 strndup_user+0x6d/0xc0 age=8374925 pid=107 cpus=0 + 16 __vmalloc_area_node+0xfb/0x140 age=8328464/8366300/8376086 pid=107-2578 cpus=0-1 + 1 do_kern_mount+0xca/0x110 age=8335800 pid=2476 cpus=0 + 1 do_sys_poll+0xdb/0x450 age=1303 pid=1333 cpus=1 + 1 alloc_vfsmnt+0x97/0x180 age=8335801 pid=2476 cpus=0 + 1 single_open+0x3c/0xb0 age=8355816 pid=1738 cpus=0 + 66 sysfs_new_dirent+0x10c/0x120 age=8360190/8377926/8379815 pid=1-1549 cpus=0-1 + 30 do_shmat+0x169/0x410 age=8274161/8330033/8348616 pid=1738-2621 cpus=0-1 + 21 register_blkdev+0x60/0x150 age=8369695/8377753/8379765 pid=1-951 cpus=0-1 + 39 kvasprintf+0x55/0x90 age=8360190/8378048/8379814 pid=1-1549 cpus=0-1 + 7 pci_save_state+0x1a4/0x250 age=8373637/8378406/8379803 pid=1-126 cpus=0-1 + 2 pcim_enable_device+0x86/0xb0 age=8379255/8379510/8379765 pid=1 cpus=0-1 + 15 acpi_ds_build_internal_package_obj+0xaf/0x1df age=8379932/8379938/8379947 pid=1 cpus=0 + 21 acpi_ds_build_internal_buffer_obj+0xe1/0x121 age=3847501/7731852/8379949 pid=1-330 cpus=0 + 1 acpi_install_gpe_handler+0xa7/0x13a age=8379959 pid=1 cpus=0 + 1 acpi_ev_create_gpe_block+0x282/0x3bf age=8379959 pid=1 cpus=0 + 1 acpi_pci_bind_root+0x8d/0x13e age=8379883 pid=1 cpus=0 + 18 acpi_pci_bind+0x85/0x28d age=8379879/8379879/8379882 pid=1 cpus=0 + 15 rand_initialize_disk+0x1d/0x30 age=62014/7263977/8379377 pid=1-13295 cpus=0-1 + 1 ata_host_start+0xcb/0x1e0 age=8379764 pid=1 cpus=1 + 1 hidinput_connect+0x2372/0x24e0 age=53529 pid=419 cpus=0 + 1 sock_kmalloc+0x5c/0x70 age=8325518 pid=1849 cpus=1 + 2 proto_register+0x7c/0x260 age=8360191/8370012/8379834 pid=1-1549 cpus=0 + 2 neigh_hash_alloc+0x42/0x50 age=8325417/8327412/8329408 pid=0-1849 cpus=1 + 1 nl_pid_hash_rehash+0x180/0x1a0 age=947530 pid=1189 cpus=0 + 28 unix_bind+0xd8/0x3a0 age=8356458/8357177/8366824 pid=1336-1738 cpus=0-1 + 3 ipc_init_proc_interface+0x2e/0x7c age=8379805/8379805/8379805 pid=1 cpus=1 + 13 usb_cache_string+0x65/0xa0 [usbcore] age=22649/4521883/8374921 pid=143-419 cpus=0-1 + 6 usb_get_configuration+0x18f/0x1480 [usbcore] age=67053/6989971/8374921 pid=143-419 cpus=0-1 + 2 _snd_ctl_register_ioctl+0x2b/0x80 [snd] age=8374675/8374675/8374675 pid=107 cpus=0 + 2 snd_oss_info_register+0x40/0xc0 [snd] age=8355350/8355452/8355555 pid=1813 cpus=0 + 6 adjust_io+0xeb/0x120 [rsrc_nonstatic] age=8373110/8373182/8373542 pid=352-800 cpus=0 + 5 adjust_memory+0xe5/0x1a0 [rsrc_nonstatic] age=8373110/8373278/8373535 pid=352-800 cpus=0 + 1 ieee80211_sta_set_extra_ie+0x7d/0xe0 [mac80211] age=8329597 pid=1545 cpus=0 + 2 ieee80211_rx_bss_info+0x4df/0xa20 [mac80211] age=8330170/8342783/8355397 pid=0 cpus=0 + 2 ieee80211_rx_bss_info+0x568/0xa20 [mac80211] age=22736/4188782/8354829 pid=742-1951 cpus=0 + 2 ieee80211_rx_bss_info+0x5f7/0xa20 [mac80211] age=22736/4189294/8355852 pid=742-1772 cpus=0 + 1 rate_control_alloc+0x32/0x110 [mac80211] age=8373757 pid=126 cpus=1 + 2 ieee80211_rate_control_register+0x72/0xf0 [mac80211] age=8374580/8374635/8374690 pid=126 cpus=0-1 + 2 azx_probe+0x9a4/0xc20 [snd_hda_intel] age=8374165/8374165/8374165 pid=107 cpus=1 + 1 async_chainiv_givencrypt+0x71/0x110 [crypto_blkcipher] age=8374560 pid=215 cpus=0 + 1 run+0x66/0x500 [raid1] age=8370114 pid=916 cpus=0 + 1 acpi_cpufreq_cpu_init+0x4d/0x45c [acpi_cpufreq] age=8366427 pid=1358 cpus=0 +''') +f('sys/kernel/slab/kmalloc-32/objs_per_slab', 0o664, b'39\n') +f('sys/kernel/slab/kmalloc-32/shrink', 0o664, b'') +f('sys/kernel/slab/kmalloc-32/trace', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-32/object_size', 0o664, b'32\n') +f('sys/kernel/slab/kmalloc-32/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-32/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-32/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-32/objects_partial', 0o664, b'149\n') +f('sys/kernel/slab/kmalloc-32/objects', 0o664, b'617\n') +f('sys/kernel/slab/kmalloc-32/order', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-32/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/kmalloc-32/store_user', 0o664, b'1\n') +f('sys/kernel/slab/kmalloc-32/align', 0o664, b'8\n') +f('sys/kernel/slab/kmalloc-32/partial', 0o664, b'4\n') +f('sys/kernel/slab/kmalloc-32/validate', 0o664, b'') +f('sys/kernel/slab/kmalloc-32/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/kmalloc-32/free_calls', 0o664, b''' 409 <not-available> age=4303047399 pid=0 cpus=0 + 4 __vunmap+0xe9/0x120 age=8366429/8372533/8374823 pid=215-1358 cpus=0-1 + 1 vfs_rename+0x301/0x450 age=8274772 pid=2851 cpus=0 + 8 do_sys_poll+0x32b/0x450 age=1304/6728883/8333312 pid=1333 cpus=0-1 + 1 seq_release_private+0x2d/0x60 age=8352378 pid=2141 cpus=0 + 5 single_release+0x2e/0x40 age=8343903/8358822/8366889 pid=1258-1806 cpus=0 + 1 setxattr+0xa6/0x130 age=8355591 pid=1816 cpus=0 + 6 bio_free_map_data+0x25/0x30 age=53571/4350975/8375998 pid=0-318 cpus=0 + 6 remove_kevent+0x44/0x60 age=7219423/7961750/8346613 pid=2271-2423 cpus=0-1 + 57 load_elf_binary+0xa72/0x1e20 age=22671/8213994/8376585 pid=102-13419 cpus=0-1 + 1 generic_acl_set+0x15e/0x1a0 age=8355591 pid=1816 cpus=0 + 67 kobject_uevent_env+0x11a/0x470 age=62016/8246870/8379965 pid=1-13295 cpus=0-1 + 2 pci_get_subsys+0x74/0xa0 age=8375728/8375759/8375790 pid=330 cpus=0 + 8 acpi_evaluate_integer+0xbf/0xd1 age=3847577/7810351/8379888 pid=1-2097 cpus=0 + 3 acpi_ds_create_operand+0x12c/0x209 age=3847578/6867437/8379889 pid=1-2097 cpus=0 + 3 acpi_ns_get_node+0x92/0xa1 age=8374447/8376288/8379960 pid=1-215 cpus=0-1 + 5 acpi_ut_delete_internal_obj+0x15f/0x16f age=8366428/8373878/8375771 pid=330-1358 cpus=0 + 3 acpi_pci_bind+0x277/0x28d age=8379881/8379881/8379883 pid=1 cpus=0 + 1 get_modalias+0xd4/0x120 age=8355825 pid=1772 cpus=0 + 2 ioctl_standard_iw_point+0x179/0x350 age=63360/84363/105367 pid=1541 cpus=0 + 1 pci_bus_assign_resources+0xfe/0x4d0 age=8379836 pid=1 cpus=0 + 1 sg_clean+0x3e/0x80 [usbcore] age=59566 pid=13294 cpus=0 + 9 usb_get_device_descriptor+0x9b/0xa0 [usbcore] age=22724/6523118/8374922 pid=143-419 cpus=0-1 + 1 ieee80211_rx_bss_info+0x552/0xa20 [mac80211] age=22737 pid=742 cpus=0 + 2 ieee80211_rx_bss_info+0x5e1/0xa20 [mac80211] age=22737/4189295/8355853 pid=742-1772 cpus=0 +''') +f('sys/kernel/slab/kmalloc-32/aliases', 0o664, b'0\n') +d('sys/kernel/slab/kmalloc-64', 0o775) +f('sys/kernel/slab/kmalloc-64/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-64/ctor', 0o664, b'') +f('sys/kernel/slab/kmalloc-64/hwcache_align', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-64/slab_size', 0o664, b'136\n') +f('sys/kernel/slab/kmalloc-64/total_objects', 0o664, b'15300\n') +f('sys/kernel/slab/kmalloc-64/slabs', 0o664, b'510\n') +f('sys/kernel/slab/kmalloc-64/poison', 0o664, b'1\n') +f('sys/kernel/slab/kmalloc-64/alloc_calls', 0o664, b''' 30 alternatives_smp_module_add+0x81/0x160 age=8303055/8368397/8380085 pid=0-2754 cpus=0-1 + 39 __request_region+0x39/0x120 age=8373811/8378273/8379949 pid=1-352 cpus=0-1 + 1 audit_log_start+0x353/0x3f0 age=8379797 pid=1 cpus=1 + 16 request_irq+0x9a/0xf0 age=8356279/8374005/8379942 pid=1-1541 cpus=0-1 + 3 devm_request_irq+0x4b/0xc0 age=8379232/8379403/8379747 pid=1 cpus=0-1 + 1 strndup_user+0x6d/0xc0 age=8374545 pid=215 cpus=0 + 95 __get_vm_area_node+0x9b/0x220 age=8303058/8371551/8380085 pid=0-2754 cpus=0-1 + 17 __vmalloc_area_node+0xfb/0x140 age=8309125/8366469/8376299 pid=105-2711 cpus=0-1 + 1 add_swap_extent+0x57/0xc0 age=8372039 pid=867 cpus=0 + 33 dma_pool_alloc+0x6d/0x200 age=8309120/8340771/8374904 pid=143-2711 cpus=0-1 + 40 alloc_kmem_cache_cpu+0x81/0x90 age=8360159/8368022/8379787 pid=1-1549 cpus=0-1 + 164 __percpu_alloc_mask+0x52/0x140 age=61997/8067718/8380085 pid=0-13295 cpus=0-1 + 184 __percpu_alloc_mask+0xbc/0x140 age=62029/8100825/8380085 pid=0-13295 cpus=0-1 + 604 d_alloc+0x19d/0x1f0 age=22685/7859083/8376462 pid=72-24701 cpus=0-1 + 17 alloc_fdtable+0x57/0x160 age=4267/6101781/8357279 pid=1532-12336 cpus=0-1 + 17 alloc_fdtable+0xb4/0x160 age=4267/6101781/8357279 pid=1532-12336 cpus=0-1 + 1 bioset_create+0x21/0xc0 age=8379947 pid=1 cpus=0 + 1 bd_claim_by_disk+0x6f/0x270 age=8370131 pid=916 cpus=0 + 14 posix_acl_alloc+0x1b/0x30 age=53326/7759393/8352180 pid=2175-13390 cpus=0-1 + 5 proc_reg_open+0x3f/0x170 age=8355799/8361268/8366755 pid=1327-1738 cpus=0 + 12754 ext3_init_block_alloc_info+0x22/0x80 age=1/498494/8368528 pid=1-23373 cpus=0-1 + 4 ext3_readdir+0x617/0x650 age=8352064/8352079/8352114 pid=1370 cpus=0 + 8 ext3_htree_store_dirent+0x37/0x130 age=8352064/8352072/8352099 pid=1370 cpus=0 + 277 kobject_create+0x1a/0x40 age=22618/7771015/8380085 pid=0-13295 cpus=0-1 + 1 pci_create_sysfs_dev_files+0x23e/0x3b0 age=8378937 pid=1 cpus=0 + 11 acpi_os_validate_address+0x3d/0xa3 age=8379914/8379927/8379932 pid=1 cpus=0 + 124 acpi_ds_build_internal_package_obj+0xaf/0x1df age=3847484/8233379/8379936 pid=1-330 cpus=0 + 6 acpi_ds_build_internal_buffer_obj+0xe1/0x121 age=8379920/8379925/8379934 pid=1 cpus=0 + 1 acpi_ev_system_memory_region_setup+0x68/0x8f age=8379914 pid=1 cpus=0 + 3 acpi_add_single_object+0x596/0xd3c age=8379878/8379880/8379882 pid=1 cpus=0 + 3 acpi_add_single_object+0x5d8/0xd3c age=8379886/8379888/8379890 pid=1 cpus=0 + 27 acpi_add_single_object+0x9f7/0xd3c age=8379871/8379888/8379900 pid=1 cpus=0 + 55 acpi_ec_add_query_handler+0x31/0x91 age=8379870/8379870/8379870 pid=1 cpus=0 + 1 find_dock+0x2c9/0x426 age=8379950 pid=1 cpus=0 + 6 find_dock_devices+0x5e/0x92 age=8379950/8379950/8379950 pid=1 cpus=0 + 8 acpi_pci_link_add+0x32/0x1db age=8379843/8379844/8379846 pid=1 cpus=0 + 39 acpi_pci_irq_add_prt+0x181/0x324 age=8379862/8379863/8379865 pid=1 cpus=0 + 15 init_dev+0x3c8/0x6f0 age=7217158/8282400/8378180 pid=33-2593 cpus=0-1 + 15 init_dev+0x437/0x6f0 age=7217158/8282400/8378180 pid=33-2593 cpus=0-1 + 3 init_dev+0x5b2/0x6f0 age=7217158/7969269/8364358 pid=1258-2593 cpus=0-1 + 3 init_dev+0x637/0x6f0 age=7217158/7969269/8364358 pid=1258-2593 cpus=0-1 + 2 kobj_map_init+0x36/0xa0 age=8379947/8380016/8380085 pid=0-1 cpus=0 + 38 kobj_map+0x79/0x1a0 age=61997/7936136/8379947 pid=1-13295 cpus=0-1 + 3 dmam_alloc_coherent+0x3f/0xa0 age=8379232/8379403/8379747 pid=1 cpus=0-1 + 1 scsi_probe_and_add_lun+0x65e/0xd80 age=62028 pid=13295 cpus=0 + 170 scsi_dev_info_list_add+0x3d/0x120 age=8379831/8379831/8379831 pid=1 cpus=0 + 1 ahci_init_one+0x137/0xcb0 age=8379748 pid=1 cpus=1 + 1 cpufreq_stat_notifier_policy+0xa1/0x2e0 age=8366410 pid=1358 cpus=0 + 1 cpufreq_stat_notifier_policy+0x17e/0x2e0 age=8366410 pid=1358 cpus=0 + 1 hid_parse_report+0xa9/0x2c0 age=53512 pid=419 cpus=0 + 10 __dev_addr_add+0x69/0xe0 age=8325501/8345496/8360156 pid=8-1849 cpus=0-1 +''') +f('sys/kernel/slab/kmalloc-64/objs_per_slab', 0o664, b'30\n') +f('sys/kernel/slab/kmalloc-64/shrink', 0o664, b'') +f('sys/kernel/slab/kmalloc-64/trace', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-64/object_size', 0o664, b'64\n') +f('sys/kernel/slab/kmalloc-64/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-64/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-64/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-64/objects_partial', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-64/objects', 0o664, b'15300\n') +f('sys/kernel/slab/kmalloc-64/order', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-64/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/kmalloc-64/store_user', 0o664, b'1\n') +f('sys/kernel/slab/kmalloc-64/align', 0o664, b'8\n') +f('sys/kernel/slab/kmalloc-64/partial', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-64/validate', 0o664, b'') +f('sys/kernel/slab/kmalloc-64/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/kmalloc-64/free_calls', 0o664, b''' 13029 <not-available> age=4303047386 pid=0 cpus=0 + 1 iounmap+0xc2/0x100 age=8379917 pid=1 cpus=0 + 1 memtype_get_idx+0x75/0xc0 age=782 pid=13466 cpus=0 + 2 __release_region+0xc6/0xd0 age=8379754/8379754/8379754 pid=1 cpus=1 + 3 __request_region+0x86/0x120 age=8379828/8379828/8379828 pid=1 cpus=0 + 1 generic_smp_call_function_single_interrupt+0xce/0xe0 age=8355499 pid=0 cpus=1 + 53 __stop_machine+0x216/0x220 age=8303059/8367652/8376299 pid=105-2754 cpus=0-1 + 2 free_irq+0xef/0x190 age=8356302/8367658/8379015 pid=1-1541 cpus=0 + 28 __vunmap+0xcd/0x120 age=8309125/8366969/8376298 pid=105-2711 cpus=0-1 + 8 __vunmap+0xe9/0x120 age=8328457/8364062/8376068 pid=107-2578 cpus=0-1 + 1 percpu_free+0x2d/0x60 age=61987 pid=13295 cpus=0 + 10 do_sys_poll+0x32b/0x450 age=61481/7500944/8334758 pid=1333-2262 cpus=0-1 + 187 d_callback+0x22/0x40 age=22704/7997936/8376459 pid=0-2156 cpus=0-1 + 198 free_fdtable_rcu+0x7a/0xb0 age=1292/3883175/8376371 pid=0-13456 cpus=0-1 + 224 free_fdtable_rcu+0x82/0xb0 age=1292/3491449/8377150 pid=0-13456 cpus=0-1 + 42 proc_reg_release+0x96/0x120 age=3564/7013222/8376067 pid=126-2586 cpus=0-1 + 50 proc_reg_open+0x138/0x170 age=656297/2956669/8367924 pid=1184-12336 cpus=0-1 + 1046 free_rb_tree_fname+0x5c/0xb0 age=5905/4315279/8376402 pid=102-24701 cpus=0-1 + 79 ext3_htree_free_dir_info+0x19/0x20 age=5905/6235661/8376402 pid=102-24701 cpus=0-1 + 26 ext3_clear_inode+0xa5/0xb0 age=12954/2421572/8354304 pid=1253-8445 cpus=0-1 + 1 dynamic_kobj_release+0x2c/0x40 age=8356191 pid=1541 cpus=0 + 66 kobject_uevent_env+0x11a/0x470 age=22624/7608199/8379955 pid=1-2711 cpus=0-1 + 16 acpi_ds_call_control_method+0xfe/0x180 age=3020/4710292/8379848 pid=1-13466 cpus=0-1 + 1 acpi_ev_execute_reg_method+0x129/0x13a age=8379946 pid=1 cpus=0 + 1 acpi_ev_asynch_execute_gpe_method+0xcc/0x119 age=8379905 pid=12 cpus=1 + 33 acpi_evaluate_object+0x1ea/0x1fc age=3015/5838124/8379955 pid=1-13466 cpus=0-1 + 4 acpi_get_object_info+0x1c4/0x1d4 age=8379876/8379888/8379895 pid=1 cpus=0 + 1 acpi_walk_resources+0xa4/0xbd age=8379755 pid=1 cpus=1 + 41 acpi_ut_evaluate_object+0x18d/0x19b age=8379223/8379861/8379919 pid=1 cpus=0-1 + 4 acpi_ut_delete_internal_obj+0x15f/0x16f age=8366416/8373412/8375744 pid=330-1358 cpus=0 + 7 acpi_bus_get_ejd+0x73/0x80 age=8379955/8379955/8379955 pid=1 cpus=0 + 11 pnp_show_options+0x459/0x600 age=1578/1602/1627 pid=13466 cpus=0 + 11 pnp_show_current_resources+0x16f/0x180 age=1578/1603/1628 pid=13466 cpus=0 + 19 release_one_tty+0x53/0x190 age=804540/7566113/8370327 pid=55-2106 cpus=0-1 + 24 release_one_tty+0x60/0x190 age=804540/7729452/8370327 pid=55-2141 cpus=0-1 + 6 release_one_tty+0x167/0x190 age=8352429/8353224/8354794 pid=1967-2141 cpus=0 + 4 devres_remove_group+0x9e/0xe0 age=8379026/8379313/8379753 pid=1 cpus=0-1 + 1 ata_acpi_on_devcfg+0x385/0x6a0 age=8379406 pid=25 cpus=0 + 3 serio_free_event+0x1d/0x30 age=8378463/8378812/8378999 pid=17 cpus=0-1 + 6 input_register_device+0x17c/0x230 age=53514/6988336/8378983 pid=17-803 cpus=0-1 + 1 ip_cork_release+0x1f/0x50 age=8333854 pid=2536 cpus=1 + 1 unix_sock_destructor+0x75/0xd0 age=7217178 pid=2344 cpus=0 + 13 huft_free+0x1e/0x2f age=8379804/8379804/8379804 pid=1 cpus=0 + 6 hub_port_init+0x522/0x740 [usbcore] age=22825/4210550/8374275 pid=419 cpus=0-1 + 1 usb_release_interface_cache+0x2c/0x60 [usbcore] age=8373868 pid=419 cpus=0 + 1 usb_release_interface_cache+0x47/0x60 [usbcore] age=8373868 pid=419 cpus=0 + 1 __param_str_act+0x16c/0xfffffffffffffb13 [thermal] age=8375113 pid=383 cpus=0 + 3 snd_card_file_remove+0x73/0x130 [snd] age=8333050/8337203/8339297 pid=2400-2425 cpus=0 + 2 hid_probe+0x222/0xf30 [usbhid] age=53517/4212911/8372306 pid=419-803 cpus=0 +''') +f('sys/kernel/slab/kmalloc-64/aliases', 0o664, b'0\n') +d('sys/kernel/slab/sgpool-128', 0o775) +f('sys/kernel/slab/sgpool-128/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/sgpool-128/ctor', 0o664, b'') +f('sys/kernel/slab/sgpool-128/hwcache_align', 0o664, b'1\n') +f('sys/kernel/slab/sgpool-128/slab_size', 0o664, b'4224\n') +f('sys/kernel/slab/sgpool-128/total_objects', 0o664, b'14\n') +f('sys/kernel/slab/sgpool-128/slabs', 0o664, b'2\n') +f('sys/kernel/slab/sgpool-128/poison', 0o664, b'1\n') +f('sys/kernel/slab/sgpool-128/alloc_calls', 0o664, b' 2 mempool_alloc_slab+0x11/0x20 age=8379262/8379262/8379262 pid=1 cpus=0\n') +f('sys/kernel/slab/sgpool-128/objs_per_slab', 0o664, b'7\n') +f('sys/kernel/slab/sgpool-128/shrink', 0o664, b'') +f('sys/kernel/slab/sgpool-128/trace', 0o664, b'0\n') +f('sys/kernel/slab/sgpool-128/object_size', 0o664, b'4096\n') +f('sys/kernel/slab/sgpool-128/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/sgpool-128/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/sgpool-128/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/sgpool-128/objects_partial', 0o664, b'0\n') +f('sys/kernel/slab/sgpool-128/objects', 0o664, b'14\n') +f('sys/kernel/slab/sgpool-128/order', 0o664, b'3\n') +f('sys/kernel/slab/sgpool-128/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/sgpool-128/store_user', 0o664, b'1\n') +f('sys/kernel/slab/sgpool-128/align', 0o664, b'0\n') +f('sys/kernel/slab/sgpool-128/partial', 0o664, b'0\n') +f('sys/kernel/slab/sgpool-128/validate', 0o664, b'') +f('sys/kernel/slab/sgpool-128/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/sgpool-128/free_calls', 0o664, b' 2 <not-available> age=4303046812 pid=0 cpus=0\n') +f('sys/kernel/slab/sgpool-128/aliases', 0o664, b'0\n') +d('sys/kernel/slab/kcopyd_job', 0o775) +f('sys/kernel/slab/kcopyd_job/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/kcopyd_job/ctor', 0o664, b'') +f('sys/kernel/slab/kcopyd_job/hwcache_align', 0o664, b'0\n') +f('sys/kernel/slab/kcopyd_job/slab_size', 0o664, b'544\n') +f('sys/kernel/slab/kcopyd_job/total_objects', 0o664, b'0\n') +f('sys/kernel/slab/kcopyd_job/slabs', 0o664, b'0\n') +f('sys/kernel/slab/kcopyd_job/poison', 0o664, b'1\n') +f('sys/kernel/slab/kcopyd_job/alloc_calls', 0o664, b'No data\n') +f('sys/kernel/slab/kcopyd_job/objs_per_slab', 0o664, b'15\n') +f('sys/kernel/slab/kcopyd_job/shrink', 0o664, b'') +f('sys/kernel/slab/kcopyd_job/trace', 0o664, b'0\n') +f('sys/kernel/slab/kcopyd_job/object_size', 0o664, b'472\n') +f('sys/kernel/slab/kcopyd_job/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/kcopyd_job/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/kcopyd_job/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/kcopyd_job/objects_partial', 0o664, b'0\n') +f('sys/kernel/slab/kcopyd_job/objects', 0o664, b'0\n') +f('sys/kernel/slab/kcopyd_job/order', 0o664, b'1\n') +f('sys/kernel/slab/kcopyd_job/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/kcopyd_job/store_user', 0o664, b'1\n') +f('sys/kernel/slab/kcopyd_job/align', 0o664, b'8\n') +f('sys/kernel/slab/kcopyd_job/partial', 0o664, b'0\n') +f('sys/kernel/slab/kcopyd_job/validate', 0o664, b'') +f('sys/kernel/slab/kcopyd_job/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/kcopyd_job/free_calls', 0o664, b'No data\n') +f('sys/kernel/slab/kcopyd_job/aliases', 0o664, b'0\n') +d('sys/kernel/slab/dm_target_io', 0o775) +f('sys/kernel/slab/dm_target_io/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/dm_target_io/ctor', 0o664, b'') +f('sys/kernel/slab/dm_target_io/hwcache_align', 0o664, b'0\n') +f('sys/kernel/slab/dm_target_io/slab_size', 0o664, b'96\n') +f('sys/kernel/slab/dm_target_io/total_objects', 0o664, b'0\n') +f('sys/kernel/slab/dm_target_io/slabs', 0o664, b'0\n') +f('sys/kernel/slab/dm_target_io/poison', 0o664, b'1\n') +f('sys/kernel/slab/dm_target_io/alloc_calls', 0o664, b'No data\n') +f('sys/kernel/slab/dm_target_io/objs_per_slab', 0o664, b'42\n') +f('sys/kernel/slab/dm_target_io/shrink', 0o664, b'') +f('sys/kernel/slab/dm_target_io/trace', 0o664, b'0\n') +f('sys/kernel/slab/dm_target_io/object_size', 0o664, b'24\n') +f('sys/kernel/slab/dm_target_io/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/dm_target_io/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/dm_target_io/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/dm_target_io/objects_partial', 0o664, b'0\n') +f('sys/kernel/slab/dm_target_io/objects', 0o664, b'0\n') +f('sys/kernel/slab/dm_target_io/order', 0o664, b'0\n') +f('sys/kernel/slab/dm_target_io/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/dm_target_io/store_user', 0o664, b'1\n') +f('sys/kernel/slab/dm_target_io/align', 0o664, b'8\n') +f('sys/kernel/slab/dm_target_io/partial', 0o664, b'0\n') +f('sys/kernel/slab/dm_target_io/validate', 0o664, b'') +f('sys/kernel/slab/dm_target_io/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/dm_target_io/free_calls', 0o664, b'No data\n') +f('sys/kernel/slab/dm_target_io/aliases', 0o664, b'0\n') +d('sys/kernel/slab/signal_cache', 0o775) +f('sys/kernel/slab/signal_cache/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/signal_cache/ctor', 0o664, b'') +f('sys/kernel/slab/signal_cache/hwcache_align', 0o664, b'1\n') +f('sys/kernel/slab/signal_cache/slab_size', 0o664, b'1024\n') +f('sys/kernel/slab/signal_cache/total_objects', 0o664, b'160\n') +f('sys/kernel/slab/signal_cache/slabs', 0o664, b'10\n') +f('sys/kernel/slab/signal_cache/poison', 0o664, b'1\n') +f('sys/kernel/slab/signal_cache/alloc_calls', 0o664, b' 124 copy_process+0x93c/0x1220 age=4145/7851187/8379914 pid=0-12336 cpus=0-1\n') +f('sys/kernel/slab/signal_cache/objs_per_slab', 0o664, b'16\n') +f('sys/kernel/slab/signal_cache/shrink', 0o664, b'') +f('sys/kernel/slab/signal_cache/trace', 0o664, b'0\n') +f('sys/kernel/slab/signal_cache/object_size', 0o664, b'896\n') +f('sys/kernel/slab/signal_cache/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/signal_cache/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/signal_cache/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/signal_cache/objects_partial', 0o664, b'70\n') +f('sys/kernel/slab/signal_cache/objects', 0o664, b'150\n') +f('sys/kernel/slab/signal_cache/order', 0o664, b'2\n') +f('sys/kernel/slab/signal_cache/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/signal_cache/store_user', 0o664, b'1\n') +f('sys/kernel/slab/signal_cache/align', 0o664, b'0\n') +f('sys/kernel/slab/signal_cache/partial', 0o664, b'5\n') +f('sys/kernel/slab/signal_cache/validate', 0o664, b'') +f('sys/kernel/slab/signal_cache/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/signal_cache/free_calls', 0o664, b''' 42 <not-available> age=4303047259 pid=0 cpus=0 + 82 __cleanup_signal+0x20/0x30 age=7186/7586663/8375843 pid=1-13288 cpus=0-1 +''') +f('sys/kernel/slab/signal_cache/aliases', 0o664, b'0\n') +d('sys/kernel/slab/radix_tree_node', 0o775) +f('sys/kernel/slab/radix_tree_node/reclaim_account', 0o664, b'1\n') +f('sys/kernel/slab/radix_tree_node/ctor', 0o664, b'radix_tree_node_ctor+0x0/0x10\n') +f('sys/kernel/slab/radix_tree_node/hwcache_align', 0o664, b'0\n') +f('sys/kernel/slab/radix_tree_node/slab_size', 0o664, b'624\n') +f('sys/kernel/slab/radix_tree_node/total_objects', 0o664, b'6747\n') +f('sys/kernel/slab/radix_tree_node/slabs', 0o664, b'519\n') +f('sys/kernel/slab/radix_tree_node/poison', 0o664, b'1\n') +f('sys/kernel/slab/radix_tree_node/alloc_calls', 0o664, b' 6737 radix_tree_preload+0x3b/0xb0 age=16/6612251/8379044 pid=1-32767 cpus=0-1\n') +f('sys/kernel/slab/radix_tree_node/objs_per_slab', 0o664, b'13\n') +f('sys/kernel/slab/radix_tree_node/shrink', 0o664, b'') +f('sys/kernel/slab/radix_tree_node/trace', 0o664, b'0\n') +f('sys/kernel/slab/radix_tree_node/object_size', 0o664, b'552\n') +f('sys/kernel/slab/radix_tree_node/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/radix_tree_node/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/radix_tree_node/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/radix_tree_node/objects_partial', 0o664, b'0\n') +f('sys/kernel/slab/radix_tree_node/objects', 0o664, b'6747\n') +f('sys/kernel/slab/radix_tree_node/order', 0o664, b'1\n') +f('sys/kernel/slab/radix_tree_node/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/radix_tree_node/store_user', 0o664, b'1\n') +f('sys/kernel/slab/radix_tree_node/align', 0o664, b'0\n') +f('sys/kernel/slab/radix_tree_node/partial', 0o664, b'0\n') +f('sys/kernel/slab/radix_tree_node/validate', 0o664, b'') +f('sys/kernel/slab/radix_tree_node/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/radix_tree_node/free_calls', 0o664, b''' 4146 <not-available> age=4303047064 pid=0 cpus=0 + 2591 radix_tree_node_rcu_free+0x41/0x50 age=39290/6239072/8378908 pid=0-32584 cpus=0-1 +''') +f('sys/kernel/slab/radix_tree_node/aliases', 0o664, b'0\n') +d('sys/kernel/slab/uid_cache', 0o775) +f('sys/kernel/slab/uid_cache/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/uid_cache/ctor', 0o664, b'') +f('sys/kernel/slab/uid_cache/hwcache_align', 0o664, b'1\n') +f('sys/kernel/slab/uid_cache/slab_size', 0o664, b'320\n') +f('sys/kernel/slab/uid_cache/total_objects', 0o664, b'24\n') +f('sys/kernel/slab/uid_cache/slabs', 0o664, b'2\n') +f('sys/kernel/slab/uid_cache/poison', 0o664, b'1\n') +f('sys/kernel/slab/uid_cache/alloc_calls', 0o664, b' 5 alloc_uid+0xbd/0x1e0 age=8351086/8358570/8366097 pid=1333-2177 cpus=0-1\n') +f('sys/kernel/slab/uid_cache/objs_per_slab', 0o664, b'12\n') +f('sys/kernel/slab/uid_cache/shrink', 0o664, b'') +f('sys/kernel/slab/uid_cache/trace', 0o664, b'0\n') +f('sys/kernel/slab/uid_cache/object_size', 0o664, b'216\n') +f('sys/kernel/slab/uid_cache/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/uid_cache/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/uid_cache/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/uid_cache/objects_partial', 0o664, b'0\n') +f('sys/kernel/slab/uid_cache/objects', 0o664, b'24\n') +f('sys/kernel/slab/uid_cache/order', 0o664, b'0\n') +f('sys/kernel/slab/uid_cache/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/uid_cache/store_user', 0o664, b'1\n') +f('sys/kernel/slab/uid_cache/align', 0o664, b'0\n') +f('sys/kernel/slab/uid_cache/partial', 0o664, b'0\n') +f('sys/kernel/slab/uid_cache/validate', 0o664, b'') +f('sys/kernel/slab/uid_cache/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/uid_cache/free_calls', 0o664, b''' 2 <not-available> age=4303046654 pid=0 cpus=0 + 3 remove_user_sysfs_dir+0xd0/0x100 age=8357175/8367109/8374935 pid=7 cpus=0 +''') +f('sys/kernel/slab/uid_cache/aliases', 0o664, b'0\n') +d('sys/kernel/slab/tw_sock_TCPv6', 0o775) +f('sys/kernel/slab/tw_sock_TCPv6/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/tw_sock_TCPv6/ctor', 0o664, b'') +f('sys/kernel/slab/tw_sock_TCPv6/hwcache_align', 0o664, b'1\n') +f('sys/kernel/slab/tw_sock_TCPv6/slab_size', 0o664, b'256\n') +f('sys/kernel/slab/tw_sock_TCPv6/total_objects', 0o664, b'0\n') +f('sys/kernel/slab/tw_sock_TCPv6/slabs', 0o664, b'0\n') +f('sys/kernel/slab/tw_sock_TCPv6/poison', 0o664, b'1\n') +f('sys/kernel/slab/tw_sock_TCPv6/alloc_calls', 0o664, b'No data\n') +f('sys/kernel/slab/tw_sock_TCPv6/objs_per_slab', 0o664, b'16\n') +f('sys/kernel/slab/tw_sock_TCPv6/shrink', 0o664, b'') +f('sys/kernel/slab/tw_sock_TCPv6/trace', 0o664, b'0\n') +f('sys/kernel/slab/tw_sock_TCPv6/object_size', 0o664, b'168\n') +f('sys/kernel/slab/tw_sock_TCPv6/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/tw_sock_TCPv6/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/tw_sock_TCPv6/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/tw_sock_TCPv6/objects_partial', 0o664, b'0\n') +f('sys/kernel/slab/tw_sock_TCPv6/objects', 0o664, b'0\n') +f('sys/kernel/slab/tw_sock_TCPv6/order', 0o664, b'0\n') +f('sys/kernel/slab/tw_sock_TCPv6/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/tw_sock_TCPv6/store_user', 0o664, b'1\n') +f('sys/kernel/slab/tw_sock_TCPv6/align', 0o664, b'0\n') +f('sys/kernel/slab/tw_sock_TCPv6/partial', 0o664, b'0\n') +f('sys/kernel/slab/tw_sock_TCPv6/validate', 0o664, b'') +f('sys/kernel/slab/tw_sock_TCPv6/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/tw_sock_TCPv6/free_calls', 0o664, b'No data\n') +f('sys/kernel/slab/tw_sock_TCPv6/aliases', 0o664, b'0\n') +d('sys/kernel/slab/sighand_cache', 0o775) +f('sys/kernel/slab/sighand_cache/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/sighand_cache/ctor', 0o664, b'sighand_ctor+0x0/0x40\n') +f('sys/kernel/slab/sighand_cache/hwcache_align', 0o664, b'1\n') +f('sys/kernel/slab/sighand_cache/slab_size', 0o664, b'2304\n') +f('sys/kernel/slab/sighand_cache/total_objects', 0o664, b'154\n') +f('sys/kernel/slab/sighand_cache/slabs', 0o664, b'11\n') +f('sys/kernel/slab/sighand_cache/poison', 0o664, b'1\n') +f('sys/kernel/slab/sighand_cache/alloc_calls', 0o664, b''' 123 copy_process+0x82a/0x1220 age=4154/7846897/8379923 pid=0-12336 cpus=0-1 + 1 flush_old_exec+0x4e1/0x8a0 age=8378174 pid=1 cpus=0 +''') +f('sys/kernel/slab/sighand_cache/objs_per_slab', 0o664, b'14\n') +f('sys/kernel/slab/sighand_cache/shrink', 0o664, b'') +f('sys/kernel/slab/sighand_cache/trace', 0o664, b'0\n') +f('sys/kernel/slab/sighand_cache/object_size', 0o664, b'2184\n') +f('sys/kernel/slab/sighand_cache/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/sighand_cache/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/sighand_cache/destroy_by_rcu', 0o664, b'1\n') +f('sys/kernel/slab/sighand_cache/objects_partial', 0o664, b'61\n') +f('sys/kernel/slab/sighand_cache/objects', 0o664, b'145\n') +f('sys/kernel/slab/sighand_cache/order', 0o664, b'3\n') +f('sys/kernel/slab/sighand_cache/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/sighand_cache/store_user', 0o664, b'1\n') +f('sys/kernel/slab/sighand_cache/align', 0o664, b'0\n') +f('sys/kernel/slab/sighand_cache/partial', 0o664, b'5\n') +f('sys/kernel/slab/sighand_cache/validate', 0o664, b'') +f('sys/kernel/slab/sighand_cache/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/sighand_cache/free_calls', 0o664, b''' 46 <not-available> age=4303047268 pid=0 cpus=0 + 78 __cleanup_sighand+0x27/0x30 age=7195/7547046/8375852 pid=1-13288 cpus=0-1 +''') +f('sys/kernel/slab/sighand_cache/aliases', 0o664, b'0\n') +d('sys/kernel/slab/names_cache', 0o775) +f('sys/kernel/slab/names_cache/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/names_cache/ctor', 0o664, b'') +f('sys/kernel/slab/names_cache/hwcache_align', 0o664, b'1\n') +f('sys/kernel/slab/names_cache/slab_size', 0o664, b'4224\n') +f('sys/kernel/slab/names_cache/total_objects', 0o664, b'14\n') +f('sys/kernel/slab/names_cache/slabs', 0o664, b'2\n') +f('sys/kernel/slab/names_cache/poison', 0o664, b'1\n') +f('sys/kernel/slab/names_cache/alloc_calls', 0o664, b'No data\n') +f('sys/kernel/slab/names_cache/objs_per_slab', 0o664, b'7\n') +f('sys/kernel/slab/names_cache/shrink', 0o664, b'') +f('sys/kernel/slab/names_cache/trace', 0o664, b'0\n') +f('sys/kernel/slab/names_cache/object_size', 0o664, b'4096\n') +f('sys/kernel/slab/names_cache/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/names_cache/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/names_cache/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/names_cache/objects_partial', 0o664, b'0\n') +f('sys/kernel/slab/names_cache/objects', 0o664, b'14\n') +f('sys/kernel/slab/names_cache/order', 0o664, b'3\n') +f('sys/kernel/slab/names_cache/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/names_cache/store_user', 0o664, b'1\n') +f('sys/kernel/slab/names_cache/align', 0o664, b'0\n') +f('sys/kernel/slab/names_cache/partial', 0o664, b'0\n') +f('sys/kernel/slab/names_cache/validate', 0o664, b'') +f('sys/kernel/slab/names_cache/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/names_cache/free_calls', 0o664, b'No data\n') +f('sys/kernel/slab/names_cache/aliases', 0o664, b'0\n') +d('sys/kernel/slab/dm_io', 0o775) +f('sys/kernel/slab/dm_io/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/dm_io/ctor', 0o664, b'') +f('sys/kernel/slab/dm_io/hwcache_align', 0o664, b'0\n') +f('sys/kernel/slab/dm_io/slab_size', 0o664, b'104\n') +f('sys/kernel/slab/dm_io/total_objects', 0o664, b'0\n') +f('sys/kernel/slab/dm_io/slabs', 0o664, b'0\n') +f('sys/kernel/slab/dm_io/poison', 0o664, b'1\n') +f('sys/kernel/slab/dm_io/alloc_calls', 0o664, b'No data\n') +f('sys/kernel/slab/dm_io/objs_per_slab', 0o664, b'39\n') +f('sys/kernel/slab/dm_io/shrink', 0o664, b'') +f('sys/kernel/slab/dm_io/trace', 0o664, b'0\n') +f('sys/kernel/slab/dm_io/object_size', 0o664, b'32\n') +f('sys/kernel/slab/dm_io/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/dm_io/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/dm_io/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/dm_io/objects_partial', 0o664, b'0\n') +f('sys/kernel/slab/dm_io/objects', 0o664, b'0\n') +f('sys/kernel/slab/dm_io/order', 0o664, b'0\n') +f('sys/kernel/slab/dm_io/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/dm_io/store_user', 0o664, b'1\n') +f('sys/kernel/slab/dm_io/align', 0o664, b'8\n') +f('sys/kernel/slab/dm_io/partial', 0o664, b'0\n') +f('sys/kernel/slab/dm_io/validate', 0o664, b'') +f('sys/kernel/slab/dm_io/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/dm_io/free_calls', 0o664, b'No data\n') +f('sys/kernel/slab/dm_io/aliases', 0o664, b'0\n') +d('sys/kernel/slab/key_jar', 0o775) +f('sys/kernel/slab/key_jar/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/key_jar/ctor', 0o664, b'') +f('sys/kernel/slab/key_jar/hwcache_align', 0o664, b'1\n') +f('sys/kernel/slab/key_jar/slab_size', 0o664, b'320\n') +f('sys/kernel/slab/key_jar/total_objects', 0o664, b'0\n') +f('sys/kernel/slab/key_jar/slabs', 0o664, b'0\n') +f('sys/kernel/slab/key_jar/poison', 0o664, b'1\n') +f('sys/kernel/slab/key_jar/alloc_calls', 0o664, b'No data\n') +f('sys/kernel/slab/key_jar/objs_per_slab', 0o664, b'12\n') +f('sys/kernel/slab/key_jar/shrink', 0o664, b'') +f('sys/kernel/slab/key_jar/trace', 0o664, b'0\n') +f('sys/kernel/slab/key_jar/object_size', 0o664, b'232\n') +f('sys/kernel/slab/key_jar/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/key_jar/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/key_jar/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/key_jar/objects_partial', 0o664, b'0\n') +f('sys/kernel/slab/key_jar/objects', 0o664, b'0\n') +f('sys/kernel/slab/key_jar/order', 0o664, b'0\n') +f('sys/kernel/slab/key_jar/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/key_jar/store_user', 0o664, b'1\n') +f('sys/kernel/slab/key_jar/align', 0o664, b'0\n') +f('sys/kernel/slab/key_jar/partial', 0o664, b'0\n') +f('sys/kernel/slab/key_jar/validate', 0o664, b'') +f('sys/kernel/slab/key_jar/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/key_jar/free_calls', 0o664, b'No data\n') +f('sys/kernel/slab/key_jar/aliases', 0o664, b'0\n') +d('sys/kernel/slab/tcp_bind_bucket', 0o775) +f('sys/kernel/slab/tcp_bind_bucket/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/tcp_bind_bucket/ctor', 0o664, b'') +f('sys/kernel/slab/tcp_bind_bucket/hwcache_align', 0o664, b'1\n') +f('sys/kernel/slab/tcp_bind_bucket/slab_size', 0o664, b'128\n') +f('sys/kernel/slab/tcp_bind_bucket/total_objects', 0o664, b'64\n') +f('sys/kernel/slab/tcp_bind_bucket/slabs', 0o664, b'2\n') +f('sys/kernel/slab/tcp_bind_bucket/poison', 0o664, b'1\n') +f('sys/kernel/slab/tcp_bind_bucket/alloc_calls', 0o664, b' 3 inet_bind_bucket_create+0x27/0x80 age=926731/5878918/8356133 pid=1206-1920 cpus=0\n') +f('sys/kernel/slab/tcp_bind_bucket/objs_per_slab', 0o664, b'32\n') +f('sys/kernel/slab/tcp_bind_bucket/shrink', 0o664, b'') +f('sys/kernel/slab/tcp_bind_bucket/trace', 0o664, b'0\n') +f('sys/kernel/slab/tcp_bind_bucket/object_size', 0o664, b'40\n') +f('sys/kernel/slab/tcp_bind_bucket/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/tcp_bind_bucket/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/tcp_bind_bucket/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/tcp_bind_bucket/objects_partial', 0o664, b'2\n') +f('sys/kernel/slab/tcp_bind_bucket/objects', 0o664, b'34\n') +f('sys/kernel/slab/tcp_bind_bucket/order', 0o664, b'0\n') +f('sys/kernel/slab/tcp_bind_bucket/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/tcp_bind_bucket/store_user', 0o664, b'1\n') +f('sys/kernel/slab/tcp_bind_bucket/align', 0o664, b'0\n') +f('sys/kernel/slab/tcp_bind_bucket/partial', 0o664, b'1\n') +f('sys/kernel/slab/tcp_bind_bucket/validate', 0o664, b'') +f('sys/kernel/slab/tcp_bind_bucket/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/tcp_bind_bucket/free_calls', 0o664, b''' 1 <not-available> age=4303046680 pid=0 cpus=0 + 2 inet_bind_bucket_destroy+0x29/0x30 age=1107644/4731733/8355822 pid=0-1707 cpus=0 +''') +f('sys/kernel/slab/tcp_bind_bucket/aliases', 0o664, b'0\n') +d('sys/kernel/slab/mm_struct', 0o775) +f('sys/kernel/slab/mm_struct/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/mm_struct/ctor', 0o664, b'') +f('sys/kernel/slab/mm_struct/hwcache_align', 0o664, b'1\n') +f('sys/kernel/slab/mm_struct/slab_size', 0o664, b'1216\n') +f('sys/kernel/slab/mm_struct/total_objects', 0o664, b'91\n') +f('sys/kernel/slab/mm_struct/slabs', 0o664, b'7\n') +f('sys/kernel/slab/mm_struct/poison', 0o664, b'1\n') +f('sys/kernel/slab/mm_struct/alloc_calls', 0o664, b''' 52 mm_alloc+0x15/0x50 age=4100/7453183/8378125 pid=1-20296 cpus=0-1 + 27 dup_mm+0x61/0x390 age=8335613/8355052/8376513 pid=71-2467 cpus=0-1 +''') +f('sys/kernel/slab/mm_struct/objs_per_slab', 0o664, b'13\n') +f('sys/kernel/slab/mm_struct/shrink', 0o664, b'') +f('sys/kernel/slab/mm_struct/trace', 0o664, b'0\n') +f('sys/kernel/slab/mm_struct/object_size', 0o664, b'1144\n') +f('sys/kernel/slab/mm_struct/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/mm_struct/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/mm_struct/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/mm_struct/objects_partial', 0o664, b'23\n') +f('sys/kernel/slab/mm_struct/objects', 0o664, b'88\n') +f('sys/kernel/slab/mm_struct/order', 0o664, b'2\n') +f('sys/kernel/slab/mm_struct/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/mm_struct/store_user', 0o664, b'1\n') +f('sys/kernel/slab/mm_struct/align', 0o664, b'0\n') +f('sys/kernel/slab/mm_struct/partial', 0o664, b'2\n') +f('sys/kernel/slab/mm_struct/validate', 0o664, b'') +f('sys/kernel/slab/mm_struct/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/mm_struct/free_calls', 0o664, b''' 6 <not-available> age=4303047216 pid=0 cpus=0 + 73 __mmdrop+0x47/0x60 age=7143/7714522/8376982 pid=1-20295 cpus=0-1 +''') +f('sys/kernel/slab/mm_struct/aliases', 0o664, b'0\n') +d('sys/kernel/slab/dentry', 0o775) +f('sys/kernel/slab/dentry/reclaim_account', 0o664, b'1\n') +f('sys/kernel/slab/dentry/ctor', 0o664, b'') +f('sys/kernel/slab/dentry/hwcache_align', 0o664, b'0\n') +f('sys/kernel/slab/dentry/slab_size', 0o664, b'328\n') +f('sys/kernel/slab/dentry/total_objects', 0o664, b'49656\n') +f('sys/kernel/slab/dentry/slabs', 0o664, b'4138\n') +f('sys/kernel/slab/dentry/poison', 0o664, b'1\n') +f('sys/kernel/slab/dentry/alloc_calls', 0o664, b' 49656 d_alloc+0x22/0x1f0 age=0/4250434/8379825 pid=0-32757 cpus=0-1\n') +f('sys/kernel/slab/dentry/objs_per_slab', 0o664, b'12\n') +f('sys/kernel/slab/dentry/shrink', 0o664, b'') +f('sys/kernel/slab/dentry/trace', 0o664, b'0\n') +f('sys/kernel/slab/dentry/object_size', 0o664, b'256\n') +f('sys/kernel/slab/dentry/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/dentry/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/dentry/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/dentry/objects_partial', 0o664, b'0\n') +f('sys/kernel/slab/dentry/objects', 0o664, b'49656\n') +f('sys/kernel/slab/dentry/order', 0o664, b'0\n') +f('sys/kernel/slab/dentry/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/dentry/store_user', 0o664, b'1\n') +f('sys/kernel/slab/dentry/align', 0o664, b'8\n') +f('sys/kernel/slab/dentry/partial', 0o664, b'0\n') +f('sys/kernel/slab/dentry/validate', 0o664, b'') +f('sys/kernel/slab/dentry/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/dentry/free_calls', 0o664, b''' 30093 <not-available> age=4303047137 pid=0 cpus=0 + 2265 d_free+0x6c/0x80 age=519/5532797/8376904 pid=1-32728 cpus=0-1 + 17299 d_callback+0x31/0x40 age=1040/2433896/8379551 pid=0-30210 cpus=0-1 +''') +f('sys/kernel/slab/dentry/aliases', 0o664, b'0\n') +d('sys/kernel/slab/UDPv6', 0o775) +f('sys/kernel/slab/UDPv6/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/UDPv6/ctor', 0o664, b'') +f('sys/kernel/slab/UDPv6/hwcache_align', 0o664, b'1\n') +f('sys/kernel/slab/UDPv6/slab_size', 0o664, b'1472\n') +f('sys/kernel/slab/UDPv6/total_objects', 0o664, b'22\n') +f('sys/kernel/slab/UDPv6/slabs', 0o664, b'1\n') +f('sys/kernel/slab/UDPv6/poison', 0o664, b'1\n') +f('sys/kernel/slab/UDPv6/alloc_calls', 0o664, b'No data\n') +f('sys/kernel/slab/UDPv6/objs_per_slab', 0o664, b'22\n') +f('sys/kernel/slab/UDPv6/shrink', 0o664, b'') +f('sys/kernel/slab/UDPv6/trace', 0o664, b'0\n') +f('sys/kernel/slab/UDPv6/object_size', 0o664, b'1368\n') +f('sys/kernel/slab/UDPv6/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/UDPv6/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/UDPv6/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/UDPv6/objects_partial', 0o664, b'0\n') +f('sys/kernel/slab/UDPv6/objects', 0o664, b'22\n') +f('sys/kernel/slab/UDPv6/order', 0o664, b'3\n') +f('sys/kernel/slab/UDPv6/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/UDPv6/store_user', 0o664, b'1\n') +f('sys/kernel/slab/UDPv6/align', 0o664, b'0\n') +f('sys/kernel/slab/UDPv6/partial', 0o664, b'0\n') +f('sys/kernel/slab/UDPv6/validate', 0o664, b'') +f('sys/kernel/slab/UDPv6/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/UDPv6/free_calls', 0o664, b'No data\n') +f('sys/kernel/slab/UDPv6/aliases', 0o664, b'0\n') +d('sys/kernel/slab/mqueue_inode_cache', 0o775) +f('sys/kernel/slab/mqueue_inode_cache/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/mqueue_inode_cache/ctor', 0o664, b'init_once+0x0/0x10\n') +f('sys/kernel/slab/mqueue_inode_cache/hwcache_align', 0o664, b'1\n') +f('sys/kernel/slab/mqueue_inode_cache/slab_size', 0o664, b'1536\n') +f('sys/kernel/slab/mqueue_inode_cache/total_objects', 0o664, b'21\n') +f('sys/kernel/slab/mqueue_inode_cache/slabs', 0o664, b'1\n') +f('sys/kernel/slab/mqueue_inode_cache/poison', 0o664, b'1\n') +f('sys/kernel/slab/mqueue_inode_cache/alloc_calls', 0o664, b' 1 mqueue_alloc_inode+0x15/0x30 age=8380010 pid=1 cpus=1\n') +f('sys/kernel/slab/mqueue_inode_cache/objs_per_slab', 0o664, b'21\n') +f('sys/kernel/slab/mqueue_inode_cache/shrink', 0o664, b'') +f('sys/kernel/slab/mqueue_inode_cache/trace', 0o664, b'0\n') +f('sys/kernel/slab/mqueue_inode_cache/object_size', 0o664, b'1456\n') +f('sys/kernel/slab/mqueue_inode_cache/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/mqueue_inode_cache/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/mqueue_inode_cache/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/mqueue_inode_cache/objects_partial', 0o664, b'1\n') +f('sys/kernel/slab/mqueue_inode_cache/objects', 0o664, b'1\n') +f('sys/kernel/slab/mqueue_inode_cache/order', 0o664, b'3\n') +f('sys/kernel/slab/mqueue_inode_cache/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/mqueue_inode_cache/store_user', 0o664, b'1\n') +f('sys/kernel/slab/mqueue_inode_cache/align', 0o664, b'0\n') +f('sys/kernel/slab/mqueue_inode_cache/partial', 0o664, b'1\n') +f('sys/kernel/slab/mqueue_inode_cache/validate', 0o664, b'') +f('sys/kernel/slab/mqueue_inode_cache/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/mqueue_inode_cache/free_calls', 0o664, b' 1 <not-available> age=4303047603 pid=0 cpus=0\n') +f('sys/kernel/slab/mqueue_inode_cache/aliases', 0o664, b'0\n') +d('sys/kernel/slab/biovec-128', 0o775) +f('sys/kernel/slab/biovec-128/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/biovec-128/ctor', 0o664, b'') +f('sys/kernel/slab/biovec-128/hwcache_align', 0o664, b'1\n') +f('sys/kernel/slab/biovec-128/slab_size', 0o664, b'2176\n') +f('sys/kernel/slab/biovec-128/total_objects', 0o664, b'15\n') +f('sys/kernel/slab/biovec-128/slabs', 0o664, b'1\n') +f('sys/kernel/slab/biovec-128/poison', 0o664, b'1\n') +f('sys/kernel/slab/biovec-128/alloc_calls', 0o664, b' 2 mempool_alloc_slab+0x11/0x20 age=8379474/8379474/8379474 pid=1 cpus=0\n') +f('sys/kernel/slab/biovec-128/objs_per_slab', 0o664, b'15\n') +f('sys/kernel/slab/biovec-128/shrink', 0o664, b'') +f('sys/kernel/slab/biovec-128/trace', 0o664, b'0\n') +f('sys/kernel/slab/biovec-128/object_size', 0o664, b'2048\n') +f('sys/kernel/slab/biovec-128/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/biovec-128/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/biovec-128/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/biovec-128/objects_partial', 0o664, b'0\n') +f('sys/kernel/slab/biovec-128/objects', 0o664, b'15\n') +f('sys/kernel/slab/biovec-128/order', 0o664, b'3\n') +f('sys/kernel/slab/biovec-128/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/biovec-128/store_user', 0o664, b'1\n') +f('sys/kernel/slab/biovec-128/align', 0o664, b'0\n') +f('sys/kernel/slab/biovec-128/partial', 0o664, b'0\n') +f('sys/kernel/slab/biovec-128/validate', 0o664, b'') +f('sys/kernel/slab/biovec-128/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/biovec-128/free_calls', 0o664, b' 2 <not-available> age=4303046908 pid=0 cpus=0\n') +f('sys/kernel/slab/biovec-128/aliases', 0o664, b'0\n') +d('sys/kernel/slab/kmalloc-192', 0o775) +f('sys/kernel/slab/kmalloc-192/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-192/ctor', 0o664, b'') +f('sys/kernel/slab/kmalloc-192/hwcache_align', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-192/slab_size', 0o664, b'264\n') +f('sys/kernel/slab/kmalloc-192/total_objects', 0o664, b'255\n') +f('sys/kernel/slab/kmalloc-192/slabs', 0o664, b'17\n') +f('sys/kernel/slab/kmalloc-192/poison', 0o664, b'1\n') +f('sys/kernel/slab/kmalloc-192/alloc_calls', 0o664, b''' 10 sched_create_group+0x91/0x220 age=8351861/8359345/8366872 pid=1333-2177 cpus=0-1 + 10 sched_create_group+0xae/0x220 age=8351861/8359345/8366872 pid=1333-2177 cpus=0-1 + 10 groups_alloc+0x41/0xe0 age=17070/6159814/8366872 pid=1333-20296 cpus=0-1 + 9 param_sysfs_setup+0x87/0x140 age=8303102/8368759/8379996 pid=1-2754 cpus=0-1 + 2 futex_lock_pi+0x776/0xb00 age=125614/1986240/3846867 pid=2411-13213 cpus=0-1 + 18 mempool_create_node+0x2e/0xf0 age=62077/7917175/8379995 pid=1-13295 cpus=0-1 + 4 __vmalloc_area_node+0xfb/0x140 age=8370390/8373664/8374956 pid=107-901 cpus=0 + 30 __percpu_alloc_mask+0xbc/0x140 age=8370400/8377809/8380000 pid=1-900 cpus=0-1 + 4 d_alloc+0x19d/0x1f0 age=61160/6282991/8356935 pid=1706-13349 cpus=0-1 + 1 bm_register_write+0x63/0x630 age=8354110 pid=2054 cpus=1 + 1 sysfs_open_file+0xd6/0x230 age=0 pid=13466 cpus=0 + 15 ipc_rcu_alloc+0x4a/0x70 age=8274192/8330064/8348647 pid=2177-2621 cpus=0-1 + 28 kset_create_and_add+0x35/0xa0 age=8355999/8378311/8380000 pid=1-1766 cpus=0-1 + 1 acpi_ds_build_internal_package_obj+0xaf/0x1df age=8379979 pid=1 cpus=0 + 3 acpi_ds_build_internal_buffer_obj+0xe1/0x121 age=8379976/8379976/8379977 pid=1 cpus=0 + 1 acpi_power_add+0x4a/0x1d6 age=8379890 pid=1 cpus=0 + 2 ata_host_alloc+0x4f/0xf0 age=8379280/8379538/8379796 pid=1 cpus=0-1 + 8 cpuidle_add_state_sysfs+0xc3/0x140 age=125753/125759/125766 pid=13 cpus=0-1 + 1 hid_parse_report+0x43/0x2c0 age=53560 pid=419 cpus=0 + 2 hid_add_field+0x18a/0x3a0 age=53560/53560/53560 pid=419 cpus=0 + 6 fib_create_info+0x61/0x970 age=8324536/8346547/8367903 pid=1197-1541 cpus=0-1 + 1 unix_sysctl_register+0x2a/0x80 age=8379847 pid=1 cpus=0 + 1 rtnetlink_init+0x38/0x113 age=8379999 pid=1 cpus=0 + 1 inet_diag_init+0x15/0x6b age=8378998 pid=1 cpus=0 + 41 usb_alloc_urb+0x19/0x50 [usbcore] age=22746/1043846/8374920 pid=143-419 cpus=0-1 + 1 usb_get_configuration+0x5f2/0x1480 [usbcore] age=22753 pid=419 cpus=0 + 2 usb_get_configuration+0x1388/0x1480 [usbcore] age=8372394/8372581/8372769 pid=419 cpus=0 + 1 sr_probe+0x76/0x540 [sr_mod] age=8375854 pid=163 cpus=0 + 18 snd_ctl_new+0x28/0x90 [snd] age=8374174/8374174/8374174 pid=107 cpus=1 + 1 iwl3945_pci_probe+0xd3f/0x1020 [iwl3945] age=8373796 pid=126 cpus=1 + 1 blkcipher_walk_next+0x29c/0x390 [crypto_blkcipher] age=8374562 pid=215 cpus=1 + 3 dm_register_target+0x1f/0xf0 [dm_mod] age=8370400/8370400/8370401 pid=900 cpus=0 + 1 ipv6_icmp_sysctl_init+0x22/0x40 [ipv6] age=8360202 pid=1549 cpus=0 + 1 snd_seq_pool_new+0x1b/0x80 [snd_seq] age=8355636 pid=1805 cpus=0 +''') +f('sys/kernel/slab/kmalloc-192/objs_per_slab', 0o664, b'15\n') +f('sys/kernel/slab/kmalloc-192/shrink', 0o664, b'') +f('sys/kernel/slab/kmalloc-192/trace', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-192/object_size', 0o664, b'192\n') +f('sys/kernel/slab/kmalloc-192/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-192/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-192/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-192/objects_partial', 0o664, b'14\n') +f('sys/kernel/slab/kmalloc-192/objects', 0o664, b'254\n') +f('sys/kernel/slab/kmalloc-192/order', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-192/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/kmalloc-192/store_user', 0o664, b'1\n') +f('sys/kernel/slab/kmalloc-192/align', 0o664, b'8\n') +f('sys/kernel/slab/kmalloc-192/partial', 0o664, b'1\n') +f('sys/kernel/slab/kmalloc-192/validate', 0o664, b'') +f('sys/kernel/slab/kmalloc-192/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/kmalloc-192/free_calls', 0o664, b''' 149 <not-available> age=4303047430 pid=0 cpus=0 + 5 free_sched_group+0x3b/0x80 age=363179/6767246/8375130 pid=0-1614 cpus=0-1 + 1 free_sched_group+0x50/0x80 age=8369988 pid=0 cpus=0 + 1 do_exit+0x713/0x960 age=8333169 pid=2558 cpus=1 + 7 groups_free+0x56/0x60 age=17071/4081875/8369994 pid=0-1690 cpus=0-1 + 1 __vunmap+0xe9/0x120 age=8356237 pid=1748 cpus=1 + 1 do_readv_writev+0xe4/0x1e0 age=8331191 pid=2262 cpus=0 + 4 getxattr+0x8c/0x140 age=0/6266155/8357946 pid=1610-13466 cpus=0-1 + 20 sysfs_release+0x7c/0xa0 age=53608/7118781/8376453 pid=226-2519 cpus=0-1 + 1 ipc_immediate_free+0x9/0x10 age=8330259 pid=2568 cpus=0 + 1 acpi_pci_irq_add_prt+0x30b/0x324 age=8379911 pid=1 cpus=0 + 6 cpuidle_remove_state_sysfs+0x4f/0x70 age=125768/1366349/3847513 pid=13 cpus=0 + 4 free_fib_info+0x34/0x60 age=8367904/8367909/8367920 pid=1185-1197 cpus=0-1 + 36 urb_destroy+0x23/0x30 [usbcore] age=22749/2596918/8374921 pid=143-13294 cpus=0-1 + 1 sg_clean+0x3e/0x80 [usbcore] age=61399 pid=13294 cpus=0 + 1 0xffffffffa006521f age=8355637 pid=1805 cpus=0 +''') +f('sys/kernel/slab/kmalloc-192/aliases', 0o664, b'0\n') +d('sys/kernel/slab/task_struct', 0o775) +f('sys/kernel/slab/task_struct/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/task_struct/ctor', 0o664, b'') +f('sys/kernel/slab/task_struct/hwcache_align', 0o664, b'0\n') +f('sys/kernel/slab/task_struct/slab_size', 0o664, b'4400\n') +f('sys/kernel/slab/task_struct/total_objects', 0o664, b'224\n') +f('sys/kernel/slab/task_struct/slabs', 0o664, b'32\n') +f('sys/kernel/slab/task_struct/poison', 0o664, b'1\n') +f('sys/kernel/slab/task_struct/alloc_calls', 0o664, b' 203 copy_process+0xa4/0x1220 age=4172/8008848/8379941 pid=0-13212 cpus=0-1\n') +f('sys/kernel/slab/task_struct/objs_per_slab', 0o664, b'7\n') +f('sys/kernel/slab/task_struct/shrink', 0o664, b'') +f('sys/kernel/slab/task_struct/trace', 0o664, b'0\n') +f('sys/kernel/slab/task_struct/object_size', 0o664, b'4320\n') +f('sys/kernel/slab/task_struct/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/task_struct/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/task_struct/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/task_struct/objects_partial', 0o664, b'57\n') +f('sys/kernel/slab/task_struct/objects', 0o664, b'211\n') +f('sys/kernel/slab/task_struct/order', 0o664, b'3\n') +f('sys/kernel/slab/task_struct/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/task_struct/store_user', 0o664, b'1\n') +f('sys/kernel/slab/task_struct/align', 0o664, b'16\n') +f('sys/kernel/slab/task_struct/partial', 0o664, b'10\n') +f('sys/kernel/slab/task_struct/validate', 0o664, b'') +f('sys/kernel/slab/task_struct/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/task_struct/free_calls', 0o664, b''' 93 <not-available> age=4303047286 pid=0 cpus=0 + 110 free_task+0x30/0x40 age=7208/7706854/8377050 pid=0-13258 cpus=0-1 +''') +f('sys/kernel/slab/task_struct/aliases', 0o664, b'0\n') +d('sys/kernel/slab/sgpool-16', 0o775) +f('sys/kernel/slab/sgpool-16/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/sgpool-16/ctor', 0o664, b'') +f('sys/kernel/slab/sgpool-16/hwcache_align', 0o664, b'1\n') +f('sys/kernel/slab/sgpool-16/slab_size', 0o664, b'640\n') +f('sys/kernel/slab/sgpool-16/total_objects', 0o664, b'24\n') +f('sys/kernel/slab/sgpool-16/slabs', 0o664, b'2\n') +f('sys/kernel/slab/sgpool-16/poison', 0o664, b'1\n') +f('sys/kernel/slab/sgpool-16/alloc_calls', 0o664, b' 2 mempool_alloc_slab+0x11/0x20 age=8379289/8379289/8379289 pid=1 cpus=0\n') +f('sys/kernel/slab/sgpool-16/objs_per_slab', 0o664, b'12\n') +f('sys/kernel/slab/sgpool-16/shrink', 0o664, b'') +f('sys/kernel/slab/sgpool-16/trace', 0o664, b'0\n') +f('sys/kernel/slab/sgpool-16/object_size', 0o664, b'512\n') +f('sys/kernel/slab/sgpool-16/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/sgpool-16/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/sgpool-16/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/sgpool-16/objects_partial', 0o664, b'0\n') +f('sys/kernel/slab/sgpool-16/objects', 0o664, b'24\n') +f('sys/kernel/slab/sgpool-16/order', 0o664, b'1\n') +f('sys/kernel/slab/sgpool-16/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/sgpool-16/store_user', 0o664, b'1\n') +f('sys/kernel/slab/sgpool-16/align', 0o664, b'0\n') +f('sys/kernel/slab/sgpool-16/partial', 0o664, b'0\n') +f('sys/kernel/slab/sgpool-16/validate', 0o664, b'') +f('sys/kernel/slab/sgpool-16/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/sgpool-16/free_calls', 0o664, b' 2 <not-available> age=4303046838 pid=0 cpus=0\n') +f('sys/kernel/slab/sgpool-16/aliases', 0o664, b'0\n') +d('sys/kernel/slab/request_sock_TCPv6', 0o775) +f('sys/kernel/slab/request_sock_TCPv6/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/request_sock_TCPv6/ctor', 0o664, b'') +f('sys/kernel/slab/request_sock_TCPv6/hwcache_align', 0o664, b'1\n') +f('sys/kernel/slab/request_sock_TCPv6/slab_size', 0o664, b'256\n') +f('sys/kernel/slab/request_sock_TCPv6/total_objects', 0o664, b'0\n') +f('sys/kernel/slab/request_sock_TCPv6/slabs', 0o664, b'0\n') +f('sys/kernel/slab/request_sock_TCPv6/poison', 0o664, b'1\n') +f('sys/kernel/slab/request_sock_TCPv6/alloc_calls', 0o664, b'No data\n') +f('sys/kernel/slab/request_sock_TCPv6/objs_per_slab', 0o664, b'16\n') +f('sys/kernel/slab/request_sock_TCPv6/shrink', 0o664, b'') +f('sys/kernel/slab/request_sock_TCPv6/trace', 0o664, b'0\n') +f('sys/kernel/slab/request_sock_TCPv6/object_size', 0o664, b'136\n') +f('sys/kernel/slab/request_sock_TCPv6/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/request_sock_TCPv6/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/request_sock_TCPv6/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/request_sock_TCPv6/objects_partial', 0o664, b'0\n') +f('sys/kernel/slab/request_sock_TCPv6/objects', 0o664, b'0\n') +f('sys/kernel/slab/request_sock_TCPv6/order', 0o664, b'0\n') +f('sys/kernel/slab/request_sock_TCPv6/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/request_sock_TCPv6/store_user', 0o664, b'1\n') +f('sys/kernel/slab/request_sock_TCPv6/align', 0o664, b'0\n') +f('sys/kernel/slab/request_sock_TCPv6/partial', 0o664, b'0\n') +f('sys/kernel/slab/request_sock_TCPv6/validate', 0o664, b'') +f('sys/kernel/slab/request_sock_TCPv6/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/request_sock_TCPv6/free_calls', 0o664, b'No data\n') +f('sys/kernel/slab/request_sock_TCPv6/aliases', 0o664, b'0\n') +d('sys/kernel/slab/Acpi-Namespace', 0o775) +f('sys/kernel/slab/Acpi-Namespace/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/Acpi-Namespace/ctor', 0o664, b'') +f('sys/kernel/slab/Acpi-Namespace/hwcache_align', 0o664, b'0\n') +f('sys/kernel/slab/Acpi-Namespace/slab_size', 0o664, b'104\n') +f('sys/kernel/slab/Acpi-Namespace/total_objects', 0o664, b'1755\n') +f('sys/kernel/slab/Acpi-Namespace/slabs', 0o664, b'45\n') +f('sys/kernel/slab/Acpi-Namespace/poison', 0o664, b'1\n') +f('sys/kernel/slab/Acpi-Namespace/alloc_calls', 0o664, b' 1709 acpi_ns_create_node+0x34/0x45 age=8375345/8379655/8379737 pid=0-330 cpus=0\n') +f('sys/kernel/slab/Acpi-Namespace/objs_per_slab', 0o664, b'39\n') +f('sys/kernel/slab/Acpi-Namespace/shrink', 0o664, b'') +f('sys/kernel/slab/Acpi-Namespace/trace', 0o664, b'0\n') +f('sys/kernel/slab/Acpi-Namespace/object_size', 0o664, b'32\n') +f('sys/kernel/slab/Acpi-Namespace/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/Acpi-Namespace/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/Acpi-Namespace/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/Acpi-Namespace/objects_partial', 0o664, b'32\n') +f('sys/kernel/slab/Acpi-Namespace/objects', 0o664, b'1709\n') +f('sys/kernel/slab/Acpi-Namespace/order', 0o664, b'0\n') +f('sys/kernel/slab/Acpi-Namespace/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/Acpi-Namespace/store_user', 0o664, b'1\n') +f('sys/kernel/slab/Acpi-Namespace/align', 0o664, b'0\n') +f('sys/kernel/slab/Acpi-Namespace/partial', 0o664, b'2\n') +f('sys/kernel/slab/Acpi-Namespace/validate', 0o664, b'') +f('sys/kernel/slab/Acpi-Namespace/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/Acpi-Namespace/free_calls', 0o664, b' 1709 <not-available> age=4303047034 pid=0 cpus=0\n') +f('sys/kernel/slab/Acpi-Namespace/aliases', 0o664, b'0\n') +d('sys/kernel/slab/posix_timers_cache', 0o775) +f('sys/kernel/slab/posix_timers_cache/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/posix_timers_cache/ctor', 0o664, b'') +f('sys/kernel/slab/posix_timers_cache/hwcache_align', 0o664, b'0\n') +f('sys/kernel/slab/posix_timers_cache/slab_size', 0o664, b'320\n') +f('sys/kernel/slab/posix_timers_cache/total_objects', 0o664, b'0\n') +f('sys/kernel/slab/posix_timers_cache/slabs', 0o664, b'0\n') +f('sys/kernel/slab/posix_timers_cache/poison', 0o664, b'1\n') +f('sys/kernel/slab/posix_timers_cache/alloc_calls', 0o664, b'No data\n') +f('sys/kernel/slab/posix_timers_cache/objs_per_slab', 0o664, b'12\n') +f('sys/kernel/slab/posix_timers_cache/shrink', 0o664, b'') +f('sys/kernel/slab/posix_timers_cache/trace', 0o664, b'0\n') +f('sys/kernel/slab/posix_timers_cache/object_size', 0o664, b'248\n') +f('sys/kernel/slab/posix_timers_cache/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/posix_timers_cache/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/posix_timers_cache/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/posix_timers_cache/objects_partial', 0o664, b'0\n') +f('sys/kernel/slab/posix_timers_cache/objects', 0o664, b'0\n') +f('sys/kernel/slab/posix_timers_cache/order', 0o664, b'0\n') +f('sys/kernel/slab/posix_timers_cache/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/posix_timers_cache/store_user', 0o664, b'1\n') +f('sys/kernel/slab/posix_timers_cache/align', 0o664, b'0\n') +f('sys/kernel/slab/posix_timers_cache/partial', 0o664, b'0\n') +f('sys/kernel/slab/posix_timers_cache/validate', 0o664, b'') +f('sys/kernel/slab/posix_timers_cache/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/posix_timers_cache/free_calls', 0o664, b'No data\n') +f('sys/kernel/slab/posix_timers_cache/aliases', 0o664, b'0\n') +d('sys/kernel/slab/scsi_cmd_cache', 0o775) +f('sys/kernel/slab/scsi_cmd_cache/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/scsi_cmd_cache/ctor', 0o664, b'') +f('sys/kernel/slab/scsi_cmd_cache/hwcache_align', 0o664, b'1\n') +f('sys/kernel/slab/scsi_cmd_cache/slab_size', 0o664, b'448\n') +f('sys/kernel/slab/scsi_cmd_cache/total_objects', 0o664, b'36\n') +f('sys/kernel/slab/scsi_cmd_cache/slabs', 0o664, b'2\n') +f('sys/kernel/slab/scsi_cmd_cache/poison', 0o664, b'1\n') +f('sys/kernel/slab/scsi_cmd_cache/alloc_calls', 0o664, b' 7 scsi_pool_alloc_command+0x25/0x80 age=67290/7192324/8380005 pid=1-419 cpus=0-1\n') +f('sys/kernel/slab/scsi_cmd_cache/objs_per_slab', 0o664, b'18\n') +f('sys/kernel/slab/scsi_cmd_cache/shrink', 0o664, b'') +f('sys/kernel/slab/scsi_cmd_cache/trace', 0o664, b'0\n') +f('sys/kernel/slab/scsi_cmd_cache/object_size', 0o664, b'320\n') +f('sys/kernel/slab/scsi_cmd_cache/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/scsi_cmd_cache/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/scsi_cmd_cache/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/scsi_cmd_cache/objects_partial', 0o664, b'0\n') +f('sys/kernel/slab/scsi_cmd_cache/objects', 0o664, b'36\n') +f('sys/kernel/slab/scsi_cmd_cache/order', 0o664, b'1\n') +f('sys/kernel/slab/scsi_cmd_cache/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/scsi_cmd_cache/store_user', 0o664, b'1\n') +f('sys/kernel/slab/scsi_cmd_cache/align', 0o664, b'0\n') +f('sys/kernel/slab/scsi_cmd_cache/partial', 0o664, b'0\n') +f('sys/kernel/slab/scsi_cmd_cache/validate', 0o664, b'') +f('sys/kernel/slab/scsi_cmd_cache/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/scsi_cmd_cache/free_calls', 0o664, b''' 5 <not-available> age=4303047639 pid=0 cpus=0 + 2 scsi_pool_free_command+0x4c/0x60 age=67789/4223648/8379508 pid=0 cpus=0 +''') +f('sys/kernel/slab/scsi_cmd_cache/aliases', 0o664, b'0\n') +d('sys/kernel/slab/eventpoll_pwq', 0o775) +f('sys/kernel/slab/eventpoll_pwq/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/eventpoll_pwq/ctor', 0o664, b'') +f('sys/kernel/slab/eventpoll_pwq/hwcache_align', 0o664, b'0\n') +f('sys/kernel/slab/eventpoll_pwq/slab_size', 0o664, b'144\n') +f('sys/kernel/slab/eventpoll_pwq/total_objects', 0o664, b'112\n') +f('sys/kernel/slab/eventpoll_pwq/slabs', 0o664, b'4\n') +f('sys/kernel/slab/eventpoll_pwq/poison', 0o664, b'1\n') +f('sys/kernel/slab/eventpoll_pwq/alloc_calls', 0o664, b' 65 ep_ptable_queue_proc+0x35/0xa0 age=2416434/8173328/8356246 pid=1690-20296 cpus=0-1\n') +f('sys/kernel/slab/eventpoll_pwq/objs_per_slab', 0o664, b'28\n') +f('sys/kernel/slab/eventpoll_pwq/shrink', 0o664, b'') +f('sys/kernel/slab/eventpoll_pwq/trace', 0o664, b'0\n') +f('sys/kernel/slab/eventpoll_pwq/object_size', 0o664, b'72\n') +f('sys/kernel/slab/eventpoll_pwq/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/eventpoll_pwq/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/eventpoll_pwq/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/eventpoll_pwq/objects_partial', 0o664, b'7\n') +f('sys/kernel/slab/eventpoll_pwq/objects', 0o664, b'91\n') +f('sys/kernel/slab/eventpoll_pwq/order', 0o664, b'0\n') +f('sys/kernel/slab/eventpoll_pwq/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/eventpoll_pwq/store_user', 0o664, b'1\n') +f('sys/kernel/slab/eventpoll_pwq/align', 0o664, b'0\n') +f('sys/kernel/slab/eventpoll_pwq/partial', 0o664, b'1\n') +f('sys/kernel/slab/eventpoll_pwq/validate', 0o664, b'') +f('sys/kernel/slab/eventpoll_pwq/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/eventpoll_pwq/free_calls', 0o664, b''' 61 <not-available> age=4303046794 pid=0 cpus=0 + 4 ep_unregister_pollwait+0x61/0x80 age=2416452/6864185/8356241 pid=1690-2073 cpus=0-1 +''') +f('sys/kernel/slab/eventpoll_pwq/aliases', 0o664, b'0\n') +d('sys/kernel/slab/journal_handle', 0o775) +f('sys/kernel/slab/journal_handle/reclaim_account', 0o664, b'1\n') +f('sys/kernel/slab/journal_handle/ctor', 0o664, b'') +f('sys/kernel/slab/journal_handle/hwcache_align', 0o664, b'0\n') +f('sys/kernel/slab/journal_handle/slab_size', 0o664, b'128\n') +f('sys/kernel/slab/journal_handle/total_objects', 0o664, b'64\n') +f('sys/kernel/slab/journal_handle/slabs', 0o664, b'2\n') +f('sys/kernel/slab/journal_handle/poison', 0o664, b'1\n') +f('sys/kernel/slab/journal_handle/alloc_calls', 0o664, b'No data\n') +f('sys/kernel/slab/journal_handle/objs_per_slab', 0o664, b'32\n') +f('sys/kernel/slab/journal_handle/shrink', 0o664, b'') +f('sys/kernel/slab/journal_handle/trace', 0o664, b'0\n') +f('sys/kernel/slab/journal_handle/object_size', 0o664, b'56\n') +f('sys/kernel/slab/journal_handle/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/journal_handle/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/journal_handle/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/journal_handle/objects_partial', 0o664, b'0\n') +f('sys/kernel/slab/journal_handle/objects', 0o664, b'64\n') +f('sys/kernel/slab/journal_handle/order', 0o664, b'0\n') +f('sys/kernel/slab/journal_handle/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/journal_handle/store_user', 0o664, b'1\n') +f('sys/kernel/slab/journal_handle/align', 0o664, b'0\n') +f('sys/kernel/slab/journal_handle/partial', 0o664, b'0\n') +f('sys/kernel/slab/journal_handle/validate', 0o664, b'') +f('sys/kernel/slab/journal_handle/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/journal_handle/free_calls', 0o664, b'No data\n') +f('sys/kernel/slab/journal_handle/aliases', 0o664, b'0\n') +d('sys/kernel/slab/bsg_cmd', 0o775) +f('sys/kernel/slab/bsg_cmd/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/bsg_cmd/ctor', 0o664, b'') +f('sys/kernel/slab/bsg_cmd/hwcache_align', 0o664, b'0\n') +f('sys/kernel/slab/bsg_cmd/slab_size', 0o664, b'384\n') +f('sys/kernel/slab/bsg_cmd/total_objects', 0o664, b'0\n') +f('sys/kernel/slab/bsg_cmd/slabs', 0o664, b'0\n') +f('sys/kernel/slab/bsg_cmd/poison', 0o664, b'1\n') +f('sys/kernel/slab/bsg_cmd/alloc_calls', 0o664, b'No data\n') +f('sys/kernel/slab/bsg_cmd/objs_per_slab', 0o664, b'21\n') +f('sys/kernel/slab/bsg_cmd/shrink', 0o664, b'') +f('sys/kernel/slab/bsg_cmd/trace', 0o664, b'0\n') +f('sys/kernel/slab/bsg_cmd/object_size', 0o664, b'312\n') +f('sys/kernel/slab/bsg_cmd/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/bsg_cmd/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/bsg_cmd/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/bsg_cmd/objects_partial', 0o664, b'0\n') +f('sys/kernel/slab/bsg_cmd/objects', 0o664, b'0\n') +f('sys/kernel/slab/bsg_cmd/order', 0o664, b'1\n') +f('sys/kernel/slab/bsg_cmd/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/bsg_cmd/store_user', 0o664, b'1\n') +f('sys/kernel/slab/bsg_cmd/align', 0o664, b'0\n') +f('sys/kernel/slab/bsg_cmd/partial', 0o664, b'0\n') +f('sys/kernel/slab/bsg_cmd/validate', 0o664, b'') +f('sys/kernel/slab/bsg_cmd/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/bsg_cmd/free_calls', 0o664, b'No data\n') +f('sys/kernel/slab/bsg_cmd/aliases', 0o664, b'0\n') +d('sys/kernel/slab/kiocb', 0o775) +f('sys/kernel/slab/kiocb/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/kiocb/ctor', 0o664, b'') +f('sys/kernel/slab/kiocb/hwcache_align', 0o664, b'1\n') +f('sys/kernel/slab/kiocb/slab_size', 0o664, b'320\n') +f('sys/kernel/slab/kiocb/total_objects', 0o664, b'0\n') +f('sys/kernel/slab/kiocb/slabs', 0o664, b'0\n') +f('sys/kernel/slab/kiocb/poison', 0o664, b'1\n') +f('sys/kernel/slab/kiocb/alloc_calls', 0o664, b'No data\n') +f('sys/kernel/slab/kiocb/objs_per_slab', 0o664, b'12\n') +f('sys/kernel/slab/kiocb/shrink', 0o664, b'') +f('sys/kernel/slab/kiocb/trace', 0o664, b'0\n') +f('sys/kernel/slab/kiocb/object_size', 0o664, b'240\n') +f('sys/kernel/slab/kiocb/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/kiocb/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/kiocb/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/kiocb/objects_partial', 0o664, b'0\n') +f('sys/kernel/slab/kiocb/objects', 0o664, b'0\n') +f('sys/kernel/slab/kiocb/order', 0o664, b'0\n') +f('sys/kernel/slab/kiocb/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/kiocb/store_user', 0o664, b'1\n') +f('sys/kernel/slab/kiocb/align', 0o664, b'8\n') +f('sys/kernel/slab/kiocb/partial', 0o664, b'0\n') +f('sys/kernel/slab/kiocb/validate', 0o664, b'') +f('sys/kernel/slab/kiocb/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/kiocb/free_calls', 0o664, b'No data\n') +f('sys/kernel/slab/kiocb/aliases', 0o664, b'0\n') +d('sys/kernel/slab/file_lock_cache', 0o775) +f('sys/kernel/slab/file_lock_cache/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/file_lock_cache/ctor', 0o664, b'init_once+0x0/0x10\n') +f('sys/kernel/slab/file_lock_cache/hwcache_align', 0o664, b'0\n') +f('sys/kernel/slab/file_lock_cache/slab_size', 0o664, b'296\n') +f('sys/kernel/slab/file_lock_cache/total_objects', 0o664, b'26\n') +f('sys/kernel/slab/file_lock_cache/slabs', 0o664, b'2\n') +f('sys/kernel/slab/file_lock_cache/poison', 0o664, b'1\n') +f('sys/kernel/slab/file_lock_cache/alloc_calls', 0o664, b''' 2 flock_lock_file_wait+0x2d6/0x2f0 age=8355055/8355767/8356479 pid=1690-1807 cpus=0 + 1 __posix_lock_file+0x3f/0x560 age=8349601 pid=2262 cpus=0 +''') +f('sys/kernel/slab/file_lock_cache/objs_per_slab', 0o664, b'13\n') +f('sys/kernel/slab/file_lock_cache/shrink', 0o664, b'') +f('sys/kernel/slab/file_lock_cache/trace', 0o664, b'0\n') +f('sys/kernel/slab/file_lock_cache/object_size', 0o664, b'224\n') +f('sys/kernel/slab/file_lock_cache/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/file_lock_cache/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/file_lock_cache/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/file_lock_cache/objects_partial', 0o664, b'0\n') +f('sys/kernel/slab/file_lock_cache/objects', 0o664, b'26\n') +f('sys/kernel/slab/file_lock_cache/order', 0o664, b'0\n') +f('sys/kernel/slab/file_lock_cache/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/file_lock_cache/store_user', 0o664, b'1\n') +f('sys/kernel/slab/file_lock_cache/align', 0o664, b'0\n') +f('sys/kernel/slab/file_lock_cache/partial', 0o664, b'0\n') +f('sys/kernel/slab/file_lock_cache/validate', 0o664, b'') +f('sys/kernel/slab/file_lock_cache/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/file_lock_cache/free_calls', 0o664, b' 3 locks_free_lock+0x3e/0x60 age=8351291/8355422/8359832 pid=1549-2189 cpus=0\n') +f('sys/kernel/slab/file_lock_cache/aliases', 0o664, b'0\n') +d('sys/kernel/slab/inet_peer_cache', 0o775) +f('sys/kernel/slab/inet_peer_cache/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/inet_peer_cache/ctor', 0o664, b'') +f('sys/kernel/slab/inet_peer_cache/hwcache_align', 0o664, b'1\n') +f('sys/kernel/slab/inet_peer_cache/slab_size', 0o664, b'192\n') +f('sys/kernel/slab/inet_peer_cache/total_objects', 0o664, b'0\n') +f('sys/kernel/slab/inet_peer_cache/slabs', 0o664, b'0\n') +f('sys/kernel/slab/inet_peer_cache/poison', 0o664, b'1\n') +f('sys/kernel/slab/inet_peer_cache/alloc_calls', 0o664, b'No data\n') +f('sys/kernel/slab/inet_peer_cache/objs_per_slab', 0o664, b'21\n') +f('sys/kernel/slab/inet_peer_cache/shrink', 0o664, b'') +f('sys/kernel/slab/inet_peer_cache/trace', 0o664, b'0\n') +f('sys/kernel/slab/inet_peer_cache/object_size', 0o664, b'64\n') +f('sys/kernel/slab/inet_peer_cache/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/inet_peer_cache/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/inet_peer_cache/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/inet_peer_cache/objects_partial', 0o664, b'0\n') +f('sys/kernel/slab/inet_peer_cache/objects', 0o664, b'0\n') +f('sys/kernel/slab/inet_peer_cache/order', 0o664, b'0\n') +f('sys/kernel/slab/inet_peer_cache/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/inet_peer_cache/store_user', 0o664, b'1\n') +f('sys/kernel/slab/inet_peer_cache/align', 0o664, b'0\n') +f('sys/kernel/slab/inet_peer_cache/partial', 0o664, b'0\n') +f('sys/kernel/slab/inet_peer_cache/validate', 0o664, b'') +f('sys/kernel/slab/inet_peer_cache/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/inet_peer_cache/free_calls', 0o664, b'No data\n') +f('sys/kernel/slab/inet_peer_cache/aliases', 0o664, b'0\n') +d('sys/kernel/slab/arp_cache', 0o775) +f('sys/kernel/slab/arp_cache/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/arp_cache/ctor', 0o664, b'') +f('sys/kernel/slab/arp_cache/hwcache_align', 0o664, b'1\n') +f('sys/kernel/slab/arp_cache/slab_size', 0o664, b'448\n') +f('sys/kernel/slab/arp_cache/total_objects', 0o664, b'36\n') +f('sys/kernel/slab/arp_cache/slabs', 0o664, b'2\n') +f('sys/kernel/slab/arp_cache/poison', 0o664, b'1\n') +f('sys/kernel/slab/arp_cache/alloc_calls', 0o664, b' 1 neigh_create+0x8b/0x530 age=1133499 pid=952 cpus=0\n') +f('sys/kernel/slab/arp_cache/objs_per_slab', 0o664, b'18\n') +f('sys/kernel/slab/arp_cache/shrink', 0o664, b'') +f('sys/kernel/slab/arp_cache/trace', 0o664, b'0\n') +f('sys/kernel/slab/arp_cache/object_size', 0o664, b'348\n') +f('sys/kernel/slab/arp_cache/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/arp_cache/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/arp_cache/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/arp_cache/objects_partial', 0o664, b'0\n') +f('sys/kernel/slab/arp_cache/objects', 0o664, b'36\n') +f('sys/kernel/slab/arp_cache/order', 0o664, b'1\n') +f('sys/kernel/slab/arp_cache/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/arp_cache/store_user', 0o664, b'1\n') +f('sys/kernel/slab/arp_cache/align', 0o664, b'0\n') +f('sys/kernel/slab/arp_cache/partial', 0o664, b'0\n') +f('sys/kernel/slab/arp_cache/validate', 0o664, b'') +f('sys/kernel/slab/arp_cache/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/arp_cache/free_calls', 0o664, b' 1 neigh_destroy+0x10c/0x160 age=1135741 pid=0 cpus=0\n') +f('sys/kernel/slab/arp_cache/aliases', 0o664, b'0\n') +d('sys/kernel/slab/biovec-4', 0o775) +f('sys/kernel/slab/biovec-4/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/biovec-4/ctor', 0o664, b'') +f('sys/kernel/slab/biovec-4/hwcache_align', 0o664, b'1\n') +f('sys/kernel/slab/biovec-4/slab_size', 0o664, b'192\n') +f('sys/kernel/slab/biovec-4/total_objects', 0o664, b'42\n') +f('sys/kernel/slab/biovec-4/slabs', 0o664, b'2\n') +f('sys/kernel/slab/biovec-4/poison', 0o664, b'1\n') +f('sys/kernel/slab/biovec-4/alloc_calls', 0o664, b' 2 mempool_alloc_slab+0x11/0x20 age=8379500/8379500/8379500 pid=1 cpus=0\n') +f('sys/kernel/slab/biovec-4/objs_per_slab', 0o664, b'21\n') +f('sys/kernel/slab/biovec-4/shrink', 0o664, b'') +f('sys/kernel/slab/biovec-4/trace', 0o664, b'0\n') +f('sys/kernel/slab/biovec-4/object_size', 0o664, b'64\n') +f('sys/kernel/slab/biovec-4/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/biovec-4/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/biovec-4/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/biovec-4/objects_partial', 0o664, b'0\n') +f('sys/kernel/slab/biovec-4/objects', 0o664, b'42\n') +f('sys/kernel/slab/biovec-4/order', 0o664, b'0\n') +f('sys/kernel/slab/biovec-4/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/biovec-4/store_user', 0o664, b'1\n') +f('sys/kernel/slab/biovec-4/align', 0o664, b'0\n') +f('sys/kernel/slab/biovec-4/partial', 0o664, b'0\n') +f('sys/kernel/slab/biovec-4/validate', 0o664, b'') +f('sys/kernel/slab/biovec-4/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/biovec-4/free_calls', 0o664, b' 2 <not-available> age=4303046934 pid=0 cpus=0\n') +f('sys/kernel/slab/biovec-4/aliases', 0o664, b'0\n') +d('sys/kernel/slab/scsi_sense_cache', 0o775) +f('sys/kernel/slab/scsi_sense_cache/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/scsi_sense_cache/ctor', 0o664, b'') +f('sys/kernel/slab/scsi_sense_cache/hwcache_align', 0o664, b'1\n') +f('sys/kernel/slab/scsi_sense_cache/slab_size', 0o664, b'192\n') +f('sys/kernel/slab/scsi_sense_cache/total_objects', 0o664, b'42\n') +f('sys/kernel/slab/scsi_sense_cache/slabs', 0o664, b'2\n') +f('sys/kernel/slab/scsi_sense_cache/poison', 0o664, b'1\n') +f('sys/kernel/slab/scsi_sense_cache/alloc_calls', 0o664, b' 7 scsi_pool_alloc_command+0x4a/0x80 age=67299/7192333/8380014 pid=1-419 cpus=0-1\n') +f('sys/kernel/slab/scsi_sense_cache/objs_per_slab', 0o664, b'21\n') +f('sys/kernel/slab/scsi_sense_cache/shrink', 0o664, b'') +f('sys/kernel/slab/scsi_sense_cache/trace', 0o664, b'0\n') +f('sys/kernel/slab/scsi_sense_cache/object_size', 0o664, b'96\n') +f('sys/kernel/slab/scsi_sense_cache/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/scsi_sense_cache/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/scsi_sense_cache/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/scsi_sense_cache/objects_partial', 0o664, b'0\n') +f('sys/kernel/slab/scsi_sense_cache/objects', 0o664, b'42\n') +f('sys/kernel/slab/scsi_sense_cache/order', 0o664, b'0\n') +f('sys/kernel/slab/scsi_sense_cache/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/scsi_sense_cache/store_user', 0o664, b'1\n') +f('sys/kernel/slab/scsi_sense_cache/align', 0o664, b'0\n') +f('sys/kernel/slab/scsi_sense_cache/partial', 0o664, b'0\n') +f('sys/kernel/slab/scsi_sense_cache/validate', 0o664, b'') +f('sys/kernel/slab/scsi_sense_cache/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/scsi_sense_cache/free_calls', 0o664, b''' 5 <not-available> age=4303047648 pid=0 cpus=0 + 2 scsi_pool_free_command+0x40/0x60 age=67798/4223657/8379517 pid=0 cpus=0 +''') +f('sys/kernel/slab/scsi_sense_cache/aliases', 0o664, b'0\n') +d('sys/kernel/slab/cfq_io_context', 0o775) +f('sys/kernel/slab/cfq_io_context/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/cfq_io_context/ctor', 0o664, b'') +f('sys/kernel/slab/cfq_io_context/hwcache_align', 0o664, b'0\n') +f('sys/kernel/slab/cfq_io_context/slab_size', 0o664, b'240\n') +f('sys/kernel/slab/cfq_io_context/total_objects', 0o664, b'85\n') +f('sys/kernel/slab/cfq_io_context/slabs', 0o664, b'5\n') +f('sys/kernel/slab/cfq_io_context/poison', 0o664, b'1\n') +f('sys/kernel/slab/cfq_io_context/alloc_calls', 0o664, b' 69 cfq_set_request+0x13d/0x390 age=177/7837888/8379613 pid=1-13466 cpus=0-1\n') +f('sys/kernel/slab/cfq_io_context/objs_per_slab', 0o664, b'17\n') +f('sys/kernel/slab/cfq_io_context/shrink', 0o664, b'') +f('sys/kernel/slab/cfq_io_context/trace', 0o664, b'0\n') +f('sys/kernel/slab/cfq_io_context/object_size', 0o664, b'168\n') +f('sys/kernel/slab/cfq_io_context/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/cfq_io_context/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/cfq_io_context/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/cfq_io_context/objects_partial', 0o664, b'16\n') +f('sys/kernel/slab/cfq_io_context/objects', 0o664, b'84\n') +f('sys/kernel/slab/cfq_io_context/order', 0o664, b'0\n') +f('sys/kernel/slab/cfq_io_context/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/cfq_io_context/store_user', 0o664, b'1\n') +f('sys/kernel/slab/cfq_io_context/align', 0o664, b'8\n') +f('sys/kernel/slab/cfq_io_context/partial', 0o664, b'1\n') +f('sys/kernel/slab/cfq_io_context/validate', 0o664, b'') +f('sys/kernel/slab/cfq_io_context/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/cfq_io_context/free_calls', 0o664, b''' 12 <not-available> age=4303047630 pid=0 cpus=0 + 57 cfq_cic_free_rcu+0x21/0xc0 age=61842/7747595/8376055 pid=0-2535 cpus=0-1 +''') +f('sys/kernel/slab/cfq_io_context/aliases', 0o664, b'0\n') +d('sys/kernel/slab/idr_layer_cache', 0o775) +f('sys/kernel/slab/idr_layer_cache/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/idr_layer_cache/ctor', 0o664, b'idr_cache_ctor+0x0/0x10\n') +f('sys/kernel/slab/idr_layer_cache/hwcache_align', 0o664, b'0\n') +f('sys/kernel/slab/idr_layer_cache/slab_size', 0o664, b'616\n') +f('sys/kernel/slab/idr_layer_cache/total_objects', 0o664, b'442\n') +f('sys/kernel/slab/idr_layer_cache/slabs', 0o664, b'34\n') +f('sys/kernel/slab/idr_layer_cache/poison', 0o664, b'1\n') +f('sys/kernel/slab/idr_layer_cache/alloc_calls', 0o664, b' 406 idr_pre_get+0x5d/0x80 age=60336/8278969/8380018 pid=0-13355 cpus=0-1\n') +f('sys/kernel/slab/idr_layer_cache/objs_per_slab', 0o664, b'13\n') +f('sys/kernel/slab/idr_layer_cache/shrink', 0o664, b'') +f('sys/kernel/slab/idr_layer_cache/trace', 0o664, b'0\n') +f('sys/kernel/slab/idr_layer_cache/object_size', 0o664, b'544\n') +f('sys/kernel/slab/idr_layer_cache/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/idr_layer_cache/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/idr_layer_cache/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/idr_layer_cache/objects_partial', 0o664, b'82\n') +f('sys/kernel/slab/idr_layer_cache/objects', 0o664, b'420\n') +f('sys/kernel/slab/idr_layer_cache/order', 0o664, b'1\n') +f('sys/kernel/slab/idr_layer_cache/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/idr_layer_cache/store_user', 0o664, b'1\n') +f('sys/kernel/slab/idr_layer_cache/align', 0o664, b'0\n') +f('sys/kernel/slab/idr_layer_cache/partial', 0o664, b'8\n') +f('sys/kernel/slab/idr_layer_cache/validate', 0o664, b'') +f('sys/kernel/slab/idr_layer_cache/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/idr_layer_cache/free_calls', 0o664, b''' 304 <not-available> age=4303047315 pid=0 cpus=0 + 3 idr_destroy+0x2f/0x40 age=104486/3178486/4715486 pid=13211-13803 cpus=0-1 + 4 idr_layer_rcu_free+0x17/0x20 age=8334501/8362397/8377168 pid=0-1155 cpus=0-1 + 95 ida_get_new_above+0x141/0x210 age=812584/8292482/8380019 pid=0-2593 cpus=0-1 +''') +f('sys/kernel/slab/idr_layer_cache/aliases', 0o664, b'0\n') +d('sys/kernel/slab/vm_area_struct', 0o775) +f('sys/kernel/slab/vm_area_struct/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/vm_area_struct/ctor', 0o664, b'') +f('sys/kernel/slab/vm_area_struct/hwcache_align', 0o664, b'0\n') +f('sys/kernel/slab/vm_area_struct/slab_size', 0o664, b'240\n') +f('sys/kernel/slab/vm_area_struct/total_objects', 0o664, b'12087\n') +f('sys/kernel/slab/vm_area_struct/slabs', 0o664, b'711\n') +f('sys/kernel/slab/vm_area_struct/poison', 0o664, b'1\n') +f('sys/kernel/slab/vm_area_struct/alloc_calls', 0o664, b''' 2751 dup_mm+0x194/0x390 age=8335622/8348807/8376522 pid=71-2467 cpus=0-1 + 52 install_special_mapping+0x3d/0xe0 age=4109/7453125/8378118 pid=1-20296 cpus=0-1 + 4006 split_vma+0x61/0x140 age=4107/7930710/8366050 pid=1206-20296 cpus=0-1 + 3 copy_vma+0x125/0x1b0 age=8353805/8353815/8353824 pid=1738 cpus=0 + 54 do_brk+0x2ec/0x360 age=4107/7486452/8378131 pid=1-20296 cpus=0-1 + 5097 mmap_region+0x195/0x5c0 age=4105/7877577/8378131 pid=1-20296 cpus=0-1 + 52 bprm_mm_init+0xa0/0x1b0 age=4109/7453192/8378134 pid=1-20296 cpus=0-1 +''') +f('sys/kernel/slab/vm_area_struct/objs_per_slab', 0o664, b'17\n') +f('sys/kernel/slab/vm_area_struct/shrink', 0o664, b'') +f('sys/kernel/slab/vm_area_struct/trace', 0o664, b'0\n') +f('sys/kernel/slab/vm_area_struct/object_size', 0o664, b'168\n') +f('sys/kernel/slab/vm_area_struct/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/vm_area_struct/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/vm_area_struct/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/vm_area_struct/objects_partial', 0o664, b'47\n') +f('sys/kernel/slab/vm_area_struct/objects', 0o664, b'12049\n') +f('sys/kernel/slab/vm_area_struct/order', 0o664, b'0\n') +f('sys/kernel/slab/vm_area_struct/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/vm_area_struct/store_user', 0o664, b'1\n') +f('sys/kernel/slab/vm_area_struct/align', 0o664, b'0\n') +f('sys/kernel/slab/vm_area_struct/partial', 0o664, b'5\n') +f('sys/kernel/slab/vm_area_struct/validate', 0o664, b'') +f('sys/kernel/slab/vm_area_struct/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/vm_area_struct/free_calls', 0o664, b''' 6424 <not-available> age=4303047229 pid=0 cpus=0 + 5590 remove_vma+0x53/0x70 age=4110/7683818/8376767 pid=71-20296 cpus=0-1 + 1 vma_adjust+0x32c/0x570 age=8364245 pid=1371 cpus=0 +''') +f('sys/kernel/slab/vm_area_struct/aliases', 0o664, b'0\n') +d('sys/kernel/slab/biovec-1', 0o775) +f('sys/kernel/slab/biovec-1/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/biovec-1/ctor', 0o664, b'') +f('sys/kernel/slab/biovec-1/hwcache_align', 0o664, b'1\n') +f('sys/kernel/slab/biovec-1/slab_size', 0o664, b'96\n') +f('sys/kernel/slab/biovec-1/total_objects', 0o664, b'126\n') +f('sys/kernel/slab/biovec-1/slabs', 0o664, b'3\n') +f('sys/kernel/slab/biovec-1/poison', 0o664, b'1\n') +f('sys/kernel/slab/biovec-1/alloc_calls', 0o664, b' 2 mempool_alloc_slab+0x11/0x20 age=8379509/8379509/8379509 pid=1 cpus=0\n') +f('sys/kernel/slab/biovec-1/objs_per_slab', 0o664, b'42\n') +f('sys/kernel/slab/biovec-1/shrink', 0o664, b'') +f('sys/kernel/slab/biovec-1/trace', 0o664, b'0\n') +f('sys/kernel/slab/biovec-1/object_size', 0o664, b'16\n') +f('sys/kernel/slab/biovec-1/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/biovec-1/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/biovec-1/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/biovec-1/objects_partial', 0o664, b'2\n') +f('sys/kernel/slab/biovec-1/objects', 0o664, b'86\n') +f('sys/kernel/slab/biovec-1/order', 0o664, b'0\n') +f('sys/kernel/slab/biovec-1/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/biovec-1/store_user', 0o664, b'1\n') +f('sys/kernel/slab/biovec-1/align', 0o664, b'0\n') +f('sys/kernel/slab/biovec-1/partial', 0o664, b'1\n') +f('sys/kernel/slab/biovec-1/validate', 0o664, b'') +f('sys/kernel/slab/biovec-1/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/biovec-1/free_calls', 0o664, b' 2 <not-available> age=4303046943 pid=0 cpus=0\n') +f('sys/kernel/slab/biovec-1/aliases', 0o664, b'0\n') +d('sys/kernel/slab/secpath_cache', 0o775) +f('sys/kernel/slab/secpath_cache/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/secpath_cache/ctor', 0o664, b'') +f('sys/kernel/slab/secpath_cache/hwcache_align', 0o664, b'1\n') +f('sys/kernel/slab/secpath_cache/slab_size', 0o664, b'128\n') +f('sys/kernel/slab/secpath_cache/total_objects', 0o664, b'0\n') +f('sys/kernel/slab/secpath_cache/slabs', 0o664, b'0\n') +f('sys/kernel/slab/secpath_cache/poison', 0o664, b'1\n') +f('sys/kernel/slab/secpath_cache/alloc_calls', 0o664, b'No data\n') +f('sys/kernel/slab/secpath_cache/objs_per_slab', 0o664, b'32\n') +f('sys/kernel/slab/secpath_cache/shrink', 0o664, b'') +f('sys/kernel/slab/secpath_cache/trace', 0o664, b'0\n') +f('sys/kernel/slab/secpath_cache/object_size', 0o664, b'56\n') +f('sys/kernel/slab/secpath_cache/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/secpath_cache/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/secpath_cache/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/secpath_cache/objects_partial', 0o664, b'0\n') +f('sys/kernel/slab/secpath_cache/objects', 0o664, b'0\n') +f('sys/kernel/slab/secpath_cache/order', 0o664, b'0\n') +f('sys/kernel/slab/secpath_cache/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/secpath_cache/store_user', 0o664, b'1\n') +f('sys/kernel/slab/secpath_cache/align', 0o664, b'0\n') +f('sys/kernel/slab/secpath_cache/partial', 0o664, b'0\n') +f('sys/kernel/slab/secpath_cache/validate', 0o664, b'') +f('sys/kernel/slab/secpath_cache/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/secpath_cache/free_calls', 0o664, b'No data\n') +f('sys/kernel/slab/secpath_cache/aliases', 0o664, b'0\n') +d('sys/kernel/slab/UNIX', 0o775) +f('sys/kernel/slab/UNIX/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/UNIX/ctor', 0o664, b'') +f('sys/kernel/slab/UNIX/hwcache_align', 0o664, b'1\n') +f('sys/kernel/slab/UNIX/slab_size', 0o664, b'1472\n') +f('sys/kernel/slab/UNIX/total_objects', 0o664, b'506\n') +f('sys/kernel/slab/UNIX/slabs', 0o664, b'23\n') +f('sys/kernel/slab/UNIX/poison', 0o664, b'1\n') +f('sys/kernel/slab/UNIX/alloc_calls', 0o664, b' 450 sk_prot_alloc+0x1e/0xb0 age=61033/8220474/8376385 pid=71-20296 cpus=0-1\n') +f('sys/kernel/slab/UNIX/objs_per_slab', 0o664, b'22\n') +f('sys/kernel/slab/UNIX/shrink', 0o664, b'') +f('sys/kernel/slab/UNIX/trace', 0o664, b'0\n') +f('sys/kernel/slab/UNIX/object_size', 0o664, b'1376\n') +f('sys/kernel/slab/UNIX/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/UNIX/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/UNIX/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/UNIX/objects_partial', 0o664, b'178\n') +f('sys/kernel/slab/UNIX/objects', 0o664, b'486\n') +f('sys/kernel/slab/UNIX/order', 0o664, b'3\n') +f('sys/kernel/slab/UNIX/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/UNIX/store_user', 0o664, b'1\n') +f('sys/kernel/slab/UNIX/align', 0o664, b'0\n') +f('sys/kernel/slab/UNIX/partial', 0o664, b'9\n') +f('sys/kernel/slab/UNIX/validate', 0o664, b'') +f('sys/kernel/slab/UNIX/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/UNIX/free_calls', 0o664, b''' 235 <not-available> age=4303046663 pid=0 cpus=0 + 215 sk_free+0x80/0x100 age=61050/8083366/8375930 pid=76-20292 cpus=0-1 +''') +f('sys/kernel/slab/UNIX/aliases', 0o664, b'0\n') +d('sys/kernel/slab/RAWv6', 0o775) +f('sys/kernel/slab/RAWv6/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/RAWv6/ctor', 0o664, b'') +f('sys/kernel/slab/RAWv6/hwcache_align', 0o664, b'1\n') +f('sys/kernel/slab/RAWv6/slab_size', 0o664, b'1472\n') +f('sys/kernel/slab/RAWv6/total_objects', 0o664, b'22\n') +f('sys/kernel/slab/RAWv6/slabs', 0o664, b'1\n') +f('sys/kernel/slab/RAWv6/poison', 0o664, b'1\n') +f('sys/kernel/slab/RAWv6/alloc_calls', 0o664, b' 5 sk_prot_alloc+0x1e/0xb0 age=8360545/8360552/8360555 pid=1549 cpus=0\n') +f('sys/kernel/slab/RAWv6/objs_per_slab', 0o664, b'22\n') +f('sys/kernel/slab/RAWv6/shrink', 0o664, b'') +f('sys/kernel/slab/RAWv6/trace', 0o664, b'0\n') +f('sys/kernel/slab/RAWv6/object_size', 0o664, b'1376\n') +f('sys/kernel/slab/RAWv6/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/RAWv6/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/RAWv6/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/RAWv6/objects_partial', 0o664, b'5\n') +f('sys/kernel/slab/RAWv6/objects', 0o664, b'5\n') +f('sys/kernel/slab/RAWv6/order', 0o664, b'3\n') +f('sys/kernel/slab/RAWv6/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/RAWv6/store_user', 0o664, b'1\n') +f('sys/kernel/slab/RAWv6/align', 0o664, b'0\n') +f('sys/kernel/slab/RAWv6/partial', 0o664, b'1\n') +f('sys/kernel/slab/RAWv6/validate', 0o664, b'') +f('sys/kernel/slab/RAWv6/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/RAWv6/free_calls', 0o664, b' 5 <not-available> age=4303047773 pid=0 cpus=0\n') +f('sys/kernel/slab/RAWv6/aliases', 0o664, b'0\n') +d('sys/kernel/slab/sgpool-64', 0o775) +f('sys/kernel/slab/sgpool-64/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/sgpool-64/ctor', 0o664, b'') +f('sys/kernel/slab/sgpool-64/hwcache_align', 0o664, b'1\n') +f('sys/kernel/slab/sgpool-64/slab_size', 0o664, b'2176\n') +f('sys/kernel/slab/sgpool-64/total_objects', 0o664, b'30\n') +f('sys/kernel/slab/sgpool-64/slabs', 0o664, b'2\n') +f('sys/kernel/slab/sgpool-64/poison', 0o664, b'1\n') +f('sys/kernel/slab/sgpool-64/alloc_calls', 0o664, b' 2 mempool_alloc_slab+0x11/0x20 age=8379271/8379271/8379271 pid=1 cpus=0\n') +f('sys/kernel/slab/sgpool-64/objs_per_slab', 0o664, b'15\n') +f('sys/kernel/slab/sgpool-64/shrink', 0o664, b'') +f('sys/kernel/slab/sgpool-64/trace', 0o664, b'0\n') +f('sys/kernel/slab/sgpool-64/object_size', 0o664, b'2048\n') +f('sys/kernel/slab/sgpool-64/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/sgpool-64/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/sgpool-64/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/sgpool-64/objects_partial', 0o664, b'0\n') +f('sys/kernel/slab/sgpool-64/objects', 0o664, b'30\n') +f('sys/kernel/slab/sgpool-64/order', 0o664, b'3\n') +f('sys/kernel/slab/sgpool-64/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/sgpool-64/store_user', 0o664, b'1\n') +f('sys/kernel/slab/sgpool-64/align', 0o664, b'0\n') +f('sys/kernel/slab/sgpool-64/partial', 0o664, b'0\n') +f('sys/kernel/slab/sgpool-64/validate', 0o664, b'') +f('sys/kernel/slab/sgpool-64/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/sgpool-64/free_calls', 0o664, b' 2 <not-available> age=4303046820 pid=0 cpus=0\n') +f('sys/kernel/slab/sgpool-64/aliases', 0o664, b'0\n') +d('sys/kernel/slab/bdev_cache', 0o775) +f('sys/kernel/slab/bdev_cache/reclaim_account', 0o664, b'1\n') +f('sys/kernel/slab/bdev_cache/ctor', 0o664, b'init_once+0x0/0x100\n') +f('sys/kernel/slab/bdev_cache/hwcache_align', 0o664, b'1\n') +f('sys/kernel/slab/bdev_cache/slab_size', 0o664, b'1536\n') +f('sys/kernel/slab/bdev_cache/total_objects', 0o664, b'42\n') +f('sys/kernel/slab/bdev_cache/slabs', 0o664, b'2\n') +f('sys/kernel/slab/bdev_cache/poison', 0o664, b'1\n') +f('sys/kernel/slab/bdev_cache/alloc_calls', 0o664, b' 13 bdev_alloc_inode+0x15/0x30 age=61383/7093434/8379778 pid=0-13333 cpus=0\n') +f('sys/kernel/slab/bdev_cache/objs_per_slab', 0o664, b'21\n') +f('sys/kernel/slab/bdev_cache/shrink', 0o664, b'') +f('sys/kernel/slab/bdev_cache/trace', 0o664, b'0\n') +f('sys/kernel/slab/bdev_cache/object_size', 0o664, b'1432\n') +f('sys/kernel/slab/bdev_cache/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/bdev_cache/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/bdev_cache/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/bdev_cache/objects_partial', 0o664, b'11\n') +f('sys/kernel/slab/bdev_cache/objects', 0o664, b'32\n') +f('sys/kernel/slab/bdev_cache/order', 0o664, b'3\n') +f('sys/kernel/slab/bdev_cache/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/bdev_cache/store_user', 0o664, b'1\n') +f('sys/kernel/slab/bdev_cache/align', 0o664, b'0\n') +f('sys/kernel/slab/bdev_cache/partial', 0o664, b'1\n') +f('sys/kernel/slab/bdev_cache/validate', 0o664, b'') +f('sys/kernel/slab/bdev_cache/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/bdev_cache/free_calls', 0o664, b''' 9 <not-available> age=4303047074 pid=0 cpus=0 + 4 bdev_destroy_inode+0x1f/0x30 age=61405/4218130/8374840 pid=488-13325 cpus=0-1 +''') +f('sys/kernel/slab/bdev_cache/aliases', 0o664, b'0\n') +d('sys/kernel/slab/fasync_cache', 0o775) +f('sys/kernel/slab/fasync_cache/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/fasync_cache/ctor', 0o664, b'') +f('sys/kernel/slab/fasync_cache/hwcache_align', 0o664, b'0\n') +f('sys/kernel/slab/fasync_cache/slab_size', 0o664, b'96\n') +f('sys/kernel/slab/fasync_cache/total_objects', 0o664, b'42\n') +f('sys/kernel/slab/fasync_cache/slabs', 0o664, b'1\n') +f('sys/kernel/slab/fasync_cache/poison', 0o664, b'1\n') +f('sys/kernel/slab/fasync_cache/alloc_calls', 0o664, b' 1 fasync_helper+0x115/0x130 age=8354059 pid=1738 cpus=0\n') +f('sys/kernel/slab/fasync_cache/objs_per_slab', 0o664, b'42\n') +f('sys/kernel/slab/fasync_cache/shrink', 0o664, b'') +f('sys/kernel/slab/fasync_cache/trace', 0o664, b'0\n') +f('sys/kernel/slab/fasync_cache/object_size', 0o664, b'24\n') +f('sys/kernel/slab/fasync_cache/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/fasync_cache/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/fasync_cache/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/fasync_cache/objects_partial', 0o664, b'1\n') +f('sys/kernel/slab/fasync_cache/objects', 0o664, b'1\n') +f('sys/kernel/slab/fasync_cache/order', 0o664, b'0\n') +f('sys/kernel/slab/fasync_cache/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/fasync_cache/store_user', 0o664, b'1\n') +f('sys/kernel/slab/fasync_cache/align', 0o664, b'0\n') +f('sys/kernel/slab/fasync_cache/partial', 0o664, b'1\n') +f('sys/kernel/slab/fasync_cache/validate', 0o664, b'') +f('sys/kernel/slab/fasync_cache/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/fasync_cache/free_calls', 0o664, b' 1 <not-available> age=4303047449 pid=0 cpus=0\n') +f('sys/kernel/slab/fasync_cache/aliases', 0o664, b'0\n') +d('sys/kernel/slab/UDPLITEv6', 0o775) +f('sys/kernel/slab/UDPLITEv6/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/UDPLITEv6/ctor', 0o664, b'') +f('sys/kernel/slab/UDPLITEv6/hwcache_align', 0o664, b'1\n') +f('sys/kernel/slab/UDPLITEv6/slab_size', 0o664, b'1472\n') +f('sys/kernel/slab/UDPLITEv6/total_objects', 0o664, b'0\n') +f('sys/kernel/slab/UDPLITEv6/slabs', 0o664, b'0\n') +f('sys/kernel/slab/UDPLITEv6/poison', 0o664, b'1\n') +f('sys/kernel/slab/UDPLITEv6/alloc_calls', 0o664, b'No data\n') +f('sys/kernel/slab/UDPLITEv6/objs_per_slab', 0o664, b'22\n') +f('sys/kernel/slab/UDPLITEv6/shrink', 0o664, b'') +f('sys/kernel/slab/UDPLITEv6/trace', 0o664, b'0\n') +f('sys/kernel/slab/UDPLITEv6/object_size', 0o664, b'1368\n') +f('sys/kernel/slab/UDPLITEv6/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/UDPLITEv6/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/UDPLITEv6/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/UDPLITEv6/objects_partial', 0o664, b'0\n') +f('sys/kernel/slab/UDPLITEv6/objects', 0o664, b'0\n') +f('sys/kernel/slab/UDPLITEv6/order', 0o664, b'3\n') +f('sys/kernel/slab/UDPLITEv6/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/UDPLITEv6/store_user', 0o664, b'1\n') +f('sys/kernel/slab/UDPLITEv6/align', 0o664, b'0\n') +f('sys/kernel/slab/UDPLITEv6/partial', 0o664, b'0\n') +f('sys/kernel/slab/UDPLITEv6/validate', 0o664, b'') +f('sys/kernel/slab/UDPLITEv6/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/UDPLITEv6/free_calls', 0o664, b'No data\n') +f('sys/kernel/slab/UDPLITEv6/aliases', 0o664, b'0\n') +d('sys/kernel/slab/Acpi-Operand', 0o775) +f('sys/kernel/slab/Acpi-Operand/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/Acpi-Operand/ctor', 0o664, b'') +f('sys/kernel/slab/Acpi-Operand/hwcache_align', 0o664, b'0\n') +f('sys/kernel/slab/Acpi-Operand/slab_size', 0o664, b'144\n') +f('sys/kernel/slab/Acpi-Operand/total_objects', 0o664, b'2688\n') +f('sys/kernel/slab/Acpi-Operand/slabs', 0o664, b'96\n') +f('sys/kernel/slab/Acpi-Operand/poison', 0o664, b'1\n') +f('sys/kernel/slab/Acpi-Operand/alloc_calls', 0o664, b' 2653 acpi_ut_allocate_object_desc_dbg+0x39/0x75 age=2625/8339457/8379700 pid=0-13466 cpus=0-1\n') +f('sys/kernel/slab/Acpi-Operand/objs_per_slab', 0o664, b'28\n') +f('sys/kernel/slab/Acpi-Operand/shrink', 0o664, b'') +f('sys/kernel/slab/Acpi-Operand/trace', 0o664, b'0\n') +f('sys/kernel/slab/Acpi-Operand/object_size', 0o664, b'72\n') +f('sys/kernel/slab/Acpi-Operand/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/Acpi-Operand/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/Acpi-Operand/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/Acpi-Operand/objects_partial', 0o664, b'171\n') +f('sys/kernel/slab/Acpi-Operand/objects', 0o664, b'2663\n') +f('sys/kernel/slab/Acpi-Operand/order', 0o664, b'0\n') +f('sys/kernel/slab/Acpi-Operand/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/Acpi-Operand/store_user', 0o664, b'1\n') +f('sys/kernel/slab/Acpi-Operand/align', 0o664, b'0\n') +f('sys/kernel/slab/Acpi-Operand/partial', 0o664, b'7\n') +f('sys/kernel/slab/Acpi-Operand/validate', 0o664, b'') +f('sys/kernel/slab/Acpi-Operand/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/Acpi-Operand/free_calls', 0o664, b''' 2267 <not-available> age=4303046997 pid=0 cpus=0 + 386 acpi_os_release_object+0x9/0xd age=2626/8137233/8379689 pid=0-13466 cpus=0-1 +''') +f('sys/kernel/slab/Acpi-Operand/aliases', 0o664, b'0\n') +d('sys/kernel/slab/xfrm_dst_cache', 0o775) +f('sys/kernel/slab/xfrm_dst_cache/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/xfrm_dst_cache/ctor', 0o664, b'') +f('sys/kernel/slab/xfrm_dst_cache/hwcache_align', 0o664, b'1\n') +f('sys/kernel/slab/xfrm_dst_cache/slab_size', 0o664, b'448\n') +f('sys/kernel/slab/xfrm_dst_cache/total_objects', 0o664, b'0\n') +f('sys/kernel/slab/xfrm_dst_cache/slabs', 0o664, b'0\n') +f('sys/kernel/slab/xfrm_dst_cache/poison', 0o664, b'1\n') +f('sys/kernel/slab/xfrm_dst_cache/alloc_calls', 0o664, b'No data\n') +f('sys/kernel/slab/xfrm_dst_cache/objs_per_slab', 0o664, b'18\n') +f('sys/kernel/slab/xfrm_dst_cache/shrink', 0o664, b'') +f('sys/kernel/slab/xfrm_dst_cache/trace', 0o664, b'0\n') +f('sys/kernel/slab/xfrm_dst_cache/object_size', 0o664, b'344\n') +f('sys/kernel/slab/xfrm_dst_cache/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/xfrm_dst_cache/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/xfrm_dst_cache/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/xfrm_dst_cache/objects_partial', 0o664, b'0\n') +f('sys/kernel/slab/xfrm_dst_cache/objects', 0o664, b'0\n') +f('sys/kernel/slab/xfrm_dst_cache/order', 0o664, b'1\n') +f('sys/kernel/slab/xfrm_dst_cache/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/xfrm_dst_cache/store_user', 0o664, b'1\n') +f('sys/kernel/slab/xfrm_dst_cache/align', 0o664, b'0\n') +f('sys/kernel/slab/xfrm_dst_cache/partial', 0o664, b'0\n') +f('sys/kernel/slab/xfrm_dst_cache/validate', 0o664, b'') +f('sys/kernel/slab/xfrm_dst_cache/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/xfrm_dst_cache/free_calls', 0o664, b'No data\n') +f('sys/kernel/slab/xfrm_dst_cache/aliases', 0o664, b'0\n') +d('sys/kernel/slab/eventpoll_epi', 0o775) +f('sys/kernel/slab/eventpoll_epi/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/eventpoll_epi/ctor', 0o664, b'') +f('sys/kernel/slab/eventpoll_epi/hwcache_align', 0o664, b'1\n') +f('sys/kernel/slab/eventpoll_epi/slab_size', 0o664, b'256\n') +f('sys/kernel/slab/eventpoll_epi/total_objects', 0o664, b'96\n') +f('sys/kernel/slab/eventpoll_epi/slabs', 0o664, b'6\n') +f('sys/kernel/slab/eventpoll_epi/poison', 0o664, b'1\n') +f('sys/kernel/slab/eventpoll_epi/alloc_calls', 0o664, b' 65 sys_epoll_ctl+0x1a4/0x4d0 age=2416443/8173337/8356255 pid=1690-20296 cpus=0-1\n') +f('sys/kernel/slab/eventpoll_epi/objs_per_slab', 0o664, b'16\n') +f('sys/kernel/slab/eventpoll_epi/shrink', 0o664, b'') +f('sys/kernel/slab/eventpoll_epi/trace', 0o664, b'0\n') +f('sys/kernel/slab/eventpoll_epi/object_size', 0o664, b'128\n') +f('sys/kernel/slab/eventpoll_epi/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/eventpoll_epi/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/eventpoll_epi/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/eventpoll_epi/objects_partial', 0o664, b'15\n') +f('sys/kernel/slab/eventpoll_epi/objects', 0o664, b'79\n') +f('sys/kernel/slab/eventpoll_epi/order', 0o664, b'0\n') +f('sys/kernel/slab/eventpoll_epi/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/eventpoll_epi/store_user', 0o664, b'1\n') +f('sys/kernel/slab/eventpoll_epi/align', 0o664, b'0\n') +f('sys/kernel/slab/eventpoll_epi/partial', 0o664, b'2\n') +f('sys/kernel/slab/eventpoll_epi/validate', 0o664, b'') +f('sys/kernel/slab/eventpoll_epi/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/eventpoll_epi/free_calls', 0o664, b''' 61 <not-available> age=4303046803 pid=0 cpus=0 + 4 ep_remove+0xae/0xc0 age=2416461/6864194/8356250 pid=1690-2073 cpus=0-1 +''') +f('sys/kernel/slab/eventpoll_epi/aliases', 0o664, b'0\n') +d('sys/kernel/slab/revoke_table', 0o775) +f('sys/kernel/slab/revoke_table/reclaim_account', 0o664, b'1\n') +f('sys/kernel/slab/revoke_table/ctor', 0o664, b'') +f('sys/kernel/slab/revoke_table/hwcache_align', 0o664, b'0\n') +f('sys/kernel/slab/revoke_table/slab_size', 0o664, b'88\n') +f('sys/kernel/slab/revoke_table/total_objects', 0o664, b'46\n') +f('sys/kernel/slab/revoke_table/slabs', 0o664, b'1\n') +f('sys/kernel/slab/revoke_table/poison', 0o664, b'1\n') +f('sys/kernel/slab/revoke_table/alloc_calls', 0o664, b' 4 journal_init_revoke_table+0x1b/0xb0 age=8369805/8374155/8378505 pid=1-962 cpus=0\n') +f('sys/kernel/slab/revoke_table/objs_per_slab', 0o664, b'46\n') +f('sys/kernel/slab/revoke_table/shrink', 0o664, b'') +f('sys/kernel/slab/revoke_table/trace', 0o664, b'0\n') +f('sys/kernel/slab/revoke_table/object_size', 0o664, b'16\n') +f('sys/kernel/slab/revoke_table/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/revoke_table/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/revoke_table/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/revoke_table/objects_partial', 0o664, b'4\n') +f('sys/kernel/slab/revoke_table/objects', 0o664, b'4\n') +f('sys/kernel/slab/revoke_table/order', 0o664, b'0\n') +f('sys/kernel/slab/revoke_table/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/revoke_table/store_user', 0o664, b'1\n') +f('sys/kernel/slab/revoke_table/align', 0o664, b'0\n') +f('sys/kernel/slab/revoke_table/partial', 0o664, b'1\n') +f('sys/kernel/slab/revoke_table/validate', 0o664, b'') +f('sys/kernel/slab/revoke_table/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/revoke_table/free_calls', 0o664, b' 4 <not-available> age=4303047546 pid=0 cpus=0\n') +f('sys/kernel/slab/revoke_table/aliases', 0o664, b'0\n') +d('sys/kernel/slab/sgpool-32', 0o775) +f('sys/kernel/slab/sgpool-32/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/sgpool-32/ctor', 0o664, b'') +f('sys/kernel/slab/sgpool-32/hwcache_align', 0o664, b'1\n') +f('sys/kernel/slab/sgpool-32/slab_size', 0o664, b'1152\n') +f('sys/kernel/slab/sgpool-32/total_objects', 0o664, b'28\n') +f('sys/kernel/slab/sgpool-32/slabs', 0o664, b'2\n') +f('sys/kernel/slab/sgpool-32/poison', 0o664, b'1\n') +f('sys/kernel/slab/sgpool-32/alloc_calls', 0o664, b' 2 mempool_alloc_slab+0x11/0x20 age=8379280/8379280/8379280 pid=1 cpus=0\n') +f('sys/kernel/slab/sgpool-32/objs_per_slab', 0o664, b'14\n') +f('sys/kernel/slab/sgpool-32/shrink', 0o664, b'') +f('sys/kernel/slab/sgpool-32/trace', 0o664, b'0\n') +f('sys/kernel/slab/sgpool-32/object_size', 0o664, b'1024\n') +f('sys/kernel/slab/sgpool-32/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/sgpool-32/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/sgpool-32/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/sgpool-32/objects_partial', 0o664, b'0\n') +f('sys/kernel/slab/sgpool-32/objects', 0o664, b'28\n') +f('sys/kernel/slab/sgpool-32/order', 0o664, b'2\n') +f('sys/kernel/slab/sgpool-32/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/sgpool-32/store_user', 0o664, b'1\n') +f('sys/kernel/slab/sgpool-32/align', 0o664, b'0\n') +f('sys/kernel/slab/sgpool-32/partial', 0o664, b'0\n') +f('sys/kernel/slab/sgpool-32/validate', 0o664, b'') +f('sys/kernel/slab/sgpool-32/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/sgpool-32/free_calls', 0o664, b' 2 <not-available> age=4303046829 pid=0 cpus=0\n') +f('sys/kernel/slab/sgpool-32/aliases', 0o664, b'0\n') +d('sys/kernel/slab/fib6_nodes', 0o775) +f('sys/kernel/slab/fib6_nodes/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/fib6_nodes/ctor', 0o664, b'') +f('sys/kernel/slab/fib6_nodes/hwcache_align', 0o664, b'1\n') +f('sys/kernel/slab/fib6_nodes/slab_size', 0o664, b'128\n') +f('sys/kernel/slab/fib6_nodes/total_objects', 0o664, b'64\n') +f('sys/kernel/slab/fib6_nodes/slabs', 0o664, b'2\n') +f('sys/kernel/slab/fib6_nodes/poison', 0o664, b'1\n') +f('sys/kernel/slab/fib6_nodes/alloc_calls', 0o664, b''' 3 fib6_add+0x112/0x6a0 [ipv6] age=8328809/8339785/8360575 pid=8-2080 cpus=0-1 + 1 fib6_add+0x2a2/0x6a0 [ipv6] age=8329973 pid=8 cpus=1 + 1 fib6_add+0x2b6/0x6a0 [ipv6] age=8329973 pid=8 cpus=1 +''') +f('sys/kernel/slab/fib6_nodes/objs_per_slab', 0o664, b'32\n') +f('sys/kernel/slab/fib6_nodes/shrink', 0o664, b'') +f('sys/kernel/slab/fib6_nodes/trace', 0o664, b'0\n') +f('sys/kernel/slab/fib6_nodes/object_size', 0o664, b'48\n') +f('sys/kernel/slab/fib6_nodes/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/fib6_nodes/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/fib6_nodes/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/fib6_nodes/objects_partial', 0o664, b'5\n') +f('sys/kernel/slab/fib6_nodes/objects', 0o664, b'5\n') +f('sys/kernel/slab/fib6_nodes/order', 0o664, b'0\n') +f('sys/kernel/slab/fib6_nodes/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/fib6_nodes/store_user', 0o664, b'1\n') +f('sys/kernel/slab/fib6_nodes/align', 0o664, b'0\n') +f('sys/kernel/slab/fib6_nodes/partial', 0o664, b'2\n') +f('sys/kernel/slab/fib6_nodes/validate', 0o664, b'') +f('sys/kernel/slab/fib6_nodes/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/fib6_nodes/free_calls', 0o664, b' 5 <not-available> age=4303047799 pid=0 cpus=0\n') +f('sys/kernel/slab/fib6_nodes/aliases', 0o664, b'0\n') +d('sys/kernel/slab/flow_cache', 0o775) +f('sys/kernel/slab/flow_cache/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/flow_cache/ctor', 0o664, b'') +f('sys/kernel/slab/flow_cache/hwcache_align', 0o664, b'0\n') +f('sys/kernel/slab/flow_cache/slab_size', 0o664, b'168\n') +f('sys/kernel/slab/flow_cache/total_objects', 0o664, b'0\n') +f('sys/kernel/slab/flow_cache/slabs', 0o664, b'0\n') +f('sys/kernel/slab/flow_cache/poison', 0o664, b'1\n') +f('sys/kernel/slab/flow_cache/alloc_calls', 0o664, b'No data\n') +f('sys/kernel/slab/flow_cache/objs_per_slab', 0o664, b'24\n') +f('sys/kernel/slab/flow_cache/shrink', 0o664, b'') +f('sys/kernel/slab/flow_cache/trace', 0o664, b'0\n') +f('sys/kernel/slab/flow_cache/object_size', 0o664, b'96\n') +f('sys/kernel/slab/flow_cache/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/flow_cache/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/flow_cache/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/flow_cache/objects_partial', 0o664, b'0\n') +f('sys/kernel/slab/flow_cache/objects', 0o664, b'0\n') +f('sys/kernel/slab/flow_cache/order', 0o664, b'0\n') +f('sys/kernel/slab/flow_cache/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/flow_cache/store_user', 0o664, b'1\n') +f('sys/kernel/slab/flow_cache/align', 0o664, b'0\n') +f('sys/kernel/slab/flow_cache/partial', 0o664, b'0\n') +f('sys/kernel/slab/flow_cache/validate', 0o664, b'') +f('sys/kernel/slab/flow_cache/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/flow_cache/free_calls', 0o664, b'No data\n') +f('sys/kernel/slab/flow_cache/aliases', 0o664, b'0\n') +d('sys/kernel/slab/fat_cache', 0o775) +f('sys/kernel/slab/fat_cache/reclaim_account', 0o664, b'1\n') +f('sys/kernel/slab/fat_cache/ctor', 0o664, b'init_once+0x0/0x10\n') +f('sys/kernel/slab/fat_cache/hwcache_align', 0o664, b'0\n') +f('sys/kernel/slab/fat_cache/slab_size', 0o664, b'104\n') +f('sys/kernel/slab/fat_cache/total_objects', 0o664, b'39\n') +f('sys/kernel/slab/fat_cache/slabs', 0o664, b'1\n') +f('sys/kernel/slab/fat_cache/poison', 0o664, b'1\n') +f('sys/kernel/slab/fat_cache/alloc_calls', 0o664, b' 14 fat_cache_add+0x11f/0x1c0 age=61297/61310/61330 pid=13349 cpus=0\n') +f('sys/kernel/slab/fat_cache/objs_per_slab', 0o664, b'39\n') +f('sys/kernel/slab/fat_cache/shrink', 0o664, b'') +f('sys/kernel/slab/fat_cache/trace', 0o664, b'0\n') +f('sys/kernel/slab/fat_cache/object_size', 0o664, b'32\n') +f('sys/kernel/slab/fat_cache/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/fat_cache/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/fat_cache/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/fat_cache/objects_partial', 0o664, b'0\n') +f('sys/kernel/slab/fat_cache/objects', 0o664, b'39\n') +f('sys/kernel/slab/fat_cache/order', 0o664, b'0\n') +f('sys/kernel/slab/fat_cache/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/fat_cache/store_user', 0o664, b'1\n') +f('sys/kernel/slab/fat_cache/align', 0o664, b'0\n') +f('sys/kernel/slab/fat_cache/partial', 0o664, b'0\n') +f('sys/kernel/slab/fat_cache/validate', 0o664, b'') +f('sys/kernel/slab/fat_cache/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/fat_cache/free_calls', 0o664, b' 14 <not-available> age=4303047585 pid=0 cpus=0\n') +f('sys/kernel/slab/fat_cache/aliases', 0o664, b'0\n') +d('sys/kernel/slab/sock_inode_cache', 0o775) +f('sys/kernel/slab/sock_inode_cache/reclaim_account', 0o664, b'1\n') +f('sys/kernel/slab/sock_inode_cache/ctor', 0o664, b'init_once+0x0/0x10\n') +f('sys/kernel/slab/sock_inode_cache/hwcache_align', 0o664, b'1\n') +f('sys/kernel/slab/sock_inode_cache/slab_size', 0o664, b'1280\n') +f('sys/kernel/slab/sock_inode_cache/total_objects', 0o664, b'504\n') +f('sys/kernel/slab/sock_inode_cache/slabs', 0o664, b'42\n') +f('sys/kernel/slab/sock_inode_cache/poison', 0o664, b'1\n') +f('sys/kernel/slab/sock_inode_cache/alloc_calls', 0o664, b' 481 sock_alloc_inode+0x1a/0x70 age=61330/8214562/8379530 pid=1-20296 cpus=0-1\n') +f('sys/kernel/slab/sock_inode_cache/objs_per_slab', 0o664, b'12\n') +f('sys/kernel/slab/sock_inode_cache/shrink', 0o664, b'') +f('sys/kernel/slab/sock_inode_cache/trace', 0o664, b'0\n') +f('sys/kernel/slab/sock_inode_cache/object_size', 0o664, b'1192\n') +f('sys/kernel/slab/sock_inode_cache/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/sock_inode_cache/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/sock_inode_cache/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/sock_inode_cache/objects_partial', 0o664, b'83\n') +f('sys/kernel/slab/sock_inode_cache/objects', 0o664, b'491\n') +f('sys/kernel/slab/sock_inode_cache/order', 0o664, b'2\n') +f('sys/kernel/slab/sock_inode_cache/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/sock_inode_cache/store_user', 0o664, b'1\n') +f('sys/kernel/slab/sock_inode_cache/align', 0o664, b'0\n') +f('sys/kernel/slab/sock_inode_cache/partial', 0o664, b'8\n') +f('sys/kernel/slab/sock_inode_cache/validate', 0o664, b'') +f('sys/kernel/slab/sock_inode_cache/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/sock_inode_cache/free_calls', 0o664, b''' 276 <not-available> age=4303046961 pid=0 cpus=0 + 205 sock_destroy_inode+0x14/0x20 age=61348/8035806/8376228 pid=76-20292 cpus=0-1 +''') +f('sys/kernel/slab/sock_inode_cache/aliases', 0o664, b'0\n') +d('sys/kernel/slab/ip_fib_hash', 0o775) +f('sys/kernel/slab/ip_fib_hash/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/ip_fib_hash/ctor', 0o664, b'') +f('sys/kernel/slab/ip_fib_hash/hwcache_align', 0o664, b'0\n') +f('sys/kernel/slab/ip_fib_hash/slab_size', 0o664, b'144\n') +f('sys/kernel/slab/ip_fib_hash/total_objects', 0o664, b'56\n') +f('sys/kernel/slab/ip_fib_hash/slabs', 0o664, b'2\n') +f('sys/kernel/slab/ip_fib_hash/poison', 0o664, b'1\n') +f('sys/kernel/slab/ip_fib_hash/alloc_calls', 0o664, b' 11 fn_hash_insert+0x5a6/0x800 age=8323831/8347847/8367198 pid=1197-1541 cpus=0-1\n') +f('sys/kernel/slab/ip_fib_hash/objs_per_slab', 0o664, b'28\n') +f('sys/kernel/slab/ip_fib_hash/shrink', 0o664, b'') +f('sys/kernel/slab/ip_fib_hash/trace', 0o664, b'0\n') +f('sys/kernel/slab/ip_fib_hash/object_size', 0o664, b'72\n') +f('sys/kernel/slab/ip_fib_hash/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/ip_fib_hash/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/ip_fib_hash/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/ip_fib_hash/objects_partial', 0o664, b'11\n') +f('sys/kernel/slab/ip_fib_hash/objects', 0o664, b'11\n') +f('sys/kernel/slab/ip_fib_hash/order', 0o664, b'0\n') +f('sys/kernel/slab/ip_fib_hash/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/ip_fib_hash/store_user', 0o664, b'1\n') +f('sys/kernel/slab/ip_fib_hash/align', 0o664, b'0\n') +f('sys/kernel/slab/ip_fib_hash/partial', 0o664, b'2\n') +f('sys/kernel/slab/ip_fib_hash/validate', 0o664, b'') +f('sys/kernel/slab/ip_fib_hash/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/ip_fib_hash/free_calls', 0o664, b''' 7 <not-available> age=4303046724 pid=0 cpus=0 + 4 fn_hash_delete+0x22c/0x290 age=8367201/8367201/8367201 pid=1195 cpus=1 +''') +f('sys/kernel/slab/ip_fib_hash/aliases', 0o664, b'0\n') +d('sys/kernel/slab/kmalloc_dma-512', 0o775) +f('sys/kernel/slab/kmalloc_dma-512/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc_dma-512/ctor', 0o664, b'') +f('sys/kernel/slab/kmalloc_dma-512/hwcache_align', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc_dma-512/slab_size', 0o664, b'584\n') +f('sys/kernel/slab/kmalloc_dma-512/total_objects', 0o664, b'14\n') +f('sys/kernel/slab/kmalloc_dma-512/slabs', 0o664, b'1\n') +f('sys/kernel/slab/kmalloc_dma-512/poison', 0o664, b'1\n') +f('sys/kernel/slab/kmalloc_dma-512/alloc_calls', 0o664, b'No data\n') +f('sys/kernel/slab/kmalloc_dma-512/objs_per_slab', 0o664, b'14\n') +f('sys/kernel/slab/kmalloc_dma-512/shrink', 0o664, b'') +f('sys/kernel/slab/kmalloc_dma-512/trace', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc_dma-512/object_size', 0o664, b'512\n') +f('sys/kernel/slab/kmalloc_dma-512/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc_dma-512/cache_dma', 0o664, b'1\n') +f('sys/kernel/slab/kmalloc_dma-512/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc_dma-512/objects_partial', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc_dma-512/objects', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc_dma-512/order', 0o664, b'1\n') +f('sys/kernel/slab/kmalloc_dma-512/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/kmalloc_dma-512/store_user', 0o664, b'1\n') +f('sys/kernel/slab/kmalloc_dma-512/align', 0o664, b'8\n') +f('sys/kernel/slab/kmalloc_dma-512/partial', 0o664, b'1\n') +f('sys/kernel/slab/kmalloc_dma-512/validate', 0o664, b'') +f('sys/kernel/slab/kmalloc_dma-512/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/kmalloc_dma-512/free_calls', 0o664, b'No data\n') +f('sys/kernel/slab/kmalloc_dma-512/aliases', 0o664, b'0\n') +d('sys/kernel/slab/inode_cache', 0o775) +f('sys/kernel/slab/inode_cache/reclaim_account', 0o664, b'1\n') +f('sys/kernel/slab/inode_cache/ctor', 0o664, b'init_once+0x0/0x10\n') +f('sys/kernel/slab/inode_cache/hwcache_align', 0o664, b'0\n') +f('sys/kernel/slab/inode_cache/slab_size', 0o664, b'1144\n') +f('sys/kernel/slab/inode_cache/total_objects', 0o664, b'11676\n') +f('sys/kernel/slab/inode_cache/slabs', 0o664, b'834\n') +f('sys/kernel/slab/inode_cache/poison', 0o664, b'1\n') +f('sys/kernel/slab/inode_cache/alloc_calls', 0o664, b' 11655 alloc_inode+0x251/0x280 age=665/7686826/8379810 pid=0-13466 cpus=0-1\n') +f('sys/kernel/slab/inode_cache/objs_per_slab', 0o664, b'14\n') +f('sys/kernel/slab/inode_cache/shrink', 0o664, b'') +f('sys/kernel/slab/inode_cache/trace', 0o664, b'0\n') +f('sys/kernel/slab/inode_cache/object_size', 0o664, b'1072\n') +f('sys/kernel/slab/inode_cache/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/inode_cache/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/inode_cache/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/inode_cache/objects_partial', 0o664, b'0\n') +f('sys/kernel/slab/inode_cache/objects', 0o664, b'11676\n') +f('sys/kernel/slab/inode_cache/order', 0o664, b'2\n') +f('sys/kernel/slab/inode_cache/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/inode_cache/store_user', 0o664, b'1\n') +f('sys/kernel/slab/inode_cache/align', 0o664, b'0\n') +f('sys/kernel/slab/inode_cache/partial', 0o664, b'0\n') +f('sys/kernel/slab/inode_cache/validate', 0o664, b'') +f('sys/kernel/slab/inode_cache/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/inode_cache/free_calls', 0o664, b''' 11113 <not-available> age=4303047110 pid=0 cpus=0 + 542 destroy_inode+0x4f/0x60 age=1016/6891707/8377435 pid=7-15896 cpus=0-1 +''') +f('sys/kernel/slab/inode_cache/aliases', 0o664, b'0\n') +d('sys/kernel/slab/inotify_event_cache', 0o775) +f('sys/kernel/slab/inotify_event_cache/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/inotify_event_cache/ctor', 0o664, b'') +f('sys/kernel/slab/inotify_event_cache/hwcache_align', 0o664, b'0\n') +f('sys/kernel/slab/inotify_event_cache/slab_size', 0o664, b'112\n') +f('sys/kernel/slab/inotify_event_cache/total_objects', 0o664, b'72\n') +f('sys/kernel/slab/inotify_event_cache/slabs', 0o664, b'2\n') +f('sys/kernel/slab/inotify_event_cache/poison', 0o664, b'1\n') +f('sys/kernel/slab/inotify_event_cache/alloc_calls', 0o664, b'No data\n') +f('sys/kernel/slab/inotify_event_cache/objs_per_slab', 0o664, b'36\n') +f('sys/kernel/slab/inotify_event_cache/shrink', 0o664, b'') +f('sys/kernel/slab/inotify_event_cache/trace', 0o664, b'0\n') +f('sys/kernel/slab/inotify_event_cache/object_size', 0o664, b'40\n') +f('sys/kernel/slab/inotify_event_cache/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/inotify_event_cache/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/inotify_event_cache/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/inotify_event_cache/objects_partial', 0o664, b'0\n') +f('sys/kernel/slab/inotify_event_cache/objects', 0o664, b'72\n') +f('sys/kernel/slab/inotify_event_cache/order', 0o664, b'0\n') +f('sys/kernel/slab/inotify_event_cache/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/inotify_event_cache/store_user', 0o664, b'1\n') +f('sys/kernel/slab/inotify_event_cache/align', 0o664, b'0\n') +f('sys/kernel/slab/inotify_event_cache/partial', 0o664, b'0\n') +f('sys/kernel/slab/inotify_event_cache/validate', 0o664, b'') +f('sys/kernel/slab/inotify_event_cache/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/inotify_event_cache/free_calls', 0o664, b'No data\n') +f('sys/kernel/slab/inotify_event_cache/aliases', 0o664, b'0\n') +d('sys/kernel/slab/UDP', 0o775) +f('sys/kernel/slab/UDP/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/UDP/ctor', 0o664, b'') +f('sys/kernel/slab/UDP/hwcache_align', 0o664, b'1\n') +f('sys/kernel/slab/UDP/slab_size', 0o664, b'1344\n') +f('sys/kernel/slab/UDP/total_objects', 0o664, b'24\n') +f('sys/kernel/slab/UDP/slabs', 0o664, b'2\n') +f('sys/kernel/slab/UDP/poison', 0o664, b'1\n') +f('sys/kernel/slab/UDP/alloc_calls', 0o664, b' 5 sk_prot_alloc+0x1e/0xb0 age=8327731/8349275/8355457 pid=1545-2586 cpus=0-1\n') +f('sys/kernel/slab/UDP/objs_per_slab', 0o664, b'12\n') +f('sys/kernel/slab/UDP/shrink', 0o664, b'') +f('sys/kernel/slab/UDP/trace', 0o664, b'0\n') +f('sys/kernel/slab/UDP/object_size', 0o664, b'1232\n') +f('sys/kernel/slab/UDP/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/UDP/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/UDP/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/UDP/objects_partial', 0o664, b'0\n') +f('sys/kernel/slab/UDP/objects', 0o664, b'24\n') +f('sys/kernel/slab/UDP/order', 0o664, b'2\n') +f('sys/kernel/slab/UDP/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/UDP/store_user', 0o664, b'1\n') +f('sys/kernel/slab/UDP/align', 0o664, b'0\n') +f('sys/kernel/slab/UDP/partial', 0o664, b'0\n') +f('sys/kernel/slab/UDP/validate', 0o664, b'') +f('sys/kernel/slab/UDP/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/UDP/free_calls', 0o664, b''' 1 <not-available> age=4303046759 pid=0 cpus=0 + 4 sk_free+0x80/0x100 age=8327731/8350484/8364461 pid=1371-2586 cpus=0-1 +''') +f('sys/kernel/slab/UDP/aliases', 0o664, b'0\n') +d('sys/kernel/slab/Acpi-ParseExt', 0o775) +f('sys/kernel/slab/Acpi-ParseExt/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/Acpi-ParseExt/ctor', 0o664, b'') +f('sys/kernel/slab/Acpi-ParseExt/hwcache_align', 0o664, b'0\n') +f('sys/kernel/slab/Acpi-ParseExt/slab_size', 0o664, b'144\n') +f('sys/kernel/slab/Acpi-ParseExt/total_objects', 0o664, b'56\n') +f('sys/kernel/slab/Acpi-ParseExt/slabs', 0o664, b'2\n') +f('sys/kernel/slab/Acpi-ParseExt/poison', 0o664, b'1\n') +f('sys/kernel/slab/Acpi-ParseExt/alloc_calls', 0o664, b'No data\n') +f('sys/kernel/slab/Acpi-ParseExt/objs_per_slab', 0o664, b'28\n') +f('sys/kernel/slab/Acpi-ParseExt/shrink', 0o664, b'') +f('sys/kernel/slab/Acpi-ParseExt/trace', 0o664, b'0\n') +f('sys/kernel/slab/Acpi-ParseExt/object_size', 0o664, b'72\n') +f('sys/kernel/slab/Acpi-ParseExt/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/Acpi-ParseExt/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/Acpi-ParseExt/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/Acpi-ParseExt/objects_partial', 0o664, b'0\n') +f('sys/kernel/slab/Acpi-ParseExt/objects', 0o664, b'56\n') +f('sys/kernel/slab/Acpi-ParseExt/order', 0o664, b'0\n') +f('sys/kernel/slab/Acpi-ParseExt/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/Acpi-ParseExt/store_user', 0o664, b'1\n') +f('sys/kernel/slab/Acpi-ParseExt/align', 0o664, b'0\n') +f('sys/kernel/slab/Acpi-ParseExt/partial', 0o664, b'0\n') +f('sys/kernel/slab/Acpi-ParseExt/validate', 0o664, b'') +f('sys/kernel/slab/Acpi-ParseExt/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/Acpi-ParseExt/free_calls', 0o664, b'No data\n') +f('sys/kernel/slab/Acpi-ParseExt/aliases', 0o664, b'0\n') +d('sys/kernel/slab/kmalloc-8', 0o775) +f('sys/kernel/slab/kmalloc-8/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-8/ctor', 0o664, b'') +f('sys/kernel/slab/kmalloc-8/hwcache_align', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-8/slab_size', 0o664, b'80\n') +f('sys/kernel/slab/kmalloc-8/total_objects', 0o664, b'3366\n') +f('sys/kernel/slab/kmalloc-8/slabs', 0o664, b'66\n') +f('sys/kernel/slab/kmalloc-8/poison', 0o664, b'1\n') +f('sys/kernel/slab/kmalloc-8/alloc_calls', 0o664, b''' 1 cache_k8_northbridges+0x5f/0x130 age=8379864 pid=1 cpus=0 + 1 pm_qos_add_requirement+0x51/0xe0 age=8376100 pid=122 cpus=1 + 5 setup_modinfo_version+0x19/0x30 age=8355991/8370769/8376336 pid=169-1766 cpus=0-1 + 379 load_module+0x1ac4/0x1b30 age=8303091/8368856/8376330 pid=105-2754 cpus=0-1 + 57 strndup_user+0x6d/0xc0 age=8303095/8368234/8376336 pid=105-2754 cpus=0-1 + 4 krealloc+0x1e/0x60 age=8355270/8362240/8377141 pid=71-1849 cpus=0-1 + 5 __vmalloc_area_node+0xfb/0x140 age=8373659/8374450/8375164 pid=181-754 cpus=0-1 + 17 alloc_vfsmnt+0x97/0x180 age=8354102/8377143/8380122 pid=0-2064 cpus=0-1 + 1 proc_symlink+0x4d/0xb0 age=8374163 pid=107 cpus=1 + 1954 sysfs_new_dirent+0x10c/0x120 age=22655/7531182/8380122 pid=0-13295 cpus=0-1 + 690 kvasprintf+0x55/0x90 age=22668/7820060/8380122 pid=0-13295 cpus=0-1 + 1 proc_bus_pci_open+0x1d/0x50 age=8355838 pid=1738 cpus=0 + 5 pcie_port_device_register+0x25/0x4a0 age=8379822/8379823/8379824 pid=1 cpus=1 + 19 acpi_ds_build_internal_buffer_obj+0xe1/0x121 age=8379961/8379970/8379972 pid=1 cpus=0 + 9 acpi_ev_pci_config_region_setup+0x162/0x270 age=8379256/8379854/8379947 pid=1-12 cpus=0-1 + 2 acpi_ut_copy_simple_object+0x8f/0x11c age=8375678/8375686/8375694 pid=396 cpus=0 + 35 acpi_irq_stats_init+0x1bd/0x268 age=8379979/8379979/8379979 pid=1 cpus=0 + 8 neigh_sysctl_register+0x1cd/0x330 age=8360192/8368781/8379845 pid=1-1549 cpus=0-1 + 7 netlink_kernel_create+0xab/0x1a0 age=8378987/8379768/8379988 pid=1 cpus=0-1 + 5 __devinet_sysctl_register+0xb8/0x120 age=8373658/8377862/8379845 pid=1-126 cpus=0-1 + 1 fz_hash_alloc+0x4a/0x60 age=8324525 pid=1541 cpus=0 + 1 init_vdso_vars+0x4c/0x24a age=8379835 pid=1 cpus=1 + 30 netlink_proto_init+0xf1/0x16b age=8379988/8379988/8379988 pid=1 cpus=0 + 5 hub_probe+0x20b/0x820 [usbcore] age=8374075/8374568/8374921 pid=143-147 cpus=0-1 + 3 usb_cache_string+0x65/0xa0 [usbcore] age=22742/37518/67072 pid=419 cpus=0 + 10 usb_get_configuration+0xbd/0x1480 [usbcore] age=22743/5876145/8374941 pid=143-419 cpus=0-1 + 35 snd_info_create_entry+0x30/0xa0 [snd] age=8355370/8370655/8374933 pid=107-1813 cpus=0-1 + 1 async_chainiv_givencrypt_first+0x56/0x80 [crypto_blkcipher] age=8374580 pid=215 cpus=0 + 1 md_seq_open+0x2d/0x90 [md_mod] age=8366135 pid=1371 cpus=0 + 1 bitmap_create+0x3aa/0xad0 [md_mod] age=8370125 pid=916 cpus=0 + 5 __addrconf_sysctl_register+0xcd/0x140 [ipv6] age=8360192/8360193/8360195 pid=1549 cpus=0 + 1 fib6_net_init+0x5d/0x130 [ipv6] age=8360195 pid=1549 cpus=0 +''') +f('sys/kernel/slab/kmalloc-8/objs_per_slab', 0o664, b'51\n') +f('sys/kernel/slab/kmalloc-8/shrink', 0o664, b'') +f('sys/kernel/slab/kmalloc-8/trace', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-8/object_size', 0o664, b'8\n') +f('sys/kernel/slab/kmalloc-8/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-8/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-8/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-8/objects_partial', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-8/objects', 0o664, b'3366\n') +f('sys/kernel/slab/kmalloc-8/order', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-8/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/kmalloc-8/store_user', 0o664, b'1\n') +f('sys/kernel/slab/kmalloc-8/align', 0o664, b'8\n') +f('sys/kernel/slab/kmalloc-8/partial', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-8/validate', 0o664, b'') +f('sys/kernel/slab/kmalloc-8/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/kmalloc-8/free_calls', 0o664, b''' 2657 <not-available> age=4303047420 pid=0 cpus=0 + 3 free_sect_attrs+0x2e/0x50 age=8375066/8375066/8375066 pid=383 cpus=0 + 6 load_module+0x73f/0x1b30 age=8374844/8375309/8376003 pid=143-332 cpus=0-1 + 1 free_module+0xb9/0xf0 age=8375066 pid=383 cpus=0 + 1 krealloc+0x3a/0x60 age=8375814 pid=330 cpus=0 + 41 __vunmap+0xe9/0x120 age=8355636/8372979/8376319 pid=105-1805 cpus=0-1 + 1 vfs_rename+0x301/0x450 age=8367176 pid=72 cpus=1 + 254 release_sysfs_dirent+0x8c/0xd0 age=125751/7762571/8379789 pid=1-3347 cpus=0-1 + 61 kobject_release+0xe1/0x140 age=125751/6939731/8378264 pid=1-3347 cpus=0-1 + 1 match_number+0x95/0xb0 age=8335823 pid=2476 cpus=0 + 2 proc_bus_pci_release+0x18/0x30 age=8355841/8356005/8356169 pid=1738 cpus=0 + 49 acpi_ds_create_operand+0x12c/0x209 age=125757/8029619/8379980 pid=1-1442 cpus=0-1 + 128 acpi_ns_get_node+0x92/0xa1 age=8366449/8379363/8379989 pid=1-1358 cpus=0-1 + 2 acpi_ut_delete_internal_obj+0x15f/0x16f age=8375669/8375730/8375792 pid=330-396 cpus=0 + 2 module_add_driver+0x66/0xd0 age=8375989/8375992/8375996 pid=144 cpus=0 + 2 sd_media_changed+0xca/0x210 age=7839601/7929600/8019600 pid=2796 cpus=0 + 3 get_modalias+0xd4/0x120 age=8355846/8370834/8379988 pid=1-1772 cpus=0-1 + 1 fib_hash_free+0x35/0x40 age=8367910 pid=1185 cpus=0 + 1 usb_release_dev+0x39/0x70 [usbcore] age=7833240 pid=419 cpus=1 + 2 usb_release_dev+0x45/0x70 [usbcore] age=7833240/7835719/7838199 pid=419 cpus=0-1 + 4 sg_clean+0x3e/0x80 [usbcore] age=62037/2121033/8297977 pid=2760-13294 cpus=0 + 59 usb_control_msg+0xef/0x110 [usbcore] age=22658/5520135/8374943 pid=143-419 cpus=0-1 + 7 usb_set_configuration+0x338/0x5f0 [usbcore] age=53566/5999072/8374935 pid=143-419 cpus=0-1 + 4 usb_destroy_configuration+0x78/0x140 [usbcore] age=7824401/7967435/8373902 pid=419 cpus=0-1 + 7 sr_media_change+0xeb/0x2a0 [sr_mod] age=53597/5984195/8374963 pid=558-1456 cpus=0-1 +''') +f('sys/kernel/slab/kmalloc-8/aliases', 0o664, b'0\n') +d('sys/kernel/slab/revoke_record', 0o775) +f('sys/kernel/slab/revoke_record/reclaim_account', 0o664, b'1\n') +f('sys/kernel/slab/revoke_record/ctor', 0o664, b'') +f('sys/kernel/slab/revoke_record/hwcache_align', 0o664, b'1\n') +f('sys/kernel/slab/revoke_record/slab_size', 0o664, b'128\n') +f('sys/kernel/slab/revoke_record/total_objects', 0o664, b'64\n') +f('sys/kernel/slab/revoke_record/slabs', 0o664, b'2\n') +f('sys/kernel/slab/revoke_record/poison', 0o664, b'1\n') +f('sys/kernel/slab/revoke_record/alloc_calls', 0o664, b'No data\n') +f('sys/kernel/slab/revoke_record/objs_per_slab', 0o664, b'32\n') +f('sys/kernel/slab/revoke_record/shrink', 0o664, b'') +f('sys/kernel/slab/revoke_record/trace', 0o664, b'0\n') +f('sys/kernel/slab/revoke_record/object_size', 0o664, b'32\n') +f('sys/kernel/slab/revoke_record/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/revoke_record/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/revoke_record/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/revoke_record/objects_partial', 0o664, b'0\n') +f('sys/kernel/slab/revoke_record/objects', 0o664, b'64\n') +f('sys/kernel/slab/revoke_record/order', 0o664, b'0\n') +f('sys/kernel/slab/revoke_record/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/revoke_record/store_user', 0o664, b'1\n') +f('sys/kernel/slab/revoke_record/align', 0o664, b'0\n') +f('sys/kernel/slab/revoke_record/partial', 0o664, b'0\n') +f('sys/kernel/slab/revoke_record/validate', 0o664, b'') +f('sys/kernel/slab/revoke_record/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/revoke_record/free_calls', 0o664, b'No data\n') +f('sys/kernel/slab/revoke_record/aliases', 0o664, b'0\n') +d('sys/kernel/slab/ext3_inode_cache', 0o775) +f('sys/kernel/slab/ext3_inode_cache/reclaim_account', 0o664, b'1\n') +f('sys/kernel/slab/ext3_inode_cache/ctor', 0o664, b'init_once+0x0/0x70\n') +f('sys/kernel/slab/ext3_inode_cache/hwcache_align', 0o664, b'0\n') +f('sys/kernel/slab/ext3_inode_cache/slab_size', 0o664, b'1544\n') +f('sys/kernel/slab/ext3_inode_cache/total_objects', 0o664, b'27342\n') +f('sys/kernel/slab/ext3_inode_cache/slabs', 0o664, b'1302\n') +f('sys/kernel/slab/ext3_inode_cache/poison', 0o664, b'1\n') +f('sys/kernel/slab/ext3_inode_cache/alloc_calls', 0o664, b' 27338 ext3_alloc_inode+0x15/0x60 age=0/2288559/8378475 pid=1-27944 cpus=0-1\n') +f('sys/kernel/slab/ext3_inode_cache/objs_per_slab', 0o664, b'21\n') +f('sys/kernel/slab/ext3_inode_cache/shrink', 0o664, b'') +f('sys/kernel/slab/ext3_inode_cache/trace', 0o664, b'0\n') +f('sys/kernel/slab/ext3_inode_cache/object_size', 0o664, b'1472\n') +f('sys/kernel/slab/ext3_inode_cache/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/ext3_inode_cache/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/ext3_inode_cache/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/ext3_inode_cache/objects_partial', 0o664, b'0\n') +f('sys/kernel/slab/ext3_inode_cache/objects', 0o664, b'27342\n') +f('sys/kernel/slab/ext3_inode_cache/order', 0o664, b'3\n') +f('sys/kernel/slab/ext3_inode_cache/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/ext3_inode_cache/store_user', 0o664, b'1\n') +f('sys/kernel/slab/ext3_inode_cache/align', 0o664, b'0\n') +f('sys/kernel/slab/ext3_inode_cache/partial', 0o664, b'0\n') +f('sys/kernel/slab/ext3_inode_cache/validate', 0o664, b'') +f('sys/kernel/slab/ext3_inode_cache/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/ext3_inode_cache/free_calls', 0o664, b''' 25981 <not-available> age=4303047521 pid=0 cpus=0 + 1358 ext3_destroy_inode+0x2f/0x90 age=13089/2437961/8371953 pid=542-32759 cpus=0-1 +''') +f('sys/kernel/slab/ext3_inode_cache/aliases', 0o664, b'0\n') +d('sys/kernel/slab/ndisc_cache', 0o775) +f('sys/kernel/slab/ndisc_cache/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/ndisc_cache/ctor', 0o664, b'') +f('sys/kernel/slab/ndisc_cache/hwcache_align', 0o664, b'1\n') +f('sys/kernel/slab/ndisc_cache/slab_size', 0o664, b'448\n') +f('sys/kernel/slab/ndisc_cache/total_objects', 0o664, b'18\n') +f('sys/kernel/slab/ndisc_cache/slabs', 0o664, b'1\n') +f('sys/kernel/slab/ndisc_cache/poison', 0o664, b'1\n') +f('sys/kernel/slab/ndisc_cache/alloc_calls', 0o664, b' 1 neigh_create+0x8b/0x530 age=8360557 pid=1549 cpus=0\n') +f('sys/kernel/slab/ndisc_cache/objs_per_slab', 0o664, b'18\n') +f('sys/kernel/slab/ndisc_cache/shrink', 0o664, b'') +f('sys/kernel/slab/ndisc_cache/trace', 0o664, b'0\n') +f('sys/kernel/slab/ndisc_cache/object_size', 0o664, b'360\n') +f('sys/kernel/slab/ndisc_cache/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/ndisc_cache/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/ndisc_cache/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/ndisc_cache/objects_partial', 0o664, b'1\n') +f('sys/kernel/slab/ndisc_cache/objects', 0o664, b'1\n') +f('sys/kernel/slab/ndisc_cache/order', 0o664, b'1\n') +f('sys/kernel/slab/ndisc_cache/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/ndisc_cache/store_user', 0o664, b'1\n') +f('sys/kernel/slab/ndisc_cache/align', 0o664, b'0\n') +f('sys/kernel/slab/ndisc_cache/partial', 0o664, b'1\n') +f('sys/kernel/slab/ndisc_cache/validate', 0o664, b'') +f('sys/kernel/slab/ndisc_cache/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/ndisc_cache/free_calls', 0o664, b' 1 <not-available> age=4303047782 pid=0 cpus=0\n') +f('sys/kernel/slab/ndisc_cache/aliases', 0o664, b'0\n') +d('sys/kernel/slab/ip_fib_alias', 0o775) +f('sys/kernel/slab/ip_fib_alias/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/ip_fib_alias/ctor', 0o664, b'') +f('sys/kernel/slab/ip_fib_alias/hwcache_align', 0o664, b'0\n') +f('sys/kernel/slab/ip_fib_alias/slab_size', 0o664, b'104\n') +f('sys/kernel/slab/ip_fib_alias/total_objects', 0o664, b'0\n') +f('sys/kernel/slab/ip_fib_alias/slabs', 0o664, b'0\n') +f('sys/kernel/slab/ip_fib_alias/poison', 0o664, b'1\n') +f('sys/kernel/slab/ip_fib_alias/alloc_calls', 0o664, b'No data\n') +f('sys/kernel/slab/ip_fib_alias/objs_per_slab', 0o664, b'39\n') +f('sys/kernel/slab/ip_fib_alias/shrink', 0o664, b'') +f('sys/kernel/slab/ip_fib_alias/trace', 0o664, b'0\n') +f('sys/kernel/slab/ip_fib_alias/object_size', 0o664, b'32\n') +f('sys/kernel/slab/ip_fib_alias/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/ip_fib_alias/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/ip_fib_alias/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/ip_fib_alias/objects_partial', 0o664, b'0\n') +f('sys/kernel/slab/ip_fib_alias/objects', 0o664, b'0\n') +f('sys/kernel/slab/ip_fib_alias/order', 0o664, b'0\n') +f('sys/kernel/slab/ip_fib_alias/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/ip_fib_alias/store_user', 0o664, b'1\n') +f('sys/kernel/slab/ip_fib_alias/align', 0o664, b'0\n') +f('sys/kernel/slab/ip_fib_alias/partial', 0o664, b'0\n') +f('sys/kernel/slab/ip_fib_alias/validate', 0o664, b'') +f('sys/kernel/slab/ip_fib_alias/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/ip_fib_alias/free_calls', 0o664, b'No data\n') +f('sys/kernel/slab/ip_fib_alias/aliases', 0o664, b'0\n') +d('sys/kernel/slab/proc_inode_cache', 0o775) +f('sys/kernel/slab/proc_inode_cache/reclaim_account', 0o664, b'1\n') +f('sys/kernel/slab/proc_inode_cache/ctor', 0o664, b'init_once+0x0/0x10\n') +f('sys/kernel/slab/proc_inode_cache/hwcache_align', 0o664, b'0\n') +f('sys/kernel/slab/proc_inode_cache/slab_size', 0o664, b'1192\n') +f('sys/kernel/slab/proc_inode_cache/total_objects', 0o664, b'1677\n') +f('sys/kernel/slab/proc_inode_cache/slabs', 0o664, b'129\n') +f('sys/kernel/slab/proc_inode_cache/poison', 0o664, b'1\n') +f('sys/kernel/slab/proc_inode_cache/alloc_calls', 0o664, b' 1627 proc_alloc_inode+0x1b/0x90 age=61424/8163415/8379746 pid=0-19241 cpus=0-1\n') +f('sys/kernel/slab/proc_inode_cache/objs_per_slab', 0o664, b'13\n') +f('sys/kernel/slab/proc_inode_cache/shrink', 0o664, b'') +f('sys/kernel/slab/proc_inode_cache/trace', 0o664, b'0\n') +f('sys/kernel/slab/proc_inode_cache/object_size', 0o664, b'1120\n') +f('sys/kernel/slab/proc_inode_cache/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/proc_inode_cache/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/proc_inode_cache/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/proc_inode_cache/objects_partial', 0o664, b'78\n') +f('sys/kernel/slab/proc_inode_cache/objects', 0o664, b'1651\n') +f('sys/kernel/slab/proc_inode_cache/order', 0o664, b'2\n') +f('sys/kernel/slab/proc_inode_cache/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/proc_inode_cache/store_user', 0o664, b'1\n') +f('sys/kernel/slab/proc_inode_cache/align', 0o664, b'0\n') +f('sys/kernel/slab/proc_inode_cache/partial', 0o664, b'8\n') +f('sys/kernel/slab/proc_inode_cache/validate', 0o664, b'') +f('sys/kernel/slab/proc_inode_cache/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/proc_inode_cache/free_calls', 0o664, b''' 1124 <not-available> age=4303047043 pid=0 cpus=0 + 503 proc_destroy_inode+0x14/0x20 age=61430/7970819/8372808 pid=1-12336 cpus=0-1 +''') +f('sys/kernel/slab/proc_inode_cache/aliases', 0o664, b'0\n') +d('sys/kernel/slab/biovec-16', 0o775) +f('sys/kernel/slab/biovec-16/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/biovec-16/ctor', 0o664, b'') +f('sys/kernel/slab/biovec-16/hwcache_align', 0o664, b'1\n') +f('sys/kernel/slab/biovec-16/slab_size', 0o664, b'384\n') +f('sys/kernel/slab/biovec-16/total_objects', 0o664, b'63\n') +f('sys/kernel/slab/biovec-16/slabs', 0o664, b'3\n') +f('sys/kernel/slab/biovec-16/poison', 0o664, b'1\n') +f('sys/kernel/slab/biovec-16/alloc_calls', 0o664, b' 2 mempool_alloc_slab+0x11/0x20 age=8379491/8379491/8379491 pid=1 cpus=0\n') +f('sys/kernel/slab/biovec-16/objs_per_slab', 0o664, b'21\n') +f('sys/kernel/slab/biovec-16/shrink', 0o664, b'') +f('sys/kernel/slab/biovec-16/trace', 0o664, b'0\n') +f('sys/kernel/slab/biovec-16/object_size', 0o664, b'256\n') +f('sys/kernel/slab/biovec-16/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/biovec-16/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/biovec-16/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/biovec-16/objects_partial', 0o664, b'2\n') +f('sys/kernel/slab/biovec-16/objects', 0o664, b'44\n') +f('sys/kernel/slab/biovec-16/order', 0o664, b'1\n') +f('sys/kernel/slab/biovec-16/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/biovec-16/store_user', 0o664, b'1\n') +f('sys/kernel/slab/biovec-16/align', 0o664, b'0\n') +f('sys/kernel/slab/biovec-16/partial', 0o664, b'1\n') +f('sys/kernel/slab/biovec-16/validate', 0o664, b'') +f('sys/kernel/slab/biovec-16/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/biovec-16/free_calls', 0o664, b' 2 <not-available> age=4303046925 pid=0 cpus=0\n') +f('sys/kernel/slab/biovec-16/aliases', 0o664, b'0\n') +d('sys/kernel/slab/Acpi-State', 0o775) +f('sys/kernel/slab/Acpi-State/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/Acpi-State/ctor', 0o664, b'') +f('sys/kernel/slab/Acpi-State/hwcache_align', 0o664, b'0\n') +f('sys/kernel/slab/Acpi-State/slab_size', 0o664, b'152\n') +f('sys/kernel/slab/Acpi-State/total_objects', 0o664, b'52\n') +f('sys/kernel/slab/Acpi-State/slabs', 0o664, b'2\n') +f('sys/kernel/slab/Acpi-State/poison', 0o664, b'1\n') +f('sys/kernel/slab/Acpi-State/alloc_calls', 0o664, b'No data\n') +f('sys/kernel/slab/Acpi-State/objs_per_slab', 0o664, b'26\n') +f('sys/kernel/slab/Acpi-State/shrink', 0o664, b'') +f('sys/kernel/slab/Acpi-State/trace', 0o664, b'0\n') +f('sys/kernel/slab/Acpi-State/object_size', 0o664, b'80\n') +f('sys/kernel/slab/Acpi-State/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/Acpi-State/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/Acpi-State/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/Acpi-State/objects_partial', 0o664, b'0\n') +f('sys/kernel/slab/Acpi-State/objects', 0o664, b'52\n') +f('sys/kernel/slab/Acpi-State/order', 0o664, b'0\n') +f('sys/kernel/slab/Acpi-State/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/Acpi-State/store_user', 0o664, b'1\n') +f('sys/kernel/slab/Acpi-State/align', 0o664, b'0\n') +f('sys/kernel/slab/Acpi-State/partial', 0o664, b'0\n') +f('sys/kernel/slab/Acpi-State/validate', 0o664, b'') +f('sys/kernel/slab/Acpi-State/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/Acpi-State/free_calls', 0o664, b'No data\n') +f('sys/kernel/slab/Acpi-State/aliases', 0o664, b'0\n') +d('sys/kernel/slab/ip6_dst_cache', 0o775) +f('sys/kernel/slab/ip6_dst_cache/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/ip6_dst_cache/ctor', 0o664, b'') +f('sys/kernel/slab/ip6_dst_cache/hwcache_align', 0o664, b'1\n') +f('sys/kernel/slab/ip6_dst_cache/slab_size', 0o664, b'384\n') +f('sys/kernel/slab/ip6_dst_cache/total_objects', 0o664, b'42\n') +f('sys/kernel/slab/ip6_dst_cache/slabs', 0o664, b'2\n') +f('sys/kernel/slab/ip6_dst_cache/poison', 0o664, b'1\n') +f('sys/kernel/slab/ip6_dst_cache/alloc_calls', 0o664, b' 4 dst_alloc+0x2b/0x90 age=8329964/8337614/8360566 pid=8-1549 cpus=0-1\n') +f('sys/kernel/slab/ip6_dst_cache/objs_per_slab', 0o664, b'21\n') +f('sys/kernel/slab/ip6_dst_cache/shrink', 0o664, b'') +f('sys/kernel/slab/ip6_dst_cache/trace', 0o664, b'0\n') +f('sys/kernel/slab/ip6_dst_cache/object_size', 0o664, b'304\n') +f('sys/kernel/slab/ip6_dst_cache/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/ip6_dst_cache/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/ip6_dst_cache/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/ip6_dst_cache/objects_partial', 0o664, b'4\n') +f('sys/kernel/slab/ip6_dst_cache/objects', 0o664, b'4\n') +f('sys/kernel/slab/ip6_dst_cache/order', 0o664, b'1\n') +f('sys/kernel/slab/ip6_dst_cache/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/ip6_dst_cache/store_user', 0o664, b'1\n') +f('sys/kernel/slab/ip6_dst_cache/align', 0o664, b'0\n') +f('sys/kernel/slab/ip6_dst_cache/partial', 0o664, b'2\n') +f('sys/kernel/slab/ip6_dst_cache/validate', 0o664, b'') +f('sys/kernel/slab/ip6_dst_cache/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/ip6_dst_cache/free_calls', 0o664, b' 4 <not-available> age=4303047790 pid=0 cpus=0\n') +f('sys/kernel/slab/ip6_dst_cache/aliases', 0o664, b'0\n') +d('sys/kernel/slab/task_xstate', 0o775) +f('sys/kernel/slab/task_xstate/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/task_xstate/ctor', 0o664, b'') +f('sys/kernel/slab/task_xstate/hwcache_align', 0o664, b'0\n') +f('sys/kernel/slab/task_xstate/slab_size', 0o664, b'592\n') +f('sys/kernel/slab/task_xstate/total_objects', 0o664, b'169\n') +f('sys/kernel/slab/task_xstate/slabs', 0o664, b'13\n') +f('sys/kernel/slab/task_xstate/poison', 0o664, b'1\n') +f('sys/kernel/slab/task_xstate/alloc_calls', 0o664, b''' 99 arch_dup_task_struct+0x51/0xa0 age=125559/8275901/8376574 pid=71-13212 cpus=0-1 + 51 init_fpu+0xef/0x110 age=4157/7436734/8378165 pid=1-20296 cpus=0-1 +''') +f('sys/kernel/slab/task_xstate/objs_per_slab', 0o664, b'13\n') +f('sys/kernel/slab/task_xstate/shrink', 0o664, b'') +f('sys/kernel/slab/task_xstate/trace', 0o664, b'0\n') +f('sys/kernel/slab/task_xstate/object_size', 0o664, b'512\n') +f('sys/kernel/slab/task_xstate/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/task_xstate/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/task_xstate/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/task_xstate/objects_partial', 0o664, b'57\n') +f('sys/kernel/slab/task_xstate/objects', 0o664, b'161\n') +f('sys/kernel/slab/task_xstate/order', 0o664, b'1\n') +f('sys/kernel/slab/task_xstate/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/task_xstate/store_user', 0o664, b'1\n') +f('sys/kernel/slab/task_xstate/align', 0o664, b'16\n') +f('sys/kernel/slab/task_xstate/partial', 0o664, b'5\n') +f('sys/kernel/slab/task_xstate/validate', 0o664, b'') +f('sys/kernel/slab/task_xstate/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/task_xstate/free_calls', 0o664, b''' 53 <not-available> age=4303047277 pid=0 cpus=0 + 97 free_thread_xstate+0x24/0x40 age=7199/7795238/8375118 pid=0-20296 cpus=0-1 +''') +f('sys/kernel/slab/task_xstate/aliases', 0o664, b'0\n') +d('sys/kernel/slab/scsi_io_context', 0o775) +f('sys/kernel/slab/scsi_io_context/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/scsi_io_context/ctor', 0o664, b'') +f('sys/kernel/slab/scsi_io_context/hwcache_align', 0o664, b'0\n') +f('sys/kernel/slab/scsi_io_context/slab_size', 0o664, b'184\n') +f('sys/kernel/slab/scsi_io_context/total_objects', 0o664, b'0\n') +f('sys/kernel/slab/scsi_io_context/slabs', 0o664, b'0\n') +f('sys/kernel/slab/scsi_io_context/poison', 0o664, b'1\n') +f('sys/kernel/slab/scsi_io_context/alloc_calls', 0o664, b'No data\n') +f('sys/kernel/slab/scsi_io_context/objs_per_slab', 0o664, b'22\n') +f('sys/kernel/slab/scsi_io_context/shrink', 0o664, b'') +f('sys/kernel/slab/scsi_io_context/trace', 0o664, b'0\n') +f('sys/kernel/slab/scsi_io_context/object_size', 0o664, b'112\n') +f('sys/kernel/slab/scsi_io_context/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/scsi_io_context/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/scsi_io_context/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/scsi_io_context/objects_partial', 0o664, b'0\n') +f('sys/kernel/slab/scsi_io_context/objects', 0o664, b'0\n') +f('sys/kernel/slab/scsi_io_context/order', 0o664, b'0\n') +f('sys/kernel/slab/scsi_io_context/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/scsi_io_context/store_user', 0o664, b'1\n') +f('sys/kernel/slab/scsi_io_context/align', 0o664, b'0\n') +f('sys/kernel/slab/scsi_io_context/partial', 0o664, b'0\n') +f('sys/kernel/slab/scsi_io_context/validate', 0o664, b'') +f('sys/kernel/slab/scsi_io_context/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/scsi_io_context/free_calls', 0o664, b'No data\n') +f('sys/kernel/slab/scsi_io_context/aliases', 0o664, b'0\n') +d('sys/kernel/slab/anon_vma', 0o775) +f('sys/kernel/slab/anon_vma/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/anon_vma/ctor', 0o664, b'anon_vma_ctor+0x0/0x40\n') +f('sys/kernel/slab/anon_vma/hwcache_align', 0o664, b'0\n') +f('sys/kernel/slab/anon_vma/slab_size', 0o664, b'144\n') +f('sys/kernel/slab/anon_vma/total_objects', 0o664, b'3304\n') +f('sys/kernel/slab/anon_vma/slabs', 0o664, b'118\n') +f('sys/kernel/slab/anon_vma/poison', 0o664, b'1\n') +f('sys/kernel/slab/anon_vma/alloc_calls', 0o664, b' 3234 anon_vma_prepare+0xe0/0x100 age=4177/7981073/8378201 pid=1-20296 cpus=0-1\n') +f('sys/kernel/slab/anon_vma/objs_per_slab', 0o664, b'28\n') +f('sys/kernel/slab/anon_vma/shrink', 0o664, b'') +f('sys/kernel/slab/anon_vma/trace', 0o664, b'0\n') +f('sys/kernel/slab/anon_vma/object_size', 0o664, b'72\n') +f('sys/kernel/slab/anon_vma/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/anon_vma/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/anon_vma/destroy_by_rcu', 0o664, b'1\n') +f('sys/kernel/slab/anon_vma/objects_partial', 0o664, b'185\n') +f('sys/kernel/slab/anon_vma/objects', 0o664, b'3265\n') +f('sys/kernel/slab/anon_vma/order', 0o664, b'0\n') +f('sys/kernel/slab/anon_vma/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/anon_vma/store_user', 0o664, b'1\n') +f('sys/kernel/slab/anon_vma/align', 0o664, b'0\n') +f('sys/kernel/slab/anon_vma/partial', 0o664, b'8\n') +f('sys/kernel/slab/anon_vma/validate', 0o664, b'') +f('sys/kernel/slab/anon_vma/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/anon_vma/free_calls', 0o664, b''' 1575 <not-available> age=4303047296 pid=0 cpus=0 + 1659 anon_vma_unlink+0x5f/0x70 age=7225/7638870/8377152 pid=56-20292 cpus=0-1 +''') +f('sys/kernel/slab/anon_vma/aliases', 0o664, b'0\n') +d('sys/kernel/slab/uhci_urb_priv', 0o775) +f('sys/kernel/slab/uhci_urb_priv/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/uhci_urb_priv/ctor', 0o664, b'') +f('sys/kernel/slab/uhci_urb_priv/hwcache_align', 0o664, b'0\n') +f('sys/kernel/slab/uhci_urb_priv/slab_size', 0o664, b'128\n') +f('sys/kernel/slab/uhci_urb_priv/total_objects', 0o664, b'32\n') +f('sys/kernel/slab/uhci_urb_priv/slabs', 0o664, b'1\n') +f('sys/kernel/slab/uhci_urb_priv/poison', 0o664, b'1\n') +f('sys/kernel/slab/uhci_urb_priv/alloc_calls', 0o664, b' 1 uhci_urb_enqueue+0xb6/0xa30 [uhci_hcd] age=53794 pid=419 cpus=0\n') +f('sys/kernel/slab/uhci_urb_priv/objs_per_slab', 0o664, b'32\n') +f('sys/kernel/slab/uhci_urb_priv/shrink', 0o664, b'') +f('sys/kernel/slab/uhci_urb_priv/trace', 0o664, b'0\n') +f('sys/kernel/slab/uhci_urb_priv/object_size', 0o664, b'56\n') +f('sys/kernel/slab/uhci_urb_priv/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/uhci_urb_priv/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/uhci_urb_priv/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/uhci_urb_priv/objects_partial', 0o664, b'0\n') +f('sys/kernel/slab/uhci_urb_priv/objects', 0o664, b'32\n') +f('sys/kernel/slab/uhci_urb_priv/order', 0o664, b'0\n') +f('sys/kernel/slab/uhci_urb_priv/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/uhci_urb_priv/store_user', 0o664, b'1\n') +f('sys/kernel/slab/uhci_urb_priv/align', 0o664, b'0\n') +f('sys/kernel/slab/uhci_urb_priv/partial', 0o664, b'0\n') +f('sys/kernel/slab/uhci_urb_priv/validate', 0o664, b'') +f('sys/kernel/slab/uhci_urb_priv/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/uhci_urb_priv/free_calls', 0o664, b' 1 uhci_free_urb_priv+0x79/0xd0 [uhci_hcd] age=53806 pid=0 cpus=0\n') +f('sys/kernel/slab/uhci_urb_priv/aliases', 0o664, b'0\n') +d('sys/kernel/slab/shmem_inode_cache', 0o775) +f('sys/kernel/slab/shmem_inode_cache/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/shmem_inode_cache/ctor', 0o664, b'init_once+0x0/0x40\n') +f('sys/kernel/slab/shmem_inode_cache/hwcache_align', 0o664, b'0\n') +f('sys/kernel/slab/shmem_inode_cache/slab_size', 0o664, b'1400\n') +f('sys/kernel/slab/shmem_inode_cache/total_objects', 0o664, b'1173\n') +f('sys/kernel/slab/shmem_inode_cache/slabs', 0o664, b'51\n') +f('sys/kernel/slab/shmem_inode_cache/poison', 0o664, b'1\n') +f('sys/kernel/slab/shmem_inode_cache/alloc_calls', 0o664, b' 1144 shmem_alloc_inode+0x15/0x30 age=21584/7506265/8379043 pid=1-13453 cpus=0-1\n') +f('sys/kernel/slab/shmem_inode_cache/objs_per_slab', 0o664, b'23\n') +f('sys/kernel/slab/shmem_inode_cache/shrink', 0o664, b'') +f('sys/kernel/slab/shmem_inode_cache/trace', 0o664, b'0\n') +f('sys/kernel/slab/shmem_inode_cache/object_size', 0o664, b'1328\n') +f('sys/kernel/slab/shmem_inode_cache/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/shmem_inode_cache/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/shmem_inode_cache/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/shmem_inode_cache/objects_partial', 0o664, b'42\n') +f('sys/kernel/slab/shmem_inode_cache/objects', 0o664, b'1169\n') +f('sys/kernel/slab/shmem_inode_cache/order', 0o664, b'3\n') +f('sys/kernel/slab/shmem_inode_cache/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/shmem_inode_cache/store_user', 0o664, b'1\n') +f('sys/kernel/slab/shmem_inode_cache/align', 0o664, b'0\n') +f('sys/kernel/slab/shmem_inode_cache/partial', 0o664, b'2\n') +f('sys/kernel/slab/shmem_inode_cache/validate', 0o664, b'') +f('sys/kernel/slab/shmem_inode_cache/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/shmem_inode_cache/free_calls', 0o664, b''' 741 <not-available> age=4303046628 pid=0 cpus=0 + 403 shmem_destroy_inode+0x24/0x30 age=21598/7406739/8375758 pid=72-13332 cpus=0-1 +''') +f('sys/kernel/slab/shmem_inode_cache/aliases', 0o664, b'0\n') +d('sys/kernel/slab/fat_inode_cache', 0o775) +f('sys/kernel/slab/fat_inode_cache/reclaim_account', 0o664, b'1\n') +f('sys/kernel/slab/fat_inode_cache/ctor', 0o664, b'init_once+0x0/0x60\n') +f('sys/kernel/slab/fat_inode_cache/hwcache_align', 0o664, b'0\n') +f('sys/kernel/slab/fat_inode_cache/slab_size', 0o664, b'1272\n') +f('sys/kernel/slab/fat_inode_cache/total_objects', 0o664, b'100\n') +f('sys/kernel/slab/fat_inode_cache/slabs', 0o664, b'4\n') +f('sys/kernel/slab/fat_inode_cache/poison', 0o664, b'1\n') +f('sys/kernel/slab/fat_inode_cache/alloc_calls', 0o664, b' 76 fat_alloc_inode+0x15/0x30 age=61228/61276/61657 pid=13348-13354 cpus=0-1\n') +f('sys/kernel/slab/fat_inode_cache/objs_per_slab', 0o664, b'25\n') +f('sys/kernel/slab/fat_inode_cache/shrink', 0o664, b'') +f('sys/kernel/slab/fat_inode_cache/trace', 0o664, b'0\n') +f('sys/kernel/slab/fat_inode_cache/object_size', 0o664, b'1200\n') +f('sys/kernel/slab/fat_inode_cache/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/fat_inode_cache/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/fat_inode_cache/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/fat_inode_cache/objects_partial', 0o664, b'0\n') +f('sys/kernel/slab/fat_inode_cache/objects', 0o664, b'100\n') +f('sys/kernel/slab/fat_inode_cache/order', 0o664, b'3\n') +f('sys/kernel/slab/fat_inode_cache/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/fat_inode_cache/store_user', 0o664, b'1\n') +f('sys/kernel/slab/fat_inode_cache/align', 0o664, b'0\n') +f('sys/kernel/slab/fat_inode_cache/partial', 0o664, b'0\n') +f('sys/kernel/slab/fat_inode_cache/validate', 0o664, b'') +f('sys/kernel/slab/fat_inode_cache/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/fat_inode_cache/free_calls', 0o664, b' 76 <not-available> age=4303047594 pid=0 cpus=0\n') +f('sys/kernel/slab/fat_inode_cache/aliases', 0o664, b'0\n') +d('sys/kernel/slab/kmalloc-256', 0o775) +f('sys/kernel/slab/kmalloc-256/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-256/ctor', 0o664, b'') +f('sys/kernel/slab/kmalloc-256/hwcache_align', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-256/slab_size', 0o664, b'328\n') +f('sys/kernel/slab/kmalloc-256/total_objects', 0o664, b'516\n') +f('sys/kernel/slab/kmalloc-256/slabs', 0o664, b'43\n') +f('sys/kernel/slab/kmalloc-256/poison', 0o664, b'1\n') +f('sys/kernel/slab/kmalloc-256/alloc_calls', 0o664, b''' 2 mempool_kmalloc+0x11/0x20 age=8379928/8379928/8379928 pid=1 cpus=0 + 2 __vmalloc_area_node+0xfb/0x140 age=8374585/8375388/8376192 pid=122-126 cpus=0-1 + 32 dma_pool_create+0x90/0x1e0 age=8374074/8374505/8374905 pid=143-147 cpus=0-1 + 28 __percpu_alloc_mask+0xbc/0x140 age=8360136/8365750/8379780 pid=1-1549 cpus=0 + 2 seq_open+0x84/0xa0 age=8355780/8360929/8366079 pid=1371-1738 cpus=0 + 19 inotify_init+0x1b/0x90 age=8333719/8353284/8379778 pid=1-2544 cpus=0-1 + 1 mounts_open_common+0x11e/0x210 age=8365844 pid=1371 cpus=0 + 347 __proc_create+0xa5/0x150 age=8355314/8375854/8380066 pid=0-1813 cpus=0-1 + 6 start_this_handle+0x3f5/0x410 age=4241/38502/142468 pid=21-13466 cpus=0-1 + 3 elevator_alloc+0x1b/0xc0 age=62010/5606790/8379345 pid=1-13295 cpus=0-1 + 2 acpi_ds_build_internal_buffer_obj+0xe1/0x121 age=8379913/8379914/8379915 pid=1 cpus=0 + 1 find_dock+0x414/0x426 age=8379931 pid=1 cpus=0 + 6 con_insert_unipair+0x96/0x110 age=8355034/8367399/8379765 pid=1-1898 cpus=1 + 2 neigh_resolve_output+0x226/0x2e0 age=1134112/4736669/8339226 pid=0-2401 cpus=0-1 + 1 genl_register_family+0x1b6/0x1e0 age=8375014 pid=126 cpus=0 + 5 ip_mc_inc_group+0x6b/0x280 age=8325482/8352347/8367852 pid=1185-1849 cpus=0-1 + 2 cache_add_dev+0x17b/0x546 age=8379779/8379779/8379780 pid=1 cpus=0-1 + 10 audit_register_class+0x1e/0xa1 age=8379779/8379779/8379779 pid=1 cpus=1 + 1 proc_net_ns_init+0x1b/0x81 age=8380066 pid=0 cpus=0 + 3 snd_malloc_sgbuf_pages+0xfa/0x1f0 [snd_page_alloc] age=8374129/8374129/8374129 pid=107 cpus=1 + 1 usb_get_configuration+0x18f/0x1480 [usbcore] age=8372709 pid=419 cpus=0 + 1 acpi_ac_add+0x3a/0x1b1 [ac] age=8375784 pid=392 cpus=0 + 1 acpi_processor_register_performance+0x2a0/0x3a6 [processor] age=8366391 pid=1358 cpus=0 + 3 snd_ctl_open+0x8e/0x180 [snd] age=8333026/8337179/8339273 pid=2400-2425 cpus=0 + 8 ieee80211_rx_bss_add+0x4e/0x140 [mac80211] age=8354793/8355457/8355979 pid=0-1951 cpus=0 + 2 ipv6_add_addr+0x199/0x3c0 [ipv6] age=8329536/8344837/8360138 pid=8-1549 cpus=0-1 + 5 ipv6_dev_mc_inc+0x141/0x3f0 [ipv6] age=8329536/8354016/8360138 pid=8-1549 cpus=0-1 +''') +f('sys/kernel/slab/kmalloc-256/objs_per_slab', 0o664, b'12\n') +f('sys/kernel/slab/kmalloc-256/shrink', 0o664, b'') +f('sys/kernel/slab/kmalloc-256/trace', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-256/object_size', 0o664, b'256\n') +f('sys/kernel/slab/kmalloc-256/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-256/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-256/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-256/objects_partial', 0o664, b'60\n') +f('sys/kernel/slab/kmalloc-256/objects', 0o664, b'504\n') +f('sys/kernel/slab/kmalloc-256/order', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-256/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/kmalloc-256/store_user', 0o664, b'1\n') +f('sys/kernel/slab/kmalloc-256/align', 0o664, b'8\n') +f('sys/kernel/slab/kmalloc-256/partial', 0o664, b'6\n') +f('sys/kernel/slab/kmalloc-256/validate', 0o664, b'') +f('sys/kernel/slab/kmalloc-256/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/kmalloc-256/free_calls', 0o664, b''' 389 <not-available> age=4303047363 pid=0 cpus=0 + 1 __vunmap+0xe9/0x120 age=8374878 pid=107 cpus=1 + 38 do_execve+0x2b1/0x2d0 age=7303/7294190/8377088 pid=71-13465 cpus=0-1 + 51 seq_release+0x20/0x30 age=23541/7877166/8376202 pid=105-2535 cpus=0-1 + 3 free_proc_entry+0x73/0x90 age=8356279/8369643/8378992 pid=1-1541 cpus=0 + 3 __journal_drop_transaction+0xe6/0x170 age=8360317/8363466/8366128 pid=32 cpus=0 + 1 acpi_pci_irq_add_prt+0xc2/0x324 age=8379845 pid=1 cpus=0 + 2 acpi_pci_bind+0x26b/0x28d age=8379844/8379845/8379846 pid=1 cpus=0 + 1 wireless_send_event+0x172/0x330 age=8329538 pid=742 cpus=1 + 3 usb_string+0x17c/0x1e0 [usbcore] age=8374367/8374614/8374886 pid=143 cpus=0 + 3 snd_ctl_release+0xf9/0x130 [snd] age=8333027/8337180/8339274 pid=2400-2425 cpus=0 + 1 ieee80211_set_associated+0x421/0x520 [mac80211] age=8329538 pid=742 cpus=1 +''') +f('sys/kernel/slab/kmalloc-256/aliases', 0o664, b'0\n') +d('sys/kernel/slab/biovec-64', 0o775) +f('sys/kernel/slab/biovec-64/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/biovec-64/ctor', 0o664, b'') +f('sys/kernel/slab/biovec-64/hwcache_align', 0o664, b'1\n') +f('sys/kernel/slab/biovec-64/slab_size', 0o664, b'1152\n') +f('sys/kernel/slab/biovec-64/total_objects', 0o664, b'28\n') +f('sys/kernel/slab/biovec-64/slabs', 0o664, b'2\n') +f('sys/kernel/slab/biovec-64/poison', 0o664, b'1\n') +f('sys/kernel/slab/biovec-64/alloc_calls', 0o664, b' 2 mempool_alloc_slab+0x11/0x20 age=8379482/8379482/8379482 pid=1 cpus=0\n') +f('sys/kernel/slab/biovec-64/objs_per_slab', 0o664, b'14\n') +f('sys/kernel/slab/biovec-64/shrink', 0o664, b'') +f('sys/kernel/slab/biovec-64/trace', 0o664, b'0\n') +f('sys/kernel/slab/biovec-64/object_size', 0o664, b'1024\n') +f('sys/kernel/slab/biovec-64/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/biovec-64/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/biovec-64/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/biovec-64/objects_partial', 0o664, b'0\n') +f('sys/kernel/slab/biovec-64/objects', 0o664, b'28\n') +f('sys/kernel/slab/biovec-64/order', 0o664, b'2\n') +f('sys/kernel/slab/biovec-64/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/biovec-64/store_user', 0o664, b'1\n') +f('sys/kernel/slab/biovec-64/align', 0o664, b'0\n') +f('sys/kernel/slab/biovec-64/partial', 0o664, b'0\n') +f('sys/kernel/slab/biovec-64/validate', 0o664, b'') +f('sys/kernel/slab/biovec-64/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/biovec-64/free_calls', 0o664, b' 2 <not-available> age=4303046917 pid=0 cpus=0\n') +f('sys/kernel/slab/biovec-64/aliases', 0o664, b'0\n') +d('sys/kernel/slab/sysfs_dir_cache', 0o775) +f('sys/kernel/slab/sysfs_dir_cache/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/sysfs_dir_cache/ctor', 0o664, b'') +f('sys/kernel/slab/sysfs_dir_cache/hwcache_align', 0o664, b'0\n') +f('sys/kernel/slab/sysfs_dir_cache/slab_size', 0o664, b'152\n') +f('sys/kernel/slab/sysfs_dir_cache/total_objects', 0o664, b'11518\n') +f('sys/kernel/slab/sysfs_dir_cache/slabs', 0o664, b'443\n') +f('sys/kernel/slab/sysfs_dir_cache/poison', 0o664, b'1\n') +f('sys/kernel/slab/sysfs_dir_cache/alloc_calls', 0o664, b' 11488 sysfs_new_dirent+0x38/0x120 age=22320/7764235/8379787 pid=0-13295 cpus=0-1\n') +f('sys/kernel/slab/sysfs_dir_cache/objs_per_slab', 0o664, b'26\n') +f('sys/kernel/slab/sysfs_dir_cache/shrink', 0o664, b'') +f('sys/kernel/slab/sysfs_dir_cache/trace', 0o664, b'0\n') +f('sys/kernel/slab/sysfs_dir_cache/object_size', 0o664, b'80\n') +f('sys/kernel/slab/sysfs_dir_cache/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/sysfs_dir_cache/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/sysfs_dir_cache/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/sysfs_dir_cache/objects_partial', 0o664, b'0\n') +f('sys/kernel/slab/sysfs_dir_cache/objects', 0o664, b'11518\n') +f('sys/kernel/slab/sysfs_dir_cache/order', 0o664, b'0\n') +f('sys/kernel/slab/sysfs_dir_cache/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/sysfs_dir_cache/store_user', 0o664, b'1\n') +f('sys/kernel/slab/sysfs_dir_cache/align', 0o664, b'0\n') +f('sys/kernel/slab/sysfs_dir_cache/partial', 0o664, b'0\n') +f('sys/kernel/slab/sysfs_dir_cache/validate', 0o664, b'') +f('sys/kernel/slab/sysfs_dir_cache/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/sysfs_dir_cache/free_calls', 0o664, b''' 11006 <not-available> age=4303047087 pid=0 cpus=0 + 482 release_sysfs_dirent+0x5c/0xd0 age=61294/6319346/8379456 pid=1-2141 cpus=0-1 +''') +f('sys/kernel/slab/sysfs_dir_cache/aliases', 0o664, b'0\n') +d('sys/kernel/slab/request_sock_TCP', 0o775) +f('sys/kernel/slab/request_sock_TCP/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/request_sock_TCP/ctor', 0o664, b'') +f('sys/kernel/slab/request_sock_TCP/hwcache_align', 0o664, b'1\n') +f('sys/kernel/slab/request_sock_TCP/slab_size', 0o664, b'192\n') +f('sys/kernel/slab/request_sock_TCP/total_objects', 0o664, b'0\n') +f('sys/kernel/slab/request_sock_TCP/slabs', 0o664, b'0\n') +f('sys/kernel/slab/request_sock_TCP/poison', 0o664, b'1\n') +f('sys/kernel/slab/request_sock_TCP/alloc_calls', 0o664, b'No data\n') +f('sys/kernel/slab/request_sock_TCP/objs_per_slab', 0o664, b'21\n') +f('sys/kernel/slab/request_sock_TCP/shrink', 0o664, b'') +f('sys/kernel/slab/request_sock_TCP/trace', 0o664, b'0\n') +f('sys/kernel/slab/request_sock_TCP/object_size', 0o664, b'88\n') +f('sys/kernel/slab/request_sock_TCP/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/request_sock_TCP/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/request_sock_TCP/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/request_sock_TCP/objects_partial', 0o664, b'0\n') +f('sys/kernel/slab/request_sock_TCP/objects', 0o664, b'0\n') +f('sys/kernel/slab/request_sock_TCP/order', 0o664, b'0\n') +f('sys/kernel/slab/request_sock_TCP/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/request_sock_TCP/store_user', 0o664, b'1\n') +f('sys/kernel/slab/request_sock_TCP/align', 0o664, b'0\n') +f('sys/kernel/slab/request_sock_TCP/partial', 0o664, b'0\n') +f('sys/kernel/slab/request_sock_TCP/validate', 0o664, b'') +f('sys/kernel/slab/request_sock_TCP/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/request_sock_TCP/free_calls', 0o664, b'No data\n') +f('sys/kernel/slab/request_sock_TCP/aliases', 0o664, b'0\n') +d('sys/kernel/slab/kmalloc-4096', 0o775) +f('sys/kernel/slab/kmalloc-4096/reclaim_account', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-4096/ctor', 0o664, b'') +f('sys/kernel/slab/kmalloc-4096/hwcache_align', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-4096/slab_size', 0o664, b'4168\n') +f('sys/kernel/slab/kmalloc-4096/total_objects', 0o664, b'385\n') +f('sys/kernel/slab/kmalloc-4096/slabs', 0o664, b'55\n') +f('sys/kernel/slab/kmalloc-4096/poison', 0o664, b'1\n') +f('sys/kernel/slab/kmalloc-4096/alloc_calls', 0o664, b''' 1 load_module+0x18d5/0x1b30 age=8375716 pid=330 cpus=0 + 1 __vmalloc_area_node+0xfb/0x140 age=8371983 pid=867 cpus=0 + 24 __percpu_alloc_mask+0xbc/0x140 age=8360098/8363374/8379742 pid=1-1549 cpus=0 + 1 seq_read+0x2f0/0x360 age=8365263 pid=1371 cpus=0 + 2 ext3_fill_super+0x68/0x1a20 age=8369599/8373987/8378375 pid=1-962 cpus=0 + 4 journal_init_revoke_table+0x4d/0xb0 age=8369583/8373933/8378283 pid=1-962 cpus=0 + 2 journal_init_inode+0x8d/0x130 age=8369583/8373933/8378283 pid=1-962 cpus=0 + 1 fat_fill_super+0x40/0xdd0 age=61388 pid=13348 cpus=1 + 7 scsi_host_alloc+0x35/0x360 age=66976/7192011/8379690 pid=1-419 cpus=0-1 + 3 scsi_alloc_sdev+0x6a/0x270 age=61972/5606752/8379307 pid=1-13295 cpus=0-1 + 8 input_allocate_device+0x1a/0xb0 age=53455/7335718/8378931 pid=17-419 cpus=0-1 + 1 reqsk_queue_alloc+0x112/0x120 age=8354535 pid=1920 cpus=0 + 3 alloc_netdev_mq+0x4f/0x180 age=8373564/8375671/8379766 pid=1-126 cpus=0-1 + 1 pidmap_init+0x15/0x4e age=8380028 pid=0 cpus=0 + 1 netlink_proto_init+0x47/0x16b age=8379894 pid=1 cpus=0 + 2 acpi_processor_add+0x25/0x6d [processor] age=8375653/8375684/8375715 pid=330 cpus=0 + 1 yenta_probe+0x38/0x6cd [yenta_socket] age=8373766 pid=352 cpus=0 + 281 iwl3945_rx_allocate+0xd5/0x160 [iwl3945] age=2011/7577/13684 pid=733 cpus=0 + 1 skcipher_geniv_alloc+0x304/0x3f0 [crypto_blkcipher] age=8374372 pid=215 cpus=1 + 2 bitmap_get_counter+0x153/0x220 [md_mod] age=8370027/8370029/8370031 pid=916 cpus=0 + 1 bitmap_create+0x2bc/0xad0 [md_mod] age=8370031 pid=916 cpus=0 + 6 __addrconf_sysctl_register+0x7b/0x140 [ipv6] age=8360098/8360099/8360101 pid=1549 cpus=0 + 1 acm_probe+0x34c/0xa50 [cdc_acm] age=22641 pid=419 cpus=0 +''') +f('sys/kernel/slab/kmalloc-4096/objs_per_slab', 0o664, b'7\n') +f('sys/kernel/slab/kmalloc-4096/shrink', 0o664, b'') +f('sys/kernel/slab/kmalloc-4096/trace', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-4096/object_size', 0o664, b'4096\n') +f('sys/kernel/slab/kmalloc-4096/cpu_slabs', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-4096/cache_dma', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-4096/destroy_by_rcu', 0o664, b'0\n') +f('sys/kernel/slab/kmalloc-4096/objects_partial', 0o664, b'17\n') +f('sys/kernel/slab/kmalloc-4096/objects', 0o664, b'367\n') +f('sys/kernel/slab/kmalloc-4096/order', 0o664, b'3\n') +f('sys/kernel/slab/kmalloc-4096/sanity_checks', 0o664, b'1\n') +f('sys/kernel/slab/kmalloc-4096/store_user', 0o664, b'1\n') +f('sys/kernel/slab/kmalloc-4096/align', 0o664, b'8\n') +f('sys/kernel/slab/kmalloc-4096/partial', 0o664, b'5\n') +f('sys/kernel/slab/kmalloc-4096/validate', 0o664, b'') +f('sys/kernel/slab/kmalloc-4096/red_zone', 0o664, b'1\n') +f('sys/kernel/slab/kmalloc-4096/free_calls', 0o664, b''' 187 <not-available> age=4303047324 pid=0 cpus=0 + 5 seq_release+0x18/0x30 age=61430/6709712/8374782 pid=107-1371 cpus=0-1 + 1 cryptomgr_probe+0x81/0xf0 age=8373564 pid=745 cpus=0 + 30 kobject_uevent_env+0x122/0x470 age=22643/7542644/8379894 pid=1-1549 cpus=0-1 + 1 show_uevent+0xee/0x110 age=2013 pid=13466 cpus=0 + 1 input_dev_release+0x23/0x40 age=8378913 pid=17 cpus=0 + 130 skb_release_data+0x85/0xd0 age=2011/73374/8354535 pid=0-13466 cpus=0-1 +''') +f('sys/kernel/slab/kmalloc-4096/aliases', 0o664, b'0\n') +d('sys/kernel/debug', 0o775) +d('sys/kernel/debug/x86', 0o775) +f('sys/kernel/debug/x86/pat_memtype_list', 0o664, b'') +d('sys/kernel/debug/bdi', 0o775) +d('sys/kernel/debug/bdi/7:1', 0o775) +f('sys/kernel/debug/bdi/7:1/stats', 0o664, b'''BdiWriteback: 0 kB +BdiReclaimable: 0 kB +BdiDirtyThresh: 0 kB +DirtyThresh: 189288 kB +BackgroundThresh: 94644 kB +''') +d('sys/kernel/debug/bdi/7:0', 0o775) +f('sys/kernel/debug/bdi/7:0/stats', 0o664, b'''BdiWriteback: 0 kB +BdiReclaimable: 0 kB +BdiDirtyThresh: 0 kB +DirtyThresh: 189292 kB +BackgroundThresh: 94644 kB +''') +d('sys/kernel/debug/bdi/7:2', 0o775) +f('sys/kernel/debug/bdi/7:2/stats', 0o664, b'''BdiWriteback: 0 kB +BdiReclaimable: 0 kB +BdiDirtyThresh: 0 kB +DirtyThresh: 189288 kB +BackgroundThresh: 94644 kB +''') +d('sys/kernel/debug/bdi/7:4', 0o775) +f('sys/kernel/debug/bdi/7:4/stats', 0o664, b'''BdiWriteback: 0 kB +BdiReclaimable: 0 kB +BdiDirtyThresh: 0 kB +DirtyThresh: 189288 kB +BackgroundThresh: 94644 kB +''') +d('sys/kernel/debug/bdi/7:3', 0o775) +f('sys/kernel/debug/bdi/7:3/stats', 0o664, b'''BdiWriteback: 0 kB +BdiReclaimable: 0 kB +BdiDirtyThresh: 0 kB +DirtyThresh: 189288 kB +BackgroundThresh: 94644 kB +''') +d('sys/kernel/debug/bdi/11:0', 0o775) +f('sys/kernel/debug/bdi/11:0/stats', 0o664, b'''BdiWriteback: 0 kB +BdiReclaimable: 0 kB +BdiDirtyThresh: 0 kB +DirtyThresh: 189292 kB +BackgroundThresh: 94644 kB +''') +d('sys/kernel/debug/bdi/7:5', 0o775) +f('sys/kernel/debug/bdi/7:5/stats', 0o664, b'''BdiWriteback: 0 kB +BdiReclaimable: 0 kB +BdiDirtyThresh: 0 kB +DirtyThresh: 189288 kB +BackgroundThresh: 94644 kB +''') +d('sys/kernel/debug/bdi/8:0', 0o775) +f('sys/kernel/debug/bdi/8:0/stats', 0o664, b'''BdiWriteback: 0 kB +BdiReclaimable: 13696 kB +BdiDirtyThresh: 83368 kB +DirtyThresh: 189292 kB +BackgroundThresh: 94644 kB +''') +d('sys/kernel/debug/bdi/default', 0o775) +f('sys/kernel/debug/bdi/default/stats', 0o664, b'''BdiWriteback: 0 kB +BdiReclaimable: 0 kB +BdiDirtyThresh: 0 kB +DirtyThresh: 189292 kB +BackgroundThresh: 94644 kB +''') +d('sys/kernel/debug/bdi/0:16', 0o775) +f('sys/kernel/debug/bdi/0:16/stats', 0o664, b'''BdiWriteback: 0 kB +BdiReclaimable: 0 kB +BdiDirtyThresh: 0 kB +DirtyThresh: 189272 kB +BackgroundThresh: 94636 kB +''') +d('sys/kernel/debug/bdi/8:16', 0o775) +f('sys/kernel/debug/bdi/8:16/stats', 0o664, b'''BdiWriteback: 0 kB +BdiReclaimable: 0 kB +BdiDirtyThresh: 0 kB +DirtyThresh: 189272 kB +BackgroundThresh: 94636 kB +''') +d('sys/kernel/debug/bdi/9:0', 0o775) +f('sys/kernel/debug/bdi/9:0/stats', 0o664, b'''BdiWriteback: 0 kB +BdiReclaimable: 0 kB +BdiDirtyThresh: 0 kB +DirtyThresh: 189292 kB +BackgroundThresh: 94644 kB +''') +d('sys/kernel/debug/bdi/7:7', 0o775) +f('sys/kernel/debug/bdi/7:7/stats', 0o664, b'''BdiWriteback: 0 kB +BdiReclaimable: 0 kB +BdiDirtyThresh: 0 kB +DirtyThresh: 189288 kB +BackgroundThresh: 94644 kB +''') +d('sys/kernel/debug/bdi/7:6', 0o775) +f('sys/kernel/debug/bdi/7:6/stats', 0o664, b'''BdiWriteback: 0 kB +BdiReclaimable: 0 kB +BdiDirtyThresh: 0 kB +DirtyThresh: 189288 kB +BackgroundThresh: 94644 kB +''') +d('sys/kernel/uids', 0o775) +d('sys/kernel/uids/100', 0o775) +f('sys/kernel/uids/100/cpu_share', 0o664, b'1024\n') +d('sys/kernel/uids/103', 0o775) +f('sys/kernel/uids/103/cpu_share', 0o664, b'1024\n') +d('sys/kernel/uids/51', 0o775) +f('sys/kernel/uids/51/cpu_share', 0o664, b'1024\n') +d('sys/kernel/uids/105', 0o775) +f('sys/kernel/uids/105/cpu_share', 0o664, b'1024\n') +d('sys/kernel/uids/2702', 0o775) +f('sys/kernel/uids/2702/cpu_share', 0o664, b'1024\n') +d('sys/kernel/uids/0', 0o775) +f('sys/kernel/uids/0/cpu_share', 0o664, b'2048\n') +d('sys/power', 0o775) +f('sys/power/state', 0o664, b'mem\n') +d('sys/firmware', 0o775) +d('sys/firmware/memmap', 0o775) +d('sys/firmware/memmap/8', 0o775) +f('sys/firmware/memmap/8/start', 0o664, b'0xfec00000\n') +f('sys/firmware/memmap/8/type', 0o664, b'reserved\n') +f('sys/firmware/memmap/8/end', 0o664, b'0xfec0ffff\n') +d('sys/firmware/memmap/11', 0o775) +f('sys/firmware/memmap/11/start', 0o664, b'0xfed1c000\n') +f('sys/firmware/memmap/11/type', 0o664, b'reserved\n') +f('sys/firmware/memmap/11/end', 0o664, b'0xfed8ffff\n') +d('sys/firmware/memmap/6', 0o775) +f('sys/firmware/memmap/6/start', 0o664, b'0x7ff00000\n') +f('sys/firmware/memmap/6/type', 0o664, b'reserved\n') +f('sys/firmware/memmap/6/end', 0o664, b'0x7fffffff\n') +d('sys/firmware/memmap/5', 0o775) +f('sys/firmware/memmap/5/start', 0o664, b'0x7fedf000\n') +f('sys/firmware/memmap/5/type', 0o664, b'ACPI Non-volatile Storage\n') +f('sys/firmware/memmap/5/end', 0o664, b'0x7fefffff\n') +d('sys/firmware/memmap/9', 0o775) +f('sys/firmware/memmap/9/start', 0o664, b'0xfed00000\n') +f('sys/firmware/memmap/9/type', 0o664, b'reserved\n') +f('sys/firmware/memmap/9/end', 0o664, b'0xfed003ff\n') +d('sys/firmware/memmap/2', 0o775) +f('sys/firmware/memmap/2/start', 0o664, b'0xdc000\n') +f('sys/firmware/memmap/2/type', 0o664, b'reserved\n') +f('sys/firmware/memmap/2/end', 0o664, b'0xfffff\n') +d('sys/firmware/memmap/12', 0o775) +f('sys/firmware/memmap/12/start', 0o664, b'0xfee00000\n') +f('sys/firmware/memmap/12/type', 0o664, b'reserved\n') +f('sys/firmware/memmap/12/end', 0o664, b'0xfee00fff\n') +d('sys/firmware/memmap/4', 0o775) +f('sys/firmware/memmap/4/start', 0o664, b'0x7fed0000\n') +f('sys/firmware/memmap/4/type', 0o664, b'ACPI Tables\n') +f('sys/firmware/memmap/4/end', 0o664, b'0x7fedefff\n') +d('sys/firmware/memmap/3', 0o775) +f('sys/firmware/memmap/3/start', 0o664, b'0x100000\n') +f('sys/firmware/memmap/3/type', 0o664, b'System RAM\n') +f('sys/firmware/memmap/3/end', 0o664, b'0x7fecffff\n') +d('sys/firmware/memmap/10', 0o775) +f('sys/firmware/memmap/10/start', 0o664, b'0xfed14000\n') +f('sys/firmware/memmap/10/type', 0o664, b'reserved\n') +f('sys/firmware/memmap/10/end', 0o664, b'0xfed19fff\n') +d('sys/firmware/memmap/0', 0o775) +f('sys/firmware/memmap/0/start', 0o664, b'0x0\n') +f('sys/firmware/memmap/0/type', 0o664, b'System RAM\n') +f('sys/firmware/memmap/0/end', 0o664, b'0x9efff\n') +d('sys/firmware/memmap/7', 0o775) +f('sys/firmware/memmap/7/start', 0o664, b'0xf0000000\n') +f('sys/firmware/memmap/7/type', 0o664, b'reserved\n') +f('sys/firmware/memmap/7/end', 0o664, b'0xf3ffffff\n') +d('sys/firmware/memmap/1', 0o775) +f('sys/firmware/memmap/1/start', 0o664, b'0x9f000\n') +f('sys/firmware/memmap/1/type', 0o664, b'reserved\n') +f('sys/firmware/memmap/1/end', 0o664, b'0x9ffff\n') +d('sys/firmware/memmap/13', 0o775) +f('sys/firmware/memmap/13/start', 0o664, b'0xff800000\n') +f('sys/firmware/memmap/13/type', 0o664, b'reserved\n') +f('sys/firmware/memmap/13/end', 0o664, b'0xffffffff\n') +d('sys/firmware/edd', 0o775) +d('sys/firmware/edd/int13_dev80', 0o775) +l('sys/firmware/edd/int13_dev80/pci_dev', '../../../devices/pci0000:00/0000:00:1f.2') +f('sys/firmware/edd/int13_dev80/version', 0o664, b'0x30\n') +f('sys/firmware/edd/int13_dev80/raw_data', 0o664, b'J\x00\x01\x00\xff?\x00\x00\x10\x00\x00\x00?\x00\x00\x000"\xa5\x0b\x00\x00\x00\x00\x00\x02\xc6\x00@\x00\xdd\xbe,\x00\x00\x00PCI ATA \x00\x1f\x02\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa5') +f('sys/firmware/edd/int13_dev80/sectors', 0o664, b'195371568\n') +f('sys/firmware/edd/int13_dev80/default_sectors_per_track', 0o664, b'63\n') +f('sys/firmware/edd/int13_dev80/legacy_max_cylinder', 0o664, b'1022\n') +f('sys/firmware/edd/int13_dev80/interface', 0o664, b'ATA \tdevice: 0\n') +f('sys/firmware/edd/int13_dev80/host_bus', 0o664, b'PCI \t00:1f.2 channel: 1\n') +f('sys/firmware/edd/int13_dev80/legacy_max_head', 0o664, b'239\n') +f('sys/firmware/edd/int13_dev80/mbr_signature', 0o664, b'0x00087b5f\n') +f('sys/firmware/edd/int13_dev80/info_flags', 0o664, b'DMA boundary error transparent\n') +f('sys/firmware/edd/int13_dev80/default_heads', 0o664, b'16\n') +f('sys/firmware/edd/int13_dev80/default_cylinders', 0o664, b'16383\n') +f('sys/firmware/edd/int13_dev80/legacy_sectors_per_track', 0o664, b'63\n') +f('sys/firmware/edd/int13_dev80/extensions', 0o664, b'''Fixed disk access +Enhanced Disk Drive support +''') +d('sys/firmware/acpi', 0o775) +d('sys/firmware/acpi/tables', 0o775) +f('sys/firmware/acpi/tables/DSDT', 0o664, b'''DSDT4\xd2\x00\x00\x01\x9aLENOVOTP-7I \x11\x00\x00MSFT\x0e\x00\x00\x01\x10 \\_PR_[\x83\x0bCPU0\x00\x10\x10\x00\x00\x06[\x83\x0bCPU1\x01\x10\x10\x00\x00\x06\x10\x83I\x0b\\_SB_\x14C2_INI\x00\xa0(\x93\\SCMP\\_OS_\rMicrosoft Windows\x00\x00p +\x01\\W98F\xa1C\x11\xa0F\t[\x12\\_OSI`\xa0,\\_OSI\rWindows 2001\x00p +\x01\\WNTFp +\x01\\WXPFp +\x00\\WSPV\xa0 \\_OSI\rWindows 2001 SP1\x00p +\x01\\WSPV\xa0 \\_OSI\rWindows 2001 SP2\x00p +\x02\\WSPV\xa0\x1c\\_OSI\rWindows 2006\x00p +\x01\\WVIS\xa1I\x07\xa0+\x93\\SCMP\\_OS_\rMicrosoft Windows NT\x00\x00p +\x01\\WNTF\xa1J\x04\xa0G\x04\x93\\SCMP\\_OS_\rMicrosoft WindowsME: Millennium Edition\x00\x00p +\x01\\WMEFp +\x01\\W98F\xa0\x12\x92\x95\\_REV +\x02p +\x01\\H8DRp +\x01\\OSIF\\/\x05_SB_PCI0LPC_MOU_MHIDp\\SRAH\\/\x03_SB_PCI0RID_\xa0\x1eVIGDp\\SRHE\\/\x04_SB_PCI0VID_RID_\xa1\x1ap\\SRHE\\/\x04_SB_PCI0AGP_RID_p\\SRE0\\/\x04_SB_PCI0EXP0RID_p\\SRE1\\/\x04_SB_PCI0EXP1RID_p\\SRE2\\/\x04_SB_PCI0EXP2RID_p\\SRE3\\/\x04_SB_PCI0EXP3RID_p\\SRU0\\/\x04_SB_PCI0USB0RID_p\\SRU1\\/\x04_SB_PCI0USB1RID_p\\SRU2\\/\x04_SB_PCI0USB2RID_p\\SRU3\\/\x04_SB_PCI0USB3RID_p\\SRU7\\/\x04_SB_PCI0USB7RID_p\\SRPB\\/\x04_SB_PCI0PCI1RID_p\\SRLP\\/\x04_SB_PCI0LPC_RID_p\\SRSA\\/\x04_SB_PCI0IDE0RID_p\\SRSA\\/\x04_SB_PCI0SATARID_p\\SRSM\\/\x04_SB_PCI0SMBURID_[\x82K\x11LNKA\x08_HID\x0cA\xd0\x0c\x0f\x08_UID +\x01\x14(_STA\x00\xa0\x1c\x92VPIR\\/\x04_SB_PCI0LPC_PIRA\xa4 +\t\xa1\x04\xa4 +\x0b\x08_PRS\x11\t +\x06#\xf8\x0e\x18y\x00\x14/_DIS\x00}\\/\x04_SB_PCI0LPC_PIRA +\x80\\/\x04_SB_PCI0LPC_PIRA\x08BUFA\x11\t +\x06#\x00\x00\x18y\x00\x8bBUFA +\x01IRA1\x14:_CRS\x00{\\/\x04_SB_PCI0LPC_PIRA +\x8f`\xa0\x0eVPIR`y +\x01`IRA1\xa1\x08p +\x00IRA1\xa4BUFA\x14F\x04_SRS\x01\x8bh +\x01IRA2\x82IRA2`{\\/\x04_SB_PCI0LPC_PIRA +pa}av`apa\\/\x04_SB_PCI0LPC_PIRA[\x82K\x11LNKB\x08_HID\x0cA\xd0\x0c\x0f\x08_UID +\x02\x14(_STA\x00\xa0\x1c\x92VPIR\\/\x04_SB_PCI0LPC_PIRB\xa4 +\t\xa1\x04\xa4 +\x0b\x08_PRS\x11\t +\x06#\xf8\x0e\x18y\x00\x14/_DIS\x00}\\/\x04_SB_PCI0LPC_PIRB +\x80\\/\x04_SB_PCI0LPC_PIRB\x08BUFB\x11\t +\x06#\x00\x00\x18y\x00\x8bBUFB +\x01IRB1\x14:_CRS\x00{\\/\x04_SB_PCI0LPC_PIRB +\x8f`\xa0\x0eVPIR`y +\x01`IRB1\xa1\x08p +\x00IRB1\xa4BUFB\x14F\x04_SRS\x01\x8bh +\x01IRB2\x82IRB2`{\\/\x04_SB_PCI0LPC_PIRB +pa}av`apa\\/\x04_SB_PCI0LPC_PIRB[\x82K\x11LNKC\x08_HID\x0cA\xd0\x0c\x0f\x08_UID +\x03\x14(_STA\x00\xa0\x1c\x92VPIR\\/\x04_SB_PCI0LPC_PIRC\xa4 +\t\xa1\x04\xa4 +\x0b\x08_PRS\x11\t +\x06#\xf8\x0e\x18y\x00\x14/_DIS\x00}\\/\x04_SB_PCI0LPC_PIRC +\x80\\/\x04_SB_PCI0LPC_PIRC\x08BUFC\x11\t +\x06#\x00\x00\x18y\x00\x8bBUFC +\x01IRC1\x14:_CRS\x00{\\/\x04_SB_PCI0LPC_PIRC +\x8f`\xa0\x0eVPIR`y +\x01`IRC1\xa1\x08p +\x00IRC1\xa4BUFC\x14F\x04_SRS\x01\x8bh +\x01IRC2\x82IRC2`{\\/\x04_SB_PCI0LPC_PIRC +pa}av`apa\\/\x04_SB_PCI0LPC_PIRC[\x82K\x11LNKD\x08_HID\x0cA\xd0\x0c\x0f\x08_UID +\x04\x14(_STA\x00\xa0\x1c\x92VPIR\\/\x04_SB_PCI0LPC_PIRD\xa4 +\t\xa1\x04\xa4 +\x0b\x08_PRS\x11\t +\x06#\xf8\x0e\x18y\x00\x14/_DIS\x00}\\/\x04_SB_PCI0LPC_PIRD +\x80\\/\x04_SB_PCI0LPC_PIRD\x08BUFD\x11\t +\x06#\x00\x00\x18y\x00\x8bBUFD +\x01IRD1\x14:_CRS\x00{\\/\x04_SB_PCI0LPC_PIRD +\x8f`\xa0\x0eVPIR`y +\x01`IRD1\xa1\x08p +\x00IRD1\xa4BUFD\x14F\x04_SRS\x01\x8bh +\x01IRD2\x82IRD2`{\\/\x04_SB_PCI0LPC_PIRD +pa}av`apa\\/\x04_SB_PCI0LPC_PIRD[\x82K\x11LNKE\x08_HID\x0cA\xd0\x0c\x0f\x08_UID +\x05\x14(_STA\x00\xa0\x1c\x92VPIR\\/\x04_SB_PCI0LPC_PIRE\xa4 +\t\xa1\x04\xa4 +\x0b\x08_PRS\x11\t +\x06#\xf8\x0e\x18y\x00\x14/_DIS\x00}\\/\x04_SB_PCI0LPC_PIRE +\x80\\/\x04_SB_PCI0LPC_PIRE\x08BUFE\x11\t +\x06#\x00\x00\x18y\x00\x8bBUFE +\x01IRE1\x14:_CRS\x00{\\/\x04_SB_PCI0LPC_PIRE +\x8f`\xa0\x0eVPIR`y +\x01`IRE1\xa1\x08p +\x00IRE1\xa4BUFE\x14F\x04_SRS\x01\x8bh +\x01IRE2\x82IRE2`{\\/\x04_SB_PCI0LPC_PIRE +pa}av`apa\\/\x04_SB_PCI0LPC_PIRE[\x82K\x11LNKF\x08_HID\x0cA\xd0\x0c\x0f\x08_UID +\x06\x14(_STA\x00\xa0\x1c\x92VPIR\\/\x04_SB_PCI0LPC_PIRF\xa4 +\t\xa1\x04\xa4 +\x0b\x08_PRS\x11\t +\x06#\xf8\x0e\x18y\x00\x14/_DIS\x00}\\/\x04_SB_PCI0LPC_PIRF +\x80\\/\x04_SB_PCI0LPC_PIRF\x08BUFF\x11\t +\x06#\x00\x00\x18y\x00\x8bBUFF +\x01IRF1\x14:_CRS\x00{\\/\x04_SB_PCI0LPC_PIRF +\x8f`\xa0\x0eVPIR`y +\x01`IRF1\xa1\x08p +\x00IRF1\xa4BUFF\x14F\x04_SRS\x01\x8bh +\x01IRF2\x82IRF2`{\\/\x04_SB_PCI0LPC_PIRF +pa}av`apa\\/\x04_SB_PCI0LPC_PIRF[\x82K\x11LNKG\x08_HID\x0cA\xd0\x0c\x0f\x08_UID +\x07\x14(_STA\x00\xa0\x1c\x92VPIR\\/\x04_SB_PCI0LPC_PIRG\xa4 +\t\xa1\x04\xa4 +\x0b\x08_PRS\x11\t +\x06#\xf8\x0e\x18y\x00\x14/_DIS\x00}\\/\x04_SB_PCI0LPC_PIRG +\x80\\/\x04_SB_PCI0LPC_PIRG\x08BUFG\x11\t +\x06#\x00\x00\x18y\x00\x8bBUFG +\x01IRG1\x14:_CRS\x00{\\/\x04_SB_PCI0LPC_PIRG +\x8f`\xa0\x0eVPIR`y +\x01`IRG1\xa1\x08p +\x00IRG1\xa4BUFG\x14F\x04_SRS\x01\x8bh +\x01IRG2\x82IRG2`{\\/\x04_SB_PCI0LPC_PIRG +pa}av`apa\\/\x04_SB_PCI0LPC_PIRG[\x82K\x11LNKH\x08_HID\x0cA\xd0\x0c\x0f\x08_UID +\x08\x14(_STA\x00\xa0\x1c\x92VPIR\\/\x04_SB_PCI0LPC_PIRH\xa4 +\t\xa1\x04\xa4 +\x0b\x08_PRS\x11\t +\x06#\xf8\x0e\x18y\x00\x14/_DIS\x00}\\/\x04_SB_PCI0LPC_PIRH +\x80\\/\x04_SB_PCI0LPC_PIRH\x08BUFH\x11\t +\x06#\x00\x00\x18y\x00\x8bBUFH +\x01IRH1\x14:_CRS\x00{\\/\x04_SB_PCI0LPC_PIRH +\x8f`\xa0\x0eVPIR`y +\x01`IRH1\xa1\x08p +\x00IRH1\xa4BUFH\x14F\x04_SRS\x01\x8bh +\x01IRH2\x82IRH2`{\\/\x04_SB_PCI0LPC_PIRH +pa}av`apa\\/\x04_SB_PCI0LPC_PIRH\x149VPIR\x01p +\x01`\xa0 +{h +\x80\x00p +\x00`\xa1!{h +\x0fa\xa0\t\x95a +\x03p +\x00`\xa1\x10\xa0\x0e\x91\x93a +\x08\x93a +\rp +\x00`\xa4`[\x82HhMEM_\x08_HID\x0cA\xd0\x0c\x01\x08ME98\x11B\x04 +>\x86\t\x00\x01\x00\x00\x00\x00\x00\x00 +\x00\x86\t\x00\x00\x00\x00\x0e\x00\x00\x00\x02\x00\x86\t\x00\x01\x00\x00\x10\x00\x00\x00\xee\x01\x86\t\x00\x00\x00\x00\xc0\xfe\x00\x00\x14\x00\x86\t\x00\x00\x00\x10\xd4\xfe\x00\xf0+\x01y\x00\x8aME98 +\x1cMEB0\x8aME98 + MEL0\x08MGAP\x11\x11 +\x0e\x86\t\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00y\x00\x8aMGAP +\x04MGPB\x8aMGAP +\x08MGPL\x08MEMS\x11B\r +\xce\x86\t\x00\x01\x00\x00\x00\x00\x00\x00 +\x00\x86\t\x00\x00\x00\x00\x0c\x00\x00\x00\x00\x00\x86\t\x00\x00\x00@\x0c\x00\x00\x00\x00\x00\x86\t\x00\x00\x00\x80\x0c\x00\x00\x00\x00\x00\x86\t\x00\x00\x00\xc0\x0c\x00\x00\x00\x00\x00\x86\t\x00\x00\x00\x00\r\x00\x00\x00\x00\x00\x86\t\x00\x00\x00@\r\x00\x00\x00\x00\x00\x86\t\x00\x00\x00\x80\r\x00\x00\x00\x00\x00\x86\t\x00\x00\x00\xc0\r\x00\x00\x00\x00\x00\x86\t\x00\x00\x00\x00\x0e\x00\x00\x00\x00\x00\x86\t\x00\x00\x00@\x0e\x00\x00\x00\x00\x00\x86\t\x00\x00\x00\x80\x0e\x00\x00\x00\x00\x00\x86\t\x00\x00\x00\xc0\x0e\x00\x00\x00\x00\x00\x86\t\x00\x00\x00\x00\x0f\x00\x00\x00\x01\x00\x86\t\x00\x01\x00\x00\x10\x00\x00\x00\xee\x01\x86\t\x00\x00\x00\x00\xc0\xfe\x00\x00\x14\x00\x86\t\x00\x00\x00\x10\xd4\xfe\x00\xf0+\x01y\x00\x8aMEMS +\x14MC0L\x8aMEMS + MC4L\x8aMEMS +,MC8L\x8aMEMS +8MCCL\x8aMEMS +DMD0L\x8aMEMS +PMD4L\x8aMEMS +\\MD8L\x8aMEMS +hMDCL\x8aMEMS +tME0L\x8aMEMS +\x80ME4L\x8aMEMS +\x8cME8L\x8aMEMS +\x98MECL\x8dMEMS +xMC0W\x8dMEMS +\xd8MC4W\x8dMEMS\x0b8\x01MC8W\x8dMEMS\x0b\x98\x01MCCW\x8dMEMS\x0b\xf8\x01MD0W\x8dMEMS\x0bX\x02MD4W\x8dMEMS\x0b\xb8\x02MD8W\x8dMEMS\x0b\x18\x03MDCW\x8dMEMS\x0bx\x03ME0W\x8dMEMS\x0b\xd8\x03ME4W\x8dMEMS\x0b8\x04ME8W\x8dMEMS\x0b\x98\x04MECW\x8aMEMS +\xacMEB1\x8aMEMS +\xb0MEL1\x8aMEMS +\xbcMEL2\x8aMEMS +\xc8MEL3\x14F=_CRS\x00\xa0M\x17\\W98Ft\\MEMXMEB0MEL0p\\GAPAMGPBp\\GAPLMGPL\xa0I\x0c\x90MGPBMGPLt\x87ME98 +\x02`\x08MBF0\x11\x02`r`\x87MGAP`\x08MBF1\x11\x02`pME98MBF0sMBF0MGAPMBF1\xa0O\x07\x92\x93\\/\x05_SB_PCI0LPC_TPM__STA +\x0ft\x87MBF1 +\x02`\x08MBF2\x11\x02`r`\x87\\/\x05_SB_PCI0LPC_TPM__CRS`\x08MBF3\x11\x02`pMBF1MBF2sMBF2\\/\x05_SB_PCI0LPC_TPM__CRSMBF3\xa4MBF3\xa1\x06\xa4MBF1\xa1I\x08\xa0O\x07\x92\x93\\/\x05_SB_PCI0LPC_TPM__STA +\x0ft\x87ME98 +\x02`\x08MBF4\x11\x02`r`\x87\\/\x05_SB_PCI0LPC_TPM__CRS`\x08MBF5\x11\x02`pME98MBF4sMBF4\\/\x05_SB_PCI0LPC_TPM__CRSMBF5\xa4MBF5\xa1\x06\xa4ME98{\\/\x03_SB_PCI0PAM1 +\x03`\xa0\x18`p\x0b\x00@MC0L\xa0\r{` +\x02\x00p +\x01MC0W{\\/\x03_SB_PCI0PAM1 +0`\xa0\x18`p\x0b\x00@MC4L\xa0\r{` + \x00p +\x01MC4W{\\/\x03_SB_PCI0PAM2 +\x03`\xa0\x18`p\x0b\x00@MC8L\xa0\r{` +\x02\x00p +\x01MC8W{\\/\x03_SB_PCI0PAM2 +0`\xa0\x18`p\x0b\x00@MCCL\xa0\r{` + \x00p +\x01MCCW{\\/\x03_SB_PCI0PAM3 +\x03`\xa0\x18`p\x0b\x00@MD0L\xa0\r{` +\x02\x00p +\x01MD0W{\\/\x03_SB_PCI0PAM3 +0`\xa0\x18`p\x0b\x00@MD4L\xa0\r{` + \x00p +\x01MD4W{\\/\x03_SB_PCI0PAM4 +\x03`\xa0\x18`p\x0b\x00@MD8L\xa0\r{` +\x02\x00p +\x01MD8W{\\/\x03_SB_PCI0PAM4 +0`\xa0\x18`p\x0b\x00@MDCL\xa0\r{` + \x00p +\x01MDCW{\\/\x03_SB_PCI0PAM5 +\x03`\xa0\x18`p\x0b\x00@ME0L\xa0\r{` +\x02\x00p +\x01ME0W{\\/\x03_SB_PCI0PAM5 +0`\xa0\x18`p\x0b\x00@ME4L\xa0\r{` + \x00p +\x01ME4W{\\/\x03_SB_PCI0PAM6 +\x03`\xa0\x18`p\x0b\x00@ME8L\xa0\r{` +\x02\x00p +\x01ME8W{\\/\x03_SB_PCI0PAM6 +0`\xa0\x18`p\x0b\x00@MECL\xa0\r{` + \x00p +\x01MECWt\\MEMXMEB1MEL1\xa0-\x92\x93\\/\x05_SB_PCI0LPC_TPM__STA +\x0fp\x0c\x00\x00@\x01MEL2p +\x00MEL3\xa4MEMS[\x82I\rLID_\x08_HID\x0cA\xd0\x0c\r\x14<_LID\x00\xa0\x1e\\H8DR\xa4\\/\x05_SB_PCI0LPC_EC__HPLD\xa1\x16\xa0\x0f{\\RBEC +F +\x04\x00\xa4 +\x01\xa1\x04\xa4 +\x00\x14&_PRW\x00\xa0\x15\x90\\W98F\x92\\WMEF\xa4\x12\x06\x02 +\x18 +\x04\xa1\t\xa4\x12\x06\x02 +\x18 +\x03\x14D\x06_PSW\x01\xa0?\\H8DR\xa0\x1chp +\x01\\/\x05_SB_PCI0LPC_EC__HWLO\xa1\x1bp +\x00\\/\x05_SB_PCI0LPC_EC__HWLO\xa1\x1c\xa0\rh\\MBEC +2 +\xff +\x04\xa1\x0c\\MBEC +2 +\xfb +\x00[\x82L\tSLPB\x08_HID\x0cA\xd0\x0c\x0e\x14&_PRW\x00\xa0\x15\x90\\W98F\x92\\WMEF\xa4\x12\x06\x02 +\x18 +\x04\xa1\t\xa4\x12\x06\x02 +\x18 +\x03\x14D\x06_PSW\x01\xa0?\\H8DR\xa0\x1chp +\x01\\/\x05_SB_PCI0LPC_EC__HWFN\xa1\x1bp +\x00\\/\x05_SB_PCI0LPC_EC__HWFN\xa1\x1c\xa0\rh\\MBEC +2 +\xff +\x10\xa1\x0c\\MBEC +2 +\xef +\x00[\x82\x8fH\x07PCI0[\x82\x8a\x96\x04LPC_\x08_ADR\x0c\x00\x00\x1f\x00\x08_S3D +\x03\x08RID_ +\x00[\x82M\x1aSIO_\x08_HID\x0cA\xd0\x0c\x02\x08_UID +\x00\x08SCRS\x11B\x10 +\xfeG\x01\x10\x00\x10\x00\x01\x10G\x01\x90\x00\x90\x00\x01\x10G\x01$\x00$\x00\x01\x02G\x01(\x00(\x00\x01\x02G\x01,\x00,\x00\x01\x02G\x010\x000\x00\x01\x02G\x014\x004\x00\x01\x02G\x018\x008\x00\x01\x02G\x01<\x00<\x00\x01\x02G\x01\xa4\x00\xa4\x00\x01\x02G\x01\xa8\x00\xa8\x00\x01\x02G\x01\xac\x00\xac\x00\x01\x02G\x01\xb0\x00\xb0\x00\x01\x06G\x01\xb8\x00\xb8\x00\x01\x02G\x01\xbc\x00\xbc\x00\x01\x02G\x01P\x00P\x00\x01\x04G\x01r\x00r\x00\x01\x06G\x01N\x16N\x16\x01\x02G\x01.\x00.\x00\x01\x02G\x01\x00\x10\x00\x10\x01\x80G\x01\x80\x11\x80\x11\x01@G\x01\x00\x08\x00\x08\x01\x10G\x01\xe0\x15\xe0\x15\x01\x10G\x01\x00\x16\x00\x16\x01`\x86\t\x00\x01\x00\x00\x00\xf0\x00\x00\x00\x04\x86\t\x00\x01\x00\xc0\xd1\xfe\x00@\x00\x00\x86\t\x00\x01\x00@\xd1\xfe\x00@\x00\x00\x86\t\x00\x01\x00\x80\xd1\xfe\x00\x10\x00\x00\x86\t\x00\x01\x00\x90\xd1\xfe\x00\x10\x00\x00y\x00\x14M\x08_CRS\x00\xa0 \x93\\/\x05_SB_PCI0LPC_TPM__STA +\x0f\xa4SCRS\xa1D\x06t\x87SCRS +\x02`\x08BUF0\x11\x02`r`\x87\\/\x05_SB_PCI0LPC_TPM__CRS`\x08BUF1\x11\x02`pSCRSBUF0sBUF0\\/\x05_SB_PCI0LPC_TPM__CRSBUF1\xa4BUF1[\x80LPCS\x02 +\x00\x0b\x00\x01[\x81G +LPCS\x00\x00@0PIRA\x08PIRB\x08PIRC\x08PIRD\x08SERQ\x08\x00\x18PIRE\x08PIRF\x08PIRG\x08PIRH\x08\x00@ +XU1A\x03\x00\x01XU2A\x03\x00\x01XPA_\x02\x00\x02XFA_\x01\x00\x03XU1E\x01XU2E\x01XPE_\x01XFE_\x01\x00\x0cXG1E\x01\x00\x06XG1A\t\x00\x10XG2E\x01\x00\x03XG2A\x0c\x00@\x0b\x00\x02CLKR\x01GYEN\x01\x00\x03C4C3\x01\x00\x02EXPE\x01\x00\x05[\x80LPIO\x01\x0b\x80\x11 +@[\x81O +LPIO\x03GU00\x08GU01\x08GU02\x08GU03\x08GI00\x08GI01\x08GI02\x08GI03\x08\x00 GL00\x08GL01\x08GL02\x08GL03\x08\x00@\x04GB00\x08GB01\x08GB02\x08GB03\x08\x00@\x08GV00\x08GV01\x08GV02\x08GV03\x08GU04\x08GU05\x08GU06\x08GU07\x08GI04\x08GI05\x08GI06\x08GI07\x08GL04\x08GL05\x08GL06\x08GL07\x08[\x80PMIO\x01\x0b\x00\x10 +\x80[\x81\x10PMIO\x00\x00@!\x00\x01SWGE\x01[\x823PIC_\x08_HID\x0bA\xd0\x08_CRS\x11 +\x1dG\x01 \x00 \x00\x01\x02G\x01\xa0\x00\xa0\x00\x01\x02G\x01\xd0\x04\xd0\x04\x01\x02"\x04\x00y\x00[\x82%TIMR\x08_HID\x0cA\xd0\x01\x00\x08_CRS\x11\x10 +\rG\x01@\x00@\x00\x01\x04"\x01\x00y\x00[\x82B\x05HPET\x08_HID\x0cA\xd0\x01\x03\x14*_STA\x00\xa0\x08W98F\xa4 +\x00\xa1\x17\xa0\x10\x90\\WNTF\x92\\WXPF\xa4 +\x00\xa1\x04\xa4 +\x0f\xa4 +\x00\x08_CRS\x11\x11 +\x0e\x86\t\x00\x00\x00\x00\xd0\xfe\x00\x04\x00\x00y\x00[\x825DMAC\x08_HID\x0cA\xd0\x02\x00\x08_CRS\x11 +\x1dG\x01\x00\x00\x00\x00\x01\x10G\x01\x80\x00\x80\x00\x01\x10G\x01\xc0\x00\xc0\x00\x01 *\x10\x05y\x00[\x82"SPKR\x08_HID\x0cA\xd0\x08\x00\x08_CRS\x11\r + +G\x01a\x00a\x00\x01\x01y\x00[\x82%FPU_\x08_HID\x0cA\xd0\x0c\x04\x08_CRS\x11\x10 +\rG\x01\xf0\x00\xf0\x00\x01\x01"\x00 y\x00[\x82%RTC_\x08_HID\x0cA\xd0\x0b\x00\x08_CRS\x11\x10 +\rG\x01p\x00p\x00\x01\x02"\x00\x01y\x00[\x82-KBD_\x08_HID\x0cA\xd0\x03\x03\x08_CRS\x11\x18 +\x15G\x01`\x00`\x00\x01\x01G\x01d\x00d\x00\x01\x01"\x02\x00y\x00[\x82J\x05MOU_\x08_HID\x0c$M7\x80\x08_CID\x0cA\xd0\x0f\x13\x08_CRS\x11\x08 +\x05"\x00\x10y\x00\x141MHID\x00\xa0\x1e\\/\x04_SB_PCI0LPC_PADDp\x0c$M7\x80_HID\xa1\x0bp\x0c$M\x00W_HID[\x80IMGA\x01\x0b\xe0\x15 +\x10[\x81!IMGA\x01\x00\x08\x00\x08\x00\x08WAKR\x10\x008GAIX\x08\x00\x08GADT\x08\x00\x08[\x86I\x0bGAIXGADT\x01\x00H VAUX\x02\x00\x01WOLE\x01\x00\x04\x00@\x07\x00\x01CBPW\x01CBSL\x01VDPW\x01PDNE\x01BLPL\x01\x00\x01LEDS\x01TP4R\x01PADR\x01BPAD\x01\x00\x01\x00\x01PADD\x01\x00 +DLAN\x01\x00G\x06BUSC\x01BUSD\x01\x00\x01DSCI\x01\x00\x04EPWG\x01\x00\x02DSCS\x01\x00\x04CSON\x01URST\x01\x00N\x06GDR0\x01GDR1\x01GDR2\x01\x00\x05GDT0\x01GDT1\x01GDT2\x01\x00E(GAID\x08[\x80NCFG\x01 +. +\x02[\x81\x10NCFG\x01INDX\x08DATA\x08[\x86B +INDXDATA\x01\x008LDN_\x08\x00@\x0cSIOD\x08\x00\x08SCF2\x08\x00\x08SCF4\x08\x00\x02PPSE\x01\x00\x04PNF_\x01FDCD\x01PPD_\x01SP2D\x01SP1D\x01\x00\x01GPSR\x02\x00\x01SRID\x08\x00\x08SCF9\x08\x00\x08\x00(LDA_\x01\x00\x07\x00H\x17IOHI\x08IOLW\x08\x00@\x07IRQN\x04IRQW\x01\x00\x03IRQT\x01IRQL\x01\x00\x06\x00\x10DMA0\x03\x00\x05DMA1\x03\x00\x05[\x86#INDXDATA\x01\x00@xPTRS\x01PPMC\x01\x00\x02PERA\x01PMDS\x03[\x86#INDXDATA\x01\x00@xSTRS\x01SPMC\x01SBSY\x01\x00\x04SBSE\x01[\x86\x1cINDXDATA\x01\x00@xGPPS\x08GPPC\x08GPER\x08[\x80CFGS\x01\x0bN\x16 +\x02[\x81\x10CFGS\x01NDXS\x08ATAS\x08[\x86J +NDXSATAS\x01\x008LDNS\x08\x00@\x0c\x00\x08\x00\x08\x00\x08\x00\x08\x00\x08\x00\x02PSES\x01\x00\x04PNFS\x01DCDS\x01PPDS\x01SP2S\x01SP1S\x01\x00\x01PSRS\x02\x00\x01RIDS\x08\x00\x08CCSS\x02CCES\x01MCSS\x01MESS\x01\x00\x03\x00\x08\x00(LDAS\x01\x00\x07\x00H\x17OHIS\x08OLWS\x08\x00@\x07RQNS\x04RQWS\x01\x00\x03RQTS\x01RQLS\x01\x00\x06\x00\x10MA0S\x03\x00\x05MA1S\x03\x00\x05[\x86#NDXSATAS\x01\x00@xTRSS\x01PMCS\x01BSYS\x01\x00\x04SESS\x01[\x80NSDL\x01\x0bL\x16 +\x01[\x81\x0bNSDL\x01DLPC\x08[\x80NSIO\x01\x0b\x80\x16 +\x0c[\x81\'NSIO\x01DRST\x01DLPD\x01\x00\x06\x00\x04DKI0\x01\x00\x03\x008DKI1\x01DKI2\x01[\x80DSIO\x01\x0b \x16 +\x0c[\x81\x0fDSIO\x01\x00\x01DUSB\x01\x00\x06[\x82K\x18FDC_\x08_HID\x0cA\xd0\x07\x00\x14 _STA\x00\xa0\x14\\LFDC\xa0\x08XFE_\xa4 +\x0f\xa1\x04\xa4 +\r\xa1\x04\xa4 +\x00\x14)_DIS\x00p +\x00XFE_p +\x00LDN_p +\x00IRQNp +\x00LDA_p +\x01FDCD\x08_CRS\x11\x1b +\x18G\x01\xf0\x03\xf0\x03\x01\x06G\x01\xf7\x03\xf7\x03\x01\x01"@\x00*\x04\x00y\x00\x08_PRS\x11\x1b +\x18G\x01\xf0\x03\xf0\x03\x01\x06G\x01\xf7\x03\xf7\x03\x01\x01"@\x00*\x04\x00y\x00\x14M\x04_SRS\x01p +\x00LDN_p +\x00LDA_p +\x03IOHIp +\xf0IOLWp +\x06IRQNp +\x02DMA0p +\x00FDCDp +\x01LDA_p +\x00XFA_p +\x01XFE_\x14\x1b_PSC\x00p +\x00LDN_\xa0\x08LDA_\xa4 +\x00\xa1\x04\xa4 +\x03\x14\x14_PS0\x00p +\x00LDN_p +\x01LDA_\x14\x14_PS3\x00p +\x00LDN_p +\x00LDA_\x14#SLFD\x01\xa0\x0eh\\MISA\x0b\xf3\x03 +\xf3 +\x04\xa1\r\\MISA\x0b\xf3\x03 +\xf3 +\x00[\x824FDD0\x08_ADR +\x00\x08_FDI\x12"\x10 +\x00 +\x04 +O +\x12 +\x01 +\xdf +\x02 +% +\x02 +\x12 +\x1b +\xff +l +\xf6 +\x0f +\x05\x10\x86/\x01\\/\x03_SB_PCI0LPC_[\x82A-LURT\x08_UID +\x00\x14-_STA\x00\xa0\x16\x93\\/\x03_SB_LCIO_STA +\x00\xa4 +\x00\xa1\x0f\xa0\x08XU1E\xa4 +\x0f\xa1\x04\xa4 +\r\x08_HID\x0cA\xd0\x05\x01\x08_PRW\x12\x06\x02 +\x18 +\x03\x14D\x06_PSW\x01\xa0?\\H8DR\xa0\x1chp +\x01\\/\x05_SB_PCI0LPC_EC__HWRI\xa1\x1bp +\x00\\/\x05_SB_PCI0LPC_EC__HWRI\xa1\x1c\xa0\rh\\MBEC +2 +\xff +@\xa1\x0c\\MBEC +2 +\xbf +\x00\x14)_DIS\x00p +\x00XU1Ep +\x03LDN_p +\x00IRQNp +\x00LDA_p +\x01SP1D\x08U1BF\x11\x10 +\rG\x01\x00\x00\x00\x00\x01\x08"\x00\x00y\x00\x8bU1BF +\x02U1MN\x8bU1BF +\x04U1MX\x8bU1BF +\tU1IQ\x14J\x04_CRS\x00p +\x03LDN_}yIOHI +\x08\x00IOLW`p`U1MNp`U1MXpIRQN`\xa0\r`y +\x01IRQNU1IQ\xa1\x08p +\x00U1IQ\xa4U1BF\x08_PRS\x11O\x06 +k1\x00G\x01\xf8\x03\xf8\x03\x01\x08"\x10\x001\x01G\x01\xf8\x02\xf8\x02\x01\x08"\x08\x001\x01G\x01\xe8\x03\xe8\x03\x01\x08"\x10\x001\x01G\x01\xe8\x02\xe8\x02\x01\x08"\x08\x001\x02G\x01\xf8\x03\xf8\x03\x01\x08"\xa8\x001\x02G\x01\xf8\x02\xf8\x02\x01\x08"\xb0\x001\x02G\x01\xe8\x03\xe8\x03\x01\x08"\xa8\x001\x02G\x01\xe8\x02\xe8\x02\x01\x08"\xb0\x008y\x00\x14O\x0c_SRS\x01\x8ch +\x02RUIL\x8ch +\x03RUIH\x8bh +\x02RUIO\x8bh +\tRUIQp +\x03LDN_p +\x00LDA_pRUILIOLWpRUIHIOHI\xa0\x12RUIQ\x82RUIQ`pv`IRQN\xa1\x08p +\x00IRQNp +\x00SP1Dp +\x01LDA_\xa0\x10\x93RUIO\x0b\xf8\x03p +\x00XU1A\xa1E\x04\xa0\x10\x93RUIO\x0b\xf8\x02p +\x01XU1A\xa11\xa0\x10\x93RUIO\x0b\xe8\x03p +\x07XU1A\xa1\x1e\xa0\x10\x93RUIO\x0b\xe8\x02p +\x05XU1A\xa1\x0b[2\x02\x00\x00\x02\x90\x0b\xb5\x01p +\x01XU1E\x14\x1b_PSC\x00p +\x03LDN_\xa0\x08LDA_\xa4 +\x00\xa1\x04\xa4 +\x03\x14\x06_PS0\x00\x14\x06_PS3\x00[\x82G-DURT\x08_UID +\x01\x143_STA\x00\xa0\x1c\x92{ +\x08\\/\x04_SB_PCI0LPC_DLPC\x00\xa4 +\x00\xa1\x0f\xa0\x08XU1E\xa4 +\x0f\xa1\x04\xa4 +\r\x08_HID\x0cA\xd0\x05\x01\x08_PRW\x12\x06\x02 +\x18 +\x03\x14D\x06_PSW\x01\xa0?\\H8DR\xa0\x1chp +\x01\\/\x05_SB_PCI0LPC_EC__HWRI\xa1\x1bp +\x00\\/\x05_SB_PCI0LPC_EC__HWRI\xa1\x1c\xa0\rh\\MBEC +2 +\xff +@\xa1\x0c\\MBEC +2 +\xbf +\x00\x14)_DIS\x00p +\x00XU1Ep +\x03LDN_p +\x00IRQNp +\x00LDA_p +\x01SP1D\x08U1BF\x11\x10 +\rG\x01\x00\x00\x00\x00\x01\x08"\x00\x00y\x00\x8bU1BF +\x02U1MN\x8bU1BF +\x04U1MX\x8bU1BF +\tU1IQ\x14J\x04_CRS\x00p +\x03LDN_}yIOHI +\x08\x00IOLW`p`U1MNp`U1MXpIRQN`\xa0\r`y +\x01IRQNU1IQ\xa1\x08p +\x00U1IQ\xa4U1BF\x08_PRS\x11O\x06 +k1\x00G\x01\xf8\x03\xf8\x03\x01\x08"\x10\x001\x01G\x01\xf8\x02\xf8\x02\x01\x08"\x08\x001\x01G\x01\xe8\x03\xe8\x03\x01\x08"\x10\x001\x01G\x01\xe8\x02\xe8\x02\x01\x08"\x08\x001\x02G\x01\xf8\x03\xf8\x03\x01\x08"\xa8\x001\x02G\x01\xf8\x02\xf8\x02\x01\x08"\xb0\x001\x02G\x01\xe8\x03\xe8\x03\x01\x08"\xa8\x001\x02G\x01\xe8\x02\xe8\x02\x01\x08"\xb0\x008y\x00\x14O\x0c_SRS\x01\x8ch +\x02RUIL\x8ch +\x03RUIH\x8bh +\x02RUIO\x8bh +\tRUIQp +\x03LDN_p +\x00LDA_pRUILIOLWpRUIHIOHI\xa0\x12RUIQ\x82RUIQ`pv`IRQN\xa1\x08p +\x00IRQNp +\x00SP1Dp +\x01LDA_\xa0\x10\x93RUIO\x0b\xf8\x03p +\x00XU1A\xa1E\x04\xa0\x10\x93RUIO\x0b\xf8\x02p +\x01XU1A\xa11\xa0\x10\x93RUIO\x0b\xe8\x03p +\x07XU1A\xa1\x1e\xa0\x10\x93RUIO\x0b\xe8\x02p +\x05XU1A\xa1\x0b[2\x02\x00\x00\x02\x90\x0b\xb5\x01p +\x01XU1E\x14\x1b_PSC\x00p +\x03LDN_\xa0\x08LDA_\xa4 +\x00\xa1\x04\xa4 +\x03\x14\x06_PS0\x00\x14\x06_PS3\x00[\x82L1LLPT\x08_UID +\x00\x14=_STA\x00\xa0\x16\x93\\/\x03_SB_LCIO_STA +\x00\xa4 +\x00\xa1\x1f\xa0\x18\x92\x93\\PMOD +\x03\xa0\x08XPE_\xa4 +\x0f\xa1\x04\xa4 +\r\xa1\x04\xa4 +\x00\x08_HID\x0cA\xd0\x04\x00\x14)_DIS\x00p +\x00XPE_p +\x01LDN_p +\x00IRQNp +\x00LDA_p +\x01PPD_\x08PPBF\x11\x10 +\rG\x01\x00\x00\x00\x00\x01\x00"\x00\x00y\x00\x8bPPBF +\x02LPN0\x8bPPBF +\x04LPX0\x8cPPBF +\x07LPL0\x8bPPBF +\tLPIQ\x14@\x07_CRS\x00\xa0\x0e\x93\\PMOD +\x03\xa4PPBFp +\x01LDN_}yIOHI +\x08\x00IOLW`p`LPN0p`LPX0\xa0\r\x93`\x0b\xbc\x03p +\x03LPL0\xa1\x08p +\x08LPL0pIRQN`\xa0\r`y +\x01IRQNLPIQ\xa1\x08p +\x00LPIQ\xa4PPBF\x14\x19_PRS\x00\xa0\x0b\\PMOD\xa4PEPP\xa1\x06\xa4PLPT\x08PLPT\x11O\x04 +K0G\x01\xbc\x03\xbc\x03\x01\x03"\x80\x000G\x01x\x03x\x03\x01\x08"\x80\x000G\x01x\x02x\x02\x01\x08" \x000G\x01\xbc\x03\xbc\x03\x01\x03" \x000G\x01x\x03x\x03\x01\x08" \x000G\x01x\x02x\x02\x01\x08"\x80\x008y\x00\x08PEPP\x116 +30G\x01x\x03x\x03\x01\x08"\x80\x000G\x01x\x02x\x02\x01\x08" \x000G\x01x\x03x\x03\x01\x08" \x000G\x01x\x02x\x02\x01\x08"\x80\x008y\x00\x14H\x0f_SRS\x01\x8ch +\x02RLIL\x8ch +\x03RLIH\x8bh +\x02RLIO\x8bh +\tRLIQp +\x01LDN_p +\x00LDA_pRLILIOLWpRLIHIOHI\xa0\x12RLIQ\x82RLIQ`pv`IRQN\xa1\x08p +\x00IRQN\xa0 \x93\\PMOD +\x00\xa0\r\\PDIRp +\x01PMDS\xa1\x08p +\x00PMDS\xa1\x1b\xa0\x10\x93\\PMOD +\x01p +\x02PMDS\xa1\x08p +\x03PMDSp +\x00PPD_p +\x01LDA_\xa0\x10\x93RLIO\x0bx\x03p +\x00XPA_\xa11\xa0\x10\x93RLIO\x0bx\x02p +\x01XPA_\xa1\x1e\xa0\x10\x93RLIO\x0b\xbc\x03p +\x02XPA_\xa1\x0b[2\x02\x00\x00\x02\x90\x0b\xce\x01p +\x01XPE_\x14\x1b_PSC\x00p +\x01LDN_\xa0\x08LDA_\xa4 +\x00\xa1\x04\xa4 +\x03\x14\x14_PS0\x00p +\x01LDN_p +\x01LDA_\x14\x14_PS3\x00p +\x01LDN_p +\x00LDA_[\x82C2DLPT\x08_UID +\x01\x14D\x04_STA\x00\xa0\x1c\x92{ +\x08\\/\x04_SB_PCI0LPC_DLPC\x00\xa4 +\x00\xa1\x1f\xa0\x18\x92\x93\\PMOD +\x03\xa0\x08XPE_\xa4 +\x0f\xa1\x04\xa4 +\r\xa1\x04\xa4 +\x00\x08_HID\x0cA\xd0\x04\x00\x14)_DIS\x00p +\x00XPE_p +\x01LDN_p +\x00IRQNp +\x00LDA_p +\x01PPD_\x08PPBF\x11\x10 +\rG\x01\x00\x00\x00\x00\x01\x00"\x00\x00y\x00\x8bPPBF +\x02LPN0\x8bPPBF +\x04LPX0\x8cPPBF +\x07LPL0\x8bPPBF +\tLPIQ\x14@\x07_CRS\x00\xa0\x0e\x93\\PMOD +\x03\xa4PPBFp +\x01LDN_}yIOHI +\x08\x00IOLW`p`LPN0p`LPX0\xa0\r\x93`\x0b\xbc\x03p +\x03LPL0\xa1\x08p +\x08LPL0pIRQN`\xa0\r`y +\x01IRQNLPIQ\xa1\x08p +\x00LPIQ\xa4PPBF\x14\x19_PRS\x00\xa0\x0b\\PMOD\xa4PEPP\xa1\x06\xa4PLPT\x08PLPT\x11O\x04 +K0G\x01\xbc\x03\xbc\x03\x01\x03"\x80\x000G\x01x\x03x\x03\x01\x08"\x80\x000G\x01x\x02x\x02\x01\x08" \x000G\x01\xbc\x03\xbc\x03\x01\x03" \x000G\x01x\x03x\x03\x01\x08" \x000G\x01x\x02x\x02\x01\x08"\x80\x008y\x00\x08PEPP\x116 +30G\x01x\x03x\x03\x01\x08"\x80\x000G\x01x\x02x\x02\x01\x08" \x000G\x01x\x03x\x03\x01\x08" \x000G\x01x\x02x\x02\x01\x08"\x80\x008y\x00\x14H\x0f_SRS\x01\x8ch +\x02RLIL\x8ch +\x03RLIH\x8bh +\x02RLIO\x8bh +\tRLIQp +\x01LDN_p +\x00LDA_pRLILIOLWpRLIHIOHI\xa0\x12RLIQ\x82RLIQ`pv`IRQN\xa1\x08p +\x00IRQN\xa0 \x93\\PMOD +\x00\xa0\r\\PDIRp +\x01PMDS\xa1\x08p +\x00PMDS\xa1\x1b\xa0\x10\x93\\PMOD +\x01p +\x02PMDS\xa1\x08p +\x03PMDSp +\x00PPD_p +\x01LDA_\xa0\x10\x93RLIO\x0bx\x03p +\x00XPA_\xa11\xa0\x10\x93RLIO\x0bx\x02p +\x01XPA_\xa1\x1e\xa0\x10\x93RLIO\x0b\xbc\x03p +\x02XPA_\xa1\x0b[2\x02\x00\x00\x02\x90\x0b\xce\x01p +\x01XPE_\x14\x1b_PSC\x00p +\x01LDN_\xa0\x08LDA_\xa4 +\x00\xa1\x04\xa4 +\x03\x14\x14_PS0\x00p +\x01LDN_p +\x01LDA_\x14\x14_PS3\x00p +\x01LDN_p +\x00LDA_[\x82E7LECP\x08_UID +\x00\x14<_STA\x00\xa0\x16\x93\\/\x03_SB_LCIO_STA +\x00\xa4 +\x00\xa1\x1e\xa0\x17\x93\\PMOD +\x03\xa0\x08XPE_\xa4 +\x0f\xa1\x04\xa4 +\r\xa1\x04\xa4 +\x00\x08_HID\x0cA\xd0\x04\x01\x14)_DIS\x00p +\x00XPE_p +\x01LDN_p +\x00IRQNp +\x00LDA_p +\x01PPD_\x08EPBF\x11\x1b +\x18G\x01\x00\x00\x00\x00\x01\x00G\x01\x00\x00\x00\x00\x01\x00"\x00\x00*\x00\x00y\x00\x8bEPBF +\x02ECN0\x8bEPBF +\x04ECX0\x8cEPBF +\x07ECL0\x8bEPBF + +ECN1\x8bEPBF +\x0cECX1\x8cEPBF +\x0fECL1\x8bEPBF +\x11ECIQ\x8bEPBF +\x14ECDQ\x14N +_CRS\x00\xa0\x0f\x92\x93\\PMOD +\x03\xa4EPBFp +\x01LDN_}yIOHI +\x08\x00IOLW`p`ECN0p`ECX0r`\x0b\x00\x04ECN1r`\x0b\x00\x04ECX1\xa0\x14\x93`\x0b\xbc\x03p +\x03ECL0p +\x03ECL1\xa1\x0fp +\x08ECL0p +\x08ECL1pIRQN`\xa0\r`y +\x01IRQNECIQ\xa1\x08p +\x00ECIQpDMA0`\xa0\r\x95` +\x04y +\x01`ECDQ\xa1\x08p +\x00ECDQ\xa4EPBF\x08_PRS\x11A\t +\x8d0G\x01x\x03x\x03\x01\x08G\x01x\x07x\x07\x01\x08"\x80\x00*\x0b\x000G\x01x\x02x\x02\x01\x08G\x01x\x06x\x06\x01\x08" \x00*\x0b\x000G\x01\xbc\x03\xbc\x03\x01\x03G\x01\xbc\x07\xbc\x07\x01\x03"\x80\x00*\x0b\x000G\x01x\x03x\x03\x01\x08G\x01x\x07x\x07\x01\x08" \x00*\x0b\x000G\x01x\x02x\x02\x01\x08G\x01x\x06x\x06\x01\x08"\x80\x00*\x0b\x000G\x01\xbc\x03\xbc\x03\x01\x03G\x01\xbc\x07\xbc\x07\x01\x03" \x00*\x0b\x008y\x00\x14A\x0f_SRS\x01\x8ch +\x02RLIL\x8ch +\x03RLIH\x8bh +\x02RLIO\x8bh +\x11RLIQ\x8ch +\x14RLDQp +\x01LDN_p +\x00LDA_p +\x07PMDSp +\x01PERApRLILIOLWpRLIHIOHI\xa0\x12RLIQ\x82RLIQ`pv`IRQN\xa1\x08p +\x00IRQN\xa0\x16{RLDQ +\x0f\x00\x82RLDQ`pv`DMA0\xa1\x08p +\x04DMA0p +\x00PPD_p +\x01LDA_\xa0\x10\x93RLIO\x0bx\x03p +\x00XPA_\xa11\xa0\x10\x93RLIO\x0bx\x02p +\x01XPA_\xa1\x1e\xa0\x10\x93RLIO\x0b\xbc\x03p +\x02XPA_\xa1\x0b[2\x02\x00\x00\x02\x90\x0b\x9f\x01p +\x01XPE_\x14\x1b_PSC\x00p +\x01LDN_\xa0\x08LDA_\xa4 +\x00\xa1\x04\xa4 +\x03\x14\x14_PS0\x00p +\x01LDN_p +\x01LDA_\x14\x14_PS3\x00p +\x01LDN_p +\x00LDA_[\x82L7DECP\x08_UID +\x01\x14C\x04_STA\x00\xa0\x1c\x92{ +\x08\\/\x04_SB_PCI0LPC_DLPC\x00\xa4 +\x00\xa1\x1e\xa0\x17\x93\\PMOD +\x03\xa0\x08XPE_\xa4 +\x0f\xa1\x04\xa4 +\r\xa1\x04\xa4 +\x00\x08_HID\x0cA\xd0\x04\x01\x14)_DIS\x00p +\x00XPE_p +\x01LDN_p +\x00IRQNp +\x00LDA_p +\x01PPD_\x08EPBF\x11\x1b +\x18G\x01\x00\x00\x00\x00\x01\x00G\x01\x00\x00\x00\x00\x01\x00"\x00\x00*\x00\x00y\x00\x8bEPBF +\x02ECN0\x8bEPBF +\x04ECX0\x8cEPBF +\x07ECL0\x8bEPBF + +ECN1\x8bEPBF +\x0cECX1\x8cEPBF +\x0fECL1\x8bEPBF +\x11ECIQ\x8bEPBF +\x14ECDQ\x14N +_CRS\x00\xa0\x0f\x92\x93\\PMOD +\x03\xa4EPBFp +\x01LDN_}yIOHI +\x08\x00IOLW`p`ECN0p`ECX0r`\x0b\x00\x04ECN1r`\x0b\x00\x04ECX1\xa0\x14\x93`\x0b\xbc\x03p +\x03ECL0p +\x03ECL1\xa1\x0fp +\x08ECL0p +\x08ECL1pIRQN`\xa0\r`y +\x01IRQNECIQ\xa1\x08p +\x00ECIQpDMA0`\xa0\r\x95` +\x04y +\x01`ECDQ\xa1\x08p +\x00ECDQ\xa4EPBF\x08_PRS\x11A\t +\x8d0G\x01x\x03x\x03\x01\x08G\x01x\x07x\x07\x01\x08"\x80\x00*\x0b\x000G\x01x\x02x\x02\x01\x08G\x01x\x06x\x06\x01\x08" \x00*\x0b\x000G\x01\xbc\x03\xbc\x03\x01\x03G\x01\xbc\x07\xbc\x07\x01\x03"\x80\x00*\x0b\x000G\x01x\x03x\x03\x01\x08G\x01x\x07x\x07\x01\x08" \x00*\x0b\x000G\x01x\x02x\x02\x01\x08G\x01x\x06x\x06\x01\x08"\x80\x00*\x0b\x000G\x01\xbc\x03\xbc\x03\x01\x03G\x01\xbc\x07\xbc\x07\x01\x03" \x00*\x0b\x008y\x00\x14A\x0f_SRS\x01\x8ch +\x02RLIL\x8ch +\x03RLIH\x8bh +\x02RLIO\x8bh +\x11RLIQ\x8ch +\x14RLDQp +\x01LDN_p +\x00LDA_p +\x07PMDSp +\x01PERApRLILIOLWpRLIHIOHI\xa0\x12RLIQ\x82RLIQ`pv`IRQN\xa1\x08p +\x00IRQN\xa0\x16{RLDQ +\x0f\x00\x82RLDQ`pv`DMA0\xa1\x08p +\x04DMA0p +\x00PPD_p +\x01LDA_\xa0\x10\x93RLIO\x0bx\x03p +\x00XPA_\xa11\xa0\x10\x93RLIO\x0bx\x02p +\x01XPA_\xa1\x1e\xa0\x10\x93RLIO\x0b\xbc\x03p +\x02XPA_\xa1\x0b[2\x02\x00\x00\x02\x90\x0b\x9f\x01p +\x01XPE_\x14\x1b_PSC\x00p +\x01LDN_\xa0\x08LDA_\xa4 +\x00\xa1\x04\xa4 +\x03\x14\x14_PS0\x00p +\x01LDN_p +\x01LDA_\x14\x14_PS3\x00p +\x01LDN_p +\x00LDA_\x10#\\/\x04_SB_PCI0LPC_LURT\x08_EJD\r_SB.LCIO\x00\x10#\\/\x04_SB_PCI0LPC_DURT\x08_EJD\r_SB.GDCK\x00\x10#\\/\x04_SB_PCI0LPC_LLPT\x08_EJD\r_SB.LCIO\x00\x10#\\/\x04_SB_PCI0LPC_DLPT\x08_EJD\r_SB.GDCK\x00\x10#\\/\x04_SB_PCI0LPC_LECP\x08_EJD\r_SB.LCIO\x00\x10#\\/\x04_SB_PCI0LPC_DECP\x08_EJD\r_SB.GDCK\x00[\x82H.FIR_\x08_HID\x0c$M\x00q\x08_CID\x0cA\xd0\x05\x11\x14\x1d_STA\x00\xa0\x08HDIR\xa4 +\x00\xa0\x08XU2E\xa4 +\x0f\xa1\x04\xa4 +\r\x14)_DIS\x00p +\x00XU2Ep +\x02LDNSp +\x00RQNSp +\x00LDASp +\x01SP2S\x08U2BF\x11\x13 +\x10G\x01\x00\x00\x00\x00\x01\x08"\x00\x00*\x00\x00y\x00\x8bU2BF +\x02IRMN\x8bU2BF +\x04IRMX\x8bU2BF +\tIRIQ\x8cU2BF +\x0cIRDQ\x14G\x06_CRS\x00p +\x02LDNS}yOHIS +\x08\x00OLWS`p`IRMNp`IRMXpRQNS`\xa0\r`y +\x01RQNSIRIQ\xa1\x08p +\x00IRIQpMA0S`\xa0\r\x95` +\x04y +\x01`IRDQ\xa1\x08p +\x00IRDQ\xa4U2BF\x08_PRS\x11G\x08 +\x831\x00G\x01\xf8\x02\xf8\x02\x01\x08"\x08\x00*\x0b\x001\x01G\x01\xf8\x03\xf8\x03\x01\x08"\x10\x00*\x0b\x001\x01G\x01\xe8\x02\xe8\x02\x01\x08"\x08\x00*\x0b\x001\x01G\x01\xe8\x03\xe8\x03\x01\x08"\x10\x00*\x0b\x001\x02G\x01\xf8\x02\xf8\x02\x01\x08"\xb0\x00*\x0b\x001\x02G\x01\xf8\x03\xf8\x03\x01\x08"\xa8\x00*\x0b\x001\x02G\x01\xe8\x02\xe8\x02\x01\x08"\xb0\x00*\x0b\x001\x02G\x01\xe8\x03\xe8\x03\x01\x08"\xa8\x00*\x0b\x008y\x00\x14E\x10_SRS\x01\x8ch +\x02RIIL\x8ch +\x03RIIH\x8bh +\x02RIIO\x8bh +\tRIIQ\x8ch +\x0cRIDQp +\x02LDNSp +\x00LDASpRIILOLWSpRIIHOHIS\xa0\x12RIIQ\x82RIIQ`pv`RQNS\xa1\x08p +\x00RQNS\xa0\x16{RIDQ +\x0f\x00\x82RIDQ`pv`MA0S\xa1\x08p +\x04MA0Sp +\x04MA1Sp +\x01SESSp +\x00SP2Sp +\x01LDAS\xa0\x10\x93RIIO\x0b\xf8\x03p +\x00XU2A\xa1E\x04\xa0\x10\x93RIIO\x0b\xf8\x02p +\x01XU2A\xa11\xa0\x10\x93RIIO\x0b\xe8\x03p +\x07XU2A\xa1\x1e\xa0\x10\x93RIIO\x0b\xe8\x02p +\x05XU2A\xa1\x0b[2\x02\x00\x00\x02\x90\x0b\xa4\x01p +\x01XU2E\x14\x1b_PSC\x00p +\x02LDNS\xa0\x08LDAS\xa4 +\x00\xa1\x04\xa4 +\x03\x14\x14_PS0\x00p +\x02LDNSp +\x01LDAS\x14\x14_PS3\x00p +\x02LDNSp +\x00LDAS\x10C\x0e\\/\x03_SB_PCI0LPC_\x14A\rLCON\x01\xa0K +h\xa0G +EPWGp +\x01DLPDp +\x07DLPC\xa2\x0e\x92{ +\x08DLPC\x00[" +\x01p +\x01DRST\xa0L\x07\x92\x93SIOD +\xff}SCF9 +\xa0SCF9\xa2\x0e\x92{ +\x10SCF9\x00[" +\x01}SCF2 +\xebSCF2p +\x07LDN_{\x0b \x16 +\xff`p`IOLWz\x0b \x16 +\x08`{` +\xffIOHIp +\x01LDA_p +\x01GPPSp +\x03GPPCp +\x02GPPSp +\x03GPPCp +\x00DUSB\xa1\x1dp +\x01DUSBp +\x00DRSTp +\x00DLPDp +\x00DLPC[\x82GKTPM_\x08_HID\x0c\x06\x8d\x12\x00\x08_CID\x0cA\xd0\x0c1\x14\x1d_STA\x00\xa0\x0e{\\TPMP +\x01\x00p +\x0f`\xa1\x05p +\x00`\xa4`\x08_CRS\x11\x11 +\x0e\x86\t\x00\x01\x00\x00\xd4\xfe\x00\x10\x00\x00y\x00\x14GF_DSM\x0c\x08TMPB\x11\x05 +\x02\x00\x00\x8cTMPB +\x00LPCT\x8cTMPB +\x01SSUM\x08LRSP +\x00\x08PPRC +\x00\x08RQS1\x12\x06\x02 +\x0c +\r\x08PTOP\x12\x06\x02 +\x00 +\x00\x08RTOP\x12\x08\x03 +\x00 +\x00 +\x00\x8ah +\x00IID0\x8ah +\x04IID1\x8ah +\x08IID2\x8ah +\x0cIID3\x08UID0\x11\x13 +\x10\xa6\xfa\xdd=\x1b6\xb4N\xa4$\x8d\x10\x08\x9d\x16S\x8aUID0 +\x00EID0\x8aUID0 +\x04EID1\x8aUID0 +\x08EID2\x8aUID0 +\x0cEID3\xa0I,\x90\x90\x93IID0EID0\x93IID1EID1\x90\x93IID2EID2\x93IID3EID3\xa0\x0b\x93j +\x00\xa4\x11\x04 +\x01?\xa0\x0b\x93j +\x01\xa4\r1.0\x00\xa0L\x1c\x93j +\x02p +\x00PPRCTPHY +\x00p\\PH02LPCT\xa0@\x1aLPCTp +\x00SSUMrSSUM\\PH01SSUMrSSUM\\PH02SSUMrSSUM\\PH03SSUMrSSUM\\PH04SSUMrSSUM\\PH05SSUMrSSUM\\PH06SSUMrSSUM\\PH07SSUMrSSUM\\PH08SSUMrSSUM\\PH09SSUMrSSUM\\PH0ASSUMrSSUM\\PH0BSSUM\xa0\x0cSSUMp +\x02PPRC\xa1K\x0ep\x83\x88k +\x00\x00\\PH04p\x89RQS1\x01\\PH04\x00 +\x00 +\x00`\xa0\x0c\x92\x93`\xffp +\x01PPRC\xa1M\x0bp +\x00\\PH03p +\x00SSUMrSSUM\\PH01SSUMrSSUM\\PH02SSUMrSSUM\\PH03SSUMrSSUM\\PH04SSUMrSSUM\\PH05SSUMrSSUM\\PH06SSUMrSSUM\\PH07SSUMrSSUM\\PH08SSUMrSSUM\\PH09SSUMrSSUM\\PH0ASSUMrSSUM\\PH0BSSUMt +\x00SSUM\\PH03TPHY +\x01\xa1\x08p +\x02PPRC\xa4PPRC\xa0\x1e\x93j +\x03TPHY +\x00p\\PH04\x88PTOP +\x01\x00\xa4PTOP\xa0\x08\x93j +\x04\xa4 +\x01\xa0I\x08\x93j +\x05TPHY +\x00p\\PH07`p\\PH06LRSPp}y` +\x08`LRSP\x00LRSP\xa0\x1c\x90\x93\\PH06 +\xf0\x93\\PH07 +\xffp\x0c\xf0\xff\xff\xffLRSP\xa1\x1e\xa0\x1c\x90\x93\\PH06 +\xf1\x93\\PH07 +\xffp\x0c\xf1\xff\xff\xffLRSPpLRSP\x88RTOP +\x02\x00p\\PH05\x88RTOP +\x01\x00\xa4RTOP\xa0\x08\x93j +\x06\xa4 +\x02\x08UID1\x11\x13 +\x10\xedT`7\x13\xccuF\x90\x1cGV\xd7\xf2\xd4]\x8aUID1 +\x00EID4\x8aUID1 +\x04EID5\x8aUID1 +\x08EID6\x8aUID1 +\x0cEID7\xa0@\t\x90\x90\x93IID0EID4\x93IID1EID5\x90\x93IID2EID6\x93IID3EID7pj[1pk[1\xa0\x0b\x93j +\x00\xa4\x11\x04 +\x01\x01\xa0O\x04\x93j +\x01\xa0\x12\x93\x83\x88k +\x00\x00 +\x00p +\x00\\TCG0\xa0\x12\x93\x83\x88k +\x00\x00 +\x01p +\x01\\TCG0\xa0\x0f\x93\\TCG0 +\x00TMOR +\x00\xa0\x0f\x93\\TCG0 +\x01TMOR +\x01\xa4 +\x00\xa4 +\x01\xa4\x11\x04 +\x01\x00[\x80TSES\x00\x0c\x00\x00\xe8\xff\x0b\x00\x02[\x81F\x08TSES\x01\x00@\x06TSCM\x08\x00@(TCT0\x08TCT1\x08TCT2\x08\x00@\x05TMT0\x08\x00H\x04TMT1\x08\x00H\x04TMT2\x08\x00HzTLD0\x08TLD1\x08TLD2\x08TLDL\x18TLDB\x18TLDS\x10TSB0\x08TSB1\x08TSB2\x08TSBL\x08TSBBH\x04TSBF\x10TSBC\x10\x00@\x1aTSIM\x08[\x81\x0fTSES\x01\x00H.TCTAH\x11[\x81\x0fTSES\x01\x00@\xbaTCTLH\x05[\x81\x0fTSES\x01\x00H\xbfTCTBH\x08\x148TCSZ\x02\xa01\x92\x93TSCM +\x12\xa0\x0b\x93 +\x01hpiTCZ1\xa1\x1b\xa0\x0b\x93 +\x02hpiTCZ2\xa1\r\xa0\x0b\x93 +\x03hpiTCZ3\x14I\x0cTCST\x02\xa0A\x0c\x92\x93TSCM +\x12p +\x00`\xa0\x1e\x93 +\x01h\xa0\x18\x94iTMT0p +\x04TSIMpiTMT0p +\x01`\xa1B\x04\xa0\x1e\x93 +\x02h\xa0\x18\x94iTMT1p +\x04TSIMpiTMT1p +\x01`\xa1 \xa0\x1e\x93 +\x03h\xa0\x18\x94iTMT2p +\x04TSIMpiTMT2p +\x01`\xa0@\x05`p +\x00TCT2\x08TCTC\x11\x03 +#pTCTATCTCp +"cp +\x00a\xa2\x12cp\x83\x88TCTCc\x00brabavcp\x80a\x00bub{b +\xffapaTCT2p +\xfeTSIM\x14I\x08TCBS\x04\xa0A\x08\x92\x93TSCM +\x12\xa0F\x07\x93{h +\x07\x00 +\x00p +\x12TSIMphTSBLpiTSBBpjTSBFpkTSBCp +\x00TSB2\x08TCTD\x11\x03 +#pTCTBTCTDp +\x10`p +\x00a\xa2\x12`p\x83\x88TCTD`\x00brabav`p\x80a\x00bub{b +\xffapaTSB2p +\xfeTSIM\x14@\x07TSCL\x02\xa0H\x06\x92\x93TSCM +\x12p +\x15TSIMrTLDSiTLDSp +\x00TLD2\x08TLDD\x11\x03 +\x0bpTCTLTLDDp + +`p +\x00a\xa2\x12`p\x83\x88TLDD`\x00brabav`p\x80a\x00bub{b +\xffapaTLD2p +\xfeTSIM[\x82\x8e\x00\x02EC__\x08_HID\x0cA\xd0\x0c\t\x08_UID +\x00\x08_GPE +\x1c\x14\x13_REG\x02\xa0\x0c\x93h +\x03pi\\H8DR[\x80ECOR\x03 +\x00\x0b\x00\x01[\x81J+ECOR\x01HDBM\x01\x00\x01\x00\x01HFNE\x01\x00\x01\x00\x01HLDM\x01\x00\x01\x00\x01BTCM\x01\x00\x01\x00\x01\x00\x01HBPR\x01BTPC\x01\x00\x01HDUE\x01\x00\x07\x00\x01HETE\x01\x00\x0eHSPA\x01\x00\x07HSUN\x08HSRP\x08\x00 HLCL\x08\x00\x08HFNS\x02\x00\x06\x00\x04HAAA\x03\x00\x01HAM0\x08HAM1\x08HAM2\x08HAM3\x08HAM4\x08HAM5\x08HAM6\x08HAM7\x08HAM8\x08HAM9\x08HAMA\x08HAMB\x08HAMC\x08HAMD\x08HAME\x08HAMF\x08HT00\x01HT01\x01HT02\x01HT03\x01HT10\x01HT11\x01HT12\x01HT13\x01\x00\x10HANT\x08\x00\x10\x00\x01\x00\x01HANA\x02\x00\x01\x00\x01\x00\x1aHATR\x08HT0H\x08HT0L\x08HT1H\x08HT1L\x08HFSP\x08\x00\x06HMUT\x01\x00\x01HBRV\x08HWPM\x01HWLB\x01HWLO\x01HWDK\x01HWFN\x01HWBT\x01HWRI\x01HWBU\x01HWLU\x01\x00\x07\x00\x07HPLO\x01\x00\x08\x00\x10HB0S\x07HB0A\x01HB1S\x07HB1A\x01HCMU\x01\x00\x02OVRQ\x01DCBD\x01DCWL\x01DCWW\x01HB1I\x01\x00\x01KBLT\x01BTPW\x01BTDT\x01HUBS\x01BDPW\x01BDDT\x01HUBB\x01\x00@\x05\x00\x01BTWK\x01HPLD\x01\x00\x01HPAC\x01BTST\x01\x00\x02HPBU\x01\x00\x01HBID\x04HBCS\x01HPNF\x01\x00\x01GSTS\x01\x00\x02HLBU\x01BDST\x01HCBL\x01\x00)HWAK\x10HMPR\x08HMST\x05\x00\x02HMDN\x01HMAD\x08HMCM\x08\x00@\x10HMBC\x08\x00\x18TMP0\x08TMP1\x08TMP2\x08TMP3\x08TMP4\x08TMP5\x08TMP6\x08TMP7\x08\x00\x08HIID\x08\x00\x08HFNI\x08\x00 HDEC\x08HDEO\x08\x00\x18HDAA\x03HDAB\x03HDAC\x02\x00@\x11HDEN HDEP HDEM\x08HDES\x08\x00@\x07ATMX\x08HWAT\x08\x00H\x11\x00\x04HDDD\x01\x14A\x04_INI\x00\xa0\r\\H8DRp +\x00HSPA\xa1\x0c\\MBEC +\x05 +\xfe +\x00BINI\\/\x06_SB_PCI0LPC_EC__HKEYWGIN\x08_CRS\x11\x15 +\x12G\x01b\x00b\x00\x01\x01G\x01f\x00f\x00\x01\x01y\x00\x14!LED_\x02}hi`\xa0\x0c\\H8DRp`HLCL\xa1\t\\WBEC +\x0c`\x08BAON +\x00\x08WBON +\x00\x14N\x18BEEP\x01\xa0\x0c\x93h +\x05p +\x00WBONpWBONb\xa0O\x04BAON\xa0$\x93h +\x00p +\x00BAON\xa0\rWBONp +\x03`p +\x08a\xa1\tp +\x00`p +\x00a\xa1#p +\xff`p +\xffa\xa0\x0c\x93h +\x11p +\x00WBON\xa0\x0c\x93h +\x10p +\x01WBON\xa1G\x04ph`p +\xffa\xa0\x13\x93h +\x0fph`p +\x08ap +\x01BAON\xa0\x14\x93h +\x11p +\x00`p +\x00ap +\x00WBON\xa0\x14\x93h +\x10p +\x03`p +\x08ap +\x01WBON\xa02\x93h +\x03p +\x00WBON\xa0%bp +\x07`\xa0\x1e\x91\x93\\SPS_ +\x03\x93\\SPS_ +\x04p +\x00bp +\xff`p +\xffa\xa0\x14\x93h +\x07\xa0\x0ebp +\x00bp +\xff`p +\xffa\xa0C\x04\x90\\H8DR\x92\\W98F\xa0\x1a\x90b\x92WBONp +\x00HSRPp +\x00HSUN[" +d\xa0\x0c\x92\x93a +\xffpaHSRP\xa0\x0c\x92\x93` +\xffp`HSUN\xa1>\xa0\x1e\x90b\x92WBON\\WBEC +\x07 +\x00\\WBEC +\x06 +\x00[" +d\xa0\x0e\x92\x93a +\xff\\WBEC +\x07a\xa0\x0e\x92\x93` +\xff\\WBEC +\x06`\xa0\x05\x93h +\x03\xa0 +\x93h +\x07["\x0b\xf4\x01\x14C\tEVNT\x01\xa07\\H8DR\xa0\x18h}HAM7 +\x01HAM7}HAM5 +\x04HAM5\xa1\x17{HAM7 +\xfeHAM7{HAM5 +\xfbHAM5\xa1C\x05\xa0(h\\MBEC +\x17 +\xff +\x01\\MBEC +\x15 +\xff +\x04\xa0\x0f\\W98F\\WBEC +\x18 +\xff\xa1\'\\MBEC +\x17 +\xfe +\x00\\MBEC +\x15 +\xfb +\x00\xa0\x0f\\W98F\\WBEC +\x18 +\x00\x14K\x07PNST\x01\xa0=\x90hBSTA +\x02\xa0\x1b\x90\\H8DR\x92\\W98Fp +\x01HBPRp +\x01HUBB\xa1\x17\\MBEC +\x01 +\xff + \\MBEC +; +\xff +\x80\xa15\xa0\x1b\x90\\H8DR\x92\\W98Fp +\x00HBPRp +\x00HUBB\xa1\x17\\MBEC +\x01 +\xdf +\x00\\MBEC +; +\x7f +\x00[\x84I\x07PUBS\x03\x00\x00\x14+_STA\x00\xa0\x0c\\H8DRpHUBS`\xa1\x0c{\\RBEC +; +\x10`\xa0\x05`\xa4 +\x01\xa1\x04\xa4 +\x00\x14!_ON_\x00\xa0\r\\H8DRp +\x01HUBS\xa1\x0c\\MBEC +; +\xff +\x10\x14!_OFF\x00\xa0\r\\H8DRp +\x00HUBS\xa1\x0c\\MBEC +; +\xef +\x00\x14E\x0fLPMD\x00p +\x00`p +\x00ap +\x00b\xa0B\x06\\H8DR\xa0J\x05HPLO\xa0J\x04HPAC\xa0C\x04\x95HWAT +Z\xa0\x16\x91\x92HB0A\x95{HB0S +\x0f\x00 +\x03p +\x01a\xa0\x16\x91\x92HB1A\x95{HB1S +\x0f\x00 +\x03p +\x01b\xa0\x0b\x90abp\\LPST`\xa1\x08p\\LPST`\xa1L\x07\xa0I\x07{\\RBEC +4 +\x80\x00\xa0B\x06{\\RBEC +F +\x10\x00\xa0D\x05\x95\\RBEC +\xc9 +Zp\\RBEC +8c\xa0\x14\x91\x92{c +\x80\x00\x95{c +\x0f\x00 +\x03p +\x01ap\\RBEC +9c\xa0\x14\x91\x92{c +\x80\x00\x95{c +\x0f\x00 +\x03p +\x01b\xa0\x0b\x90abp\\LPST`\xa1\x08p\\LPST`\xa4`[\x01MCPU\x07\x14D\x04_Q10\x00\xa0<\\/\x06_SB_PCI0LPC_EC__HKEYMHKK +\x01\\/\x06_SB_PCI0LPC_EC__HKEYMHKQ\x0b\x01\x10\x14G\x04_Q11\x00\xa0<\\/\x06_SB_PCI0LPC_EC__HKEYMHKK +\x02\\/\x06_SB_PCI0LPC_EC__HKEYMHKQ\x0b\x02\x10\xa1\x02\xa3\x14$_Q12\x00\\/\x06_SB_PCI0LPC_EC__HKEYMHKQ\x0b\x03\x10\x14A\x05_Q13\x00\xa0:\\/\x06_SB_PCI0LPC_EC__HKEYDHKC\\/\x06_SB_PCI0LPC_EC__HKEYMHKQ\x0b\x04\x10\xa1\x0e\x86\\._SB_SLPB +\x80\x14M\x10_Q64\x00\xa0<\\/\x06_SB_PCI0LPC_EC__HKEYMHKK +\x10\\/\x06_SB_PCI0LPC_EC__HKEYMHKQ\x0b\x05\x10\xa1H\x0c\xa0>\x92{\\/\x06_SB_PCI0LPC_EC__HKEYWGFL + \x00\\/\x06_SB_PCI0LPC_EC__HKEYBPWC +\x01\xa1F\x08\\/\x06_SB_PCI0LPC_EC__HKEYBPWC +\x00\xa0F\x06\x92\\WVIS\xa0>\x92{\\/\x06_SB_PCI0LPC_EC__HKEYWGFL +\x02\x00\\/\x06_SB_PCI0LPC_EC__HKEYWPWC +\x01\xa1\x1e\\/\x06_SB_PCI0LPC_EC__HKEYWPWC +\x00\x14D\x04_Q65\x00\xa0<\\/\x06_SB_PCI0LPC_EC__HKEYMHKK + \\/\x06_SB_PCI0LPC_EC__HKEYMHKQ\x0b\x06\x10\x14C +_Q16\x00\xa0\'\\VPDFp +\x00\\VPDF\xa0\x18VIGD\\/\x04_SB_PCI0VID_VSPD\xa1C\x07\xa0<\\/\x06_SB_PCI0LPC_EC__HKEYMHKK +@\\/\x06_SB_PCI0LPC_EC__HKEYMHKQ\x0b\x07\x10\xa13\xa0\x18VIGD\\/\x04_SB_PCI0VID_VSWT\xa1\x18\\/\x05_SB_PCI0AGP_VID_VSWT\x14B\x05_Q17\x00\xa0<\\/\x06_SB_PCI0LPC_EC__HKEYMHKK +\x80\\/\x06_SB_PCI0LPC_EC__HKEYMHKQ\x0b\x08\x10\xa1\r\xa0\x0b\x92\\WNTFVEXP\x14F\x04_Q18\x00\xa0=\\/\x06_SB_PCI0LPC_EC__HKEYMHKK\x0b\x00\x01\\/\x06_SB_PCI0LPC_EC__HKEYMHKQ\x0b\t\x10\xa3\x14E\x04_Q66\x00\xa0=\\/\x06_SB_PCI0LPC_EC__HKEYMHKK\x0b\x00\x02\\/\x06_SB_PCI0LPC_EC__HKEYMHKQ\x0b +\x10\x14E\x04_Q1A\x00\xa0=\\/\x06_SB_PCI0LPC_EC__HKEYMHKK\x0b\x00\x04\\/\x06_SB_PCI0LPC_EC__HKEYMHKQ\x0b\x0b\x10\x14$_Q1B\x00\\/\x06_SB_PCI0LPC_EC__HKEYMHKQ\x0b\x0c\x10\x14E\x04_Q62\x00\xa0=\\/\x06_SB_PCI0LPC_EC__HKEYMHKK\x0b\x00\x10\\/\x06_SB_PCI0LPC_EC__HKEYMHKQ\x0b\r\x10\x14E\x04_Q60\x00\xa0=\\/\x06_SB_PCI0LPC_EC__HKEYMHKK\x0b\x00 \\/\x06_SB_PCI0LPC_EC__HKEYMHKQ\x0b\x0e\x10\x14E\x04_Q61\x00\xa0=\\/\x06_SB_PCI0LPC_EC__HKEYMHKK\x0b\x00@\\/\x06_SB_PCI0LPC_EC__HKEYMHKQ\x0b\x0f\x10\x14N\x04_Q1F\x00\xa0?\\/\x06_SB_PCI0LPC_EC__HKEYMHKK\x0c\x00\x00\x02\x00\\/\x06_SB_PCI0LPC_EC__HKEYMHKQ\x0b\x12\x10\\UCMS +\x0e\x14G\x04_Q67\x00\xa0?\\/\x06_SB_PCI0LPC_EC__HKEYMHKK\x0c\x00\x00\x04\x00\\/\x06_SB_PCI0LPC_EC__HKEYMHKQ\x0b\x13\x10\x14O\x0e_Q26\x00\\UCMS +\x12DSPD +\x00["\x0b\xf4\x01\x86AC__ +\x80\x86\\._TZ_THM0 +\x80\x86\\._TZ_THM1 +\x80\xa0\x0e\\WXPF[#MCPU\xff\xff\xa07\\SPEN\xa0\'\\OSPX\x86\\._PR_CPU0 +\x80\xa0\x13\\MPEN\x86\\._PR_CPU1 +\x80\xa1\x08\\STEP +\x00\xa0 +\\WXPF[" +d\xa0\'\\OSC4\x86\\._PR_CPU0 +\x81\xa0\x13\\MPEN\x86\\._PR_CPU1 +\x81\xa0\x0c\\WXPF[\'MCPU\xa0#\x90\x92\\WXPF\\WNTFp +\x00\\/\x04_SB_PCI0LPC_C4C3ATMCDSPD +\x01\x14K\x12_Q27\x00\\UCMS +\x12["\x0b\xf4\x01\x86AC__ +\x80\x86\\._TZ_THM0 +\x80\x86\\._TZ_THM1 +\x80\xa0\x0e\\WXPF[#MCPU\xff\xff\xa07\\SPEN\xa0\'\\OSPX\x86\\._PR_CPU0 +\x80\xa0\x13\\MPEN\x86\\._PR_CPU1 +\x80\xa1\x08\\STEP +\x01\xa0 +\\WXPF[" +d\xa0\'\\OSC4\x86\\._PR_CPU0 +\x81\xa0\x13\\MPEN\x86\\._PR_CPU1 +\x81\xa0\x0c\\WXPF[\'MCPU\xa01\x90\\CWAC\x92\\CWAS\xa0#\x90\x92\\WXPF\\WNTFp +\x01\\/\x04_SB_PCI0LPC_C4C3ATMC\xa09\x91\x93\\/\x03_SB_GDCKGDID\x0c$M\x00L\x93\\/\x03_SB_GDCKGDID\x0c$M\x00D\x86\\._SB_GDCK +\x01\x14H\x06_Q2A\x00\xa0\x1aVIGD\\/\x04_SB_PCI0VID_VLOC +\x01\xa1\x1a\\/\x05_SB_PCI0AGP_VID_VLOC +\x01\\/\x06_SB_PCI0LPC_EC__HKEYMHKQ\x0b\x02P\x86\\._SB_LID_ +\x80\x148_Q2B\x00\\/\x06_SB_PCI0LPC_EC__HKEYMHKQ\x0b\x01P\\UCMS +\r\x86\\._SB_LID_ +\x80\x14\x06_Q3D\x00\x14>_Q48\x00\xa07\\SPEN\xa0\'\\OSPX\x86\\._PR_CPU0 +\x80\xa0\x13\\MPEN\x86\\._PR_CPU1 +\x80\xa1\x08\\STEP +\x04\x14>_Q49\x00\xa07\\SPEN\xa0\'\\OSPX\x86\\._PR_CPU0 +\x80\xa0\x13\\MPEN\x86\\._PR_CPU1 +\x80\xa1\x08\\STEP +\x05\x14\x10_Q7F\x00[2\x01\x00\x00\x01\x80\x0b+\x03\x14$_Q4E\x00\\/\x06_SB_PCI0LPC_EC__HKEYMHKQ\x0b\x11`\x14$_Q4F\x00\\/\x06_SB_PCI0LPC_EC__HKEYMHKQ\x0b\x12`\x14\x1d_Q75\x00\\/\x05_SB_PCI0LPC_EC__TATR\x14$_Q46\x00\\/\x06_SB_PCI0LPC_EC__HKEYMHKQ\x0b\x12`\x14 _Q22\x00\xa0\x0cHB0A\x86BAT0 +\x80\xa0\x0cHB1A\x86BAT1 +\x80\x14\r_Q4A\x00\x86BAT0 +\x81\x14\r_Q4B\x00\x86BAT0 +\x80\x14 +_Q4C\x00_Q38\x14%_Q4D\x00\xa0\x1e{^.BAT1B1ST^.BAT1XB1S\x00\x86BAT1 +\x80\x14\r_Q24\x00\x86BAT0 +\x80\x14%_Q25\x00\xa0\x1e{^.BAT1B1ST^.BAT1XB1S\x00\x86BAT1 +\x80[\x811ECOR\x01\x00@PSBRC\x10SBFC\x10SBAE\x10SBRS\x10SBAC\x10SBVO\x10SBAF\x10SBBS\x10[\x81\x1aECOR\x01\x00@P\x00\x0fSBCM\x01SBMD\x10SBCC\x10[\x81\'ECOR\x01\x00@PSBDC\x10SBDV\x10SBOM\x10SBSI\x10SBDT\x10SBSN\x10[\x81\x0eECOR\x01\x00@PSBCH [\x81\x0fECOR\x01\x00@PSBMN@\x08[\x81\x0fECOR\x01\x00@PSBDN@\x08[\x01BATM\x07\x14C\x16GBIF\x03[#BATM\xff\xff\xa0C\x12j}h +\x01HIIDpSBCMg\x7fg +\x01\x88i +\x00\x00phHIID\xa0 +gwSBFC + +a\xa1\x07pSBFCapa\x88i +\x02\x00}h +\x02HIID\xa0 +gwSBDC + +`\xa1\x07pSBDC`p`\x88i +\x01\x00xa +\x14b\x88i +\x05\x00\xa0 +gp +\xc8\x88i +\x06\x00\xa1!\xa0\x15SBDVx\x0c@\r\x03\x00SBDVb\x88i +\x06\x00\xa1\tp +\x00\x88i +\x06\x00pSBDV\x88i +\x04\x00pSBSN`\x08SERN\x11\t +\x06 \x00p +\x04b\xa2\x15`x` + +a`ra +0\x88SERNb\x00vbpSERN\x88i + +\x00}h +\x06HIIDpSBDN\x88i +\t\x00}h +\x04HIID\x08BTYP\x11\x08 +\x05\x00\x00\x00\x00\x00pSBCHBTYPpBTYP\x88i +\x0b\x00}h +\x05HIIDpSBMN\x88i +\x0c\x00\xa1\'p\x0c\xff\xff\xff\xff\x88i +\x01\x00p +\x00\x88i +\x05\x00p +\x00\x88i +\x06\x00p\x0c\xff\xff\xff\xff\x88i +\x02\x00[\'BATM\xa4i\x14J\rGBST\x04[#BATM\xff\xff\xa0 +{i + \x00p +\x02`\xa1\x12\xa0 +{i +@\x00p +\x01`\xa1\x05p +\x00`\xa0\x06{i +\x0f\x00\xa1\x06}` +\x04`\xa0\x19\x93{i +\x0f\x00 +\x0fp +\x04`p +\x00ap +\x00bp +\x00c\xa1@\x06phHIIDpSBVOc\xa0 +jwSBRC + +b\xa1\x07pSBRCbpSBACa\xa0\x1c\x92\x95a\x0b\x00\x80\xa0\x0e{` +\x01\x00t\x0c\x00\x00\x01\x00aa\xa1\x05p +\x00a\xa1\r\xa0\x0b\x92{` +\x02\x00p +\x00a\xa0\rjwcaaxa\x0b\xe8\x03gap`\x88k +\x00\x00pa\x88k +\x01\x00pb\x88k +\x02\x00pc\x88k +\x03\x00[\'BATM\xa4k[\x82G\x15BAT0\x08_HID\x0cA\xd0\x0c +\x08_UID +\x00\x08_PCL\x12\x07\x01\\_SB_\x08B0ST +\x00\x08BT0I\x12#\r +\x00\x0c\xff\xff\xff\xff\x0c\xff\xff\xff\xff +\x01\x0b0* +\x00 +\x00 +\x01 +\x01\r\x00\r\x00\r\x00\r\x00\x08BT0P\x12\x02\x04\x14D\x04_STA\x00\xa0\x0f\\H8DRpHB0AB0ST\xa1\x1e\xa0\x13{\\RBEC +8 +\x80\x00p +\x01B0ST\xa1\x08p +\x00B0ST\xa0\x08B0ST\xa4 +\x1f\xa1\x04\xa4 +\x0f\x14G\x04_BIF\x00p +\x00gp + +f\xa2+\x90\x92gf\xa0\x1fHB0A\xa0\x13\x93{HB0S +\x0f\x00 +\x0f["\x0b\xe8\x03vf\xa1\x05p +\x01g\xa1\x05p +\x00f\xa4GBIF +\x00BT0Ig\x14#_BST\x00\x7f\x83\x88BT0I +\x00\x00 +\x01`\xa4GBST +\x00HB0S`BT0P\x14I\x04_BTP\x01{HAM4 +\xefHAM4\xa06hpha\xa0\x11\x92\x83\x88BT0I +\x00\x00xa + +`a{a +\xffHT0L{za +\x08\x00 +\xffHT0H}HAM4 +\x10HAM4[\x82A\x18BAT1\x08_HID\x0cA\xd0\x0c +\x08_UID +\x01\x08_PCL\x12\x07\x01\\_SB_\x08B1ST +\x00\x08XB1S +\x01\x08BT1I\x12#\r +\x00\x0c\xff\xff\xff\xff\x0c\xff\xff\xff\xff +\x01\x0b0* +\x00 +\x00 +\x01 +\x01\r\x00\r\x00\r\x00\r\x00\x08BT1P\x12\x02\x04\x14G\x06_STA\x00\xa0\x0f\\H8DRpHB1AB1ST\xa1\x1e\xa0\x13{\\RBEC +9 +\x80\x00p +\x01B1ST\xa1\x08p +\x00B1ST\xa0\x1fB1ST\xa0\x08XB1S\xa4 +\x1f\xa1\x10\xa0\t\\WNTF\xa4 +\x00\xa1\x04\xa4 +\x1f\xa1\x10\xa0\t\\WNTF\xa4 +\x00\xa1\x04\xa4 +\x0f\x14G\x04_BIF\x00p +\x00gp + +f\xa2+\x90\x92gf\xa0\x1fHB1A\xa0\x13\x93{HB1S +\x0f\x00 +\x0f["\x0b\xe8\x03vf\xa1\x05p +\x01g\xa1\x05p +\x00f\xa4GBIF +\x10BT1Ig\x14#_BST\x00\x7f\x83\x88BT1I +\x00\x00 +\x01`\xa4GBST +\x10HB1S`BT1P\x14I\x04_BTP\x01{HAM4 +\xdfHAM4\xa06hpha\xa0\x11\x92\x83\x88BT1I +\x00\x00xa + +`a{a +\xffHT1L{za +\x08\x00 +\xffHT1H}HAM4 + HAM4[\x82>AC__\x08_HID\rACPI0003\x00\x08_UID +\x00\x08_PCL\x12\x07\x01\\_SB_\x14\x0b_PSR\x00\xa4HPAC\x14\t_STA\x00\xa4 +\x0f[\x82IQHKEY\x08_HID\x0c$M\x00h\x14\t_STA\x00\xa4 +\x0f\x14 +MHKV\x00\xa4\x0b\x00\x01\x08DHKC +\x00\x08DHKB +\x01[\x01XDHK\x07\x08DHKH +\x00\x08DHKW +\x00\x08DHKS +\x00\x08DHKD +\x00\x08DHKN\x0b\x0c\x08\x08DHKT +\x00\x08DHWW +\x00\x14\x0cMHKA\x00\xa4\x0c\xff\xff\xff\x00\x14\x0bMHKN\x00\xa4DHKN\x14\x18MHKK\x01\xa0\rDHKC\xa4{DHKNh\x00\xa1\x03\xa4\x00\x14@\x05MHKM\x02[#XDHK\xff\xff\xa0\x06\x94h + \xa3\xa13y\x01vh`\xa0){`\x0c\xff\xff\xff\x00\x00\xa0\x0ci}`DHKNDHKN\xa1\x12{DHKN\x7f`\x0c\xff\xff\xff\xff\x00DHKN\xa1\x02\xa3[\'XDHK\x14\x13MHKS\x00\x86\\._SB_SLPB +\x80\x14\x0cMHKC\x01phDHKC\x14I\x08MHKP\x00[#XDHK\xff\xff\xa0\x11DHWWpDHWWap\x00DHWW\xa1O\x05\xa0\x11DHKWpDHKWap\x00DHKW\xa1J\x04\xa0\x11DHKDpDHKDap\x00DHKD\xa15\xa0\x11DHKSpDHKSap\x00DHKS\xa1!\xa0\x11DHKTpDHKTap\x00DHKT\xa1\rpDHKHap\x00DHKH[\'XDHK\xa4a\x14>MHKE\x01phDHKB[#XDHK\xff\xffp\x00DHKHp\x00DHKWp\x00DHKSp\x00DHKDp\x00DHKTp\x00DHWW[\'XDHK\x14E\x0bMHKQ\x01\xa0M +DHKB\xa0@\tDHKC[#XDHK\xff\xff\xa0\x06\x95h\x0b\x00\x10\xa1M\x06\xa0\x0c\x95h\x0b\x00 phDHKH\xa1M\x05\xa0\x0c\x95h\x0b\x000phDHKW\xa1M\x04\xa0\x0c\x95h\x0b\x00@phDHKS\xa1=\xa0\x0c\x95h\x0b\x00PphDHKD\xa1.\xa0\x0c\x95h\x0b\x00`phDHKH\xa1\x1f\xa0\x0c\x95h\x0b\x00pphDHKT\xa1\x10\xa0\x0c\x95h\x0b\x00\x80phDHWW\xa1\x01[\'XDHK\x86HKEY +\x80\xa1\x15\xa0\x13\x93h\x0b\x04\x10\x86\\._SB_SLPB +\x80\x14I\x05MHKB\x01\xa0&\x93h +\x00\\/\x05_SB_PCI0LPC_EC__BEEP +\x11p +\x00\\LIDB\xa1*\xa0&\x93h +\x01\\/\x05_SB_PCI0LPC_EC__BEEP +\x10p +\x01\\LIDB\xa1\x01\x14<MHKD\x00\xa0\x1aVIGD\\/\x04_SB_PCI0VID_VLOC +\x00\xa1\x1a\\/\x05_SB_PCI0AGP_VID_VLOC +\x00\x14>MHQC\x01\xa01\\WNTF\xa0\x0b\x93h +\x00\xa4\\CWAC\xa1\x1e\xa0\x0b\x93h +\x01\xa4\\CWAP\xa1\x10\xa0\x0b\x93h +\x02\xa4\\CWAT\xa1\x02\xa3\xa1\x02\xa3\xa4 +\x00\x14A\x08MHGC\x00\xa0C\x07\\WNTF[#XDHK\xff\xff\xa0:\\OSC4\xa0 \\/\x06_SB_PCI0LPC_EC__AC___PSRp +\x03`\xa1\x12\xa0 +\\C4NAp +\x03`\xa1\x05p +\x04`\xa1 \xa0\x18\\/\x04_SB_PCI0LPC_C4C3p +\x04`\xa1\x05p +\x03`[\'XDHK\xa4`\xa1\x02\xa3\xa4 +\x00\x14A\x13MHSC\x01\xa0F\x12\x90\\CWAC\\WNTF[#XDHK\xff\xff\xa0J\x08\\OSC4\xa0>\x93h +\x03\xa08\x92\\CWAS\x86\\._PR_CPU0 +\x81\xa0\x13\\MPEN\x86\\._PR_CPU1 +\x81p +\x01\\CWASp +\x01\\C4NA\xa1C\x04\xa0=\x93h +\x04\xa07\\CWAS\x86\\._PR_CPU0 +\x81\xa0\x13\\MPEN\x86\\._PR_CPU1 +\x81p +\x00\\CWASp +\x00\\C4NA\xa1\x02\xa3\xa1O\x07\xa0+\x93h +\x03\xa0%\x92\\CWASp +\x00\\/\x04_SB_PCI0LPC_C4C3p +\x01\\CWAS\xa1@\x05\xa0J\x04\x93h +\x04\xa0C\x04\\CWAS\xa03\x92\\/\x06_SB_PCI0LPC_EC__AC___PSRp +\x01\\/\x04_SB_PCI0LPC_C4C3p +\x00\\CWAS\xa1\x02\xa3[\'XDHK\xa1\x02\xa3\x10G\x14\\/\x05_SB_PCI0LPC_EC__HKEY\x14M\x04TDSC\x01p +\x01`\xa2\x1b`p\\/\x05_SB_PCI0LPC_EC__HANT`ph\\/\x05_SB_PCI0LPC_EC__HANT\xa0\x0c\x93h +!\\ATCC +\x00\x14\x0cTDSS\x01\\ATCCh\x14N\x08TDSG\x01{h +\xff`p`\\/\x05_SB_PCI0LPC_EC__HDAAzh +\x08`{` +\xffapa\\/\x05_SB_PCI0LPC_EC__HDABzh +\x10`{` +\xffapa\\/\x05_SB_PCI0LPC_EC__HDACzh +\x18`{` +\xffapa\\/\x05_SB_PCI0LPC_EC__HANA\x14!TDGC\x00p\\/\x05_SB_PCI0LPC_EC__HDDD`\xa4`\x14!TDGS\x00p\\/\x05_SB_PCI0LPC_EC__HAAA`\xa4`[\x81\x18ECOR\x11\x00@*HSD0\x08HSD1\x08HSD2\x08[\x81\x0eECOR\x11\x00@+HSDL\x10[\x81\x19ECOR\x11\x00@+HSDBH\x04HSDF\x10HSDC\x10[\x01I2CM\x07\x14?CHKS\x00p\x0b\xe8\x03`\xa2\x13HMPR[" +\x01v`\xa0\x07\x92`\xa4\x0b\x80\x80\xa0\x19HMDN\xa0\x0fHMST\xa4}\x0b\x00\x80HMST\x00\xa1\x03\xa4\x00\xa1\x05\xa4\x0b\x81\x80\x14 I2RT\x00p +\x02HMADp +!HMCMp +\x0bHMPR\xa4CHKS\x14&I2NT\x01p +\x02HMADp +"HMCMphHSD0p +\x06HMPR\xa4CHKS\x14K\x0eTATR\x00\xa0C\x0e\\H8DR[#I2CM\xff\xffI2RTpHSD0`\xa0%\x93` + \\/\x04_SB_PCI0LPC_TCSZHSD1HSD2I2NT`\xa1M\t\xa0%\x93` +!\\/\x04_SB_PCI0LPC_TCSTHSD1HSD2I2NT`\xa1D\x07\xa0I\x04\x93` +"\x08TSDC\x11\x0c +\t \x00pHSDBTSDC\\/\x04_SB_PCI0LPC_TCBSHSD1TSDCHSDFHSDCI2NT`\xa1\'\xa0%\x93` +#\\/\x04_SB_PCI0LPC_TSCLHSD1HSDLI2NT`[\'I2CM\x14\rTATE\x00p +\x01HETE\x08_ADR +\x00\x08_S3D +\x02\x08RID_ +\x00\x08LRRT\x12G\x13\x0e\x12\x15\x04\x0c\xff\xff\x01\x00 +\x00\\._SB_LNKA +\x00\x12\x15\x04\x0c\xff\xff\x02\x00 +\x00\\._SB_LNKA +\x00\x12\x15\x04\x0c\xff\xff\x1b\x00 +\x01\\._SB_LNKB +\x00\x12\x15\x04\x0c\xff\xff\x1c\x00 +\x00\\._SB_LNKE +\x00\x12\x15\x04\x0c\xff\xff\x1c\x00 +\x01\\._SB_LNKF +\x00\x12\x15\x04\x0c\xff\xff\x1c\x00 +\x02\\._SB_LNKG +\x00\x12\x15\x04\x0c\xff\xff\x1c\x00 +\x03\\._SB_LNKH +\x00\x12\x15\x04\x0c\xff\xff\x1d\x00 +\x00\\._SB_LNKA +\x00\x12\x15\x04\x0c\xff\xff\x1d\x00 +\x01\\._SB_LNKB +\x00\x12\x15\x04\x0c\xff\xff\x1d\x00 +\x02\\._SB_LNKC +\x00\x12\x15\x04\x0c\xff\xff\x1d\x00 +\x03\\._SB_LNKD +\x00\x12\x15\x04\x0c\xff\xff\x1f\x00 +\x00\\._SB_LNKH +\x00\x12\x15\x04\x0c\xff\xff\x1f\x00 +\x02\\._SB_LNKA +\x00\x12\x15\x04\x0c\xff\xff\x1f\x00 +\x01\\._SB_LNKA +\x00\x08ARRT\x12G\x0c\x0e\x12\r\x04\x0c\xff\xff\x01\x00 +\x00 +\x00 +\x10\x12\r\x04\x0c\xff\xff\x02\x00 +\x00 +\x00 +\x10\x12\r\x04\x0c\xff\xff\x1b\x00 +\x01 +\x00 +\x11\x12\r\x04\x0c\xff\xff\x1c\x00 +\x00 +\x00 +\x14\x12\r\x04\x0c\xff\xff\x1c\x00 +\x01 +\x00 +\x15\x12\r\x04\x0c\xff\xff\x1c\x00 +\x02 +\x00 +\x16\x12\r\x04\x0c\xff\xff\x1c\x00 +\x03 +\x00 +\x17\x12\r\x04\x0c\xff\xff\x1d\x00 +\x00 +\x00 +\x10\x12\r\x04\x0c\xff\xff\x1d\x00 +\x01 +\x00 +\x11\x12\r\x04\x0c\xff\xff\x1d\x00 +\x02 +\x00 +\x12\x12\r\x04\x0c\xff\xff\x1d\x00 +\x03 +\x00 +\x13\x12\r\x04\x0c\xff\xff\x1f\x00 +\x00 +\x00 +\x17\x12\r\x04\x0c\xff\xff\x1f\x00 +\x02 +\x00 +\x10\x12\r\x04\x0c\xff\xff\x1f\x00 +\x01 +\x00 +\x10\x14\x19_PRT\x00\xa0\x0b\\GPIC\xa4ARRT\xa1\x06\xa4LRRT\x08_HID\x0cA\xd0 +\x08\x08_CID\x0cA\xd0 +\x03\x08_BBN +\x00[\x80MHCS\x02 +\x00\x0b\x00\x01[\x815MHCS\x03\x00@HPAM0\x08PAM1\x08PAM2\x08PAM3\x08PAM4\x08PAM5\x08PAM6\x08\x00(\x00\x03TOUD\x05\x08_CRS\x11E\x1c\x0b\xc0\x01\x88\r\x00\x02\x0c\x00\x00\x00\x00\x00\xff\x00\x00\x00\x00\x01G\x01\xf8\x0c\xf8\x0c\x01\x08\x88\r\x00\x01\x0c\x03\x00\x00\x00\x00\xf7\x0c\x00\x00\xf8\x0c\x88\r\x00\x01\x0c\x03\x00\x00\x00\r\xff\xff\x00\x00\x00\xf3\x87\x17\x00\x00\x0c\x03\x00\x00\x00\x00\x00\x00 +\x00\xff\xff\x0b\x00\x00\x00\x00\x00\x00\x00\x02\x00\x87\x17\x00\x00\x0c\x03\x00\x00\x00\x00\x00\x00\x0c\x00\xff?\x0c\x00\x00\x00\x00\x00\x00@\x00\x00\x87\x17\x00\x00\x0c\x03\x00\x00\x00\x00\x00@\x0c\x00\xff\x7f\x0c\x00\x00\x00\x00\x00\x00@\x00\x00\x87\x17\x00\x00\x0c\x03\x00\x00\x00\x00\x00\x80\x0c\x00\xff\xbf\x0c\x00\x00\x00\x00\x00\x00@\x00\x00\x87\x17\x00\x00\x0c\x03\x00\x00\x00\x00\x00\xc0\x0c\x00\xff\xff\x0c\x00\x00\x00\x00\x00\x00@\x00\x00\x87\x17\x00\x00\x0c\x03\x00\x00\x00\x00\x00\x00\r\x00\xff?\r\x00\x00\x00\x00\x00\x00@\x00\x00\x87\x17\x00\x00\x0c\x03\x00\x00\x00\x00\x00@\r\x00\xff\x7f\r\x00\x00\x00\x00\x00\x00@\x00\x00\x87\x17\x00\x00\x0c\x03\x00\x00\x00\x00\x00\x80\r\x00\xff\xbf\r\x00\x00\x00\x00\x00\x00@\x00\x00\x87\x17\x00\x00\x0c\x03\x00\x00\x00\x00\x00\xc0\r\x00\xff\xff\r\x00\x00\x00\x00\x00\x00@\x00\x00\x87\x17\x00\x00\x0c\x03\x00\x00\x00\x00\x00\x00\x0e\x00\xff?\x0e\x00\x00\x00\x00\x00\x00@\x00\x00\x87\x17\x00\x00\x0c\x03\x00\x00\x00\x00\x00@\x0e\x00\xff\x7f\x0e\x00\x00\x00\x00\x00\x00@\x00\x00\x87\x17\x00\x00\x0c\x03\x00\x00\x00\x00\x00\x80\x0e\x00\xff\xbf\x0e\x00\x00\x00\x00\x00\x00@\x00\x00\x87\x17\x00\x00\x0c\x03\x00\x00\x00\x00\x00\xc0\x0e\x00\xff\xff\x0e\x00\x00\x00\x00\x00\x00@\x00\x00\x87\x17\x00\x00\x0c\x03\x00\x00\x00\x00\x00\x00\x10\x00\xff\xff\xbf\xfe\x00\x00\x00\x00\x00\x00\xb0\xfe\x87\x17\x00\x00\x0c\x03\x00\x00\x00\x00\x00\x00\xd4\xfe\xff\x0f\xd4\xfe\x00\x00\x00\x00\x00\x10\x00\x00y\x00\x8a_CRS +hC0LN\x8a_CRS +\x82C4LN\x8a_CRS +\x9cC8LN\x8a_CRS +\xb6CCLN\x8a_CRS +\xd0D0LN\x8a_CRS +\xeaD4LN\x8a_CRS\x0b\x04\x01D8LN\x8a_CRS\x0b\x1e\x01DCLN\x8a_CRS\x0b8\x01E0LN\x8a_CRS\x0bR\x01E4LN\x8a_CRS\x0bl\x01E8LN\x8a_CRS\x0b\x86\x01ECLN\x8a_CRS\x0b\x94\x01XXMN\x8a_CRS\x0b\x98\x01XXMX\x8a_CRS\x0b\xa0\x01XXLN\x8a_CRS\x0b\xae\x01F4MN\x8a_CRS\x0b\xb2\x01F4MX\x8a_CRS\x0b\xba\x01F4LN\x14A\x12_INI\x08\xa0\x11\x92\\OSIF\\._SB__INIyTOUD +\x1b`p`\\MEMXp`XXMNrtXXMXXXMN\x00 +\x01XXLN\xa0\x15\x92\x93{\\TPMP +\x01\x00 +\x01p +\x00F4LN\xa0\x10{PAM1 +\x03\x00p +\x00C0LN\xa0\x10{PAM1 +0\x00p +\x00C4LN\xa0\x10{PAM2 +\x03\x00p +\x00C8LN\xa0\x10{PAM2 +0\x00p +\x00CCLN\xa0\x10{PAM3 +\x03\x00p +\x00D0LN\xa0\x10{PAM3 +0\x00p +\x00D4LN\xa0\x10{PAM4 +\x03\x00p +\x00D8LN\xa0\x10{PAM4 +0\x00p +\x00DCLN\xa0\x10{PAM5 +\x03\x00p +\x00E0LN\xa0\x10{PAM5 +0\x00p +\x00E4LN\xa0\x10{PAM6 +\x03\x00p +\x00E8LN\xa0\x10{PAM6 +0\x00p +\x00ECLN\x08SUPP +\x00\x08CTRL +\x00\x14E,_OSC\x04\x8ak +\x00CDW1\x8ak +\x04CDW2\x8ak +\x08CDW3\x8ah +\x00IID0\x8ah +\x04IID1\x8ah +\x08IID2\x8ah +\x0cIID3\x08UID0\x11\x13 +\x10[M\xdb3\xf7\x1f\x1c@\x96WtA\xc0=\xd7f\x8aUID0 +\x00EID0\x8aUID0 +\x04EID1\x8aUID0 +\x08EID2\x8aUID0 +\x0cEID3\xa0A#\x90\x90\x93IID0EID0\x93IID1EID1\x90\x93IID2EID2\x93IID3EID3pCDW2SUPPpCDW3CTRL{CTRL +\x1dCTRL\xa0H\x1b\x80{CDW1 +\x01\x00\x00\xa0F\x0f{CTRL +\x01\x00\xa03\x92\\VIGDp +\x00\\/\x04_SB_PCI0AGP_HPGPp +\x00\\/\x04_SB_PCI0AGP_GMGPp +\x00\\/\x04_SB_PCI0EXP0HPCEp +\x01\\/\x04_SB_PCI0EXP0HPCSp +\x01\\/\x04_SB_PCI0EXP0ABP_p +\x01\\/\x04_SB_PCI0EXP0PDS_p +\x00\\/\x04_SB_PCI0EXP2HPCEp +\x01\\/\x04_SB_PCI0EXP2HPCSp +\x01\\/\x04_SB_PCI0EXP2ABP_p +\x01\\/\x04_SB_PCI0EXP2PDS_p +\x01\\NHPS\xa0D\x0b{CTRL +\x04\x00\xa03\x92\\VIGDp +\x00\\/\x04_SB_PCI0AGP_PMGPp +\x00\\/\x04_SB_PCI0AGP_GMGPp +\x00\\/\x04_SB_PCI0EXP0PMCEp +\x01\\/\x04_SB_PCI0EXP0PMCSp +\x00\\/\x04_SB_PCI0EXP2PMCEp +\x01\\/\x04_SB_PCI0EXP2PMCSp +\x00\\/\x04_SB_PCI0LPC_EXPEp +\x01\\NPME\xa0\x11\x92\x93i +\x01}CDW1 + +CDW1\xa0\x16\x92\x93CDW3CTRL}CDW1 +\x10CDW1pCTRLCDW3\xa1\x0c}CDW1 +\x06CDW1\xa4k[\x01MDGS\x07\x08VDEE +\x01\x08VDDA\x11\x03 +\x02\x8dVDDA +\x00VUPC\x8dVDDA +\x01VQDL\x8dVDDA +\x02VQDC\x8dVDDA +\x03VQDT\x8dVDDA +\x04VQDD\x8dVDDA +\x05VSDL\x8dVDDA +\x06VSDC\x8dVDDA +\x07VSDT\x8dVDDA +\x08VSDD\x8dVDDA + +MSWT\x8dVDDA +\x0bVWST[\x82OJVID_\x08_ADR\x0c\x00\x00\x02\x00\x08RID_ +\x00[\x80VPCG\x02 +\x00\x0b\x00\x01[\x81\x0eVPCG\x03\x00@jVPWR \x08_S3D +\x03\x145_INI\x00\\VUPS +\x02p\\VCDLVQDLp\\VCDCVQDCp\\VCDTVQDTp\\VCDDVQDD\x14\x07_PS0\x00\xa3\x14\x07_PS1\x00\xa3\x14\x07_PS2\x00\xa3\x14\x07_PS3\x00\xa3\x140VSWT\x00\xa0\x0f\\WVISp\\VEVT +\x07`\xa1 +p\\VEVT +\x05`{ +\x0f`a\xa0\taASWTa +\x01\x14E\x08VLOC\x01\xa0M\x07\x93h\\/\x03_SB_LID__LID\\VSLDh\xa0C\x06\x93VPWR +\x00\xa0?hp\\VEVT +\x01`\xa0\x13\\WXPF\x86\\._SB_PCI0 +\x00\xa1\x1a\xa0\x18\\WNTF\x86\\/\x03_SB_PCI0VID_ +\x00["\x0b\xee\x02\xa1 +p\\VEVT +\x02`{ +\x0f`a\xa0\taASWTa +\x00\x14G\x07_DOS\x01\xa0:\x93h +\x02p +\x14`\xa20`v`[#MDGS\xff\xff\xa0\x19\x93 +\x00MSWTp +\x01MSWTp +\x00`phVDEE[\'MDGS[" +\xc8\xa14[#MDGS\xff\xff\xa0\x0f\x93VDEE +\x02p +\x00MSWT\xa0\x0c\x94h +\x02p +\x01VDEE\xa1\x07phVDEE[\'MDGS\x14\x13_DOD\x00\xa4\x12\x0b\x03\x0b\x00\x01\x0b\x00\x03\x0b\x00\x04\x14L\x0bASWT\x02\xa0\x14\x93 +\x01VDEE{ +\x01ia\\VSDSha\xa1O\tp +\x14`\xa2A\x08`v`[#MDGS\xff\xff\xa0I\x06\x93 +\x00MSWTp +\x00`\xa0\r{ +\x01i\x00p +\x01VUPC\xa1\x08p +\x00VUPC\xa0\r{ +\x01h\x00p +\x01VQDL\xa1\x08p +\x00VQDL\xa0\r{ +\x02h\x00p +\x01VQDC\xa1\x08p +\x00VQDC\xa0\r{ +\x08h\x00p +\x01VQDD\xa1\x08p +\x00VQDD[\'MDGS[" +\xc8\xa0\r{ +\x02i\x00\x86VID_ +\x81\xa1\x08\x86VID_ +\x80\x14I\x06VDSW\x01\xa0A\x06\x93VPWR +\x00\xa0D\x04hp\\VEVT +\x03`\xa0\x15\\WVIS{ +\x0f`a\xa0\taASWTa +\x00\xa1!\xa0\x07\\WXPF\xa3\xa1\x17\xa0\x15\\WNTF{ +\x0f`a\xa0\taASWTa +\x00\xa1\x12p\\VEVT +\x04`ASWT +\x01 +\x00\x14\x1eVSPD\x00p\\VEVT +\x06`{ +\x0f`a\xa0\taASWTa +\x01[\x82H\x06LCD0\x08_ADR\x0b\x00\x04\x14\x1c_DCS\x00\\VUPS +\x00\xa0\t\\VCDL\xa4 +\x1f\xa1\x04\xa4 +\x1d\x14\x0b_DGS\x00\xa4VQDL\x140_DSS\x01{h +\x01VSDL\xa0!{h\x0c\x00\x00\x00\x80\x00\xa0\x0f{h\x0c\x00\x00\x00@\x00DSWT +\x02\xa1\x07DSWT +\x01[\x82@\x08CRT0\x08_ADR\x0b\x00\x01\x144_DCS\x00\\VUPS +\x01\xa0\x15\\VCSS\xa0\t\\VCDC\xa4 +\x1f\xa1\x04\xa4 +\x1d\xa1\x10\xa0\t\\VCDC\xa4 +\x0f\xa1\x04\xa4 +\r\x14\x0b_DGS\x00\xa4VQDC\x140_DSS\x01{h +\x01VSDC\xa0!{h\x0c\x00\x00\x00\x80\x00\xa0\x0f{h\x0c\x00\x00\x00@\x00DSWT +\x02\xa1\x07DSWT +\x01[\x82H\x06DVI0\x08_ADR\x0b\x00\x03\x14\x1c_DCS\x00\\VUPS +\x00\xa0\t\\VCDD\xa4 +\x1f\xa1\x04\xa4 +\x1d\x14\x0b_DGS\x00\xa4VQDD\x140_DSS\x01{h +\x01VSDD\xa0!{h\x0c\x00\x00\x00\x80\x00\xa0\x0f{h\x0c\x00\x00\x00@\x00DSWT +\x02\xa1\x07DSWT +\x01\x14?DSWT\x01\xa0\tVSDLp +\x01`\xa1\x05p +\x00`\xa0 +VSDC} +\x02``\xa0 +VSDD} +\x08``\xa0\x0f`\xa0\x0cVUPC\\VSDS`h\xa1\x02\xa3[\x82BUAGP_\x08_ADR\x0c\x00\x00\x01\x00\x08_S3D +\x03\x08RID_ +\x00\x08LART\x12*\x02\x12\x13\x04\x0b\xff\xff +\x00\\._SB_LNKA +\x00\x12\x13\x04\x0b\xff\xff +\x01\\._SB_LNKB +\x00\x08AART\x12\x1a\x02\x12\x0b\x04\x0b\xff\xff +\x00 +\x00 +\x10\x12\x0b\x04\x0b\xff\xff +\x01 +\x00 +\x11\x14\x19_PRT\x00\xa0\x0b\\GPIC\xa4AART\xa1\x06\xa4LART[\x01MDGS\x07\x08VDEE +\x01\x08VDDA\x11\x03 +\x02\x8dVDDA +\x00VUPC\x8dVDDA +\x01VQDL\x8dVDDA +\x02VQDC\x8dVDDA +\x03VQDT\x8dVDDA +\x04VQDD\x8dVDDA +\x05VSDL\x8dVDDA +\x06VSDC\x8dVDDA +\x07VSDT\x8dVDDA +\x08VSDD\x8dVDDA + +MSWT\x8dVDDA +\x0bVWST[\x82BAVID_\x08_ADR +\x00[\x80VPCG\x02 +\x00\x0b\x00\x01[\x81\x0eVPCG\x03\x00@*VPWR \x08_S3D +\x03\x145_INI\x00\\VUPS +\x02p\\VCDLVQDLp\\VCDCVQDCp\\VCDTVQDTp\\VCDDVQDD\x14\x07_PS0\x00\xa3\x14\x07_PS1\x00\xa3\x14\x07_PS2\x00\xa3\x14\x07_PS3\x00\xa3\x140VSWT\x00\xa0\x0f\\WVISp\\VEVT +\x07`\xa1 +p\\VEVT +\x05`{ +\x0f`a\xa0\taASWTa +\x01\x14@\x05VLOC\x01\xa0H\x04\x93h\\/\x03_SB_LID__LID\\VSLDh\xa0.\x93VPWR +\x00\xa0\x0bhp\\VEVT +\x01`\xa1 +p\\VEVT +\x02`{ +\x0f`a\xa0\taASWTa +\x00\x14G\x07_DOS\x01\xa0:\x93h +\x02p +\x14`\xa20`v`[#MDGS\xff\xff\xa0\x19\x93 +\x00MSWTp +\x01MSWTp +\x00`phVDEE[\'MDGS[" +\xc8\xa14[#MDGS\xff\xff\xa0\x0f\x93VDEE +\x02p +\x00MSWT\xa0\x0c\x94h +\x02p +\x01VDEE\xa1\x07phVDEE[\'MDGS\x14\x13_DOD\x00\xa4\x12\x0b\x03\x0b\x00\x01\x0b\x10\x02\x0b\x10\x01\x14L\x0bASWT\x02\xa0\x14\x93 +\x01VDEE{ +\x01ia\\VSDSha\xa1O\tp +\x14`\xa2A\x08`v`[#MDGS\xff\xff\xa0I\x06\x93 +\x00MSWTp +\x00`\xa0\r{ +\x01i\x00p +\x01VUPC\xa1\x08p +\x00VUPC\xa0\r{ +\x01h\x00p +\x01VQDL\xa1\x08p +\x00VQDL\xa0\r{ +\x02h\x00p +\x01VQDC\xa1\x08p +\x00VQDC\xa0\r{ +\x08h\x00p +\x01VQDD\xa1\x08p +\x00VQDD[\'MDGS[" +\xc8\xa0\r{ +\x02i\x00\x86VID_ +\x81\xa1\x08\x86VID_ +\x80[\x82C\tLCD0\x08_ADR\x0b\x10\x01\x14\x1c_DCS\x00\\VUPS +\x00\xa0\t\\VCDL\xa4 +\x1f\xa1\x04\xa4 +\x1d\x14*_DDC\x01\\VDDC\xa0\x0b\x93h +\x01\xa4\\DDC1\xa1\x12\xa0\x0b\x93h +\x02\xa4\\DDC2\xa1\x04\xa4 +\x00\x14\x0b_DGS\x00\xa4VQDL\x140_DSS\x01{h +\x01VSDL\xa0!{h\x0c\x00\x00\x00\x80\x00\xa0\x0f{h\x0c\x00\x00\x00@\x00DSWT +\x02\xa1\x07DSWT +\x01[\x82@\x08CRT0\x08_ADR\x0b\x00\x01\x144_DCS\x00\\VUPS +\x01\xa0\x15\\VCSS\xa0\t\\VCDC\xa4 +\x1f\xa1\x04\xa4 +\x1d\xa1\x10\xa0\t\\VCDC\xa4 +\x0f\xa1\x04\xa4 +\r\x14\x0b_DGS\x00\xa4VQDC\x140_DSS\x01{h +\x01VSDC\xa0!{h\x0c\x00\x00\x00\x80\x00\xa0\x0f{h\x0c\x00\x00\x00@\x00DSWT +\x02\xa1\x07DSWT +\x01[\x82H\x06DVI0\x08_ADR\x0b\x10\x02\x14\x1c_DCS\x00\\VUPS +\x00\xa0\t\\VCDD\xa4 +\x1f\xa1\x04\xa4 +\x1d\x14\x0b_DGS\x00\xa4VQDD\x140_DSS\x01{h +\x01VSDD\xa0!{h\x0c\x00\x00\x00\x80\x00\xa0\x0f{h\x0c\x00\x00\x00@\x00DSWT +\x02\xa1\x07DSWT +\x01\x14?DSWT\x01\xa0\tVSDLp +\x01`\xa1\x05p +\x00`\xa0 +VSDC} +\x02``\xa0 +VSDD} +\x08``\xa0\x0f`\xa0\x0cVUPC\\VSDS`h\xa1\x02\xa3[\x80PEGC\x02 +\x00\x0b\x00\x01[\x81\x18PEGC\x03\x00@vGMGP\x01HPGP\x01PMGP\x01[\x82I\x12EXP0\x08_ADR\x0c\x00\x00\x1c\x00\x08RID_ +\x00[\x80P0CS\x02 +\x00\x0b\x00\x01[\x81M\x04P0CS\x03\x00@-ABP_\x01\x00\x02PDC_\x01\x00\x02PDS_\x01\x00\x01\x00(RID0\x10PSP0\x01PPP0\x01\x00F<\x00\x06HPCE\x01PMCE\x01\x00\x18\x00\x06HPCS\x01PMCS\x01\x08_PRW\x12\x06\x02 +\t +\x04\x08LPRT\x12C\x05\x04\x12\x13\x04\x0b\xff\xff +\x00\\._SB_LNKA +\x00\x12\x13\x04\x0b\xff\xff +\x01\\._SB_LNKB +\x00\x12\x13\x04\x0b\xff\xff +\x02\\._SB_LNKC +\x00\x12\x13\x04\x0b\xff\xff +\x03\\._SB_LNKD +\x00\x08APRT\x122\x04\x12\x0b\x04\x0b\xff\xff +\x00 +\x00 +\x10\x12\x0b\x04\x0b\xff\xff +\x01 +\x00 +\x11\x12\x0b\x04\x0b\xff\xff +\x02 +\x00 +\x12\x12\x0b\x04\x0b\xff\xff +\x03 +\x00 +\x13\x14\x19_PRT\x00\xa0\x0b\\GPIC\xa4APRT\xa1\x06\xa4LPRT[\x82D\x0fEXP1\x08_ADR\x0c\x01\x00\x1c\x00\x08RID_ +\x00[\x80P1CS\x02 +\x00\x0b\x00\x01[\x81\x18P1CS\x03\x00@0RID1\x10PSP1\x01PPP1\x01\x08_PRW\x12\x06\x02 +\t +\x04\x08LPRT\x12C\x05\x04\x12\x13\x04\x0b\xff\xff +\x00\\._SB_LNKB +\x00\x12\x13\x04\x0b\xff\xff +\x01\\._SB_LNKC +\x00\x12\x13\x04\x0b\xff\xff +\x02\\._SB_LNKD +\x00\x12\x13\x04\x0b\xff\xff +\x03\\._SB_LNKA +\x00\x08APRT\x122\x04\x12\x0b\x04\x0b\xff\xff +\x00 +\x00 +\x11\x12\x0b\x04\x0b\xff\xff +\x01 +\x00 +\x12\x12\x0b\x04\x0b\xff\xff +\x02 +\x00 +\x13\x12\x0b\x04\x0b\xff\xff +\x03 +\x00 +\x10\x14\x19_PRT\x00\xa0\x0b\\GPIC\xa4APRT\xa1\x06\xa4LPRT[\x82H\x14EXP2\x08_ADR\x0c\x02\x00\x1c\x00\x08RID_ +\x00\x08XCPF +\x00[\x80P2CS\x02 +\x00\x0b\x00\x01[\x81M\x04P2CS\x03\x00@-ABP_\x01\x00\x02PDC_\x01\x00\x02PDS_\x01\x00\x01\x00(RID2\x10PSP2\x01PPP2\x01\x00F<\x00\x06HPCE\x01PMCE\x01\x00\x18\x00\x06HPCS\x01PMCS\x01\x08_PRW\x12\x06\x02 +\t +\x04\x08LPRT\x12C\x05\x04\x12\x13\x04\x0b\xff\xff +\x00\\._SB_LNKC +\x00\x12\x13\x04\x0b\xff\xff +\x01\\._SB_LNKD +\x00\x12\x13\x04\x0b\xff\xff +\x02\\._SB_LNKA +\x00\x12\x13\x04\x0b\xff\xff +\x03\\._SB_LNKB +\x00\x08APRT\x122\x04\x12\x0b\x04\x0b\xff\xff +\x00 +\x00 +\x12\x12\x0b\x04\x0b\xff\xff +\x01 +\x00 +\x13\x12\x0b\x04\x0b\xff\xff +\x02 +\x00 +\x10\x12\x0b\x04\x0b\xff\xff +\x03 +\x00 +\x11\x14\x19_PRT\x00\xa0\x0b\\GPIC\xa4APRT\xa1\x06\xa4LPRT[\x82\x16EXUP\x08_ADR +\x00\x14\t_RMV\x00\xa4 +\x01[\x82B\x10EXP3\x08_ADR\x0c\x03\x00\x1c\x00\x08RID_ +\x00[\x80P3CS\x02 +\x00\x0b\x00\x01[\x81\x18P3CS\x03\x00@0RID3\x10PSP3\x01PPP3\x01\x08_PRW\x12\x06\x02 +\t +\x04\x08LPRT\x12C\x05\x04\x12\x13\x04\x0b\xff\xff +\x00\\._SB_LNKD +\x00\x12\x13\x04\x0b\xff\xff +\x01\\._SB_LNKA +\x00\x12\x13\x04\x0b\xff\xff +\x02\\._SB_LNKB +\x00\x12\x13\x04\x0b\xff\xff +\x03\\._SB_LNKC +\x00\x08APRT\x122\x04\x12\x0b\x04\x0b\xff\xff +\x00 +\x00 +\x13\x12\x0b\x04\x0b\xff\xff +\x01 +\x00 +\x10\x12\x0b\x04\x0b\xff\xff +\x02 +\x00 +\x11\x12\x0b\x04\x0b\xff\xff +\x03 +\x00 +\x12\x14\x19_PRT\x00\xa0\x0b\\GPIC\xa4APRT\xa1\x06\xa4LPRT[\x82\x0cEXPD\x08_ADR +\x00[\x82O\x16PCI1\x08_ADR\x0c\x00\x00\x1e\x00\x08_S3D +\x02\x08RID_ +\x00\x08LPRT\x12G\t\x07\x12\x13\x04\x0b\xff\xff +\x00\\._SB_LNKA +\x00\x12\x13\x04\x0b\xff\xff +\x01\\._SB_LNKB +\x00\x12\x13\x04\x0b\xff\xff +\x02\\._SB_LNKC +\x00\x12\x15\x04\x0c\xff\xff\x01\x00 +\x00\\._SB_LNKA +\x00\x12\x15\x04\x0c\xff\xff\x02\x00 +\x00\\._SB_LNKF +\x00\x12\x15\x04\x0c\xff\xff\x02\x00 +\x01\\._SB_LNKG +\x00\x12\x15\x04\x0c\xff\xff\x08\x00 +\x00\\._SB_LNKE +\x00\x08APRT\x12O\x05\x07\x12\x0b\x04\x0b\xff\xff +\x00 +\x00 +\x10\x12\x0b\x04\x0b\xff\xff +\x01 +\x00 +\x11\x12\x0b\x04\x0b\xff\xff +\x02 +\x00 +\x12\x12\r\x04\x0c\xff\xff\x01\x00 +\x00 +\x00 +\x10\x12\r\x04\x0c\xff\xff\x02\x00 +\x00 +\x00 +\x15\x12\r\x04\x0c\xff\xff\x02\x00 +\x01 +\x00 +\x16\x12\r\x04\x0c\xff\xff\x08\x00 +\x00 +\x00 +\x14\x14\x19_PRT\x00\xa0\x0b\\GPIC\xa4APRT\xa1\x06\xa4LPRT\x08_PRW\x12\x06\x02 +\x0b +\x04[\x82\'CDBS\x08_ADR +\x00\x14\x13_S3D\x00\xa0\t\\WMEF\xa4 +\x02\xa4 +\x03\x08_SUN +\x01[\x82L\xb8IDE0\x08_ADR\x0c\x01\x00\x1f\x00\x08_S3D +\x03\x08RID_ +\x00[\x80IDCS\x02 +\x00\x0b\x00\x01[\x81@\x12IDCS\x03\x00@ PFT0\x01PIE0\x01PPE0\x01PDT0\x01PFT1\x01PIE1\x01PPE1\x01PDT1\x01PRC0\x02\x00\x02PIS0\x02PSIE\x01PIDE\x01SFT0\x01SIE0\x01SPE0\x01SDT0\x01SFT1\x01SIE1\x01SPE1\x01SDT1\x01SRC0\x02\x00\x02SIS0\x02SSIE\x01SIDE\x01PRC1\x02PIS1\x02SRC1\x02SIS1\x02\x00\x18PSD0\x01PSD1\x01SSD0\x01SSD1\x01\x00\x0cPCT0\x02\x00\x02PCT1\x02\x00\x02SCT0\x02\x00\x02SCT1\x02\x00\x02\x00@\x04PCB0\x01PCB1\x01SCB0\x01SCB1\x01PCR0\x01PCR1\x01SCR0\x01SCR1\x01\x00\x02WRPP\x01\x00\x01FPB0\x01FPB1\x01FSB0\x01FSB1\x01PSIG\x02SSIG\x02[\x81\x1fIDCS\x03\x00@ PTI0\x04PTI1\x04\x00\x08STI0\x04STI1\x04\x14\'GPCT\x04\xa0\t\x92}hi\x00\xa4 +\x00\xa0\t\x90\x92hi\xa4\x0b\x84\x03\xa4wt +\trjk\x00\x00 +\x1e\x00\x14*GDCT\x04\xa0\x06\x92h\xa4 +\x00\xa0\x05i\xa4 +\x14\xa0\x0cj\xa4wt +\x04k\x00 +\x0f\x00\xa4wt +\x04k\x00 +\x1e\x00\x142MTIM\x02p +\x00`\xa0\x07h}` +\x01`\xa0\x0b\x92\x95h +\x02}` +\x02`\xa0\x08\x92i}` +\x04`\xa0\x08\x92h}` +\x08`\xa4`\x14\x1aMISP\x01\xa0\x06\x92h\xa4 +\x00\xa0\t\x92\x94h +\x02\xa4 +\x01\xa4 +\x02\x14\x1cMRCT\x01\xa0\t\x92\x94h +\x02\xa4 +\x00\xa0\x08\x93h +\x03\xa4 +\x01\xa4 +\x03[\x82O\x95PRIM\x08_ADR +\x00\x08BGTM\x11\x03 +\x14\x8aBGTM +\x00GTP0\x8aBGTM +\x04GTD0\x8aBGTM +\x08GTP1\x8aBGTM +\x0cGTD1\x8aBGTM +\x10GTMF\x08BPI0 +\x00\x08BDM0 +\x00\x08BPI1 +\x00\x08BDM1 +\x00\x08DRE0 +\x00\x08DRE1 +\x00\x08DIP0 +\x00\x08DIP1 +\x00\x14M\x11_GTM\x00pGPCTPFT0PDT0PIS0PRC0GTP0pGDCTPSD0FPB0PCB0PCT0GTD0\xa0\x0f\x92GTD0pGTP0GTD0\xa0H\x04PSIEpGPCTPFT1PDT1PIS1PRC1GTP1pGDCTPSD1FPB1PCB1PCT1GTD1\xa0\x0f\x92GTD1pGTP1GTD1\xa1\x0fp +\x00GTP1p +\x00GTD1p +\x00GTMF\xa0\x10PSD0}GTMF +\x01GTMF\xa0\x1f\x92GTP0}GTMF +\x01GTMFp +xGTP0p +\x14GTD0\xa0\x10PIE0}GTMF +\x02GTMF\xa0\x10PSD1}GTMF +\x04GTMF\xa0\x10PIE1}GTMF +\x08GTMF}GTMF +\x10GTMF\xa4BGTM\x14@G_STM\x03\x8ah +\x00STP0\x8ah +\x04STD0\x8ah +\x08STP1\x8ah +\x0cSTD1\x8ah +\x10STMFp +\x00DRE0p +\x00DIP0\xa0G$\x93\x87i\x0b\x00\x02\x8bi +\x00M000\x8bi +bM049\x8bi +fM051\x8bi +jM053\x8bi +|M062\x8bi +~M063\x8bi +\x80M064\x8bi +\x82M065\x8bi +\x88M068\x8bi +\x9cM078\x8bi +\xacM086\x8bi +\xb0M088\x8bi +\xeeM119\x8bi\x0b(\x01M148\xa0\x1f\x93{M148\x0b\x00\xc0\x00\x0b\x00@\xa0\x10{M148 +\x04\x00p +\x01DRE0\xa0\x1b{M086\x0b\x00\x80\x00\xa0\x10{M119 +\x01\x00p +\x01DRE0\xa0E\t\\W98Fp\\UUDMM053M088STD0\xa0\x10STD0}STMF +\x01STMF\xa1\x0c{STMF +\xfeSTMFp\\UMDMM053M063M062M065STP0\xa0 \x92STP0p\\UPIOM053M064M051M068STP0\xa0\x15{M049\x0b\x00\x08\x00}STMF +\x02STMF\xa1\x0c{STMF +\xfdSTMFp\\DPIOSTP0{STMF +\x02\x00`p\\DUDMSTD0{STMF +\x01\x00a\xa0&\x92\x95\\/\x05_SB_PCI0LPC_EC__BGID +\x00 +\x0cp +\x00`p +\xffapMTIM`{M000\x0b\x00\x80\x00PTI0pMISP`PIS0pMRCT`PRC0\xa0\x0c\x93a +\xffp +\x00PSD0\xa1C\x06p +\x01PSD0\xa0\x0c\x92\x94a +\x02paPCT0\xa1\x18\xa0\r{a +\x01\x00p +\x01PCT0\xa1\x08p +\x02PCT0\xa0\r\x92\x95a +\x03p +\x01PCB0\xa1\x08p +\x00PCB0\xa0\x0c\x93a +\x05p +\x01FPB0\xa1\x08p +\x00FPB0p +\x01PCR0p\\FDMA`aBDM0p\\FPIO`BPI0\xa0J\x1e\x93\x87j\x0b\x00\x02\x8bj +\x00S000\x8bj +bS049\x8bj +fS051\x8bj +jS053\x8bj +|S062\x8bj +~S063\x8bj +\x80S064\x8bj +\x82S065\x8bj +\x88S068\x8bj +\xb0S088\xa0E\t\\W98Fp\\UUDMS053S088STD1\xa0\x10STD1}STMF +\x04STMF\xa1\x0c{STMF +\xfbSTMFp\\UMDMS053S063S062S065STP1\xa0 \x92STP1p\\UPIOS053S064S051S068STP1\xa0\x15{S049\x0b\x00\x08\x00}STMF +\x08STMF\xa1\x0c{STMF +\xf7STMFp\\DPIOSTP1{STMF +\x08\x00`p\\DUDMSTD1{STMF +\x04\x00a\xa0=STP1pMTIM`{S000\x0b\x00\x80\x00PTI1\xa0${STMF +\x10\x00pMISP`PIS1pMRCT`PRC1p +\x01PSIE\xa1\x0fp +\x00PTI1p +\x00PSIE\xa0\x0c\x93a +\xffp +\x00PSD1\xa1C\x06p +\x01PSD1\xa0\x0c\x92\x94a +\x02paPCT1\xa1\x18\xa0\r{a +\x01\x00p +\x01PCT1\xa1\x08p +\x02PCT1\xa0\r\x92\x95a +\x03p +\x01PCB1\xa1\x08p +\x00PCB1\xa0\x0c\x93a +\x05p +\x01FPB1\xa1\x08p +\x00FPB1p +\x01PCR1p\\FDMA`aBDM1p\\FPIO`BPI1[\x82I4MSTR\x08_ADR +\x00\x08HDTF\x11\x1f +\x1c\x02\x00\x00\x00\x00\xa0\xef\x00\x00\x00\x00\x00\xa0\xf5\x03\x00\x00\x00\x00\xa0\xef\x03\x00\x00\x00\x00\xa0\xef\x8cHDTF +\x0fHDMA\x8cHDTF +\x16HPIO\x8cHDTF +\rHFLC\x08ERTF\x11& +#\x02\x00\x00\x00\x00\xa0\xef\x00\x00\x00\x00\x00\xa0\xf5\x03\x00\x00\x00\x00\xa0\xef\x03\x00\x00\x00\x00\xa0\xef_\x00\x00\x00\x00\xa0\xef\x8cERTF +\x0fEDMA\x8cERTF +\x16EPIO\x8cERTF +\rEFLC\x08HPTF\x11& +#\x02\x00\x00\x00\x00\xa0\xef\x00\x00\x00\x00\x00\xa0\xf5\x03\x00\x00\x00\x00\xa0\xef\x03\x00\x00\x00\x00\xa0\xef\x10\x03\x00\x00\x00\xa0\xef\x8cHPTF +\x0fPDMA\x8cHPTF +\x16PPIO\x8cHPTF +\rPFLC\x08HXTF\x11- +*\x02\x00\x00\x00\x00\xa0\xef\x00\x00\x00\x00\x00\xa0\xf5\x03\x00\x00\x00\x00\xa0\xef\x03\x00\x00\x00\x00\xa0\xef_\x00\x00\x00\x00\xa0\xef\x10\x03\x00\x00\x00\xa0\xef\x8cHXTF +\x0fXDMA\x8cHXTF +\x16XPIO\x8cHXTF +\rXFLC\x08IDTF\x11\x11 +\x0e\x03\x00\x00\x00\x00\xa0\xef\x03\x00\x00\x00\x00\xa0\xef\x8cIDTF +\x01IDMA\x8cIDTF +\x08IPIO\x08DDTF\x11\x1f +\x1c\x03\x00\x00\x00\x00\xa0\xef\x03\x00\x00\x00\x00\xa0\xef\x00\x00\x00\x00\x00\xa0\xe3\x00\x00\x00\x00\x00\xa0\xe3\x8cDDTF +\x01DDMA\x8cDDTF +\x08DPIO\x8cDDTF +\x0fDTAT\x8cDDTF +\x16DTFT\x14@\x14_GTF\x00p\\/\x05_SB_PCI0LPC_EC__BGID +\x00`\xa0"\\OSSSp +\xe1HFLCp +\xe1EFLCp +\xe1PFLCp +\xe1XFLC\xa0M\x08\x93` +\x06\xa0H\x04^^DRE0\xa0"^^DIP0p^^BDM0XDMAp^^BPI0XPIO\xa4HXTF\xa1\x1cp^^BDM0EDMAp^^BPI0EPIO\xa4ERTF\xa0"^^DIP0p^^BDM0PDMAp^^BPI0PPIO\xa4HPTFp^^BDM0HDMAp^^BPI0HPIO\xa4HDTFp\x00a\xa0\x08\x93` +\x03p\x01a\xa0\x08\x93` + +p\x01a\xa0\x08\x93` +\x0bp\x01a\xa01ap\\CDFLDTFTp\\CDAHDTATp^^BDM0DDMAp^^BPI0DPIO\xa4DDTF\xa1\x1cp^^BDM0IDMAp^^BPI0IPIO\xa4IDTF\x14\x1e_EJ0\x01\\/\x05_SB_PCI0LPC_EC__BEJ0h\x14)_STA\x00\xa0\x1d\\/\x05_SB_PCI0LPC_EC__BSTA +\x01\xa4 +\x0f\xa1\x04\xa4 +\x00[\x82K"SATA\x08_ADR\x0c\x02\x00\x1f\x00\x08_S3D +\x03\x08RID_ +\x00[\x80IDCS\x02 +\x00\x0b\x00\x01[\x81@\x12IDCS\x03\x00@ PFT0\x01PIE0\x01PPE0\x01PDT0\x01PFT1\x01PIE1\x01PPE1\x01PDT1\x01PRC0\x02\x00\x02PIS0\x02PSIE\x01PIDE\x01SFT0\x01SIE0\x01SPE0\x01SDT0\x01SFT1\x01SIE1\x01SPE1\x01SDT1\x01SRC0\x02\x00\x02SIS0\x02SSIE\x01SIDE\x01PRC1\x02PIS1\x02SRC1\x02SIS1\x02\x00\x18PSD0\x01PSD1\x01SSD0\x01SSD1\x01\x00\x0cPCT0\x02\x00\x02PCT1\x02\x00\x02SCT0\x02\x00\x02SCT1\x02\x00\x02\x00@\x04PCB0\x01PCB1\x01SCB0\x01SCB1\x01PCR0\x01PCR1\x01SCR0\x01SCR1\x01\x00\x02WRPP\x01\x00\x01FPB0\x01FPB1\x01FSB0\x01FSB1\x01PSIG\x02SSIG\x02[\x81\x1fIDCS\x03\x00@ PTI0\x04PTI1\x04\x00\x08STI0\x04STI1\x04\x14\'GPCT\x04\xa0\t\x92}hi\x00\xa4 +\x00\xa0\t\x90\x92hi\xa4\x0b\x84\x03\xa4wt +\trjk\x00\x00 +\x1e\x00\x14*GDCT\x04\xa0\x06\x92h\xa4 +\x00\xa0\x05i\xa4 +\x14\xa0\x0cj\xa4wt +\x04k\x00 +\x0f\x00\xa4wt +\x04k\x00 +\x1e\x00\x142MTIM\x02p +\x00`\xa0\x07h}` +\x01`\xa0\x0b\x92\x95h +\x02}` +\x02`\xa0\x08\x92i}` +\x04`\xa0\x08\x92h}` +\x08`\xa4`\x14\x1aMISP\x01\xa0\x06\x92h\xa4 +\x00\xa0\t\x92\x94h +\x02\xa4 +\x01\xa4 +\x02\x14\x1cMRCT\x01\xa0\t\x92\x94h +\x02\xa4 +\x00\xa0\x08\x93h +\x03\xa4 +\x01\xa4 +\x03[\x82\x1dSMBU\x08_ADR\x0c\x03\x00\x1f\x00\x08_S3D +\x03\x08RID_ +\x00[\x82J\x0eUSB0\x08_ADR\x0c\x00\x00\x1d\x00\x08_S3D +\x02\x08RID_ +\x00[\x80U0CS\x02 +\xc4 +\x04[\x81\rU0CS\x03U0EN\x02\x00\x1e\x08_PR0\x12\x19\x01\\/\x05_SB_PCI0LPC_EC__PUBS\x08_PR1\x12\x19\x01\\/\x05_SB_PCI0LPC_EC__PUBS\x08_PR2\x12\x19\x01\\/\x05_SB_PCI0LPC_EC__PUBS\x08_PRW\x12\x1d\x03 +\x03 +\x03\\/\x05_SB_PCI0LPC_EC__PUBS\x141_PSW\x01\xa0\thp +\x03U0EN\xa1\x08p +\x00U0EN\\/\x05_SB_PCI0LPC_EC__PNSTh[\x82J\x07USB1\x08_ADR\x0c\x01\x00\x1d\x00\x08_S3D +\x02\x08RID_ +\x00[\x80U1CS\x02 +\xc4 +\x04[\x81\rU1CS\x03U1EN\x02\x00\x1e\x08_PRW\x12\x06\x02 +\x04 +\x03\x14\x19_PSW\x01\xa0\thp +\x03U1EN\xa1\x08p +\x00U1EN[\x82\x1aURTH\x08_ADR +\x00[\x82\x0cUPEX\x08_ADR +\x02[\x82N\x0eUSB2\x08_ADR\x0c\x02\x00\x1d\x00\x08_S3D +\x02\x08RID_ +\x00[\x80U2CS\x02 +\xc4 +\x04[\x81\rU2CS\x03U2EN\x02\x00\x1e\x08_PR0\x12\x19\x01\\/\x05_SB_PCI0LPC_EC__PUBS\x08_PR1\x12\x19\x01\\/\x05_SB_PCI0LPC_EC__PUBS\x08_PR2\x12\x19\x01\\/\x05_SB_PCI0LPC_EC__PUBS\x08_PRW\x12\x1d\x03 +\x0c +\x03\\/\x05_SB_PCI0LPC_EC__PUBS\x14\x19_PSW\x01\xa0\thp +\x03U2EN\xa1\x08p +\x00U2EN[\x82\x1aURTH\x08_ADR +\x00[\x82\x0cUPDK\x08_ADR +\x02[\x82\x16USB3\x08_ADR\x0c\x03\x00\x1d\x00\x08RID_ +\x00[\x82N\x0fUSB7\x08_ADR\x0c\x07\x00\x1d\x00\x08_S3D +\x03\x08RID_ +\x00[\x80U7CS\x02 +` +\x04[\x81\x14U7CS\x03\x00\x10PWKI\x01PWUC\x06\x00\t\x08_PR0\x12\x19\x01\\/\x05_SB_PCI0LPC_EC__PUBS\x08_PR1\x12\x19\x01\\/\x05_SB_PCI0LPC_EC__PUBS\x08_PR2\x12\x19\x01\\/\x05_SB_PCI0LPC_EC__PUBS\x14\x14_INI\x00p +\x01PWKIp +\x0fPWUC\x08_PRW\x12\x1d\x03 +\r +\x03\\/\x05_SB_PCI0LPC_EC__PUBS[\x82(URTH\x08_ADR +\x00[\x82\x0cUPDK\x08_ADR +\x06[\x82\x0cUPEX\x08_ADR +\x04[\x821HDEF\x08_ADR\x0c\x00\x00\x1b\x00\x08_S3D +\x03\x08RID_ +\x00\x08_PRW\x12\x06\x02 +\x05 +\x04\x14\x07_PSW\x01\xa3\x10C\xbe\\/\x04_SB_PCI0LPC_EC__\x08BDEV +\xff\x08BSTS +\x00\x08BHKE +\x00\x08BXCN +\x00\x142_Q2C\x00\xa0+\x93BSTS +\x00pBGID +\x00BDEV\xa0\rBXCNNXREBDEV\xa1\tNBREBDEV\x14)_Q2D\x00pBGID +\x00BDEV\xa0\rBXCNNXRCBDEV\xa1\tNBINBDEV\x14D\x07_Q38\x00pBGID +\x00`\xa01\x93` +\x0fBDIS\xa0\x17BXCNpBDEV`p +\x0fBDEVNXEJ`\xa1\x0fNBEJBDEVp`BDEV\xa12\xa0\x16HPBU\xa0\x10BXCNp`BDEVNXIN`\xa1\x19p`BDEV\xa0 +BXCNNXRC`\xa1\x06NBIN`\x14B\rNBRE\x01\xa0&\x93h +\r\xa0 \\LFDC\x86\\/\x05_SB_PCI0LPC_FDC_FDD0 +\x03\xa0F\x04\x95h +\x0c\xa0#\x93\\BIDE +\x03\x86\\/\x05_SB_PCI0SATASCNDMSTR +\x03\xa1\x1b\x86\\/\x05_SB_PCI0IDE0PRIMMSTR +\x03\xa0I\x04\x93h +\x10\xa0+\x91HPACHB0A\xa0 \\WNTF\x86\\/\x05_SB_PCI0LPC_EC__BAT1 +\x03\xa1\x16LED_ +\x04 +\xc0BEEP +\x0fp +\x02BSTS\xa0\x12\x93h +\x11\x86\\._SB_LCIO +\x03\x14K\x0eNBEJ\x01\xa0N\x0c\x93BSTS +\x00\xa0&\x93h +\r\xa0 \\LFDC\x86\\/\x05_SB_PCI0LPC_FDC_FDD0 +\x01\xa0F\x04\x95h +\x0c\xa0#\x93\\BIDE +\x03\x86\\/\x05_SB_PCI0SATASCNDMSTR +\x01\xa1\x1b\x86\\/\x05_SB_PCI0IDE0PRIMMSTR +\x01\xa0C\x04\x93h +\x10\xa0 \\WNTF\x86\\/\x05_SB_PCI0LPC_EC__BAT1 +\x01\xa1\x1b\x86\\/\x05_SB_PCI0LPC_EC__BAT1 +\x81\xa0\x12\x93h +\x11\x86\\._SB_LCIO +\x01LED_ +\x04 +\x00BEEP +\x00p +\x00BSTS\x14B\x15NBIN\x01\xa08\x93h +\r\xa02\\LFDCBEN_ +\x00BSFDLED_ +\x04 +\x80\x86\\/\x05_SB_PCI0LPC_FDC_FDD0 +\x01\xa0B\x06\x95h +\x0c\xa0\x0b\x93h +\x06BEN_ +\x02\xa1\x07BEN_ +\x01LED_ +\x04 +\x80\xa0#\x93\\BIDE +\x03\x86\\/\x05_SB_PCI0SATASCNDMSTR +\x01\xa1\x1b\x86\\/\x05_SB_PCI0IDE0PRIMMSTR +\x01\xa0I\x06\x93h +\x10LED_ +\x04 +\x80\xa0>\\WNTFp +\x01\\/\x06_SB_PCI0LPC_EC__BAT1XB1S\x86\\/\x05_SB_PCI0LPC_EC__BAT1 +\x01\xa1\x1b\x86\\/\x05_SB_PCI0LPC_EC__BAT1 +\x81\xa07\x93h +\x11\xa01\x92\\/\x04_SB_PCI0LPC_CSONLED_ +\x04 +\x80\xa0\x13\\WNTF\x86\\._SB_LCIO +\x01BEEP +\x00p +\x00BSTS\x14J\x07BEJ0\x01\xa0A\x06hBDISLED_ +\x04 +\x00\\BHDP +\x01 +\x00p +\x01BSTS\xa0*BHKEp +\x00BHKE\\/\x06_SB_PCI0LPC_EC__HKEYMHKQ\x0b\x030\xa0\x16\x93BDEV +\x11p +\x0fBDEVp +\x00BSTS\xa1\x10LED_ +\x04 +\x80p +\x00BSTS\x14\x1dBEJ3\x01\xa0\rhBDISp +\x01BSTS\xa1\x08p +\x00BSTS\x14I\x07BPTS\x01p +\x01HDBM\xa0\x17\x92\x93BSTS +\x00p +\x0fBDEVp +\x00BSTSp +\x00BHKEp +\x01`\xa0\x1d\x92\x93BDEV +\x0f\xa0\x13\x90\x92\\LFDC\x93BDEV +\rp +\x00`\xa1\x05p +\x00`\xa0 +\x92\x95h +\x04p +\x00`\xa0\x08`BUWK +\x01\xa1\x0fLED_ +\x04 +\x00BUWK +\x00\x14D\x14BWAK\x01BUWK +\x00pBGID +\x00`\xa0\x10\x90\x92\\LFDC\x93` +\rBDIS\\/\x05_SB_PCI0LPC_FDC__INI\xa0K\x05\\LFDC\xa0C\x05\x92\x93` +\r\xa0K\x04\x93\\/\x05_SB_PCI0LPC_FDC_FD0S\\/\x05_SB_PCI0LPC_EC__HPNF\x86\\/\x05_SB_PCI0LPC_FDC_FDD0 +\x01\xa0J +\x93BSTS +\x00\xa0.\x92\x93`BDEV\xa0\x10BXCNp`BDEVNXRC`\xa1\x14NBEJBDEVp`BDEVNBIN`\xa1A\x07\xa0N\x06\x91\\LFDC\x92\x93BDEV +\r\xa0M\x05\x92\x93` +\x0fLED_ +\x04 +\x80\xa0M\x04HPBU}yh +\x08\x00\x0b\x05 BHKE\\/\x06_SB_PCI0LPC_EC__HKEYMHKQBHKE\xa0\x06\x92\x94h +\x02\xa1\x13\xa0 +BXCNNXRE`\xa1\x06NBRE`\x14N\x0fBDIS\x00\xa0F\x0f\x92\\/\x04_SB_PCI0LPC_CSON\xa0F\x06\x93\\BIDE +\x03p +\x00\\/\x04_SB_PCI0SATASIE0p +\x00\\/\x04_SB_PCI0SATASTI0p +\x00\\/\x04_SB_PCI0LPC_URST[! +\x0fp +\x01\\/\x04_SB_PCI0SATASSIG\xa1N\x05p +\x00\\/\x04_SB_PCI0IDE0PIE0p +\x00\\/\x04_SB_PCI0IDE0PTI0p +\x00\\/\x04_SB_PCI0LPC_URST[! +\x0fp +\x01\\/\x04_SB_PCI0IDE0PSIGp +\x01\\/\x04_SB_PCI0LPC_CSONBSFD\x14A\x0eBEN_\x01\xa0I\r\\/\x04_SB_PCI0LPC_CSONp +\x00\\/\x04_SB_PCI0LPC_URSTp +\x00\\/\x04_SB_PCI0LPC_CSON[" +\x0f\xa0C\th\xa05\x93\\BIDE +\x03p +\x00\\/\x04_SB_PCI0SATASSIGp +\x01\\/\x04_SB_PCI0SATASIDE\xa1-p +\x00\\/\x04_SB_PCI0IDE0PSIGp +\x01\\/\x04_SB_PCI0IDE0PIDE[! +-p +\x01\\/\x04_SB_PCI0LPC_URST\xa0 +\x93h +\x02["\x0b\xd0\x07\xa1\x06["\x0b\x90\x01\x14N\x05BSTA\x01\xa0\x17\\/\x04_SB_PCI0LPC_CSON\xa4 +\x00BINI\xa0\r\x93h +\x00\xa4\x93BDEV +\r\xa0\r\x93h +\x01\xa4\x95BDEV +\x0c\xa0\r\x93h +\x02\xa4\x93BDEV +\x0e\xa0\r\x93h +\x03\xa4\x93BDEV +\x11\xa4 +\x00\x14D\x06BUWK\x01\xa0?\\H8DR\xa0\x1chp +\x01\\/\x05_SB_PCI0LPC_EC__HWBU\xa1\x1bp +\x00\\/\x05_SB_PCI0LPC_EC__HWBU\xa1\x1c\xa0\rh\\MBEC +2 +\xff +\x80\xa1\x0c\\MBEC +2 +\x7f +\x00\x14\x1aBINI\x00\xa0\x13\x93BDEV +\xffpBGID +\x00BDEV\x14F\x0bBGID\x01\xa0\x06hp +\xff`\xa1E +\xa0\x0c\\H8DRpHBID`\xa1\x10zRBEC +G +\x02`{` +\x0f`{` +\x03`\xa0\t\x93` +\x00p +\x03`\xa1\x11\xa0\t\x93` +\x02p +\x06`\xa1\x05p +\x0f`\xa0)\x93` +\x0f\xa0\x10\\H8DR\xa0\tHB1Ap +\x10`\xa1\x12\xa0\x10{\\RBEC +9 +\x80\x00p +\x10`\xa09\x93` +\x0f\xa03\x92\\/\x04_SB_PCI0LPC_CSON\xa0\x1d\x92{\\/\x04_SB_PCI0LPC_GL00 +@\x00p +\x11`\xa4`\x14(BSFD\x00\xa0\x13BSTA +\x00\\MISA\x0b\xf3\x03 +\xf3 +\x00\xa1\r\\MISA\x0b\xf3\x03 +\xf3 +\x04\x14A\x0bNXRE\x01\xa0\x14\x93h +\x0fLED_ +\x04 +\x00p +\x00BSTS\xa0!\x93h +\r\xa0\x1b\\LFDCLED_ +\x04 +\xc0\x86\\._SB_SWAP +\x83\xa0\x1a\x95h +\x0cLED_ +\x04 +\xc0\x86\\._SB_SWAP +\x83\xa0\x1a\x93h +\x0eLED_ +\x04 +\xc0\x86\\._SB_SWAP +\x83\xa0<\x93h +\x10\xa0\x1f\x91HPACHB0ALED_ +\x04 +\xc0\x86\\._SB_SWAP +\x83\xa1\x16LED_ +\x04 +\xc0BEEP +\x0fp +\x02BSTS\x14E\x0cNXRC\x01\xa0+\x93h +\r\xa0%\\LFDCLED_ +\x04 +\x80BEN_ +\x00BSFD\x86\\._SB_SWAP +\x80\xa0.\x95h +\x0cLED_ +\x04 +\x80\xa0\x0b\x93h +\x06BEN_ +\x02\xa1\x07BEN_ +\x01\x86\\._SB_SWAP +\x80\xa0 \x93h +\x0eLED_ +\x04 +\x80BEN_ +\x00\x86\\._SB_SWAP +\x80\xa04\x93h +\x10\x86\\/\x05_SB_PCI0LPC_EC__BAT1 +\x81LED_ +\x04 +\x80\x86\\._SB_SWAP +\x80BEEP +\x00p +\x00BSTS\x14I\x04NXEJ\x01\xa0\x1f\x93h +\x10\x86\\/\x05_SB_PCI0LPC_EC__BAT1 +\x81\x86\\._SB_SWAP +\x82LED_ +\x04 +\x00BEEP +\x00p +\x00BSTS\x14\x13NXIN\x01\x86\\._SB_SWAP +\x81\x10C\x10\\/\x04_SB_PCI0LPC_FDC_\x08XFDS +\x00\x08DCFD +\x00\x14C\x05_INI\x00p +\x00XFDS\xa07\\H8DR}\\/\x05_SB_PCI0LPC_EC__HAMA +\x0c\\/\x05_SB_PCI0LPC_EC__HAMA\xa1\x0c\\MBEC +\x1a +\xff +\x0c\x08FDEB\x11\x17 +\x14\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x00\x00\x8cFDEB +\x00FD0S\x14C\x06_FDE\x00\xa0&\x91\\/\x05_SB_PCI0LPC_EC__BSTA +\x00DCFDp +\x01FD0S\xa1/\xa0$\x91\\/\x05_SB_PCI0LPC_EC__HPNFXFDSp +\x00FD0S\xa1\x08p +\x01FD0S\xa4FDEB\x10E\x06\\/\x05_SB_PCI0LPC_FDC_FDD0\x14K\x04_EJ0\x01\xa02\\/\x05_SB_PCI0LPC_EC__BSTA +\x00\\/\x05_SB_PCI0LPC_EC__BEJ0h\xa1\x10\xa0\x05DCFD\xa1\x08p +\x01XFDS\x10A\x12\\/\x04_SB_PCI0LPC_EC__\x14C\t_Q52\x00\xa02\\/\x05_SB_PCI0LPC_FDC_XFDSp +\x00\\/\x05_SB_PCI0LPC_FDC_XFDS\xa1H\x05\xa02\x91\\/\x05_SB_PCI0LPC_EC__BSTA +\x00\\/\x05_SB_PCI0LPC_FDC_DCFD\xa1"\xa0 \\LFDC\x86\\/\x05_SB_PCI0LPC_FDC_FDD0 +\x01\x14G\x07_Q53\x00p +\x00\\/\x05_SB_PCI0LPC_FDC_XFDS\xa02\x91\\/\x05_SB_PCI0LPC_EC__BSTA +\x00\\/\x05_SB_PCI0LPC_FDC_DCFD\xa1"\xa0 \\LFDC\x86\\/\x05_SB_PCI0LPC_FDC_FDD0 +\x01\x10F\x04\\/\x05_SB_PCI0LPC_EC__BAT1\x14,_EJ0\x01p +\x00B1STp +\x00XB1S\\/\x05_SB_PCI0LPC_EC__BEJ0h\x10@3\\_SB_[\x82G2SWAP\x08_HID\x0c$M\x00i\x14\x15_STA\x00\xa0\t\\WMEF\xa4 +\x0f\xa1\x04\xa4 +\x00\x14"XCNN\x01ph\\/\x05_SB_PCI0LPC_EC__BXCN\xa4 +\t\x14\tXSWP\x00\xa4 +\x01\x14\x1eXEJ0\x01\\/\x05_SB_PCI0LPC_EC__BEJ0h\x14\x1eXEJ3\x01\\/\x05_SB_PCI0LPC_EC__BEJ3h\x14@\x1fXDID\x00\x08XPCK\x12\x17\x06 +\x00 +\x00\x0c\xff\xff\xff\xff\x0c\xff\xff\xff\xff\x0c\xff\xff\xff\xff +\x00p\\/\x05_SB_PCI0LPC_EC__BDEV`p`\x88XPCK +\x00\x00\xa0D\r\x95` +\x0c\xa0J\x06\x93\\BIDE +\x03p\\/\x04_SB_PCI0SATA_ADR\x88XPCK +\x02\x00p\\/\x05_SB_PCI0SATASCND_ADR\x88XPCK +\x03\x00p\\/\x06_SB_PCI0SATASCNDMSTR_ADR\x88XPCK +\x04\x00\xa1B\x06p\\/\x04_SB_PCI0IDE0_ADR\x88XPCK +\x02\x00p\\/\x05_SB_PCI0IDE0PRIM_ADR\x88XPCK +\x03\x00p\\/\x06_SB_PCI0IDE0PRIMMSTR_ADR\x88XPCK +\x04\x00\xa0O\x05\x93` +\r\xa0K\x04\\LFDCp\\/\x05_SB_PCI0LPC_FDC__HID\x88XPCK +\x02\x00p\\/\x06_SB_PCI0LPC_FDC_FDD0_ADR\x88XPCK +\x04\x00\xa1\x0cp +\x0f\x88XPCK +\x00\x00\xa0N\x04\x93` +\x10p\\/\x06_SB_PCI0LPC_EC__BAT1_HID\x88XPCK +\x02\x00p\\/\x06_SB_PCI0LPC_EC__BAT1_UID\x88XPCK +\x04\x00p\x7f\\/\x04_SB_PCI0LPC_CSON +\x01\x00\x88XPCK +\x05\x00\xa4XPCK\x14H\x05XSTM\x01\x08XDMY\x11\x03 +\x14\xa0\'\x93\\BIDE +\x03\\/\x05_SB_PCI0SATASCND_STMXDMYh +\x00\xa1\x1f\\/\x05_SB_PCI0IDE0PRIM_STMXDMYh +\x00\x14K\x04XGTF\x00\xa0%\x93\\BIDE +\x03\xa4\\/\x06_SB_PCI0SATASCNDMSTR_GTF\xa1\x1d\xa4\\/\x06_SB_PCI0IDE0PRIMMSTR_GTF\x10L\xe9\\_SB_[\x82C\xe9GDCK\x08_HID\x0c$M\x00y\x08_CID\x0cA\xd0\x0c\x15\x08DOID\x0c\xff\xff\xff\xff\x08DIDB\x0c\xff\xff\xff\xff\x08FLAG +\x00\x08WUCT +\x00\x08DHKE +\x00[\x02DEVT\x14?DSTA\x00UDCKUDKT\xa0\x1a\x91\x93GDID\x0c$M\x00L\x93GDID\x0c$M\x00Dp +\x0f`\xa1\x13\xa0\x0b\x92\\W98Fp +\x00`\xa1\x05p +\x0c`\xa4`\x14G\x07DPTS\x01\xa0O\x06\x90\x92\x95h +\x01\x92\x94h +\x04p +\x00DHKE\xa0\x18DFLG +\x02 +\x02p +\x00DOIDDFLG +\x01 +\x02\xa0/\x91\x93GDID\x0c$M\x00L\x93GDID\x0c$M\x00D\\/\x05_SB_PCI0LPC_EC__DDWK +\x01pGDIDDIDBDFLG +\x00\x0b\x00\x01\x08DDTM +\x00\x14J\x18DWAK\x01p\x0c\xff\xff\xff\xffDOID\xa0H\x17\x90\x92\x95h +\x01\x92\x94h +\x04p +\x00DDTM\xa0\x1d\x91\x93DIDB\x0c$M\x00L\x93DIDB\x0c$M\x00Dp +\x01DDTM\xa0B\rDDTMp +\x00DDTM\xa0\x12\x93GDID\x0c$M\x00Lp +\x01DDTM\xa0\x12\x93GDID\x0c$M\x00Dp +\x01DDTM\xa0;DDTM\xa0"\x93h +\x04\xa0\x1c{\\/\x04_SB_PCI0LPC_WAKR +\x08\x00DGPEyh +\x08DHKE\xa0 +\x92DFLG +\x02 +\x08\xa1B\x06p +\x01\\/\x04_SB_PCI0LPC_BUSD\\/\x05_SB_PCI0LPC_EC__DATT +\x00 +\x01\\/\x05_SB_PCI0LPC_EC__DATT +\x01 +\x00\x86\\._SB_GDCK +\x00\\DHDP +\x00\xa1;p +\x00DDTM\xa0\x12\x93GDID\x0c$M\x00Lp +\x01DDTM\xa0\x12\x93GDID\x0c$M\x00Dp +\x01DDTM\xa0\tDDTMWDCK\xa1\x02\xa3DFLG +\x01\x0b\x00\x01DFLG +\x01 +\x02DFLG +\x01 +\x10DFLG +\x01 + p +\x01\\/\x04_SB_PCI0LPC_DSCI\x14\x0eDGPE\x00DFLG +\x00 +\x08\x14N\x12DDCK\x01\xa0J\x08h\\/\x05_SB_PCI0LPC_EC__LED_ +\x08 +\x00\\/\x05_SB_PCI0LPC_EC__LED_ +\t +\x80\\/\x04_SB_PCI0LPC_LCON +\x01BCON +\x01\\/\x05_SB_PCI0LPC_EC__DATT +\x00 +\x00\\/\x05_SB_PCI0LPC_EC__DATT +\x01 +\x01\xa1H\t\\/\x05_SB_PCI0LPC_EC__LED_ +\x08 +\x80\\/\x05_SB_PCI0LPC_EC__LED_ +\t +\xc0DFLG +\x00 +\x02\\DHDP +\x00BCON +\x00\\/\x04_SB_PCI0LPC_LCON +\x00\\/\x05_SB_PCI0LPC_EC__DATT +\x00 +\x01\\/\x05_SB_PCI0LPC_EC__DATT +\x01 +\x00\xa4 +\x01\x14C\x05DEJ0\x01\xa0\rhp +\x00DOIDUDKIDFLG +\x01 +\x02\\/\x05_SB_PCI0LPC_EC__LED_ +\x08 +\x00\\/\x05_SB_PCI0LPC_EC__LED_ +\t +\x00\x14\x1fDEJ3\x01\xa0\x18hDFLG +\x00 +\x10\xa0\r\x93\\SPS_ +\x03PDE3\x14\x11DEJ4\x01\xa0 +hDFLG +\x00 + \x14\x07PDE3\x00\xa3\x08HIDE +\x00\x14@\x08WDCK\x00\xa0/\x91DFLG +\x02 +\x10DFLG +\x02 + DDCK +\x01\xa0\x16\\W98FDFLG +\x00\x0b\x00\x02p +\x05HIDE\xa1H\x04\xa06\x93\\/\x05_SB_PCI0LPC_EC__BGID +\x00 +\x11\\/\x05_SB_PCI0LPC_EC__NBRE +\x11\xa1\x0e\x86\\._SB_GDCK +\x00\x14O\x07UDCK\x00\xa0G\x07DFLG +\x02 +\x08\xa0L\x06\x92DFLG +\x02\x0b\x00\x01}DHKE\x0b\x04 DHKE\xa0(\x93\\UOPT +\x00\\/\x06_SB_PCI0LPC_EC__HKEYMHKQDHKE\xa0\x13\\W98F\x86\\._SB_GDCK +\x01\xa1\x0e\x86\\._SB_GDCK +\x03DFLG +\x01 +\x08\x14\x1dUDKI\x00\xa0\r\\WNTFp +\x01WUCT\xa1\x08p +\x05WUCT\x14C\x05UDKT\x00\xa0K\x04{DHKE\x0b\x04 \x00\xa0?\x93GDID +\x00\xa06\x92vWUCTp +\x00DHKE\xa0\'\x93\\UOPT +\x00\\/\x06_SB_PCI0LPC_EC__HKEYMHKQ\x0b\x03@\x145GDID\x00\xa0)\x93DOID\x0c\xff\xff\xff\xffp\x0c\xff\xff\xff\xff\\/\x03_SB_GDCKG_IDpRDIDDOID\xa4DOID\x14O\tRDID\x00p +\x00`\xa0A\t\\/\x04_SB_PCI0LPC_EPWG\xa0@\x06\x93\\/\x03_SB_GDCKGGID +\x00\xa0B\x04\\H8DR\xa01\\/\x05_SB_PCI0LPC_EC__EEPRp\\/\x05_SB_PCI0LPC_EC__HDEP`\xa1\x08p\x0c$M\x00L`\xa1\x08p\\DCKI`\xa0\x1a\x93\\/\x03_SB_GDCKGGID +\x01p\x0c$M\x00D`\xa4`\x14G\x08RDSR\x00p +\x00`\xa0I\x07\x92\x93GDID +\x00\xa0F\x05\x93\\/\x03_SB_GDCKGGID +\x00\xa08\\H8DR\xa01\\/\x05_SB_PCI0LPC_EC__EEPRp\\/\x05_SB_PCI0LPC_EC__HDEN`\xa1\x08p\\DCKS`\xa0\x17\x93\\/\x03_SB_GDCKGGID +\x01p +\x00`\xa4`\x14E\x17BCON\x01p\\/\x05_SB_PCI0LPC_EC__DATT +\x00 +\x02`\\/\x05_SB_PCI0LPC_EC__DATT +\x00 +\x01}\\/\x04_SB_PCI0LPC_SERQ +@\\/\x04_SB_PCI0LPC_SERQ{\\/\x04_SB_PCI0LPC_SERQ +\x7f\\/\x04_SB_PCI0LPC_SERQp\\/\x04_SB_PCI0LPC_CLKRa\xa0.hp +\x00\\/\x04_SB_PCI0LPC_CLKRp +\x01\\/\x04_SB_PCI0LPC_BUSC\xa1\x17p +\x01\\/\x04_SB_PCI0LPC_BUSDpa\\/\x04_SB_PCI0LPC_CLKR}\\/\x04_SB_PCI0LPC_SERQ +\xc0\\/\x04_SB_PCI0LPC_SERQ{\\/\x04_SB_PCI0LPC_SERQ +\xbf\\/\x04_SB_PCI0LPC_SERQ\xa0 \x93` +\x00\\/\x05_SB_PCI0LPC_EC__DATT +\x00 +\x00\x149DFLG\x02\xa0\x0f\x93h +\x00}FLAGiFLAG\xa0\x11\x93h +\x01{FLAG\x80i\x00FLAG\xa0\x0b{FLAGi\x00\xa4 +\x01\xa1\x04\xa4 +\x00\x10L\x1b\\/\x04_SB_PCI0LPC_EC__\x14A\x11_Q37\x00\xa0I\x10\\/\x04_SB_PCI0LPC_EPWGp\x0b\xd0\x07`[" +dp\x0c\xff\xff\xff\xff\\/\x03_SB_GDCKG_ID\xa20\x90\x93\\/\x03_SB_GDCKGGID +\x07`[" +\x01p\x0c\xff\xff\xff\xff\\/\x03_SB_GDCKG_IDv`p\x0c\xff\xff\xff\xff\\/\x03_SB_GDCKDOID\xa0O\x08\x91\x93\\/\x03_SB_GDCKGDID\x0c$M\x00L\x93\\/\x03_SB_GDCKGDID\x0c$M\x00D\xa06\x93\\/\x05_SB_PCI0LPC_EC__BGID +\x00 +\x11\\/\x05_SB_PCI0LPC_EC__NBRE +\x11\xa1*\xa0(HPACp +\x00\\/\x04_SB_PCI0LPC_DRST\x86\\._SB_GDCK +\x00\x14D\tEEPR\x00p +\x00`\xa0F\x08\\H8DRp +\x00HDEOp + +HDEC\xa2\x0e\x92{HDEC +\xc0\x00[" +\x01\xa0A\x06\x92{HDEC +@\x00p +\x00apHDENbp +\x04c\xa2\x11cra{b +\xff\x00azb +\x08bvcpHDEPbp +\x04c\xa2\x11cra{b +\xff\x00azb +\x08bvcraHDEMaraHDESa\xa0\x0b\x92{a +\xff\x00p +\x01`\xa4`\x14D\x04_STA\x00pGGID`\xa0\x0b\x92\\W98Fp +\x00a\xa1\x05p +\x0ca\xa0\x1b\x91\x93` +\x00\x93` +\x01p\\/\x03_SB_GDCKDSTAa\xa0\x06\x93` +\x02\xa3\xa4a\x14H\x0c_INI\x00\\/\x05_SB_PCI0LPC_EC__DATT +\x02 +\x01\xa0>\x93GGID +\x07\\/\x05_SB_PCI0LPC_EC__DATT +\x01 +\x00\\/\x05_SB_PCI0LPC_EC__DATT +\x00 +\x01\xa17\\/\x05_SB_PCI0LPC_EC__DATT +\x01 +\x01\\/\x05_SB_PCI0LPC_EC__DATT +\x00 +\x00\\/\x05_SB_PCI0LPC_EC__DDWK +\x00p +\x01\\/\x04_SB_PCI0LPC_DSCI\x14K\x04_DCK\x01p +\x00`\xa0"\x91\x93GGID +\x00\x93GGID +\x01p\\/\x03_SB_GDCKDDCKh`\xa0\x1a\\VIGD\\/\x04_SB_PCI0VID_VDSWh\xa4`\x08UDOP +\x00\x148_EJ0\x01\xa0\x18\x93GGID +\x00\\/\x03_SB_GDCKDEJ0h\xa0\x18\x93GGID +\x01\\/\x03_SB_GDCKDEJ0h\x148XEJ3\x01\xa0\x18\x93GGID +\x00\\/\x03_SB_GDCKDEJ3h\xa0\x18\x93GGID +\x01\\/\x03_SB_GDCKDEJ3h\x148_EJ4\x01\xa0\x18\x93GGID +\x00\\/\x03_SB_GDCKDEJ4h\xa0\x18\x93GGID +\x01\\/\x03_SB_GDCKDEJ4h\x146PEJ3\x00\xa0\x17\x93GGID +\x00\\/\x03_SB_GDCKPDE3\xa0\x17\x93GGID +\x01\\/\x03_SB_GDCKPDE3\x14A\x04_BDN\x00p +\x00`\xa0\x19\x93GGID +\x00p\\/\x03_SB_GDCKRDID`\xa0\x19\x93GGID +\x01p\\/\x03_SB_GDCKRDID`\xa4`\x14A\x04_UID\x00p +\x00`\xa0\x19\x93GGID +\x00p\\/\x03_SB_GDCKRDSR`\xa0\x19\x93GGID +\x01p\\/\x03_SB_GDCKRDSR`\xa4`\x14.GPTS\x01\\/\x03_SB_GDCKDPTSh\\/\x05_SB_PCI0LPC_EC__RPTSh\x14H\x04GWAK\x01\\/\x03_SB_GDCKDWAKh\\/\x05_SB_PCI0LPC_EC__RWAKh\\/\x05_SB_PCI0LPC_EC__DDWK +\x00\x146GGPE\x00\xa0\x17\x93GGID +\x00\\/\x03_SB_GDCKDGPE\xa0\x17\x93GGID +\x01\\/\x03_SB_GDCKDGPE\x08G_ID\x0c\xff\xff\xff\xff\x14N\x06GGID\x00pG_ID`\xa0N\x05\x93`\x0c\xff\xff\xff\xffp\\/\x04_SB_PCI0LPC_DKI0`p\\/\x04_SB_PCI0LPC_DKI1ap\\/\x04_SB_PCI0LPC_DKI2b}`ya +\x01\x00`}`yb +\x02\x00`p`G_ID\xa4`\x10F*\\/\x04_SB_PCI0LPC_EC__\x14M\x07_Q50\x00p\\/\x03_SB_GDCKGGID`\xa0D\x06\x91\x93` +\x00\x93` +\x01\\/\x05_SB_PCI0LPC_EC__LED_ +\x08 +\x80\\/\x05_SB_PCI0LPC_EC__LED_ +\t +\xc0\xa0\x13\\W98F\x86\\._SB_GDCK +\x01\xa1\x0e\x86\\._SB_GDCK +\x03\x14F\x19DATT\x02p +\x00`\xa0B\x08\x93h +\x00\xa0(\x93i +\x01\xa0\x11\\H8DR}HAM6 +\x80HAM6\xa1\x0c\\MBEC +\x16 +\xff +\x80p +\x01`\xa0$\x93i +\x00\xa0\x11\\H8DR{HAM6 +\x7fHAM6\xa1\x0c\\MBEC +\x16 +\x7f +\x00\xa0-\x93i +\x02\xa0\x14\\H8DR\xa0\r{HAM6 +\x80\x00p +\x01`\xa1\x12\xa0\x10{\\RBEC +\x16 +\x80\x00p +\x01`\xa0B\x08\x93h +\x01\xa0(\x93i +\x01\xa0\x11\\H8DR}HAMA +\x01HAMA\xa1\x0c\\MBEC +\x1a +\xff +\x01p +\x01`\xa0$\x93i +\x00\xa0\x11\\H8DR{HAMA +\xfeHAMA\xa1\x0c\\MBEC +\x1a +\xfe +\x00\xa0-\x93i +\x02\xa0\x14\\H8DR\xa0\r{HAMA +\x01\x00p +\x01`\xa1\x12\xa0\x10{\\RBEC +\x1a +\x01\x00p +\x01`\xa0B\x08\x93h +\x02\xa0(\x93i +\x01\xa0\x11\\H8DR}HAMB +\x01HAMB\xa1\x0c\\MBEC +\x1b +\xff +\x01p +\x01`\xa0$\x93i +\x00\xa0\x11\\H8DR{HAMB +\xfeHAMB\xa1\x0c\\MBEC +\x1a +\xfe +\x00\xa0-\x93i +\x02\xa0\x14\\H8DR\xa0\r{HAMB +\x01\x00p +\x01`\xa1\x12\xa0\x10{\\RBEC +\x1b +\x01\x00p +\x01`\xa4`\x14K\x07DDWK\x01p +\x00`\xa0#\x93h +\x01\xa0\x0c\\H8DRp\x01HWDK\xa1\x0c\\MBEC +2 +\xff +\x08p +\x01`\xa0\x1f\x93h +\x00\xa0\x0c\\H8DRp\x00HWDK\xa1\x0c\\MBEC +2 +\xf7 +\x00\xa0)\x93h +\x02\xa0\x10\\H8DR\xa0\tHWDKp +\x01`\xa1\x12\xa0\x10{\\RBEC +2 +\x08\x00p +\x01`\xa4`\x10#\\/\x04_SB_PCI0LPC_EC__\x14\x07RPTS\x01\xa3\x14\x06RWAK\x01\x10B\x10\\/\x04_SB_PCI0LPC_EC__\x14N\x04_Q1C\x00\xa0?\\/\x06_SB_PCI0LPC_EC__HKEYMHKK\x0c\x00\x00 \x00\\/\x06_SB_PCI0LPC_EC__HKEYMHKQ\x0b\x16\x10\\UCMS +\x00\x14N\x04_Q1D\x00\xa0?\\/\x06_SB_PCI0LPC_EC__HKEYMHKK\x0c\x00\x00\x10\x00\\/\x06_SB_PCI0LPC_EC__HKEYMHKQ\x0b\x15\x10\\UCMS +\x01\x14N\x04_Q1E\x00\xa0?\\/\x06_SB_PCI0LPC_EC__HKEYMHKK\x0c\x00\x00@\x00\\/\x06_SB_PCI0LPC_EC__HKEYMHKQ\x0b\x17\x10\\UCMS +\x02\x10L\x13\\/\x04_SB_PCI0LPC_EC__\x08BRTF +\x01\x14N\x08_Q14\x00\xa0=\\/\x06_SB_PCI0LPC_EC__HKEYMHKK\x0b\x00\x80\\/\x06_SB_PCI0LPC_EC__HKEYMHKQ\x0b\x10\x10\xa0?\\NBCF\xa0\x1c\\VIGD\x86\\/\x04_SB_PCI0VID_LCD0 +\x86\xa1\x1b\x86\\/\x05_SB_PCI0AGP_VID_LCD0 +\x86\xa1\x08\\UCMS +\x04\x14@\t_Q15\x00\xa0?\\/\x06_SB_PCI0LPC_EC__HKEYMHKK\x0c\x00\x00\x01\x00\\/\x06_SB_PCI0LPC_EC__HKEYMHKQ\x0b\x11\x10\xa0?\\NBCF\xa0\x1c\\VIGD\x86\\/\x04_SB_PCI0VID_LCD0 +\x87\xa1\x1b\x86\\/\x05_SB_PCI0AGP_VID_LCD0 +\x87\xa1\x08\\UCMS +\x05\x10D\x06\\/\x04_SB_PCI0LPC_EC__\x14N\x04_Q19\x00\xa0?\\/\x06_SB_PCI0LPC_EC__HKEYMHKK\x0c\x00\x00\x80\x00\\/\x06_SB_PCI0LPC_EC__HKEYMHKQ\x0b\x18\x10\\UCMS +\x03\x10D\x06\\/\x04_SB_PCI0LPC_EC__\x14N\x04_Q63\x00\xa0?\\/\x06_SB_PCI0LPC_EC__HKEYMHKK\x0c\x00\x00\x08\x00\\/\x06_SB_PCI0LPC_EC__HKEYMHKQ\x0b\x14\x10\\UCMS +\x0b\x10C\t\\/\x04_SB_PCI0LPC_EC__\x14 +_Q70\x00FNST\x14 +_Q72\x00FNST\x14 +_Q73\x00FNST\x14L\x05FNST\x00\xa0\x12\\H8DRpHFNS`pHFNEa\xa1\x17{\\RBEC +\x0e +\x03`{\\RBEC +\x00 +\x08a\xa0)a\xa0\x0c\x93` +\x00\\UCMS +\x11\xa0\x0c\x93` +\x01\\UCMS +\x0f\xa0\x0c\x93` +\x02\\UCMS +\x10\x10I<\\/\x05_SB_PCI0LPC_EC__HKEY\x08WGFL +\x00\x14\x1eWLSW\x00\xa4\\/\x05_SB_PCI0LPC_EC__GSTS\x14B\x04GWAN\x00p +\x00`\xa0\x0e{WGFL +\x01\x00}` +\x01`\xa0\x0b{WGFL +\x08\x00\xa4`\xa0 +WPWS}` +\x02`\xa0\x0e{WGFL +\x04\x00}` +\x04`\xa4`\x14K\x04SWAN\x01\xa0\x0c{h +\x02\x00WPWC +\x01\xa1\x07WPWC +\x00\xa0\x18{h +\x04\x00}WGFL +\x04WGFL\\WGSV +\x02\xa1\x15{WGFL\x80 +\x04\x00WGFL\\WGSV +\x03\x14B\x04GBDC\x00p +\x00`\xa0\x0e{WGFL +\x10\x00}` +\x01`\xa0\x0b{WGFL +\x80\x00\xa4`\xa0 +BPWS}` +\x02`\xa0\x0e{WGFL +@\x00}` +\x04`\xa4`\x14K\x04SBDC\x01\xa0\x0c{h +\x02\x00BPWC +\x01\xa1\x07BPWC +\x00\xa0\x18{h +\x04\x00}WGFL +@WGFL\\BLTH +\x02\xa1\x15{WGFL\x80 +@\x00WGFL\\BLTH +\x03\x14;WPWS\x00\xa0\x1f\\H8DRp\\/\x05_SB_PCI0LPC_EC__DCWW`\xa1\x12pz{\\RBEC +: +@\x00 +\x06\x00`\xa4`\x14\x19WTGL\x00\xa0\x12{WGFL +\x01\x00WPWC\x92WPWS\x14B\tWPWC\x01\xa0N\x04\x90h\x90{WGFL +\x01\x00\x92{WGFL +\x08\x00\xa0\x1f\\H8DRp\x01\\/\x05_SB_PCI0LPC_EC__DCWW\xa1\x0c\\MBEC +: +\xff +@}WGFL +\x02WGFL\xa1;\xa0\x1f\\H8DRp\x00\\/\x05_SB_PCI0LPC_EC__DCWW\xa1\x0c\\MBEC +: +\xbf +\x00{WGFL\x80 +\x02\x00WGFL\x14;BPWS\x00\xa0\x1f\\H8DRp\\/\x05_SB_PCI0LPC_EC__DCBD`\xa1\x12pz{\\RBEC +: +\x10\x00 +\x04\x00`\xa4`\x14\x19BTGL\x00\xa0\x12{WGFL +\x10\x00BPWC\x92BPWS\x14B\tBPWC\x01\xa0N\x04\x90h\x90{WGFL +\x10\x00\x92{WGFL +\x80\x00\xa0\x1f\\H8DRp\x01\\/\x05_SB_PCI0LPC_EC__DCBD\xa1\x0c\\MBEC +: +\xff +\x10}WGFL + WGFL\xa1;\xa0\x1f\\H8DRp\x00\\/\x05_SB_PCI0LPC_EC__DCBD\xa1\x0c\\MBEC +: +\xef +\x00{WGFL\x80 + \x00WGFL\x14;WGIN\x00p +\x00WGFLp\\WGSV +\x01WGFL\xa0\x10WPWS}WGFL +\x02WGFL\xa0\x10BPWS}WGFL + WGFL\x146WGPS\x01\xa0\r\x92\x95h +\x04\\BLTH +\x05\xa0\x10\x92{WGFL +\x04\x00WPWC +\x00\xa0\x10\x92{WGFL +@\x00BPWC +\x00\x14&WGWK\x01\xa0\x0f{WGFL + \x00BPWC +\x01\xa0\x0f{WGFL +\x02\x00WPWC +\x01\x109\\/\x04_SB_PCI0LPC_EC__\x14$_Q41\x00\\/\x06_SB_PCI0LPC_EC__HKEYMHKQ\x0b\x00p\x10N\x0b\\_SB_[\x82E\x0bLCIO\x08_HID\x0c0\xae\x00\x01\x08_CID\x0cA\xd0 +\x06\x14)_STA\x00\xa0\x1d\\/\x05_SB_PCI0LPC_EC__BSTA +\x03\xa4 +\x0f\xa1\x04\xa4 +\x00\x14@\x07_EJ0\x01\\/\x05_SB_PCI0LPC_EC__BEJ0h\xa0@\x05\x91\x93\\/\x03_SB_GDCKGDID\x0c$M\x00L\x93\\/\x03_SB_GDCKGDID\x0c$M\x00Dp +\x00\\/\x04_SB_PCI0LPC_DRST\x86\\._SB_GDCK +\x00\x10#\\/\x04_SB_PCI0EXP3EXPD\x08_EJD\r_SB.GDCK\x00\x10\'\\/\x05_SB_PCI0USB2URTHUPDK\x08_EJD\r_SB.GDCK\x00\x10\'\\/\x05_SB_PCI0USB7URTHUPDK\x08_EJD\r_SB.GDCK\x00\x101\\/\x05_SB_PCI0USB1URTHUPEX\x08_EJD\r_SB.PCI0.EXP2.EXUP\x00\x101\\/\x05_SB_PCI0USB7URTHUPEX\x08_EJD\r_SB.PCI0.EXP2.EXUP\x00\x102\\/\x04_SB_PCI0EXP2EXUP\x08_EJD\r_SB.PCI0.USB7.URTH.UPEX\x00\x08\\_S0_\x12 +\x04 +\x00 +\x00 +\x00 +\x00\x08\\_S3_\x12 +\x04 +\x05 +\x05 +\x00 +\x00\x08\\_S4_\x12 +\x04 +\x06 +\x06 +\x00 +\x00\x08\\_S5_\x12 +\x04 +\x07 +\x07 +\x00 +\x00\x14O\x1d\\_PTS\x01p +\x01`\xa0\x0c\x93h\\SPS_p +\x00`\xa0\x0f\x91\x93h +\x00\x92\x95h +\x06p +\x00`\xa0E\x1b`ph\\SPS_\\/\x06_SB_PCI0LPC_EC__HKEYMHKE +\x00\xa0\x1f\\/\x05_SB_PCI0LPC_EC__KBLT\\UCMS +\r\xa0G\x05\x93h +\x01p\\/\x05_SB_PCI0LPC_EC__HFNI\\FNIDp +\x00\\/\x05_SB_PCI0LPC_EC__HFNIp +\x00\\/\x05_SB_PCI0LPC_EC__HFSP\xa02\x93h +\x03\\VVPD +\x03\\TRAPp\\/\x06_SB_PCI0LPC_EC__AC___PSR\\ACST\xa0)\x93h +\x04\\/\x03_SB_SLPB_PSW +\x00\xa0\r\\SPEN\\STEP +\x07\\TRAP\xa0 +\x93h +\x05\\TRAP\\/\x05_SB_PCI0LPC_EC__BPTSh\xa0 \x92\x95h +\x04p +\x00\\/\x05_SB_PCI0LPC_EC__HWLB\xa1\x1bp +\x01\\/\x05_SB_PCI0LPC_EC__HWLB\xa0<\x92\x93h +\x05p +\x01\\/\x05_SB_PCI0LPC_EC__HCMU\\/\x03_SB_GDCKGPTSh\xa0\x0b\\W98F\\CBRI\\/\x06_SB_PCI0LPC_EC__HKEYWGPSh\x08WAKI\x12\x06\x02 +\x00 +\x00\x14AJ\\_WAK\x01\xa0\x10\x91\x93h +\x00\x92\x95h +\x05\xa4WAKIp +\x00\\SPS_p +\x00\\/\x05_SB_PCI0LPC_EC__HCMUp +\x80\\/\x05_SB_PCI0LPC_EC__HFSP\\/\x05_SB_PCI0LPC_EC__EVNT +\x01\\/\x06_SB_PCI0LPC_EC__HKEYMHKE +\x01\\/\x05_SB_PCI0LPC_EC__FNST\\UCMS +\rp +\x00\\LIDB\xa0"\x93h +\x01p\\/\x05_SB_PCI0LPC_EC__HFNI\\FNID\xa0A\x13\x93h +\x03THRM +\x00\xa0E\x04\\WXPFp +\x00\\/\x04_SB_PCI0LPC_C4C3\xa0\'\\OSC4\x86\\._PR_CPU0 +\x81\xa0\x13\\MPEN\x86\\._PR_CPU1 +\x81\xa1D\x07\xa0A\x07\\WNTF\xa02\\/\x06_SB_PCI0LPC_EC__AC___PSRp +\x00\\/\x04_SB_PCI0LPC_C4C3\xa16\xa0\x1c\\CWASp +\x00\\/\x04_SB_PCI0LPC_C4C3\xa1\x17p +\x01\\/\x04_SB_PCI0LPC_C4C3\xa0:\x92\x93\\ACST\\/\x06_SB_PCI0LPC_EC__AC___PSR\\/\x05_SB_PCI0LPC_EC__ATMC\xa0.\x90{\\CFGD\x0c\x00\x00\x00\x01\x00\x90\\WXPF\x92\x94\\WSPV +\x01\xa0\x10{\\CFGD +\xf0\x00PPMS +\x00\xa0@\x13\x93h +\x04\xa0\x0bDTSETHRM +\x02\xa0\x13\\W98F\x86\\._SB_SLPB +\x02\xa0\x1f\\WMEF\\/\x05_SB_PCI0LPC_EC__BEEP +\x05\xa0!\x92\\W98Fp +\x00\\/\x05_SB_PCI0LPC_EC__HSPA\xa0.\\WXPF\xa0\'\\OSC4\x86\\._PR_CPU0 +\x81\xa0\x13\\MPEN\x86\\._PR_CPU1 +\x81\xa1D\x04\xa0A\x04\\WNTF\xa09\x91\x92\\/\x06_SB_PCI0LPC_EC__AC___PSR\\CWASp +\x00\\/\x04_SB_PCI0LPC_C4C3\xa0\r\\SPEN\\STEP +\x08\\/\x05_SB_PCI0LPC_EC__ATMC\xa0.\x90{\\CFGD\x0c\x00\x00\x00\x01\x00\x90\\WXPF\x92\x94\\WSPV +\x01\xa0\x10{\\CFGD +\xf0\x00PPMS +\x00\xa0O\x07\x7f\\/\x04_SB_PCI0EXP2PDS_\\/\x04_SB_PCI0EXP2XCPF\x00\xa0*\\/\x04_SB_PCI0EXP2PDS_p +\x01\\/\x04_SB_PCI0EXP2XCPF\xa1\x17p +\x00\\/\x04_SB_PCI0EXP2XCPF\x86\\/\x03_SB_PCI0EXP2 +\x00\\/\x03_SB_GDCKGWAKh\\/\x05_SB_PCI0LPC_EC__BWAKh\\/\x06_SB_PCI0LPC_EC__HKEYWGWKh\x86\\._TZ_THM0 +\x80\x86\\._TZ_THM1 +\x80\\VSLD\\/\x03_SB_LID__LID\xa01\x90\\W98F\x92\\WMEF\x86\\/\x03_SB_PCI0USB0 +\x00\x86\\/\x03_SB_PCI0USB1 +\x00\xa09\x95h +\x04\xa03{\\RRBF +\x02\x00yh +\x08`p}\x0b\x13 `\x00`\\/\x06_SB_PCI0LPC_EC__HKEYMHKQ`p\x00\\RRBF\xa4WAKI\x10@\x1e\\_SI_\x14H\x1d_SST\x01\xa0;\x93h +\x00\\/\x05_SB_PCI0LPC_EC__LED_ +\x00 +\x00\\/\x05_SB_PCI0LPC_EC__LED_ +\x07 +\x00\xa0B\x06\x93h +\x01\xa0%\x91\\SPS_\\WNTF\\/\x05_SB_PCI0LPC_EC__BEEP +\x05\\/\x05_SB_PCI0LPC_EC__LED_ +\x00 +\x80\\/\x05_SB_PCI0LPC_EC__LED_ +\x07 +\x00\xa0;\x93h +\x02\\/\x05_SB_PCI0LPC_EC__LED_ +\x00 +\x80\\/\x05_SB_PCI0LPC_EC__LED_ +\x07 +\xc0\xa0K\x0b\x93h +\x03\xa0"\x94\\SPS_ +\x03\\/\x05_SB_PCI0LPC_EC__BEEP +\x07\xa1O\x04\xa01\x93\\SPS_ +\x03\\/\x05_SB_PCI0LPC_EC__BEEP +\x03\\/\x03_SB_GDCKPEJ3\xa1\x1a\\/\x05_SB_PCI0LPC_EC__BEEP +\x04\xa0\t\x93\\SPS_ +\x03\xa1\x1c\\/\x05_SB_PCI0LPC_EC__LED_ +\x00 +\x80\\/\x05_SB_PCI0LPC_EC__LED_ +\x07 +\xc0\xa09\x93h +\x04\\/\x05_SB_PCI0LPC_EC__BEEP +\x03\\/\x05_SB_PCI0LPC_EC__LED_ +\x07 +\xc0\x10C<\\_GPE[\x01MGPE\x07\x14N +_L18\x00p\\/\x05_SB_PCI0LPC_EC__HWAK`p`\\RRBF[" + +\xa0\x06{` +\x02\x00\xa0){` +\x04\x00\xa0\x13\\W98F\x86\\._SB_SLPB +\x02\xa1\x0e\x86\\._SB_LID_ +\x02\xa0"{` +\x08\x00\\/\x03_SB_GDCKGGPE\x86\\._SB_SLPB +\x02\xa0\x13{` +\x10\x00\x86\\._SB_SLPB +\x02\xa0\x06{` +@\x00\xa0\x13{` +\x80\x00\x86\\._SB_SLPB +\x02\x14K\x0f_L09\x00\xa0<\\/\x04_SB_PCI0EXP0PSP0p +\x01\\/\x04_SB_PCI0EXP0PSP0\x86\\/\x03_SB_PCI0EXP0 +\x02\xa0<\\/\x04_SB_PCI0EXP1PSP1p +\x01\\/\x04_SB_PCI0EXP1PSP1\x86\\/\x03_SB_PCI0EXP1 +\x02\xa0<\\/\x04_SB_PCI0EXP2PSP2p +\x01\\/\x04_SB_PCI0EXP2PSP2\x86\\/\x03_SB_PCI0EXP2 +\x02\xa0<\\/\x04_SB_PCI0EXP3PSP3p +\x01\\/\x04_SB_PCI0EXP3PSP3\x86\\/\x03_SB_PCI0EXP3 +\x02\x14D\x17_L01\x00\xa0@\x0f\\/\x04_SB_PCI0EXP2HPCSp +\x01\\/\x04_SB_PCI0EXP2HPCS\xa0*\\/\x04_SB_PCI0EXP2ABP_p +\x01\\/\x04_SB_PCI0EXP2ABP_\xa0I\t\\/\x04_SB_PCI0EXP2PDC_p +\x01\\/\x04_SB_PCI0EXP2PDC_p +\x00\\/\x04_SB_PCI0EXP2XCPF\x86\\/\x03_SB_PCI0EXP2 +\x00\xa0E\x04\\/\x04_SB_PCI0EXP2PDS_p +\x01\\/\x04_SB_PCI0EXP2XCPF[" +d\x86\\/\x04_SB_PCI0EXP2EXUP +\x01[#MGPE\xff\xff\xa0M\x06\\/\x04_SB_PCI0EXP0HPCSp +\x01\\/\x04_SB_PCI0EXP0HPCS\xa0A\x04\\/\x04_SB_PCI0EXP0PDC_[" +\xc8p +\x01\\/\x04_SB_PCI0EXP0PDC_\x86\\/\x03_SB_PCI0EXP0 +\x00[\'MGPE\x14D\t_L02\x00p +\x00\\/\x04_SB_PCI0LPC_SWGE\xa0A\x04\\/\x06_SB_PCI0LPC_EC__HKEYDHKC\xa0#DT02\\/\x06_SB_PCI0LPC_EC__HKEYMHKQ\x0b"`\x86\\._TZ_THM1 +\x80\xa0\'\\OSPX\x86\\._PR_CPU0 +\x80\xa0\x13\\MPEN\x86\\._PR_CPU1 +\x80\x10@(\\/\x05_SB_PCI0LPC_EC__HKEY\x14H\x0cMHQT\x01\xa0M\x0b\x90\\WNTF\\TATC\xa0\x0e\x93h +\x00p\\TATC`\xa4`\xa1@ +\xa0K\x04\x93h +\x01p\\TDFA`r`y\\TDTA +\x04\x00`r`y\\TDFD +\x08\x00`r`y\\TDTD +\x0c\x00`r`y\\TNFT +\x10\x00`r`y\\TNTT +\x14\x00`\xa4`\xa1A\x05\xa02\x93h +\x02p\\TCFA`r`y\\TCTA +\x04\x00`r`y\\TCFD +\x08\x00`r`y\\TCTD +\x0c\x00`\xa4`\xa1\x1b\xa0\x05\x93h +\x03\xa1\x13\xa0\x0e\x93h +\x04p\\TATW`\xa4`\xa1\x02\xa3\xa4 +\x00\x14O\x07MHAT\x01\xa0D\x07\x90\\WNTF\\TATCp{h +\xff\x00`\xa0 +\x92ATMV`\xa4 +\x00p{zh +\x08\x00 +\xff\x00`\xa0 +\x92ATMV`\xa4 +\x00p{h +\x0f\x00\\TCFAp{zh +\x04\x00 +\x0f\x00\\TCTAp{zh +\x08\x00 +\x0f\x00\\TCFDp{zh +\x0c\x00 +\x0f\x00\\TCTDATMC\xa4 +\x01\xa4 +\x00\x14@\rMHGT\x01\xa0E\x0c\x90\\WNTF\\TATCpy\\TSFT +\x10\x00`r`y\\TSTT +\x14\x00`p{h +\xff\x00a\xa0\x0b\x92ATMVa\xa4\x0b\xff\xffp{h +\x0f\x00a\xa0\r\x93a +\x00r`\\TIF0`\xa1&\xa0\r\x93a +\x01r`\\TIF1`\xa1\x16\xa0\r\x93a +\x02r`\\TIF2`\xa1\x06r` +\xff`p{zh +\x04\x00 +\x0f\x00a\xa0\x11\x93a +\x00r`y\\TIT0 +\x08\x00`\xa12\xa0\x11\x93a +\x01r`y\\TIT1 +\x08\x00`\xa1\x1e\xa0\x11\x93a +\x02r`y\\TIT2 +\x08\x00`\xa1 +r`y +\xff +\x08\x00`\xa4`\xa4 +\x00\x14L\x04ATMV\x01p{h +\x0f\x00ap\\TNFT`\xa0\x08\x92\x95a`\xa4 +\x00p{zh +\x04\x00 +\x0f\x00bp\\TNTT`\xa0\x08\x92\x95b`\xa4 +\x00\xa0\x0f\\TATL\xa0\x08\x7fab\x00\xa4 +\x00\xa4 +\x01\x10F\x10\\/\x04_SB_PCI0LPC_EC__\x14@\x0fATMC\x00\xa0H\x0e\x90\\WNTF\\TATC\xa0E\x06HPACp\\TCFA`p\\TCTAap}ya +\x04\x00`\x00ATMX\xa0\x1f\x93\\TCTA +\x00p\\TCR0\\TCRTp\\TPS0\\TPSV\xa1#\xa0\x1f\x93\\TCTA +\x01p\\TCR1\\TCRTp\\TPS1\\TPSV\xa1\x01\xa1A\x06p\\TCFD`p\\TCTDap}ya +\x04\x00`\x00ATMX\xa0\x1f\x93\\TCTD +\x00p\\TCR0\\TCRTp\\TPS0\\TPSV\xa1#\xa0\x1f\x93\\TCTD +\x01p\\TCR1\\TCRTp\\TPS1\\TPSV\xa1\x01\x86\\._TZ_THM0 +\x81THRM +\x01\x10C\x1f\\_TZ_[\x85L\x0cTHM0\x14\r_CRT\x00\xa4C2K_ +\x7f\x14G\x0b_TMP\x00\xa0B\x05\\H8DRp\\/\x05_SB_PCI0LPC_EC__TMP0`p\\/\x05_SB_PCI0LPC_EC__HT12ap\\/\x05_SB_PCI0LPC_EC__HT13b\xa1$p\\RBEC +x`p{\\RBEC + +@\x00ap{\\RBEC + +\x80\x00b\xa0\tb\xa4C2K_ +\x80\xa0\'\x92\\/\x06_SB_PCI0LPC_EC__HKEYDHKC\xa0\ta\xa4C2K_ +\x80\xa4C2K_`[\x85@\x0fTHM1\x143_PSL\x00\xa0\x1e\\MPEN\xa4\x12\x16\x02\\._PR_CPU0\\._PR_CPU1\xa4\x12\x0c\x01\\._PR_CPU0\x14\x0c_CRT\x00\xa4\\TCRT\x14\x0c_PSV\x00\xa4\\TPSV\x14\x0c_TC1\x00\xa4\\TTC1\x14\x0c_TC2\x00\xa4\\TTC2\x14\x0c_TSP\x00\xa4\\TTSP\x14D\x07_TMP\x00\xa0J\x05\\DTSETHRM +\x02pDTS1`\xa0\x11\x92\x95DTS0DTS1pDTS0`\xa0.\x92\\/\x06_SB_PCI0LPC_EC__HKEYDHKC\xa0\x10DT02r\\TCRT +\x01`\xa4`\xa4C2K_`\xa1\x11\xa4\\/\x03_TZ_THM0_TMP\x14+C2K_\x01rwh + +\x00\x0b\xac +`\xa0\x0c\x92\x94`\x0b\xac +p\x0b\xb8\x0b`\xa0\x0b\x94`\x0b\xac\x0fp\x0b\xb8\x0b`\xa4`\x10O\x13\\/\x04_SB_PCI0LPC_EC__\x14I\x12_Q40\x00\x86\\._TZ_THM0 +\x80\xa08\\H8DRp\\/\x05_SB_PCI0LPC_EC__HT11`p\\/\x05_SB_PCI0LPC_EC__HT12a\xa1\x1bp{\\RBEC + + \x00`p{\\RBEC + +@\x00a\xa0=\\/\x06_SB_PCI0LPC_EC__HKEYDHKC\xa0 a\\/\x06_SB_PCI0LPC_EC__HKEYMHKQ\x0b"`\xa0\x06VIGD\xa3\xa1\x06\\VTHR\xa0C\x07\\SPEN\xa0\'\\OSPX\x86\\._PR_CPU0 +\x80\xa0\x13\\MPEN\x86\\._PR_CPU1 +\x80\xa1C\x04\xa07\x91\\/\x05_SB_PCI0LPC_EC__HT00\\/\x05_SB_PCI0LPC_EC__HT10\\STEP +\t\xa1\x08\\STEP + +\x08GPIC +\x00\x14\r_PIC\x01ph\\GPIC[\x80MNVS\x00\x0c\x00@\xef\x7f\x0b\x00\x10[\x81B+MNVS\x03\x00\x80\x80\x07GAPA GAPL DCKI DCKS VCDL\x01VCDC\x01VCDT\x01VCDD\x01VIGD\x01VCSS\x01VCDB\x01VCIN\x01VPDF\x01\x00\x07VLID\x04VVPO\x04\x00\x08CDFL\x08CDAH\x08PMOD\x02PDIR\x01PDMA\x01\x00\x04LFDC\x01\x00\x07C2NA\x01C3NA\x01C4NA\x01\x00\x05SPEN\x01\x00\x01\x00\x01\x00\x01MPEN\x01\x00\x03OSPX\x01OSC4\x01OSSS\x01NHPS\x01NPME\x01\x00\x03UOPT\x08BTID LWST\x08LPST\x08TCRT\x10TPSV\x10TTC1\x10TTC2\x10TTSP\x10SRAH\x08SRHE\x08SRE0\x08SRE1\x08SRE2\x08SRE3\x08SRE4\x08SRE5\x08SRU0\x08SRU1\x08SRU2\x08SRU3\x08SRU7\x08SRPB\x08SRLP\x08SRSA\x08SRSM\x08CWAC\x01CWAS\x01\x00\x06CWAP\x10CWAT\x10DBGC\x01\x00\x07FS1L\x10FS1M\x10FS1H\x10FS2L\x10FS2M\x10FS2H\x10FS3L\x10FS3M\x10FS3H\x10TATC\x01\x00\x06TATL\x01TATW\x08TNFT\x04TNTT\x04TDFA\x04TDTA\x04TDFD\x04TDTD\x04TCFA\x04TCTA\x04TCFD\x04TCTD\x04TSFT\x04TSTT\x04TIT0\x08TCR0\x10TPS0\x10TIT1\x08TCR1\x10TPS1\x10TIT2\x08TCR2\x10TPS2\x10TIF0\x08TIF1\x08TIF2\x08\x00 TCZ1\x08TCZ2\x08TCZ3\x08BTHI\x01\x00\x07HDIR\x01HDEH\x01\x00\x06TPMP\x01TPMS\x01\x00\x06BIDE\x08\x00\x01DTSE\x01\x00\x06DTS0\x08DTS1\x08DT00\x01DT01\x01DT02\x01DT03\x01\x00\x04PH01\x08PH02\x08PH03\x08PH04\x08PH05\x08PH06\x08PH07\x08PH08\x08PH09\x08PH0A\x08PH0B\x08LIDB\x01\x00\x07TCG0\x01\x00\x07[\x81\x13MNVS\x01\x00\x80\x00\x07DDC1@@\x00@@[\x81\x10MNVS\x01\x00\x80\x00\x07DDC2@\x80[\x80SMI0\x01 +\xb2 +\x01[\x81\x0bSMI0\x01APMC\x08[\x81(MNVS\x00\x00\x80\xe0\x07CMD_\x08ERR_ PAR0 PAR1 PAR2 PAR3 [\x01MSMI\x07\x14F\x05SMI_\x05[#MSMI\xff\xffphCMD_piPAR0pjPAR1pkPAR2plPAR3p +\xf5APMC\xa2\x13\x93ERR_ +\x01[" +dp +\xf5APMCpPAR0`[\'MSMI\xa4`\x14\x14RPCI\x01\xa4SMI_ +\x00 +\x00h +\x00 +\x00\x14\x12WPCI\x02SMI_ +\x00 +\x01hi +\x00\x14\x11MPCI\x03SMI_ +\x00 +\x02hij\x14\x14RBEC\x01\xa4SMI_ +\x00 +\x03h +\x00 +\x00\x14\x12WBEC\x02SMI_ +\x00 +\x04hi +\x00\x14\x11MBEC\x03SMI_ +\x00 +\x05hij\x14\x14RISA\x01\xa4SMI_ +\x00 +\x06h +\x00 +\x00\x14\x12WISA\x02SMI_ +\x00 +\x07hi +\x00\x14\x11MISA\x03SMI_ +\x00 +\x08hij\x14\x14VEXP\x00SMI_ +\x01 +\x00 +\x00 +\x00 +\x00\x14\x13VUPS\x01SMI_ +\x01 +\x01h +\x00 +\x00\x14\x12VSDS\x02SMI_ +\x01 +\x02hi +\x00\x14\x14VDDC\x00SMI_ +\x01 +\x03 +\x00 +\x00 +\x00\x14\x13VVPD\x01SMI_ +\x01 +\x04h +\x00 +\x00\x14\x13VNRS\x01SMI_ +\x01 +\x05h +\x00 +\x00\x14\x15GLPW\x00\xa4SMI_ +\x01 +\x06 +\x00 +\x00 +\x00\x14\x13VSLD\x01SMI_ +\x01 +\x07h +\x00 +\x00\x14\x14VEVT\x01\xa4SMI_ +\x01 +\x08h +\x00 +\x00\x14\x15VTHR\x00\xa4SMI_ +\x01 +\t +\x00 +\x00 +\x00\x14\x13VBRC\x01SMI_ +\x01 + +h +\x00 +\x00\x14\x15VBRG\x00\xa4SMI_ +\x01 +\x0e +\x00 +\x00 +\x00\x14\x14UCMS\x01\xa4SMI_ +\x02h +\x00 +\x00 +\x00\x14\x13BHDP\x02\xa4SMI_ +\x03 +\x00hi +\x00\x14\x14DHDP\x01\xa4SMI_ +\x03 +\x01h +\x00 +\x00\x14\x13STEP\x01SMI_ +\x04h +\x00 +\x00 +\x00\x14\x14TRAP\x00SMI_ +\x05 +\x00 +\x00 +\x00 +\x00\x14\x14CBRI\x00SMI_ +\x05 +\x01 +\x00 +\x00 +\x00\x14"DSPD\x01\xa0\x18\x92\x94h +\x01rh +\x02hSMI_ +\x05h +\x00 +\x00 +\x00\xa1\x02\xa3\x14\x14BLTH\x01\xa4SMI_ +\x06h +\x00 +\x00 +\x00\x14\x14FISP\x00SMI_ +\x07 +\x00 +\x00 +\x00 +\x00\x14\x13ATCC\x01SMI_ +\x08h +\x00 +\x00 +\x00\x14\x14WGSV\x01\xa4SMI_ +\th +\x00 +\x00 +\x00\x14\x14THRM\x01\xa4SMI_ + +h +\x00 +\x00 +\x00\x14\x14PPMS\x01\xa4SMI_ +\x0bh +\x00 +\x00 +\x00\x14\x13TPHY\x01SMI_ +\x0ch +\x00 +\x00 +\x00\x14\x13TMOR\x01SMI_ +\rh +\x00 +\x00 +\x00\x143DPIO\x02\xa0\x06\x92h\xa4 +\x00\xa0\x08\x94h +\xf0\xa4 +\x00\xa0\x10\x94h +\xb4\xa0\x05i\xa4 +\x02\xa1\x04\xa4 +\x01\xa0\x08\x94h +x\xa4 +\x03\xa4 +\x04\x14=DUDM\x02\xa0\x06\x92i\xa4 +\xff\xa0\x08\x94h +Z\xa4 +\x00\xa0\x08\x94h +<\xa4 +\x01\xa0\x08\x94h +-\xa4 +\x02\xa0\x08\x94h +\x1e\xa4 +\x03\xa0\x08\x94h +\x14\xa4 +\x04\xa4 +\x05\x14(DMDM\x02\xa0\x05i\xa4 +\x00\xa0\x06\x92h\xa4 +\x00\xa0\x08\x94h +\x96\xa4 +\x01\xa0\x08\x94h +x\xa4 +\x02\xa4 +\x03\x14A\x05UUDM\x02\xa0 +\x92{h +\x04\x00\xa4 +\x00\xa0\t{i + \x00\xa4 +\x14\xa0\t{i +\x10\x00\xa4 +\x1e\xa0\t{i +\x08\x00\xa4 +-\xa0\t{i +\x04\x00\xa4 +<\xa0\t{i +\x02\x00\xa4 +Z\xa0\t{i +\x01\x00\xa4 +x\xa4 +\x00\x14H\x04UMDM\x04\xa0 +\x92{h +\x02\x00\xa4 +\x00\xa0\x08{i +\x04\x00\xa4k\xa0\x14{i +\x02\x00\xa0\t\x92\x94k +x\xa4 +\xb4\xa1\x03\xa4k\xa0\x14{j +\x04\x00\xa0\t\x92\x94k +\xb4\xa4 +\xf0\xa1\x03\xa4k\xa4 +\x00\x14K\x04UPIO\x04\xa0\x16\x92{h +\x02\x00\xa0\x08\x93j +\x02\xa4 +\xf0\xa1\x05\xa4\x0b\x84\x03\xa0\x08{i +\x02\x00\xa4k\xa0\x14{i +\x01\x00\xa0\t\x92\x94k +x\xa4 +\xb4\xa1\x03\xa4k\xa0\x08\x93j +\x02\xa4 +\xf0\xa1\x05\xa4\x0b\x84\x03\x14-FDMA\x02\xa0\x0c\x92\x93i +\xff\xa4}i +@\x00\xa0\x10\x92\x95h +\x03\xa4}th +\x02\x00 + \x00\xa0\x05h\xa4 +\x12\xa4 +\x00\x14\x1fFPIO\x01\xa0\x0c\x92\x95h +\x03\xa4}h +\x08\x00\xa0\x08\x93h +\x01\xa4 +\x01\xa4 +\x00\x14J\x05SCMP\x02p\x87h`\xa0\x08\x92\x93`\x87i\xa4\x01u`\x08STR1\x11\x02`\x08STR2\x11\x02`phSTR1piSTR2p\x00a\xa2"\x95a`p\x83\x88STR1a\x00bp\x83\x88STR2a\x00c\xa0\x07\x92\x93bc\xa4\x01ua\xa4\x00\x08SPS_ +\x00\x08OSIF +\x00\x08W98F +\x00\x08WNTF +\x00\x08WMEF +\x00\x08WXPF +\x00\x08WVIS +\x00\x08WSPV +\x00\x08LNUX +\x00\x08H8DR +\x00\x08MEMX +\x00\x08ACST +\x00\x08FNID +\x00\x08RRBF +\x00\x08NBCF +\x00''') +f('sys/firmware/acpi/tables/SSDT1', 0o664, b'''SSDT\xaa\x01\x00\x00\x01\x89LENOVOTP-7I \x11\x00\x00MSFT\x0e\x00\x00\x01\x10\x0e\\\x00\x14 +KOU2\x00[! +d\x10I\x0b\\/\x04_SB_PCI0VID_LCD0\x14&_BCL\x00p +\x01\\NBCF\xa4\x12\x16 + +d +\x1e +\x1e +( +2 +< +F +P +Z +d\x08BCLP\x12\x12\x08 +\x1e +( +2 +< +F +P +Z +d\x08BCLL\x12\x12\x08 +\x00 +\x01 +\x02 +\x03 +\x04 +\x05 +\x06 +\x07\x14*_BCM\x01p\x89BCLP\x01h\x00 +\x00 +\x00`\xa0\x15\x92\x93`\xffp\x83\x88BCLL`\x00a\\VBRCa\x14!_BQC\x00p\\VBRG`\xa0\x0f\x92\x94` +\x07\xa4\x83\x88BCLP`\x00\xa1\x03\xa4\x00\x10L\x0b\\/\x05_SB_PCI0AGP_VID_LCD0\x14%_BCL\x00p +\x01NBCF\xa4\x12\x16 + +d +\x1e +\x1e +( +2 +< +F +P +Z +d\x08BCLP\x12\x12\x08 +\x1e +( +2 +< +F +P +Z +d\x08BCLL\x12\x12\x08 +\x00 +\x01 +\x02 +\x03 +\x04 +\x05 +\x06 +\x07\x14*_BCM\x01p\x89BCLP\x01h\x00 +\x00 +\x00`\xa0\x15\x92\x93`\xffp\x83\x88BCLL`\x00a\\VBRCa\x14!_BQC\x00p\\VBRG`\xa0\x0f\x92\x94` +\x07\xa4\x83\x88BCLP`\x00\xa1\x03\xa4\x00''') +f('sys/firmware/acpi/tables/SLIC', 0o664, b'SLICv\x01\x00\x00\x01\x1dLENOVOTP-7I \x11\x00\x00 LTP\x00\x00\x00\x00\x00\x00\x00\x00\x9c\x00\x00\x00\x06\x02\x00\x00\x00$\x00\x00RSA1\x00\x04\x00\x00\x01\x00\x01\x00i\x16J\x9f\xb1K:\xfb\x80 \xaa\xaf\xc4\xf9>\xc1\x80I\xeeje&r\x1e\xcd\xbf_/\x96\xd6\xc0\n\x92\xf5\x06\xb5\x00\xb2;)\x02\xe2L\x8d\xc2\xf2\xbcAw\x9cp\xf0\xf3\x1b\t\xd2cZ\xdc\xa8\x83\xf8^\xc9\x15\x95\xf9\xfa\xfd\xdc\x05\xb7Mg\x7f-\xb3\x843 \xe1\xd1y*\xa7jw\xd1\xb6 *vB\xc5\xd5\xe9\xb6C@UD\xc3\xc97\x99_A\x97p\xf3\xd1\xf6\x07\xec{\x1a)\xa1\xc1\xf1\x91\xfdH\x86n>\xce\xcb\x01\x00\x00\x00\xb6\x00\x00\x00\x00\x00\x02\x00LENOVOTP-7I WINDOWS \x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8bz\xb4\xe1\x0e{\x7fc\xd3M%N\xd7\tBd\x9c\x89\xf6F\xb8L\xd5M\x86sy\xf0\x15\xf2\x98\xad\x806\t\xbd\x8c%wn\xb8C\xf4\xb1\xf0W\x08x\x8d\xc6\x18T\xe1`G\xf07\xfdH\xd2\xfdM\x07\xdd\x91O\x9e*\xd6\xdd4\xeb\x9ac\x9a\xb8O%\xd4o\xf0\x95\xbb\xce\xbd:X\x04\xc5l\xb8\xa8\xd89\xf5\x02Oh\x84\x9c)K\xd0\x9b\x16\xb5\xf5A\xb0\x9d\xb8A\x07\x9dJ\x11\xaf\x19\xbd\xb7\xc7\x05\xb6\xa7\x93H\xf6\xcb') +f('sys/firmware/acpi/tables/SSDT3', 0o664, b'''SSDT\xa6\x00\x00\x00\x01hLENOVOTP-7I \x11\x00\x00INTL\x13\x05\x05 \x10A\x08\\._PR_CPU1\x08_TPC +\x00\x14\x16_PTC\x00\xa4\\/\x03_PR_CPU0_PTC\x14\x16_TSS\x00\xa4\\/\x03_PR_CPU0_TSS\x14?_TSD\x00\xa0\'\x90{CFGD\x0c\x00\x00\x00\x01\x00\x92{PDC1 +\x04\x00\xa4\x12\x0f\x01\x12\x0c\x05 +\x05 +\x00 +\x00 +\xfd +\x02\xa4\x12\x0f\x01\x12\x0c\x05 +\x05 +\x00 +\x01 +\xfc +\x01''') +f('sys/firmware/acpi/tables/SSDT5', 0o664, b'''SSDT\xd8\x01\x00\x00\x01\tLENOVOTP-7I \x11\x00\x00INTL\x13\x05\x05 \x10C\x1b\\/\x03_SB_PCI0SATA[\x82@\x1aPRT0\x08DRE0 +\x00\x08DIP0 +\x00\x08HDTF\x11\x11 +\x0e\x02\x00\x00\x00\x00\xa0\xef\x00\x00\x00\x00\x00\xa0\xf5\x8cHDTF +\rHFLC\x08ERTF\x11\x18 +\x15\x02\x00\x00\x00\x00\xa0\xef\x00\x00\x00\x00\x00\xa0\xf5_\x00\x00\x00\x00\xa0\xef\x8cERTF +\rEFLC\x08HPTF\x11\x18 +\x15\x02\x00\x00\x00\x00\xa0\xef\x00\x00\x00\x00\x00\xa0\xf5\x10\x03\x00\x00\x00\xa0\xef\x8cHPTF +\rPFLC\x08HXTF\x11\x1f +\x1c\x02\x00\x00\x00\x00\xa0\xef\x00\x00\x00\x00\x00\xa0\xf5_\x00\x00\x00\x00\xa0\xef\x10\x03\x00\x00\x00\xa0\xef\x8cHXTF +\rXFLC\x08_ADR\x0b\xff\xff\x14L\x08_SDD\x01p +\x00DRE0p +\x00DIP0\xa0F\x07\x93\x87h\x0b\x00\x02\x8bh +\x9cM078\x8bh +\xacM086\x8bh +\xeeM119\x8bh\x0b(\x01M148\xa0\x1f\x93{M148\x0b\x00\xc0\x00\x0b\x00@\xa0\x10{M148 +\x04\x00p +\x01DRE0\xa0\x1b{M086\x0b\x00\x80\x00\xa0\x10{M119 +\x01\x00p +\x01DRE0\xa0\x10{M078 +\x08\x00p +\x01DIP0\x14B\x05_GTF\x00\xa0"\\OSSSp +\xe1XFLCp +\xe1EFLCp +\xe1HFLCp +\xe1PFLC\xa0\x17DRE0\xa0 +DIP0\xa4HXTF\xa1\x06\xa4ERTF\xa0 +DIP0\xa4HPTF\xa4HDTF''') +f('sys/firmware/acpi/tables/HPET', 0o664, b'HPET8\x00\x00\x00\x01\xaaLENOVOTP-7I \x11\x00\x00LNVO\x01\x00\x00\x00\x01\xa2\x86\x80\x00\x00\x00\x00\x00\x00\xd0\xfe\x00\x00\x00\x00\x00\x80\x00\x00') +f('sys/firmware/acpi/tables/FACP', 0o664, b'FACP\xf4\x00\x00\x00\x03\xf0LENOVOTP-7I \x11\x00\x00LNVO\x01\x00\x00\x00\x00@\xef\x7f^\x19\xed\x7f\x00\x02\t\x00\xb2\x00\x00\x00\xf0\xf1\x00\xf3\x00\x10\x00\x00\x00\x00\x00\x00\x04\x10\x00\x00\x00\x00\x00\x00 \x10\x00\x00\x08\x10\x00\x00(\x10\x00\x00\x00\x00\x00\x00\x04\x02\x01\x04\x08\x00\x00\xf4\x01\x00U\x00\x00\x00\x00\x00\x01\x03\r\x002\x12\x00\x00\xad\xc2\x00\x00\x01\x08\x00\x00\xf9\x0c\x00\x00\x00\x00\x00\x00\x06\x00\x00\x00\x00@\xef\x7f\x00\x00\x00\x00^\x19\xed\x7f\x00\x00\x00\x00\x01 \x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x10\x00\x00\x04\x10\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x08\x00\x00 \x10\x00\x00\x00\x00\x00\x00\x01 \x00\x00\x08\x10\x00\x00\x00\x00\x00\x00\x01 \x00\x00(\x10\x00\x00\x00\x00\x00\x00\x01 \x00\x00,\x10\x00\x00\x00\x00\x00\x00') +f('sys/firmware/acpi/tables/APIC', 0o664, b'''APICh\x00\x00\x00\x01lLENOVOTP-7I \x11\x00\x00LNVO\x01\x00\x00\x00\x00\x00\xe0\xfe\x01\x00\x00\x00\x00\x08\x00\x00\x01\x00\x00\x00\x00\x08\x01\x01\x01\x00\x00\x00\x01\x0c\x01\x00\x00\x00\xc0\xfe\x00\x00\x00\x00\x02 +\x00\x00\x02\x00\x00\x00\x00\x00\x02 +\x00\t\t\x00\x00\x00\r\x00\x04\x06\x00\x05\x00\x01\x04\x06\x01\x05\x00\x01''') +f('sys/firmware/acpi/tables/SSDT2', 0o664, b'''SSDT_\x02\x00\x00\x01\xc2LENOVOTP-7I \x11\x00\x00INTL\x13\x05\x05 \x10J#\\._PR_CPU0\x08_TPC +\x00\x14M\x06_PTC\x00\xa07{PDC0 +\x04\x00\xa4\x12,\x02\x11\x14 +\x11\x82\x0c\x00\x7f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00y\x00\x11\x14 +\x11\x82\x0c\x00\x7f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00y\x00\xa4\x12,\x02\x11\x14 +\x11\x82\x0c\x00\x01\x04\x01\x00\x10\x10\x00\x00\x00\x00\x00\x00y\x00\x11\x14 +\x11\x82\x0c\x00\x01\x04\x01\x00\x10\x10\x00\x00\x00\x00\x00\x00y\x00\x08TSSI\x12A\x07\x08\x12\r\x05 +d\x0b\xe8\x03 +\x00 +\x00 +\x00\x12\r\x05 +X\x0bk\x03 +\x00 +\x0f +\x00\x12\r\x05 +K\x0b\xee\x02 +\x00 +\x0e +\x00\x12\r\x05 +?\x0bq\x02 +\x00 +\r +\x00\x12\r\x05 +2\x0b\xf4\x01 +\x00 +\x0c +\x00\x12\r\x05 +&\x0bw\x01 +\x00 +\x0b +\x00\x12\x0c\x05 +\x19 +\xfa +\x00 + + +\x00\x12\x0c\x05 +\r +} +\x00 +\t +\x00\x08TSSM\x12A\x07\x08\x12\r\x05 +d\x0b\xe8\x03 +\x00 +\x00 +\x00\x12\r\x05 +X\x0bk\x03 +\x00 +\x1e +\x00\x12\r\x05 +K\x0b\xee\x02 +\x00 +\x1c +\x00\x12\r\x05 +?\x0bq\x02 +\x00 +\x1a +\x00\x12\r\x05 +2\x0b\xf4\x01 +\x00 +\x18 +\x00\x12\r\x05 +&\x0bw\x01 +\x00 +\x16 +\x00\x12\x0c\x05 +\x19 +\xfa +\x00 +\x14 +\x00\x12\x0c\x05 +\r +} +\x00 +\x12 +\x00\x08TSSF +\x00\x14C\x08_TSS\x00\xa0G\x06\x90\x92TSSF[\x12_PSS\x00p_PSS`p\x87`avap\x83\x88\x83\x88`a\x00 +\x01\x00bp +\x00c\xa25\x95c\x87TSSIpxwbt +\x08c\x00\x00 +\x08\x00\x00dpd\x88\x83\x88TSSIc\x00 +\x01\x00pd\x88\x83\x88TSSMc\x00 +\x01\x00ucp\xffTSSF\xa0\x0e{PDC0 +\x04\x00\xa4TSSM\xa4TSSI\x14?_TSD\x00\xa0\'\x90{CFGD\x0c\x00\x00\x00\x01\x00\x92{PDC0 +\x04\x00\xa4\x12\x0f\x01\x12\x0c\x05 +\x05 +\x00 +\x00 +\xfd +\x02\xa4\x12\x0f\x01\x12\x0c\x05 +\x05 +\x00 +\x00 +\xfc +\x01''') +f('sys/firmware/acpi/tables/BOOT', 0o664, b'BOOT(\x00\x00\x00\x01\xa8LENOVOTP-7I \x11\x00\x00 LTP\x01\x00\x00\x005\x00\x00\x00') +f('sys/firmware/acpi/tables/TCPA', 0o664, b'TCPA2\x00\x00\x00\x02YLENOVOTP-7I \x11\x00\x00LNVO\x01\x00\x00\x00\x00\x00\x00\x00\x01\x00\xce\x1a\xee\x7f\x00\x00\x00\x00') +f('sys/firmware/acpi/tables/SSDT4', 0o664, b'''SSDT\xf7\x04\x00\x00\x01\xa6LENOVOTP-7I \x11\x00\x00INTL\x13\x05\x05 \x10E\x08\\\x00\x08SSDT\x12C\x05\x0c\rCPU0IST \x00\x0c6\x1d\xef\x7f\x0c\xc4\x02\x00\x00\rCPU1IST \x00\x0cn\x1c\xef\x7f\x0c\xc8\x00\x00\x00\rCPU0CST \x00\x0c\x7f \xef\x7f\x0cZ\x06\x00\x00\rCPU1CST \x00\x0c\xfa\x1f\xef\x7f\x0c\x85\x00\x00\x00\x08CFGD\x0c\xf1i;\x11\x08\\PDC0\x0c\x00\x00\x00\x80\x08\\PDC1\x0c\x00\x00\x00\x80\x08\\SDTL +\x00\x10@!\\._PR_CPU0\x08HI0_ +\x00\x08HC0_ +\x00\x14H\x06_PDC\x01\x8ah +\x00REVS\x8ah +\x04SIZEp\x87h`pt` +\x08\x00a[\x13h +@wa +\x08\x00TEMP\x08STS0\x11\x07 +\x04\x00\x00\x00\x00sSTS0TEMPb_OSC\x11\x13 +\x10\x16\xa6w@\x0c)\xbeG\x9e\xbd\xd8pXq9SREVSSIZEb\x14L\x18_OSC\x04\x8ak +\x00STS0\x8ak +\x04CAP0\x8ah +\x00IID0\x8ah +\x04IID1\x8ah +\x08IID2\x8ah +\x0cIID3\x08UID0\x11\x13 +\x10\x16\xa6w@\x0c)\xbeG\x9e\xbd\xd8pXq9S\x8aUID0 +\x00EID0\x8aUID0 +\x04EID1\x8aUID0 +\x08EID2\x8aUID0 +\x0cEID3\xa02\x92\x90\x90\x93IID0EID0\x93IID1EID1\x90\x93IID2EID2\x93IID3EID3p +\x06STS0\xa4k\xa0\x0f\x92\x93i +\x01p + +STS0\xa4k}{PDC0\x0c\xff\xff\xff\x7f\x00CAP0PDC0\xa0L\x05{CFGD +\x01\x00\xa0A\x05\x90\x90{CFGD\x0c\x00\x00\x00\x01\x00\x93{PDC0 +\t\x00 +\t\x92{SDTL +\x01\x00}SDTL +\x01SDTL[\x80IST0\x00\x83\x88SSDT +\x01\x00\x83\x88SSDT +\x02\x00[ IST0HI0_\xa0I\x05{CFGD +\xf0\x00\xa0N\x04\x90\x90{CFGD\x0c\x00\x00\x00\x01\x00{PDC0 +\x18\x00\x92{SDTL +\x02\x00}SDTL +\x02SDTL[\x80CST0\x00\x83\x88SSDT +\x07\x00\x83\x88SSDT +\x08\x00[ CST0HC0_\xa4k\x10K#\\._PR_CPU1\x08HI1_ +\x00\x08HC1_ +\x00\x14H\x06_PDC\x01\x8ah +\x00REVS\x8ah +\x04SIZEp\x87h`pt` +\x08\x00a[\x13h +@wa +\x08\x00TEMP\x08STS1\x11\x07 +\x04\x00\x00\x00\x00sSTS1TEMPb_OSC\x11\x13 +\x10\x16\xa6w@\x0c)\xbeG\x9e\xbd\xd8pXq9SREVSSIZEb\x14L\x18_OSC\x04\x8ak +\x00STS1\x8ak +\x04CAP1\x8ah +\x00IID0\x8ah +\x04IID1\x8ah +\x08IID2\x8ah +\x0cIID3\x08UID1\x11\x13 +\x10\x16\xa6w@\x0c)\xbeG\x9e\xbd\xd8pXq9S\x8aUID1 +\x00EID0\x8aUID1 +\x04EID1\x8aUID1 +\x08EID2\x8aUID1 +\x0cEID3\xa02\x92\x90\x90\x93IID0EID0\x93IID1EID1\x90\x93IID2EID2\x93IID3EID3p +\x06STS1\xa4k\xa0\x0f\x92\x93i +\x01p + +STS1\xa4k}{PDC1\x0c\xff\xff\xff\x7f\x00CAP1PDC1\xa0L\x05{CFGD +\x01\x00\xa0A\x05\x90\x90{CFGD\x0c\x00\x00\x00\x01\x00\x93{PDC1 +\t\x00 +\t\x92{SDTL +\x10\x00}SDTL +\x10SDTL[\x80IST1\x00\x83\x88SSDT +\x04\x00\x83\x88SSDT +\x05\x00[ IST1HI1_\xa0I\x05{CFGD +\xf0\x00\xa0N\x04\x90\x90{CFGD\x0c\x00\x00\x00\x01\x00{PDC1 +\x18\x00\x92{SDTL + \x00}SDTL + SDTL[\x80CST1\x00\x83\x88SSDT + +\x00\x83\x88SSDT +\x0b\x00[ CST1HC1_\xa4k\x14*_INI\x00\xa0\x0c\\DTSETHRM +\x00\xa0\x16\x90\\WXPF\x92\x94\\WSPV +\x01PPMS +\x00''') +f('sys/firmware/acpi/tables/ECDT', 0o664, b'ECDTR\x00\x00\x00\x01ULENOVOTP-7I \x11\x00\x00LNVO\x01\x00\x00\x00\x01\x08\x00\x00f\x00\x00\x00\x00\x00\x00\x00\x01\x08\x00\x00b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1c\\_SB.PCI0.LPC.EC\x00') +f('sys/firmware/acpi/tables/FACS', 0o664, b'FACS@\x00\x00\x00/\x15\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00') +f('sys/firmware/acpi/tables/MCFG', 0o664, b'MCFG<\x00\x00\x00\x01\x82LENOVOTP-7I \x11\x00\x00LNVO\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xf0\x00\x00\x00\x00\x00\x00\x00?\x00\x00\x00\x00') +d('sys/firmware/acpi/interrupts', 0o775) +f('sys/firmware/acpi/interrupts/gpe1A', 0o664, b' 0 invalid\n') +f('sys/firmware/acpi/interrupts/gpe12', 0o664, b' 0 invalid\n') +f('sys/firmware/acpi/interrupts/gpe11', 0o664, b' 0 invalid\n') +f('sys/firmware/acpi/interrupts/gpe10', 0o664, b' 0 invalid\n') +f('sys/firmware/acpi/interrupts/ff_pmtimer', 0o664, b' 0 invalid\n') +f('sys/firmware/acpi/interrupts/gpe0C', 0o664, b' 0 invalid\n') +f('sys/firmware/acpi/interrupts/gpe04', 0o664, b' 0 invalid\n') +f('sys/firmware/acpi/interrupts/gpe06', 0o664, b' 0 invalid\n') +f('sys/firmware/acpi/interrupts/gpe14', 0o664, b' 0 invalid\n') +f('sys/firmware/acpi/interrupts/gpe0B', 0o664, b' 0 invalid\n') +f('sys/firmware/acpi/interrupts/sci', 0o664, b' 14240\n') +f('sys/firmware/acpi/interrupts/gpe08', 0o664, b' 0 invalid\n') +f('sys/firmware/acpi/interrupts/gpe15', 0o664, b' 0 invalid\n') +f('sys/firmware/acpi/interrupts/gpe17', 0o664, b' 0 invalid\n') +f('sys/firmware/acpi/interrupts/gpe0A', 0o664, b' 0 invalid\n') +f('sys/firmware/acpi/interrupts/ff_rt_clk', 0o664, b' 0 invalid\n') +f('sys/firmware/acpi/interrupts/gpe09', 0o664, b' 0 invalid\n') +f('sys/firmware/acpi/interrupts/gpe19', 0o664, b' 0 invalid\n') +f('sys/firmware/acpi/interrupts/gpe03', 0o664, b' 0 invalid\n') +f('sys/firmware/acpi/interrupts/gpe01', 0o664, b' 1\tenable\n') +f('sys/firmware/acpi/interrupts/ff_slp_btn', 0o664, b' 0 invalid\n') +f('sys/firmware/acpi/interrupts/error', 0o664, b' 0\n') +f('sys/firmware/acpi/interrupts/gpe1C', 0o664, b' 14039\tenable\n') +f('sys/firmware/acpi/interrupts/ff_pwr_btn', 0o664, b' 0\tenable\n') +f('sys/firmware/acpi/interrupts/gpe0D', 0o664, b' 0 invalid\n') +f('sys/firmware/acpi/interrupts/gpe05', 0o664, b' 0 invalid\n') +f('sys/firmware/acpi/interrupts/gpe02', 0o664, b' 200\tenable\n') +f('sys/firmware/acpi/interrupts/gpe1E', 0o664, b' 0 invalid\n') +f('sys/firmware/acpi/interrupts/gpe18', 0o664, b' 0\tenable\n') +f('sys/firmware/acpi/interrupts/gpe1D', 0o664, b' 0 invalid\n') +f('sys/firmware/acpi/interrupts/gpe1F', 0o664, b' 0 invalid\n') +f('sys/firmware/acpi/interrupts/gpe0E', 0o664, b' 0 invalid\n') +f('sys/firmware/acpi/interrupts/gpe00', 0o664, b' 0 invalid\n') +f('sys/firmware/acpi/interrupts/gpe1B', 0o664, b' 0 invalid\n') +f('sys/firmware/acpi/interrupts/gpe0F', 0o664, b' 0 invalid\n') +f('sys/firmware/acpi/interrupts/gpe07', 0o664, b' 0 invalid\n') +f('sys/firmware/acpi/interrupts/gpe16', 0o664, b' 0 invalid\n') +f('sys/firmware/acpi/interrupts/gpe13', 0o664, b' 0 invalid\n') +f('sys/firmware/acpi/interrupts/gpe_all', 0o664, b' 14240\n') +f('sys/firmware/acpi/interrupts/ff_gbl_lock', 0o664, b' 0\tenable\n') +d('sys/bus', 0o755) +d('sys/bus/pci_express', 0o755) +f('sys/bus/pci_express/drivers_autoprobe', 0o644, b'1\n') +d('sys/bus/pci_express/devices', 0o755) +l('sys/bus/pci_express/devices/0000:00:1c.2:pcie02', '../../../devices/pci0000:00/0000:00:1c.2/0000:00:1c.2:pcie02') +l('sys/bus/pci_express/devices/0000:00:1c.2:pcie00', '../../../devices/pci0000:00/0000:00:1c.2/0000:00:1c.2:pcie00') +l('sys/bus/pci_express/devices/0000:00:1c.0:pcie03', '../../../devices/pci0000:00/0000:00:1c.0/0000:00:1c.0:pcie03') +l('sys/bus/pci_express/devices/0000:00:01.0:pcie03', '../../../devices/pci0000:00/0000:00:01.0/0000:00:01.0:pcie03') +l('sys/bus/pci_express/devices/0000:00:1c.2:pcie03', '../../../devices/pci0000:00/0000:00:1c.2/0000:00:1c.2:pcie03') +l('sys/bus/pci_express/devices/0000:00:1c.1:pcie02', '../../../devices/pci0000:00/0000:00:1c.1/0000:00:1c.1:pcie02') +l('sys/bus/pci_express/devices/0000:00:1c.0:pcie00', '../../../devices/pci0000:00/0000:00:1c.0/0000:00:1c.0:pcie00') +l('sys/bus/pci_express/devices/0000:00:1c.3:pcie02', '../../../devices/pci0000:00/0000:00:1c.3/0000:00:1c.3:pcie02') +l('sys/bus/pci_express/devices/0000:00:1c.0:pcie02', '../../../devices/pci0000:00/0000:00:1c.0/0000:00:1c.0:pcie02') +l('sys/bus/pci_express/devices/0000:00:1c.1:pcie03', '../../../devices/pci0000:00/0000:00:1c.1/0000:00:1c.1:pcie03') +l('sys/bus/pci_express/devices/0000:00:1c.3:pcie03', '../../../devices/pci0000:00/0000:00:1c.3/0000:00:1c.3:pcie03') +l('sys/bus/pci_express/devices/0000:00:1c.1:pcie00', '../../../devices/pci0000:00/0000:00:1c.1/0000:00:1c.1:pcie00') +l('sys/bus/pci_express/devices/0000:00:1c.3:pcie00', '../../../devices/pci0000:00/0000:00:1c.3/0000:00:1c.3:pcie00') +l('sys/bus/pci_express/devices/0000:00:01.0:pcie00', '../../../devices/pci0000:00/0000:00:01.0/0000:00:01.0:pcie00') +d('sys/bus/acpi', 0o775) +f('sys/bus/acpi/drivers_autoprobe', 0o664, b'1\n') +d('sys/bus/acpi/drivers', 0o775) +d('sys/bus/acpi/drivers/thinkpad_hotkey', 0o775) +l('sys/bus/acpi/drivers/thinkpad_hotkey/IBM0068:00', '../../../../devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/IBM0068:00') +d('sys/bus/acpi/drivers/button', 0o775) +l('sys/bus/acpi/drivers/button/PNP0C0E:00', '../../../../devices/LNXSYSTM:00/device:00/PNP0C0E:00') +l('sys/bus/acpi/drivers/button/PNP0C0D:00', '../../../../devices/LNXSYSTM:00/device:00/PNP0C0D:00') +l('sys/bus/acpi/drivers/button/LNXPWRBN:00', '../../../../devices/LNXSYSTM:00/LNXPWRBN:00') +d('sys/bus/acpi/drivers/processor', 0o775) +l('sys/bus/acpi/drivers/processor/ACPI0007:01', '../../../../devices/LNXSYSTM:00/ACPI0007:01') +l('sys/bus/acpi/drivers/processor/ACPI0007:00', '../../../../devices/LNXSYSTM:00/ACPI0007:00') +d('sys/bus/acpi/drivers/power', 0o775) +l('sys/bus/acpi/drivers/power/LNXPOWER:00', '../../../../devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/LNXPOWER:00') +d('sys/bus/acpi/drivers/pci_link', 0o775) +l('sys/bus/acpi/drivers/pci_link/PNP0C0F:05', '../../../../devices/LNXSYSTM:00/device:00/PNP0C0F:05') +l('sys/bus/acpi/drivers/pci_link/PNP0C0F:07', '../../../../devices/LNXSYSTM:00/device:00/PNP0C0F:07') +l('sys/bus/acpi/drivers/pci_link/PNP0C0F:04', '../../../../devices/LNXSYSTM:00/device:00/PNP0C0F:04') +l('sys/bus/acpi/drivers/pci_link/PNP0C0F:02', '../../../../devices/LNXSYSTM:00/device:00/PNP0C0F:02') +l('sys/bus/acpi/drivers/pci_link/PNP0C0F:00', '../../../../devices/LNXSYSTM:00/device:00/PNP0C0F:00') +l('sys/bus/acpi/drivers/pci_link/PNP0C0F:01', '../../../../devices/LNXSYSTM:00/device:00/PNP0C0F:01') +l('sys/bus/acpi/drivers/pci_link/PNP0C0F:06', '../../../../devices/LNXSYSTM:00/device:00/PNP0C0F:06') +l('sys/bus/acpi/drivers/pci_link/PNP0C0F:03', '../../../../devices/LNXSYSTM:00/device:00/PNP0C0F:03') +d('sys/bus/acpi/drivers/battery', 0o775) +l('sys/bus/acpi/drivers/battery/PNP0C0A:00', '../../../../devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/PNP0C0A:00') +d('sys/bus/acpi/drivers/ec', 0o775) +l('sys/bus/acpi/drivers/ec/PNP0C09:00', '../../../../devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00') +d('sys/bus/acpi/drivers/pci_root', 0o775) +l('sys/bus/acpi/drivers/pci_root/PNP0A08:00', '../../../../devices/LNXSYSTM:00/device:00/PNP0A08:00') +d('sys/bus/acpi/drivers/thermal', 0o775) +l('sys/bus/acpi/drivers/thermal/LNXTHERM:01', '../../../../devices/LNXSYSTM:00/LNXTHERM:00/LNXTHERM:01') +l('sys/bus/acpi/drivers/thermal/LNXTHERM:02', '../../../../devices/LNXSYSTM:00/LNXTHERM:00/LNXTHERM:02') +d('sys/bus/acpi/drivers/ac', 0o775) +l('sys/bus/acpi/drivers/ac/ACPI0003:00', '../../../../devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/ACPI0003:00') +d('sys/bus/acpi/devices', 0o775) +l('sys/bus/acpi/devices/device:11', '../../../devices/LNXSYSTM:00/device:00/PNP0A08:00/device:11') +l('sys/bus/acpi/devices/device:21', '../../../devices/LNXSYSTM:00/device:00/PNP0A08:00/device:21') +l('sys/bus/acpi/devices/PNP0000:00', '../../../devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0000:00') +l('sys/bus/acpi/devices/device:0b', '../../../devices/LNXSYSTM:00/device:00/PNP0A08:00/device:0b') +l('sys/bus/acpi/devices/device:1f', '../../../devices/LNXSYSTM:00/device:00/PNP0A08:00/device:1d/device:1e/device:1f') +l('sys/bus/acpi/devices/LNXTHERM:01', '../../../devices/LNXSYSTM:00/LNXTHERM:00/LNXTHERM:01') +l('sys/bus/acpi/devices/PNP0103:00', '../../../devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0103:00') +l('sys/bus/acpi/devices/LNXPOWER:00', '../../../devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/LNXPOWER:00') +l('sys/bus/acpi/devices/device:1c', '../../../devices/LNXSYSTM:00/device:00/PNP0A08:00/device:1a/device:1b/device:1c') +l('sys/bus/acpi/devices/device:06', '../../../devices/LNXSYSTM:00/device:00/PNP0A08:00/device:06') +l('sys/bus/acpi/devices/ACPI0003:00', '../../../devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/ACPI0003:00') +l('sys/bus/acpi/devices/PNP0C0A:00', '../../../devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/PNP0C0A:00') +l('sys/bus/acpi/devices/device:0e', '../../../devices/LNXSYSTM:00/device:00/PNP0A08:00/device:0d/device:0e') +l('sys/bus/acpi/devices/ATM1200:00', '../../../devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/ATM1200:00') +l('sys/bus/acpi/devices/device:08', '../../../devices/LNXSYSTM:00/device:00/PNP0A08:00/device:06/device:07/device:08') +l('sys/bus/acpi/devices/PNP0C0F:05', '../../../devices/LNXSYSTM:00/device:00/PNP0C0F:05') +l('sys/bus/acpi/devices/device:18', '../../../devices/LNXSYSTM:00/device:00/PNP0A08:00/device:18') +l('sys/bus/acpi/devices/device:0c', '../../../devices/LNXSYSTM:00/device:00/PNP0A08:00/device:0c') +l('sys/bus/acpi/devices/PNP0303:00', '../../../devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0303:00') +l('sys/bus/acpi/devices/device:17', '../../../devices/LNXSYSTM:00/device:00/PNP0A08:00/device:16/device:17') +l('sys/bus/acpi/devices/device:02', '../../../devices/LNXSYSTM:00/device:00/PNP0A08:00/device:02') +l('sys/bus/acpi/devices/ACPI0007:01', '../../../devices/LNXSYSTM:00/ACPI0007:01') +l('sys/bus/acpi/devices/device:13', '../../../devices/LNXSYSTM:00/device:00/PNP0A08:00/device:13') +l('sys/bus/acpi/devices/PNP0C0E:00', '../../../devices/LNXSYSTM:00/device:00/PNP0C0E:00') +l('sys/bus/acpi/devices/device:04', '../../../devices/LNXSYSTM:00/device:00/PNP0A08:00/device:02/device:04') +l('sys/bus/acpi/devices/PNP0A08:00', '../../../devices/LNXSYSTM:00/device:00/PNP0A08:00') +l('sys/bus/acpi/devices/PNP0C04:00', '../../../devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C04:00') +l('sys/bus/acpi/devices/LNXTHERM:00', '../../../devices/LNXSYSTM:00/LNXTHERM:00') +l('sys/bus/acpi/devices/device:15', '../../../devices/LNXSYSTM:00/device:00/PNP0A08:00/device:13/device:14/device:15') +l('sys/bus/acpi/devices/IBM0079:00', '../../../devices/LNXSYSTM:00/device:00/IBM0079:00') +l('sys/bus/acpi/devices/device:1d', '../../../devices/LNXSYSTM:00/device:00/PNP0A08:00/device:1d') +l('sys/bus/acpi/devices/PNP0C0D:00', '../../../devices/LNXSYSTM:00/device:00/PNP0C0D:00') +l('sys/bus/acpi/devices/device:23', '../../../devices/LNXSYSTM:00/device:00/PNP0A08:00/device:21/device:22/device:23') +l('sys/bus/acpi/devices/device:19', '../../../devices/LNXSYSTM:00/device:00/PNP0A08:00/device:19') +l('sys/bus/acpi/devices/device:12', '../../../devices/LNXSYSTM:00/device:00/PNP0A08:00/device:11/device:12') +l('sys/bus/acpi/devices/device:1a', '../../../devices/LNXSYSTM:00/device:00/PNP0A08:00/device:1a') +l('sys/bus/acpi/devices/device:00', '../../../devices/LNXSYSTM:00/device:00') +l('sys/bus/acpi/devices/PNP0800:00', '../../../devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0800:00') +l('sys/bus/acpi/devices/PNP0C02:00', '../../../devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C02:00') +l('sys/bus/acpi/devices/device:10', '../../../devices/LNXSYSTM:00/device:00/PNP0A08:00/device:0f/device:10') +l('sys/bus/acpi/devices/PNP0100:00', '../../../devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0100:00') +l('sys/bus/acpi/devices/device:0d', '../../../devices/LNXSYSTM:00/device:00/PNP0A08:00/device:0d') +l('sys/bus/acpi/devices/IBM0068:00', '../../../devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/IBM0068:00') +l('sys/bus/acpi/devices/device:25', '../../../devices/LNXSYSTM:00/device:00/PNP0A08:00/device:25') +l('sys/bus/acpi/devices/PNP0C01:00', '../../../devices/LNXSYSTM:00/device:00/PNP0C01:00') +l('sys/bus/acpi/devices/device:01', '../../../devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01') +l('sys/bus/acpi/devices/PNP0C0F:07', '../../../devices/LNXSYSTM:00/device:00/PNP0C0F:07') +l('sys/bus/acpi/devices/PNP0C0F:04', '../../../devices/LNXSYSTM:00/device:00/PNP0C0F:04') +l('sys/bus/acpi/devices/device:1b', '../../../devices/LNXSYSTM:00/device:00/PNP0A08:00/device:1a/device:1b') +l('sys/bus/acpi/devices/device:24', '../../../devices/LNXSYSTM:00/device:00/PNP0A08:00/device:21/device:22/device:24') +l('sys/bus/acpi/devices/device:1e', '../../../devices/LNXSYSTM:00/device:00/PNP0A08:00/device:1d/device:1e') +l('sys/bus/acpi/devices/ACPI0007:00', '../../../devices/LNXSYSTM:00/ACPI0007:00') +l('sys/bus/acpi/devices/LNXTHERM:02', '../../../devices/LNXSYSTM:00/LNXTHERM:00/LNXTHERM:02') +l('sys/bus/acpi/devices/PNP0C09:00', '../../../devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00') +l('sys/bus/acpi/devices/device:20', '../../../devices/LNXSYSTM:00/device:00/PNP0A08:00/device:20') +l('sys/bus/acpi/devices/PNP0C0F:02', '../../../devices/LNXSYSTM:00/device:00/PNP0C0F:02') +l('sys/bus/acpi/devices/LNXSYSTM:00', '../../../devices/LNXSYSTM:00') +l('sys/bus/acpi/devices/device:05', '../../../devices/LNXSYSTM:00/device:00/PNP0A08:00/device:02/device:05') +l('sys/bus/acpi/devices/PNP0C0F:00', '../../../devices/LNXSYSTM:00/device:00/PNP0C0F:00') +l('sys/bus/acpi/devices/device:0f', '../../../devices/LNXSYSTM:00/device:00/PNP0A08:00/device:0f') +l('sys/bus/acpi/devices/device:16', '../../../devices/LNXSYSTM:00/device:00/PNP0A08:00/device:16') +l('sys/bus/acpi/devices/device:09', '../../../devices/LNXSYSTM:00/device:00/PNP0A08:00/device:06/device:07/device:09') +l('sys/bus/acpi/devices/device:07', '../../../devices/LNXSYSTM:00/device:00/PNP0A08:00/device:06/device:07') +l('sys/bus/acpi/devices/device:03', '../../../devices/LNXSYSTM:00/device:00/PNP0A08:00/device:02/device:03') +l('sys/bus/acpi/devices/device:22', '../../../devices/LNXSYSTM:00/device:00/PNP0A08:00/device:21/device:22') +l('sys/bus/acpi/devices/PNP0C0F:01', '../../../devices/LNXSYSTM:00/device:00/PNP0C0F:01') +l('sys/bus/acpi/devices/PNP0C0F:06', '../../../devices/LNXSYSTM:00/device:00/PNP0C0F:06') +l('sys/bus/acpi/devices/device:0a', '../../../devices/LNXSYSTM:00/device:00/PNP0A08:00/device:06/device:07/device:0a') +l('sys/bus/acpi/devices/PNP0200:00', '../../../devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0200:00') +l('sys/bus/acpi/devices/device:14', '../../../devices/LNXSYSTM:00/device:00/PNP0A08:00/device:13/device:14') +l('sys/bus/acpi/devices/IBM0057:00', '../../../devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/IBM0057:00') +l('sys/bus/acpi/devices/PNP0B00:00', '../../../devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0B00:00') +l('sys/bus/acpi/devices/PNP0C0F:03', '../../../devices/LNXSYSTM:00/device:00/PNP0C0F:03') +l('sys/bus/acpi/devices/LNXPWRBN:00', '../../../devices/LNXSYSTM:00/LNXPWRBN:00') +d('sys/bus/serio', 0o755) +f('sys/bus/serio/drivers_autoprobe', 0o644, b'1\n') +d('sys/bus/serio/drivers', 0o755) +d('sys/bus/serio/drivers/psmouse', 0o755) +l('sys/bus/serio/drivers/psmouse/module', '../../../../module/psmouse') +l('sys/bus/serio/drivers/psmouse/serio1', '../../../../devices/platform/i8042/serio1') +f('sys/bus/serio/drivers/psmouse/bind_mode', 0o644, b'auto\n') +f('sys/bus/serio/drivers/psmouse/description', 0o644, b'PS/2 mouse driver\n') +d('sys/bus/serio/drivers/atkbd', 0o755) +l('sys/bus/serio/drivers/atkbd/serio0', '../../../../devices/platform/i8042/serio0') +l('sys/bus/serio/drivers/atkbd/module', '../../../../module/atkbd') +f('sys/bus/serio/drivers/atkbd/bind_mode', 0o644, b'auto\n') +f('sys/bus/serio/drivers/atkbd/description', 0o644, b'AT and PS/2 keyboard driver\n') +d('sys/bus/serio/devices', 0o755) +l('sys/bus/serio/devices/serio0', '../../../devices/platform/i8042/serio0') +l('sys/bus/serio/devices/serio1', '../../../devices/platform/i8042/serio1') +d('sys/bus/scsi', 0o755) +f('sys/bus/scsi/drivers_autoprobe', 0o644, b'1\n') +d('sys/bus/scsi/drivers', 0o755) +d('sys/bus/scsi/drivers/sd', 0o755) +l('sys/bus/scsi/drivers/sd/7:0:0:0', '../../../../devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0') +l('sys/bus/scsi/drivers/sd/0:0:0:0', '../../../../devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0') +d('sys/bus/scsi/drivers/sr', 0o755) +l('sys/bus/scsi/drivers/sr/4:0:0:0', '../../../../devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0') +d('sys/bus/scsi/devices', 0o755) +l('sys/bus/scsi/devices/target4:0:0', '../../../devices/pci0000:00/0000:00:1f.1/host4/target4:0:0') +l('sys/bus/scsi/devices/host0', '../../../devices/pci0000:00/0000:00:1f.2/host0') +l('sys/bus/scsi/devices/host5', '../../../devices/pci0000:00/0000:00:1f.1/host5') +l('sys/bus/scsi/devices/host1', '../../../devices/pci0000:00/0000:00:1f.2/host1') +l('sys/bus/scsi/devices/target0:0:0', '../../../devices/pci0000:00/0000:00:1f.2/host0/target0:0:0') +l('sys/bus/scsi/devices/host4', '../../../devices/pci0000:00/0000:00:1f.1/host4') +l('sys/bus/scsi/devices/7:0:0:0', '../../../devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0') +l('sys/bus/scsi/devices/target7:0:0', '../../../devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0') +l('sys/bus/scsi/devices/0:0:0:0', '../../../devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0') +l('sys/bus/scsi/devices/host2', '../../../devices/pci0000:00/0000:00:1f.2/host2') +l('sys/bus/scsi/devices/host7', '../../../devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7') +l('sys/bus/scsi/devices/4:0:0:0', '../../../devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0') +l('sys/bus/scsi/devices/host3', '../../../devices/pci0000:00/0000:00:1f.2/host3') +d('sys/bus/usb', 0o755) +f('sys/bus/usb/drivers_autoprobe', 0o644, b'1\n') +d('sys/bus/usb/drivers', 0o755) +d('sys/bus/usb/drivers/usb-storage', 0o755) +l('sys/bus/usb/drivers/usb-storage/module', '../../../../module/usb_storage') +l('sys/bus/usb/drivers/usb-storage/5-1:1.0', '../../../../devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0') +d('sys/bus/usb/drivers/cdc_acm', 0o755) +l('sys/bus/usb/drivers/cdc_acm/5-2:1.1', '../../../../devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.1') +l('sys/bus/usb/drivers/cdc_acm/5-2:1.0', '../../../../devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.0') +l('sys/bus/usb/drivers/cdc_acm/module', '../../../../module/cdc_acm') +d('sys/bus/usb/drivers/usbhid', 0o755) +l('sys/bus/usb/drivers/usbhid/3-1:1.0', '../../../../devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0') +l('sys/bus/usb/drivers/usbhid/module', '../../../../module/usbhid') +d('sys/bus/usb/drivers/hub', 0o755) +l('sys/bus/usb/drivers/hub/3-0:1.0', '../../../../devices/pci0000:00/0000:00:1d.2/usb3/3-0:1.0') +l('sys/bus/usb/drivers/hub/1-0:1.0', '../../../../devices/pci0000:00/0000:00:1d.0/usb1/1-0:1.0') +l('sys/bus/usb/drivers/hub/4-0:1.0', '../../../../devices/pci0000:00/0000:00:1d.3/usb4/4-0:1.0') +l('sys/bus/usb/drivers/hub/module', '../../../../module/usbcore') +l('sys/bus/usb/drivers/hub/2-0:1.0', '../../../../devices/pci0000:00/0000:00:1d.1/usb2/2-0:1.0') +l('sys/bus/usb/drivers/hub/5-0:1.0', '../../../../devices/pci0000:00/0000:00:1d.7/usb5/5-0:1.0') +d('sys/bus/usb/drivers/usb', 0o755) +l('sys/bus/usb/drivers/usb/usb5', '../../../../devices/pci0000:00/0000:00:1d.7/usb5') +l('sys/bus/usb/drivers/usb/usb1', '../../../../devices/pci0000:00/0000:00:1d.0/usb1') +l('sys/bus/usb/drivers/usb/4-2', '../../../../devices/pci0000:00/0000:00:1d.3/usb4/4-2') +l('sys/bus/usb/drivers/usb/5-1', '../../../../devices/pci0000:00/0000:00:1d.7/usb5/5-1') +l('sys/bus/usb/drivers/usb/5-2', '../../../../devices/pci0000:00/0000:00:1d.7/usb5/5-2') +l('sys/bus/usb/drivers/usb/4-1', '../../../../devices/pci0000:00/0000:00:1d.3/usb4/4-1') +l('sys/bus/usb/drivers/usb/module', '../../../../module/usbcore') +l('sys/bus/usb/drivers/usb/usb4', '../../../../devices/pci0000:00/0000:00:1d.3/usb4') +l('sys/bus/usb/drivers/usb/usb3', '../../../../devices/pci0000:00/0000:00:1d.2/usb3') +l('sys/bus/usb/drivers/usb/usb2', '../../../../devices/pci0000:00/0000:00:1d.1/usb2') +l('sys/bus/usb/drivers/usb/3-1', '../../../../devices/pci0000:00/0000:00:1d.2/usb3/3-1') +d('sys/bus/usb/drivers/usbfs', 0o755) +l('sys/bus/usb/drivers/usbfs/module', '../../../../module/usbcore') +d('sys/bus/usb/devices', 0o755) +l('sys/bus/usb/devices/4-1:1.3', '../../../devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.3') +l('sys/bus/usb/devices/5-2:1.4', '../../../devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.4') +l('sys/bus/usb/devices/usb5', '../../../devices/pci0000:00/0000:00:1d.7/usb5') +l('sys/bus/usb/devices/4-1:1.0', '../../../devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.0') +l('sys/bus/usb/devices/5-2:1.2', '../../../devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.2') +l('sys/bus/usb/devices/3-0:1.0', '../../../devices/pci0000:00/0000:00:1d.2/usb3/3-0:1.0') +l('sys/bus/usb/devices/usb1', '../../../devices/pci0000:00/0000:00:1d.0/usb1') +l('sys/bus/usb/devices/4-2', '../../../devices/pci0000:00/0000:00:1d.3/usb4/4-2') +l('sys/bus/usb/devices/5-2:1.1', '../../../devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.1') +l('sys/bus/usb/devices/1-0:1.0', '../../../devices/pci0000:00/0000:00:1d.0/usb1/1-0:1.0') +l('sys/bus/usb/devices/5-1', '../../../devices/pci0000:00/0000:00:1d.7/usb5/5-1') +l('sys/bus/usb/devices/5-2:1.10', '../../../devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.10') +l('sys/bus/usb/devices/4-0:1.0', '../../../devices/pci0000:00/0000:00:1d.3/usb4/4-0:1.0') +l('sys/bus/usb/devices/5-2:1.0', '../../../devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.0') +l('sys/bus/usb/devices/5-2', '../../../devices/pci0000:00/0000:00:1d.7/usb5/5-2') +l('sys/bus/usb/devices/5-2:1.9', '../../../devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.9') +l('sys/bus/usb/devices/3-1:1.0', '../../../devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0') +l('sys/bus/usb/devices/5-2:1.13', '../../../devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.13') +l('sys/bus/usb/devices/5-2:1.5', '../../../devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.5') +l('sys/bus/usb/devices/4-1', '../../../devices/pci0000:00/0000:00:1d.3/usb4/4-1') +l('sys/bus/usb/devices/4-1:1.2', '../../../devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.2') +l('sys/bus/usb/devices/usb4', '../../../devices/pci0000:00/0000:00:1d.3/usb4') +l('sys/bus/usb/devices/2-0:1.0', '../../../devices/pci0000:00/0000:00:1d.1/usb2/2-0:1.0') +l('sys/bus/usb/devices/5-2:1.11', '../../../devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.11') +l('sys/bus/usb/devices/usb3', '../../../devices/pci0000:00/0000:00:1d.2/usb3') +l('sys/bus/usb/devices/5-2:1.12', '../../../devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.12') +l('sys/bus/usb/devices/5-2:1.3', '../../../devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.3') +l('sys/bus/usb/devices/5-2:1.6', '../../../devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.6') +l('sys/bus/usb/devices/4-1:1.1', '../../../devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.1') +l('sys/bus/usb/devices/5-1:1.0', '../../../devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0') +l('sys/bus/usb/devices/5-0:1.0', '../../../devices/pci0000:00/0000:00:1d.7/usb5/5-0:1.0') +l('sys/bus/usb/devices/4-2:1.0', '../../../devices/pci0000:00/0000:00:1d.3/usb4/4-2/4-2:1.0') +l('sys/bus/usb/devices/usb2', '../../../devices/pci0000:00/0000:00:1d.1/usb2') +l('sys/bus/usb/devices/3-1', '../../../devices/pci0000:00/0000:00:1d.2/usb3/3-1') +d('sys/bus/pci', 0o755) +f('sys/bus/pci/drivers_autoprobe', 0o644, b'1\n') +d('sys/bus/pci/drivers', 0o755) +d('sys/bus/pci/drivers/pcieport-driver', 0o755) +l('sys/bus/pci/drivers/pcieport-driver/0000:00:1c.2', '../../../../devices/pci0000:00/0000:00:1c.2') +l('sys/bus/pci/drivers/pcieport-driver/0000:00:1c.1', '../../../../devices/pci0000:00/0000:00:1c.1') +l('sys/bus/pci/drivers/pcieport-driver/0000:00:1c.3', '../../../../devices/pci0000:00/0000:00:1c.3') +l('sys/bus/pci/drivers/pcieport-driver/0000:00:1c.0', '../../../../devices/pci0000:00/0000:00:1c.0') +l('sys/bus/pci/drivers/pcieport-driver/0000:00:01.0', '../../../../devices/pci0000:00/0000:00:01.0') +d('sys/bus/pci/drivers/uhci_hcd', 0o755) +l('sys/bus/pci/drivers/uhci_hcd/0000:00:1d.3', '../../../../devices/pci0000:00/0000:00:1d.3') +l('sys/bus/pci/drivers/uhci_hcd/module', '../../../../module/uhci_hcd') +l('sys/bus/pci/drivers/uhci_hcd/0000:00:1d.0', '../../../../devices/pci0000:00/0000:00:1d.0') +l('sys/bus/pci/drivers/uhci_hcd/0000:00:1d.2', '../../../../devices/pci0000:00/0000:00:1d.2') +l('sys/bus/pci/drivers/uhci_hcd/0000:00:1d.1', '../../../../devices/pci0000:00/0000:00:1d.1') +d('sys/bus/pci/drivers/HDA Intel', 0o755) +l('sys/bus/pci/drivers/HDA Intel/0000:00:1b.0', '../../../../devices/pci0000:00/0000:00:1b.0') +l('sys/bus/pci/drivers/HDA Intel/module', '../../../../module/snd_hda_intel') +d('sys/bus/pci/drivers/ata_piix', 0o755) +l('sys/bus/pci/drivers/ata_piix/0000:00:1f.1', '../../../../devices/pci0000:00/0000:00:1f.1') +d('sys/bus/pci/drivers/yenta_cardbus', 0o755) +l('sys/bus/pci/drivers/yenta_cardbus/module', '../../../../module/yenta_socket') +l('sys/bus/pci/drivers/yenta_cardbus/0000:15:00.0', '../../../../devices/pci0000:00/0000:00:1e.0/0000:15:00.0') +d('sys/bus/pci/drivers/e1000e', 0o755) +l('sys/bus/pci/drivers/e1000e/0000:02:00.0', '../../../../devices/pci0000:00/0000:00:1c.0/0000:02:00.0') +l('sys/bus/pci/drivers/e1000e/module', '../../../../module/e1000e') +d('sys/bus/pci/drivers/iwl3945', 0o755) +l('sys/bus/pci/drivers/iwl3945/module', '../../../../module/iwl3945') +l('sys/bus/pci/drivers/iwl3945/0000:03:00.0', '../../../../devices/pci0000:00/0000:00:1c.1/0000:03:00.0') +d('sys/bus/pci/drivers/ehci_hcd', 0o755) +l('sys/bus/pci/drivers/ehci_hcd/module', '../../../../module/ehci_hcd') +d('sys/bus/pci/drivers/agpgart-intel', 0o755) +l('sys/bus/pci/drivers/agpgart-intel/module', '../../../../module/intel_agp') +d('sys/bus/pci/drivers/ahci', 0o755) +l('sys/bus/pci/drivers/ahci/module', '../../../../module/ahci') +l('sys/bus/pci/drivers/ahci/0000:00:1f.2', '../../../../devices/pci0000:00/0000:00:1f.2') +d('sys/bus/pci/devices', 0o755) +l('sys/bus/pci/devices/0000:00:1d.3', '../../../devices/pci0000:00/0000:00:1d.3') +l('sys/bus/pci/devices/0000:00:1c.2', '../../../devices/pci0000:00/0000:00:1c.2') +l('sys/bus/pci/devices/0000:00:1b.0', '../../../devices/pci0000:00/0000:00:1b.0') +l('sys/bus/pci/devices/0000:02:00.0', '../../../devices/pci0000:00/0000:00:1c.0/0000:02:00.0') +l('sys/bus/pci/devices/0000:00:1c.1', '../../../devices/pci0000:00/0000:00:1c.1') +l('sys/bus/pci/devices/0000:00:00.0', '../../../devices/pci0000:00/0000:00:00.0') +l('sys/bus/pci/devices/0000:01:00.0', '../../../devices/pci0000:00/0000:00:01.0/0000:01:00.0') +l('sys/bus/pci/devices/0000:00:1c.3', '../../../devices/pci0000:00/0000:00:1c.3') +l('sys/bus/pci/devices/0000:00:1f.0', '../../../devices/pci0000:00/0000:00:1f.0') +l('sys/bus/pci/devices/0000:00:1c.0', '../../../devices/pci0000:00/0000:00:1c.0') +l('sys/bus/pci/devices/0000:15:00.0', '../../../devices/pci0000:00/0000:00:1e.0/0000:15:00.0') +l('sys/bus/pci/devices/0000:00:1f.3', '../../../devices/pci0000:00/0000:00:1f.3') +l('sys/bus/pci/devices/0000:00:1d.0', '../../../devices/pci0000:00/0000:00:1d.0') +l('sys/bus/pci/devices/0000:00:1f.2', '../../../devices/pci0000:00/0000:00:1f.2') +l('sys/bus/pci/devices/0000:00:1d.2', '../../../devices/pci0000:00/0000:00:1d.2') +l('sys/bus/pci/devices/0000:03:00.0', '../../../devices/pci0000:00/0000:00:1c.1/0000:03:00.0') +l('sys/bus/pci/devices/0000:00:01.0', '../../../devices/pci0000:00/0000:00:01.0') +l('sys/bus/pci/devices/0000:00:1f.1', '../../../devices/pci0000:00/0000:00:1f.1') +l('sys/bus/pci/devices/0000:00:1e.0', '../../../devices/pci0000:00/0000:00:1e.0') +l('sys/bus/pci/devices/0000:00:1d.1', '../../../devices/pci0000:00/0000:00:1d.1') +d('sys/bus/pnp', 0o755) +f('sys/bus/pnp/drivers_autoprobe', 0o644, b'1\n') +d('sys/bus/pnp/drivers', 0o755) +d('sys/bus/pnp/drivers/system', 0o755) +l('sys/bus/pnp/drivers/system/00:02', '../../../../devices/pnp0/00:02') +l('sys/bus/pnp/drivers/system/00:00', '../../../../devices/pnp0/00:00') +d('sys/bus/pnp/drivers/i8042 kbd', 0o755) +l('sys/bus/pnp/drivers/i8042 kbd/00:08', '../../../../devices/pnp0/00:08') +d('sys/bus/pnp/drivers/rtc_cmos', 0o755) +l('sys/bus/pnp/drivers/rtc_cmos/00:07', '../../../../devices/pnp0/00:07') +d('sys/bus/pnp/drivers/i8042 aux', 0o755) +l('sys/bus/pnp/drivers/i8042 aux/00:09', '../../../../devices/pnp0/00:09') +d('sys/bus/pnp/devices', 0o755) +l('sys/bus/pnp/devices/00:04', '../../../devices/pnp0/00:04') +l('sys/bus/pnp/devices/00:0a', '../../../devices/pnp0/00:0a') +l('sys/bus/pnp/devices/00:03', '../../../devices/pnp0/00:03') +l('sys/bus/pnp/devices/00:02', '../../../devices/pnp0/00:02') +l('sys/bus/pnp/devices/00:00', '../../../devices/pnp0/00:00') +l('sys/bus/pnp/devices/00:09', '../../../devices/pnp0/00:09') +l('sys/bus/pnp/devices/00:07', '../../../devices/pnp0/00:07') +l('sys/bus/pnp/devices/00:06', '../../../devices/pnp0/00:06') +l('sys/bus/pnp/devices/00:08', '../../../devices/pnp0/00:08') +l('sys/bus/pnp/devices/00:05', '../../../devices/pnp0/00:05') +l('sys/bus/pnp/devices/00:01', '../../../devices/pnp0/00:01') +d('sys/bus/pcmcia', 0o755) +f('sys/bus/pcmcia/drivers_autoprobe', 0o644, b'1\n') +d('sys/bus/platform', 0o755) +f('sys/bus/platform/drivers_autoprobe', 0o644, b'1\n') +d('sys/bus/platform/drivers', 0o755) +d('sys/bus/platform/drivers/pcspkr', 0o755) +l('sys/bus/platform/drivers/pcspkr/pcspkr', '../../../../devices/platform/pcspkr') +l('sys/bus/platform/drivers/pcspkr/module', '../../../../module/pcspkr') +d('sys/bus/platform/drivers/serial8250', 0o755) +l('sys/bus/platform/drivers/serial8250/serial8250', '../../../../devices/platform/serial8250') +d('sys/bus/platform/drivers/thinkpad_acpi', 0o755) +l('sys/bus/platform/drivers/thinkpad_acpi/module', '../../../../module/thinkpad_acpi') +l('sys/bus/platform/drivers/thinkpad_acpi/thinkpad_acpi', '../../../../devices/platform/thinkpad_acpi') +f('sys/bus/platform/drivers/thinkpad_acpi/version', 0o644, b'ThinkPad ACPI Extras v0.21\n') +f('sys/bus/platform/drivers/thinkpad_acpi/debug_level', 0o644, b'0x0000\n') +f('sys/bus/platform/drivers/thinkpad_acpi/interface_version', 0o644, b'0x00020200\n') +d('sys/bus/platform/drivers/vesafb', 0o755) +l('sys/bus/platform/drivers/vesafb/vesafb.0', '../../../../devices/platform/vesafb.0') +d('sys/bus/platform/drivers/thinkpad_hwmon', 0o755) +l('sys/bus/platform/drivers/thinkpad_hwmon/module', '../../../../module/thinkpad_acpi') +l('sys/bus/platform/drivers/thinkpad_hwmon/thinkpad_hwmon', '../../../../devices/platform/thinkpad_hwmon') +f('sys/bus/platform/drivers/thinkpad_hwmon/version', 0o644, b'ThinkPad ACPI Extras v0.21\n') +f('sys/bus/platform/drivers/thinkpad_hwmon/fan_watchdog', 0o644, b'0\n') +f('sys/bus/platform/drivers/thinkpad_hwmon/debug_level', 0o644, b'0x0000\n') +f('sys/bus/platform/drivers/thinkpad_hwmon/interface_version', 0o644, b'0x00020200\n') +d('sys/bus/platform/drivers/i8042', 0o755) +l('sys/bus/platform/drivers/i8042/i8042', '../../../../devices/platform/i8042') +d('sys/bus/platform/devices', 0o755) +l('sys/bus/platform/devices/pcspkr', '../../../devices/platform/pcspkr') +l('sys/bus/platform/devices/vesafb.0', '../../../devices/platform/vesafb.0') +l('sys/bus/platform/devices/dock.0', '../../../devices/platform/dock.0') +l('sys/bus/platform/devices/serial8250', '../../../devices/platform/serial8250') +l('sys/bus/platform/devices/thinkpad_acpi', '../../../devices/platform/thinkpad_acpi') +l('sys/bus/platform/devices/thinkpad_hwmon', '../../../devices/platform/thinkpad_hwmon') +l('sys/bus/platform/devices/microcode', '../../../devices/platform/microcode') +l('sys/bus/platform/devices/i8042', '../../../devices/platform/i8042') +d('sys/fs', 0o775) +d('sys/fs/fuse', 0o775) +d('sys/fs/fuse/connections', 0o775) +d('sys/fs/fuse/connections/16', 0o775) +f('sys/fs/fuse/connections/16/waiting', 0o664, b'0\n') +f('sys/fs/fuse/connections/16/abort', 0o664, b'') +d('sys/dev', 0o755) +d('sys/dev/char', 0o755) +l('sys/dev/char/4:39', '../../devices/virtual/tty/tty39') +l('sys/dev/char/116:33', '../../devices/virtual/sound/timer') +l('sys/dev/char/10:229', '../../devices/virtual/misc/fuse') +l('sys/dev/char/4:23', '../../devices/virtual/tty/tty23') +l('sys/dev/char/4:19', '../../devices/virtual/tty/tty19') +l('sys/dev/char/252:1', '../../devices/pci0000:00/0000:00:1d.0/usb1/usb_endpoint/usbdev1.1_ep00') +l('sys/dev/char/4:48', '../../devices/virtual/tty/tty48') +l('sys/dev/char/7:129', '../../devices/virtual/vc/vcsa1') +l('sys/dev/char/4:34', '../../devices/virtual/tty/tty34') +l('sys/dev/char/189:0', '../../devices/pci0000:00/0000:00:1d.0/usb1') +l('sys/dev/char/4:61', '../../devices/virtual/tty/tty61') +l('sys/dev/char/4:5', '../../devices/virtual/tty/tty5') +l('sys/dev/char/10:1', '../../devices/virtual/misc/psaux') +l('sys/dev/char/4:47', '../../devices/virtual/tty/tty47') +l('sys/dev/char/254:2', '../../devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/bsg/7:0:0:0') +l('sys/dev/char/252:7', '../../devices/pci0000:00/0000:00:1d.3/usb4/usb_endpoint/usbdev4.1_ep00') +l('sys/dev/char/7:1', '../../devices/virtual/vc/vcs1') +l('sys/dev/char/4:37', '../../devices/virtual/tty/tty37') +l('sys/dev/char/4:3', '../../devices/virtual/tty/tty3') +l('sys/dev/char/252:3', '../../devices/pci0000:00/0000:00:1d.1/usb2/usb_endpoint/usbdev2.1_ep00') +l('sys/dev/char/1:3', '../../devices/virtual/mem/null') +l('sys/dev/char/14:12', '../../devices/pci0000:00/0000:00:1b.0/sound/card0/adsp') +l('sys/dev/char/7:0', '../../devices/virtual/vc/vcs') +l('sys/dev/char/252:14', '../../devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.0/usb_endpoint/usbdev4.2_ep02') +l('sys/dev/char/4:52', '../../devices/virtual/tty/tty52') +l('sys/dev/char/252:18', '../../devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.2/usb_endpoint/usbdev4.2_ep04') +l('sys/dev/char/1:5', '../../devices/virtual/mem/zero') +l('sys/dev/char/13:66', '../../devices/platform/pcspkr/input/input2/event2') +l('sys/dev/char/10:223', '../../devices/virtual/misc/uinput') +l('sys/dev/char/7:2', '../../devices/virtual/vc/vcs2') +l('sys/dev/char/4:40', '../../devices/virtual/tty/tty40') +l('sys/dev/char/4:31', '../../devices/virtual/tty/tty31') +l('sys/dev/char/252:21', '../../devices/pci0000:00/0000:00:1d.3/usb4/4-2/4-2:1.0/usb_endpoint/usbdev4.3_ep02') +l('sys/dev/char/4:11', '../../devices/virtual/tty/tty11') +l('sys/dev/char/4:17', '../../devices/virtual/tty/tty17') +l('sys/dev/char/252:31', '../../devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.3/usb_endpoint/usbdev5.9_ep84') +l('sys/dev/char/189:256', '../../devices/pci0000:00/0000:00:1d.2/usb3') +l('sys/dev/char/252:5', '../../devices/pci0000:00/0000:00:1d.2/usb3/usb_endpoint/usbdev3.1_ep00') +l('sys/dev/char/7:4', '../../devices/virtual/vc/vcs4') +l('sys/dev/char/4:38', '../../devices/virtual/tty/tty38') +l('sys/dev/char/4:66', '../../devices/platform/serial8250/tty/ttyS2') +l('sys/dev/char/4:0', '../../devices/virtual/tty/tty0') +l('sys/dev/char/21:0', '../../devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/scsi_generic/sg0') +l('sys/dev/char/7:134', '../../devices/virtual/vc/vcsa6') +l('sys/dev/char/116:24', '../../devices/pci0000:00/0000:00:1b.0/sound/card0/pcmC0D0c') +l('sys/dev/char/4:29', '../../devices/virtual/tty/tty29') +l('sys/dev/char/21:2', '../../devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/scsi_generic/sg2') +l('sys/dev/char/4:27', '../../devices/virtual/tty/tty27') +l('sys/dev/char/4:21', '../../devices/virtual/tty/tty21') +l('sys/dev/char/13:64', '../../devices/platform/i8042/serio0/input/input0/event0') +l('sys/dev/char/252:30', '../../devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.2/usb_endpoint/usbdev5.9_ep83') +l('sys/dev/char/4:51', '../../devices/virtual/tty/tty51') +l('sys/dev/char/254:1', '../../devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/bsg/4:0:0:0') +l('sys/dev/char/4:18', '../../devices/virtual/tty/tty18') +l('sys/dev/char/7:3', '../../devices/virtual/vc/vcs3') +l('sys/dev/char/252:32', '../../devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.3/usb_endpoint/usbdev5.9_ep02') +l('sys/dev/char/252:27', '../../devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.0/usb_endpoint/usbdev5.9_ep81') +l('sys/dev/char/252:12', '../../devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.0/usb_endpoint/usbdev4.2_ep81') +l('sys/dev/char/1:1', '../../devices/virtual/mem/mem') +l('sys/dev/char/189:386', '../../devices/pci0000:00/0000:00:1d.3/usb4/4-2') +l('sys/dev/char/10:62', '../../devices/virtual/misc/network_latency') +l('sys/dev/char/252:4', '../../devices/pci0000:00/0000:00:1d.2/usb3/3-0:1.0/usb_endpoint/usbdev3.1_ep81') +l('sys/dev/char/5:1', '../../devices/virtual/tty/console') +l('sys/dev/char/1:7', '../../devices/virtual/mem/full') +l('sys/dev/char/7:5', '../../devices/virtual/vc/vcs5') +l('sys/dev/char/4:4', '../../devices/virtual/tty/tty4') +l('sys/dev/char/4:15', '../../devices/virtual/tty/tty15') +l('sys/dev/char/4:9', '../../devices/virtual/tty/tty9') +l('sys/dev/char/4:20', '../../devices/virtual/tty/tty20') +l('sys/dev/char/10:228', '../../devices/virtual/misc/hpet') +l('sys/dev/char/4:59', '../../devices/virtual/tty/tty59') +l('sys/dev/char/252:2', '../../devices/pci0000:00/0000:00:1d.1/usb2/2-0:1.0/usb_endpoint/usbdev2.1_ep81') +l('sys/dev/char/4:7', '../../devices/virtual/tty/tty7') +l('sys/dev/char/4:35', '../../devices/virtual/tty/tty35') +l('sys/dev/char/254:0', '../../devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/bsg/0:0:0:0') +l('sys/dev/char/189:128', '../../devices/pci0000:00/0000:00:1d.1/usb2') +l('sys/dev/char/10:184', '../../devices/virtual/misc/microcode') +l('sys/dev/char/7:131', '../../devices/virtual/vc/vcsa3') +l('sys/dev/char/116:1', '../../devices/virtual/sound/seq') +l('sys/dev/char/252:17', '../../devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.2/usb_endpoint/usbdev4.2_ep84') +l('sys/dev/char/10:61', '../../devices/virtual/misc/network_throughput') +l('sys/dev/char/7:130', '../../devices/virtual/vc/vcsa2') +l('sys/dev/char/252:0', '../../devices/pci0000:00/0000:00:1d.0/usb1/1-0:1.0/usb_endpoint/usbdev1.1_ep81') +l('sys/dev/char/4:33', '../../devices/virtual/tty/tty33') +l('sys/dev/char/4:10', '../../devices/virtual/tty/tty10') +l('sys/dev/char/13:71', '../../devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0/input/input8/event7') +l('sys/dev/char/252:10', '../../devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/usb_endpoint/usbdev5.7_ep81') +l('sys/dev/char/253:0', '../../devices/pnp0/00:07/rtc/rtc0') +l('sys/dev/char/252:19', '../../devices/pci0000:00/0000:00:1d.3/usb4/4-1/usb_endpoint/usbdev4.2_ep00') +l('sys/dev/char/7:10', '../../devices/virtual/vc/vcs10') +l('sys/dev/char/4:42', '../../devices/virtual/tty/tty42') +l('sys/dev/char/10:144', '../../devices/virtual/misc/nvram') +l('sys/dev/char/4:63', '../../devices/virtual/tty/tty63') +l('sys/dev/char/252:25', '../../devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0/usb_endpoint/usbdev3.4_ep81') +l('sys/dev/char/189:520', '../../devices/pci0000:00/0000:00:1d.7/usb5/5-2') +l('sys/dev/char/4:55', '../../devices/virtual/tty/tty55') +l('sys/dev/char/13:33', '../../devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0/input/input8/mouse1') +l('sys/dev/char/13:70', '../../devices/virtual/input/input6/event6') +l('sys/dev/char/252:29', '../../devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.1/usb_endpoint/usbdev5.9_ep01') +l('sys/dev/char/4:45', '../../devices/virtual/tty/tty45') +l('sys/dev/char/4:56', '../../devices/virtual/tty/tty56') +l('sys/dev/char/10:60', '../../devices/virtual/misc/device-mapper') +l('sys/dev/char/5:2', '../../devices/virtual/tty/ptmx') +l('sys/dev/char/252:8', '../../devices/pci0000:00/0000:00:1d.7/usb5/5-0:1.0/usb_endpoint/usbdev5.1_ep81') +l('sys/dev/char/14:3', '../../devices/pci0000:00/0000:00:1b.0/sound/card0/dsp') +l('sys/dev/char/13:68', '../../devices/LNXSYSTM:00/device:00/PNP0C0D:00/input/input4/event4') +l('sys/dev/char/13:67', '../../devices/LNXSYSTM:00/LNXPWRBN:00/input/input3/event3') +l('sys/dev/char/1:4', '../../devices/virtual/mem/port') +l('sys/dev/char/116:0', '../../devices/pci0000:00/0000:00:1b.0/sound/card0/controlC0') +l('sys/dev/char/4:46', '../../devices/virtual/tty/tty46') +l('sys/dev/char/4:41', '../../devices/virtual/tty/tty41') +l('sys/dev/char/189:512', '../../devices/pci0000:00/0000:00:1d.7/usb5') +l('sys/dev/char/4:62', '../../devices/virtual/tty/tty62') +l('sys/dev/char/252:15', '../../devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.1/usb_endpoint/usbdev4.2_ep83') +l('sys/dev/char/7:133', '../../devices/virtual/vc/vcsa5') +l('sys/dev/char/4:2', '../../devices/virtual/tty/tty2') +l('sys/dev/char/1:8', '../../devices/virtual/mem/random') +l('sys/dev/char/7:138', '../../devices/virtual/vc/vcsa10') +l('sys/dev/char/4:64', '../../devices/platform/serial8250/tty/ttyS0') +l('sys/dev/char/4:1', '../../devices/virtual/tty/tty1') +l('sys/dev/char/4:28', '../../devices/virtual/tty/tty28') +l('sys/dev/char/13:32', '../../devices/platform/i8042/serio1/input/input1/mouse0') +l('sys/dev/char/4:44', '../../devices/virtual/tty/tty44') +l('sys/dev/char/4:36', '../../devices/virtual/tty/tty36') +l('sys/dev/char/4:43', '../../devices/virtual/tty/tty43') +l('sys/dev/char/7:128', '../../devices/virtual/vc/vcsa') +l('sys/dev/char/4:60', '../../devices/virtual/tty/tty60') +l('sys/dev/char/7:135', '../../devices/virtual/vc/vcsa7') +l('sys/dev/char/4:6', '../../devices/virtual/tty/tty6') +l('sys/dev/char/4:49', '../../devices/virtual/tty/tty49') +l('sys/dev/char/189:518', '../../devices/pci0000:00/0000:00:1d.7/usb5/5-1') +l('sys/dev/char/29:0', '../../devices/platform/vesafb.0/graphics/fb0') +l('sys/dev/char/252:23', '../../devices/pci0000:00/0000:00:1d.3/usb4/4-2/usb_endpoint/usbdev4.3_ep00') +l('sys/dev/char/10:227', '../../devices/virtual/misc/mcelog') +l('sys/dev/char/4:14', '../../devices/virtual/tty/tty14') +l('sys/dev/char/4:54', '../../devices/virtual/tty/tty54') +l('sys/dev/char/7:132', '../../devices/virtual/vc/vcsa4') +l('sys/dev/char/5:0', '../../devices/virtual/tty/tty') +l('sys/dev/char/252:26', '../../devices/pci0000:00/0000:00:1d.2/usb3/3-1/usb_endpoint/usbdev3.4_ep00') +l('sys/dev/char/1:2', '../../devices/virtual/mem/kmem') +l('sys/dev/char/189:259', '../../devices/pci0000:00/0000:00:1d.2/usb3/3-1') +l('sys/dev/char/252:11', '../../devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/usb_endpoint/usbdev5.7_ep02') +l('sys/dev/char/4:26', '../../devices/virtual/tty/tty26') +l('sys/dev/char/252:33', '../../devices/pci0000:00/0000:00:1d.7/usb5/5-2/usb_endpoint/usbdev5.9_ep00') +l('sys/dev/char/4:22', '../../devices/virtual/tty/tty22') +l('sys/dev/char/10:63', '../../devices/virtual/misc/cpu_dma_latency') +l('sys/dev/char/4:13', '../../devices/virtual/tty/tty13') +l('sys/dev/char/116:17', '../../devices/pci0000:00/0000:00:1b.0/sound/card0/pcmC0D1p') +l('sys/dev/char/116:16', '../../devices/pci0000:00/0000:00:1b.0/sound/card0/pcmC0D0p') +l('sys/dev/char/252:16', '../../devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.1/usb_endpoint/usbdev4.2_ep03') +l('sys/dev/char/4:8', '../../devices/virtual/tty/tty8') +l('sys/dev/char/252:28', '../../devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.1/usb_endpoint/usbdev5.9_ep82') +l('sys/dev/char/21:1', '../../devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/scsi_generic/sg1') +l('sys/dev/char/4:24', '../../devices/virtual/tty/tty24') +l('sys/dev/char/7:7', '../../devices/virtual/vc/vcs7') +l('sys/dev/char/252:20', '../../devices/pci0000:00/0000:00:1d.3/usb4/4-2/4-2:1.0/usb_endpoint/usbdev4.3_ep81') +l('sys/dev/char/166:0', '../../devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.0/tty/ttyACM0') +l('sys/dev/char/4:58', '../../devices/virtual/tty/tty58') +l('sys/dev/char/4:57', '../../devices/virtual/tty/tty57') +l('sys/dev/char/189:384', '../../devices/pci0000:00/0000:00:1d.3/usb4') +l('sys/dev/char/4:50', '../../devices/virtual/tty/tty50') +l('sys/dev/char/7:6', '../../devices/virtual/vc/vcs6') +l('sys/dev/char/4:25', '../../devices/virtual/tty/tty25') +l('sys/dev/char/4:16', '../../devices/virtual/tty/tty16') +l('sys/dev/char/4:65', '../../devices/platform/serial8250/tty/ttyS1') +l('sys/dev/char/13:65', '../../devices/platform/i8042/serio1/input/input1/event1') +l('sys/dev/char/13:69', '../../devices/LNXSYSTM:00/device:00/PNP0C0E:00/input/input5/event5') +l('sys/dev/char/252:22', '../../devices/pci0000:00/0000:00:1d.3/usb4/4-2/4-2:1.0/usb_endpoint/usbdev4.3_ep83') +l('sys/dev/char/1:11', '../../devices/virtual/mem/kmsg') +l('sys/dev/char/189:385', '../../devices/pci0000:00/0000:00:1d.3/usb4/4-1') +l('sys/dev/char/4:12', '../../devices/virtual/tty/tty12') +l('sys/dev/char/252:13', '../../devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.0/usb_endpoint/usbdev4.2_ep82') +l('sys/dev/char/1:9', '../../devices/virtual/mem/urandom') +l('sys/dev/char/4:67', '../../devices/platform/serial8250/tty/ttyS3') +l('sys/dev/char/13:63', '../../devices/virtual/input/mice') +l('sys/dev/char/252:24', '../../devices/pci0000:00/0000:00:1d.7/usb5/5-1/usb_endpoint/usbdev5.7_ep00') +l('sys/dev/char/252:9', '../../devices/pci0000:00/0000:00:1d.7/usb5/usb_endpoint/usbdev5.1_ep00') +l('sys/dev/char/4:53', '../../devices/virtual/tty/tty53') +l('sys/dev/char/4:30', '../../devices/virtual/tty/tty30') +l('sys/dev/char/14:4', '../../devices/pci0000:00/0000:00:1b.0/sound/card0/audio') +l('sys/dev/char/14:0', '../../devices/pci0000:00/0000:00:1b.0/sound/card0/mixer') +l('sys/dev/char/252:6', '../../devices/pci0000:00/0000:00:1d.3/usb4/4-0:1.0/usb_endpoint/usbdev4.1_ep81') +l('sys/dev/char/4:32', '../../devices/virtual/tty/tty32') +d('sys/dev/block', 0o755) +l('sys/dev/block/7:1', '../../devices/virtual/block/loop1') +l('sys/dev/block/7:0', '../../devices/virtual/block/loop0') +l('sys/dev/block/8:17', '../../devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/block/sdb/sdb1') +l('sys/dev/block/7:2', '../../devices/virtual/block/loop2') +l('sys/dev/block/7:4', '../../devices/virtual/block/loop4') +l('sys/dev/block/8:8', '../../devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda8') +l('sys/dev/block/7:3', '../../devices/virtual/block/loop3') +l('sys/dev/block/11:0', '../../devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/block/sr0') +l('sys/dev/block/7:5', '../../devices/virtual/block/loop5') +l('sys/dev/block/8:5', '../../devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda5') +l('sys/dev/block/8:10', '../../devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda10') +l('sys/dev/block/8:0', '../../devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda') +l('sys/dev/block/8:9', '../../devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda9') +l('sys/dev/block/8:7', '../../devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda7') +l('sys/dev/block/8:16', '../../devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/block/sdb') +l('sys/dev/block/9:0', '../../devices/virtual/block/md0') +l('sys/dev/block/7:7', '../../devices/virtual/block/loop7') +l('sys/dev/block/8:6', '../../devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda6') +l('sys/dev/block/7:6', '../../devices/virtual/block/loop6') +l('sys/dev/block/8:1', '../../devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda1') +d('sys/module', 0o775) +d('sys/module/arc4', 0o775) +f('sys/module/arc4/initstate', 0o664, b'live\n') +f('sys/module/arc4/srcversion', 0o664, b'0E7B177AF22D87B5B21A577\n') +f('sys/module/arc4/refcnt', 0o664, b'2\n') +d('sys/module/arc4/sections', 0o775) +f('sys/module/arc4/sections/.exit.text', 0o664, b'0xffffffffa006b0dc\n') +f('sys/module/arc4/sections/.note.gnu.build-id', 0o664, b'0xffffffffa006b0f0\n') +f('sys/module/arc4/sections/.strtab', 0o664, b'0xffffffffa006b400\n') +f('sys/module/arc4/sections/.bss', 0o664, b'0xffffffffa006ba00\n') +f('sys/module/arc4/sections/.text', 0o664, b'0xffffffffa006b000\n') +f('sys/module/arc4/sections/.init.text', 0o664, b'0xffffffffa009a000\n') +f('sys/module/arc4/sections/.data', 0o664, b'0xffffffffa006b520\n') +f('sys/module/arc4/sections/.symtab', 0o664, b'0xffffffffa006b118\n') +f('sys/module/arc4/sections/.gnu.linkonce.this_module', 0o664, b'0xffffffffa006b640\n') +d('sys/module/arc4/notes', 0o775) +f('sys/module/arc4/notes/.note.gnu.build-id', 0o664, b'\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00GNU\x00[P \tR\xc2\xa7\xdd\xf0H\xaa\x06\x1a,\xb3\xa1\xa4\x9a\x13G') +d('sys/module/vt', 0o775) +d('sys/module/vt/parameters', 0o775) +f('sys/module/vt/parameters/default_grn', 0o664, b'0,0,170,85,0,0,170,170,85,85,255,255,85,85,255,255\n') +f('sys/module/vt/parameters/default_red', 0o664, b'0,170,0,170,0,170,0,170,85,255,85,255,85,255,85,255\n') +f('sys/module/vt/parameters/italic', 0o664, b'2\n') +f('sys/module/vt/parameters/underline', 0o664, b'3\n') +f('sys/module/vt/parameters/default_blu', 0o664, b'0,0,0,0,170,170,170,170,85,85,85,85,255,255,255,255\n') +f('sys/module/vt/parameters/default_utf8', 0o664, b'1\n') +d('sys/module/cdrom', 0o775) +f('sys/module/cdrom/initstate', 0o664, b'live\n') +f('sys/module/cdrom/srcversion', 0o664, b'D868CCB0789DA27F51280A8\n') +f('sys/module/cdrom/refcnt', 0o664, b'1\n') +d('sys/module/cdrom/holders', 0o775) +l('sys/module/cdrom/holders/sr_mod', '../../sr_mod') +d('sys/module/cdrom/sections', 0o775) +f('sys/module/cdrom/sections/__ksymtab_strings', 0o664, b'0xffffffffa002fe20\n') +f('sys/module/cdrom/sections/.exit.text', 0o664, b'0xffffffffa002e0f8\n') +f('sys/module/cdrom/sections/.note.gnu.build-id', 0o664, b'0xffffffffa002e120\n') +f('sys/module/cdrom/sections/.strtab', 0o664, b'0xffffffffa0030f60\n') +f('sys/module/cdrom/sections/__ksymtab', 0o664, b'0xffffffffa002fc10\n') +f('sys/module/cdrom/sections/.rodata', 0o664, b'0xffffffffa002e160\n') +f('sys/module/cdrom/sections/__param', 0o664, b'0xffffffffa002fd30\n') +f('sys/module/cdrom/sections/.bss', 0o664, b'0xffffffffa0032380\n') +f('sys/module/cdrom/sections/.text', 0o664, b'0xffffffffa0029000\n') +f('sys/module/cdrom/sections/.init.text', 0o664, b'0xffffffffa0034000\n') +f('sys/module/cdrom/sections/__kcrctab', 0o664, b'0xffffffffa002fcd0\n') +f('sys/module/cdrom/sections/.data', 0o664, b'0xffffffffa0031b80\n') +f('sys/module/cdrom/sections/.symtab', 0o664, b'0xffffffffa002fef8\n') +f('sys/module/cdrom/sections/.gnu.linkonce.this_module', 0o664, b'0xffffffffa0031fc0\n') +f('sys/module/cdrom/sections/.rodata.str1.1', 0o664, b'0xffffffffa002f896\n') +d('sys/module/cdrom/notes', 0o775) +f('sys/module/cdrom/notes/.note.gnu.build-id', 0o664, b'\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00GNU\x00C\x03\x04\xe9\x8a\x17\x19\x8b\xc7Y\xea\x1a\xa35\x85K\x9e\x1e\xf8=') +d('sys/module/rfkill', 0o775) +f('sys/module/rfkill/version', 0o664, b'1.0\n') +f('sys/module/rfkill/initstate', 0o664, b'live\n') +f('sys/module/rfkill/srcversion', 0o664, b'6B4E68548C57FD365EB4E71\n') +f('sys/module/rfkill/refcnt', 0o664, b'2\n') +d('sys/module/rfkill/holders', 0o775) +l('sys/module/rfkill/holders/thinkpad_acpi', '../../thinkpad_acpi') +d('sys/module/rfkill/parameters', 0o775) +f('sys/module/rfkill/parameters/default_state', 0o664, b'1\n') +d('sys/module/rfkill/sections', 0o775) +f('sys/module/rfkill/sections/__ksymtab_gpl', 0o664, b'0xffffffffa01d9f70\n') +f('sys/module/rfkill/sections/.smp_locks', 0o664, b'0xffffffffa01d9e80\n') +f('sys/module/rfkill/sections/__bug_table', 0o664, b'0xffffffffa01d9e36\n') +f('sys/module/rfkill/sections/__ksymtab_strings', 0o664, b'0xffffffffa01d9fe0\n') +f('sys/module/rfkill/sections/.exit.text', 0o664, b'0xffffffffa01d9c88\n') +f('sys/module/rfkill/sections/.note.gnu.build-id', 0o664, b'0xffffffffa01d9cb0\n') +f('sys/module/rfkill/sections/.strtab', 0o664, b'0xffffffffa01dae08\n') +f('sys/module/rfkill/sections/__ksymtab', 0o664, b'0xffffffffa01d9ee0\n') +f('sys/module/rfkill/sections/.rodata', 0o664, b'0xffffffffa01d9cd8\n') +f('sys/module/rfkill/sections/__param', 0o664, b'0xffffffffa01d9fb8\n') +f('sys/module/rfkill/sections/.bss', 0o664, b'0xffffffffa01dbe00\n') +f('sys/module/rfkill/sections/.text', 0o664, b'0xffffffffa01d9000\n') +f('sys/module/rfkill/sections/.init.text', 0o664, b'0xffffffffa009a000\n') +f('sys/module/rfkill/sections/__kcrctab', 0o664, b'0xffffffffa01d9f40\n') +f('sys/module/rfkill/sections/.data', 0o664, b'0xffffffffa01db780\n') +f('sys/module/rfkill/sections/.symtab', 0o664, b'0xffffffffa01da088\n') +f('sys/module/rfkill/sections/.gnu.linkonce.this_module', 0o664, b'0xffffffffa01dba40\n') +f('sys/module/rfkill/sections/.rodata.str1.1', 0o664, b'0xffffffffa01d9d36\n') +f('sys/module/rfkill/sections/__kcrctab_gpl', 0o664, b'0xffffffffa01d9fa0\n') +d('sys/module/rfkill/notes', 0o775) +f('sys/module/rfkill/notes/.note.gnu.build-id', 0o664, b'\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00GNU\x00\xd1\x1fs\x98\x9b\x97\xc4\xec\x9dd\xac:\x94m\x1e\xc0Y\xcfd"') +d('sys/module/uinput', 0o775) +f('sys/module/uinput/version', 0o664, b'0.3\n') +f('sys/module/uinput/initstate', 0o664, b'live\n') +f('sys/module/uinput/srcversion', 0o664, b'2C3E0DB9E2496AD70174B85\n') +f('sys/module/uinput/refcnt', 0o664, b'0\n') +d('sys/module/uinput/sections', 0o775) +f('sys/module/uinput/sections/.smp_locks', 0o664, b'0xffffffffa0206448\n') +f('sys/module/uinput/sections/.exit.text', 0o664, b'0xffffffffa0206278\n') +f('sys/module/uinput/sections/.note.gnu.build-id', 0o664, b'0xffffffffa020628c\n') +f('sys/module/uinput/sections/.strtab', 0o664, b'0xffffffffa0206c88\n') +f('sys/module/uinput/sections/.rodata', 0o664, b'0xffffffffa02062c0\n') +f('sys/module/uinput/sections/.bss', 0o664, b'0xffffffffa02074c0\n') +f('sys/module/uinput/sections/.text', 0o664, b'0xffffffffa0205000\n') +f('sys/module/uinput/sections/.init.text', 0o664, b'0xffffffffa0070000\n') +f('sys/module/uinput/sections/.data', 0o664, b'0xffffffffa02070c0\n') +f('sys/module/uinput/sections/.symtab', 0o664, b'0xffffffffa0206490\n') +f('sys/module/uinput/sections/.gnu.linkonce.this_module', 0o664, b'0xffffffffa0207100\n') +f('sys/module/uinput/sections/.rodata.str1.1', 0o664, b'0xffffffffa0206398\n') +d('sys/module/uinput/notes', 0o775) +f('sys/module/uinput/notes/.note.gnu.build-id', 0o664, b"\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00GNU\x00'\n{\xdf\xe9m\x80\xea\xa8k\x8f=\x90\x8c\xe1\xf7{\x06\x15S") +d('sys/module/fuse', 0o775) +f('sys/module/fuse/initstate', 0o664, b'live\n') +f('sys/module/fuse/srcversion', 0o664, b'A6C92EE44A51B1B0DC4377D\n') +f('sys/module/fuse/refcnt', 0o664, b'3\n') +d('sys/module/fuse/sections', 0o775) +f('sys/module/fuse/sections/.smp_locks', 0o664, b'0xffffffffa0249d78\n') +f('sys/module/fuse/sections/__bug_table', 0o664, b'0xffffffffa024a032\n') +f('sys/module/fuse/sections/.exit.text', 0o664, b'0xffffffffa02493d0\n') +f('sys/module/fuse/sections/.note.gnu.build-id', 0o664, b'0xffffffffa0249414\n') +f('sys/module/fuse/sections/.strtab', 0o664, b'0xffffffffa024c4e8\n') +f('sys/module/fuse/sections/.rodata', 0o664, b'0xffffffffa0249440\n') +f('sys/module/fuse/sections/.bss', 0o664, b'0xffffffffa024e300\n') +f('sys/module/fuse/sections/.text', 0o664, b'0xffffffffa0240000\n') +f('sys/module/fuse/sections/.init.text', 0o664, b'0xffffffffa0065000\n') +f('sys/module/fuse/sections/.data', 0o664, b'0xffffffffa024dba0\n') +f('sys/module/fuse/sections/.symtab', 0o664, b'0xffffffffa024a208\n') +f('sys/module/fuse/sections/.gnu.linkonce.this_module', 0o664, b'0xffffffffa024df40\n') +f('sys/module/fuse/sections/.rodata.str1.1', 0o664, b'0xffffffffa0249e50\n') +d('sys/module/fuse/notes', 0o775) +f('sys/module/fuse/notes/.note.gnu.build-id', 0o664, b'\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00GNU\x00\x7fh\xfe:\x1f\xc6\xddW\x96\x80\x16\x9fK\x7f\xba,\x8a\xc6\xf6E') +d('sys/module/hid', 0o775) +d('sys/module/hid/parameters', 0o775) +f('sys/module/hid/parameters/pb_fnmode', 0o664, b'1\n') +d('sys/module/uhci_hcd', 0o775) +f('sys/module/uhci_hcd/initstate', 0o664, b'live\n') +f('sys/module/uhci_hcd/srcversion', 0o664, b'E3F4B6BEC99D6670259FCC9\n') +f('sys/module/uhci_hcd/refcnt', 0o664, b'0\n') +d('sys/module/uhci_hcd/drivers', 0o775) +l('sys/module/uhci_hcd/drivers/pci:uhci_hcd', '../../../bus/pci/drivers/uhci_hcd') +d('sys/module/uhci_hcd/parameters', 0o775) +f('sys/module/uhci_hcd/parameters/ignore_oc', 0o664, b'N\n') +d('sys/module/uhci_hcd/sections', 0o775) +f('sys/module/uhci_hcd/sections/.smp_locks', 0o664, b'0xffffffffa00c6850\n') +f('sys/module/uhci_hcd/sections/.exit.text', 0o664, b'0xffffffffa00c621c\n') +f('sys/module/uhci_hcd/sections/.note.gnu.build-id', 0o664, b'0xffffffffa00c6254\n') +f('sys/module/uhci_hcd/sections/.strtab', 0o664, b'0xffffffffa00c7690\n') +f('sys/module/uhci_hcd/sections/.rodata', 0o664, b'0xffffffffa00c6280\n') +f('sys/module/uhci_hcd/sections/__param', 0o664, b'0xffffffffa00c6888\n') +f('sys/module/uhci_hcd/sections/.bss', 0o664, b'0xffffffffa00c8400\n') +f('sys/module/uhci_hcd/sections/.text', 0o664, b'0xffffffffa00c2000\n') +f('sys/module/uhci_hcd/sections/.init.text', 0o664, b'0xffffffffa0027000\n') +f('sys/module/uhci_hcd/sections/.data', 0o664, b'0xffffffffa00c7ee0\n') +f('sys/module/uhci_hcd/sections/.symtab', 0o664, b'0xffffffffa00c68b0\n') +f('sys/module/uhci_hcd/sections/.gnu.linkonce.this_module', 0o664, b'0xffffffffa00c8040\n') +f('sys/module/uhci_hcd/sections/.rodata.str1.1', 0o664, b'0xffffffffa00c67d2\n') +d('sys/module/uhci_hcd/notes', 0o775) +f('sys/module/uhci_hcd/notes/.note.gnu.build-id', 0o664, b'\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00GNU\x00t\xd0\xa5\xd2A\xa2\x874\x12\xb5\xf6\x9c\xff\xb9\xee`\x8d\x9f[\x04') +d('sys/module/crypto_blkcipher', 0o775) +f('sys/module/crypto_blkcipher/initstate', 0o664, b'live\n') +f('sys/module/crypto_blkcipher/srcversion', 0o664, b'723F00BD2391209F4D65272\n') +f('sys/module/crypto_blkcipher/refcnt', 0o664, b'1\n') +d('sys/module/crypto_blkcipher/holders', 0o775) +l('sys/module/crypto_blkcipher/holders/ecb', '../../ecb') +d('sys/module/crypto_blkcipher/sections', 0o775) +f('sys/module/crypto_blkcipher/sections/__ksymtab_gpl', 0o664, b'0xffffffffa01f1610\n') +f('sys/module/crypto_blkcipher/sections/.smp_locks', 0o664, b'0xffffffffa01f18c0\n') +f('sys/module/crypto_blkcipher/sections/__bug_table', 0o664, b'0xffffffffa01f185f\n') +f('sys/module/crypto_blkcipher/sections/__ksymtab_strings', 0o664, b'0xffffffffa01f1748\n') +f('sys/module/crypto_blkcipher/sections/.exit.text', 0o664, b'0xffffffffa01f138c\n') +f('sys/module/crypto_blkcipher/sections/.note.gnu.build-id', 0o664, b'0xffffffffa01f13b0\n') +f('sys/module/crypto_blkcipher/sections/.strtab', 0o664, b'0xffffffffa01f2b10\n') +f('sys/module/crypto_blkcipher/sections/.rodata', 0o664, b'0xffffffffa01f13e0\n') +f('sys/module/crypto_blkcipher/sections/.bss', 0o664, b'0xffffffffa01f3ec0\n') +f('sys/module/crypto_blkcipher/sections/.text', 0o664, b'0xffffffffa01ef000\n') +f('sys/module/crypto_blkcipher/sections/.init.text', 0o664, b'0xffffffffa0027000\n') +f('sys/module/crypto_blkcipher/sections/.data', 0o664, b'0xffffffffa01f39e0\n') +f('sys/module/crypto_blkcipher/sections/.symtab', 0o664, b'0xffffffffa01f18f8\n') +f('sys/module/crypto_blkcipher/sections/.gnu.linkonce.this_module', 0o664, b'0xffffffffa01f3b00\n') +f('sys/module/crypto_blkcipher/sections/.rodata.str1.1', 0o664, b'0xffffffffa01f1440\n') +f('sys/module/crypto_blkcipher/sections/__kcrctab_gpl', 0o664, b'0xffffffffa01f16e0\n') +d('sys/module/crypto_blkcipher/notes', 0o775) +f('sys/module/crypto_blkcipher/notes/.note.gnu.build-id', 0o664, b'\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00GNU\x00-_P~\xd2\x1eM\xee\xb0!\xc0\xd8\xb7\x00\x1b\xe4#-\xc8\xe0') +d('sys/module/soundcore', 0o775) +f('sys/module/soundcore/initstate', 0o664, b'live\n') +f('sys/module/soundcore/srcversion', 0o664, b'E4F49ED9C4CFD1A5A923330\n') +f('sys/module/soundcore/refcnt', 0o664, b'1\n') +d('sys/module/soundcore/holders', 0o775) +l('sys/module/soundcore/holders/snd', '../../snd') +d('sys/module/soundcore/sections', 0o775) +f('sys/module/soundcore/sections/__ksymtab_strings', 0o664, b'0xffffffffa0067bf0\n') +f('sys/module/soundcore/sections/.exit.text', 0o664, b'0xffffffffa0067850\n') +f('sys/module/soundcore/sections/.note.gnu.build-id', 0o664, b'0xffffffffa0067874\n') +f('sys/module/soundcore/sections/.strtab', 0o664, b'0xffffffffa00686d0\n') +f('sys/module/soundcore/sections/__ksymtab', 0o664, b'0xffffffffa0067b00\n') +f('sys/module/soundcore/sections/.rodata', 0o664, b'0xffffffffa00678a0\n') +f('sys/module/soundcore/sections/.bss', 0o664, b'0xffffffffa00692c0\n') +f('sys/module/soundcore/sections/.text', 0o664, b'0xffffffffa0067000\n') +f('sys/module/soundcore/sections/.init.text', 0o664, b'0xffffffffa006b000\n') +f('sys/module/soundcore/sections/__kcrctab', 0o664, b'0xffffffffa0067ba0\n') +f('sys/module/soundcore/sections/.data', 0o664, b'0xffffffffa0068ec0\n') +f('sys/module/soundcore/sections/.symtab', 0o664, b'0xffffffffa0067cc8\n') +f('sys/module/soundcore/sections/.gnu.linkonce.this_module', 0o664, b'0xffffffffa0068f00\n') +f('sys/module/soundcore/sections/.rodata.str1.1', 0o664, b'0xffffffffa00679f8\n') +d('sys/module/soundcore/notes', 0o775) +f('sys/module/soundcore/notes/.note.gnu.build-id', 0o664, b'\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00GNU\x00^\x97fIs2\xf4Ck\xe0$]\xd8)]\xe2\x9c\xea\x1d\x0c') +d('sys/module/pcspkr', 0o775) +f('sys/module/pcspkr/initstate', 0o664, b'live\n') +f('sys/module/pcspkr/srcversion', 0o664, b'5757E9C81E627525BA9D165\n') +f('sys/module/pcspkr/refcnt', 0o664, b'0\n') +d('sys/module/pcspkr/drivers', 0o775) +l('sys/module/pcspkr/drivers/platform:pcspkr', '../../../bus/platform/drivers/pcspkr') +d('sys/module/pcspkr/sections', 0o775) +f('sys/module/pcspkr/sections/.exit.text', 0o664, b'0xffffffffa009e15c\n') +f('sys/module/pcspkr/sections/.note.gnu.build-id', 0o664, b'0xffffffffa009e250\n') +f('sys/module/pcspkr/sections/.strtab', 0o664, b'0xffffffffa009e6e8\n') +f('sys/module/pcspkr/sections/.devexit.text', 0o664, b'0xffffffffa009e16e\n') +f('sys/module/pcspkr/sections/.bss', 0o664, b'0xffffffffa009ed80\n') +f('sys/module/pcspkr/sections/.text', 0o664, b'0xffffffffa009e000\n') +f('sys/module/pcspkr/sections/.init.text', 0o664, b'0xffffffffa00a0000\n') +f('sys/module/pcspkr/sections/.data', 0o664, b'0xffffffffa009e900\n') +f('sys/module/pcspkr/sections/.devinit.text', 0o664, b'0xffffffffa009e1ad\n') +f('sys/module/pcspkr/sections/.symtab', 0o664, b'0xffffffffa009e298\n') +f('sys/module/pcspkr/sections/.gnu.linkonce.this_module', 0o664, b'0xffffffffa009e9c0\n') +f('sys/module/pcspkr/sections/.rodata.str1.1', 0o664, b'0xffffffffa009e274\n') +d('sys/module/pcspkr/notes', 0o775) +f('sys/module/pcspkr/notes/.note.gnu.build-id', 0o664, b'\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00GNU\x00\xe3\xfd\xb1\xf7b\xd2\x8f\xc1\xd2C\xfc\xfe\xdf8\x80\x82\x85A\xc9!') +d('sys/module/sr_mod', 0o775) +f('sys/module/sr_mod/initstate', 0o664, b'live\n') +f('sys/module/sr_mod/srcversion', 0o664, b'3484F077F1A71803F453437\n') +f('sys/module/sr_mod/refcnt', 0o664, b'0\n') +d('sys/module/sr_mod/parameters', 0o775) +f('sys/module/sr_mod/parameters/xa_test', 0o664, b'0\n') +d('sys/module/sr_mod/sections', 0o775) +f('sys/module/sr_mod/sections/.smp_locks', 0o664, b'0xffffffffa0061488\n') +f('sys/module/sr_mod/sections/.exit.text', 0o664, b'0xffffffffa006126c\n') +f('sys/module/sr_mod/sections/.note.gnu.build-id', 0o664, b'0xffffffffa0061290\n') +f('sys/module/sr_mod/sections/.strtab', 0o664, b'0xffffffffa00623f0\n') +f('sys/module/sr_mod/sections/.rodata', 0o664, b'0xffffffffa00612c0\n') +f('sys/module/sr_mod/sections/__param', 0o664, b'0xffffffffa0061750\n') +f('sys/module/sr_mod/sections/.bss', 0o664, b'0xffffffffa00630c0\n') +f('sys/module/sr_mod/sections/.text', 0o664, b'0xffffffffa005f000\n') +f('sys/module/sr_mod/sections/.init.text', 0o664, b'0xffffffffa0065000\n') +f('sys/module/sr_mod/sections/.data', 0o664, b'0xffffffffa0062aa0\n') +f('sys/module/sr_mod/sections/.symtab', 0o664, b'0xffffffffa0061778\n') +f('sys/module/sr_mod/sections/.gnu.linkonce.this_module', 0o664, b'0xffffffffa0062d00\n') +f('sys/module/sr_mod/sections/.rodata.str1.1', 0o664, b'0xffffffffa0061308\n') +d('sys/module/sr_mod/notes', 0o775) +f('sys/module/sr_mod/notes/.note.gnu.build-id', 0o664, b'\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00GNU\x00\xae\xa7\xdcHo\xe7\xe1\xa0#\x94\x9a\xfeV8\xa6O$@\xc1(') +d('sys/module/cfg80211', 0o775) +f('sys/module/cfg80211/initstate', 0o664, b'live\n') +f('sys/module/cfg80211/srcversion', 0o664, b'C43F275505B181F0D1625BE\n') +f('sys/module/cfg80211/refcnt', 0o664, b'2\n') +d('sys/module/cfg80211/holders', 0o775) +l('sys/module/cfg80211/holders/mac80211', '../../mac80211') +l('sys/module/cfg80211/holders/iwl3945', '../../iwl3945') +d('sys/module/cfg80211/parameters', 0o775) +f('sys/module/cfg80211/parameters/ieee80211_regdom', 0o664, b'US\n') +d('sys/module/cfg80211/sections', 0o775) +f('sys/module/cfg80211/sections/.smp_locks', 0o664, b'0xffffffffa00bd2a0\n') +f('sys/module/cfg80211/sections/__bug_table', 0o664, b'0xffffffffa00bd166\n') +f('sys/module/cfg80211/sections/__ksymtab_strings', 0o664, b'0xffffffffa00bd448\n') +f('sys/module/cfg80211/sections/.note.gnu.build-id', 0o664, b'0xffffffffa00bce58\n') +f('sys/module/cfg80211/sections/.strtab', 0o664, b'0xffffffffa00be8c0\n') +f('sys/module/cfg80211/sections/__ksymtab', 0o664, b'0xffffffffa00bd370\n') +f('sys/module/cfg80211/sections/.rodata', 0o664, b'0xffffffffa00bce80\n') +f('sys/module/cfg80211/sections/.data.read_mostly', 0o664, b'0xffffffffa00bfe60\n') +f('sys/module/cfg80211/sections/__param', 0o664, b'0xffffffffa00bd518\n') +f('sys/module/cfg80211/sections/.bss', 0o664, b'0xffffffffa00c02c0\n') +f('sys/module/cfg80211/sections/.text', 0o664, b'0xffffffffa00b9000\n') +f('sys/module/cfg80211/sections/__kcrctab', 0o664, b'0xffffffffa00bd400\n') +f('sys/module/cfg80211/sections/.data', 0o664, b'0xffffffffa00bf760\n') +f('sys/module/cfg80211/sections/.symtab', 0o664, b'0xffffffffa00bd540\n') +f('sys/module/cfg80211/sections/.gnu.linkonce.this_module', 0o664, b'0xffffffffa00bff00\n') +f('sys/module/cfg80211/sections/.rodata.str1.1', 0o664, b'0xffffffffa00bd078\n') +d('sys/module/cfg80211/notes', 0o775) +f('sys/module/cfg80211/notes/.note.gnu.build-id', 0o664, b'\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00GNU\x00}-\xdb\xa6\xb1\xf6I\x90\xaf\xbdX\xed\x8d\xac\x86o(\xc8zC') +d('sys/module/snd_seq', 0o775) +f('sys/module/snd_seq/initstate', 0o664, b'live\n') +f('sys/module/snd_seq/srcversion', 0o664, b'94E19F6DBC8F63B241414FE\n') +f('sys/module/snd_seq/refcnt', 0o664, b'0\n') +d('sys/module/snd_seq/parameters', 0o775) +f('sys/module/snd_seq/parameters/seq_default_timer_device', 0o664, b'0\n') +f('sys/module/snd_seq/parameters/seq_default_timer_class', 0o664, b'1\n') +f('sys/module/snd_seq/parameters/seq_client_load', 0o664, b'-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1\n') +f('sys/module/snd_seq/parameters/seq_default_timer_sclass', 0o664, b'0\n') +f('sys/module/snd_seq/parameters/seq_default_timer_resolution', 0o664, b'0\n') +f('sys/module/snd_seq/parameters/seq_default_timer_subdevice', 0o664, b'0\n') +f('sys/module/snd_seq/parameters/seq_default_timer_card', 0o664, b'-1\n') +d('sys/module/snd_seq/sections', 0o775) +f('sys/module/snd_seq/sections/.smp_locks', 0o664, b'0xffffffffa02b1d30\n') +f('sys/module/snd_seq/sections/__ksymtab_strings', 0o664, b'0xffffffffa02b1748\n') +f('sys/module/snd_seq/sections/.exit.text', 0o664, b'0xffffffffa02b0ff0\n') +f('sys/module/snd_seq/sections/.note.gnu.build-id', 0o664, b'0xffffffffa02b10bc\n') +f('sys/module/snd_seq/sections/.strtab', 0o664, b'0xffffffffa02b4590\n') +f('sys/module/snd_seq/sections/__ksymtab', 0o664, b'0xffffffffa02b1610\n') +f('sys/module/snd_seq/sections/.rodata', 0o664, b'0xffffffffa02b10e0\n') +f('sys/module/snd_seq/sections/__param', 0o664, b'0xffffffffa02b1320\n') +f('sys/module/snd_seq/sections/.bss', 0o664, b'0xffffffffa02b6f80\n') +f('sys/module/snd_seq/sections/.text', 0o664, b'0xffffffffa02a9000\n') +f('sys/module/snd_seq/sections/.init.text', 0o664, b'0xffffffffa0065000\n') +f('sys/module/snd_seq/sections/__kcrctab', 0o664, b'0xffffffffa02b16e0\n') +f('sys/module/snd_seq/sections/.data', 0o664, b'0xffffffffa02b6860\n') +f('sys/module/snd_seq/sections/.symtab', 0o664, b'0xffffffffa02b1fc8\n') +f('sys/module/snd_seq/sections/.gnu.linkonce.this_module', 0o664, b'0xffffffffa02b6bc0\n') +f('sys/module/snd_seq/sections/.rodata.str1.1', 0o664, b'0xffffffffa02b18b6\n') +d('sys/module/snd_seq/notes', 0o775) +f('sys/module/snd_seq/notes/.note.gnu.build-id', 0o664, b'\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00GNU\x00O@T\xdaF\x1cl\x11\xfev\xdd\xaa \xea\x87\x92P\xfe\xb1\xf8') +d('sys/module/usb_storage', 0o775) +f('sys/module/usb_storage/initstate', 0o664, b'live\n') +f('sys/module/usb_storage/srcversion', 0o664, b'D07F7C47643AB7AFB6BEF6F\n') +f('sys/module/usb_storage/refcnt', 0o664, b'1\n') +d('sys/module/usb_storage/drivers', 0o775) +l('sys/module/usb_storage/drivers/usb:usb-storage', '../../../bus/usb/drivers/usb-storage') +d('sys/module/usb_storage/parameters', 0o775) +f('sys/module/usb_storage/parameters/swi_tru_install', 0o664, b'1\n') +f('sys/module/usb_storage/parameters/delay_use', 0o664, b'5\n') +d('sys/module/usb_storage/sections', 0o775) +f('sys/module/usb_storage/sections/.smp_locks', 0o664, b'0xffffffffa02e1820\n') +f('sys/module/usb_storage/sections/.exit.text', 0o664, b'0xffffffffa02e056c\n') +f('sys/module/usb_storage/sections/.note.gnu.build-id', 0o664, b'0xffffffffa02e0580\n') +f('sys/module/usb_storage/sections/.strtab', 0o664, b'0xffffffffa02e42d0\n') +f('sys/module/usb_storage/sections/.rodata', 0o664, b'0xffffffffa02e05b0\n') +f('sys/module/usb_storage/sections/__param', 0o664, b'0xffffffffa02e18b0\n') +f('sys/module/usb_storage/sections/.bss', 0o664, b'0xffffffffa02e9400\n') +f('sys/module/usb_storage/sections/.text', 0o664, b'0xffffffffa02dd000\n') +f('sys/module/usb_storage/sections/.init.text', 0o664, b'0xffffffffa0065000\n') +f('sys/module/usb_storage/sections/.data', 0o664, b'0xffffffffa02e5dc0\n') +f('sys/module/usb_storage/sections/.symtab', 0o664, b'0xffffffffa02e1900\n') +f('sys/module/usb_storage/sections/.gnu.linkonce.this_module', 0o664, b'0xffffffffa02e9040\n') +f('sys/module/usb_storage/sections/.rodata.str1.1', 0o664, b'0xffffffffa02e0ab1\n') +d('sys/module/usb_storage/notes', 0o775) +f('sys/module/usb_storage/notes/.note.gnu.build-id', 0o664, b'\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00GNU\x00B~(&&u\xc4Ax\xd8|\x80n\xc4G(i\xf3kG') +d('sys/module/acpi_cpufreq', 0o775) +f('sys/module/acpi_cpufreq/initstate', 0o664, b'live\n') +f('sys/module/acpi_cpufreq/srcversion', 0o664, b'09166B6001DCE2189668F16\n') +f('sys/module/acpi_cpufreq/refcnt', 0o664, b'1\n') +d('sys/module/acpi_cpufreq/parameters', 0o775) +f('sys/module/acpi_cpufreq/parameters/acpi_pstate_strict', 0o664, b'0\n') +d('sys/module/acpi_cpufreq/sections', 0o775) +f('sys/module/acpi_cpufreq/sections/.smp_locks', 0o664, b'0xffffffffa0254d68\n') +f('sys/module/acpi_cpufreq/sections/.exit.text', 0o664, b'0xffffffffa0254c4c\n') +f('sys/module/acpi_cpufreq/sections/.note.gnu.build-id', 0o664, b'0xffffffffa0254c6c\n') +f('sys/module/acpi_cpufreq/sections/.strtab', 0o664, b'0xffffffffa0255620\n') +f('sys/module/acpi_cpufreq/sections/.rodata', 0o664, b'0xffffffffa0254ca0\n') +f('sys/module/acpi_cpufreq/sections/__param', 0o664, b'0xffffffffa0254d70\n') +f('sys/module/acpi_cpufreq/sections/.bss', 0o664, b'0xffffffffa0256000\n') +f('sys/module/acpi_cpufreq/sections/.text', 0o664, b'0xffffffffa0254000\n') +f('sys/module/acpi_cpufreq/sections/.init.text', 0o664, b'0xffffffffa0065000\n') +f('sys/module/acpi_cpufreq/sections/.data', 0o664, b'0xffffffffa0255bc0\n') +f('sys/module/acpi_cpufreq/sections/.symtab', 0o664, b'0xffffffffa0254dc8\n') +f('sys/module/acpi_cpufreq/sections/.gnu.linkonce.this_module', 0o664, b'0xffffffffa0255c40\n') +f('sys/module/acpi_cpufreq/sections/.rodata.str1.1', 0o664, b'0xffffffffa0254d98\n') +d('sys/module/acpi_cpufreq/notes', 0o775) +f('sys/module/acpi_cpufreq/notes/.note.gnu.build-id', 0o664, b'\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00GNU\x00\xa4\xfd\x13\xe7*\xbd\x99\x95\x99C\xf6\x95\x04\xf1r\xf9\xf7}aL') +d('sys/module/button', 0o775) +f('sys/module/button/initstate', 0o664, b'live\n') +f('sys/module/button/srcversion', 0o664, b'2713981C971D8EC4C059338\n') +f('sys/module/button/refcnt', 0o664, b'0\n') +d('sys/module/button/sections', 0o775) +f('sys/module/button/sections/.smp_locks', 0o664, b'0xffffffffa00a7c98\n') +f('sys/module/button/sections/.exit.text', 0o664, b'0xffffffffa00a781c\n') +f('sys/module/button/sections/.note.gnu.build-id', 0o664, b'0xffffffffa00a7898\n') +f('sys/module/button/sections/.strtab', 0o664, b'0xffffffffa00a84d8\n') +f('sys/module/button/sections/.rodata', 0o664, b'0xffffffffa00a78c0\n') +f('sys/module/button/sections/.bss', 0o664, b'0xffffffffa00a8f40\n') +f('sys/module/button/sections/.text', 0o664, b'0xffffffffa00a7000\n') +f('sys/module/button/sections/.init.text', 0o664, b'0xffffffffa00aa000\n') +f('sys/module/button/sections/.data', 0o664, b'0xffffffffa00a89e0\n') +f('sys/module/button/sections/.symtab', 0o664, b'0xffffffffa00a7cb0\n') +f('sys/module/button/sections/.gnu.linkonce.this_module', 0o664, b'0xffffffffa00a8b80\n') +f('sys/module/button/sections/.rodata.str1.1', 0o664, b'0xffffffffa00a7b60\n') +d('sys/module/button/notes', 0o775) +f('sys/module/button/notes/.note.gnu.build-id', 0o664, b'\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00GNU\x00;\xc1\xa4qIi\xa7\xa0g\x7fb\xcb\xb4\xba\x80\xb1\x17Z#\xb5') +d('sys/module/processor', 0o775) +f('sys/module/processor/initstate', 0o664, b'live\n') +f('sys/module/processor/srcversion', 0o664, b'8A1C302AFF80867DBAC4684\n') +f('sys/module/processor/refcnt', 0o664, b'4\n') +d('sys/module/processor/holders', 0o775) +l('sys/module/processor/holders/acpi_cpufreq', '../../acpi_cpufreq') +l('sys/module/processor/holders/thermal', '../../thermal') +d('sys/module/processor/parameters', 0o775) +f('sys/module/processor/parameters/ignore_ppc', 0o664, b'0\n') +f('sys/module/processor/parameters/latency_factor', 0o664, b'2\n') +d('sys/module/processor/sections', 0o775) +f('sys/module/processor/sections/.smp_locks', 0o664, b'0xffffffffa0077788\n') +f('sys/module/processor/sections/__ex_table', 0o664, b'0xffffffffa0077768\n') +f('sys/module/processor/sections/__bug_table', 0o664, b'0xffffffffa0077621\n') +f('sys/module/processor/sections/__ksymtab_strings', 0o664, b'0xffffffffa00776b8\n') +f('sys/module/processor/sections/.exit.text', 0o664, b'0xffffffffa00763a9\n') +f('sys/module/processor/sections/.note.gnu.build-id', 0o664, b'0xffffffffa00765c4\n') +f('sys/module/processor/sections/.strtab', 0o664, b'0xffffffffa0079438\n') +f('sys/module/processor/sections/.fixup', 0o664, b'0xffffffffa00765ad\n') +f('sys/module/processor/sections/__ksymtab', 0o664, b'0xffffffffa0077640\n') +f('sys/module/processor/sections/.rodata', 0o664, b'0xffffffffa00765f0\n') +f('sys/module/processor/sections/.data.read_mostly', 0o664, b'0xffffffffa007b7d8\n') +f('sys/module/processor/sections/__param', 0o664, b'0xffffffffa00777f0\n') +f('sys/module/processor/sections/.bss', 0o664, b'0xffffffffa007bbc0\n') +f('sys/module/processor/sections/.text', 0o664, b'0xffffffffa0072000\n') +f('sys/module/processor/sections/.init.text', 0o664, b'0xffffffffa007d000\n') +f('sys/module/processor/sections/__kcrctab', 0o664, b'0xffffffffa0077690\n') +f('sys/module/processor/sections/.data', 0o664, b'0xffffffffa007ab90\n') +f('sys/module/processor/sections/.cpuinit.data', 0o664, b'0xffffffffa007b040\n') +f('sys/module/processor/sections/.symtab', 0o664, b'0xffffffffa0077890\n') +f('sys/module/processor/sections/.gnu.linkonce.this_module', 0o664, b'0xffffffffa007b800\n') +f('sys/module/processor/sections/.rodata.str1.1', 0o664, b'0xffffffffa0076863\n') +f('sys/module/processor/sections/.cpuinit.text', 0o664, b'0xffffffffa0075abc\n') +f('sys/module/processor/sections/.ref.text', 0o664, b'0xffffffffa007641a\n') +d('sys/module/processor/notes', 0o775) +f('sys/module/processor/notes/.note.gnu.build-id', 0o664, b'\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00GNU\x00\xa1\x01$C\tS,+Ue\\\x8cg\xb0Z\xe9\xa1\xaf[\xe5') +d('sys/module/oprofile', 0o775) +d('sys/module/oprofile/parameters', 0o775) +f('sys/module/oprofile/parameters/timer', 0o664, b'0\n') +d('sys/module/spurious', 0o775) +d('sys/module/spurious/parameters', 0o775) +f('sys/module/spurious/parameters/noirqdebug', 0o664, b'N\n') +f('sys/module/spurious/parameters/irqfixup', 0o664, b'0\n') +d('sys/module/raid1', 0o775) +f('sys/module/raid1/initstate', 0o664, b'live\n') +f('sys/module/raid1/srcversion', 0o664, b'EA08FDD37C2EEFA95DE4413\n') +f('sys/module/raid1/refcnt', 0o664, b'1\n') +d('sys/module/raid1/sections', 0o775) +f('sys/module/raid1/sections/.smp_locks', 0o664, b'0xffffffffa0236438\n') +f('sys/module/raid1/sections/__bug_table', 0o664, b'0xffffffffa02369c0\n') +f('sys/module/raid1/sections/.note.gnu.build-id', 0o664, b'0xffffffffa0236414\n') +f('sys/module/raid1/sections/.strtab', 0o664, b'0xffffffffa02376f8\n') +f('sys/module/raid1/sections/.bss', 0o664, b'0xffffffffa0238280\n') +f('sys/module/raid1/sections/.text', 0o664, b'0xffffffffa0232000\n') +f('sys/module/raid1/sections/.init.text', 0o664, b'0xffffffffa0065000\n') +f('sys/module/raid1/sections/.data', 0o664, b'0xffffffffa0237e20\n') +f('sys/module/raid1/sections/.symtab', 0o664, b'0xffffffffa0236a08\n') +f('sys/module/raid1/sections/.gnu.linkonce.this_module', 0o664, b'0xffffffffa0237ec0\n') +f('sys/module/raid1/sections/.rodata.str1.1', 0o664, b'0xffffffffa0236618\n') +d('sys/module/raid1/notes', 0o775) +f('sys/module/raid1/notes/.note.gnu.build-id', 0o664, b'\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00GNU\x00\xcd\xdf0\xe8v}\x0cuP}\x93\xe1\x19\xcd\xed~\xf7\x14\xdd@') +d('sys/module/edd', 0o775) +f('sys/module/edd/version', 0o664, b'0.16\n') +f('sys/module/edd/initstate', 0o664, b'live\n') +f('sys/module/edd/srcversion', 0o664, b'ED68C1ACC4B2D1B19C7BEA7\n') +f('sys/module/edd/refcnt', 0o664, b'0\n') +d('sys/module/edd/sections', 0o775) +f('sys/module/edd/sections/.exit.text', 0o664, b'0xffffffffa02a1de8\n') +f('sys/module/edd/sections/.note.gnu.build-id', 0o664, b'0xffffffffa02a1e6c\n') +f('sys/module/edd/sections/.strtab', 0o664, b'0xffffffffa02a2b88\n') +f('sys/module/edd/sections/.rodata', 0o664, b'0xffffffffa02a1ea0\n') +f('sys/module/edd/sections/.bss', 0o664, b'0xffffffffa02a3880\n') +f('sys/module/edd/sections/.text', 0o664, b'0xffffffffa02a1000\n') +f('sys/module/edd/sections/.init.text', 0o664, b'0xffffffffa0065000\n') +f('sys/module/edd/sections/.data', 0o664, b'0xffffffffa02a3120\n') +f('sys/module/edd/sections/.symtab', 0o664, b'0xffffffffa02a22b8\n') +f('sys/module/edd/sections/.gnu.linkonce.this_module', 0o664, b'0xffffffffa02a34c0\n') +f('sys/module/edd/sections/.rodata.str1.1', 0o664, b'0xffffffffa02a1f18\n') +d('sys/module/edd/notes', 0o775) +f('sys/module/edd/notes/.note.gnu.build-id', 0o664, b'\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00GNU\x00\xbe\x92\xcfW\xc8l\x08\xaf\xb6\x1a\xb7!E\xb8\xd1\x9eU\xd2\xddM') +d('sys/module/hwmon', 0o775) +f('sys/module/hwmon/initstate', 0o664, b'live\n') +f('sys/module/hwmon/srcversion', 0o664, b'9344A0FAA4A298DC9AEBDC8\n') +f('sys/module/hwmon/refcnt', 0o664, b'1\n') +d('sys/module/hwmon/holders', 0o775) +l('sys/module/hwmon/holders/thinkpad_acpi', '../../thinkpad_acpi') +d('sys/module/hwmon/sections', 0o775) +f('sys/module/hwmon/sections/__ksymtab_gpl', 0o664, b'0xffffffffa007d1d0\n') +f('sys/module/hwmon/sections/__ksymtab_strings', 0o664, b'0xffffffffa007d200\n') +f('sys/module/hwmon/sections/.exit.text', 0o664, b'0xffffffffa007d138\n') +f('sys/module/hwmon/sections/.note.gnu.build-id', 0o664, b'0xffffffffa007d14c\n') +f('sys/module/hwmon/sections/.strtab', 0o664, b'0xffffffffa007d770\n') +f('sys/module/hwmon/sections/.bss', 0o664, b'0xffffffffa007de80\n') +f('sys/module/hwmon/sections/.text', 0o664, b'0xffffffffa007d000\n') +f('sys/module/hwmon/sections/.init.text', 0o664, b'0xffffffffa009a000\n') +f('sys/module/hwmon/sections/.data', 0o664, b'0xffffffffa007da20\n') +f('sys/module/hwmon/sections/.symtab', 0o664, b'0xffffffffa007d230\n') +f('sys/module/hwmon/sections/.gnu.linkonce.this_module', 0o664, b'0xffffffffa007dac0\n') +f('sys/module/hwmon/sections/.rodata.str1.1', 0o664, b'0xffffffffa007d170\n') +f('sys/module/hwmon/sections/__kcrctab_gpl', 0o664, b'0xffffffffa007d1f0\n') +d('sys/module/hwmon/notes', 0o775) +f('sys/module/hwmon/notes/.note.gnu.build-id', 0o664, b'\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00GNU\x00\x0fR\x0b\x94!\x19\xde\x14\x93\xac\x9e@\xa2&\xcam,\xba\x12\xd1') +d('sys/module/backlight', 0o775) +f('sys/module/backlight/initstate', 0o664, b'live\n') +f('sys/module/backlight/srcversion', 0o664, b'AFD1565C65F3DA6D942CB52\n') +f('sys/module/backlight/refcnt', 0o664, b'1\n') +d('sys/module/backlight/holders', 0o775) +l('sys/module/backlight/holders/thinkpad_acpi', '../../thinkpad_acpi') +d('sys/module/backlight/sections', 0o775) +f('sys/module/backlight/sections/__ksymtab_strings', 0o664, b'0xffffffffa0131700\n') +f('sys/module/backlight/sections/.exit.text', 0o664, b'0xffffffffa01315ec\n') +f('sys/module/backlight/sections/.note.gnu.build-id', 0o664, b'0xffffffffa0131600\n') +f('sys/module/backlight/sections/.strtab', 0o664, b'0xffffffffa0131de0\n') +f('sys/module/backlight/sections/__ksymtab', 0o664, b'0xffffffffa01316d0\n') +f('sys/module/backlight/sections/.bss', 0o664, b'0xffffffffa01326c0\n') +f('sys/module/backlight/sections/.text', 0o664, b'0xffffffffa0131000\n') +f('sys/module/backlight/sections/.init.text', 0o664, b'0xffffffffa0070000\n') +f('sys/module/backlight/sections/__kcrctab', 0o664, b'0xffffffffa01316f0\n') +f('sys/module/backlight/sections/.data', 0o664, b'0xffffffffa0132220\n') +f('sys/module/backlight/sections/.symtab', 0o664, b'0xffffffffa0131738\n') +f('sys/module/backlight/sections/.gnu.linkonce.this_module', 0o664, b'0xffffffffa0132300\n') +f('sys/module/backlight/sections/.rodata.str1.1', 0o664, b'0xffffffffa0131624\n') +d('sys/module/backlight/notes', 0o775) +f('sys/module/backlight/notes/.note.gnu.build-id', 0o664, b'\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00GNU\x00d\xb6_\xb64[\x83\x90Fm(\x91J\xb1\xce\xf5\xaa\xd2\xf4}') +d('sys/module/snd', 0o775) +f('sys/module/snd/initstate', 0o664, b'live\n') +f('sys/module/snd/srcversion', 0o664, b'D48337942305C9A41A7CC12\n') +f('sys/module/snd/refcnt', 0o664, b'13\n') +d('sys/module/snd/holders', 0o775) +l('sys/module/snd/holders/snd_seq', '../../snd_seq') +l('sys/module/snd/holders/snd_timer', '../../snd_timer') +l('sys/module/snd/holders/snd_pcm', '../../snd_pcm') +l('sys/module/snd/holders/snd_hda_intel', '../../snd_hda_intel') +l('sys/module/snd/holders/snd_mixer_oss', '../../snd_mixer_oss') +l('sys/module/snd/holders/snd_pcm_oss', '../../snd_pcm_oss') +l('sys/module/snd/holders/snd_seq_device', '../../snd_seq_device') +d('sys/module/snd/parameters', 0o775) +f('sys/module/snd/parameters/slots', 0o664, b'snd-hda-intel,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>\n') +f('sys/module/snd/parameters/major', 0o664, b'116\n') +f('sys/module/snd/parameters/cards_limit', 0o664, b'1\n') +d('sys/module/snd/sections', 0o775) +f('sys/module/snd/sections/__ksymtab_strings', 0o664, b'0xffffffffa00d32e8\n') +f('sys/module/snd/sections/.exit.text', 0o664, b'0xffffffffa00d1bc4\n') +f('sys/module/snd/sections/.note.gnu.build-id', 0o664, b'0xffffffffa00d1c8c\n') +f('sys/module/snd/sections/.strtab', 0o664, b'0xffffffffa00d6cc8\n') +f('sys/module/snd/sections/__ksymtab', 0o664, b'0xffffffffa00d2d00\n') +f('sys/module/snd/sections/.rodata', 0o664, b'0xffffffffa00d1cc0\n') +f('sys/module/snd/sections/__param', 0o664, b'0xffffffffa00d3270\n') +f('sys/module/snd/sections/.bss', 0o664, b'0xffffffffa00da480\n') +f('sys/module/snd/sections/.text', 0o664, b'0xffffffffa00ca000\n') +f('sys/module/snd/sections/.init.text', 0o664, b'0xffffffffa0065000\n') +f('sys/module/snd/sections/__kcrctab', 0o664, b'0xffffffffa00d30a0\n') +f('sys/module/snd/sections/.data', 0o664, b'0xffffffffa00d9be0\n') +f('sys/module/snd/sections/.symtab', 0o664, b'0xffffffffa00d3770\n') +f('sys/module/snd/sections/.gnu.linkonce.this_module', 0o664, b'0xffffffffa00da0c0\n') +f('sys/module/snd/sections/.rodata.str1.1', 0o664, b'0xffffffffa00d2558\n') +d('sys/module/snd/notes', 0o775) +f('sys/module/snd/notes/.note.gnu.build-id', 0o664, b'\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00GNU\x00\xee\x11+\xc0\xd4\x8f\x10\x02v\xf8\t\xb4\xa8\xf6[z\xd3\xb3\xb7\x87') +d('sys/module/mac80211', 0o775) +f('sys/module/mac80211/initstate', 0o664, b'live\n') +f('sys/module/mac80211/srcversion', 0o664, b'330E8FB2F2933F478C444A4\n') +f('sys/module/mac80211/refcnt', 0o664, b'1\n') +d('sys/module/mac80211/holders', 0o775) +l('sys/module/mac80211/holders/iwl3945', '../../iwl3945') +d('sys/module/mac80211/parameters', 0o775) +f('sys/module/mac80211/parameters/ieee80211_default_rc_algo', 0o664, b'pid\n') +d('sys/module/mac80211/sections', 0o775) +f('sys/module/mac80211/sections/__ksymtab_gpl', 0o664, b'0xffffffffa0127a50\n') +f('sys/module/mac80211/sections/.smp_locks', 0o664, b'0xffffffffa01270a0\n') +f('sys/module/mac80211/sections/__bug_table', 0o664, b'0xffffffffa0124183\n') +f('sys/module/mac80211/sections/__ksymtab_strings', 0o664, b'0xffffffffa0127630\n') +f('sys/module/mac80211/sections/.exit.text', 0o664, b'0xffffffffa0122de4\n') +f('sys/module/mac80211/sections/.note.gnu.build-id', 0o664, b'0xffffffffa0122df4\n') +f('sys/module/mac80211/sections/.strtab', 0o664, b'0xffffffffa012b890\n') +f('sys/module/mac80211/sections/__ksymtab', 0o664, b'0xffffffffa01272a0\n') +f('sys/module/mac80211/sections/.rodata', 0o664, b'0xffffffffa0122e20\n') +f('sys/module/mac80211/sections/__param', 0o664, b'0xffffffffa0127a28\n') +f('sys/module/mac80211/sections/.bss', 0o664, b'0xffffffffa012fa40\n') +f('sys/module/mac80211/sections/.text', 0o664, b'0xffffffffa0109000\n') +f('sys/module/mac80211/sections/.init.text', 0o664, b'0xffffffffa0065000\n') +f('sys/module/mac80211/sections/__kcrctab', 0o664, b'0xffffffffa0127500\n') +f('sys/module/mac80211/sections/.data', 0o664, b'0xffffffffa012f340\n') +f('sys/module/mac80211/sections/.symtab', 0o664, b'0xffffffffa0127a80\n') +f('sys/module/mac80211/sections/.gnu.linkonce.this_module', 0o664, b'0xffffffffa012f680\n') +f('sys/module/mac80211/sections/.rodata.str1.1', 0o664, b'0xffffffffa0123c40\n') +f('sys/module/mac80211/sections/__kcrctab_gpl', 0o664, b'0xffffffffa0127a70\n') +d('sys/module/mac80211/notes', 0o775) +f('sys/module/mac80211/notes/.note.gnu.build-id', 0o664, b'\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00GNU\x00"i\xe2\xa0\x92\xbc7\xc4#\xbc\xda\xf11\x02\x13\xd5\x155\x1cS') +d('sys/module/printk', 0o775) +d('sys/module/printk/parameters', 0o775) +f('sys/module/printk/parameters/time', 0o664, b'N\n') +d('sys/module/rtc_lib', 0o775) +f('sys/module/rtc_lib/initstate', 0o664, b'live\n') +f('sys/module/rtc_lib/srcversion', 0o664, b'7884E7FF8728D88C6BD1427\n') +f('sys/module/rtc_lib/refcnt', 0o664, b'1\n') +d('sys/module/rtc_lib/holders', 0o775) +l('sys/module/rtc_lib/holders/rtc_core', '../../rtc_core') +d('sys/module/rtc_lib/sections', 0o775) +f('sys/module/rtc_lib/sections/__ksymtab_strings', 0o664, b'0xffffffffa009c3f8\n') +f('sys/module/rtc_lib/sections/.note.gnu.build-id', 0o664, b'0xffffffffa009c31c\n') +f('sys/module/rtc_lib/sections/.strtab', 0o664, b'0xffffffffa009c8f0\n') +f('sys/module/rtc_lib/sections/__ksymtab', 0o664, b'0xffffffffa009c380\n') +f('sys/module/rtc_lib/sections/.rodata', 0o664, b'0xffffffffa009c340\n') +f('sys/module/rtc_lib/sections/.bss', 0o664, b'0xffffffffa009cf80\n') +f('sys/module/rtc_lib/sections/.text', 0o664, b'0xffffffffa009c000\n') +f('sys/module/rtc_lib/sections/__kcrctab', 0o664, b'0xffffffffa009c3d0\n') +f('sys/module/rtc_lib/sections/.data', 0o664, b'0xffffffffa009cba8\n') +f('sys/module/rtc_lib/sections/.symtab', 0o664, b'0xffffffffa009c440\n') +f('sys/module/rtc_lib/sections/.gnu.linkonce.this_module', 0o664, b'0xffffffffa009cbc0\n') +d('sys/module/rtc_lib/notes', 0o775) +f('sys/module/rtc_lib/notes/.note.gnu.build-id', 0o664, b'\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00GNU\x00\xb4\xe2\xcfLw\x17j\xb2\xc7\xf1 \xfa\xc7G\x99+b^+S') +d('sys/module/mousedev', 0o775) +d('sys/module/mousedev/parameters', 0o775) +f('sys/module/mousedev/parameters/tap_time', 0o664, b'200\n') +f('sys/module/mousedev/parameters/yres', 0o664, b'768\n') +f('sys/module/mousedev/parameters/xres', 0o664, b'1024\n') +d('sys/module/rtc_cmos', 0o775) +f('sys/module/rtc_cmos/initstate', 0o664, b'live\n') +f('sys/module/rtc_cmos/srcversion', 0o664, b'7BE4B8C2A52556D0C62CB0B\n') +f('sys/module/rtc_cmos/refcnt', 0o664, b'0\n') +d('sys/module/rtc_cmos/sections', 0o775) +f('sys/module/rtc_cmos/sections/.exit.text', 0o664, b'0xffffffffa00fe370\n') +f('sys/module/rtc_cmos/sections/.note.gnu.build-id', 0o664, b'0xffffffffa00fe4e4\n') +f('sys/module/rtc_cmos/sections/.strtab', 0o664, b'0xffffffffa00ff1a8\n') +f('sys/module/rtc_cmos/sections/.rodata', 0o664, b'0xffffffffa00fe520\n') +f('sys/module/rtc_cmos/sections/.bss', 0o664, b'0xffffffffa00ffd40\n') +f('sys/module/rtc_cmos/sections/.text', 0o664, b'0xffffffffa00fd000\n') +f('sys/module/rtc_cmos/sections/.init.text', 0o664, b'0xffffffffa007d000\n') +f('sys/module/rtc_cmos/sections/.data', 0o664, b'0xffffffffa00ff800\n') +f('sys/module/rtc_cmos/sections/.devinit.text', 0o664, b'0xffffffffa00fe44f\n') +f('sys/module/rtc_cmos/sections/.symtab', 0o664, b'0xffffffffa00fe6e0\n') +f('sys/module/rtc_cmos/sections/.gnu.linkonce.this_module', 0o664, b'0xffffffffa00ff980\n') +f('sys/module/rtc_cmos/sections/.rodata.str1.1', 0o664, b'0xffffffffa00fe6a2\n') +d('sys/module/rtc_cmos/notes', 0o775) +f('sys/module/rtc_cmos/notes/.note.gnu.build-id', 0o664, b'\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00GNU\x00\xf4\x82\xed4\xe7\x10\xb9\x7f\xa9 \x0c\xedIf0\x86u\xd41\x87') +d('sys/module/battery', 0o775) +f('sys/module/battery/initstate', 0o664, b'live\n') +f('sys/module/battery/srcversion', 0o664, b'5A2CE8D302B31A112CFB57A\n') +f('sys/module/battery/refcnt', 0o664, b'0\n') +d('sys/module/battery/parameters', 0o775) +f('sys/module/battery/parameters/cache_time', 0o664, b'1000\n') +d('sys/module/battery/sections', 0o775) +f('sys/module/battery/sections/.exit.text', 0o664, b'0xffffffffa008008c\n') +f('sys/module/battery/sections/.note.gnu.build-id', 0o664, b'0xffffffffa00800ac\n') +f('sys/module/battery/sections/.strtab', 0o664, b'0xffffffffa0081318\n') +f('sys/module/battery/sections/.rodata', 0o664, b'0xffffffffa00800d0\n') +f('sys/module/battery/sections/__param', 0o664, b'0xffffffffa0080798\n') +f('sys/module/battery/sections/.bss', 0o664, b'0xffffffffa0082440\n') +f('sys/module/battery/sections/.text', 0o664, b'0xffffffffa007f000\n') +f('sys/module/battery/sections/.init.text', 0o664, b'0xffffffffa0084000\n') +f('sys/module/battery/sections/.data', 0o664, b'0xffffffffa0081a90\n') +f('sys/module/battery/sections/.symtab', 0o664, b'0xffffffffa00807c0\n') +f('sys/module/battery/sections/.gnu.linkonce.this_module', 0o664, b'0xffffffffa0082080\n') +f('sys/module/battery/sections/.rodata.str1.1', 0o664, b'0xffffffffa008025b\n') +d('sys/module/battery/notes', 0o775) +f('sys/module/battery/notes/.note.gnu.build-id', 0o664, b'\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00GNU\x00\xe3\xa8\xcc.j\xb3\xda\xc8\x88\x03\xca\xf6\xf0*\x9c-\xffE!\xd3') +d('sys/module/yenta_socket', 0o775) +f('sys/module/yenta_socket/initstate', 0o664, b'live\n') +f('sys/module/yenta_socket/srcversion', 0o664, b'B0538CB6E6ED071E80A4575\n') +f('sys/module/yenta_socket/refcnt', 0o664, b'1\n') +d('sys/module/yenta_socket/drivers', 0o775) +l('sys/module/yenta_socket/drivers/pci:yenta_cardbus', '../../../bus/pci/drivers/yenta_cardbus') +d('sys/module/yenta_socket/parameters', 0o775) +f('sys/module/yenta_socket/parameters/isa_probe', 0o664, b'Y\n') +f('sys/module/yenta_socket/parameters/disable_clkrun', 0o664, b'N\n') +f('sys/module/yenta_socket/parameters/pwr_irqs_off', 0o664, b'N\n') +d('sys/module/yenta_socket/sections', 0o775) +f('sys/module/yenta_socket/sections/__bug_table', 0o664, b'0xffffffffa0104aa6\n') +f('sys/module/yenta_socket/sections/.exit.text', 0o664, b'0xffffffffa0103c44\n') +f('sys/module/yenta_socket/sections/.note.gnu.build-id', 0o664, b'0xffffffffa0104330\n') +f('sys/module/yenta_socket/sections/.strtab', 0o664, b'0xffffffffa0105e80\n') +f('sys/module/yenta_socket/sections/.rodata', 0o664, b'0xffffffffa0104354\n') +f('sys/module/yenta_socket/sections/__param', 0o664, b'0xffffffffa0104ad8\n') +f('sys/module/yenta_socket/sections/.bss', 0o664, b'0xffffffffa0107800\n') +f('sys/module/yenta_socket/sections/.text', 0o664, b'0xffffffffa0101000\n') +f('sys/module/yenta_socket/sections/.init.text', 0o664, b'0xffffffffa0084000\n') +f('sys/module/yenta_socket/sections/.data', 0o664, b'0xffffffffa0106ac0\n') +f('sys/module/yenta_socket/sections/.devinit.text', 0o664, b'0xffffffffa0103c60\n') +f('sys/module/yenta_socket/sections/.symtab', 0o664, b'0xffffffffa0104b78\n') +f('sys/module/yenta_socket/sections/.gnu.linkonce.this_module', 0o664, b'0xffffffffa0107440\n') +f('sys/module/yenta_socket/sections/.rodata.str1.1', 0o664, b'0xffffffffa0104388\n') +d('sys/module/yenta_socket/notes', 0o775) +f('sys/module/yenta_socket/notes/.note.gnu.build-id', 0o664, b'\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00GNU\x00H\xa8\xe9\xf1\x06e\xb4\xe4\xd7\xa1\x7f\xf8G)\x1a\xa3\xec\xe7m<') +d('sys/module/acpi', 0o775) +d('sys/module/acpi/parameters', 0o775) +f('sys/module/acpi/parameters/acpica_version', 0o664, b'20080609\n') +d('sys/module/cdc_acm', 0o775) +f('sys/module/cdc_acm/initstate', 0o664, b'live\n') +f('sys/module/cdc_acm/srcversion', 0o664, b'5DED3866AA046376E4E36DD\n') +f('sys/module/cdc_acm/refcnt', 0o664, b'0\n') +d('sys/module/cdc_acm/drivers', 0o775) +l('sys/module/cdc_acm/drivers/usb:cdc_acm', '../../../bus/usb/drivers/cdc_acm') +d('sys/module/cdc_acm/sections', 0o775) +f('sys/module/cdc_acm/sections/.smp_locks', 0o664, b'0xffffffffa02d9660\n') +f('sys/module/cdc_acm/sections/.exit.text', 0o664, b'0xffffffffa02d949c\n') +f('sys/module/cdc_acm/sections/.note.gnu.build-id', 0o664, b'0xffffffffa02d94c8\n') +f('sys/module/cdc_acm/sections/.strtab', 0o664, b'0xffffffffa02da838\n') +f('sys/module/cdc_acm/sections/.rodata', 0o664, b'0xffffffffa02d9500\n') +f('sys/module/cdc_acm/sections/.bss', 0o664, b'0xffffffffa02db8c0\n') +f('sys/module/cdc_acm/sections/.text', 0o664, b'0xffffffffa02d7000\n') +f('sys/module/cdc_acm/sections/.init.text', 0o664, b'0xffffffffa0065000\n') +f('sys/module/cdc_acm/sections/.data', 0o664, b'0xffffffffa02db0e0\n') +f('sys/module/cdc_acm/sections/.symtab', 0o664, b'0xffffffffa02d9968\n') +f('sys/module/cdc_acm/sections/.gnu.linkonce.this_module', 0o664, b'0xffffffffa02db500\n') +f('sys/module/cdc_acm/sections/.rodata.str1.1', 0o664, b'0xffffffffa02d9698\n') +d('sys/module/cdc_acm/notes', 0o775) +f('sys/module/cdc_acm/notes/.note.gnu.build-id', 0o664, b"\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00GNU\x00\xe1=\x89\xe9\xe8L\t\xfe|o\x9c+\xfe\x81\xe8\xc6P'\xa4$") +d('sys/module/snd_timer', 0o775) +f('sys/module/snd_timer/initstate', 0o664, b'live\n') +f('sys/module/snd_timer/srcversion', 0o664, b'1F1836030C5B604CF478CFC\n') +f('sys/module/snd_timer/refcnt', 0o664, b'2\n') +d('sys/module/snd_timer/holders', 0o775) +l('sys/module/snd_timer/holders/snd_seq', '../../snd_seq') +l('sys/module/snd_timer/holders/snd_pcm', '../../snd_pcm') +d('sys/module/snd_timer/parameters', 0o775) +f('sys/module/snd_timer/parameters/timer_tstamp_monotonic', 0o664, b'1\n') +f('sys/module/snd_timer/parameters/timer_limit', 0o664, b'1\n') +d('sys/module/snd_timer/sections', 0o775) +f('sys/module/snd_timer/sections/.smp_locks', 0o664, b'0xffffffffa00f8908\n') +f('sys/module/snd_timer/sections/__bug_table', 0o664, b'0xffffffffa00f888f\n') +f('sys/module/snd_timer/sections/__ksymtab_strings', 0o664, b'0xffffffffa00f8a98\n') +f('sys/module/snd_timer/sections/.exit.text', 0o664, b'0xffffffffa00f8520\n') +f('sys/module/snd_timer/sections/.note.gnu.build-id', 0o664, b'0xffffffffa00f8590\n') +f('sys/module/snd_timer/sections/.strtab', 0o664, b'0xffffffffa00f9e90\n') +f('sys/module/snd_timer/sections/__ksymtab', 0o664, b'0xffffffffa00f8910\n') +f('sys/module/snd_timer/sections/.rodata', 0o664, b'0xffffffffa00f85c0\n') +f('sys/module/snd_timer/sections/__param', 0o664, b'0xffffffffa00f8a48\n') +f('sys/module/snd_timer/sections/.bss', 0o664, b'0xffffffffa00fb200\n') +f('sys/module/snd_timer/sections/.text', 0o664, b'0xffffffffa00f5000\n') +f('sys/module/snd_timer/sections/.init.text', 0o664, b'0xffffffffa0065000\n') +f('sys/module/snd_timer/sections/__kcrctab', 0o664, b'0xffffffffa00f89e0\n') +f('sys/module/snd_timer/sections/.data', 0o664, b'0xffffffffa00fad00\n') +f('sys/module/snd_timer/sections/.symtab', 0o664, b'0xffffffffa00f8b88\n') +f('sys/module/snd_timer/sections/.gnu.linkonce.this_module', 0o664, b'0xffffffffa00fae40\n') +f('sys/module/snd_timer/sections/.rodata.str1.1', 0o664, b'0xffffffffa00f8723\n') +d('sys/module/snd_timer/notes', 0o775) +f('sys/module/snd_timer/notes/.note.gnu.build-id', 0o664, b'\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00GNU\x00\xb2uP\xf49\x98_\xdcY\xc1\xbfY\xa4yn\xb0\xbe\x9c\xf2F') +d('sys/module/e1000e', 0o775) +f('sys/module/e1000e/version', 0o664, b'0.3.3.3-k2\n') +f('sys/module/e1000e/initstate', 0o664, b'live\n') +f('sys/module/e1000e/srcversion', 0o664, b'5B93BF2B618524ED19305C8\n') +f('sys/module/e1000e/refcnt', 0o664, b'0\n') +d('sys/module/e1000e/drivers', 0o775) +l('sys/module/e1000e/drivers/pci:e1000e', '../../../bus/pci/drivers/e1000e') +d('sys/module/e1000e/parameters', 0o775) +f('sys/module/e1000e/parameters/copybreak', 0o664, b'256\n') +d('sys/module/e1000e/sections', 0o775) +f('sys/module/e1000e/sections/.devinit.data', 0o664, b'0xffffffffa0024fe0\n') +f('sys/module/e1000e/sections/.smp_locks', 0o664, b'0xffffffffa001e730\n') +f('sys/module/e1000e/sections/__bug_table', 0o664, b'0xffffffffa001e590\n') +f('sys/module/e1000e/sections/.exit.text', 0o664, b'0xffffffffa001c64f\n') +f('sys/module/e1000e/sections/.note.gnu.build-id', 0o664, b'0xffffffffa001c750\n') +f('sys/module/e1000e/sections/.strtab', 0o664, b'0xffffffffa0021ac0\n') +f('sys/module/e1000e/sections/.devexit.text', 0o664, b'0xffffffffa001c672\n') +f('sys/module/e1000e/sections/.rodata', 0o664, b'0xffffffffa001c780\n') +f('sys/module/e1000e/sections/__param', 0o664, b'0xffffffffa001e5f0\n') +f('sys/module/e1000e/sections/.bss', 0o664, b'0xffffffffa0025800\n') +f('sys/module/e1000e/sections/.text', 0o664, b'0xffffffffa0009000\n') +f('sys/module/e1000e/sections/.init.text', 0o664, b'0xffffffffa0027000\n') +f('sys/module/e1000e/sections/.data', 0o664, b'0xffffffffa00243c0\n') +f('sys/module/e1000e/sections/.devinit.text', 0o664, b'0xffffffffa001b380\n') +f('sys/module/e1000e/sections/.symtab', 0o664, b'0xffffffffa001e8b0\n') +f('sys/module/e1000e/sections/.gnu.linkonce.this_module', 0o664, b'0xffffffffa0025440\n') +f('sys/module/e1000e/sections/.rodata.str1.1', 0o664, b'0xffffffffa001d6f0\n') +d('sys/module/e1000e/notes', 0o775) +f('sys/module/e1000e/notes/.note.gnu.build-id', 0o664, b'\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00GNU\x00\xcbJ\xb1\x8eG^\xf7\xba\xbf\xa6\x1b\x03\xfasqDl\xf7"\xf1') +d('sys/module/aes_x86_64', 0o775) +f('sys/module/aes_x86_64/initstate', 0o664, b'live\n') +f('sys/module/aes_x86_64/srcversion', 0o664, b'4E315E23114A08593D5D731\n') +f('sys/module/aes_x86_64/refcnt', 0o664, b'2\n') +d('sys/module/aes_x86_64/sections', 0o775) +f('sys/module/aes_x86_64/sections/.exit.text', 0o664, b'0xffffffffa02d471c\n') +f('sys/module/aes_x86_64/sections/.note.gnu.build-id', 0o664, b'0xffffffffa02d4730\n') +f('sys/module/aes_x86_64/sections/.strtab', 0o664, b'0xffffffffa02d4b60\n') +f('sys/module/aes_x86_64/sections/.bss', 0o664, b'0xffffffffa02d5200\n') +f('sys/module/aes_x86_64/sections/.text', 0o664, b'0xffffffffa02d3000\n') +f('sys/module/aes_x86_64/sections/.init.text', 0o664, b'0xffffffffa0065000\n') +f('sys/module/aes_x86_64/sections/.data', 0o664, b'0xffffffffa02d4d20\n') +f('sys/module/aes_x86_64/sections/.symtab', 0o664, b'0xffffffffa02d4758\n') +f('sys/module/aes_x86_64/sections/.gnu.linkonce.this_module', 0o664, b'0xffffffffa02d4e40\n') +d('sys/module/aes_x86_64/notes', 0o775) +f('sys/module/aes_x86_64/notes/.note.gnu.build-id', 0o664, b'\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00GNU\x00\x1e3\x8c\xa9\xdd\xa1\xeb\\\xcf\xd3\x0f\xd1\xfc\xaa\xd2y\x08+f\xca') +d('sys/module/dm_mod', 0o775) +f('sys/module/dm_mod/initstate', 0o664, b'live\n') +f('sys/module/dm_mod/srcversion', 0o664, b'458AEB289C7AA031FFD0011\n') +f('sys/module/dm_mod/refcnt', 0o664, b'0\n') +d('sys/module/dm_mod/sections', 0o775) +f('sys/module/dm_mod/sections/__ksymtab_gpl', 0o664, b'0xffffffffa02122b0\n') +f('sys/module/dm_mod/sections/.smp_locks', 0o664, b'0xffffffffa0210eb8\n') +f('sys/module/dm_mod/sections/__bug_table', 0o664, b'0xffffffffa0211f54\n') +f('sys/module/dm_mod/sections/__ksymtab_strings', 0o664, b'0xffffffffa0212310\n') +f('sys/module/dm_mod/sections/.exit.text', 0o664, b'0xffffffffa0210c20\n') +f('sys/module/dm_mod/sections/.note.gnu.build-id', 0o664, b'0xffffffffa0210c54\n') +f('sys/module/dm_mod/sections/.strtab', 0o664, b'0xffffffffa02151f0\n') +f('sys/module/dm_mod/sections/__ksymtab', 0o664, b'0xffffffffa02120d0\n') +f('sys/module/dm_mod/sections/.rodata', 0o664, b'0xffffffffa0210c80\n') +f('sys/module/dm_mod/sections/__param', 0o664, b'0xffffffffa02120a8\n') +f('sys/module/dm_mod/sections/.bss', 0o664, b'0xffffffffa02177c0\n') +f('sys/module/dm_mod/sections/.text', 0o664, b'0xffffffffa0209000\n') +f('sys/module/dm_mod/sections/.init.text', 0o664, b'0xffffffffa0065000\n') +f('sys/module/dm_mod/sections/__kcrctab', 0o664, b'0xffffffffa0212210\n') +f('sys/module/dm_mod/sections/.data', 0o664, b'0xffffffffa0216f40\n') +f('sys/module/dm_mod/sections/.init.data', 0o664, b'0xffffffffa00652c0\n') +f('sys/module/dm_mod/sections/.symtab', 0o664, b'0xffffffffa02124a8\n') +f('sys/module/dm_mod/sections/.gnu.linkonce.this_module', 0o664, b'0xffffffffa0217400\n') +f('sys/module/dm_mod/sections/.rodata.str1.1', 0o664, b'0xffffffffa0211c4d\n') +f('sys/module/dm_mod/sections/__kcrctab_gpl', 0o664, b'0xffffffffa02122f0\n') +d('sys/module/dm_mod/notes', 0o775) +f('sys/module/dm_mod/notes/.note.gnu.build-id', 0o664, b'\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00GNU\x00^(\xdd\x16OD6\xfb\x89\xe6\xca3Vl\xb0\xd7MBp\x84') +d('sys/module/usbhid', 0o775) +f('sys/module/usbhid/initstate', 0o664, b'live\n') +f('sys/module/usbhid/srcversion', 0o664, b'3D7B82FE16E5E534DE4C12B\n') +f('sys/module/usbhid/refcnt', 0o664, b'0\n') +d('sys/module/usbhid/drivers', 0o775) +l('sys/module/usbhid/drivers/usb:usbhid', '../../../bus/usb/drivers/usbhid') +d('sys/module/usbhid/parameters', 0o775) +f('sys/module/usbhid/parameters/mousepoll', 0o664, b'0\n') +f('sys/module/usbhid/parameters/rdesc_quirks', 0o664, b'<NULL>,<NULL>,<NULL>,<NULL>\n') +f('sys/module/usbhid/parameters/quirks', 0o664, b'<NULL>,<NULL>,<NULL>,<NULL>\n') +d('sys/module/usbhid/sections', 0o775) +f('sys/module/usbhid/sections/__ksymtab_gpl', 0o664, b'0xffffffffa0201e60\n') +f('sys/module/usbhid/sections/.smp_locks', 0o664, b'0xffffffffa0201700\n') +f('sys/module/usbhid/sections/__ksymtab_strings', 0o664, b'0xffffffffa0201e78\n') +f('sys/module/usbhid/sections/.exit.text', 0o664, b'0xffffffffa0200c6c\n') +f('sys/module/usbhid/sections/.note.gnu.build-id', 0o664, b'0xffffffffa0200c84\n') +f('sys/module/usbhid/sections/.strtab', 0o664, b'0xffffffffa0202e68\n') +f('sys/module/usbhid/sections/.rodata', 0o664, b'0xffffffffa0200cc0\n') +f('sys/module/usbhid/sections/__param', 0o664, b'0xffffffffa0201de0\n') +f('sys/module/usbhid/sections/.bss', 0o664, b'0xffffffffa0203d80\n') +f('sys/module/usbhid/sections/.text', 0o664, b'0xffffffffa01fe000\n') +f('sys/module/usbhid/sections/.init.text', 0o664, b'0xffffffffa0065000\n') +f('sys/module/usbhid/sections/.data', 0o664, b'0xffffffffa02037c0\n') +f('sys/module/usbhid/sections/.symtab', 0o664, b'0xffffffffa0201e90\n') +f('sys/module/usbhid/sections/.gnu.linkonce.this_module', 0o664, b'0xffffffffa02039c0\n') +f('sys/module/usbhid/sections/.rodata.str1.1', 0o664, b'0xffffffffa02017a8\n') +f('sys/module/usbhid/sections/__kcrctab_gpl', 0o664, b'0xffffffffa0201e70\n') +d('sys/module/usbhid/notes', 0o775) +f('sys/module/usbhid/notes/.note.gnu.build-id', 0o664, b'\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00GNU\x00F\xd8\xa9\xb5\x91:~\xd6KY>\x94\xe1\x1d\xab\xf6\xe5\xeeu*') +d('sys/module/iwl3945', 0o775) +f('sys/module/iwl3945/version', 0o664, b'1.2.26ks\n') +f('sys/module/iwl3945/initstate', 0o664, b'live\n') +f('sys/module/iwl3945/srcversion', 0o664, b'5C079549ABD48E07B20F3C7\n') +f('sys/module/iwl3945/refcnt', 0o664, b'0\n') +d('sys/module/iwl3945/drivers', 0o775) +l('sys/module/iwl3945/drivers/pci:iwl3945', '../../../bus/pci/drivers/iwl3945') +d('sys/module/iwl3945/parameters', 0o775) +f('sys/module/iwl3945/parameters/disable_hw_scan', 0o664, b'0\n') +f('sys/module/iwl3945/parameters/queues_num', 0o664, b'8\n') +f('sys/module/iwl3945/parameters/debug', 0o664, b'0\n') +f('sys/module/iwl3945/parameters/disable', 0o664, b'0\n') +f('sys/module/iwl3945/parameters/hwcrypto', 0o664, b'0\n') +f('sys/module/iwl3945/parameters/antenna', 0o664, b'0\n') +f('sys/module/iwl3945/parameters/qos_enable', 0o664, b'1\n') +d('sys/module/iwl3945/sections', 0o775) +f('sys/module/iwl3945/sections/.smp_locks', 0o664, b'0xffffffffa015e0e0\n') +f('sys/module/iwl3945/sections/__bug_table', 0o664, b'0xffffffffa015e300\n') +f('sys/module/iwl3945/sections/.exit.text', 0o664, b'0xffffffffa015b2e4\n') +f('sys/module/iwl3945/sections/.note.gnu.build-id', 0o664, b'0xffffffffa015b2fc\n') +f('sys/module/iwl3945/sections/.strtab', 0o664, b'0xffffffffa0160f20\n') +f('sys/module/iwl3945/sections/.devexit.text', 0o664, b'0xffffffffa015b044\n') +f('sys/module/iwl3945/sections/.rodata', 0o664, b'0xffffffffa015b320\n') +f('sys/module/iwl3945/sections/__param', 0o664, b'0xffffffffa015e4b0\n') +f('sys/module/iwl3945/sections/.bss', 0o664, b'0xffffffffa0163d80\n') +f('sys/module/iwl3945/sections/.text', 0o664, b'0xffffffffa014b000\n') +f('sys/module/iwl3945/sections/.init.text', 0o664, b'0xffffffffa0065000\n') +f('sys/module/iwl3945/sections/.data', 0o664, b'0xffffffffa0162f00\n') +f('sys/module/iwl3945/sections/.symtab', 0o664, b'0xffffffffa015e5c8\n') +f('sys/module/iwl3945/sections/.gnu.linkonce.this_module', 0o664, b'0xffffffffa01639c0\n') +f('sys/module/iwl3945/sections/.rodata.str1.1', 0o664, b'0xffffffffa015bc0c\n') +d('sys/module/iwl3945/notes', 0o775) +f('sys/module/iwl3945/notes/.note.gnu.build-id', 0o664, b'\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00GNU\x00\xd1^"`\xf9\xf2&\x0b\xe0T\x9b\xe1,\xab\x88\x9bos\x0b\xdb') +d('sys/module/rsrc_nonstatic', 0o775) +f('sys/module/rsrc_nonstatic/initstate', 0o664, b'live\n') +f('sys/module/rsrc_nonstatic/srcversion', 0o664, b'8554CBDFE6293476856E830\n') +f('sys/module/rsrc_nonstatic/refcnt', 0o664, b'1\n') +d('sys/module/rsrc_nonstatic/holders', 0o775) +l('sys/module/rsrc_nonstatic/holders/yenta_socket', '../../yenta_socket') +d('sys/module/rsrc_nonstatic/parameters', 0o775) +f('sys/module/rsrc_nonstatic/parameters/probe_mem', 0o664, b'1\n') +d('sys/module/rsrc_nonstatic/sections', 0o775) +f('sys/module/rsrc_nonstatic/sections/__ksymtab_strings', 0o664, b'0xffffffffa00ef8a0\n') +f('sys/module/rsrc_nonstatic/sections/.exit.text', 0o664, b'0xffffffffa00ef624\n') +f('sys/module/rsrc_nonstatic/sections/.note.gnu.build-id', 0o664, b'0xffffffffa00ef69c\n') +f('sys/module/rsrc_nonstatic/sections/.strtab', 0o664, b'0xffffffffa00f0260\n') +f('sys/module/rsrc_nonstatic/sections/__ksymtab', 0o664, b'0xffffffffa00ef860\n') +f('sys/module/rsrc_nonstatic/sections/.devexit.text', 0o664, b'0xffffffffa00ef636\n') +f('sys/module/rsrc_nonstatic/sections/.rodata', 0o664, b'0xffffffffa00ef6c0\n') +f('sys/module/rsrc_nonstatic/sections/__param', 0o664, b'0xffffffffa00ef878\n') +f('sys/module/rsrc_nonstatic/sections/.bss', 0o664, b'0xffffffffa00f0dc0\n') +f('sys/module/rsrc_nonstatic/sections/.text', 0o664, b'0xffffffffa00ee000\n') +f('sys/module/rsrc_nonstatic/sections/.init.text', 0o664, b'0xffffffffa0084000\n') +f('sys/module/rsrc_nonstatic/sections/__kcrctab', 0o664, b'0xffffffffa00ef870\n') +f('sys/module/rsrc_nonstatic/sections/.ref.data', 0o664, b'0xffffffffa00f09c0\n') +f('sys/module/rsrc_nonstatic/sections/.data', 0o664, b'0xffffffffa00f0820\n') +f('sys/module/rsrc_nonstatic/sections/.devinit.text', 0o664, b'0xffffffffa00ef665\n') +f('sys/module/rsrc_nonstatic/sections/.symtab', 0o664, b'0xffffffffa00ef8b8\n') +f('sys/module/rsrc_nonstatic/sections/.gnu.linkonce.this_module', 0o664, b'0xffffffffa00f0a00\n') +f('sys/module/rsrc_nonstatic/sections/.rodata.str1.1', 0o664, b'0xffffffffa00ef78d\n') +d('sys/module/rsrc_nonstatic/notes', 0o775) +f('sys/module/rsrc_nonstatic/notes/.note.gnu.build-id', 0o664, b'\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00GNU\x00\xd5n\x94\x07\x89\xe1\x08\xe3\x07C\xb9\x83\x0c\x19*6\xe8\xe3\x10R') +d('sys/module/thinkpad_acpi', 0o775) +f('sys/module/thinkpad_acpi/version', 0o664, b'0.21\n') +f('sys/module/thinkpad_acpi/initstate', 0o664, b'live\n') +f('sys/module/thinkpad_acpi/srcversion', 0o664, b'FA276F7EFAA90BF39100654\n') +f('sys/module/thinkpad_acpi/refcnt', 0o664, b'0\n') +d('sys/module/thinkpad_acpi/drivers', 0o775) +l('sys/module/thinkpad_acpi/drivers/platform:thinkpad_hwmon', '../../../bus/platform/drivers/thinkpad_hwmon') +l('sys/module/thinkpad_acpi/drivers/platform:thinkpad_acpi', '../../../bus/platform/drivers/thinkpad_acpi') +d('sys/module/thinkpad_acpi/sections', 0o775) +f('sys/module/thinkpad_acpi/sections/.smp_locks', 0o664, b'0xffffffffa01e6088\n') +f('sys/module/thinkpad_acpi/sections/__bug_table', 0o664, b'0xffffffffa01e60e0\n') +f('sys/module/thinkpad_acpi/sections/.note.gnu.build-id', 0o664, b'0xffffffffa01e3a80\n') +f('sys/module/thinkpad_acpi/sections/.strtab', 0o664, b'0xffffffffa01e98b8\n') +f('sys/module/thinkpad_acpi/sections/.rodata', 0o664, b'0xffffffffa01e3ac0\n') +f('sys/module/thinkpad_acpi/sections/__param', 0o664, b'0xffffffffa01e61a0\n') +f('sys/module/thinkpad_acpi/sections/.bss', 0o664, b'0xffffffffa01ed600\n') +f('sys/module/thinkpad_acpi/sections/.text', 0o664, b'0xffffffffa01dd000\n') +f('sys/module/thinkpad_acpi/sections/.init.text', 0o664, b'0xffffffffa01ef000\n') +f('sys/module/thinkpad_acpi/sections/.data', 0o664, b'0xffffffffa01ebd60\n') +f('sys/module/thinkpad_acpi/sections/.init.data', 0o664, b'0xffffffffa01f1700\n') +f('sys/module/thinkpad_acpi/sections/.symtab', 0o664, b'0xffffffffa01e6498\n') +f('sys/module/thinkpad_acpi/sections/.gnu.linkonce.this_module', 0o664, b'0xffffffffa01ed240\n') +f('sys/module/thinkpad_acpi/sections/.rodata.str1.1', 0o664, b'0xffffffffa01e3df0\n') +d('sys/module/thinkpad_acpi/notes', 0o775) +f('sys/module/thinkpad_acpi/notes/.note.gnu.build-id', 0o664, b"\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00GNU\x00]\xca\x1f\xba\xb1J'\xa8\x14\x83cj=h\x11\xe60;\x08\xd6") +d('sys/module/psmouse', 0o775) +d('sys/module/psmouse/drivers', 0o775) +l('sys/module/psmouse/drivers/serio:psmouse', '../../../bus/serio/drivers/psmouse') +d('sys/module/psmouse/parameters', 0o775) +f('sys/module/psmouse/parameters/proto', 0o664, b'''auto + +''') +f('sys/module/psmouse/parameters/resync_time', 0o664, b'0\n') +f('sys/module/psmouse/parameters/resolution', 0o664, b'200\n') +f('sys/module/psmouse/parameters/resetafter', 0o664, b'5\n') +f('sys/module/psmouse/parameters/rate', 0o664, b'100\n') +f('sys/module/psmouse/parameters/smartscroll', 0o664, b'Y\n') +d('sys/module/md_mod', 0o775) +f('sys/module/md_mod/initstate', 0o664, b'live\n') +f('sys/module/md_mod/srcversion', 0o664, b'1DB954BE8FA97D4755DC15B\n') +f('sys/module/md_mod/refcnt', 0o664, b'1\n') +d('sys/module/md_mod/holders', 0o775) +l('sys/module/md_mod/holders/raid1', '../../raid1') +d('sys/module/md_mod/parameters', 0o775) +f('sys/module/md_mod/parameters/start_ro', 0o664, b'0\n') +f('sys/module/md_mod/parameters/start_dirty_degraded', 0o664, b'0\n') +d('sys/module/md_mod/sections', 0o775) +f('sys/module/md_mod/sections/__ksymtab_gpl', 0o664, b'0xffffffffa022a790\n') +f('sys/module/md_mod/sections/.smp_locks', 0o664, b'0xffffffffa022a038\n') +f('sys/module/md_mod/sections/__bug_table', 0o664, b'0xffffffffa022a4b8\n') +f('sys/module/md_mod/sections/__ksymtab_strings', 0o664, b'0xffffffffa022a7f0\n') +f('sys/module/md_mod/sections/.exit.text', 0o664, b'0xffffffffa02283a0\n') +f('sys/module/md_mod/sections/.note.gnu.build-id', 0o664, b'0xffffffffa02284c8\n') +f('sys/module/md_mod/sections/.strtab', 0o664, b'0xffffffffa022d7a0\n') +f('sys/module/md_mod/sections/__ksymtab', 0o664, b'0xffffffffa022a590\n') +f('sys/module/md_mod/sections/.rodata', 0o664, b'0xffffffffa0228500\n') +f('sys/module/md_mod/sections/__param', 0o664, b'0xffffffffa022a740\n') +f('sys/module/md_mod/sections/.bss', 0o664, b'0xffffffffa0230880\n') +f('sys/module/md_mod/sections/.text', 0o664, b'0xffffffffa021a000\n') +f('sys/module/md_mod/sections/.init.text', 0o664, b'0xffffffffa0070000\n') +f('sys/module/md_mod/sections/__kcrctab', 0o664, b'0xffffffffa022a6b0\n') +f('sys/module/md_mod/sections/.data', 0o664, b'0xffffffffa022f660\n') +f('sys/module/md_mod/sections/.symtab', 0o664, b'0xffffffffa022a968\n') +f('sys/module/md_mod/sections/.gnu.linkonce.this_module', 0o664, b'0xffffffffa02304c0\n') +f('sys/module/md_mod/sections/.rodata.str1.1', 0o664, b'0xffffffffa022869e\n') +f('sys/module/md_mod/sections/__kcrctab_gpl', 0o664, b'0xffffffffa022a7d0\n') +d('sys/module/md_mod/notes', 0o775) +f('sys/module/md_mod/notes/.note.gnu.build-id', 0o664, b'\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00GNU\x00\xbd\xb6!\x84\x88Z\x8bnL\x0f\xf0\xbe\xf0]\n"\xd8\xf3\xb0*') +d('sys/module/snd_pcm', 0o775) +f('sys/module/snd_pcm/initstate', 0o664, b'live\n') +f('sys/module/snd_pcm/srcversion', 0o664, b'96530AD1426FF7F73757C4F\n') +f('sys/module/snd_pcm/refcnt', 0o664, b'2\n') +d('sys/module/snd_pcm/holders', 0o775) +l('sys/module/snd_pcm/holders/snd_hda_intel', '../../snd_hda_intel') +l('sys/module/snd_pcm/holders/snd_pcm_oss', '../../snd_pcm_oss') +d('sys/module/snd_pcm/parameters', 0o775) +f('sys/module/snd_pcm/parameters/preallocate_dma', 0o664, b'1\n') +f('sys/module/snd_pcm/parameters/maximum_substreams', 0o664, b'4\n') +d('sys/module/snd_pcm/sections', 0o775) +f('sys/module/snd_pcm/sections/.smp_locks', 0o664, b'0xffffffffa0141af8\n') +f('sys/module/snd_pcm/sections/__ex_table', 0o664, b'0xffffffffa0141b30\n') +f('sys/module/snd_pcm/sections/__ksymtab_strings', 0o664, b'0xffffffffa01415f0\n') +f('sys/module/snd_pcm/sections/.exit.text', 0o664, b'0xffffffffa01401d4\n') +f('sys/module/snd_pcm/sections/.note.gnu.build-id', 0o664, b'0xffffffffa0140260\n') +f('sys/module/snd_pcm/sections/.strtab', 0o664, b'0xffffffffa0145428\n') +f('sys/module/snd_pcm/sections/.fixup', 0o664, b'0xffffffffa01401fe\n') +f('sys/module/snd_pcm/sections/__ksymtab', 0o664, b'0xffffffffa01410b0\n') +f('sys/module/snd_pcm/sections/.rodata', 0o664, b'0xffffffffa01402a0\n') +f('sys/module/snd_pcm/sections/__param', 0o664, b'0xffffffffa0141bb0\n') +f('sys/module/snd_pcm/sections/.bss', 0o664, b'0xffffffffa0149640\n') +f('sys/module/snd_pcm/sections/.text', 0o664, b'0xffffffffa0134000\n') +f('sys/module/snd_pcm/sections/.init.text', 0o664, b'0xffffffffa007d000\n') +f('sys/module/snd_pcm/sections/__kcrctab', 0o664, b'0xffffffffa0141430\n') +f('sys/module/snd_pcm/sections/.data', 0o664, b'0xffffffffa0148b60\n') +f('sys/module/snd_pcm/sections/.symtab', 0o664, b'0xffffffffa0141c00\n') +f('sys/module/snd_pcm/sections/.gnu.linkonce.this_module', 0o664, b'0xffffffffa0149280\n') +f('sys/module/snd_pcm/sections/.rodata.str1.1', 0o664, b'0xffffffffa0140930\n') +d('sys/module/snd_pcm/notes', 0o775) +f('sys/module/snd_pcm/notes/.note.gnu.build-id', 0o664, b'\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00GNU\x00\xc8N\x86\x9c\x8dq\x14\x04\xe7\xed\xee\x9b\xe0\x8f\xe4\x8fvF{\xfe') +d('sys/module/snd_hda_intel', 0o775) +f('sys/module/snd_hda_intel/initstate', 0o664, b'live\n') +f('sys/module/snd_hda_intel/srcversion', 0o664, b'B76633A09F11336101E5480\n') +f('sys/module/snd_hda_intel/refcnt', 0o664, b'3\n') +d('sys/module/snd_hda_intel/drivers', 0o775) +l('sys/module/snd_hda_intel/drivers/pci:HDA Intel', '../../../bus/pci/drivers/HDA Intel') +d('sys/module/snd_hda_intel/parameters', 0o775) +f('sys/module/snd_hda_intel/parameters/bdl_pos_adj', 0o664, b'1,-1,-1,-1,-1,-1,-1,-1\n') +f('sys/module/snd_hda_intel/parameters/enable', 0o664, b'Y,Y,Y,Y,Y,Y,Y,Y\n') +f('sys/module/snd_hda_intel/parameters/id', 0o664, b'<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>\n') +f('sys/module/snd_hda_intel/parameters/probe_mask', 0o664, b'1,-1,-1,-1,-1,-1,-1,-1\n') +f('sys/module/snd_hda_intel/parameters/enable_msi', 0o664, b'0\n') +f('sys/module/snd_hda_intel/parameters/index', 0o664, b'-1,-1,-1,-1,-1,-1,-1,-1\n') +f('sys/module/snd_hda_intel/parameters/single_cmd', 0o664, b'N\n') +f('sys/module/snd_hda_intel/parameters/model', 0o664, b'<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>\n') +f('sys/module/snd_hda_intel/parameters/position_fix', 0o664, b'0,0,0,0,0,0,0,0\n') +d('sys/module/snd_hda_intel/sections', 0o775) +f('sys/module/snd_hda_intel/sections/.devinit.data', 0o664, b'0xffffffffa01d7340\n') +f('sys/module/snd_hda_intel/sections/.exit.text', 0o664, b'0xffffffffa0182a58\n') +f('sys/module/snd_hda_intel/sections/.note.gnu.build-id', 0o664, b'0xffffffffa0183f4c\n') +f('sys/module/snd_hda_intel/sections/.strtab', 0o664, b'0xffffffffa0193910\n') +f('sys/module/snd_hda_intel/sections/.devexit.text', 0o664, b'0xffffffffa0182a6a\n') +f('sys/module/snd_hda_intel/sections/.rodata', 0o664, b'0xffffffffa0183f80\n') +f('sys/module/snd_hda_intel/sections/__param', 0o664, b'0xffffffffa0189de8\n') +f('sys/module/snd_hda_intel/sections/.bss', 0o664, b'0xffffffffa01d7800\n') +f('sys/module/snd_hda_intel/sections/.text', 0o664, b'0xffffffffa0165000\n') +f('sys/module/snd_hda_intel/sections/.init.text', 0o664, b'0xffffffffa0070000\n') +f('sys/module/snd_hda_intel/sections/.data', 0o664, b'0xffffffffa019bd40\n') +f('sys/module/snd_hda_intel/sections/.devinit.text', 0o664, b'0xffffffffa0182aa0\n') +f('sys/module/snd_hda_intel/sections/.symtab', 0o664, b'0xffffffffa0189f50\n') +f('sys/module/snd_hda_intel/sections/.gnu.linkonce.this_module', 0o664, b'0xffffffffa01d7440\n') +f('sys/module/snd_hda_intel/sections/.rodata.str1.1', 0o664, b'0xffffffffa0186d8b\n') +d('sys/module/snd_hda_intel/notes', 0o775) +f('sys/module/snd_hda_intel/notes/.note.gnu.build-id', 0o664, b'\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00GNU\x002\xfe\x91\xd2K\x86\x1d\x92P\xdcX/c\x07=\xf3\xceY\xbc-') +d('sys/module/ehci_hcd', 0o775) +f('sys/module/ehci_hcd/initstate', 0o664, b'live\n') +f('sys/module/ehci_hcd/srcversion', 0o664, b'6EBBF13EC8AD467D8AB11A4\n') +f('sys/module/ehci_hcd/refcnt', 0o664, b'0\n') +d('sys/module/ehci_hcd/drivers', 0o775) +l('sys/module/ehci_hcd/drivers/pci:ehci_hcd', '../../../bus/pci/drivers/ehci_hcd') +d('sys/module/ehci_hcd/parameters', 0o775) +f('sys/module/ehci_hcd/parameters/park', 0o664, b'0\n') +f('sys/module/ehci_hcd/parameters/ignore_oc', 0o664, b'N\n') +f('sys/module/ehci_hcd/parameters/log2_irq_thresh', 0o664, b'0\n') +d('sys/module/ehci_hcd/sections', 0o775) +f('sys/module/ehci_hcd/sections/.smp_locks', 0o664, b'0xffffffffa00e4048\n') +f('sys/module/ehci_hcd/sections/__bug_table', 0o664, b'0xffffffffa00e3f22\n') +f('sys/module/ehci_hcd/sections/.exit.text', 0o664, b'0xffffffffa00e3b98\n') +f('sys/module/ehci_hcd/sections/.note.gnu.build-id', 0o664, b'0xffffffffa00e3bac\n') +f('sys/module/ehci_hcd/sections/.strtab', 0o664, b'0xffffffffa00e54a8\n') +f('sys/module/ehci_hcd/sections/.rodata', 0o664, b'0xffffffffa00e3be0\n') +f('sys/module/ehci_hcd/sections/__param', 0o664, b'0xffffffffa00e42f0\n') +f('sys/module/ehci_hcd/sections/.bss', 0o664, b'0xffffffffa00e6480\n') +f('sys/module/ehci_hcd/sections/.text', 0o664, b'0xffffffffa00dd000\n') +f('sys/module/ehci_hcd/sections/.init.text', 0o664, b'0xffffffffa006b000\n') +f('sys/module/ehci_hcd/sections/.data', 0o664, b'0xffffffffa00e5f40\n') +f('sys/module/ehci_hcd/sections/.symtab', 0o664, b'0xffffffffa00e4368\n') +f('sys/module/ehci_hcd/sections/.gnu.linkonce.this_module', 0o664, b'0xffffffffa00e60c0\n') +f('sys/module/ehci_hcd/sections/.rodata.str1.1', 0o664, b'0xffffffffa00e3dd0\n') +d('sys/module/ehci_hcd/notes', 0o775) +f('sys/module/ehci_hcd/notes/.note.gnu.build-id', 0o664, b"\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00GNU\x00 \xc7\x01\xa9Mi;\xcaNB'\x08T\xc4\xf9\x80\xd7\x10\xb3h") +d('sys/module/sg', 0o775) +f('sys/module/sg/version', 0o664, b'3.5.34\n') +f('sys/module/sg/initstate', 0o664, b'live\n') +f('sys/module/sg/srcversion', 0o664, b'DC7DE342543B6D7AB46D718\n') +f('sys/module/sg/refcnt', 0o664, b'0\n') +d('sys/module/sg/parameters', 0o775) +f('sys/module/sg/parameters/allow_dio', 0o664, b'0\n') +f('sys/module/sg/parameters/scatter_elem_sz', 0o664, b'32768\n') +f('sys/module/sg/parameters/def_reserved_size', 0o664, b'32768\n') +d('sys/module/sg/sections', 0o775) +f('sys/module/sg/sections/.smp_locks', 0o664, b'0xffffffffa00054d8\n') +f('sys/module/sg/sections/__ex_table', 0o664, b'0xffffffffa0005530\n') +f('sys/module/sg/sections/__bug_table', 0o664, b'0xffffffffa00054e8\n') +f('sys/module/sg/sections/.exit.text', 0o664, b'0xffffffffa00049f0\n') +f('sys/module/sg/sections/.note.gnu.build-id', 0o664, b'0xffffffffa0004afc\n') +f('sys/module/sg/sections/.strtab', 0o664, b'0xffffffffa0006710\n') +f('sys/module/sg/sections/.fixup', 0o664, b'0xffffffffa0004a33\n') +f('sys/module/sg/sections/.rodata', 0o664, b'0xffffffffa0004b20\n') +f('sys/module/sg/sections/__param', 0o664, b'0xffffffffa0005630\n') +f('sys/module/sg/sections/.bss', 0o664, b'0xffffffffa0007640\n') +f('sys/module/sg/sections/.text', 0o664, b'0xffffffffa0000000\n') +f('sys/module/sg/sections/.init.text', 0o664, b'0xffffffffa0009000\n') +f('sys/module/sg/sections/.data', 0o664, b'0xffffffffa0007040\n') +f('sys/module/sg/sections/.symtab', 0o664, b'0xffffffffa00056a8\n') +f('sys/module/sg/sections/.gnu.linkonce.this_module', 0o664, b'0xffffffffa0007280\n') +f('sys/module/sg/sections/.rodata.str1.1', 0o664, b'0xffffffffa0004bc0\n') +d('sys/module/sg/notes', 0o775) +f('sys/module/sg/notes/.note.gnu.build-id', 0o664, b'\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00GNU\x00q\x06\xb5<\xb3\x13\xd4\xe6\xc5W\xbb;{\x14\x93\xd5\x07\xc7\x13\xfa') +d('sys/module/snd_mixer_oss', 0o775) +f('sys/module/snd_mixer_oss/initstate', 0o664, b'live\n') +f('sys/module/snd_mixer_oss/srcversion', 0o664, b'9D2BFE821DD0ACFA2CFF364\n') +f('sys/module/snd_mixer_oss/refcnt', 0o664, b'1\n') +d('sys/module/snd_mixer_oss/holders', 0o775) +l('sys/module/snd_mixer_oss/holders/snd_pcm_oss', '../../snd_pcm_oss') +d('sys/module/snd_mixer_oss/sections', 0o775) +f('sys/module/snd_mixer_oss/sections/__ksymtab_strings', 0o664, b'0xffffffffa02bba78\n') +f('sys/module/snd_mixer_oss/sections/.exit.text', 0o664, b'0xffffffffa02bb508\n') +f('sys/module/snd_mixer_oss/sections/.note.gnu.build-id', 0o664, b'0xffffffffa02bb54c\n') +f('sys/module/snd_mixer_oss/sections/.strtab', 0o664, b'0xffffffffa02bc470\n') +f('sys/module/snd_mixer_oss/sections/__ksymtab', 0o664, b'0xffffffffa02bba60\n') +f('sys/module/snd_mixer_oss/sections/.rodata', 0o664, b'0xffffffffa02bb580\n') +f('sys/module/snd_mixer_oss/sections/.bss', 0o664, b'0xffffffffa02bd240\n') +f('sys/module/snd_mixer_oss/sections/.text', 0o664, b'0xffffffffa02b9000\n') +f('sys/module/snd_mixer_oss/sections/.init.text', 0o664, b'0xffffffffa0065000\n') +f('sys/module/snd_mixer_oss/sections/__kcrctab', 0o664, b'0xffffffffa02bba70\n') +f('sys/module/snd_mixer_oss/sections/.data', 0o664, b'0xffffffffa02bcb20\n') +f('sys/module/snd_mixer_oss/sections/.symtab', 0o664, b'0xffffffffa02bba98\n') +f('sys/module/snd_mixer_oss/sections/.gnu.linkonce.this_module', 0o664, b'0xffffffffa02bce80\n') +f('sys/module/snd_mixer_oss/sections/.rodata.str1.1', 0o664, b'0xffffffffa02bb760\n') +d('sys/module/snd_mixer_oss/notes', 0o775) +f('sys/module/snd_mixer_oss/notes/.note.gnu.build-id', 0o664, b'\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00GNU\x00\xc3u\x0b\x0eh,\x90W\xba\xf3S\xa9\x16\\<\x97u\x0f.\xa6') +d('sys/module/pcmcia', 0o775) +f('sys/module/pcmcia/initstate', 0o664, b'live\n') +f('sys/module/pcmcia/srcversion', 0o664, b'6544CB07B8D7D79F19A4CD6\n') +f('sys/module/pcmcia/refcnt', 0o664, b'0\n') +d('sys/module/pcmcia/parameters', 0o775) +f('sys/module/pcmcia/parameters/io_speed', 0o664, b'0\n') +d('sys/module/pcmcia/sections', 0o775) +f('sys/module/pcmcia/sections/__ksymtab_strings', 0o664, b'0xffffffffa01f9890\n') +f('sys/module/pcmcia/sections/.exit.text', 0o664, b'0xffffffffa01f85c4\n') +f('sys/module/pcmcia/sections/.note.gnu.build-id', 0o664, b'0xffffffffa01f86c8\n') +f('sys/module/pcmcia/sections/.strtab', 0o664, b'0xffffffffa01fb138\n') +f('sys/module/pcmcia/sections/__ksymtab', 0o664, b'0xffffffffa01f9710\n') +f('sys/module/pcmcia/sections/.rodata', 0o664, b'0xffffffffa01f8700\n') +f('sys/module/pcmcia/sections/__param', 0o664, b'0xffffffffa01f9a00\n') +f('sys/module/pcmcia/sections/.bss', 0o664, b'0xffffffffa01fcb40\n') +f('sys/module/pcmcia/sections/.text', 0o664, b'0xffffffffa01f5000\n') +f('sys/module/pcmcia/sections/.init.text', 0o664, b'0xffffffffa0065000\n') +f('sys/module/pcmcia/sections/__kcrctab', 0o664, b'0xffffffffa01f9810\n') +f('sys/module/pcmcia/sections/.ref.data', 0o664, b'0xffffffffa01fc720\n') +f('sys/module/pcmcia/sections/.data', 0o664, b'0xffffffffa01fc3a0\n') +f('sys/module/pcmcia/sections/.devinit.text', 0o664, b'0xffffffffa01f85e2\n') +f('sys/module/pcmcia/sections/.symtab', 0o664, b'0xffffffffa01f9a28\n') +f('sys/module/pcmcia/sections/.gnu.linkonce.this_module', 0o664, b'0xffffffffa01fc780\n') +f('sys/module/pcmcia/sections/.rodata.str1.1', 0o664, b'0xffffffffa01f913d\n') +d('sys/module/pcmcia/notes', 0o775) +f('sys/module/pcmcia/notes/.note.gnu.build-id', 0o664, b'\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00GNU\x00v\xd6BR5q\xd2\xd4\x05y\xe0\x84j\x17\xab\xb2\xe6o\xd43') +d('sys/module/nvram', 0o775) +f('sys/module/nvram/initstate', 0o664, b'live\n') +f('sys/module/nvram/srcversion', 0o664, b'ECD12B2949BC771BDCE8146\n') +f('sys/module/nvram/refcnt', 0o664, b'1\n') +d('sys/module/nvram/holders', 0o775) +l('sys/module/nvram/holders/thinkpad_acpi', '../../thinkpad_acpi') +d('sys/module/nvram/sections', 0o775) +f('sys/module/nvram/sections/__ksymtab_strings', 0o664, b'0xffffffffa00ad2c0\n') +f('sys/module/nvram/sections/.exit.text', 0o664, b'0xffffffffa00ace3c\n') +f('sys/module/nvram/sections/.note.gnu.build-id', 0o664, b'0xffffffffa00ace5c\n') +f('sys/module/nvram/sections/.strtab', 0o664, b'0xffffffffa00adc38\n') +f('sys/module/nvram/sections/__ksymtab', 0o664, b'0xffffffffa00ad230\n') +f('sys/module/nvram/sections/.rodata', 0o664, b'0xffffffffa00ace80\n') +f('sys/module/nvram/sections/.bss', 0o664, b'0xffffffffa00ae640\n') +f('sys/module/nvram/sections/.text', 0o664, b'0xffffffffa00ac000\n') +f('sys/module/nvram/sections/.init.text', 0o664, b'0xffffffffa00b0000\n') +f('sys/module/nvram/sections/__kcrctab', 0o664, b'0xffffffffa00ad290\n') +f('sys/module/nvram/sections/.data', 0o664, b'0xffffffffa00ae200\n') +f('sys/module/nvram/sections/.symtab', 0o664, b'0xffffffffa00ad338\n') +f('sys/module/nvram/sections/.gnu.linkonce.this_module', 0o664, b'0xffffffffa00ae280\n') +f('sys/module/nvram/sections/.rodata.str1.1', 0o664, b'0xffffffffa00acfb8\n') +d('sys/module/nvram/notes', 0o775) +f('sys/module/nvram/notes/.note.gnu.build-id', 0o664, b'\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00GNU\x00\x00j\xf9\trf\x94M\xafD\\s\xced\xcc\x97c\xd5L\n') +d('sys/module/scsi_mod', 0o775) +d('sys/module/scsi_mod/parameters', 0o775) +f('sys/module/scsi_mod/parameters/scan', 0o664, b'sync\n') +f('sys/module/scsi_mod/parameters/default_dev_flags', 0o664, b'0\n') +f('sys/module/scsi_mod/parameters/scsi_logging_level', 0o664, b'0\n') +f('sys/module/scsi_mod/parameters/inq_timeout', 0o664, b'5\n') +f('sys/module/scsi_mod/parameters/max_luns', 0o664, b'512\n') +f('sys/module/scsi_mod/parameters/max_report_luns', 0o664, b'511\n') +d('sys/module/pcmcia_core', 0o775) +f('sys/module/pcmcia_core/initstate', 0o664, b'live\n') +f('sys/module/pcmcia_core/srcversion', 0o664, b'7C1220572DE8897E4D560EB\n') +f('sys/module/pcmcia_core/refcnt', 0o664, b'3\n') +d('sys/module/pcmcia_core/holders', 0o775) +l('sys/module/pcmcia_core/holders/yenta_socket', '../../yenta_socket') +l('sys/module/pcmcia_core/holders/rsrc_nonstatic', '../../rsrc_nonstatic') +l('sys/module/pcmcia_core/holders/pcmcia', '../../pcmcia') +d('sys/module/pcmcia_core/parameters', 0o775) +f('sys/module/pcmcia_core/parameters/setup_delay', 0o664, b'10\n') +f('sys/module/pcmcia_core/parameters/cis_speed', 0o664, b'300\n') +f('sys/module/pcmcia_core/parameters/unreset_delay', 0o664, b'10\n') +f('sys/module/pcmcia_core/parameters/shutdown_delay', 0o664, b'3\n') +f('sys/module/pcmcia_core/parameters/cis_width', 0o664, b'0\n') +f('sys/module/pcmcia_core/parameters/unreset_limit', 0o664, b'30\n') +f('sys/module/pcmcia_core/parameters/reset_time', 0o664, b'10\n') +f('sys/module/pcmcia_core/parameters/resume_delay', 0o664, b'20\n') +f('sys/module/pcmcia_core/parameters/unreset_check', 0o664, b'10\n') +f('sys/module/pcmcia_core/parameters/vcc_settle', 0o664, b'40\n') +d('sys/module/pcmcia_core/sections', 0o775) +f('sys/module/pcmcia_core/sections/__ksymtab_strings', 0o664, b'0xffffffffa0094310\n') +f('sys/module/pcmcia_core/sections/.exit.text', 0o664, b'0xffffffffa0093558\n') +f('sys/module/pcmcia_core/sections/.note.gnu.build-id', 0o664, b'0xffffffffa0093668\n') +f('sys/module/pcmcia_core/sections/.strtab', 0o664, b'0xffffffffa0096898\n') +f('sys/module/pcmcia_core/sections/__ksymtab', 0o664, b'0xffffffffa0093e50\n') +f('sys/module/pcmcia_core/sections/.rodata', 0o664, b'0xffffffffa00936a0\n') +f('sys/module/pcmcia_core/sections/__param', 0o664, b'0xffffffffa0094180\n') +f('sys/module/pcmcia_core/sections/.bss', 0o664, b'0xffffffffa0098f40\n') +f('sys/module/pcmcia_core/sections/.text', 0o664, b'0xffffffffa008f000\n') +f('sys/module/pcmcia_core/sections/.init.text', 0o664, b'0xffffffffa009a000\n') +f('sys/module/pcmcia_core/sections/__kcrctab', 0o664, b'0xffffffffa0094070\n') +f('sys/module/pcmcia_core/sections/.data', 0o664, b'0xffffffffa0098700\n') +f('sys/module/pcmcia_core/sections/.symtab', 0o664, b'0xffffffffa00945d0\n') +f('sys/module/pcmcia_core/sections/.gnu.linkonce.this_module', 0o664, b'0xffffffffa0098b80\n') +f('sys/module/pcmcia_core/sections/.rodata.str1.1', 0o664, b'0xffffffffa0093a88\n') +f('sys/module/pcmcia_core/sections/.ref.text', 0o664, b'0xffffffffa0093580\n') +d('sys/module/pcmcia_core/notes', 0o775) +f('sys/module/pcmcia_core/notes/.note.gnu.build-id', 0o664, b'\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00GNU\x00M\xe5~\xb9\x10\x7f(\xb8\x18\xe2ma\xb4\xdc\x9a\x8er\xb2t\xbc') +d('sys/module/rtc_core', 0o775) +f('sys/module/rtc_core/initstate', 0o664, b'live\n') +f('sys/module/rtc_core/srcversion', 0o664, b'8684A14821938B7D8E50DB5\n') +f('sys/module/rtc_core/refcnt', 0o664, b'1\n') +d('sys/module/rtc_core/holders', 0o775) +l('sys/module/rtc_core/holders/rtc_cmos', '../../rtc_cmos') +d('sys/module/rtc_core/sections', 0o775) +f('sys/module/rtc_core/sections/__ksymtab_gpl', 0o664, b'0xffffffffa00ea380\n') +f('sys/module/rtc_core/sections/.smp_locks', 0o664, b'0xffffffffa00ea5b8\n') +f('sys/module/rtc_core/sections/__ksymtab_strings', 0o664, b'0xffffffffa00ea4d0\n') +f('sys/module/rtc_core/sections/.exit.text', 0o664, b'0xffffffffa00e9e60\n') +f('sys/module/rtc_core/sections/.note.gnu.build-id', 0o664, b'0xffffffffa00e9ea4\n') +f('sys/module/rtc_core/sections/.strtab', 0o664, b'0xffffffffa00eb9c0\n') +f('sys/module/rtc_core/sections/.rodata', 0o664, b'0xffffffffa00e9ee0\n') +f('sys/module/rtc_core/sections/.bss', 0o664, b'0xffffffffa00ecd80\n') +f('sys/module/rtc_core/sections/.text', 0o664, b'0xffffffffa00e8000\n') +f('sys/module/rtc_core/sections/.init.text', 0o664, b'0xffffffffa007d000\n') +f('sys/module/rtc_core/sections/.data', 0o664, b'0xffffffffa00ec760\n') +f('sys/module/rtc_core/sections/.symtab', 0o664, b'0xffffffffa00ea5e0\n') +f('sys/module/rtc_core/sections/.gnu.linkonce.this_module', 0o664, b'0xffffffffa00ec9c0\n') +f('sys/module/rtc_core/sections/.rodata.str1.1', 0o664, b'0xffffffffa00ea098\n') +f('sys/module/rtc_core/sections/__kcrctab_gpl', 0o664, b'0xffffffffa00ea460\n') +d('sys/module/rtc_core/notes', 0o775) +f('sys/module/rtc_core/notes/.note.gnu.build-id', 0o664, b'\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00GNU\x00\xfbj\x90X\x98\xf7\x0e\x95\x19\xc6\xa1\xa1\xcd\xe0\x835$\x0e\x96\x17') +d('sys/module/led_class', 0o775) +f('sys/module/led_class/initstate', 0o664, b'live\n') +f('sys/module/led_class/srcversion', 0o664, b'B916A50F53ABBBB19DFF203\n') +f('sys/module/led_class/refcnt', 0o664, b'2\n') +d('sys/module/led_class/holders', 0o775) +l('sys/module/led_class/holders/iwl3945', '../../iwl3945') +l('sys/module/led_class/holders/thinkpad_acpi', '../../thinkpad_acpi') +d('sys/module/led_class/sections', 0o775) +f('sys/module/led_class/sections/__ksymtab_gpl', 0o664, b'0xffffffffa00f23c0\n') +f('sys/module/led_class/sections/__ksymtab_strings', 0o664, b'0xffffffffa00f2420\n') +f('sys/module/led_class/sections/.exit.text', 0o664, b'0xffffffffa00f2330\n') +f('sys/module/led_class/sections/.note.gnu.build-id', 0o664, b'0xffffffffa00f2344\n') +f('sys/module/led_class/sections/.strtab', 0o664, b'0xffffffffa00f2bf8\n') +f('sys/module/led_class/sections/.bss', 0o664, b'0xffffffffa00f3500\n') +f('sys/module/led_class/sections/.text', 0o664, b'0xffffffffa00f2000\n') +f('sys/module/led_class/sections/.init.text', 0o664, b'0xffffffffa0065000\n') +f('sys/module/led_class/sections/.data', 0o664, b'0xffffffffa00f30c0\n') +f('sys/module/led_class/sections/.symtab', 0o664, b'0xffffffffa00f2478\n') +f('sys/module/led_class/sections/.gnu.linkonce.this_module', 0o664, b'0xffffffffa00f3140\n') +f('sys/module/led_class/sections/.rodata.str1.1', 0o664, b'0xffffffffa00f2368\n') +f('sys/module/led_class/sections/__kcrctab_gpl', 0o664, b'0xffffffffa00f2400\n') +d('sys/module/led_class/notes', 0o775) +f('sys/module/led_class/notes/.note.gnu.build-id', 0o664, b'\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00GNU\x00Iq;\xaf\xad\xf1\xe5\xcf8\xa5\x86u\xa9tMV\x02*\xfd\r') +d('sys/module/libata', 0o775) +d('sys/module/libata/parameters', 0o775) +f('sys/module/libata/parameters/acpi_gtf_filter', 0o664, b'7\n') +f('sys/module/libata/parameters/noacpi', 0o664, b'0\n') +f('sys/module/libata/parameters/atapi_passthru16', 0o664, b'1\n') +f('sys/module/libata/parameters/ata_probe_timeout', 0o664, b'0\n') +f('sys/module/libata/parameters/dma', 0o664, b'7\n') +f('sys/module/libata/parameters/atapi_dmadir', 0o664, b'0\n') +f('sys/module/libata/parameters/fua', 0o664, b'0\n') +f('sys/module/libata/parameters/ignore_hpa', 0o664, b'0\n') +f('sys/module/libata/parameters/atapi_enabled', 0o664, b'1\n') +f('sys/module/libata/parameters/allow_tpm', 0o664, b'0\n') +d('sys/module/thermal', 0o775) +f('sys/module/thermal/initstate', 0o664, b'live\n') +f('sys/module/thermal/srcversion', 0o664, b'1787CE9FEB053C917D031A9\n') +f('sys/module/thermal/refcnt', 0o664, b'0\n') +d('sys/module/thermal/parameters', 0o775) +f('sys/module/thermal/parameters/act', 0o664, b'0\n') +f('sys/module/thermal/parameters/tzp', 0o664, b'0\n') +f('sys/module/thermal/parameters/crt', 0o664, b'0\n') +f('sys/module/thermal/parameters/psv', 0o664, b'0\n') +d('sys/module/thermal/sections', 0o775) +f('sys/module/thermal/sections/.exit.text', 0o664, b'0xffffffffa00a1f14\n') +f('sys/module/thermal/sections/.note.gnu.build-id', 0o664, b'0xffffffffa00a1f3c\n') +f('sys/module/thermal/sections/.strtab', 0o664, b'0xffffffffa00a3b28\n') +f('sys/module/thermal/sections/.rodata', 0o664, b'0xffffffffa00a1f60\n') +f('sys/module/thermal/sections/__param', 0o664, b'0xffffffffa00a29d0\n') +f('sys/module/thermal/sections/.bss', 0o664, b'0xffffffffa00a4bc0\n') +f('sys/module/thermal/sections/.text', 0o664, b'0xffffffffa00a0000\n') +f('sys/module/thermal/sections/.init.text', 0o664, b'0xffffffffa0070000\n') +f('sys/module/thermal/sections/.data', 0o664, b'0xffffffffa00a4640\n') +f('sys/module/thermal/sections/.init.data', 0o664, b'0xffffffffa0070090\n') +f('sys/module/thermal/sections/.symtab', 0o664, b'0xffffffffa00a2ac0\n') +f('sys/module/thermal/sections/.gnu.linkonce.this_module', 0o664, b'0xffffffffa00a4800\n') +f('sys/module/thermal/sections/.rodata.str1.1', 0o664, b'0xffffffffa00a242a\n') +d('sys/module/thermal/notes', 0o775) +f('sys/module/thermal/notes/.note.gnu.build-id', 0o664, b'\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00GNU\x00\x97\xa9\xec\xf2\x01\x86!\x94\x89\xa4n%q\t\xb7\xb4\x97a\x1a\x85') +d('sys/module/keyboard', 0o775) +d('sys/module/keyboard/parameters', 0o775) +f('sys/module/keyboard/parameters/brl_nbchords', 0o664, b'1\n') +f('sys/module/keyboard/parameters/brl_timeout', 0o664, b'300\n') +d('sys/module/ahci', 0o775) +d('sys/module/ahci/drivers', 0o775) +l('sys/module/ahci/drivers/pci:ahci', '../../../bus/pci/drivers/ahci') +d('sys/module/ahci/parameters', 0o775) +f('sys/module/ahci/parameters/marvell_enable', 0o664, b'1\n') +f('sys/module/ahci/parameters/ahci_em_messages', 0o664, b'1\n') +f('sys/module/ahci/parameters/skip_host_reset', 0o664, b'0\n') +d('sys/module/snd_pcm_oss', 0o775) +f('sys/module/snd_pcm_oss/initstate', 0o664, b'live\n') +f('sys/module/snd_pcm_oss/srcversion', 0o664, b'E3D05A52B04130012283029\n') +f('sys/module/snd_pcm_oss/refcnt', 0o664, b'0\n') +d('sys/module/snd_pcm_oss/parameters', 0o775) +f('sys/module/snd_pcm_oss/parameters/dsp_map', 0o664, b'0,0,0,0,0,0,0,0\n') +f('sys/module/snd_pcm_oss/parameters/nonblock_open', 0o664, b'Y\n') +f('sys/module/snd_pcm_oss/parameters/adsp_map', 0o664, b'1,1,1,1,1,1,1,1\n') +d('sys/module/snd_pcm_oss/sections', 0o775) +f('sys/module/snd_pcm_oss/sections/.exit.text', 0o664, b'0xffffffffa02c6e7c\n') +f('sys/module/snd_pcm_oss/sections/.note.gnu.build-id', 0o664, b'0xffffffffa02c6e94\n') +f('sys/module/snd_pcm_oss/sections/.strtab', 0o664, b'0xffffffffa02c8818\n') +f('sys/module/snd_pcm_oss/sections/.rodata', 0o664, b'0xffffffffa02c6ec0\n') +f('sys/module/snd_pcm_oss/sections/__param', 0o664, b'0xffffffffa02c7378\n') +f('sys/module/snd_pcm_oss/sections/.bss', 0o664, b'0xffffffffa02c9b00\n') +f('sys/module/snd_pcm_oss/sections/.text', 0o664, b'0xffffffffa02bf000\n') +f('sys/module/snd_pcm_oss/sections/.init.text', 0o664, b'0xffffffffa0065000\n') +f('sys/module/snd_pcm_oss/sections/.data', 0o664, b'0xffffffffa02c96c0\n') +f('sys/module/snd_pcm_oss/sections/.symtab', 0o664, b'0xffffffffa02c73f0\n') +f('sys/module/snd_pcm_oss/sections/.gnu.linkonce.this_module', 0o664, b'0xffffffffa02c9740\n') +f('sys/module/snd_pcm_oss/sections/.rodata.str1.1', 0o664, b'0xffffffffa02c71a8\n') +d('sys/module/snd_pcm_oss/notes', 0o775) +f('sys/module/snd_pcm_oss/notes/.note.gnu.build-id', 0o664, b'\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00GNU\x00\xd7y|\xbf\xa5\x8aZm\x86\x85CF\x11s\xd3\xf5f\xbd7\xc6') +d('sys/module/ac', 0o775) +f('sys/module/ac/initstate', 0o664, b'live\n') +f('sys/module/ac/srcversion', 0o664, b'6E9CD20EE5BE8425A61B938\n') +f('sys/module/ac/refcnt', 0o664, b'0\n') +d('sys/module/ac/sections', 0o775) +f('sys/module/ac/sections/.exit.text', 0o664, b'0xffffffffa006d43c\n') +f('sys/module/ac/sections/.note.gnu.build-id', 0o664, b'0xffffffffa006d45c\n') +f('sys/module/ac/sections/.strtab', 0o664, b'0xffffffffa006dd28\n') +f('sys/module/ac/sections/.rodata', 0o664, b'0xffffffffa006d480\n') +f('sys/module/ac/sections/.bss', 0o664, b'0xffffffffa006e600\n') +f('sys/module/ac/sections/.text', 0o664, b'0xffffffffa006d000\n') +f('sys/module/ac/sections/.init.text', 0o664, b'0xffffffffa0070000\n') +f('sys/module/ac/sections/.data', 0o664, b'0xffffffffa006e0d0\n') +f('sys/module/ac/sections/.symtab', 0o664, b'0xffffffffa006d668\n') +f('sys/module/ac/sections/.gnu.linkonce.this_module', 0o664, b'0xffffffffa006e240\n') +f('sys/module/ac/sections/.rodata.str1.1', 0o664, b'0xffffffffa006d5a0\n') +d('sys/module/ac/notes', 0o775) +f('sys/module/ac/notes/.note.gnu.build-id', 0o664, b'\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00GNU\x00^h\xf0\x19\xcc\x94"G\xf8\xbc\x1c\xf0\xa3\x8d?\xec\xa5\xc4\x95\x9f') +d('sys/module/dock', 0o775) +d('sys/module/dock/parameters', 0o775) +f('sys/module/dock/parameters/immediate_undock', 0o664, b'Y\n') +d('sys/module/pcie_aspm', 0o775) +d('sys/module/pcie_aspm/parameters', 0o775) +f('sys/module/pcie_aspm/parameters/policy', 0o664, b'[default] performance powersave \n') +d('sys/module/lockdep', 0o775) +d('sys/module/lockdep/parameters', 0o775) +f('sys/module/lockdep/parameters/lock_stat', 0o664, b'1\n') +d('sys/module/tcp_cubic', 0o775) +d('sys/module/tcp_cubic/parameters', 0o775) +f('sys/module/tcp_cubic/parameters/tcp_friendliness', 0o664, b'1\n') +f('sys/module/tcp_cubic/parameters/beta', 0o664, b'717\n') +f('sys/module/tcp_cubic/parameters/bic_scale', 0o664, b'41\n') +f('sys/module/tcp_cubic/parameters/fast_convergence', 0o664, b'1\n') +f('sys/module/tcp_cubic/parameters/initial_ssthresh', 0o664, b'0\n') +d('sys/module/ecb', 0o775) +f('sys/module/ecb/initstate', 0o664, b'live\n') +f('sys/module/ecb/srcversion', 0o664, b'5BBA8E5CDEA4EA8BA5ED31D\n') +f('sys/module/ecb/refcnt', 0o664, b'2\n') +d('sys/module/ecb/sections', 0o775) +f('sys/module/ecb/sections/.exit.text', 0o664, b'0xffffffffa0027300\n') +f('sys/module/ecb/sections/.note.gnu.build-id', 0o664, b'0xffffffffa0027314\n') +f('sys/module/ecb/sections/.strtab', 0o664, b'0xffffffffa00277c0\n') +f('sys/module/ecb/sections/.bss', 0o664, b'0xffffffffa0027e80\n') +f('sys/module/ecb/sections/.text', 0o664, b'0xffffffffa0027000\n') +f('sys/module/ecb/sections/.init.text', 0o664, b'0xffffffffa006b000\n') +f('sys/module/ecb/sections/.data', 0o664, b'0xffffffffa0027a40\n') +f('sys/module/ecb/sections/.symtab', 0o664, b'0xffffffffa0027340\n') +f('sys/module/ecb/sections/.gnu.linkonce.this_module', 0o664, b'0xffffffffa0027ac0\n') +f('sys/module/ecb/sections/.rodata.str1.1', 0o664, b'0xffffffffa0027338\n') +d('sys/module/ecb/notes', 0o775) +f('sys/module/ecb/notes/.note.gnu.build-id', 0o664, b"\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00GNU\x00\xc20'\x18T\x8bW#\xf5\xe5\xf8JvI\xcb\xc4\x91\x95\nJ") +d('sys/module/snd_page_alloc', 0o775) +f('sys/module/snd_page_alloc/initstate', 0o664, b'live\n') +f('sys/module/snd_page_alloc/srcversion', 0o664, b'D9E59C27F28D5DA2B935016\n') +f('sys/module/snd_page_alloc/refcnt', 0o664, b'2\n') +d('sys/module/snd_page_alloc/holders', 0o775) +l('sys/module/snd_page_alloc/holders/snd_pcm', '../../snd_pcm') +l('sys/module/snd_page_alloc/holders/snd_hda_intel', '../../snd_hda_intel') +d('sys/module/snd_page_alloc/sections', 0o775) +f('sys/module/snd_page_alloc/sections/__ksymtab_strings', 0o664, b'0xffffffffa00350e8\n') +f('sys/module/snd_page_alloc/sections/.exit.text', 0o664, b'0xffffffffa0034cc0\n') +f('sys/module/snd_page_alloc/sections/.note.gnu.build-id', 0o664, b'0xffffffffa0034cf8\n') +f('sys/module/snd_page_alloc/sections/.strtab', 0o664, b'0xffffffffa0035be8\n') +f('sys/module/snd_page_alloc/sections/__ksymtab', 0o664, b'0xffffffffa0035040\n') +f('sys/module/snd_page_alloc/sections/.rodata', 0o664, b'0xffffffffa0034d20\n') +f('sys/module/snd_page_alloc/sections/.bss', 0o664, b'0xffffffffa0036780\n') +f('sys/module/snd_page_alloc/sections/.text', 0o664, b'0xffffffffa0034000\n') +f('sys/module/snd_page_alloc/sections/.init.text', 0o664, b'0xffffffffa0038000\n') +f('sys/module/snd_page_alloc/sections/__kcrctab', 0o664, b'0xffffffffa00350b0\n') +f('sys/module/snd_page_alloc/sections/.data', 0o664, b'0xffffffffa0036300\n') +f('sys/module/snd_page_alloc/sections/.symtab', 0o664, b'0xffffffffa0035180\n') +f('sys/module/snd_page_alloc/sections/.gnu.linkonce.this_module', 0o664, b'0xffffffffa00363c0\n') +f('sys/module/snd_page_alloc/sections/.rodata.str1.1', 0o664, b'0xffffffffa0034fd5\n') +d('sys/module/snd_page_alloc/notes', 0o775) +f('sys/module/snd_page_alloc/notes/.note.gnu.build-id', 0o664, b'\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00GNU\x00s\xc1\x8a\x9a\xf7g\x83-x\xc0\xbe\x98\xb0[\x95"\xd7\x97Q=') +d('sys/module/loop', 0o775) +f('sys/module/loop/initstate', 0o664, b'live\n') +f('sys/module/loop/srcversion', 0o664, b'7595F5D46DFDB4A2D489DDD\n') +f('sys/module/loop/refcnt', 0o664, b'0\n') +d('sys/module/loop/sections', 0o775) +f('sys/module/loop/sections/__bug_table', 0o664, b'0xffffffffa023ca1f\n') +f('sys/module/loop/sections/__ksymtab_strings', 0o664, b'0xffffffffa023caf0\n') +f('sys/module/loop/sections/.exit.text', 0o664, b'0xffffffffa023c72c\n') +f('sys/module/loop/sections/.note.gnu.build-id', 0o664, b'0xffffffffa023c7e4\n') +f('sys/module/loop/sections/.strtab', 0o664, b'0xffffffffa023d960\n') +f('sys/module/loop/sections/__ksymtab', 0o664, b'0xffffffffa023ca70\n') +f('sys/module/loop/sections/.rodata', 0o664, b'0xffffffffa023c808\n') +f('sys/module/loop/sections/__param', 0o664, b'0xffffffffa023caa0\n') +f('sys/module/loop/sections/.bss', 0o664, b'0xffffffffa023e780\n') +f('sys/module/loop/sections/.text', 0o664, b'0xffffffffa023a000\n') +f('sys/module/loop/sections/.init.text', 0o664, b'0xffffffffa0065000\n') +f('sys/module/loop/sections/__kcrctab', 0o664, b'0xffffffffa023ca90\n') +f('sys/module/loop/sections/.data', 0o664, b'0xffffffffa023e180\n') +f('sys/module/loop/sections/.symtab', 0o664, b'0xffffffffa023cb20\n') +f('sys/module/loop/sections/.gnu.linkonce.this_module', 0o664, b'0xffffffffa023e3c0\n') +f('sys/module/loop/sections/.rodata.str1.1', 0o664, b'0xffffffffa023c88a\n') +d('sys/module/loop/notes', 0o775) +f('sys/module/loop/notes/.note.gnu.build-id', 0o664, b'\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00GNU\x007;\xf4\xa1\x0e\xe8\x13\xedX\xe6\xbc\xa4\xcd\xde_\x7fe\x84\x90\x85') +d('sys/module/aes_generic', 0o775) +f('sys/module/aes_generic/initstate', 0o664, b'live\n') +f('sys/module/aes_generic/srcversion', 0o664, b'CE7DEF557FD2F72DE36DE4A\n') +f('sys/module/aes_generic/refcnt', 0o664, b'1\n') +d('sys/module/aes_generic/holders', 0o775) +l('sys/module/aes_generic/holders/aes_x86_64', '../../aes_x86_64') +d('sys/module/aes_generic/sections', 0o775) +f('sys/module/aes_generic/sections/__ksymtab_gpl', 0o664, b'0xffffffffa02ccef0\n') +f('sys/module/aes_generic/sections/__ksymtab_strings', 0o664, b'0xffffffffa02ccf80\n') +f('sys/module/aes_generic/sections/.exit.text', 0o664, b'0xffffffffa02cceb8\n') +f('sys/module/aes_generic/sections/.note.gnu.build-id', 0o664, b'0xffffffffa02ccecc\n') +f('sys/module/aes_generic/sections/.strtab', 0o664, b'0xffffffffa02cd678\n') +f('sys/module/aes_generic/sections/.bss', 0o664, b'0xffffffffa02cdf80\n') +f('sys/module/aes_generic/sections/.text', 0o664, b'0xffffffffa02cb000\n') +f('sys/module/aes_generic/sections/.init.text', 0o664, b'0xffffffffa0065000\n') +f('sys/module/aes_generic/sections/.data', 0o664, b'0xffffffffa02cda80\n') +f('sys/module/aes_generic/sections/.init.data', 0o664, b'0xffffffffa0065300\n') +f('sys/module/aes_generic/sections/.symtab', 0o664, b'0xffffffffa02ccfe8\n') +f('sys/module/aes_generic/sections/.gnu.linkonce.this_module', 0o664, b'0xffffffffa02cdbc0\n') +f('sys/module/aes_generic/sections/__kcrctab_gpl', 0o664, b'0xffffffffa02ccf50\n') +d('sys/module/aes_generic/notes', 0o775) +f('sys/module/aes_generic/notes/.note.gnu.build-id', 0o664, b'\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00GNU\x00V@\xa6&\x10\xf7X\xe0q\xbf\xb9G\xd9d\x004\x06h\xe6\x13') +d('sys/module/snd_seq_device', 0o775) +f('sys/module/snd_seq_device/initstate', 0o664, b'live\n') +f('sys/module/snd_seq_device/srcversion', 0o664, b'A166653189DAF15E3F2B588\n') +f('sys/module/snd_seq_device/refcnt', 0o664, b'1\n') +d('sys/module/snd_seq_device/holders', 0o775) +l('sys/module/snd_seq_device/holders/snd_seq', '../../snd_seq') +d('sys/module/snd_seq_device/sections', 0o775) +f('sys/module/snd_seq_device/sections/__ksymtab_strings', 0o664, b'0xffffffffa02a5d10\n') +f('sys/module/snd_seq_device/sections/.exit.text', 0o664, b'0xffffffffa02a5a5c\n') +f('sys/module/snd_seq_device/sections/.note.gnu.build-id', 0o664, b'0xffffffffa02a5a90\n') +f('sys/module/snd_seq_device/sections/.strtab', 0o664, b'0xffffffffa02a66e0\n') +f('sys/module/snd_seq_device/sections/__ksymtab', 0o664, b'0xffffffffa02a5c80\n') +f('sys/module/snd_seq_device/sections/.bss', 0o664, b'0xffffffffa02a7280\n') +f('sys/module/snd_seq_device/sections/.text', 0o664, b'0xffffffffa02a5000\n') +f('sys/module/snd_seq_device/sections/.init.text', 0o664, b'0xffffffffa0065000\n') +f('sys/module/snd_seq_device/sections/__kcrctab', 0o664, b'0xffffffffa02a5ce0\n') +f('sys/module/snd_seq_device/sections/.data', 0o664, b'0xffffffffa02a6de0\n') +f('sys/module/snd_seq_device/sections/.symtab', 0o664, b'0xffffffffa02a5db0\n') +f('sys/module/snd_seq_device/sections/.gnu.linkonce.this_module', 0o664, b'0xffffffffa02a6ec0\n') +f('sys/module/snd_seq_device/sections/.rodata.str1.1', 0o664, b'0xffffffffa02a5bd0\n') +d('sys/module/snd_seq_device/notes', 0o775) +f('sys/module/snd_seq_device/notes/.note.gnu.build-id', 0o664, b'\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00GNU\x00\xb6B\x93\xc2\xcc\x83\xa8\xfc\xc2r\xf6\x8c\xcej\n\xc5\x87ys\r') +d('sys/module/8250', 0o775) +d('sys/module/8250/parameters', 0o775) +f('sys/module/8250/parameters/share_irqs', 0o664, b'0\n') +f('sys/module/8250/parameters/nr_uarts', 0o664, b'4\n') +d('sys/module/ipv6', 0o775) +f('sys/module/ipv6/initstate', 0o664, b'live\n') +f('sys/module/ipv6/srcversion', 0o664, b'184C844E7A78529619B4C9D\n') +f('sys/module/ipv6/refcnt', 0o664, b'10\n') +d('sys/module/ipv6/sections', 0o775) +f('sys/module/ipv6/sections/__ksymtab_gpl', 0o664, b'0xffffffffa028ac10\n') +f('sys/module/ipv6/sections/.smp_locks', 0o664, b'0xffffffffa028a240\n') +f('sys/module/ipv6/sections/__bug_table', 0o664, b'0xffffffffa0288edd\n') +f('sys/module/ipv6/sections/__ksymtab_strings', 0o664, b'0xffffffffa028b108\n') +f('sys/module/ipv6/sections/.exit.text', 0o664, b'0xffffffffa0285e40\n') +f('sys/module/ipv6/sections/.note.gnu.build-id', 0o664, b'0xffffffffa0286024\n') +f('sys/module/ipv6/sections/.strtab', 0o664, b'0xffffffffa02937f0\n') +f('sys/module/ipv6/sections/__ksymtab', 0o664, b'0xffffffffa028ad90\n') +f('sys/module/ipv6/sections/.rodata', 0o664, b'0xffffffffa0286060\n') +f('sys/module/ipv6/sections/.data.read_mostly', 0o664, b'0xffffffffa029cf20\n') +f('sys/module/ipv6/sections/.bss', 0o664, b'0xffffffffa029dd80\n') +f('sys/module/ipv6/sections/.text', 0o664, b'0xffffffffa0258000\n') +f('sys/module/ipv6/sections/.init.text', 0o664, b'0xffffffffa0065000\n') +f('sys/module/ipv6/sections/__kcrctab', 0o664, b'0xffffffffa028afe0\n') +f('sys/module/ipv6/sections/.data', 0o664, b'0xffffffffa02998c0\n') +f('sys/module/ipv6/sections/.init.data', 0o664, b'0xffffffffa0065d80\n') +f('sys/module/ipv6/sections/.symtab', 0o664, b'0xffffffffa028b4c8\n') +f('sys/module/ipv6/sections/.gnu.linkonce.this_module', 0o664, b'0xffffffffa029d9c0\n') +f('sys/module/ipv6/sections/.rodata.str1.1', 0o664, b'0xffffffffa02883c0\n') +f('sys/module/ipv6/sections/.ref.text', 0o664, b'0xffffffffa0285f40\n') +f('sys/module/ipv6/sections/__kcrctab_gpl', 0o664, b'0xffffffffa028ad10\n') +d('sys/module/ipv6/notes', 0o775) +f('sys/module/ipv6/notes/.note.gnu.build-id', 0o664, b'\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00GNU\x00\x90\x01\xde\xf3>\xfd_r\xbc\xbb\x16\xbd\xceIf\xc2vC\xbd\xc9') +d('sys/module/microcode', 0o775) +f('sys/module/microcode/initstate', 0o664, b'live\n') +f('sys/module/microcode/srcversion', 0o664, b'FC3DA13E858B639D12F2043\n') +f('sys/module/microcode/refcnt', 0o664, b'0\n') +d('sys/module/microcode/sections', 0o775) +f('sys/module/microcode/sections/__bug_table', 0o664, b'0xffffffffa02516f7\n') +f('sys/module/microcode/sections/.exit.text', 0o664, b'0xffffffffa0250ff6\n') +f('sys/module/microcode/sections/.note.gnu.build-id', 0o664, b'0xffffffffa0251040\n') +f('sys/module/microcode/sections/.strtab', 0o664, b'0xffffffffa02520b8\n') +f('sys/module/microcode/sections/.rodata', 0o664, b'0xffffffffa0251080\n') +f('sys/module/microcode/sections/.bss', 0o664, b'0xffffffffa0252c40\n') +f('sys/module/microcode/sections/.text', 0o664, b'0xffffffffa0250000\n') +f('sys/module/microcode/sections/.init.text', 0o664, b'0xffffffffa0065000\n') +f('sys/module/microcode/sections/.ref.data', 0o664, b'0xffffffffa0252850\n') +f('sys/module/microcode/sections/.data', 0o664, b'0xffffffffa0252600\n') +f('sys/module/microcode/sections/.symtab', 0o664, b'0xffffffffa0251740\n') +f('sys/module/microcode/sections/.gnu.linkonce.this_module', 0o664, b'0xffffffffa0252880\n') +f('sys/module/microcode/sections/.rodata.str1.1', 0o664, b'0xffffffffa0251218\n') +f('sys/module/microcode/sections/.cpuinit.text', 0o664, b'0xffffffffa0250d90\n') +d('sys/module/microcode/notes', 0o775) +f('sys/module/microcode/notes/.note.gnu.build-id', 0o664, b'\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00GNU\x00\x81 p\x0b\x99+\x14\x05\x9c\xb2\xf6{\xacs\xa9\xf3<\xb5\x99\x1a') +d('sys/module/i8042', 0o775) +d('sys/module/i8042/parameters', 0o775) +f('sys/module/i8042/parameters/debug', 0o664, b'N\n') +f('sys/module/i8042/parameters/panicblink', 0o664, b'500\n') +d('sys/module/usbcore', 0o775) +f('sys/module/usbcore/initstate', 0o664, b'live\n') +f('sys/module/usbcore/srcversion', 0o664, b'4FF77EB8DAB25F4076D7357\n') +f('sys/module/usbcore/refcnt', 0o664, b'5\n') +d('sys/module/usbcore/holders', 0o775) +l('sys/module/usbcore/holders/uhci_hcd', '../../uhci_hcd') +l('sys/module/usbcore/holders/usb_storage', '../../usb_storage') +l('sys/module/usbcore/holders/cdc_acm', '../../cdc_acm') +l('sys/module/usbcore/holders/usbhid', '../../usbhid') +l('sys/module/usbcore/holders/ehci_hcd', '../../ehci_hcd') +d('sys/module/usbcore/drivers', 0o775) +l('sys/module/usbcore/drivers/usb:usbfs', '../../../bus/usb/drivers/usbfs') +l('sys/module/usbcore/drivers/usb:usb', '../../../bus/usb/drivers/usb') +l('sys/module/usbcore/drivers/usb:hub', '../../../bus/usb/drivers/hub') +d('sys/module/usbcore/parameters', 0o775) +f('sys/module/usbcore/parameters/use_both_schemes', 0o664, b'Y\n') +f('sys/module/usbcore/parameters/blinkenlights', 0o664, b'N\n') +f('sys/module/usbcore/parameters/usbfs_snoop', 0o664, b'N\n') +f('sys/module/usbcore/parameters/autosuspend', 0o664, b'2\n') +f('sys/module/usbcore/parameters/nousb', 0o664, b'N\n') +f('sys/module/usbcore/parameters/old_scheme_first', 0o664, b'N\n') +d('sys/module/usbcore/sections', 0o775) +f('sys/module/usbcore/sections/__ksymtab_gpl', 0o664, b'0xffffffffa004ea30\n') +f('sys/module/usbcore/sections/.smp_locks', 0o664, b'0xffffffffa004f930\n') +f('sys/module/usbcore/sections/__ex_table', 0o664, b'0xffffffffa004fa58\n') +f('sys/module/usbcore/sections/__bug_table', 0o664, b'0xffffffffa004fa40\n') +f('sys/module/usbcore/sections/__ksymtab_strings', 0o664, b'0xffffffffa004f300\n') +f('sys/module/usbcore/sections/.exit.text', 0o664, b'0xffffffffa004ba30\n') +f('sys/module/usbcore/sections/.note.gnu.build-id', 0o664, b'0xffffffffa004bb30\n') +f('sys/module/usbcore/sections/.strtab', 0o664, b'0xffffffffa0055cf8\n') +f('sys/module/usbcore/sections/.fixup', 0o664, b'0xffffffffa004ba87\n') +f('sys/module/usbcore/sections/.rodata', 0o664, b'0xffffffffa004bb60\n') +f('sys/module/usbcore/sections/__param', 0o664, b'0xffffffffa004f210\n') +f('sys/module/usbcore/sections/.bss', 0o664, b'0xffffffffa005cec0\n') +f('sys/module/usbcore/sections/.text', 0o664, b'0xffffffffa0038000\n') +f('sys/module/usbcore/sections/.init.text', 0o664, b'0xffffffffa0027000\n') +f('sys/module/usbcore/sections/.data', 0o664, b'0xffffffffa005af00\n') +f('sys/module/usbcore/sections/.symtab', 0o664, b'0xffffffffa004fb18\n') +f('sys/module/usbcore/sections/.gnu.linkonce.this_module', 0o664, b'0xffffffffa005cb00\n') +f('sys/module/usbcore/sections/.rodata.str1.1', 0o664, b'0xffffffffa004c044\n') +f('sys/module/usbcore/sections/__kcrctab_gpl', 0o664, b'0xffffffffa004ef70\n') +d('sys/module/usbcore/notes', 0o775) +f('sys/module/usbcore/notes/.note.gnu.build-id', 0o664, b'\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00GNU\x00!\xbeP\xa2@m\xffg\xff\x1b\xa8\x8f\xd2\xb3\x11\x14[\xb0\x89\x1e') +d('sys/module/intel_agp', 0o775) +f('sys/module/intel_agp/initstate', 0o664, b'live\n') +f('sys/module/intel_agp/srcversion', 0o664, b'98AFACFFF6A1ADC3A6FAB67\n') +f('sys/module/intel_agp/refcnt', 0o664, b'0\n') +d('sys/module/intel_agp/drivers', 0o775) +l('sys/module/intel_agp/drivers/pci:agpgart-intel', '../../../bus/pci/drivers/agpgart-intel') +d('sys/module/intel_agp/sections', 0o775) +f('sys/module/intel_agp/sections/.smp_locks', 0o664, b'0xffffffffa008ae38\n') +f('sys/module/intel_agp/sections/.exit.text', 0o664, b'0xffffffffa00893ac\n') +f('sys/module/intel_agp/sections/.note.gnu.build-id', 0o664, b'0xffffffffa00896b0\n') +f('sys/module/intel_agp/sections/.strtab', 0o664, b'0xffffffffa008c1b8\n') +f('sys/module/intel_agp/sections/.devexit.text', 0o664, b'0xffffffffa00893be\n') +f('sys/module/intel_agp/sections/.rodata', 0o664, b'0xffffffffa00896e0\n') +f('sys/module/intel_agp/sections/.bss', 0o664, b'0xffffffffa008da00\n') +f('sys/module/intel_agp/sections/.text', 0o664, b'0xffffffffa0086000\n') +f('sys/module/intel_agp/sections/.init.text', 0o664, b'0xffffffffa008f000\n') +f('sys/module/intel_agp/sections/.data', 0o664, b'0xffffffffa008cf60\n') +f('sys/module/intel_agp/sections/.devinit.text', 0o664, b'0xffffffffa0089400\n') +f('sys/module/intel_agp/sections/.symtab', 0o664, b'0xffffffffa008ae50\n') +f('sys/module/intel_agp/sections/.gnu.linkonce.this_module', 0o664, b'0xffffffffa008d640\n') +f('sys/module/intel_agp/sections/.rodata.str1.1', 0o664, b'0xffffffffa008a9c0\n') +d('sys/module/intel_agp/notes', 0o775) +f('sys/module/intel_agp/notes/.note.gnu.build-id', 0o664, b'\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00GNU\x00\xb0\xb5IU\x04F\xdb\x80\xdf\x9a8\xedq\x0b\xd4\xc7K\x851\x86') +d('sys/module/evdev', 0o775) +f('sys/module/evdev/initstate', 0o664, b'live\n') +f('sys/module/evdev/srcversion', 0o664, b'6F6934C1F95317926EA0520\n') +f('sys/module/evdev/refcnt', 0o664, b'5\n') +d('sys/module/evdev/sections', 0o775) +f('sys/module/evdev/sections/.exit.text', 0o664, b'0xffffffffa00b3724\n') +f('sys/module/evdev/sections/.note.gnu.build-id', 0o664, b'0xffffffffa00b3738\n') +f('sys/module/evdev/sections/.strtab', 0o664, b'0xffffffffa00b4610\n') +f('sys/module/evdev/sections/.rodata', 0o664, b'0xffffffffa00b3760\n') +f('sys/module/evdev/sections/.bss', 0o664, b'0xffffffffa00b50c0\n') +f('sys/module/evdev/sections/.text', 0o664, b'0xffffffffa00b2000\n') +f('sys/module/evdev/sections/.init.text', 0o664, b'0xffffffffa00b7000\n') +f('sys/module/evdev/sections/.data', 0o664, b'0xffffffffa00b4be0\n') +f('sys/module/evdev/sections/.symtab', 0o664, b'0xffffffffa00b3b60\n') +f('sys/module/evdev/sections/.gnu.linkonce.this_module', 0o664, b'0xffffffffa00b4d00\n') +f('sys/module/evdev/sections/.rodata.str1.1', 0o664, b'0xffffffffa00b3a38\n') +d('sys/module/evdev/notes', 0o775) +f('sys/module/evdev/notes/.note.gnu.build-id', 0o664, b'\x04\x00\x00\x00\x14\x00\x00\x00\x03\x00\x00\x00GNU\x00\x8d/u!\xb1\xf2\xe7\x10z\x8a\xf7\x0c\x88\x17\x1c4i\\2\xa8') +d('sys/module/atkbd', 0o775) +d('sys/module/atkbd/drivers', 0o775) +l('sys/module/atkbd/drivers/serio:atkbd', '../../../bus/serio/drivers/atkbd') +d('sys/class', 0o755) +d('sys/class/rfkill', 0o755) +l('sys/class/rfkill/rfkill0', '../../devices/platform/thinkpad_acpi/rfkill/rfkill0') +d('sys/class/rtc', 0o755) +l('sys/class/rtc/rtc0', '../../devices/pnp0/00:07/rtc/rtc0') +d('sys/class/usb_endpoint', 0o755) +l('sys/class/usb_endpoint/usbdev1.1_ep00', '../../devices/pci0000:00/0000:00:1d.0/usb1/usb_endpoint/usbdev1.1_ep00') +l('sys/class/usb_endpoint/usbdev4.3_ep83', '../../devices/pci0000:00/0000:00:1d.3/usb4/4-2/4-2:1.0/usb_endpoint/usbdev4.3_ep83') +l('sys/class/usb_endpoint/usbdev4.2_ep04', '../../devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.2/usb_endpoint/usbdev4.2_ep04') +l('sys/class/usb_endpoint/usbdev1.1_ep81', '../../devices/pci0000:00/0000:00:1d.0/usb1/1-0:1.0/usb_endpoint/usbdev1.1_ep81') +l('sys/class/usb_endpoint/usbdev3.1_ep81', '../../devices/pci0000:00/0000:00:1d.2/usb3/3-0:1.0/usb_endpoint/usbdev3.1_ep81') +l('sys/class/usb_endpoint/usbdev4.1_ep00', '../../devices/pci0000:00/0000:00:1d.3/usb4/usb_endpoint/usbdev4.1_ep00') +l('sys/class/usb_endpoint/usbdev3.4_ep00', '../../devices/pci0000:00/0000:00:1d.2/usb3/3-1/usb_endpoint/usbdev3.4_ep00') +l('sys/class/usb_endpoint/usbdev4.2_ep00', '../../devices/pci0000:00/0000:00:1d.3/usb4/4-1/usb_endpoint/usbdev4.2_ep00') +l('sys/class/usb_endpoint/usbdev5.7_ep81', '../../devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/usb_endpoint/usbdev5.7_ep81') +l('sys/class/usb_endpoint/usbdev5.9_ep81', '../../devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.0/usb_endpoint/usbdev5.9_ep81') +l('sys/class/usb_endpoint/usbdev5.9_ep83', '../../devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.2/usb_endpoint/usbdev5.9_ep83') +l('sys/class/usb_endpoint/usbdev5.9_ep84', '../../devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.3/usb_endpoint/usbdev5.9_ep84') +l('sys/class/usb_endpoint/usbdev5.9_ep00', '../../devices/pci0000:00/0000:00:1d.7/usb5/5-2/usb_endpoint/usbdev5.9_ep00') +l('sys/class/usb_endpoint/usbdev4.2_ep03', '../../devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.1/usb_endpoint/usbdev4.2_ep03') +l('sys/class/usb_endpoint/usbdev4.2_ep84', '../../devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.2/usb_endpoint/usbdev4.2_ep84') +l('sys/class/usb_endpoint/usbdev3.1_ep00', '../../devices/pci0000:00/0000:00:1d.2/usb3/usb_endpoint/usbdev3.1_ep00') +l('sys/class/usb_endpoint/usbdev4.2_ep83', '../../devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.1/usb_endpoint/usbdev4.2_ep83') +l('sys/class/usb_endpoint/usbdev4.2_ep02', '../../devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.0/usb_endpoint/usbdev4.2_ep02') +l('sys/class/usb_endpoint/usbdev4.3_ep00', '../../devices/pci0000:00/0000:00:1d.3/usb4/4-2/usb_endpoint/usbdev4.3_ep00') +l('sys/class/usb_endpoint/usbdev5.7_ep00', '../../devices/pci0000:00/0000:00:1d.7/usb5/5-1/usb_endpoint/usbdev5.7_ep00') +l('sys/class/usb_endpoint/usbdev4.1_ep81', '../../devices/pci0000:00/0000:00:1d.3/usb4/4-0:1.0/usb_endpoint/usbdev4.1_ep81') +l('sys/class/usb_endpoint/usbdev5.9_ep02', '../../devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.3/usb_endpoint/usbdev5.9_ep02') +l('sys/class/usb_endpoint/usbdev4.2_ep82', '../../devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.0/usb_endpoint/usbdev4.2_ep82') +l('sys/class/usb_endpoint/usbdev2.1_ep81', '../../devices/pci0000:00/0000:00:1d.1/usb2/2-0:1.0/usb_endpoint/usbdev2.1_ep81') +l('sys/class/usb_endpoint/usbdev4.3_ep81', '../../devices/pci0000:00/0000:00:1d.3/usb4/4-2/4-2:1.0/usb_endpoint/usbdev4.3_ep81') +l('sys/class/usb_endpoint/usbdev2.1_ep00', '../../devices/pci0000:00/0000:00:1d.1/usb2/usb_endpoint/usbdev2.1_ep00') +l('sys/class/usb_endpoint/usbdev5.1_ep81', '../../devices/pci0000:00/0000:00:1d.7/usb5/5-0:1.0/usb_endpoint/usbdev5.1_ep81') +l('sys/class/usb_endpoint/usbdev4.2_ep81', '../../devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.0/usb_endpoint/usbdev4.2_ep81') +l('sys/class/usb_endpoint/usbdev3.4_ep81', '../../devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0/usb_endpoint/usbdev3.4_ep81') +l('sys/class/usb_endpoint/usbdev4.3_ep02', '../../devices/pci0000:00/0000:00:1d.3/usb4/4-2/4-2:1.0/usb_endpoint/usbdev4.3_ep02') +l('sys/class/usb_endpoint/usbdev5.7_ep02', '../../devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/usb_endpoint/usbdev5.7_ep02') +l('sys/class/usb_endpoint/usbdev5.1_ep00', '../../devices/pci0000:00/0000:00:1d.7/usb5/usb_endpoint/usbdev5.1_ep00') +l('sys/class/usb_endpoint/usbdev5.9_ep01', '../../devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.1/usb_endpoint/usbdev5.9_ep01') +l('sys/class/usb_endpoint/usbdev5.9_ep82', '../../devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.1/usb_endpoint/usbdev5.9_ep82') +d('sys/class/ieee80211', 0o755) +l('sys/class/ieee80211/phy0', '../../devices/pci0000:00/0000:00:1c.1/0000:03:00.0/ieee80211/phy0') +d('sys/class/scsi_disk', 0o755) +l('sys/class/scsi_disk/7:0:0:0', '../../devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/scsi_disk/7:0:0:0') +l('sys/class/scsi_disk/0:0:0:0', '../../devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/scsi_disk/0:0:0:0') +d('sys/class/vc', 0o755) +l('sys/class/vc/vcsa3', '../../devices/virtual/vc/vcsa3') +l('sys/class/vc/vcsa6', '../../devices/virtual/vc/vcsa6') +l('sys/class/vc/vcsa2', '../../devices/virtual/vc/vcsa2') +l('sys/class/vc/vcsa', '../../devices/virtual/vc/vcsa') +l('sys/class/vc/vcs2', '../../devices/virtual/vc/vcs2') +l('sys/class/vc/vcs7', '../../devices/virtual/vc/vcs7') +l('sys/class/vc/vcsa5', '../../devices/virtual/vc/vcsa5') +l('sys/class/vc/vcsa10', '../../devices/virtual/vc/vcsa10') +l('sys/class/vc/vcs10', '../../devices/virtual/vc/vcs10') +l('sys/class/vc/vcsa1', '../../devices/virtual/vc/vcsa1') +l('sys/class/vc/vcsa4', '../../devices/virtual/vc/vcsa4') +l('sys/class/vc/vcs', '../../devices/virtual/vc/vcs') +l('sys/class/vc/vcs1', '../../devices/virtual/vc/vcs1') +l('sys/class/vc/vcs4', '../../devices/virtual/vc/vcs4') +l('sys/class/vc/vcsa7', '../../devices/virtual/vc/vcsa7') +l('sys/class/vc/vcs6', '../../devices/virtual/vc/vcs6') +l('sys/class/vc/vcs3', '../../devices/virtual/vc/vcs3') +l('sys/class/vc/vcs5', '../../devices/virtual/vc/vcs5') +d('sys/class/mem', 0o755) +l('sys/class/mem/zero', '../../devices/virtual/mem/zero') +l('sys/class/mem/kmsg', '../../devices/virtual/mem/kmsg') +l('sys/class/mem/mem', '../../devices/virtual/mem/mem') +l('sys/class/mem/urandom', '../../devices/virtual/mem/urandom') +l('sys/class/mem/port', '../../devices/virtual/mem/port') +l('sys/class/mem/null', '../../devices/virtual/mem/null') +l('sys/class/mem/kmem', '../../devices/virtual/mem/kmem') +l('sys/class/mem/full', '../../devices/virtual/mem/full') +l('sys/class/mem/random', '../../devices/virtual/mem/random') +d('sys/class/pci_bus', 0o755) +l('sys/class/pci_bus/0000:00', '../../devices/pci0000:00/pci_bus/0000:00') +l('sys/class/pci_bus/0000:01', '../../devices/pci0000:00/0000:00:01.0/pci_bus/0000:01') +l('sys/class/pci_bus/0000:03', '../../devices/pci0000:00/0000:00:1c.1/pci_bus/0000:03') +l('sys/class/pci_bus/0000:0c', '../../devices/pci0000:00/0000:00:1c.3/pci_bus/0000:0c') +l('sys/class/pci_bus/0000:16', '../../devices/pci0000:00/0000:00:1e.0/0000:15:00.0/pci_bus/0000:16') +l('sys/class/pci_bus/0000:04', '../../devices/pci0000:00/0000:00:1c.2/pci_bus/0000:04') +l('sys/class/pci_bus/0000:02', '../../devices/pci0000:00/0000:00:1c.0/pci_bus/0000:02') +l('sys/class/pci_bus/0000:15', '../../devices/pci0000:00/0000:00:1e.0/pci_bus/0000:15') +d('sys/class/hwmon', 0o755) +l('sys/class/hwmon/hwmon0', '../../devices/platform/thinkpad_hwmon/hwmon/hwmon0') +d('sys/class/net', 0o755) +l('sys/class/net/wmaster0', '../../devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wmaster0') +l('sys/class/net/wlan0', '../../devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wlan0') +l('sys/class/net/lo', '../../devices/virtual/net/lo') +l('sys/class/net/eth0', '../../devices/pci0000:00/0000:00:1c.0/0000:02:00.0/net/eth0') +d('sys/class/dmi', 0o755) +l('sys/class/dmi/id', '../../devices/virtual/dmi/id') +d('sys/class/firmware', 0o755) +f('sys/class/firmware/timeout', 0o644, b'60\n') +d('sys/class/scsi_generic', 0o755) +l('sys/class/scsi_generic/sg0', '../../devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/scsi_generic/sg0') +l('sys/class/scsi_generic/sg1', '../../devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/scsi_generic/sg1') +l('sys/class/scsi_generic/sg2', '../../devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/scsi_generic/sg2') +d('sys/class/bdi', 0o755) +l('sys/class/bdi/7:1', '../../devices/virtual/bdi/7:1') +l('sys/class/bdi/7:0', '../../devices/virtual/bdi/7:0') +l('sys/class/bdi/7:2', '../../devices/virtual/bdi/7:2') +l('sys/class/bdi/7:4', '../../devices/virtual/bdi/7:4') +l('sys/class/bdi/7:3', '../../devices/virtual/bdi/7:3') +l('sys/class/bdi/11:0', '../../devices/virtual/bdi/11:0') +l('sys/class/bdi/7:5', '../../devices/virtual/bdi/7:5') +l('sys/class/bdi/8:0', '../../devices/virtual/bdi/8:0') +l('sys/class/bdi/default', '../../devices/virtual/bdi/default') +l('sys/class/bdi/0:16', '../../devices/virtual/bdi/0:16') +l('sys/class/bdi/8:16', '../../devices/virtual/bdi/8:16') +l('sys/class/bdi/9:0', '../../devices/virtual/bdi/9:0') +l('sys/class/bdi/7:7', '../../devices/virtual/bdi/7:7') +l('sys/class/bdi/7:6', '../../devices/virtual/bdi/7:6') +d('sys/class/leds', 0o755) +l('sys/class/leds/iwl-phy0:TX', '../../devices/pci0000:00/0000:00:1c.1/0000:03:00.0/leds/iwl-phy0:TX') +l('sys/class/leds/tpacpi::bay_active', '../../devices/platform/thinkpad_acpi/leds/tpacpi::bay_active') +l('sys/class/leds/tpacpi:orange:batt', '../../devices/platform/thinkpad_acpi/leds/tpacpi:orange:batt') +l('sys/class/leds/tpacpi::dock_active', '../../devices/platform/thinkpad_acpi/leds/tpacpi::dock_active') +l('sys/class/leds/tpacpi::unknown_led', '../../devices/platform/thinkpad_acpi/leds/tpacpi::unknown_led') +l('sys/class/leds/iwl-phy0:assoc', '../../devices/pci0000:00/0000:00:1c.1/0000:03:00.0/leds/iwl-phy0:assoc') +l('sys/class/leds/tpacpi:green:batt', '../../devices/platform/thinkpad_acpi/leds/tpacpi:green:batt') +l('sys/class/leds/iwl-phy0:radio', '../../devices/pci0000:00/0000:00:1c.1/0000:03:00.0/leds/iwl-phy0:radio') +l('sys/class/leds/iwl-phy0:RX', '../../devices/pci0000:00/0000:00:1c.1/0000:03:00.0/leds/iwl-phy0:RX') +l('sys/class/leds/tpacpi::dock_batt', '../../devices/platform/thinkpad_acpi/leds/tpacpi::dock_batt') +l('sys/class/leds/tpacpi::thinklight', '../../devices/platform/thinkpad_acpi/leds/tpacpi::thinklight') +l('sys/class/leds/tpacpi::power', '../../devices/platform/thinkpad_acpi/leds/tpacpi::power') +l('sys/class/leds/tpacpi::standby', '../../devices/platform/thinkpad_acpi/leds/tpacpi::standby') +d('sys/class/usb_host', 0o755) +l('sys/class/usb_host/usb_host1', '../../devices/pci0000:00/0000:00:1d.0/usb_host/usb_host1') +l('sys/class/usb_host/usb_host2', '../../devices/pci0000:00/0000:00:1d.1/usb_host/usb_host2') +l('sys/class/usb_host/usb_host4', '../../devices/pci0000:00/0000:00:1d.3/usb_host/usb_host4') +l('sys/class/usb_host/usb_host5', '../../devices/pci0000:00/0000:00:1d.7/usb_host/usb_host5') +l('sys/class/usb_host/usb_host3', '../../devices/pci0000:00/0000:00:1d.2/usb_host/usb_host3') +d('sys/class/pcmcia_socket', 0o755) +l('sys/class/pcmcia_socket/pcmcia_socket0', '../../devices/pci0000:00/0000:00:1e.0/0000:15:00.0/pcmcia_socket/pcmcia_socket0') +d('sys/class/sound', 0o755) +l('sys/class/sound/audio', '../../devices/pci0000:00/0000:00:1b.0/sound/card0/audio') +l('sys/class/sound/dsp', '../../devices/pci0000:00/0000:00:1b.0/sound/card0/dsp') +l('sys/class/sound/timer', '../../devices/virtual/sound/timer') +l('sys/class/sound/card0', '../../devices/pci0000:00/0000:00:1b.0/sound/card0') +l('sys/class/sound/seq', '../../devices/virtual/sound/seq') +l('sys/class/sound/mixer', '../../devices/pci0000:00/0000:00:1b.0/sound/card0/mixer') +l('sys/class/sound/pcmC0D0p', '../../devices/pci0000:00/0000:00:1b.0/sound/card0/pcmC0D0p') +l('sys/class/sound/controlC0', '../../devices/pci0000:00/0000:00:1b.0/sound/card0/controlC0') +l('sys/class/sound/pcmC0D0c', '../../devices/pci0000:00/0000:00:1b.0/sound/card0/pcmC0D0c') +l('sys/class/sound/adsp', '../../devices/pci0000:00/0000:00:1b.0/sound/card0/adsp') +l('sys/class/sound/pcmC0D1p', '../../devices/pci0000:00/0000:00:1b.0/sound/card0/pcmC0D1p') +d('sys/class/misc', 0o755) +l('sys/class/misc/uinput', '../../devices/virtual/misc/uinput') +l('sys/class/misc/fuse', '../../devices/virtual/misc/fuse') +l('sys/class/misc/hpet', '../../devices/virtual/misc/hpet') +l('sys/class/misc/cpu_dma_latency', '../../devices/virtual/misc/cpu_dma_latency') +l('sys/class/misc/mcelog', '../../devices/virtual/misc/mcelog') +l('sys/class/misc/device-mapper', '../../devices/virtual/misc/device-mapper') +l('sys/class/misc/psaux', '../../devices/virtual/misc/psaux') +l('sys/class/misc/nvram', '../../devices/virtual/misc/nvram') +l('sys/class/misc/network_latency', '../../devices/virtual/misc/network_latency') +l('sys/class/misc/network_throughput', '../../devices/virtual/misc/network_throughput') +l('sys/class/misc/microcode', '../../devices/virtual/misc/microcode') +d('sys/class/vtconsole', 0o755) +l('sys/class/vtconsole/vtcon1', '../../devices/virtual/vtconsole/vtcon1') +l('sys/class/vtconsole/vtcon0', '../../devices/virtual/vtconsole/vtcon0') +d('sys/class/bsg', 0o755) +l('sys/class/bsg/7:0:0:0', '../../devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/bsg/7:0:0:0') +l('sys/class/bsg/0:0:0:0', '../../devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/bsg/0:0:0:0') +l('sys/class/bsg/4:0:0:0', '../../devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/bsg/4:0:0:0') +d('sys/class/input', 0o755) +l('sys/class/input/event0', '../../devices/platform/i8042/serio0/input/input0/event0') +l('sys/class/input/input0', '../../devices/platform/i8042/serio0/input/input0') +l('sys/class/input/event4', '../../devices/LNXSYSTM:00/device:00/PNP0C0D:00/input/input4/event4') +l('sys/class/input/mouse0', '../../devices/platform/i8042/serio1/input/input1/mouse0') +l('sys/class/input/mouse1', '../../devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0/input/input8/mouse1') +l('sys/class/input/event2', '../../devices/platform/pcspkr/input/input2/event2') +l('sys/class/input/input2', '../../devices/platform/pcspkr/input/input2') +l('sys/class/input/input5', '../../devices/LNXSYSTM:00/device:00/PNP0C0E:00/input/input5') +l('sys/class/input/input8', '../../devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0/input/input8') +l('sys/class/input/input3', '../../devices/LNXSYSTM:00/LNXPWRBN:00/input/input3') +l('sys/class/input/input1', '../../devices/platform/i8042/serio1/input/input1') +l('sys/class/input/mice', '../../devices/virtual/input/mice') +l('sys/class/input/event6', '../../devices/virtual/input/input6/event6') +l('sys/class/input/input6', '../../devices/virtual/input/input6') +l('sys/class/input/event3', '../../devices/LNXSYSTM:00/LNXPWRBN:00/input/input3/event3') +l('sys/class/input/event1', '../../devices/platform/i8042/serio1/input/input1/event1') +l('sys/class/input/input4', '../../devices/LNXSYSTM:00/device:00/PNP0C0D:00/input/input4') +l('sys/class/input/event7', '../../devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0/input/input8/event7') +l('sys/class/input/event5', '../../devices/LNXSYSTM:00/device:00/PNP0C0E:00/input/input5/event5') +d('sys/class/thermal', 0o755) +l('sys/class/thermal/thermal_zone1', '../../devices/virtual/thermal/thermal_zone1') +l('sys/class/thermal/cooling_device1', '../../devices/virtual/thermal/cooling_device1') +l('sys/class/thermal/cooling_device0', '../../devices/virtual/thermal/cooling_device0') +l('sys/class/thermal/thermal_zone0', '../../devices/virtual/thermal/thermal_zone0') +d('sys/class/power_supply', 0o755) +l('sys/class/power_supply/AC', '../../devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/ACPI0003:00/power_supply/AC') +l('sys/class/power_supply/BAT0', '../../devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/PNP0C0A:00/power_supply/BAT0') +d('sys/class/block', 0o755) +l('sys/class/block/loop1', '../../devices/virtual/block/loop1') +l('sys/class/block/loop7', '../../devices/virtual/block/loop7') +l('sys/class/block/loop0', '../../devices/virtual/block/loop0') +l('sys/class/block/sda10', '../../devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda10') +l('sys/class/block/sr0', '../../devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/block/sr0') +l('sys/class/block/loop5', '../../devices/virtual/block/loop5') +l('sys/class/block/loop3', '../../devices/virtual/block/loop3') +l('sys/class/block/sda9', '../../devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda9') +l('sys/class/block/sda7', '../../devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda7') +l('sys/class/block/loop6', '../../devices/virtual/block/loop6') +l('sys/class/block/sdb', '../../devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/block/sdb') +l('sys/class/block/sda1', '../../devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda1') +l('sys/class/block/loop2', '../../devices/virtual/block/loop2') +l('sys/class/block/sda8', '../../devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda8') +l('sys/class/block/sda5', '../../devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda5') +l('sys/class/block/loop4', '../../devices/virtual/block/loop4') +l('sys/class/block/sda6', '../../devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda6') +l('sys/class/block/sda', '../../devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda') +l('sys/class/block/md0', '../../devices/virtual/block/md0') +l('sys/class/block/sdb1', '../../devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/block/sdb/sdb1') +d('sys/class/scsi_host', 0o755) +l('sys/class/scsi_host/host0', '../../devices/pci0000:00/0000:00:1f.2/host0/scsi_host/host0') +l('sys/class/scsi_host/host5', '../../devices/pci0000:00/0000:00:1f.1/host5/scsi_host/host5') +l('sys/class/scsi_host/host1', '../../devices/pci0000:00/0000:00:1f.2/host1/scsi_host/host1') +l('sys/class/scsi_host/host4', '../../devices/pci0000:00/0000:00:1f.1/host4/scsi_host/host4') +l('sys/class/scsi_host/host2', '../../devices/pci0000:00/0000:00:1f.2/host2/scsi_host/host2') +l('sys/class/scsi_host/host7', '../../devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/scsi_host/host7') +l('sys/class/scsi_host/host3', '../../devices/pci0000:00/0000:00:1f.2/host3/scsi_host/host3') +d('sys/class/graphics', 0o755) +l('sys/class/graphics/fbcon', '../../devices/virtual/graphics/fbcon') +l('sys/class/graphics/fb0', '../../devices/platform/vesafb.0/graphics/fb0') +d('sys/class/tty', 0o755) +l('sys/class/tty/tty51', '../../devices/virtual/tty/tty51') +l('sys/class/tty/tty24', '../../devices/virtual/tty/tty24') +l('sys/class/tty/tty61', '../../devices/virtual/tty/tty61') +l('sys/class/tty/ttyS1', '../../devices/platform/serial8250/tty/ttyS1') +l('sys/class/tty/tty40', '../../devices/virtual/tty/tty40') +l('sys/class/tty/tty60', '../../devices/virtual/tty/tty60') +l('sys/class/tty/tty15', '../../devices/virtual/tty/tty15') +l('sys/class/tty/tty27', '../../devices/virtual/tty/tty27') +l('sys/class/tty/tty7', '../../devices/virtual/tty/tty7') +l('sys/class/tty/tty43', '../../devices/virtual/tty/tty43') +l('sys/class/tty/tty23', '../../devices/virtual/tty/tty23') +l('sys/class/tty/tty14', '../../devices/virtual/tty/tty14') +l('sys/class/tty/tty56', '../../devices/virtual/tty/tty56') +l('sys/class/tty/tty3', '../../devices/virtual/tty/tty3') +l('sys/class/tty/ttyS3', '../../devices/platform/serial8250/tty/ttyS3') +l('sys/class/tty/tty49', '../../devices/virtual/tty/tty49') +l('sys/class/tty/tty47', '../../devices/virtual/tty/tty47') +l('sys/class/tty/tty57', '../../devices/virtual/tty/tty57') +l('sys/class/tty/tty30', '../../devices/virtual/tty/tty30') +l('sys/class/tty/tty45', '../../devices/virtual/tty/tty45') +l('sys/class/tty/tty22', '../../devices/virtual/tty/tty22') +l('sys/class/tty/tty55', '../../devices/virtual/tty/tty55') +l('sys/class/tty/tty11', '../../devices/virtual/tty/tty11') +l('sys/class/tty/tty53', '../../devices/virtual/tty/tty53') +l('sys/class/tty/tty12', '../../devices/virtual/tty/tty12') +l('sys/class/tty/tty28', '../../devices/virtual/tty/tty28') +l('sys/class/tty/tty58', '../../devices/virtual/tty/tty58') +l('sys/class/tty/tty32', '../../devices/virtual/tty/tty32') +l('sys/class/tty/tty44', '../../devices/virtual/tty/tty44') +l('sys/class/tty/tty6', '../../devices/virtual/tty/tty6') +l('sys/class/tty/tty9', '../../devices/virtual/tty/tty9') +l('sys/class/tty/tty26', '../../devices/virtual/tty/tty26') +l('sys/class/tty/tty10', '../../devices/virtual/tty/tty10') +l('sys/class/tty/tty39', '../../devices/virtual/tty/tty39') +l('sys/class/tty/tty0', '../../devices/virtual/tty/tty0') +l('sys/class/tty/tty36', '../../devices/virtual/tty/tty36') +l('sys/class/tty/tty34', '../../devices/virtual/tty/tty34') +l('sys/class/tty/tty16', '../../devices/virtual/tty/tty16') +l('sys/class/tty/tty25', '../../devices/virtual/tty/tty25') +l('sys/class/tty/tty13', '../../devices/virtual/tty/tty13') +l('sys/class/tty/tty52', '../../devices/virtual/tty/tty52') +l('sys/class/tty/ttyS0', '../../devices/platform/serial8250/tty/ttyS0') +l('sys/class/tty/tty31', '../../devices/virtual/tty/tty31') +l('sys/class/tty/tty35', '../../devices/virtual/tty/tty35') +l('sys/class/tty/tty54', '../../devices/virtual/tty/tty54') +l('sys/class/tty/tty63', '../../devices/virtual/tty/tty63') +l('sys/class/tty/tty1', '../../devices/virtual/tty/tty1') +l('sys/class/tty/tty33', '../../devices/virtual/tty/tty33') +l('sys/class/tty/tty18', '../../devices/virtual/tty/tty18') +l('sys/class/tty/ttyACM0', '../../devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.0/tty/ttyACM0') +l('sys/class/tty/tty42', '../../devices/virtual/tty/tty42') +l('sys/class/tty/tty8', '../../devices/virtual/tty/tty8') +l('sys/class/tty/tty37', '../../devices/virtual/tty/tty37') +l('sys/class/tty/tty5', '../../devices/virtual/tty/tty5') +l('sys/class/tty/tty48', '../../devices/virtual/tty/tty48') +l('sys/class/tty/tty17', '../../devices/virtual/tty/tty17') +l('sys/class/tty/tty62', '../../devices/virtual/tty/tty62') +l('sys/class/tty/tty59', '../../devices/virtual/tty/tty59') +l('sys/class/tty/tty50', '../../devices/virtual/tty/tty50') +l('sys/class/tty/tty21', '../../devices/virtual/tty/tty21') +l('sys/class/tty/ttyS2', '../../devices/platform/serial8250/tty/ttyS2') +l('sys/class/tty/tty19', '../../devices/virtual/tty/tty19') +l('sys/class/tty/ptmx', '../../devices/virtual/tty/ptmx') +l('sys/class/tty/tty46', '../../devices/virtual/tty/tty46') +l('sys/class/tty/tty2', '../../devices/virtual/tty/tty2') +l('sys/class/tty/console', '../../devices/virtual/tty/console') +l('sys/class/tty/tty41', '../../devices/virtual/tty/tty41') +l('sys/class/tty/tty4', '../../devices/virtual/tty/tty4') +l('sys/class/tty/tty29', '../../devices/virtual/tty/tty29') +l('sys/class/tty/tty', '../../devices/virtual/tty/tty') +l('sys/class/tty/tty38', '../../devices/virtual/tty/tty38') +l('sys/class/tty/tty20', '../../devices/virtual/tty/tty20') +d('sys/class/scsi_device', 0o755) +l('sys/class/scsi_device/7:0:0:0', '../../devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/scsi_device/7:0:0:0') +l('sys/class/scsi_device/0:0:0:0', '../../devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/scsi_device/0:0:0:0') +l('sys/class/scsi_device/4:0:0:0', '../../devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/scsi_device/4:0:0:0') +d('sys/block', 0o755) +l('sys/block/loop1', '../devices/virtual/block/loop1') +l('sys/block/loop7', '../devices/virtual/block/loop7') +l('sys/block/loop0', '../devices/virtual/block/loop0') +l('sys/block/sr0', '../devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/block/sr0') +l('sys/block/loop5', '../devices/virtual/block/loop5') +l('sys/block/loop3', '../devices/virtual/block/loop3') +l('sys/block/loop6', '../devices/virtual/block/loop6') +l('sys/block/sdb', '../devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/block/sdb') +l('sys/block/loop2', '../devices/virtual/block/loop2') +l('sys/block/loop4', '../devices/virtual/block/loop4') +l('sys/block/sda', '../devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda') +l('sys/block/md0', '../devices/virtual/block/md0') +d('sys/devices', 0o755) +d('sys/devices/system', 0o755) +d('sys/devices/system/machinecheck', 0o755) +d('sys/devices/system/machinecheck/machinecheck1', 0o755) +f('sys/devices/system/machinecheck/machinecheck1/trigger', 0o644, b'\n') +f('sys/devices/system/machinecheck/machinecheck1/bank0ctl', 0o644, b'ffffffffffffffff\n') +f('sys/devices/system/machinecheck/machinecheck1/check_interval', 0o644, b'12c\n') +f('sys/devices/system/machinecheck/machinecheck1/tolerant', 0o644, b'1\n') +f('sys/devices/system/machinecheck/machinecheck1/bank1ctl', 0o644, b'ffffffffffffffff\n') +f('sys/devices/system/machinecheck/machinecheck1/bank5ctl', 0o644, b'ffffffffffffffff\n') +f('sys/devices/system/machinecheck/machinecheck1/bank3ctl', 0o644, b'ffffffffffffffff\n') +f('sys/devices/system/machinecheck/machinecheck1/bank2ctl', 0o644, b'ffffffffffffffff\n') +f('sys/devices/system/machinecheck/machinecheck1/bank4ctl', 0o644, b'ffffffffffffffff\n') +d('sys/devices/system/machinecheck/machinecheck0', 0o755) +f('sys/devices/system/machinecheck/machinecheck0/trigger', 0o644, b'\n') +f('sys/devices/system/machinecheck/machinecheck0/bank0ctl', 0o644, b'ffffffffffffffff\n') +f('sys/devices/system/machinecheck/machinecheck0/check_interval', 0o644, b'12c\n') +f('sys/devices/system/machinecheck/machinecheck0/tolerant', 0o644, b'1\n') +f('sys/devices/system/machinecheck/machinecheck0/bank1ctl', 0o644, b'ffffffffffffffff\n') +f('sys/devices/system/machinecheck/machinecheck0/bank5ctl', 0o644, b'ffffffffffffffff\n') +f('sys/devices/system/machinecheck/machinecheck0/bank3ctl', 0o644, b'ffffffffffffffff\n') +f('sys/devices/system/machinecheck/machinecheck0/bank2ctl', 0o644, b'ffffffffffffffff\n') +f('sys/devices/system/machinecheck/machinecheck0/bank4ctl', 0o644, b'ffffffffffffffff\n') +d('sys/devices/system/clocksource', 0o755) +d('sys/devices/system/clocksource/clocksource0', 0o755) +f('sys/devices/system/clocksource/clocksource0/available_clocksource', 0o644, b'hpet acpi_pm jiffies tsc \n') +f('sys/devices/system/clocksource/clocksource0/current_clocksource', 0o644, b'hpet\n') +d('sys/devices/system/cpu', 0o755) +f('sys/devices/system/cpu/possible', 0o644, b'0-1\n') +f('sys/devices/system/cpu/online', 0o644, b'0-1\n') +f('sys/devices/system/cpu/present', 0o644, b'0-1\n') +f('sys/devices/system/cpu/sched_mc_power_savings', 0o644, b'1\n') +d('sys/devices/system/cpu/cpu0', 0o755) +f('sys/devices/system/cpu/cpu0/crash_notes', 0o644, b'7fb20920\n') +d('sys/devices/system/cpu/cpu0/topology', 0o755) +f('sys/devices/system/cpu/cpu0/topology/thread_siblings', 0o644, b'01\n') +f('sys/devices/system/cpu/cpu0/topology/thread_siblings_list', 0o644, b'0\n') +f('sys/devices/system/cpu/cpu0/topology/core_siblings_list', 0o644, b'0-1\n') +f('sys/devices/system/cpu/cpu0/topology/core_siblings', 0o644, b'03\n') +f('sys/devices/system/cpu/cpu0/topology/core_id', 0o644, b'0\n') +f('sys/devices/system/cpu/cpu0/topology/physical_package_id', 0o644, b'0\n') +d('sys/devices/system/cpu/cpu0/thermal_throttle', 0o755) +f('sys/devices/system/cpu/cpu0/thermal_throttle/count', 0o644, b'0\n') +d('sys/devices/system/cpu/cpu0/cache', 0o755) +d('sys/devices/system/cpu/cpu0/cache/index0', 0o755) +f('sys/devices/system/cpu/cpu0/cache/index0/ways_of_associativity', 0o644, b'8\n') +f('sys/devices/system/cpu/cpu0/cache/index0/type', 0o644, b'Data\n') +f('sys/devices/system/cpu/cpu0/cache/index0/coherency_line_size', 0o644, b'64\n') +f('sys/devices/system/cpu/cpu0/cache/index0/number_of_sets', 0o644, b'64\n') +f('sys/devices/system/cpu/cpu0/cache/index0/size', 0o644, b'32K\n') +f('sys/devices/system/cpu/cpu0/cache/index0/physical_line_partition', 0o644, b'1\n') +f('sys/devices/system/cpu/cpu0/cache/index0/shared_cpu_map', 0o644, b'01\n') +f('sys/devices/system/cpu/cpu0/cache/index0/level', 0o644, b'1\n') +f('sys/devices/system/cpu/cpu0/cache/index0/shared_cpu_list', 0o644, b'0\n') +d('sys/devices/system/cpu/cpu0/cache/index2', 0o755) +f('sys/devices/system/cpu/cpu0/cache/index2/ways_of_associativity', 0o644, b'16\n') +f('sys/devices/system/cpu/cpu0/cache/index2/type', 0o644, b'Unified\n') +f('sys/devices/system/cpu/cpu0/cache/index2/coherency_line_size', 0o644, b'64\n') +f('sys/devices/system/cpu/cpu0/cache/index2/number_of_sets', 0o644, b'4096\n') +f('sys/devices/system/cpu/cpu0/cache/index2/size', 0o644, b'4096K\n') +f('sys/devices/system/cpu/cpu0/cache/index2/physical_line_partition', 0o644, b'1\n') +f('sys/devices/system/cpu/cpu0/cache/index2/shared_cpu_map', 0o644, b'03\n') +f('sys/devices/system/cpu/cpu0/cache/index2/level', 0o644, b'2\n') +f('sys/devices/system/cpu/cpu0/cache/index2/shared_cpu_list', 0o644, b'0-1\n') +d('sys/devices/system/cpu/cpu0/cache/index1', 0o755) +f('sys/devices/system/cpu/cpu0/cache/index1/ways_of_associativity', 0o644, b'8\n') +f('sys/devices/system/cpu/cpu0/cache/index1/type', 0o644, b'Instruction\n') +f('sys/devices/system/cpu/cpu0/cache/index1/coherency_line_size', 0o644, b'64\n') +f('sys/devices/system/cpu/cpu0/cache/index1/number_of_sets', 0o644, b'64\n') +f('sys/devices/system/cpu/cpu0/cache/index1/size', 0o644, b'32K\n') +f('sys/devices/system/cpu/cpu0/cache/index1/physical_line_partition', 0o644, b'1\n') +f('sys/devices/system/cpu/cpu0/cache/index1/shared_cpu_map', 0o644, b'01\n') +f('sys/devices/system/cpu/cpu0/cache/index1/level', 0o644, b'1\n') +f('sys/devices/system/cpu/cpu0/cache/index1/shared_cpu_list', 0o644, b'0\n') +d('sys/devices/system/cpu/cpu0/cpuidle', 0o755) +d('sys/devices/system/cpu/cpu0/cpuidle/state2', 0o755) +f('sys/devices/system/cpu/cpu0/cpuidle/state2/desc', 0o644, b'ACPI FFH INTEL MWAIT 0x10\n') +f('sys/devices/system/cpu/cpu0/cpuidle/state2/power', 0o644, b'500\n') +f('sys/devices/system/cpu/cpu0/cpuidle/state2/latency', 0o644, b'1\n') +f('sys/devices/system/cpu/cpu0/cpuidle/state2/usage', 0o644, b'689\n') +f('sys/devices/system/cpu/cpu0/cpuidle/state2/name', 0o644, b'C2\n') +f('sys/devices/system/cpu/cpu0/cpuidle/state2/time', 0o644, b'209561\n') +d('sys/devices/system/cpu/cpu0/cpuidle/state3', 0o755) +f('sys/devices/system/cpu/cpu0/cpuidle/state3/desc', 0o644, b'ACPI FFH INTEL MWAIT 0x30\n') +f('sys/devices/system/cpu/cpu0/cpuidle/state3/power', 0o644, b'100\n') +f('sys/devices/system/cpu/cpu0/cpuidle/state3/latency', 0o644, b'57\n') +f('sys/devices/system/cpu/cpu0/cpuidle/state3/usage', 0o644, b'11774\n') +f('sys/devices/system/cpu/cpu0/cpuidle/state3/name', 0o644, b'C3\n') +f('sys/devices/system/cpu/cpu0/cpuidle/state3/time', 0o644, b'116651688\n') +d('sys/devices/system/cpu/cpu0/cpuidle/state1', 0o755) +f('sys/devices/system/cpu/cpu0/cpuidle/state1/desc', 0o644, b'ACPI FFH INTEL MWAIT 0x0\n') +f('sys/devices/system/cpu/cpu0/cpuidle/state1/power', 0o644, b'1000\n') +f('sys/devices/system/cpu/cpu0/cpuidle/state1/latency', 0o644, b'1\n') +f('sys/devices/system/cpu/cpu0/cpuidle/state1/usage', 0o644, b'2\n') +f('sys/devices/system/cpu/cpu0/cpuidle/state1/name', 0o644, b'C1\n') +f('sys/devices/system/cpu/cpu0/cpuidle/state1/time', 0o644, b'1044\n') +d('sys/devices/system/cpu/cpu0/cpuidle/state0', 0o755) +f('sys/devices/system/cpu/cpu0/cpuidle/state0/desc', 0o644, b'<null>\n') +f('sys/devices/system/cpu/cpu0/cpuidle/state0/power', 0o644, b'4294967295\n') +f('sys/devices/system/cpu/cpu0/cpuidle/state0/latency', 0o644, b'0\n') +f('sys/devices/system/cpu/cpu0/cpuidle/state0/usage', 0o644, b'0\n') +f('sys/devices/system/cpu/cpu0/cpuidle/state0/name', 0o644, b'<null>\n') +f('sys/devices/system/cpu/cpu0/cpuidle/state0/time', 0o644, b'0\n') +d('sys/devices/system/cpu/cpu0/cpufreq', 0o755) +f('sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq', 0o644, b'1000000\n') +f('sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_max_freq', 0o644, b'2333000\n') +f('sys/devices/system/cpu/cpu0/cpufreq/scaling_available_frequencies', 0o644, b'2333000 2000000 1667000 1333000 1000000 \n') +f('sys/devices/system/cpu/cpu0/cpufreq/scaling_governor', 0o644, b'ondemand\n') +f('sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governors', 0o644, b'ondemand performance \n') +f('sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_cur_freq', 0o644, b'1000000\n') +f('sys/devices/system/cpu/cpu0/cpufreq/affected_cpus', 0o644, b'0 1\n') +f('sys/devices/system/cpu/cpu0/cpufreq/related_cpus', 0o644, b'0 1\n') +f('sys/devices/system/cpu/cpu0/cpufreq/scaling_setspeed', 0o644, b'<unsupported>\n') +f('sys/devices/system/cpu/cpu0/cpufreq/scaling_driver', 0o644, b'acpi-cpufreq\n') +f('sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq', 0o644, b'1000000\n') +f('sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq', 0o644, b'1000000\n') +f('sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_min_freq', 0o644, b'1000000\n') +d('sys/devices/system/cpu/cpu0/cpufreq/stats', 0o755) +f('sys/devices/system/cpu/cpu0/cpufreq/stats/total_trans', 0o644, b'12627\n') +f('sys/devices/system/cpu/cpu0/cpufreq/stats/time_in_state', 0o644, b'''2333000 92206 +2000000 442 +1667000 1009 +1333000 1713 +1000000 740740 +''') +d('sys/devices/system/cpu/cpu0/cpufreq/ondemand', 0o755) +f('sys/devices/system/cpu/cpu0/cpufreq/ondemand/powersave_bias', 0o644, b'0\n') +f('sys/devices/system/cpu/cpu0/cpufreq/ondemand/sampling_rate_max', 0o644, b'10000000\n') +f('sys/devices/system/cpu/cpu0/cpufreq/ondemand/sampling_rate', 0o644, b'20000\n') +f('sys/devices/system/cpu/cpu0/cpufreq/ondemand/up_threshold', 0o644, b'90\n') +f('sys/devices/system/cpu/cpu0/cpufreq/ondemand/ignore_nice_load', 0o644, b'1\n') +f('sys/devices/system/cpu/cpu0/cpufreq/ondemand/sampling_rate_min', 0o644, b'10000\n') +d('sys/devices/system/cpu/cpu0/microcode', 0o755) +f('sys/devices/system/cpu/cpu0/microcode/version', 0o644, b'0xc7\n') +f('sys/devices/system/cpu/cpu0/microcode/processor_flags', 0o644, b'0x20\n') +d('sys/devices/system/cpu/cpuidle', 0o755) +f('sys/devices/system/cpu/cpuidle/current_driver', 0o644, b'acpi_idle\n') +f('sys/devices/system/cpu/cpuidle/current_governor_ro', 0o644, b'menu\n') +d('sys/devices/system/cpu/cpu1', 0o755) +l('sys/devices/system/cpu/cpu1/cpufreq', '../cpu0/cpufreq') +f('sys/devices/system/cpu/cpu1/crash_notes', 0o644, b'7fb20b68\n') +f('sys/devices/system/cpu/cpu1/online', 0o644, b'1\n') +d('sys/devices/system/cpu/cpu1/topology', 0o755) +f('sys/devices/system/cpu/cpu1/topology/thread_siblings', 0o644, b'02\n') +f('sys/devices/system/cpu/cpu1/topology/thread_siblings_list', 0o644, b'1\n') +f('sys/devices/system/cpu/cpu1/topology/core_siblings_list', 0o644, b'0-1\n') +f('sys/devices/system/cpu/cpu1/topology/core_siblings', 0o644, b'03\n') +f('sys/devices/system/cpu/cpu1/topology/core_id', 0o644, b'1\n') +f('sys/devices/system/cpu/cpu1/topology/physical_package_id', 0o644, b'0\n') +d('sys/devices/system/cpu/cpu1/thermal_throttle', 0o755) +f('sys/devices/system/cpu/cpu1/thermal_throttle/count', 0o644, b'0\n') +d('sys/devices/system/cpu/cpu1/cache', 0o755) +d('sys/devices/system/cpu/cpu1/cache/index0', 0o755) +f('sys/devices/system/cpu/cpu1/cache/index0/ways_of_associativity', 0o644, b'8\n') +f('sys/devices/system/cpu/cpu1/cache/index0/type', 0o644, b'Data\n') +f('sys/devices/system/cpu/cpu1/cache/index0/coherency_line_size', 0o644, b'64\n') +f('sys/devices/system/cpu/cpu1/cache/index0/number_of_sets', 0o644, b'64\n') +f('sys/devices/system/cpu/cpu1/cache/index0/size', 0o644, b'32K\n') +f('sys/devices/system/cpu/cpu1/cache/index0/physical_line_partition', 0o644, b'1\n') +f('sys/devices/system/cpu/cpu1/cache/index0/shared_cpu_map', 0o644, b'02\n') +f('sys/devices/system/cpu/cpu1/cache/index0/level', 0o644, b'1\n') +f('sys/devices/system/cpu/cpu1/cache/index0/shared_cpu_list', 0o644, b'1\n') +d('sys/devices/system/cpu/cpu1/cache/index2', 0o755) +f('sys/devices/system/cpu/cpu1/cache/index2/ways_of_associativity', 0o644, b'16\n') +f('sys/devices/system/cpu/cpu1/cache/index2/type', 0o644, b'Unified\n') +f('sys/devices/system/cpu/cpu1/cache/index2/coherency_line_size', 0o644, b'64\n') +f('sys/devices/system/cpu/cpu1/cache/index2/number_of_sets', 0o644, b'4096\n') +f('sys/devices/system/cpu/cpu1/cache/index2/size', 0o644, b'4096K\n') +f('sys/devices/system/cpu/cpu1/cache/index2/physical_line_partition', 0o644, b'1\n') +f('sys/devices/system/cpu/cpu1/cache/index2/shared_cpu_map', 0o644, b'03\n') +f('sys/devices/system/cpu/cpu1/cache/index2/level', 0o644, b'2\n') +f('sys/devices/system/cpu/cpu1/cache/index2/shared_cpu_list', 0o644, b'0-1\n') +d('sys/devices/system/cpu/cpu1/cache/index1', 0o755) +f('sys/devices/system/cpu/cpu1/cache/index1/ways_of_associativity', 0o644, b'8\n') +f('sys/devices/system/cpu/cpu1/cache/index1/type', 0o644, b'Instruction\n') +f('sys/devices/system/cpu/cpu1/cache/index1/coherency_line_size', 0o644, b'64\n') +f('sys/devices/system/cpu/cpu1/cache/index1/number_of_sets', 0o644, b'64\n') +f('sys/devices/system/cpu/cpu1/cache/index1/size', 0o644, b'32K\n') +f('sys/devices/system/cpu/cpu1/cache/index1/physical_line_partition', 0o644, b'1\n') +f('sys/devices/system/cpu/cpu1/cache/index1/shared_cpu_map', 0o644, b'02\n') +f('sys/devices/system/cpu/cpu1/cache/index1/level', 0o644, b'1\n') +f('sys/devices/system/cpu/cpu1/cache/index1/shared_cpu_list', 0o644, b'1\n') +d('sys/devices/system/cpu/cpu1/cpuidle', 0o755) +d('sys/devices/system/cpu/cpu1/cpuidle/state2', 0o755) +f('sys/devices/system/cpu/cpu1/cpuidle/state2/desc', 0o644, b'ACPI FFH INTEL MWAIT 0x10\n') +f('sys/devices/system/cpu/cpu1/cpuidle/state2/power', 0o644, b'500\n') +f('sys/devices/system/cpu/cpu1/cpuidle/state2/latency', 0o644, b'1\n') +f('sys/devices/system/cpu/cpu1/cpuidle/state2/usage', 0o644, b'271\n') +f('sys/devices/system/cpu/cpu1/cpuidle/state2/name', 0o644, b'C2\n') +f('sys/devices/system/cpu/cpu1/cpuidle/state2/time', 0o644, b'47233\n') +d('sys/devices/system/cpu/cpu1/cpuidle/state3', 0o755) +f('sys/devices/system/cpu/cpu1/cpuidle/state3/desc', 0o644, b'ACPI FFH INTEL MWAIT 0x30\n') +f('sys/devices/system/cpu/cpu1/cpuidle/state3/power', 0o644, b'100\n') +f('sys/devices/system/cpu/cpu1/cpuidle/state3/latency', 0o644, b'57\n') +f('sys/devices/system/cpu/cpu1/cpuidle/state3/usage', 0o644, b'10601\n') +f('sys/devices/system/cpu/cpu1/cpuidle/state3/name', 0o644, b'C3\n') +f('sys/devices/system/cpu/cpu1/cpuidle/state3/time', 0o644, b'117038054\n') +d('sys/devices/system/cpu/cpu1/cpuidle/state1', 0o755) +f('sys/devices/system/cpu/cpu1/cpuidle/state1/desc', 0o644, b'ACPI FFH INTEL MWAIT 0x0\n') +f('sys/devices/system/cpu/cpu1/cpuidle/state1/power', 0o644, b'1000\n') +f('sys/devices/system/cpu/cpu1/cpuidle/state1/latency', 0o644, b'1\n') +f('sys/devices/system/cpu/cpu1/cpuidle/state1/usage', 0o644, b'1\n') +f('sys/devices/system/cpu/cpu1/cpuidle/state1/name', 0o644, b'C1\n') +f('sys/devices/system/cpu/cpu1/cpuidle/state1/time', 0o644, b'8\n') +d('sys/devices/system/cpu/cpu1/cpuidle/state0', 0o755) +f('sys/devices/system/cpu/cpu1/cpuidle/state0/desc', 0o644, b'<null>\n') +f('sys/devices/system/cpu/cpu1/cpuidle/state0/power', 0o644, b'4294967295\n') +f('sys/devices/system/cpu/cpu1/cpuidle/state0/latency', 0o644, b'0\n') +f('sys/devices/system/cpu/cpu1/cpuidle/state0/usage', 0o644, b'0\n') +f('sys/devices/system/cpu/cpu1/cpuidle/state0/name', 0o644, b'<null>\n') +f('sys/devices/system/cpu/cpu1/cpuidle/state0/time', 0o644, b'0\n') +d('sys/devices/system/cpu/cpu1/microcode', 0o755) +f('sys/devices/system/cpu/cpu1/microcode/version', 0o644, b'0xc7\n') +f('sys/devices/system/cpu/cpu1/microcode/processor_flags', 0o644, b'0x20\n') +d('sys/devices/pnp0', 0o755) +f('sys/devices/pnp0/uevent', 0o644, b'') +d('sys/devices/pnp0/00:04', 0o755) +l('sys/devices/pnp0/00:04/firmware_node', '../../LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0200:00') +l('sys/devices/pnp0/00:04/subsystem', '../../../bus/pnp') +f('sys/devices/pnp0/00:04/options', 0o644, b'') +f('sys/devices/pnp0/00:04/id', 0o644, b'PNP0200\n') +f('sys/devices/pnp0/00:04/resources', 0o644, b'''state = active +io 0x0-0xf +io 0x80-0x8f +io 0xc0-0xdf +dma 4 +''') +f('sys/devices/pnp0/00:04/uevent', 0o644, b'') +d('sys/devices/pnp0/00:04/power', 0o755) +f('sys/devices/pnp0/00:04/power/wakeup', 0o644, b'\n') +d('sys/devices/pnp0/00:0a', 0o755) +l('sys/devices/pnp0/00:0a/firmware_node', '../../LNXSYSTM:00/device:00/PNP0A08:00/device:01/ATM1200:00') +l('sys/devices/pnp0/00:0a/subsystem', '../../../bus/pnp') +f('sys/devices/pnp0/00:0a/options', 0o644, b'') +f('sys/devices/pnp0/00:0a/id', 0o644, b'''ATM1200 +PNP0c31 +''') +f('sys/devices/pnp0/00:0a/resources', 0o644, b'''state = active +mem 0xfed40000-0xfed40fff +''') +f('sys/devices/pnp0/00:0a/uevent', 0o644, b'') +d('sys/devices/pnp0/00:0a/power', 0o755) +f('sys/devices/pnp0/00:0a/power/wakeup', 0o644, b'\n') +d('sys/devices/pnp0/00:03', 0o755) +l('sys/devices/pnp0/00:03/firmware_node', '../../LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0103:00') +l('sys/devices/pnp0/00:03/subsystem', '../../../bus/pnp') +f('sys/devices/pnp0/00:03/options', 0o644, b'') +f('sys/devices/pnp0/00:03/id', 0o644, b'PNP0103\n') +f('sys/devices/pnp0/00:03/resources', 0o644, b'''state = active +mem 0xfed00000-0xfed003ff +''') +f('sys/devices/pnp0/00:03/uevent', 0o644, b'') +d('sys/devices/pnp0/00:03/power', 0o755) +f('sys/devices/pnp0/00:03/power/wakeup', 0o644, b'\n') +d('sys/devices/pnp0/00:02', 0o755) +l('sys/devices/pnp0/00:02/firmware_node', '../../LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C02:00') +l('sys/devices/pnp0/00:02/subsystem', '../../../bus/pnp') +l('sys/devices/pnp0/00:02/driver', '../../../bus/pnp/drivers/system') +f('sys/devices/pnp0/00:02/options', 0o644, b'') +f('sys/devices/pnp0/00:02/id', 0o644, b'PNP0c02\n') +f('sys/devices/pnp0/00:02/resources', 0o644, b'''state = active +io 0x10-0x1f +io 0x90-0x9f +io 0x24-0x25 +io 0x28-0x29 +io 0x2c-0x2d +io 0x30-0x31 +io 0x34-0x35 +io 0x38-0x39 +io 0x3c-0x3d +io 0xa4-0xa5 +io 0xa8-0xa9 +io 0xac-0xad +io 0xb0-0xb5 +io 0xb8-0xb9 +io 0xbc-0xbd +io 0x50-0x53 +io 0x72-0x77 +io 0x164e-0x164f +io 0x2e-0x2f +io 0x1000-0x107f +io 0x1180-0x11bf +io 0x800-0x80f +io 0x15e0-0x15ef +io 0x1600-0x165f +mem 0xf0000000-0xf3ffffff +mem 0xfed1c000-0xfed1ffff +mem 0xfed14000-0xfed17fff +mem 0xfed18000-0xfed18fff +mem 0xfed19000-0xfed19fff +''') +f('sys/devices/pnp0/00:02/uevent', 0o644, b'DRIVER=system\n') +d('sys/devices/pnp0/00:02/power', 0o755) +f('sys/devices/pnp0/00:02/power/wakeup', 0o644, b'\n') +d('sys/devices/pnp0/00:00', 0o755) +l('sys/devices/pnp0/00:00/firmware_node', '../../LNXSYSTM:00/device:00/PNP0C01:00') +l('sys/devices/pnp0/00:00/subsystem', '../../../bus/pnp') +l('sys/devices/pnp0/00:00/driver', '../../../bus/pnp/drivers/system') +f('sys/devices/pnp0/00:00/options', 0o644, b'') +f('sys/devices/pnp0/00:00/id', 0o644, b'PNP0c01\n') +f('sys/devices/pnp0/00:00/resources', 0o644, b'''state = active +mem 0x0-0x9ffff +mem 0xc0000-0xc3fff +mem 0xc4000-0xc7fff +mem 0xc8000-0xcbfff +mem 0xcc000-0xcffff +mem disabled +mem disabled +mem disabled +mem 0xdc000-0xdffff +mem 0xe0000-0xe3fff +mem 0xe4000-0xe7fff +mem 0xe8000-0xebfff +mem 0xec000-0xeffff +mem 0xf0000-0xfffff +mem 0x100000-0x7fffffff +mem 0xfec00000-0xfed3ffff +mem 0xfed41000-0xffffffff +''') +f('sys/devices/pnp0/00:00/uevent', 0o644, b'DRIVER=system\n') +d('sys/devices/pnp0/00:00/power', 0o755) +f('sys/devices/pnp0/00:00/power/wakeup', 0o644, b'\n') +d('sys/devices/pnp0/power', 0o755) +f('sys/devices/pnp0/power/wakeup', 0o644, b'\n') +d('sys/devices/pnp0/00:09', 0o755) +l('sys/devices/pnp0/00:09/firmware_node', '../../LNXSYSTM:00/device:00/PNP0A08:00/device:01/IBM0057:00') +l('sys/devices/pnp0/00:09/subsystem', '../../../bus/pnp') +l('sys/devices/pnp0/00:09/driver', '../../../bus/pnp/drivers/i8042 aux') +f('sys/devices/pnp0/00:09/options', 0o644, b'') +f('sys/devices/pnp0/00:09/id', 0o644, b'''IBM0057 +PNP0f13 +''') +f('sys/devices/pnp0/00:09/resources', 0o644, b'''state = active +irq 12 +''') +f('sys/devices/pnp0/00:09/uevent', 0o644, b'DRIVER=i8042 aux\n') +d('sys/devices/pnp0/00:09/power', 0o755) +f('sys/devices/pnp0/00:09/power/wakeup', 0o644, b'\n') +d('sys/devices/pnp0/00:07', 0o755) +l('sys/devices/pnp0/00:07/firmware_node', '../../LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0B00:00') +l('sys/devices/pnp0/00:07/subsystem', '../../../bus/pnp') +l('sys/devices/pnp0/00:07/driver', '../../../bus/pnp/drivers/rtc_cmos') +f('sys/devices/pnp0/00:07/options', 0o644, b'') +f('sys/devices/pnp0/00:07/id', 0o644, b'PNP0b00\n') +f('sys/devices/pnp0/00:07/nvram', 0o644, b'\x00\x00\x00\x00\x00\x00\x03\x80\x02\x00\xfc\x01\x00\x03\x00\x9f\x16\x00\x00\x02\x00\x00\x00\x01\x05\x00\x00\x11\x11\x01\x00\x00\x02e\x00\xfc \x8c\xc1\x01\x00|\x00\x00\x00\x00\x00\x00\x00\x00\x08D\xb0\x11\x00c\x11T/\x06\xd00\x80\x00\x00\x00\x00\x00\xc0\x05R\xfc\x01\x1d\x00[\x0f\x02\x03\x00\x00\x04\x04\x00\xdf8\xd3\xa0\x13r\xf2\x06\x13\xf9\xa7\xf1\x0e\x00\xc5\xfe\x00\x00\xf1\xff\xff\xff\xff\x00\x00\x00IS\xb2\x00') +f('sys/devices/pnp0/00:07/resources', 0o644, b'''state = active +io 0x70-0x71 +irq 8 +''') +f('sys/devices/pnp0/00:07/uevent', 0o644, b'DRIVER=rtc_cmos\n') +d('sys/devices/pnp0/00:07/rtc', 0o755) +d('sys/devices/pnp0/00:07/rtc/rtc0', 0o755) +l('sys/devices/pnp0/00:07/rtc/rtc0/subsystem', '../../../../../class/rtc') +l('sys/devices/pnp0/00:07/rtc/rtc0/device', '../../../00:07') +f('sys/devices/pnp0/00:07/rtc/rtc0/date', 0o644, b'2008-09-29\n') +f('sys/devices/pnp0/00:07/rtc/rtc0/dev', 0o644, b'253:0\n') +f('sys/devices/pnp0/00:07/rtc/rtc0/max_user_freq', 0o644, b'64\n') +f('sys/devices/pnp0/00:07/rtc/rtc0/wakealarm', 0o644, b'') +f('sys/devices/pnp0/00:07/rtc/rtc0/since_epoch', 0o644, b'1222655451\n') +f('sys/devices/pnp0/00:07/rtc/rtc0/name', 0o644, b'rtc_cmos\n') +f('sys/devices/pnp0/00:07/rtc/rtc0/time', 0o644, b'02:30:51\n') +f('sys/devices/pnp0/00:07/rtc/rtc0/uevent', 0o644, b'''MAJOR=253 +MINOR=0 +''') +d('sys/devices/pnp0/00:07/rtc/rtc0/power', 0o755) +f('sys/devices/pnp0/00:07/rtc/rtc0/power/wakeup', 0o644, b'\n') +d('sys/devices/pnp0/00:07/power', 0o755) +f('sys/devices/pnp0/00:07/power/wakeup', 0o644, b'enabled\n') +d('sys/devices/pnp0/00:06', 0o755) +l('sys/devices/pnp0/00:06/firmware_node', '../../LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C04:00') +l('sys/devices/pnp0/00:06/subsystem', '../../../bus/pnp') +f('sys/devices/pnp0/00:06/options', 0o644, b'') +f('sys/devices/pnp0/00:06/id', 0o644, b'PNP0c04\n') +f('sys/devices/pnp0/00:06/resources', 0o644, b'''state = active +io 0xf0-0xf0 +irq 13 +''') +f('sys/devices/pnp0/00:06/uevent', 0o644, b'') +d('sys/devices/pnp0/00:06/power', 0o755) +f('sys/devices/pnp0/00:06/power/wakeup', 0o644, b'\n') +d('sys/devices/pnp0/00:08', 0o755) +l('sys/devices/pnp0/00:08/firmware_node', '../../LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0303:00') +l('sys/devices/pnp0/00:08/subsystem', '../../../bus/pnp') +l('sys/devices/pnp0/00:08/driver', '../../../bus/pnp/drivers/i8042 kbd') +f('sys/devices/pnp0/00:08/options', 0o644, b'') +f('sys/devices/pnp0/00:08/id', 0o644, b'PNP0303\n') +f('sys/devices/pnp0/00:08/resources', 0o644, b'''state = active +io 0x60-0x60 +io 0x64-0x64 +irq 1 +''') +f('sys/devices/pnp0/00:08/uevent', 0o644, b'DRIVER=i8042 kbd\n') +d('sys/devices/pnp0/00:08/power', 0o755) +f('sys/devices/pnp0/00:08/power/wakeup', 0o644, b'\n') +d('sys/devices/pnp0/00:05', 0o755) +l('sys/devices/pnp0/00:05/firmware_node', '../../LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0800:00') +l('sys/devices/pnp0/00:05/subsystem', '../../../bus/pnp') +f('sys/devices/pnp0/00:05/options', 0o644, b'') +f('sys/devices/pnp0/00:05/id', 0o644, b'PNP0800\n') +f('sys/devices/pnp0/00:05/resources', 0o644, b'''state = active +io 0x61-0x61 +''') +f('sys/devices/pnp0/00:05/uevent', 0o644, b'') +d('sys/devices/pnp0/00:05/power', 0o755) +f('sys/devices/pnp0/00:05/power/wakeup', 0o644, b'\n') +d('sys/devices/pnp0/00:01', 0o755) +l('sys/devices/pnp0/00:01/subsystem', '../../../bus/pnp') +f('sys/devices/pnp0/00:01/options', 0o644, b'') +f('sys/devices/pnp0/00:01/id', 0o644, b'''PNP0a08 +PNP0a03 +''') +f('sys/devices/pnp0/00:01/resources', 0o644, b'''state = active +io 0xcf8-0xcff +''') +f('sys/devices/pnp0/00:01/uevent', 0o644, b'') +d('sys/devices/pnp0/00:01/power', 0o755) +f('sys/devices/pnp0/00:01/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00', 0o755) +l('sys/devices/pci0000:00/firmware_node', '../LNXSYSTM:00/device:00/PNP0A08:00') +f('sys/devices/pci0000:00/uevent', 0o644, b'') +d('sys/devices/pci0000:00/0000:00:1d.3', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.3/firmware_node', '../../LNXSYSTM:00/device:00/PNP0A08:00/device:20') +l('sys/devices/pci0000:00/0000:00:1d.3/subsystem', '../../../bus/pci') +l('sys/devices/pci0000:00/0000:00:1d.3/driver', '../../../bus/pci/drivers/uhci_hcd') +f('sys/devices/pci0000:00/0000:00:1d.3/local_cpulist', 0o644, b'0-7\n') +f('sys/devices/pci0000:00/0000:00:1d.3/enable', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1d.3/modalias', 0o644, b'pci:v00008086d000027CBsv000017AAsd0000200Abc0Csc03i00\n') +f('sys/devices/pci0000:00/0000:00:1d.3/resource', 0o644, b'''0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000001860 0x000000000000187f 0x0000000000020101 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +''') +f('sys/devices/pci0000:00/0000:00:1d.3/config', 0o644, b"\x86\x80\xcb'\x05\x00\x80\x02\x02\x00\x03\x0c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00a\x18\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xaa\x17\n \x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0b\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00'\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x86\x0f\x02\x00\x00\x00\x00\x00") +f('sys/devices/pci0000:00/0000:00:1d.3/local_cpus', 0o644, b'ff\n') +f('sys/devices/pci0000:00/0000:00:1d.3/subsystem_device', 0o644, b'0x200a\n') +f('sys/devices/pci0000:00/0000:00:1d.3/vendor', 0o644, b'0x8086\n') +f('sys/devices/pci0000:00/0000:00:1d.3/irq', 0o644, b'19\n') +f('sys/devices/pci0000:00/0000:00:1d.3/pools', 0o644, b'''poolinfo - 0.1 +uhci_qh 13 32 128 1 +uhci_td 3 64 64 1 +buffer-2048 0 0 2048 0 +buffer-512 0 0 512 0 +buffer-128 0 0 128 0 +buffer-32 1 128 32 1 +''') +f('sys/devices/pci0000:00/0000:00:1d.3/device', 0o644, b'0x27cb\n') +f('sys/devices/pci0000:00/0000:00:1d.3/class', 0o644, b'0x0c0300\n') +f('sys/devices/pci0000:00/0000:00:1d.3/msi_bus', 0o644, b'') +f('sys/devices/pci0000:00/0000:00:1d.3/subsystem_vendor', 0o644, b'0x17aa\n') +f('sys/devices/pci0000:00/0000:00:1d.3/uevent', 0o644, b'''DRIVER=uhci_hcd +PCI_CLASS=C0300 +PCI_ID=8086:27CB +PCI_SUBSYS_ID=17AA:200A +PCI_SLOT_NAME=0000:00:1d.3 +MODALIAS=pci:v00008086d000027CBsv000017AAsd0000200Abc0Csc03i00 +''') +f('sys/devices/pci0000:00/0000:00:1d.3/resource4', 0o644, b'') +f('sys/devices/pci0000:00/0000:00:1d.3/broken_parity_status', 0o644, b'0\n') +d('sys/devices/pci0000:00/0000:00:1d.3/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.3/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.3/usb_host', 0o755) +d('sys/devices/pci0000:00/0000:00:1d.3/usb_host/usb_host4', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.3/usb_host/usb_host4/subsystem', '../../../../../class/usb_host') +l('sys/devices/pci0000:00/0000:00:1d.3/usb_host/usb_host4/device', '../../../0000:00:1d.3') +f('sys/devices/pci0000:00/0000:00:1d.3/usb_host/usb_host4/uevent', 0o644, b'') +d('sys/devices/pci0000:00/0000:00:1d.3/usb_host/usb_host4/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.3/usb_host/usb_host4/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.3/usb4', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.3/usb4/subsystem', '../../../../bus/usb') +l('sys/devices/pci0000:00/0000:00:1d.3/usb4/driver', '../../../../bus/usb/drivers/usb') +l('sys/devices/pci0000:00/0000:00:1d.3/usb4/ep_00', 'usb_endpoint/usbdev4.1_ep00') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/version', 0o644, b' 1.10\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/authorized_default', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/maxchild', 0o644, b'2\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/bDeviceClass', 0o644, b'09\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/bcdDevice', 0o644, b'0206\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/devnum', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/bDeviceProtocol', 0o644, b'00\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/idProduct', 0o644, b'0001\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/product', 0o644, b'UHCI Host Controller\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/bDeviceSubClass', 0o644, b'00\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/configuration', 0o644, b'') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/dev', 0o644, b'189:384\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/urbnum', 0o644, b'62\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/authorized', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/descriptors', 0o644, b'\x12\x01\x10\x01\t\x00\x00@k\x1d\x01\x00\x06\x02\x03\x02\x01\x01\t\x02\x19\x00\x01\x01\x00\xe0\x00\t\x04\x00\x00\x01\t\x00\x00\x00\x07\x05\x81\x03\x02\x00\xff') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/bNumConfigurations', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/serial', 0o644, b'0000:00:1d.3\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/speed', 0o644, b'12\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/bMaxPacketSize0', 0o644, b'64\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/bmAttributes', 0o644, b'e0\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/busnum', 0o644, b'4\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/quirks', 0o644, b'0x0\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/bConfigurationValue', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/uevent', 0o644, b'''MAJOR=189 +MINOR=384 +DEVTYPE=usb_device +DRIVER=usb +PRODUCT=1d6b/1/206 +TYPE=9/0/0 +BUSNUM=004 +DEVNUM=001 +''') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/manufacturer', 0o644, b'Linux 2.6.27-rc7-00106-g6ef190c-dirty uhci_hcd\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/idVendor', 0o644, b'1d6b\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/bNumInterfaces', 0o644, b' 1\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/bMaxPower', 0o644, b' 0mA\n') +d('sys/devices/pci0000:00/0000:00:1d.3/usb4/usb_endpoint', 0o755) +d('sys/devices/pci0000:00/0000:00:1d.3/usb4/usb_endpoint/usbdev4.1_ep00', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.3/usb4/usb_endpoint/usbdev4.1_ep00/subsystem', '../../../../../../class/usb_endpoint') +l('sys/devices/pci0000:00/0000:00:1d.3/usb4/usb_endpoint/usbdev4.1_ep00/device', '../../../usb4') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/usb_endpoint/usbdev4.1_ep00/interval', 0o644, b'0ms\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/usb_endpoint/usbdev4.1_ep00/bEndpointAddress', 0o644, b'00\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/usb_endpoint/usbdev4.1_ep00/type', 0o644, b'Control\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/usb_endpoint/usbdev4.1_ep00/dev', 0o644, b'252:7\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/usb_endpoint/usbdev4.1_ep00/direction', 0o644, b'both\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/usb_endpoint/usbdev4.1_ep00/bLength', 0o644, b'07\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/usb_endpoint/usbdev4.1_ep00/wMaxPacketSize', 0o644, b'0040\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/usb_endpoint/usbdev4.1_ep00/bmAttributes', 0o644, b'00\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/usb_endpoint/usbdev4.1_ep00/uevent', 0o644, b'''MAJOR=252 +MINOR=7 +''') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/usb_endpoint/usbdev4.1_ep00/bInterval', 0o644, b'00\n') +d('sys/devices/pci0000:00/0000:00:1d.3/usb4/usb_endpoint/usbdev4.1_ep00/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/usb_endpoint/usbdev4.1_ep00/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/subsystem', '../../../../../bus/usb') +l('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/driver', '../../../../../bus/usb/drivers/usb') +l('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/ep_00', 'usb_endpoint/usbdev4.3_ep00') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/version', 0o644, b' 1.00\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/maxchild', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/bDeviceClass', 0o644, b'00\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/bcdDevice', 0o644, b'0001\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/devnum', 0o644, b'3\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/bDeviceProtocol', 0o644, b'00\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/idProduct', 0o644, b'2016\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/product', 0o644, b'Biometric Coprocessor\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/bDeviceSubClass', 0o644, b'00\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/configuration', 0o644, b'') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/dev', 0o644, b'189:386\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/urbnum', 0o644, b'9\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/authorized', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/descriptors', 0o644, b"\x12\x01\x00\x01\x00\x00\x00\x08\x83\x04\x16 \x01\x00\x01\x02\x00\x01\t\x02'\x00\x01\x01\x00\xa02\t\x04\x00\x00\x03\xff\x00\x00\x00\x07\x05\x81\x02@\x00\x00\x07\x05\x02\x02@\x00\x00\x07\x05\x83\x03\x04\x00\x14") +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/bNumConfigurations', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/speed', 0o644, b'12\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/bMaxPacketSize0', 0o644, b'8\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/bmAttributes', 0o644, b'a0\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/busnum', 0o644, b'4\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/quirks', 0o644, b'0x0\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/bConfigurationValue', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/uevent', 0o644, b'''MAJOR=189 +MINOR=386 +DEVTYPE=usb_device +DRIVER=usb +PRODUCT=483/2016/1 +TYPE=0/0/0 +BUSNUM=004 +DEVNUM=003 +''') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/manufacturer', 0o644, b'STMicroelectronics\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/idVendor', 0o644, b'0483\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/bNumInterfaces', 0o644, b' 1\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/bMaxPower', 0o644, b'100mA\n') +d('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/usb_endpoint', 0o755) +d('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/usb_endpoint/usbdev4.3_ep00', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/usb_endpoint/usbdev4.3_ep00/subsystem', '../../../../../../../class/usb_endpoint') +l('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/usb_endpoint/usbdev4.3_ep00/device', '../../../4-2') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/usb_endpoint/usbdev4.3_ep00/interval', 0o644, b'0ms\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/usb_endpoint/usbdev4.3_ep00/bEndpointAddress', 0o644, b'00\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/usb_endpoint/usbdev4.3_ep00/type', 0o644, b'Control\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/usb_endpoint/usbdev4.3_ep00/dev', 0o644, b'252:23\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/usb_endpoint/usbdev4.3_ep00/direction', 0o644, b'both\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/usb_endpoint/usbdev4.3_ep00/bLength', 0o644, b'07\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/usb_endpoint/usbdev4.3_ep00/wMaxPacketSize', 0o644, b'0008\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/usb_endpoint/usbdev4.3_ep00/bmAttributes', 0o644, b'00\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/usb_endpoint/usbdev4.3_ep00/uevent', 0o644, b'''MAJOR=252 +MINOR=23 +''') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/usb_endpoint/usbdev4.3_ep00/bInterval', 0o644, b'00\n') +d('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/usb_endpoint/usbdev4.3_ep00/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/usb_endpoint/usbdev4.3_ep00/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/power/active_duration', 0o644, b'8370363\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/power/wakeup', 0o644, b'enabled\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/power/connected_duration', 0o644, b'8370362\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/power/autosuspend', 0o644, b'2\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/power/persist', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/power/level', 0o644, b'on\n') +d('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/4-2:1.0', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/4-2:1.0/subsystem', '../../../../../../bus/usb') +l('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/4-2:1.0/ep_83', 'usb_endpoint/usbdev4.3_ep83') +l('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/4-2:1.0/ep_81', 'usb_endpoint/usbdev4.3_ep81') +l('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/4-2:1.0/ep_02', 'usb_endpoint/usbdev4.3_ep02') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/4-2:1.0/modalias', 0o644, b'usb:v0483p2016d0001dc00dsc00dp00icFFisc00ip00\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/4-2:1.0/bInterfaceNumber', 0o644, b'00\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/4-2:1.0/bNumEndpoints', 0o644, b'03\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/4-2:1.0/bInterfaceSubClass', 0o644, b'00\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/4-2:1.0/bAlternateSetting', 0o644, b' 0\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/4-2:1.0/bInterfaceClass', 0o644, b'ff\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/4-2:1.0/uevent', 0o644, b'''DEVTYPE=usb_interface +PRODUCT=483/2016/1 +TYPE=0/0/0 +INTERFACE=255/0/0 +MODALIAS=usb:v0483p2016d0001dc00dsc00dp00icFFisc00ip00 +''') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/4-2:1.0/bInterfaceProtocol', 0o644, b'00\n') +d('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/4-2:1.0/usb_endpoint', 0o755) +d('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/4-2:1.0/usb_endpoint/usbdev4.3_ep83', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/4-2:1.0/usb_endpoint/usbdev4.3_ep83/subsystem', '../../../../../../../../class/usb_endpoint') +l('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/4-2:1.0/usb_endpoint/usbdev4.3_ep83/device', '../../../4-2:1.0') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/4-2:1.0/usb_endpoint/usbdev4.3_ep83/interval', 0o644, b'20ms\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/4-2:1.0/usb_endpoint/usbdev4.3_ep83/bEndpointAddress', 0o644, b'83\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/4-2:1.0/usb_endpoint/usbdev4.3_ep83/type', 0o644, b'Interrupt\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/4-2:1.0/usb_endpoint/usbdev4.3_ep83/dev', 0o644, b'252:22\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/4-2:1.0/usb_endpoint/usbdev4.3_ep83/direction', 0o644, b'in\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/4-2:1.0/usb_endpoint/usbdev4.3_ep83/bLength', 0o644, b'07\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/4-2:1.0/usb_endpoint/usbdev4.3_ep83/wMaxPacketSize', 0o644, b'0004\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/4-2:1.0/usb_endpoint/usbdev4.3_ep83/bmAttributes', 0o644, b'03\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/4-2:1.0/usb_endpoint/usbdev4.3_ep83/uevent', 0o644, b'''MAJOR=252 +MINOR=22 +''') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/4-2:1.0/usb_endpoint/usbdev4.3_ep83/bInterval', 0o644, b'14\n') +d('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/4-2:1.0/usb_endpoint/usbdev4.3_ep83/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/4-2:1.0/usb_endpoint/usbdev4.3_ep83/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/4-2:1.0/usb_endpoint/usbdev4.3_ep81', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/4-2:1.0/usb_endpoint/usbdev4.3_ep81/subsystem', '../../../../../../../../class/usb_endpoint') +l('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/4-2:1.0/usb_endpoint/usbdev4.3_ep81/device', '../../../4-2:1.0') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/4-2:1.0/usb_endpoint/usbdev4.3_ep81/interval', 0o644, b'0ms\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/4-2:1.0/usb_endpoint/usbdev4.3_ep81/bEndpointAddress', 0o644, b'81\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/4-2:1.0/usb_endpoint/usbdev4.3_ep81/type', 0o644, b'Bulk\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/4-2:1.0/usb_endpoint/usbdev4.3_ep81/dev', 0o644, b'252:20\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/4-2:1.0/usb_endpoint/usbdev4.3_ep81/direction', 0o644, b'in\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/4-2:1.0/usb_endpoint/usbdev4.3_ep81/bLength', 0o644, b'07\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/4-2:1.0/usb_endpoint/usbdev4.3_ep81/wMaxPacketSize', 0o644, b'0040\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/4-2:1.0/usb_endpoint/usbdev4.3_ep81/bmAttributes', 0o644, b'02\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/4-2:1.0/usb_endpoint/usbdev4.3_ep81/uevent', 0o644, b'''MAJOR=252 +MINOR=20 +''') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/4-2:1.0/usb_endpoint/usbdev4.3_ep81/bInterval', 0o644, b'00\n') +d('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/4-2:1.0/usb_endpoint/usbdev4.3_ep81/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/4-2:1.0/usb_endpoint/usbdev4.3_ep81/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/4-2:1.0/usb_endpoint/usbdev4.3_ep02', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/4-2:1.0/usb_endpoint/usbdev4.3_ep02/subsystem', '../../../../../../../../class/usb_endpoint') +l('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/4-2:1.0/usb_endpoint/usbdev4.3_ep02/device', '../../../4-2:1.0') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/4-2:1.0/usb_endpoint/usbdev4.3_ep02/interval', 0o644, b'0ms\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/4-2:1.0/usb_endpoint/usbdev4.3_ep02/bEndpointAddress', 0o644, b'02\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/4-2:1.0/usb_endpoint/usbdev4.3_ep02/type', 0o644, b'Bulk\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/4-2:1.0/usb_endpoint/usbdev4.3_ep02/dev', 0o644, b'252:21\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/4-2:1.0/usb_endpoint/usbdev4.3_ep02/direction', 0o644, b'out\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/4-2:1.0/usb_endpoint/usbdev4.3_ep02/bLength', 0o644, b'07\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/4-2:1.0/usb_endpoint/usbdev4.3_ep02/wMaxPacketSize', 0o644, b'0040\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/4-2:1.0/usb_endpoint/usbdev4.3_ep02/bmAttributes', 0o644, b'02\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/4-2:1.0/usb_endpoint/usbdev4.3_ep02/uevent', 0o644, b'''MAJOR=252 +MINOR=21 +''') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/4-2:1.0/usb_endpoint/usbdev4.3_ep02/bInterval', 0o644, b'00\n') +d('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/4-2:1.0/usb_endpoint/usbdev4.3_ep02/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/4-2:1.0/usb_endpoint/usbdev4.3_ep02/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/4-2:1.0/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-2/4-2:1.0/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-0:1.0', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-0:1.0/subsystem', '../../../../../bus/usb') +l('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-0:1.0/ep_81', 'usb_endpoint/usbdev4.1_ep81') +l('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-0:1.0/driver', '../../../../../bus/usb/drivers/hub') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-0:1.0/modalias', 0o644, b'usb:v1D6Bp0001d0206dc09dsc00dp00ic09isc00ip00\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-0:1.0/bInterfaceNumber', 0o644, b'00\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-0:1.0/bNumEndpoints', 0o644, b'01\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-0:1.0/bInterfaceSubClass', 0o644, b'00\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-0:1.0/bAlternateSetting', 0o644, b' 0\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-0:1.0/bInterfaceClass', 0o644, b'09\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-0:1.0/uevent', 0o644, b'''DEVTYPE=usb_interface +DRIVER=hub +PRODUCT=1d6b/1/206 +TYPE=9/0/0 +INTERFACE=9/0/0 +MODALIAS=usb:v1D6Bp0001d0206dc09dsc00dp00ic09isc00ip00 +''') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-0:1.0/bInterfaceProtocol', 0o644, b'00\n') +d('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-0:1.0/usb_endpoint', 0o755) +d('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-0:1.0/usb_endpoint/usbdev4.1_ep81', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-0:1.0/usb_endpoint/usbdev4.1_ep81/subsystem', '../../../../../../../class/usb_endpoint') +l('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-0:1.0/usb_endpoint/usbdev4.1_ep81/device', '../../../4-0:1.0') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-0:1.0/usb_endpoint/usbdev4.1_ep81/interval', 0o644, b'255ms\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-0:1.0/usb_endpoint/usbdev4.1_ep81/bEndpointAddress', 0o644, b'81\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-0:1.0/usb_endpoint/usbdev4.1_ep81/type', 0o644, b'Interrupt\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-0:1.0/usb_endpoint/usbdev4.1_ep81/dev', 0o644, b'252:6\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-0:1.0/usb_endpoint/usbdev4.1_ep81/direction', 0o644, b'in\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-0:1.0/usb_endpoint/usbdev4.1_ep81/bLength', 0o644, b'07\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-0:1.0/usb_endpoint/usbdev4.1_ep81/wMaxPacketSize', 0o644, b'0002\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-0:1.0/usb_endpoint/usbdev4.1_ep81/bmAttributes', 0o644, b'03\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-0:1.0/usb_endpoint/usbdev4.1_ep81/uevent', 0o644, b'''MAJOR=252 +MINOR=6 +''') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-0:1.0/usb_endpoint/usbdev4.1_ep81/bInterval', 0o644, b'ff\n') +d('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-0:1.0/usb_endpoint/usbdev4.1_ep81/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-0:1.0/usb_endpoint/usbdev4.1_ep81/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-0:1.0/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-0:1.0/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.3/usb4/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/power/active_duration', 0o644, b'8372033\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/power/wakeup', 0o644, b'enabled\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/power/connected_duration', 0o644, b'8372033\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/power/autosuspend', 0o644, b'2\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/power/level', 0o644, b'auto\n') +d('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/subsystem', '../../../../../bus/usb') +l('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/driver', '../../../../../bus/usb/drivers/usb') +l('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/ep_00', 'usb_endpoint/usbdev4.2_ep00') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/version', 0o644, b' 2.00\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/maxchild', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/bDeviceClass', 0o644, b'e0\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/bcdDevice', 0o644, b'0100\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/devnum', 0o644, b'2\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/bDeviceProtocol', 0o644, b'01\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/idProduct', 0o644, b'2110\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/product', 0o644, b'BCM2045B\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/bDeviceSubClass', 0o644, b'01\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/configuration', 0o644, b'') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/dev', 0o644, b'189:385\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/urbnum', 0o644, b'12\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/authorized', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/descriptors', 0o644, b'\x12\x01\x00\x02\xe0\x01\x01@\\\n\x10!\x00\x01\x01\x02\x00\x01\t\x02\xd8\x00\x04\x01\x00\xe0\x00\t\x04\x00\x00\x03\xe0\x01\x01\x00\x07\x05\x81\x03\x10\x00\x01\x07\x05\x82\x02@\x00\x01\x07\x05\x02\x02@\x00\x01\t\x04\x01\x00\x02\xe0\x01\x01\x00\x07\x05\x83\x01\x00\x00\x01\x07\x05\x03\x01\x00\x00\x01\t\x04\x01\x01\x02\xe0\x01\x01\x00\x07\x05\x83\x01\t\x00\x01\x07\x05\x03\x01\t\x00\x01\t\x04\x01\x02\x02\xe0\x01\x01\x00\x07\x05\x83\x01\x11\x00\x01\x07\x05\x03\x01\x11\x00\x01\t\x04\x01\x03\x02\xe0\x01\x01\x00\x07\x05\x83\x01 \x00\x01\x07\x05\x03\x01 \x00\x01\t\x04\x01\x04\x02\xe0\x01\x01\x00\x07\x05\x83\x01@\x00\x01\x07\x05\x03\x01@\x00\x01\t\x04\x01\x05\x02\xe0\x01\x01\x00\x07\x05\x83\x01@\x00\x01\x07\x05\x03\x01@\x00\x01\t\x04\x02\x00\x02\xff\xff\xff\x00\x07\x05\x84\x02 \x00\x01\x07\x05\x04\x02 \x00\x01\t\x04\x03\x00\x00\xfe\x01\x00\x00\x07!\x07\x88\x13@\x00') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/bNumConfigurations', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/speed', 0o644, b'12\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/bMaxPacketSize0', 0o644, b'64\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/bmAttributes', 0o644, b'e0\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/busnum', 0o644, b'4\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/quirks', 0o644, b'0x0\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/bConfigurationValue', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/uevent', 0o644, b'''MAJOR=189 +MINOR=385 +DEVTYPE=usb_device +DRIVER=usb +PRODUCT=a5c/2110/100 +TYPE=224/1/1 +BUSNUM=004 +DEVNUM=002 +''') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/manufacturer', 0o644, b'Broadcom Corp\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/idVendor', 0o644, b'0a5c\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/bNumInterfaces', 0o644, b' 4\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/bMaxPower', 0o644, b' 0mA\n') +d('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.3', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.3/subsystem', '../../../../../../bus/usb') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.3/modalias', 0o644, b'usb:v0A5Cp2110d0100dcE0dsc01dp01icFEisc01ip00\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.3/bInterfaceNumber', 0o644, b'03\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.3/bNumEndpoints', 0o644, b'00\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.3/bInterfaceSubClass', 0o644, b'01\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.3/bAlternateSetting', 0o644, b' 0\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.3/bInterfaceClass', 0o644, b'fe\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.3/uevent', 0o644, b'''DEVTYPE=usb_interface +PRODUCT=a5c/2110/100 +TYPE=224/1/1 +INTERFACE=254/1/0 +MODALIAS=usb:v0A5Cp2110d0100dcE0dsc01dp01icFEisc01ip00 +''') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.3/bInterfaceProtocol', 0o644, b'00\n') +d('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.3/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.3/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/usb_endpoint', 0o755) +d('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/usb_endpoint/usbdev4.2_ep00', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/usb_endpoint/usbdev4.2_ep00/subsystem', '../../../../../../../class/usb_endpoint') +l('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/usb_endpoint/usbdev4.2_ep00/device', '../../../4-1') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/usb_endpoint/usbdev4.2_ep00/interval', 0o644, b'0ms\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/usb_endpoint/usbdev4.2_ep00/bEndpointAddress', 0o644, b'00\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/usb_endpoint/usbdev4.2_ep00/type', 0o644, b'Control\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/usb_endpoint/usbdev4.2_ep00/dev', 0o644, b'252:19\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/usb_endpoint/usbdev4.2_ep00/direction', 0o644, b'both\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/usb_endpoint/usbdev4.2_ep00/bLength', 0o644, b'07\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/usb_endpoint/usbdev4.2_ep00/wMaxPacketSize', 0o644, b'0040\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/usb_endpoint/usbdev4.2_ep00/bmAttributes', 0o644, b'00\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/usb_endpoint/usbdev4.2_ep00/uevent', 0o644, b'''MAJOR=252 +MINOR=19 +''') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/usb_endpoint/usbdev4.2_ep00/bInterval', 0o644, b'00\n') +d('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/usb_endpoint/usbdev4.2_ep00/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/usb_endpoint/usbdev4.2_ep00/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.0', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.0/subsystem', '../../../../../../bus/usb') +l('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.0/ep_81', 'usb_endpoint/usbdev4.2_ep81') +l('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.0/ep_02', 'usb_endpoint/usbdev4.2_ep02') +l('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.0/ep_82', 'usb_endpoint/usbdev4.2_ep82') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.0/modalias', 0o644, b'usb:v0A5Cp2110d0100dcE0dsc01dp01icE0isc01ip01\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.0/bInterfaceNumber', 0o644, b'00\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.0/bNumEndpoints', 0o644, b'03\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.0/bInterfaceSubClass', 0o644, b'01\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.0/bAlternateSetting', 0o644, b' 0\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.0/bInterfaceClass', 0o644, b'e0\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.0/uevent', 0o644, b'''DEVTYPE=usb_interface +PRODUCT=a5c/2110/100 +TYPE=224/1/1 +INTERFACE=224/1/1 +MODALIAS=usb:v0A5Cp2110d0100dcE0dsc01dp01icE0isc01ip01 +''') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.0/bInterfaceProtocol', 0o644, b'01\n') +d('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.0/usb_endpoint', 0o755) +d('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.0/usb_endpoint/usbdev4.2_ep02', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.0/usb_endpoint/usbdev4.2_ep02/subsystem', '../../../../../../../../class/usb_endpoint') +l('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.0/usb_endpoint/usbdev4.2_ep02/device', '../../../4-1:1.0') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.0/usb_endpoint/usbdev4.2_ep02/interval', 0o644, b'0ms\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.0/usb_endpoint/usbdev4.2_ep02/bEndpointAddress', 0o644, b'02\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.0/usb_endpoint/usbdev4.2_ep02/type', 0o644, b'Bulk\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.0/usb_endpoint/usbdev4.2_ep02/dev', 0o644, b'252:14\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.0/usb_endpoint/usbdev4.2_ep02/direction', 0o644, b'out\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.0/usb_endpoint/usbdev4.2_ep02/bLength', 0o644, b'07\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.0/usb_endpoint/usbdev4.2_ep02/wMaxPacketSize', 0o644, b'0040\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.0/usb_endpoint/usbdev4.2_ep02/bmAttributes', 0o644, b'02\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.0/usb_endpoint/usbdev4.2_ep02/uevent', 0o644, b'''MAJOR=252 +MINOR=14 +''') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.0/usb_endpoint/usbdev4.2_ep02/bInterval', 0o644, b'01\n') +d('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.0/usb_endpoint/usbdev4.2_ep02/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.0/usb_endpoint/usbdev4.2_ep02/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.0/usb_endpoint/usbdev4.2_ep82', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.0/usb_endpoint/usbdev4.2_ep82/subsystem', '../../../../../../../../class/usb_endpoint') +l('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.0/usb_endpoint/usbdev4.2_ep82/device', '../../../4-1:1.0') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.0/usb_endpoint/usbdev4.2_ep82/interval', 0o644, b'0ms\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.0/usb_endpoint/usbdev4.2_ep82/bEndpointAddress', 0o644, b'82\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.0/usb_endpoint/usbdev4.2_ep82/type', 0o644, b'Bulk\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.0/usb_endpoint/usbdev4.2_ep82/dev', 0o644, b'252:13\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.0/usb_endpoint/usbdev4.2_ep82/direction', 0o644, b'in\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.0/usb_endpoint/usbdev4.2_ep82/bLength', 0o644, b'07\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.0/usb_endpoint/usbdev4.2_ep82/wMaxPacketSize', 0o644, b'0040\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.0/usb_endpoint/usbdev4.2_ep82/bmAttributes', 0o644, b'02\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.0/usb_endpoint/usbdev4.2_ep82/uevent', 0o644, b'''MAJOR=252 +MINOR=13 +''') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.0/usb_endpoint/usbdev4.2_ep82/bInterval', 0o644, b'01\n') +d('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.0/usb_endpoint/usbdev4.2_ep82/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.0/usb_endpoint/usbdev4.2_ep82/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.0/usb_endpoint/usbdev4.2_ep81', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.0/usb_endpoint/usbdev4.2_ep81/subsystem', '../../../../../../../../class/usb_endpoint') +l('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.0/usb_endpoint/usbdev4.2_ep81/device', '../../../4-1:1.0') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.0/usb_endpoint/usbdev4.2_ep81/interval', 0o644, b'1ms\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.0/usb_endpoint/usbdev4.2_ep81/bEndpointAddress', 0o644, b'81\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.0/usb_endpoint/usbdev4.2_ep81/type', 0o644, b'Interrupt\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.0/usb_endpoint/usbdev4.2_ep81/dev', 0o644, b'252:12\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.0/usb_endpoint/usbdev4.2_ep81/direction', 0o644, b'in\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.0/usb_endpoint/usbdev4.2_ep81/bLength', 0o644, b'07\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.0/usb_endpoint/usbdev4.2_ep81/wMaxPacketSize', 0o644, b'0010\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.0/usb_endpoint/usbdev4.2_ep81/bmAttributes', 0o644, b'03\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.0/usb_endpoint/usbdev4.2_ep81/uevent', 0o644, b'''MAJOR=252 +MINOR=12 +''') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.0/usb_endpoint/usbdev4.2_ep81/bInterval', 0o644, b'01\n') +d('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.0/usb_endpoint/usbdev4.2_ep81/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.0/usb_endpoint/usbdev4.2_ep81/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.0/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.0/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/power/active_duration', 0o644, b'8370651\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/power/wakeup', 0o644, b'enabled\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/power/connected_duration', 0o644, b'8370650\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/power/autosuspend', 0o644, b'2\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/power/persist', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/power/level', 0o644, b'on\n') +d('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.2', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.2/subsystem', '../../../../../../bus/usb') +l('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.2/ep_84', 'usb_endpoint/usbdev4.2_ep84') +l('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.2/ep_04', 'usb_endpoint/usbdev4.2_ep04') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.2/modalias', 0o644, b'usb:v0A5Cp2110d0100dcE0dsc01dp01icFFiscFFipFF\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.2/bInterfaceNumber', 0o644, b'02\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.2/bNumEndpoints', 0o644, b'02\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.2/bInterfaceSubClass', 0o644, b'ff\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.2/bAlternateSetting', 0o644, b' 0\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.2/bInterfaceClass', 0o644, b'ff\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.2/uevent', 0o644, b'''DEVTYPE=usb_interface +PRODUCT=a5c/2110/100 +TYPE=224/1/1 +INTERFACE=255/255/255 +MODALIAS=usb:v0A5Cp2110d0100dcE0dsc01dp01icFFiscFFipFF +''') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.2/bInterfaceProtocol', 0o644, b'ff\n') +d('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.2/usb_endpoint', 0o755) +d('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.2/usb_endpoint/usbdev4.2_ep04', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.2/usb_endpoint/usbdev4.2_ep04/subsystem', '../../../../../../../../class/usb_endpoint') +l('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.2/usb_endpoint/usbdev4.2_ep04/device', '../../../4-1:1.2') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.2/usb_endpoint/usbdev4.2_ep04/interval', 0o644, b'0ms\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.2/usb_endpoint/usbdev4.2_ep04/bEndpointAddress', 0o644, b'04\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.2/usb_endpoint/usbdev4.2_ep04/type', 0o644, b'Bulk\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.2/usb_endpoint/usbdev4.2_ep04/dev', 0o644, b'252:18\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.2/usb_endpoint/usbdev4.2_ep04/direction', 0o644, b'out\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.2/usb_endpoint/usbdev4.2_ep04/bLength', 0o644, b'07\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.2/usb_endpoint/usbdev4.2_ep04/wMaxPacketSize', 0o644, b'0020\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.2/usb_endpoint/usbdev4.2_ep04/bmAttributes', 0o644, b'02\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.2/usb_endpoint/usbdev4.2_ep04/uevent', 0o644, b'''MAJOR=252 +MINOR=18 +''') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.2/usb_endpoint/usbdev4.2_ep04/bInterval', 0o644, b'01\n') +d('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.2/usb_endpoint/usbdev4.2_ep04/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.2/usb_endpoint/usbdev4.2_ep04/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.2/usb_endpoint/usbdev4.2_ep84', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.2/usb_endpoint/usbdev4.2_ep84/subsystem', '../../../../../../../../class/usb_endpoint') +l('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.2/usb_endpoint/usbdev4.2_ep84/device', '../../../4-1:1.2') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.2/usb_endpoint/usbdev4.2_ep84/interval', 0o644, b'0ms\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.2/usb_endpoint/usbdev4.2_ep84/bEndpointAddress', 0o644, b'84\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.2/usb_endpoint/usbdev4.2_ep84/type', 0o644, b'Bulk\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.2/usb_endpoint/usbdev4.2_ep84/dev', 0o644, b'252:17\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.2/usb_endpoint/usbdev4.2_ep84/direction', 0o644, b'in\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.2/usb_endpoint/usbdev4.2_ep84/bLength', 0o644, b'07\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.2/usb_endpoint/usbdev4.2_ep84/wMaxPacketSize', 0o644, b'0020\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.2/usb_endpoint/usbdev4.2_ep84/bmAttributes', 0o644, b'02\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.2/usb_endpoint/usbdev4.2_ep84/uevent', 0o644, b'''MAJOR=252 +MINOR=17 +''') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.2/usb_endpoint/usbdev4.2_ep84/bInterval', 0o644, b'01\n') +d('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.2/usb_endpoint/usbdev4.2_ep84/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.2/usb_endpoint/usbdev4.2_ep84/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.2/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.2/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.1', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.1/subsystem', '../../../../../../bus/usb') +l('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.1/ep_83', 'usb_endpoint/usbdev4.2_ep83') +l('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.1/ep_03', 'usb_endpoint/usbdev4.2_ep03') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.1/modalias', 0o644, b'usb:v0A5Cp2110d0100dcE0dsc01dp01icE0isc01ip01\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.1/bInterfaceNumber', 0o644, b'01\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.1/bNumEndpoints', 0o644, b'02\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.1/bInterfaceSubClass', 0o644, b'01\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.1/bAlternateSetting', 0o644, b' 0\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.1/bInterfaceClass', 0o644, b'e0\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.1/uevent', 0o644, b'''DEVTYPE=usb_interface +PRODUCT=a5c/2110/100 +TYPE=224/1/1 +INTERFACE=224/1/1 +MODALIAS=usb:v0A5Cp2110d0100dcE0dsc01dp01icE0isc01ip01 +''') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.1/bInterfaceProtocol', 0o644, b'01\n') +d('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.1/usb_endpoint', 0o755) +d('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.1/usb_endpoint/usbdev4.2_ep03', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.1/usb_endpoint/usbdev4.2_ep03/subsystem', '../../../../../../../../class/usb_endpoint') +l('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.1/usb_endpoint/usbdev4.2_ep03/device', '../../../4-1:1.1') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.1/usb_endpoint/usbdev4.2_ep03/interval', 0o644, b'1ms\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.1/usb_endpoint/usbdev4.2_ep03/bEndpointAddress', 0o644, b'03\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.1/usb_endpoint/usbdev4.2_ep03/type', 0o644, b'Isoc\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.1/usb_endpoint/usbdev4.2_ep03/dev', 0o644, b'252:16\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.1/usb_endpoint/usbdev4.2_ep03/direction', 0o644, b'out\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.1/usb_endpoint/usbdev4.2_ep03/bLength', 0o644, b'07\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.1/usb_endpoint/usbdev4.2_ep03/wMaxPacketSize', 0o644, b'0000\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.1/usb_endpoint/usbdev4.2_ep03/bmAttributes', 0o644, b'01\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.1/usb_endpoint/usbdev4.2_ep03/uevent', 0o644, b'''MAJOR=252 +MINOR=16 +''') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.1/usb_endpoint/usbdev4.2_ep03/bInterval', 0o644, b'01\n') +d('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.1/usb_endpoint/usbdev4.2_ep03/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.1/usb_endpoint/usbdev4.2_ep03/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.1/usb_endpoint/usbdev4.2_ep83', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.1/usb_endpoint/usbdev4.2_ep83/subsystem', '../../../../../../../../class/usb_endpoint') +l('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.1/usb_endpoint/usbdev4.2_ep83/device', '../../../4-1:1.1') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.1/usb_endpoint/usbdev4.2_ep83/interval', 0o644, b'1ms\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.1/usb_endpoint/usbdev4.2_ep83/bEndpointAddress', 0o644, b'83\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.1/usb_endpoint/usbdev4.2_ep83/type', 0o644, b'Isoc\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.1/usb_endpoint/usbdev4.2_ep83/dev', 0o644, b'252:15\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.1/usb_endpoint/usbdev4.2_ep83/direction', 0o644, b'in\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.1/usb_endpoint/usbdev4.2_ep83/bLength', 0o644, b'07\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.1/usb_endpoint/usbdev4.2_ep83/wMaxPacketSize', 0o644, b'0000\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.1/usb_endpoint/usbdev4.2_ep83/bmAttributes', 0o644, b'01\n') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.1/usb_endpoint/usbdev4.2_ep83/uevent', 0o644, b'''MAJOR=252 +MINOR=15 +''') +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.1/usb_endpoint/usbdev4.2_ep83/bInterval', 0o644, b'01\n') +d('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.1/usb_endpoint/usbdev4.2_ep83/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.1/usb_endpoint/usbdev4.2_ep83/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.1/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.1/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1c.2', 0o755) +l('sys/devices/pci0000:00/0000:00:1c.2/firmware_node', '../../LNXSYSTM:00/device:00/PNP0A08:00/device:0d') +l('sys/devices/pci0000:00/0000:00:1c.2/subsystem', '../../../bus/pci') +l('sys/devices/pci0000:00/0000:00:1c.2/driver', '../../../bus/pci/drivers/pcieport-driver') +f('sys/devices/pci0000:00/0000:00:1c.2/local_cpulist', 0o644, b'0-7\n') +f('sys/devices/pci0000:00/0000:00:1c.2/enable', 0o644, b'2\n') +f('sys/devices/pci0000:00/0000:00:1c.2/modalias', 0o644, b'pci:v00008086d000027D4sv00000000sd00000000bc06sc04i00\n') +f('sys/devices/pci0000:00/0000:00:1c.2/resource', 0o644, b'''0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000006000 0x0000000000007fff 0x0000000000000100 +0x00000000e8000000 0x00000000e9ffffff 0x0000000000000200 +0x00000000e4100000 0x00000000e41fffff 0x0000000000001201 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +''') +f('sys/devices/pci0000:00/0000:00:1c.2/config', 0o644, b"\x86\x80\xd4'\x07\x05\x10\x00\x02\x00\x04\x06\x10\x00\x81\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x0b\x00`p\x00\x00\x00\xe8\xf0\xe9\x11\xe4\x11\xe4\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00@\x00\x00\x00\x00\x00\x00\x00\x0b\x03\x04\x00\x10\x80A\x01\xc0\x0f\x00\x00\x00\x00\x10\x00\x11L\x11\x03\x00\x00\x01\x10\xe0\xa0 \x00(\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x05\x90\x01\x00\x0c0\xe0\xfe\x89A\x00\x00\x00\x00\x00\x00\r\xa0\x00\x00\xaa\x17\x11 \x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x02\xc8\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x11\xc0\x00\x00\x00\x00\x00\x00\xc7\x00\x06\x07\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x86\x0f\x02\x00\x00\x00\x00\x00\x02\x00\x01\x18\x01\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\xff\x00\x00\x80\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00@\x00\x00\x11\x00\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x05\x00\x01\x00\x00\x01\x02\x03\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x02\x00\x00\x00\x00\x00\x01\xc0\xd1\xfe\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x07`\x00`\x00\x00\x00\x00`\x02\x00\x00\x0c\x00\x06\x00\x00\x00\x00\x00[`\xc9\xc0\x00p&u\x00\x10\x00\x00\xff\x0f\x00\x00\x16\x00\x00\x14\xb5\xbcJ\xbc\x0b*\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00 \x00\x10\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x02\x00\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00") +f('sys/devices/pci0000:00/0000:00:1c.2/local_cpus', 0o644, b'ff\n') +f('sys/devices/pci0000:00/0000:00:1c.2/subsystem_device', 0o644, b'0x0000\n') +f('sys/devices/pci0000:00/0000:00:1c.2/vendor', 0o644, b'0x8086\n') +f('sys/devices/pci0000:00/0000:00:1c.2/irq', 0o644, b'508\n') +f('sys/devices/pci0000:00/0000:00:1c.2/device', 0o644, b'0x27d4\n') +f('sys/devices/pci0000:00/0000:00:1c.2/class', 0o644, b'0x060400\n') +f('sys/devices/pci0000:00/0000:00:1c.2/msi_bus', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1c.2/subsystem_vendor', 0o644, b'0x0000\n') +f('sys/devices/pci0000:00/0000:00:1c.2/uevent', 0o644, b'''DRIVER=pcieport-driver +PCI_CLASS=60400 +PCI_ID=8086:27D4 +PCI_SUBSYS_ID=0000:0000 +PCI_SLOT_NAME=0000:00:1c.2 +MODALIAS=pci:v00008086d000027D4sv00000000sd00000000bc06sc04i00 +''') +f('sys/devices/pci0000:00/0000:00:1c.2/broken_parity_status', 0o644, b'0\n') +d('sys/devices/pci0000:00/0000:00:1c.2/0000:00:1c.2:pcie02', 0o755) +l('sys/devices/pci0000:00/0000:00:1c.2/0000:00:1c.2:pcie02/subsystem', '../../../../bus/pci_express') +f('sys/devices/pci0000:00/0000:00:1c.2/0000:00:1c.2:pcie02/uevent', 0o644, b'') +d('sys/devices/pci0000:00/0000:00:1c.2/0000:00:1c.2:pcie02/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1c.2/0000:00:1c.2:pcie02/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1c.2/0000:00:1c.2:pcie00', 0o755) +l('sys/devices/pci0000:00/0000:00:1c.2/0000:00:1c.2:pcie00/subsystem', '../../../../bus/pci_express') +f('sys/devices/pci0000:00/0000:00:1c.2/0000:00:1c.2:pcie00/uevent', 0o644, b'') +d('sys/devices/pci0000:00/0000:00:1c.2/0000:00:1c.2:pcie00/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1c.2/0000:00:1c.2:pcie00/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1c.2/pci_bus', 0o755) +d('sys/devices/pci0000:00/0000:00:1c.2/pci_bus/0000:04', 0o755) +l('sys/devices/pci0000:00/0000:00:1c.2/pci_bus/0000:04/subsystem', '../../../../../class/pci_bus') +l('sys/devices/pci0000:00/0000:00:1c.2/pci_bus/0000:04/device', '../../../0000:00:1c.2') +f('sys/devices/pci0000:00/0000:00:1c.2/pci_bus/0000:04/cpuaffinity', 0o644, b'ff\n') +f('sys/devices/pci0000:00/0000:00:1c.2/pci_bus/0000:04/uevent', 0o644, b'') +d('sys/devices/pci0000:00/0000:00:1c.2/pci_bus/0000:04/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1c.2/pci_bus/0000:04/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1c.2/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1c.2/power/wakeup', 0o644, b'disabled\n') +d('sys/devices/pci0000:00/0000:00:1c.2/0000:00:1c.2:pcie03', 0o755) +l('sys/devices/pci0000:00/0000:00:1c.2/0000:00:1c.2:pcie03/subsystem', '../../../../bus/pci_express') +f('sys/devices/pci0000:00/0000:00:1c.2/0000:00:1c.2:pcie03/uevent', 0o644, b'') +d('sys/devices/pci0000:00/0000:00:1c.2/0000:00:1c.2:pcie03/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1c.2/0000:00:1c.2:pcie03/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1b.0', 0o755) +l('sys/devices/pci0000:00/0000:00:1b.0/firmware_node', '../../LNXSYSTM:00/device:00/PNP0A08:00/device:25') +l('sys/devices/pci0000:00/0000:00:1b.0/subsystem', '../../../bus/pci') +l('sys/devices/pci0000:00/0000:00:1b.0/driver', '../../../bus/pci/drivers/HDA Intel') +f('sys/devices/pci0000:00/0000:00:1b.0/local_cpulist', 0o644, b'0-7\n') +f('sys/devices/pci0000:00/0000:00:1b.0/enable', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1b.0/modalias', 0o644, b'pci:v00008086d000027D8sv000017AAsd00002010bc04sc03i00\n') +f('sys/devices/pci0000:00/0000:00:1b.0/resource', 0o644, b'''0x00000000ee400000 0x00000000ee403fff 0x0000000000020204 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +''') +f('sys/devices/pci0000:00/0000:00:1b.0/config', 0o644, b"\x86\x80\xd8'\x06\x01\x10\x00\x02\x00\x03\x04\x10\x00\x00\x00\x04\x00@\xee\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xaa\x17\x10 \x00\x00\x00\x00P\x00\x00\x00\x00\x00\x00\x00\x0b\x02\x00\x00\x03\x00\x00\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x01`B\xc8\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x05p\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x91\x00\x00\x00\x00\x00\x00\x08\x10\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x86\x0f\x02\x00\x00\x00\x00\x00\x02\x00\x01\x13\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x81\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x05\x00\x01\x00\x00\x01\x02\x0f\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x02\x00\x00\x00\x00\x00\x00\xc0\xd1\xfe\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00") +f('sys/devices/pci0000:00/0000:00:1b.0/local_cpus', 0o644, b'ff\n') +f('sys/devices/pci0000:00/0000:00:1b.0/subsystem_device', 0o644, b'0x2010\n') +f('sys/devices/pci0000:00/0000:00:1b.0/vendor', 0o644, b'0x8086\n') +f('sys/devices/pci0000:00/0000:00:1b.0/irq', 0o644, b'17\n') +f('sys/devices/pci0000:00/0000:00:1b.0/device', 0o644, b'0x27d8\n') +f('sys/devices/pci0000:00/0000:00:1b.0/class', 0o644, b'0x040300\n') +f('sys/devices/pci0000:00/0000:00:1b.0/msi_bus', 0o644, b'') +f('sys/devices/pci0000:00/0000:00:1b.0/resource0', 0o644, b'') +f('sys/devices/pci0000:00/0000:00:1b.0/subsystem_vendor', 0o644, b'0x17aa\n') +f('sys/devices/pci0000:00/0000:00:1b.0/uevent', 0o644, b'''DRIVER=HDA Intel +PCI_CLASS=40300 +PCI_ID=8086:27D8 +PCI_SUBSYS_ID=17AA:2010 +PCI_SLOT_NAME=0000:00:1b.0 +MODALIAS=pci:v00008086d000027D8sv000017AAsd00002010bc04sc03i00 +''') +f('sys/devices/pci0000:00/0000:00:1b.0/broken_parity_status', 0o644, b'0\n') +d('sys/devices/pci0000:00/0000:00:1b.0/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1b.0/power/wakeup', 0o644, b'disabled\n') +d('sys/devices/pci0000:00/0000:00:1b.0/sound', 0o755) +d('sys/devices/pci0000:00/0000:00:1b.0/sound/card0', 0o755) +l('sys/devices/pci0000:00/0000:00:1b.0/sound/card0/subsystem', '../../../../../class/sound') +l('sys/devices/pci0000:00/0000:00:1b.0/sound/card0/device', '../../../0000:00:1b.0') +f('sys/devices/pci0000:00/0000:00:1b.0/sound/card0/uevent', 0o644, b'') +d('sys/devices/pci0000:00/0000:00:1b.0/sound/card0/audio', 0o755) +l('sys/devices/pci0000:00/0000:00:1b.0/sound/card0/audio/subsystem', '../../../../../../class/sound') +l('sys/devices/pci0000:00/0000:00:1b.0/sound/card0/audio/device', '../../card0') +f('sys/devices/pci0000:00/0000:00:1b.0/sound/card0/audio/dev', 0o644, b'14:4\n') +f('sys/devices/pci0000:00/0000:00:1b.0/sound/card0/audio/uevent', 0o644, b'''MAJOR=14 +MINOR=4 +''') +d('sys/devices/pci0000:00/0000:00:1b.0/sound/card0/audio/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1b.0/sound/card0/audio/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1b.0/sound/card0/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1b.0/sound/card0/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1b.0/sound/card0/dsp', 0o755) +l('sys/devices/pci0000:00/0000:00:1b.0/sound/card0/dsp/subsystem', '../../../../../../class/sound') +l('sys/devices/pci0000:00/0000:00:1b.0/sound/card0/dsp/device', '../../card0') +f('sys/devices/pci0000:00/0000:00:1b.0/sound/card0/dsp/dev', 0o644, b'14:3\n') +f('sys/devices/pci0000:00/0000:00:1b.0/sound/card0/dsp/uevent', 0o644, b'''MAJOR=14 +MINOR=3 +''') +d('sys/devices/pci0000:00/0000:00:1b.0/sound/card0/dsp/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1b.0/sound/card0/dsp/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1b.0/sound/card0/mixer', 0o755) +l('sys/devices/pci0000:00/0000:00:1b.0/sound/card0/mixer/subsystem', '../../../../../../class/sound') +l('sys/devices/pci0000:00/0000:00:1b.0/sound/card0/mixer/device', '../../card0') +f('sys/devices/pci0000:00/0000:00:1b.0/sound/card0/mixer/dev', 0o644, b'14:0\n') +f('sys/devices/pci0000:00/0000:00:1b.0/sound/card0/mixer/uevent', 0o644, b'''MAJOR=14 +MINOR=0 +''') +d('sys/devices/pci0000:00/0000:00:1b.0/sound/card0/mixer/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1b.0/sound/card0/mixer/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1b.0/sound/card0/pcmC0D0p', 0o755) +l('sys/devices/pci0000:00/0000:00:1b.0/sound/card0/pcmC0D0p/subsystem', '../../../../../../class/sound') +l('sys/devices/pci0000:00/0000:00:1b.0/sound/card0/pcmC0D0p/device', '../../card0') +f('sys/devices/pci0000:00/0000:00:1b.0/sound/card0/pcmC0D0p/pcm_class', 0o644, b'generic\n') +f('sys/devices/pci0000:00/0000:00:1b.0/sound/card0/pcmC0D0p/dev', 0o644, b'116:16\n') +f('sys/devices/pci0000:00/0000:00:1b.0/sound/card0/pcmC0D0p/uevent', 0o644, b'''MAJOR=116 +MINOR=16 +''') +d('sys/devices/pci0000:00/0000:00:1b.0/sound/card0/pcmC0D0p/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1b.0/sound/card0/pcmC0D0p/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1b.0/sound/card0/controlC0', 0o755) +l('sys/devices/pci0000:00/0000:00:1b.0/sound/card0/controlC0/subsystem', '../../../../../../class/sound') +l('sys/devices/pci0000:00/0000:00:1b.0/sound/card0/controlC0/device', '../../card0') +f('sys/devices/pci0000:00/0000:00:1b.0/sound/card0/controlC0/dev', 0o644, b'116:0\n') +f('sys/devices/pci0000:00/0000:00:1b.0/sound/card0/controlC0/uevent', 0o644, b'''MAJOR=116 +MINOR=0 +''') +d('sys/devices/pci0000:00/0000:00:1b.0/sound/card0/controlC0/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1b.0/sound/card0/controlC0/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1b.0/sound/card0/pcmC0D0c', 0o755) +l('sys/devices/pci0000:00/0000:00:1b.0/sound/card0/pcmC0D0c/subsystem', '../../../../../../class/sound') +l('sys/devices/pci0000:00/0000:00:1b.0/sound/card0/pcmC0D0c/device', '../../card0') +f('sys/devices/pci0000:00/0000:00:1b.0/sound/card0/pcmC0D0c/pcm_class', 0o644, b'generic\n') +f('sys/devices/pci0000:00/0000:00:1b.0/sound/card0/pcmC0D0c/dev', 0o644, b'116:24\n') +f('sys/devices/pci0000:00/0000:00:1b.0/sound/card0/pcmC0D0c/uevent', 0o644, b'''MAJOR=116 +MINOR=24 +''') +d('sys/devices/pci0000:00/0000:00:1b.0/sound/card0/pcmC0D0c/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1b.0/sound/card0/pcmC0D0c/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1b.0/sound/card0/adsp', 0o755) +l('sys/devices/pci0000:00/0000:00:1b.0/sound/card0/adsp/subsystem', '../../../../../../class/sound') +l('sys/devices/pci0000:00/0000:00:1b.0/sound/card0/adsp/device', '../../card0') +f('sys/devices/pci0000:00/0000:00:1b.0/sound/card0/adsp/dev', 0o644, b'14:12\n') +f('sys/devices/pci0000:00/0000:00:1b.0/sound/card0/adsp/uevent', 0o644, b'''MAJOR=14 +MINOR=12 +''') +d('sys/devices/pci0000:00/0000:00:1b.0/sound/card0/adsp/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1b.0/sound/card0/adsp/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1b.0/sound/card0/pcmC0D1p', 0o755) +l('sys/devices/pci0000:00/0000:00:1b.0/sound/card0/pcmC0D1p/subsystem', '../../../../../../class/sound') +l('sys/devices/pci0000:00/0000:00:1b.0/sound/card0/pcmC0D1p/device', '../../card0') +f('sys/devices/pci0000:00/0000:00:1b.0/sound/card0/pcmC0D1p/pcm_class', 0o644, b'generic\n') +f('sys/devices/pci0000:00/0000:00:1b.0/sound/card0/pcmC0D1p/dev', 0o644, b'116:17\n') +f('sys/devices/pci0000:00/0000:00:1b.0/sound/card0/pcmC0D1p/uevent', 0o644, b'''MAJOR=116 +MINOR=17 +''') +d('sys/devices/pci0000:00/0000:00:1b.0/sound/card0/pcmC0D1p/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1b.0/sound/card0/pcmC0D1p/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/pci_bus', 0o755) +d('sys/devices/pci0000:00/pci_bus/0000:00', 0o755) +l('sys/devices/pci0000:00/pci_bus/0000:00/subsystem', '../../../../class/pci_bus') +l('sys/devices/pci0000:00/pci_bus/0000:00/device', '../../../pci0000:00') +f('sys/devices/pci0000:00/pci_bus/0000:00/cpuaffinity', 0o644, b'ff\n') +f('sys/devices/pci0000:00/pci_bus/0000:00/uevent', 0o644, b'') +d('sys/devices/pci0000:00/pci_bus/0000:00/power', 0o755) +f('sys/devices/pci0000:00/pci_bus/0000:00/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/power', 0o755) +f('sys/devices/pci0000:00/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.7', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.7/firmware_node', '../../LNXSYSTM:00/device:00/PNP0A08:00/device:21') +l('sys/devices/pci0000:00/0000:00:1d.7/subsystem', '../../../bus/pci') +l('sys/devices/pci0000:00/0000:00:1d.7/driver', '../../../bus/pci/drivers/ehci_hcd') +f('sys/devices/pci0000:00/0000:00:1d.7/local_cpulist', 0o644, b'0-7\n') +f('sys/devices/pci0000:00/0000:00:1d.7/enable', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1d.7/modalias', 0o644, b'pci:v00008086d000027CCsv000017AAsd0000200Bbc0Csc03i20\n') +f('sys/devices/pci0000:00/0000:00:1d.7/resource', 0o644, b'''0x00000000ee404000 0x00000000ee4043ff 0x0000000000020200 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +''') +f('sys/devices/pci0000:00/0000:00:1d.7/config', 0o644, b"\x86\x80\xcc'\x06\x01\x90\x02\x02 \x03\x0c\x00\x00\x00\x00\x00@@\xee\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xaa\x17\x0b \x00\x00\x00\x00P\x00\x00\x00\x00\x00\x00\x00\x0b\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01X\xc2\xc9\x00\x80\x00\x00\n\x00\xa0 \x00\x00\x00\x00 \x9f\x01\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x08\x80\x00\x00\xd7?\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x11\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xaa\xff\x00\xff\x00\xff\x00 \x00\x00\x88\x00\x00\x00\x00\xdb\xb6m\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\t\x88\x85@\x00\x86\x0f\x02\x00\x06\x17\x02 ") +f('sys/devices/pci0000:00/0000:00:1d.7/local_cpus', 0o644, b'ff\n') +f('sys/devices/pci0000:00/0000:00:1d.7/subsystem_device', 0o644, b'0x200b\n') +f('sys/devices/pci0000:00/0000:00:1d.7/vendor', 0o644, b'0x8086\n') +f('sys/devices/pci0000:00/0000:00:1d.7/irq', 0o644, b'19\n') +f('sys/devices/pci0000:00/0000:00:1d.7/pools', 0o644, b'''poolinfo - 0.1 +ehci_sitd 0 0 96 0 +ehci_itd 0 0 192 0 +ehci_qh 5 25 160 1 +ehci_qtd 5 42 96 1 +buffer-2048 16 32 2048 16 +buffer-512 0 0 512 0 +buffer-128 2 32 128 1 +buffer-32 2 128 32 1 +''') +f('sys/devices/pci0000:00/0000:00:1d.7/device', 0o644, b'0x27cc\n') +f('sys/devices/pci0000:00/0000:00:1d.7/class', 0o644, b'0x0c0320\n') +f('sys/devices/pci0000:00/0000:00:1d.7/msi_bus', 0o644, b'') +f('sys/devices/pci0000:00/0000:00:1d.7/resource0', 0o644, b'') +f('sys/devices/pci0000:00/0000:00:1d.7/subsystem_vendor', 0o644, b'0x17aa\n') +f('sys/devices/pci0000:00/0000:00:1d.7/uevent', 0o644, b'''DRIVER=ehci_hcd +PCI_CLASS=C0320 +PCI_ID=8086:27CC +PCI_SUBSYS_ID=17AA:200B +PCI_SLOT_NAME=0000:00:1d.7 +MODALIAS=pci:v00008086d000027CCsv000017AAsd0000200Bbc0Csc03i20 +''') +f('sys/devices/pci0000:00/0000:00:1d.7/broken_parity_status', 0o644, b'0\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/subsystem', '../../../../bus/usb') +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/driver', '../../../../bus/usb/drivers/usb') +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/ep_00', 'usb_endpoint/usbdev5.1_ep00') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/version', 0o644, b' 2.00\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/authorized_default', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/maxchild', 0o644, b'8\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/bDeviceClass', 0o644, b'09\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/bcdDevice', 0o644, b'0206\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/devnum', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/bDeviceProtocol', 0o644, b'00\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/idProduct', 0o644, b'0002\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/product', 0o644, b'EHCI Host Controller\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/bDeviceSubClass', 0o644, b'00\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/configuration', 0o644, b'') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/dev', 0o644, b'189:512\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/urbnum', 0o644, b'151\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/authorized', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/descriptors', 0o644, b'\x12\x01\x00\x02\t\x00\x00@k\x1d\x02\x00\x06\x02\x03\x02\x01\x01\t\x02\x19\x00\x01\x01\x00\xe0\x00\t\x04\x00\x00\x01\t\x00\x00\x00\x07\x05\x81\x03\x04\x00\x0c') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/bNumConfigurations', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/serial', 0o644, b'0000:00:1d.7\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/speed', 0o644, b'480\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/bMaxPacketSize0', 0o644, b'64\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/bmAttributes', 0o644, b'e0\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/busnum', 0o644, b'5\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/quirks', 0o644, b'0x0\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/bConfigurationValue', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/uevent', 0o644, b'''MAJOR=189 +MINOR=512 +DEVTYPE=usb_device +DRIVER=usb +PRODUCT=1d6b/2/206 +TYPE=9/0/0 +BUSNUM=005 +DEVNUM=001 +''') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/manufacturer', 0o644, b'Linux 2.6.27-rc7-00106-g6ef190c-dirty ehci_hcd\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/idVendor', 0o644, b'1d6b\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/bNumInterfaces', 0o644, b' 1\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/bMaxPower', 0o644, b' 0mA\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/usb_endpoint', 0o755) +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/usb_endpoint/usbdev5.1_ep00', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/usb_endpoint/usbdev5.1_ep00/subsystem', '../../../../../../class/usb_endpoint') +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/usb_endpoint/usbdev5.1_ep00/device', '../../../usb5') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/usb_endpoint/usbdev5.1_ep00/interval', 0o644, b'0ms\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/usb_endpoint/usbdev5.1_ep00/bEndpointAddress', 0o644, b'00\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/usb_endpoint/usbdev5.1_ep00/type', 0o644, b'Control\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/usb_endpoint/usbdev5.1_ep00/dev', 0o644, b'252:9\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/usb_endpoint/usbdev5.1_ep00/direction', 0o644, b'both\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/usb_endpoint/usbdev5.1_ep00/bLength', 0o644, b'07\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/usb_endpoint/usbdev5.1_ep00/wMaxPacketSize', 0o644, b'0040\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/usb_endpoint/usbdev5.1_ep00/bmAttributes', 0o644, b'00\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/usb_endpoint/usbdev5.1_ep00/uevent', 0o644, b'''MAJOR=252 +MINOR=9 +''') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/usb_endpoint/usbdev5.1_ep00/bInterval', 0o644, b'00\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/usb_endpoint/usbdev5.1_ep00/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/usb_endpoint/usbdev5.1_ep00/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/subsystem', '../../../../../bus/usb') +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/driver', '../../../../../bus/usb/drivers/usb') +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/ep_00', 'usb_endpoint/usbdev5.7_ep00') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/version', 0o644, b' 2.00\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/maxchild', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/bDeviceClass', 0o644, b'00\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/bcdDevice', 0o644, b'0100\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/devnum', 0o644, b'7\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/bDeviceProtocol', 0o644, b'00\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/idProduct', 0o644, b'8012\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/product', 0o644, b'Flash Disk\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/bDeviceSubClass', 0o644, b'00\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/configuration', 0o644, b'') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/dev', 0o644, b'189:518\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/urbnum', 0o644, b'743\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/authorized', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/descriptors', 0o644, b'\x12\x01\x00\x02\x00\x00\x00@C\x10\x12\x80\x00\x01\x01\x02\x00\x01\t\x02 \x00\x01\x01\x00\x802\t\x04\x00\x00\x02\x08\x06P\x00\x07\x05\x81\x02\x00\x02\x00\x07\x05\x02\x02\x00\x02\x00') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/bNumConfigurations', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/speed', 0o644, b'480\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/bMaxPacketSize0', 0o644, b'64\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/bmAttributes', 0o644, b'80\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/busnum', 0o644, b'5\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/quirks', 0o644, b'0x0\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/bConfigurationValue', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/uevent', 0o644, b'''MAJOR=189 +MINOR=518 +DEVTYPE=usb_device +DRIVER=usb +PRODUCT=1043/8012/100 +TYPE=0/0/0 +BUSNUM=005 +DEVNUM=007 +''') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/manufacturer', 0o644, b'Generic\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/idVendor', 0o644, b'1043\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/bNumInterfaces', 0o644, b' 1\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/bMaxPower', 0o644, b'100mA\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/usb_endpoint', 0o755) +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/usb_endpoint/usbdev5.7_ep00', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/usb_endpoint/usbdev5.7_ep00/subsystem', '../../../../../../../class/usb_endpoint') +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/usb_endpoint/usbdev5.7_ep00/device', '../../../5-1') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/usb_endpoint/usbdev5.7_ep00/interval', 0o644, b'0ms\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/usb_endpoint/usbdev5.7_ep00/bEndpointAddress', 0o644, b'00\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/usb_endpoint/usbdev5.7_ep00/type', 0o644, b'Control\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/usb_endpoint/usbdev5.7_ep00/dev', 0o644, b'252:24\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/usb_endpoint/usbdev5.7_ep00/direction', 0o644, b'both\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/usb_endpoint/usbdev5.7_ep00/bLength', 0o644, b'07\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/usb_endpoint/usbdev5.7_ep00/wMaxPacketSize', 0o644, b'0040\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/usb_endpoint/usbdev5.7_ep00/bmAttributes', 0o644, b'00\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/usb_endpoint/usbdev5.7_ep00/uevent', 0o644, b'''MAJOR=252 +MINOR=24 +''') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/usb_endpoint/usbdev5.7_ep00/bInterval', 0o644, b'00\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/usb_endpoint/usbdev5.7_ep00/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/usb_endpoint/usbdev5.7_ep00/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/power/active_duration', 0o644, b'65113\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/power/wakeup', 0o644, b'\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/power/connected_duration', 0o644, b'65113\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/power/autosuspend', 0o644, b'2\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/power/persist', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/power/level', 0o644, b'on\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/subsystem', '../../../../../../bus/usb') +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/ep_81', 'usb_endpoint/usbdev5.7_ep81') +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/ep_02', 'usb_endpoint/usbdev5.7_ep02') +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/driver', '../../../../../../bus/usb/drivers/usb-storage') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/modalias', 0o644, b'usb:v1043p8012d0100dc00dsc00dp00ic08isc06ip50\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/bInterfaceNumber', 0o644, b'00\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/bNumEndpoints', 0o644, b'02\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/bInterfaceSubClass', 0o644, b'06\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/bAlternateSetting', 0o644, b' 0\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/bInterfaceClass', 0o644, b'08\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/uevent', 0o644, b'''DEVTYPE=usb_interface +DRIVER=usb-storage +PRODUCT=1043/8012/100 +TYPE=0/0/0 +INTERFACE=8/6/80 +MODALIAS=usb:v1043p8012d0100dc00dsc00dp00ic08isc06ip50 +''') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/bInterfaceProtocol', 0o644, b'50\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/usb_endpoint', 0o755) +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/usb_endpoint/usbdev5.7_ep81', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/usb_endpoint/usbdev5.7_ep81/subsystem', '../../../../../../../../class/usb_endpoint') +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/usb_endpoint/usbdev5.7_ep81/device', '../../../5-1:1.0') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/usb_endpoint/usbdev5.7_ep81/interval', 0o644, b'0ms\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/usb_endpoint/usbdev5.7_ep81/bEndpointAddress', 0o644, b'81\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/usb_endpoint/usbdev5.7_ep81/type', 0o644, b'Bulk\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/usb_endpoint/usbdev5.7_ep81/dev', 0o644, b'252:10\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/usb_endpoint/usbdev5.7_ep81/direction', 0o644, b'in\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/usb_endpoint/usbdev5.7_ep81/bLength', 0o644, b'07\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/usb_endpoint/usbdev5.7_ep81/wMaxPacketSize', 0o644, b'0200\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/usb_endpoint/usbdev5.7_ep81/bmAttributes', 0o644, b'02\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/usb_endpoint/usbdev5.7_ep81/uevent', 0o644, b'''MAJOR=252 +MINOR=10 +''') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/usb_endpoint/usbdev5.7_ep81/bInterval', 0o644, b'00\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/usb_endpoint/usbdev5.7_ep81/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/usb_endpoint/usbdev5.7_ep81/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/usb_endpoint/usbdev5.7_ep02', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/usb_endpoint/usbdev5.7_ep02/subsystem', '../../../../../../../../class/usb_endpoint') +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/usb_endpoint/usbdev5.7_ep02/device', '../../../5-1:1.0') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/usb_endpoint/usbdev5.7_ep02/interval', 0o644, b'0ms\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/usb_endpoint/usbdev5.7_ep02/bEndpointAddress', 0o644, b'02\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/usb_endpoint/usbdev5.7_ep02/type', 0o644, b'Bulk\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/usb_endpoint/usbdev5.7_ep02/dev', 0o644, b'252:11\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/usb_endpoint/usbdev5.7_ep02/direction', 0o644, b'out\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/usb_endpoint/usbdev5.7_ep02/bLength', 0o644, b'07\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/usb_endpoint/usbdev5.7_ep02/wMaxPacketSize', 0o644, b'0200\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/usb_endpoint/usbdev5.7_ep02/bmAttributes', 0o644, b'02\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/usb_endpoint/usbdev5.7_ep02/uevent', 0o644, b'''MAJOR=252 +MINOR=11 +''') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/usb_endpoint/usbdev5.7_ep02/bInterval', 0o644, b'00\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/usb_endpoint/usbdev5.7_ep02/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/usb_endpoint/usbdev5.7_ep02/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/subsystem', '../../../../../../../bus/scsi') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/uevent', 0o644, b'DEVTYPE=scsi_host\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/subsystem', '../../../../../../../../bus/scsi') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/uevent', 0o644, b'DEVTYPE=scsi_target\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/generic', 'scsi_generic/sg2') +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/subsystem', '../../../../../../../../../bus/scsi') +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/driver', '../../../../../../../../../bus/scsi/drivers/sd') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/iodone_cnt', 0o644, b'0xc3\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/device_blocked', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/max_sectors', 0o644, b'240\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/modalias', 0o644, b'scsi:t-0x00\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/scsi_level', 0o644, b'3\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/queue_depth', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/rev', 0o644, b'1.00\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/type', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/iocounterbits', 0o644, b'32\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/vendor', 0o644, b'Generic \n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/state', 0o644, b'running\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/queue_type', 0o644, b'none\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/iorequest_cnt', 0o644, b'0xc3\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/evt_media_change', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/model', 0o644, b'USB Flash Drive \n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/ioerr_cnt', 0o644, b'0x2\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/uevent', 0o644, b'''DEVTYPE=scsi_device +DRIVER=sd +MODALIAS=scsi:t-0x00 +''') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/timeout', 0o644, b'60\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/scsi_disk', 0o755) +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/scsi_disk/7:0:0:0', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/scsi_disk/7:0:0:0/subsystem', '../../../../../../../../../../../class/scsi_disk') +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/scsi_disk/7:0:0:0/device', '../../../7:0:0:0') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/scsi_disk/7:0:0:0/app_tag_own', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/scsi_disk/7:0:0:0/FUA', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/scsi_disk/7:0:0:0/cache_type', 0o644, b'write through\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/scsi_disk/7:0:0:0/protection_type', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/scsi_disk/7:0:0:0/manage_start_stop', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/scsi_disk/7:0:0:0/allow_restart', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/scsi_disk/7:0:0:0/uevent', 0o644, b'') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/scsi_disk/7:0:0:0/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/scsi_disk/7:0:0:0/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/scsi_generic', 0o755) +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/scsi_generic/sg2', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/scsi_generic/sg2/subsystem', '../../../../../../../../../../../class/scsi_generic') +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/scsi_generic/sg2/device', '../../../7:0:0:0') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/scsi_generic/sg2/dev', 0o644, b'21:2\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/scsi_generic/sg2/uevent', 0o644, b'''MAJOR=21 +MINOR=2 +''') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/scsi_generic/sg2/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/scsi_generic/sg2/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/bsg', 0o755) +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/bsg/7:0:0:0', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/bsg/7:0:0:0/subsystem', '../../../../../../../../../../../class/bsg') +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/bsg/7:0:0:0/device', '../../../7:0:0:0') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/bsg/7:0:0:0/dev', 0o644, b'254:2\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/bsg/7:0:0:0/uevent', 0o644, b'''MAJOR=254 +MINOR=2 +''') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/bsg/7:0:0:0/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/bsg/7:0:0:0/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/block', 0o755) +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/block/sdb', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/block/sdb/subsystem', '../../../../../../../../../../../class/block') +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/block/sdb/bdi', '../../../../../../../../../../virtual/bdi/8:16') +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/block/sdb/device', '../../../7:0:0:0') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/block/sdb/capability', 0o644, b'13\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/block/sdb/ro', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/block/sdb/make-it-fail', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/block/sdb/size', 0o644, b'257024\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/block/sdb/dev', 0o644, b'8:16\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/block/sdb/range', 0o644, b'16\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/block/sdb/removable', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/block/sdb/stat', 0o644, b' 117 409 2103 272 0 0 0 0 0 194 272\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/block/sdb/uevent', 0o644, b'''MAJOR=8 +MINOR=16 +DEVTYPE=disk +''') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/block/sdb/queue', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/block/sdb/queue/bsg', '../../../bsg/7:0:0:0') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/block/sdb/queue/nr_requests', 0o644, b'128\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/block/sdb/queue/nomerges', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/block/sdb/queue/scheduler', 0o644, b'noop anticipatory deadline [cfq] \n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/block/sdb/queue/hw_sector_size', 0o644, b'512\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/block/sdb/queue/max_hw_sectors_kb', 0o644, b'120\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/block/sdb/queue/read_ahead_kb', 0o644, b'128\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/block/sdb/queue/max_sectors_kb', 0o644, b'120\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/block/sdb/queue/iosched', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/block/sdb/queue/iosched/slice_async_rq', 0o644, b'2\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/block/sdb/queue/iosched/back_seek_max', 0o644, b'16384\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/block/sdb/queue/iosched/slice_sync', 0o644, b'100\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/block/sdb/queue/iosched/slice_async', 0o644, b'40\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/block/sdb/queue/iosched/fifo_expire_sync', 0o644, b'125\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/block/sdb/queue/iosched/slice_idle', 0o644, b'8\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/block/sdb/queue/iosched/back_seek_penalty', 0o644, b'2\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/block/sdb/queue/iosched/fifo_expire_async', 0o644, b'250\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/block/sdb/queue/iosched/quantum', 0o644, b'4\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/block/sdb/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/block/sdb/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/block/sdb/sdb1', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/block/sdb/sdb1/subsystem', '../../../../../../../../../../../../class/block') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/block/sdb/sdb1/start', 0o644, b'32\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/block/sdb/sdb1/make-it-fail', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/block/sdb/sdb1/size', 0o644, b'256992\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/block/sdb/sdb1/dev', 0o644, b'8:17\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/block/sdb/sdb1/stat', 0o644, b' 109 392 1903 246 0 0 0 0 0 169 246\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/block/sdb/sdb1/uevent', 0o644, b'''MAJOR=8 +MINOR=17 +DEVTYPE=partition +''') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/block/sdb/sdb1/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/block/sdb/sdb1/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/scsi_device', 0o755) +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/scsi_device/7:0:0:0', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/scsi_device/7:0:0:0/subsystem', '../../../../../../../../../../../class/scsi_device') +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/scsi_device/7:0:0:0/device', '../../../7:0:0:0') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/scsi_device/7:0:0:0/uevent', 0o644, b'') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/scsi_device/7:0:0:0/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/target7:0:0/7:0:0:0/scsi_device/7:0:0:0/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/scsi_host', 0o755) +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/scsi_host/host7', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/scsi_host/host7/subsystem', '../../../../../../../../../class/scsi_host') +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/scsi_host/host7/device', '../../../host7') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/scsi_host/host7/unique_id', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/scsi_host/host7/can_queue', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/scsi_host/host7/unchecked_isa_dma', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/scsi_host/host7/active_mode', 0o644, b'Initiator\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/scsi_host/host7/sg_tablesize', 0o644, b'128\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/scsi_host/host7/prot_guard_type', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/scsi_host/host7/host_busy', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/scsi_host/host7/proc_name', 0o644, b'usb-storage\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/scsi_host/host7/state', 0o644, b'running\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/scsi_host/host7/cmd_per_lun', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/scsi_host/host7/supported_mode', 0o644, b'Initiator\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/scsi_host/host7/uevent', 0o644, b'') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/scsi_host/host7/prot_capabilities', 0o644, b'0\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/scsi_host/host7/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-1/5-1:1.0/host7/scsi_host/host7/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/subsystem', '../../../../../bus/usb') +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/driver', '../../../../../bus/usb/drivers/usb') +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/ep_00', 'usb_endpoint/usbdev5.9_ep00') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/version', 0o644, b' 2.00\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/maxchild', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/bDeviceClass', 0o644, b'02\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/bcdDevice', 0o644, b'0100\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/devnum', 0o644, b'9\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/bDeviceProtocol', 0o644, b'00\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/idProduct', 0o644, b'007b\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/product', 0o644, b'N78\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/bDeviceSubClass', 0o644, b'00\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/configuration', 0o644, b'Bulk transfer method configuration\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/dev', 0o644, b'189:520\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/urbnum', 0o644, b'20\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/authorized', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/descriptors', 0o644, b'''\x12\x01\x00\x02\x02\x00\x00@!\x04{\x00\x00\x01\x01\x02\x03\x01\t\x02\xab\x01\x0e\x01\x04\xc02\t\x04\x00\x00\x01\x02\x02\x01\x06\x05$\x00\x00\x01\x04$\x02\x0f\x05$\x06\x00\x01\x07\x05\x81\x03@\x00\x08\t\x04\x01\x00\x02 +\x00\x00\x07\x07\x05\x82\x02\x00\x02\xff\x07\x05\x01\x02\x00\x02\xff\t\x04\x02\x00\x01\x02\x02\xff\x08\x05$\x00\x00\x01\x04$\x02\x0f\x05$\x06\x02\x03\x07\x05\x83\x03@\x00\x08\t\x04\x03\x00\x02 +\x00\x00\t\x07\x05\x84\x02\x00\x02\xff\x07\x05\x02\x02\x00\x02\xff\t\x04\x04\x00\x00\x02\x08\x00\x00\x05$\x00\x10\x01\x05$\x11\x00\x01\r$\x06\x04\x05\x06\x07\x08\t +\x0b\x0c\r\t\x04\x05\x00\x00\x02\x0b\x00 +\x05$\x00\x10\x01\x05$\x15\x00\x01\x05$\x06\x05\x06\t\x04\x06\x00\x00 +\x00\x00\x00\t\x04\x06\x01\x02 +\x00\x00\x00\x07\x05\x85\x02\x00\x02\xff\x07\x05\x03\x02\x00\x02\xff\t\x04\x07\x00\x00\x02\x0b\x00\x0b\x05$\x00\x10\x01\x05$\x15\x00\x01\x05$\x06\x07\x08\t\x04\x08\x00\x00 +\x00\x00\x00\t\x04\x08\x01\x02 +\x00\x00\x00\x07\x05\x86\x02\x00\x02\xff\x07\x05\x04\x02\x00\x02\xff\t\x04\t\x00\x00\x02\x08\x01\x00\x05$\x00\x10\x01\x05$\x08\x00\x01\x06$\x06\t +\x0b\t\x04 +\x00\x00\x02\xfe\x00\x00\x05$\x00\x10\x01\x05$\xab\x05\x15\x05$\x06 +\x0b\t\x04\x0b\x00\x00 +\x00\x00\x00\t\x04\x0b\x01\x02 +\x00\x00\x00\x04$\xfd\x01\x07\x05\x05\x02\x00\x02\xff\x07\x05\x87\x02\x00\x02\xff\t\x04\x0c\x00\x00\x02\xfd\x00\x0c\x05$\x00\x10\x01\x05$\xfc\x00\x01\x05$\x06\x0c\r\x04$\xfd\x00\t\x04\r\x00\x00 +\x00\x00\x00\t\x04\r\x01\x02 +\x00\x00\x00\x07\x05\x88\x03\x00\x02\x06\x07\x05\x06\x02\x00\x02\xff\t\x04\r\x02\x02 +\x00\x00\x00\x07\x05\x88\x02\x00\x02\xff\x07\x05\x06\x02\x00\x02\xff''') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/bNumConfigurations', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/serial', 0o644, b'354172020305000\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/speed', 0o644, b'480\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/bMaxPacketSize0', 0o644, b'64\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/bmAttributes', 0o644, b'c0\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/busnum', 0o644, b'5\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/quirks', 0o644, b'0x0\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/bConfigurationValue', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/uevent', 0o644, b'''MAJOR=189 +MINOR=520 +DEVTYPE=usb_device +DRIVER=usb +PRODUCT=421/7b/100 +TYPE=2/0/0 +BUSNUM=005 +DEVNUM=009 +''') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/manufacturer', 0o644, b'Nokia\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/idVendor', 0o644, b'0421\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/bNumInterfaces', 0o644, b'14\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/bMaxPower', 0o644, b'100mA\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.4', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.4/subsystem', '../../../../../../bus/usb') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.4/modalias', 0o644, b'usb:v0421p007Bd0100dc02dsc00dp00ic02isc08ip00\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.4/bInterfaceNumber', 0o644, b'04\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.4/bNumEndpoints', 0o644, b'00\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.4/bInterfaceSubClass', 0o644, b'08\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.4/bAlternateSetting', 0o644, b' 0\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.4/bInterfaceClass', 0o644, b'02\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.4/uevent', 0o644, b'''DEVTYPE=usb_interface +PRODUCT=421/7b/100 +TYPE=2/0/0 +INTERFACE=2/8/0 +MODALIAS=usb:v0421p007Bd0100dc02dsc00dp00ic02isc08ip00 +''') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.4/bInterfaceProtocol', 0o644, b'00\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.4/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.4/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/usb_endpoint', 0o755) +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/usb_endpoint/usbdev5.9_ep00', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/usb_endpoint/usbdev5.9_ep00/subsystem', '../../../../../../../class/usb_endpoint') +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/usb_endpoint/usbdev5.9_ep00/device', '../../../5-2') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/usb_endpoint/usbdev5.9_ep00/interval', 0o644, b'0ms\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/usb_endpoint/usbdev5.9_ep00/bEndpointAddress', 0o644, b'00\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/usb_endpoint/usbdev5.9_ep00/type', 0o644, b'Control\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/usb_endpoint/usbdev5.9_ep00/dev', 0o644, b'252:33\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/usb_endpoint/usbdev5.9_ep00/direction', 0o644, b'both\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/usb_endpoint/usbdev5.9_ep00/bLength', 0o644, b'07\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/usb_endpoint/usbdev5.9_ep00/wMaxPacketSize', 0o644, b'0040\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/usb_endpoint/usbdev5.9_ep00/bmAttributes', 0o644, b'00\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/usb_endpoint/usbdev5.9_ep00/uevent', 0o644, b'''MAJOR=252 +MINOR=33 +''') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/usb_endpoint/usbdev5.9_ep00/bInterval', 0o644, b'00\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/usb_endpoint/usbdev5.9_ep00/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/usb_endpoint/usbdev5.9_ep00/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.2', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.2/subsystem', '../../../../../../bus/usb') +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.2/ep_83', 'usb_endpoint/usbdev5.9_ep83') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.2/modalias', 0o644, b'usb:v0421p007Bd0100dc02dsc00dp00ic02isc02ipFF\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.2/bInterfaceNumber', 0o644, b'02\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.2/bNumEndpoints', 0o644, b'01\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.2/interface', 0o644, b'CDC Comms Interface\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.2/bInterfaceSubClass', 0o644, b'02\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.2/bAlternateSetting', 0o644, b' 0\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.2/bInterfaceClass', 0o644, b'02\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.2/uevent', 0o644, b'''DEVTYPE=usb_interface +PRODUCT=421/7b/100 +TYPE=2/0/0 +INTERFACE=2/2/255 +MODALIAS=usb:v0421p007Bd0100dc02dsc00dp00ic02isc02ipFF +''') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.2/bInterfaceProtocol', 0o644, b'ff\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.2/usb_endpoint', 0o755) +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.2/usb_endpoint/usbdev5.9_ep83', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.2/usb_endpoint/usbdev5.9_ep83/subsystem', '../../../../../../../../class/usb_endpoint') +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.2/usb_endpoint/usbdev5.9_ep83/device', '../../../5-2:1.2') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.2/usb_endpoint/usbdev5.9_ep83/interval', 0o644, b'16ms\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.2/usb_endpoint/usbdev5.9_ep83/bEndpointAddress', 0o644, b'83\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.2/usb_endpoint/usbdev5.9_ep83/type', 0o644, b'Interrupt\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.2/usb_endpoint/usbdev5.9_ep83/dev', 0o644, b'252:30\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.2/usb_endpoint/usbdev5.9_ep83/direction', 0o644, b'in\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.2/usb_endpoint/usbdev5.9_ep83/bLength', 0o644, b'07\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.2/usb_endpoint/usbdev5.9_ep83/wMaxPacketSize', 0o644, b'0040\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.2/usb_endpoint/usbdev5.9_ep83/bmAttributes', 0o644, b'03\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.2/usb_endpoint/usbdev5.9_ep83/uevent', 0o644, b'''MAJOR=252 +MINOR=30 +''') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.2/usb_endpoint/usbdev5.9_ep83/bInterval', 0o644, b'08\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.2/usb_endpoint/usbdev5.9_ep83/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.2/usb_endpoint/usbdev5.9_ep83/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.2/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.2/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.1', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.1/subsystem', '../../../../../../bus/usb') +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.1/ep_01', 'usb_endpoint/usbdev5.9_ep01') +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.1/ep_82', 'usb_endpoint/usbdev5.9_ep82') +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.1/driver', '../../../../../../bus/usb/drivers/cdc_acm') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.1/modalias', 0o644, b'usb:v0421p007Bd0100dc02dsc00dp00ic0Aisc00ip00\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.1/bInterfaceNumber', 0o644, b'01\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.1/bNumEndpoints', 0o644, b'02\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.1/interface', 0o644, b'CDC Data Interface\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.1/bInterfaceSubClass', 0o644, b'00\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.1/bAlternateSetting', 0o644, b' 0\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.1/bInterfaceClass', 0o644, b'0a\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.1/uevent', 0o644, b'''DEVTYPE=usb_interface +DRIVER=cdc_acm +PRODUCT=421/7b/100 +TYPE=2/0/0 +INTERFACE=10/0/0 +MODALIAS=usb:v0421p007Bd0100dc02dsc00dp00ic0Aisc00ip00 +''') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.1/bInterfaceProtocol', 0o644, b'00\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.1/usb_endpoint', 0o755) +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.1/usb_endpoint/usbdev5.9_ep01', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.1/usb_endpoint/usbdev5.9_ep01/subsystem', '../../../../../../../../class/usb_endpoint') +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.1/usb_endpoint/usbdev5.9_ep01/device', '../../../5-2:1.1') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.1/usb_endpoint/usbdev5.9_ep01/interval', 0o644, b'31875us\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.1/usb_endpoint/usbdev5.9_ep01/bEndpointAddress', 0o644, b'01\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.1/usb_endpoint/usbdev5.9_ep01/type', 0o644, b'Bulk\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.1/usb_endpoint/usbdev5.9_ep01/dev', 0o644, b'252:29\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.1/usb_endpoint/usbdev5.9_ep01/direction', 0o644, b'out\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.1/usb_endpoint/usbdev5.9_ep01/bLength', 0o644, b'07\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.1/usb_endpoint/usbdev5.9_ep01/wMaxPacketSize', 0o644, b'0200\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.1/usb_endpoint/usbdev5.9_ep01/bmAttributes', 0o644, b'02\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.1/usb_endpoint/usbdev5.9_ep01/uevent', 0o644, b'''MAJOR=252 +MINOR=29 +''') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.1/usb_endpoint/usbdev5.9_ep01/bInterval', 0o644, b'ff\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.1/usb_endpoint/usbdev5.9_ep01/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.1/usb_endpoint/usbdev5.9_ep01/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.1/usb_endpoint/usbdev5.9_ep82', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.1/usb_endpoint/usbdev5.9_ep82/subsystem', '../../../../../../../../class/usb_endpoint') +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.1/usb_endpoint/usbdev5.9_ep82/device', '../../../5-2:1.1') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.1/usb_endpoint/usbdev5.9_ep82/interval', 0o644, b'0ms\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.1/usb_endpoint/usbdev5.9_ep82/bEndpointAddress', 0o644, b'82\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.1/usb_endpoint/usbdev5.9_ep82/type', 0o644, b'Bulk\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.1/usb_endpoint/usbdev5.9_ep82/dev', 0o644, b'252:28\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.1/usb_endpoint/usbdev5.9_ep82/direction', 0o644, b'in\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.1/usb_endpoint/usbdev5.9_ep82/bLength', 0o644, b'07\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.1/usb_endpoint/usbdev5.9_ep82/wMaxPacketSize', 0o644, b'0200\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.1/usb_endpoint/usbdev5.9_ep82/bmAttributes', 0o644, b'02\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.1/usb_endpoint/usbdev5.9_ep82/uevent', 0o644, b'''MAJOR=252 +MINOR=28 +''') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.1/usb_endpoint/usbdev5.9_ep82/bInterval', 0o644, b'ff\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.1/usb_endpoint/usbdev5.9_ep82/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.1/usb_endpoint/usbdev5.9_ep82/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.1/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.1/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.10', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.10/subsystem', '../../../../../../bus/usb') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.10/modalias', 0o644, b'usb:v0421p007Bd0100dc02dsc00dp00ic02iscFEip00\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.10/bInterfaceNumber', 0o644, b'0a\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.10/bNumEndpoints', 0o644, b'00\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.10/bInterfaceSubClass', 0o644, b'fe\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.10/bAlternateSetting', 0o644, b' 0\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.10/bInterfaceClass', 0o644, b'02\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.10/uevent', 0o644, b'''DEVTYPE=usb_interface +PRODUCT=421/7b/100 +TYPE=2/0/0 +INTERFACE=2/254/0 +MODALIAS=usb:v0421p007Bd0100dc02dsc00dp00ic02iscFEip00 +''') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.10/bInterfaceProtocol', 0o644, b'00\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.10/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.10/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.7', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.7/subsystem', '../../../../../../bus/usb') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.7/modalias', 0o644, b'usb:v0421p007Bd0100dc02dsc00dp00ic02isc0Bip00\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.7/bInterfaceNumber', 0o644, b'07\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.7/bNumEndpoints', 0o644, b'00\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.7/interface', 0o644, b'PC Suite Services\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.7/bInterfaceSubClass', 0o644, b'0b\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.7/bAlternateSetting', 0o644, b' 0\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.7/bInterfaceClass', 0o644, b'02\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.7/uevent', 0o644, b'''DEVTYPE=usb_interface +PRODUCT=421/7b/100 +TYPE=2/0/0 +INTERFACE=2/11/0 +MODALIAS=usb:v0421p007Bd0100dc02dsc00dp00ic02isc0Bip00 +''') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.7/bInterfaceProtocol', 0o644, b'00\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.7/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.7/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.0', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.0/subsystem', '../../../../../../bus/usb') +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.0/ep_81', 'usb_endpoint/usbdev5.9_ep81') +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.0/driver', '../../../../../../bus/usb/drivers/cdc_acm') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.0/modalias', 0o644, b'usb:v0421p007Bd0100dc02dsc00dp00ic02isc02ip01\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.0/bInterfaceNumber', 0o644, b'00\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.0/bmCapabilities', 0o644, b'15') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.0/bNumEndpoints', 0o644, b'01\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.0/interface', 0o644, b'CDC Comms Interface\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.0/bInterfaceSubClass', 0o644, b'02\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.0/bAlternateSetting', 0o644, b' 0\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.0/bInterfaceClass', 0o644, b'02\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.0/uevent', 0o644, b'''DEVTYPE=usb_interface +DRIVER=cdc_acm +PRODUCT=421/7b/100 +TYPE=2/0/0 +INTERFACE=2/2/1 +MODALIAS=usb:v0421p007Bd0100dc02dsc00dp00ic02isc02ip01 +''') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.0/bInterfaceProtocol', 0o644, b'01\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.0/usb_endpoint', 0o755) +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.0/usb_endpoint/usbdev5.9_ep81', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.0/usb_endpoint/usbdev5.9_ep81/subsystem', '../../../../../../../../class/usb_endpoint') +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.0/usb_endpoint/usbdev5.9_ep81/device', '../../../5-2:1.0') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.0/usb_endpoint/usbdev5.9_ep81/interval', 0o644, b'16ms\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.0/usb_endpoint/usbdev5.9_ep81/bEndpointAddress', 0o644, b'81\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.0/usb_endpoint/usbdev5.9_ep81/type', 0o644, b'Interrupt\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.0/usb_endpoint/usbdev5.9_ep81/dev', 0o644, b'252:27\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.0/usb_endpoint/usbdev5.9_ep81/direction', 0o644, b'in\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.0/usb_endpoint/usbdev5.9_ep81/bLength', 0o644, b'07\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.0/usb_endpoint/usbdev5.9_ep81/wMaxPacketSize', 0o644, b'0040\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.0/usb_endpoint/usbdev5.9_ep81/bmAttributes', 0o644, b'03\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.0/usb_endpoint/usbdev5.9_ep81/uevent', 0o644, b'''MAJOR=252 +MINOR=27 +''') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.0/usb_endpoint/usbdev5.9_ep81/bInterval', 0o644, b'08\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.0/usb_endpoint/usbdev5.9_ep81/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.0/usb_endpoint/usbdev5.9_ep81/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.0/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.0/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.0/tty', 0o755) +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.0/tty/ttyACM0', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.0/tty/ttyACM0/subsystem', '../../../../../../../../class/tty') +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.0/tty/ttyACM0/device', '../../../5-2:1.0') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.0/tty/ttyACM0/dev', 0o644, b'166:0\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.0/tty/ttyACM0/uevent', 0o644, b'''MAJOR=166 +MINOR=0 +DEVNAME=ttyACM0 +''') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.0/tty/ttyACM0/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.0/tty/ttyACM0/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.9', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.9/subsystem', '../../../../../../bus/usb') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.9/modalias', 0o644, b'usb:v0421p007Bd0100dc02dsc00dp00ic02isc08ip01\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.9/bInterfaceNumber', 0o644, b'09\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.9/bNumEndpoints', 0o644, b'00\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.9/bInterfaceSubClass', 0o644, b'08\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.9/bAlternateSetting', 0o644, b' 0\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.9/bInterfaceClass', 0o644, b'02\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.9/uevent', 0o644, b'''DEVTYPE=usb_interface +PRODUCT=421/7b/100 +TYPE=2/0/0 +INTERFACE=2/8/1 +MODALIAS=usb:v0421p007Bd0100dc02dsc00dp00ic02isc08ip01 +''') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.9/bInterfaceProtocol', 0o644, b'01\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.9/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.9/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.8', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.8/subsystem', '../../../../../../bus/usb') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.8/modalias', 0o644, b'usb:v0421p007Bd0100dc02dsc00dp00ic0Aisc00ip00\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.8/bInterfaceNumber', 0o644, b'08\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.8/bNumEndpoints', 0o644, b'00\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.8/bInterfaceSubClass', 0o644, b'00\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.8/bAlternateSetting', 0o644, b' 0\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.8/bInterfaceClass', 0o644, b'0a\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.8/uevent', 0o644, b'''DEVTYPE=usb_interface +PRODUCT=421/7b/100 +TYPE=2/0/0 +INTERFACE=10/0/0 +MODALIAS=usb:v0421p007Bd0100dc02dsc00dp00ic0Aisc00ip00 +''') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.8/bInterfaceProtocol', 0o644, b'00\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.8/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.8/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/power/active_duration', 0o644, b'20902\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/power/wakeup', 0o644, b'\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/power/connected_duration', 0o644, b'20901\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/power/autosuspend', 0o644, b'2\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/power/persist', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/power/level', 0o644, b'on\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.13', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.13/subsystem', '../../../../../../bus/usb') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.13/modalias', 0o644, b'usb:v0421p007Bd0100dc02dsc00dp00ic0Aisc00ip00\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.13/bInterfaceNumber', 0o644, b'0d\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.13/bNumEndpoints', 0o644, b'00\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.13/bInterfaceSubClass', 0o644, b'00\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.13/bAlternateSetting', 0o644, b' 0\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.13/bInterfaceClass', 0o644, b'0a\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.13/uevent', 0o644, b'''DEVTYPE=usb_interface +PRODUCT=421/7b/100 +TYPE=2/0/0 +INTERFACE=10/0/0 +MODALIAS=usb:v0421p007Bd0100dc02dsc00dp00ic0Aisc00ip00 +''') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.13/bInterfaceProtocol', 0o644, b'00\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.13/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.13/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.5', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.5/subsystem', '../../../../../../bus/usb') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.5/modalias', 0o644, b'usb:v0421p007Bd0100dc02dsc00dp00ic02isc0Bip00\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.5/bInterfaceNumber', 0o644, b'05\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.5/bNumEndpoints', 0o644, b'00\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.5/interface', 0o644, b'SYNCML-SYNC\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.5/bInterfaceSubClass', 0o644, b'0b\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.5/bAlternateSetting', 0o644, b' 0\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.5/bInterfaceClass', 0o644, b'02\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.5/uevent', 0o644, b'''DEVTYPE=usb_interface +PRODUCT=421/7b/100 +TYPE=2/0/0 +INTERFACE=2/11/0 +MODALIAS=usb:v0421p007Bd0100dc02dsc00dp00ic02isc0Bip00 +''') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.5/bInterfaceProtocol', 0o644, b'00\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.5/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.5/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.11', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.11/subsystem', '../../../../../../bus/usb') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.11/modalias', 0o644, b'usb:v0421p007Bd0100dc02dsc00dp00ic0Aisc00ip00\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.11/bInterfaceNumber', 0o644, b'0b\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.11/bNumEndpoints', 0o644, b'00\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.11/bInterfaceSubClass', 0o644, b'00\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.11/bAlternateSetting', 0o644, b' 0\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.11/bInterfaceClass', 0o644, b'0a\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.11/uevent', 0o644, b'''DEVTYPE=usb_interface +PRODUCT=421/7b/100 +TYPE=2/0/0 +INTERFACE=10/0/0 +MODALIAS=usb:v0421p007Bd0100dc02dsc00dp00ic0Aisc00ip00 +''') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.11/bInterfaceProtocol', 0o644, b'00\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.11/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.11/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.12', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.12/subsystem', '../../../../../../bus/usb') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.12/modalias', 0o644, b'usb:v0421p007Bd0100dc02dsc00dp00ic02iscFDip00\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.12/bInterfaceNumber', 0o644, b'0c\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.12/bNumEndpoints', 0o644, b'00\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.12/interface', 0o644, b'LCIF_Alt0\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.12/bInterfaceSubClass', 0o644, b'fd\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.12/bAlternateSetting', 0o644, b' 0\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.12/bInterfaceClass', 0o644, b'02\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.12/uevent', 0o644, b'''DEVTYPE=usb_interface +PRODUCT=421/7b/100 +TYPE=2/0/0 +INTERFACE=2/253/0 +MODALIAS=usb:v0421p007Bd0100dc02dsc00dp00ic02iscFDip00 +''') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.12/bInterfaceProtocol', 0o644, b'00\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.12/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.12/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.3', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.3/subsystem', '../../../../../../bus/usb') +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.3/ep_02', 'usb_endpoint/usbdev5.9_ep02') +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.3/ep_84', 'usb_endpoint/usbdev5.9_ep84') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.3/modalias', 0o644, b'usb:v0421p007Bd0100dc02dsc00dp00ic0Aisc00ip00\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.3/bInterfaceNumber', 0o644, b'03\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.3/bNumEndpoints', 0o644, b'02\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.3/interface', 0o644, b'CDC Data Interface\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.3/bInterfaceSubClass', 0o644, b'00\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.3/bAlternateSetting', 0o644, b' 0\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.3/bInterfaceClass', 0o644, b'0a\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.3/uevent', 0o644, b'''DEVTYPE=usb_interface +PRODUCT=421/7b/100 +TYPE=2/0/0 +INTERFACE=10/0/0 +MODALIAS=usb:v0421p007Bd0100dc02dsc00dp00ic0Aisc00ip00 +''') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.3/bInterfaceProtocol', 0o644, b'00\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.3/usb_endpoint', 0o755) +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.3/usb_endpoint/usbdev5.9_ep84', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.3/usb_endpoint/usbdev5.9_ep84/subsystem', '../../../../../../../../class/usb_endpoint') +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.3/usb_endpoint/usbdev5.9_ep84/device', '../../../5-2:1.3') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.3/usb_endpoint/usbdev5.9_ep84/interval', 0o644, b'0ms\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.3/usb_endpoint/usbdev5.9_ep84/bEndpointAddress', 0o644, b'84\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.3/usb_endpoint/usbdev5.9_ep84/type', 0o644, b'Bulk\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.3/usb_endpoint/usbdev5.9_ep84/dev', 0o644, b'252:31\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.3/usb_endpoint/usbdev5.9_ep84/direction', 0o644, b'in\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.3/usb_endpoint/usbdev5.9_ep84/bLength', 0o644, b'07\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.3/usb_endpoint/usbdev5.9_ep84/wMaxPacketSize', 0o644, b'0200\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.3/usb_endpoint/usbdev5.9_ep84/bmAttributes', 0o644, b'02\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.3/usb_endpoint/usbdev5.9_ep84/uevent', 0o644, b'''MAJOR=252 +MINOR=31 +''') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.3/usb_endpoint/usbdev5.9_ep84/bInterval', 0o644, b'ff\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.3/usb_endpoint/usbdev5.9_ep84/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.3/usb_endpoint/usbdev5.9_ep84/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.3/usb_endpoint/usbdev5.9_ep02', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.3/usb_endpoint/usbdev5.9_ep02/subsystem', '../../../../../../../../class/usb_endpoint') +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.3/usb_endpoint/usbdev5.9_ep02/device', '../../../5-2:1.3') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.3/usb_endpoint/usbdev5.9_ep02/interval', 0o644, b'31875us\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.3/usb_endpoint/usbdev5.9_ep02/bEndpointAddress', 0o644, b'02\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.3/usb_endpoint/usbdev5.9_ep02/type', 0o644, b'Bulk\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.3/usb_endpoint/usbdev5.9_ep02/dev', 0o644, b'252:32\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.3/usb_endpoint/usbdev5.9_ep02/direction', 0o644, b'out\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.3/usb_endpoint/usbdev5.9_ep02/bLength', 0o644, b'07\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.3/usb_endpoint/usbdev5.9_ep02/wMaxPacketSize', 0o644, b'0200\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.3/usb_endpoint/usbdev5.9_ep02/bmAttributes', 0o644, b'02\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.3/usb_endpoint/usbdev5.9_ep02/uevent', 0o644, b'''MAJOR=252 +MINOR=32 +''') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.3/usb_endpoint/usbdev5.9_ep02/bInterval', 0o644, b'ff\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.3/usb_endpoint/usbdev5.9_ep02/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.3/usb_endpoint/usbdev5.9_ep02/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.3/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.3/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.6', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.6/subsystem', '../../../../../../bus/usb') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.6/modalias', 0o644, b'usb:v0421p007Bd0100dc02dsc00dp00ic0Aisc00ip00\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.6/bInterfaceNumber', 0o644, b'06\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.6/bNumEndpoints', 0o644, b'00\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.6/bInterfaceSubClass', 0o644, b'00\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.6/bAlternateSetting', 0o644, b' 0\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.6/bInterfaceClass', 0o644, b'0a\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.6/uevent', 0o644, b'''DEVTYPE=usb_interface +PRODUCT=421/7b/100 +TYPE=2/0/0 +INTERFACE=10/0/0 +MODALIAS=usb:v0421p007Bd0100dc02dsc00dp00ic0Aisc00ip00 +''') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.6/bInterfaceProtocol', 0o644, b'00\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.6/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.6/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/power/active_duration', 0o644, b'547102\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/power/wakeup', 0o644, b'enabled\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/power/connected_duration', 0o644, b'8371932\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/power/autosuspend', 0o644, b'2\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/power/level', 0o644, b'auto\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-0:1.0', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-0:1.0/subsystem', '../../../../../bus/usb') +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-0:1.0/ep_81', 'usb_endpoint/usbdev5.1_ep81') +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-0:1.0/driver', '../../../../../bus/usb/drivers/hub') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-0:1.0/modalias', 0o644, b'usb:v1D6Bp0002d0206dc09dsc00dp00ic09isc00ip00\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-0:1.0/bInterfaceNumber', 0o644, b'00\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-0:1.0/bNumEndpoints', 0o644, b'01\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-0:1.0/bInterfaceSubClass', 0o644, b'00\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-0:1.0/bAlternateSetting', 0o644, b' 0\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-0:1.0/bInterfaceClass', 0o644, b'09\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-0:1.0/uevent', 0o644, b'''DEVTYPE=usb_interface +DRIVER=hub +PRODUCT=1d6b/2/206 +TYPE=9/0/0 +INTERFACE=9/0/0 +MODALIAS=usb:v1D6Bp0002d0206dc09dsc00dp00ic09isc00ip00 +''') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-0:1.0/bInterfaceProtocol', 0o644, b'00\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-0:1.0/usb_endpoint', 0o755) +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-0:1.0/usb_endpoint/usbdev5.1_ep81', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-0:1.0/usb_endpoint/usbdev5.1_ep81/subsystem', '../../../../../../../class/usb_endpoint') +l('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-0:1.0/usb_endpoint/usbdev5.1_ep81/device', '../../../5-0:1.0') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-0:1.0/usb_endpoint/usbdev5.1_ep81/interval', 0o644, b'256ms\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-0:1.0/usb_endpoint/usbdev5.1_ep81/bEndpointAddress', 0o644, b'81\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-0:1.0/usb_endpoint/usbdev5.1_ep81/type', 0o644, b'Interrupt\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-0:1.0/usb_endpoint/usbdev5.1_ep81/dev', 0o644, b'252:8\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-0:1.0/usb_endpoint/usbdev5.1_ep81/direction', 0o644, b'in\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-0:1.0/usb_endpoint/usbdev5.1_ep81/bLength', 0o644, b'07\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-0:1.0/usb_endpoint/usbdev5.1_ep81/wMaxPacketSize', 0o644, b'0004\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-0:1.0/usb_endpoint/usbdev5.1_ep81/bmAttributes', 0o644, b'03\n') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-0:1.0/usb_endpoint/usbdev5.1_ep81/uevent', 0o644, b'''MAJOR=252 +MINOR=8 +''') +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-0:1.0/usb_endpoint/usbdev5.1_ep81/bInterval', 0o644, b'0c\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-0:1.0/usb_endpoint/usbdev5.1_ep81/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-0:1.0/usb_endpoint/usbdev5.1_ep81/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-0:1.0/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.7/usb5/5-0:1.0/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.7/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.7/power/wakeup', 0o644, b'disabled\n') +d('sys/devices/pci0000:00/0000:00:1d.7/usb_host', 0o755) +d('sys/devices/pci0000:00/0000:00:1d.7/usb_host/usb_host5', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.7/usb_host/usb_host5/subsystem', '../../../../../class/usb_host') +l('sys/devices/pci0000:00/0000:00:1d.7/usb_host/usb_host5/device', '../../../0000:00:1d.7') +f('sys/devices/pci0000:00/0000:00:1d.7/usb_host/usb_host5/companion', 0o644, b'') +f('sys/devices/pci0000:00/0000:00:1d.7/usb_host/usb_host5/uevent', 0o644, b'') +d('sys/devices/pci0000:00/0000:00:1d.7/usb_host/usb_host5/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.7/usb_host/usb_host5/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1c.1', 0o755) +l('sys/devices/pci0000:00/0000:00:1c.1/firmware_node', '../../LNXSYSTM:00/device:00/PNP0A08:00/device:0c') +l('sys/devices/pci0000:00/0000:00:1c.1/subsystem', '../../../bus/pci') +l('sys/devices/pci0000:00/0000:00:1c.1/driver', '../../../bus/pci/drivers/pcieport-driver') +f('sys/devices/pci0000:00/0000:00:1c.1/local_cpulist', 0o644, b'0-7\n') +f('sys/devices/pci0000:00/0000:00:1c.1/enable', 0o644, b'2\n') +f('sys/devices/pci0000:00/0000:00:1c.1/modalias', 0o644, b'pci:v00008086d000027D2sv00000000sd00000000bc06sc04i00\n') +f('sys/devices/pci0000:00/0000:00:1c.1/resource', 0o644, b'''0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000004000 0x0000000000005fff 0x0000000000000100 +0x00000000ec000000 0x00000000edffffff 0x0000000000000200 +0x00000000e4000000 0x00000000e40fffff 0x0000000000001201 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +''') +f('sys/devices/pci0000:00/0000:00:1c.1/config', 0o644, b"\x86\x80\xd2'\x07\x05\x10\x00\x02\x00\x04\x06\x10\x00\x81\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x03\x00@P\x00\x00\x00\xec\xf0\xed\x01\xe4\x01\xe4\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00@\x00\x00\x00\x00\x00\x00\x00\x0b\x02\x04\x00\x10\x80A\x01\xc0\x0f\x00\x00\x00\x00\x11\x00\x11,\x11\x02B\x00\x110\xe0\xa0\x18\x00\x00\x00H\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x05\x90\x01\x00\x0c0\xe0\xfe\x81A\x00\x00\x00\x00\x00\x00\r\xa0\x00\x00\xaa\x17\x11 \x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x02\xc8\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x11\x00\x00\x00\x00\x00\x00\x0f\xc7\x80\x06\x07\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x86\x0f\x02\x00\x00\x00\x00\x00\x02\x00\x01\x18\x01\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x80\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x11\x00\x06\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x05\x00\x01\x00\x00\x01\x02\x02\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x02\x00\x00\x00\x00\x00\x01\xc0\xd1\xfe\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x07`\x00`\x00\x00\x00\x00`\x02\x00\x00\x0c\x00\x06\x00\x00\x00\x001[`\xc9\xc0\x00p&u\xa2\x178\x00\xa1\x07G\x02\x16\x00\x00\x14\xb5\xbcJ\xbc\x0b*\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xb4\x0c\xb4\x00\xc4\x0c\xb6\x00A\x08z\x00Y\x00\x1b\x00[\x00\x1d\x00\x01\x00\xba\x00\xe3\x0f\xd3\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x02\x00\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00") +f('sys/devices/pci0000:00/0000:00:1c.1/local_cpus', 0o644, b'ff\n') +f('sys/devices/pci0000:00/0000:00:1c.1/subsystem_device', 0o644, b'0x0000\n') +f('sys/devices/pci0000:00/0000:00:1c.1/vendor', 0o644, b'0x8086\n') +f('sys/devices/pci0000:00/0000:00:1c.1/irq', 0o644, b'509\n') +f('sys/devices/pci0000:00/0000:00:1c.1/device', 0o644, b'0x27d2\n') +f('sys/devices/pci0000:00/0000:00:1c.1/class', 0o644, b'0x060400\n') +f('sys/devices/pci0000:00/0000:00:1c.1/msi_bus', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1c.1/subsystem_vendor', 0o644, b'0x0000\n') +f('sys/devices/pci0000:00/0000:00:1c.1/uevent', 0o644, b'''DRIVER=pcieport-driver +PCI_CLASS=60400 +PCI_ID=8086:27D2 +PCI_SUBSYS_ID=0000:0000 +PCI_SLOT_NAME=0000:00:1c.1 +MODALIAS=pci:v00008086d000027D2sv00000000sd00000000bc06sc04i00 +''') +f('sys/devices/pci0000:00/0000:00:1c.1/broken_parity_status', 0o644, b'0\n') +d('sys/devices/pci0000:00/0000:00:1c.1/pci_bus', 0o755) +d('sys/devices/pci0000:00/0000:00:1c.1/pci_bus/0000:03', 0o755) +l('sys/devices/pci0000:00/0000:00:1c.1/pci_bus/0000:03/subsystem', '../../../../../class/pci_bus') +l('sys/devices/pci0000:00/0000:00:1c.1/pci_bus/0000:03/device', '../../../0000:00:1c.1') +f('sys/devices/pci0000:00/0000:00:1c.1/pci_bus/0000:03/cpuaffinity', 0o644, b'ff\n') +f('sys/devices/pci0000:00/0000:00:1c.1/pci_bus/0000:03/uevent', 0o644, b'') +d('sys/devices/pci0000:00/0000:00:1c.1/pci_bus/0000:03/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1c.1/pci_bus/0000:03/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1c.1/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1c.1/power/wakeup', 0o644, b'disabled\n') +d('sys/devices/pci0000:00/0000:00:1c.1/0000:00:1c.1:pcie02', 0o755) +l('sys/devices/pci0000:00/0000:00:1c.1/0000:00:1c.1:pcie02/subsystem', '../../../../bus/pci_express') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:00:1c.1:pcie02/uevent', 0o644, b'') +d('sys/devices/pci0000:00/0000:00:1c.1/0000:00:1c.1:pcie02/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1c.1/0000:00:1c.1:pcie02/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1c.1/0000:00:1c.1:pcie03', 0o755) +l('sys/devices/pci0000:00/0000:00:1c.1/0000:00:1c.1:pcie03/subsystem', '../../../../bus/pci_express') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:00:1c.1:pcie03/uevent', 0o644, b'') +d('sys/devices/pci0000:00/0000:00:1c.1/0000:00:1c.1:pcie03/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1c.1/0000:00:1c.1:pcie03/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0', 0o755) +l('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/subsystem', '../../../../bus/pci') +l('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/driver', '../../../../bus/pci/drivers/iwl3945') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/local_cpulist', 0o644, b'0-7\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/enable', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/rs_window', 0o644, b''' 54Mbs: 00000000000000000000000000000000000000000000000000000000000000 + 48Mbs: 00000000000000000000000000000000000000000000000000000000000000 + 36Mbs: 00000000000000000000000000000000000000000000000000000000000000 + 24Mbs: 00000000000000000000000000000000000000000000000000000000000000 + 18Mbs: 00000000000000000000000000000000000000000000000000000000000000 + 12Mbs: 00000000000000000000000000000000000000000000000000000000000000 + 11Mbs: 00000000000000000000000000000000000000000000000000000000000000 + 9Mbs: 00000000000000000000000000000000000000000000000000000000000000 + 6Mbs: 00000000000000000000000000000000000000000000000000000000000000 + 5Mbs: 00000000000000000000000000000000000000000000000000000000000000 + 2Mbs: 00000000000000000000000000000000000000000000000000000000000000 + 1Mbs: 00000000000000000000000000000000000000000000000000000000000000 + +Average rate: 0Mbs +''') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/modalias', 0o644, b'pci:v00008086d00004227sv00008086sd00001011bc02sc80i00\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/resource', 0o644, b'''0x00000000edf00000 0x00000000edf00fff 0x0000000000020200 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +''') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/statistics', 0o644, b'''02 00 01 00 a4 c0 02 00 c6 27 01 00 80 16 01 00 .........\'...... +e9 0c 00 00 00 00 00 00 00 00 00 00 69 05 00 00 ............i... +de 98 01 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ +00 00 00 00 00 00 00 00 bd 01 00 00 00 00 00 00 ................ +fd 68 08 00 ae d3 06 00 78 65 04 00 b8 2b 00 00 .h......xe...+.. +00 00 00 00 00 00 00 00 7e 42 02 00 4f 95 01 00 ........~B..O... +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ +00 00 00 00 da 01 00 00 00 00 00 00 00 00 00 00 ................ +00 00 00 00 d8 dc 00 00 59 10 01 00 00 00 00 00 ........Y....... +df 0c 00 00 16 00 00 00 00 00 00 00 00 00 00 00 ................ +88 00 00 00 00 00 00 00 04 00 00 00 00 00 00 00 ................ +00 00 00 00 72 ff ff ff 00 00 00 00 00 00 00 00 ....r........... +00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ +00 00 00 00 01 00 00 00 bb 45 98 35 1c 91 e7 f1 .........E.5.... +4c 19 00 00 c2 0c 00 00 e7 ed 00 00 1c 4c 00 00 L............L.. +''') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/config', 0o644, b'\x86\x80\'B\x06\x05\x10\x00\x02\x00\x80\x02\x10\x00\x00\x00\x00\x00\xf0\xed\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x86\x80\x11\x10\x00\x00\x00\x00\xc8\x00\x00\x00\x00\x00\x00\x00\x0b\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\xd0"H\x00\x00\x00\r\x05\xe0\x81\x00\x0c\x10\xe0\xfe\x00\x00\x00\x00\xd1A\x00\x00\x10\x00\x11\x00\xc0\x0e\x00\x00\x10\x08\n\x00\x11\x1c\x07\x00B\x01\x11\x10\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x01\x14\x00\x00\x10\x00\x00\x00\x00\x00\x11 \x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x14\x00\x00\x00\x01\x00\x00\x04\x0f\x1a\x00\x00\x00\x01\x01\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x01\x00\xd1\xaeu\xff\xff\xd2\x19\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/filter_flags', 0o644, b'0x0024\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/retry_rate', 0o644, b'1') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/local_cpus', 0o644, b'ff\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/channels', 0o644, b'') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/subsystem_device', 0o644, b'0x1011\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/vendor', 0o644, b'0x8086\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/tx_power', 0o644, b'16\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/irq', 0o644, b'504\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/antenna', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/device', 0o644, b'0x4227\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/class', 0o644, b'0x028000\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/power_level', 0o644, b'6 (AC) OFF\n\x00') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/msi_bus', 0o644, b'') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/flags', 0o644, b'0x8015\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/resource0', 0o644, b'') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/temperature', 0o644, b'-142\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/measurement', 0o644, b'') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/subsystem_vendor', 0o644, b'0x8086\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/uevent', 0o644, b'''DRIVER=iwl3945 +PCI_CLASS=28000 +PCI_ID=8086:4227 +PCI_SUBSYS_ID=8086:1011 +PCI_SLOT_NAME=0000:03:00.0 +MODALIAS=pci:v00008086d00004227sv00008086sd00001011bc02sc80i00 +''') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/status', 0o644, b'0x000002e4\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/broken_parity_status', 0o644, b'0\n') +d('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/ieee80211', 0o755) +d('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/ieee80211/phy0', 0o755) +l('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/ieee80211/phy0/subsystem', '../../../../../../class/ieee80211') +l('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/ieee80211/phy0/device', '../../../0000:03:00.0') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/ieee80211/phy0/index', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/ieee80211/phy0/uevent', 0o644, b'') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/ieee80211/phy0/macaddress', 0o644, b'00:19:d2:75:ae:d1\n') +d('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/ieee80211/phy0/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/ieee80211/phy0/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/power/wakeup', 0o644, b'disabled\n') +d('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net', 0o755) +d('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wmaster0', 0o755) +l('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wmaster0/subsystem', '../../../../../../class/net') +l('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wmaster0/device', '../../../0000:03:00.0') +l('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wmaster0/phy80211', '../../ieee80211/phy0') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wmaster0/ifindex', 0o644, b'3\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wmaster0/features', 0o644, b'0x0\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wmaster0/iflink', 0o644, b'3\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wmaster0/dormant', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wmaster0/dev_id', 0o644, b'0x0\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wmaster0/type', 0o644, b'801\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wmaster0/operstate', 0o644, b'unknown\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wmaster0/carrier', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wmaster0/link_mode', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wmaster0/tx_queue_len', 0o644, b'1000\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wmaster0/flags', 0o644, b'0x1003\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wmaster0/addr_len', 0o644, b'6\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wmaster0/address', 0o644, b'00:19:d2:75:ae:ff\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wmaster0/uevent', 0o644, b'''INTERFACE=wmaster0 +IFINDEX=3 +''') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wmaster0/mtu', 0o644, b'1500\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wmaster0/broadcast', 0o644, b'ff:ff:ff:ff:ff:ff\n') +d('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wmaster0/statistics', 0o755) +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wmaster0/statistics/tx_aborted_errors', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wmaster0/statistics/rx_crc_errors', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wmaster0/statistics/rx_bytes', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wmaster0/statistics/rx_errors', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wmaster0/statistics/tx_packets', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wmaster0/statistics/tx_carrier_errors', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wmaster0/statistics/tx_errors', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wmaster0/statistics/rx_dropped', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wmaster0/statistics/tx_fifo_errors', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wmaster0/statistics/rx_length_errors', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wmaster0/statistics/tx_dropped', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wmaster0/statistics/rx_fifo_errors', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wmaster0/statistics/rx_missed_errors', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wmaster0/statistics/tx_window_errors', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wmaster0/statistics/collisions', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wmaster0/statistics/rx_frame_errors', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wmaster0/statistics/rx_packets', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wmaster0/statistics/rx_compressed', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wmaster0/statistics/tx_compressed', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wmaster0/statistics/multicast', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wmaster0/statistics/rx_over_errors', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wmaster0/statistics/tx_bytes', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wmaster0/statistics/tx_heartbeat_errors', 0o644, b'0\n') +d('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wmaster0/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wmaster0/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wlan0', 0o755) +l('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wlan0/subsystem', '../../../../../../class/net') +l('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wlan0/device', '../../../0000:03:00.0') +l('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wlan0/phy80211', '../../ieee80211/phy0') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wlan0/ifindex', 0o644, b'4\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wlan0/features', 0o644, b'0x0\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wlan0/iflink', 0o644, b'4\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wlan0/dormant', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wlan0/dev_id', 0o644, b'0x0\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wlan0/type', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wlan0/operstate', 0o644, b'up\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wlan0/carrier', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wlan0/link_mode', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wlan0/tx_queue_len', 0o644, b'1000\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wlan0/flags', 0o644, b'0x1003\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wlan0/addr_len', 0o644, b'6\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wlan0/address', 0o644, b'00:19:d2:75:ae:ff\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wlan0/uevent', 0o644, b'''INTERFACE=wlan0 +IFINDEX=4 +''') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wlan0/mtu', 0o644, b'1500\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wlan0/broadcast', 0o644, b'ff:ff:ff:ff:ff:ff\n') +d('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wlan0/statistics', 0o755) +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wlan0/statistics/tx_aborted_errors', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wlan0/statistics/rx_crc_errors', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wlan0/statistics/rx_bytes', 0o644, b'289996\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wlan0/statistics/rx_errors', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wlan0/statistics/tx_packets', 0o644, b'1029\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wlan0/statistics/tx_carrier_errors', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wlan0/statistics/tx_errors', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wlan0/statistics/rx_dropped', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wlan0/statistics/tx_fifo_errors', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wlan0/statistics/rx_length_errors', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wlan0/statistics/tx_dropped', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wlan0/statistics/rx_fifo_errors', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wlan0/statistics/rx_missed_errors', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wlan0/statistics/tx_window_errors', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wlan0/statistics/collisions', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wlan0/statistics/rx_frame_errors', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wlan0/statistics/rx_packets', 0o644, b'788\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wlan0/statistics/rx_compressed', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wlan0/statistics/tx_compressed', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wlan0/statistics/multicast', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wlan0/statistics/rx_over_errors', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wlan0/statistics/tx_bytes', 0o644, b'530013\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wlan0/statistics/tx_heartbeat_errors', 0o644, b'0\n') +d('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wlan0/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wlan0/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wlan0/wireless', 0o755) +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wlan0/wireless/beacon', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wlan0/wireless/link', 0o644, b'77\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wlan0/wireless/nwid', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wlan0/wireless/retries', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wlan0/wireless/fragment', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wlan0/wireless/misc', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wlan0/wireless/crypt', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wlan0/wireless/noise', 0o644, b'178\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wlan0/wireless/level', 0o644, b'199\n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/net/wlan0/wireless/status', 0o644, b'0x0\n') +d('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/leds', 0o755) +d('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/leds/iwl-phy0:TX', 0o755) +l('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/leds/iwl-phy0:TX/subsystem', '../../../../../../class/leds') +l('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/leds/iwl-phy0:TX/device', '../../../0000:03:00.0') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/leds/iwl-phy0:TX/trigger', 0o644, b'none AC-online BAT0-charging-or-full BAT0-charging BAT0-full rfkill0 phy0rx [phy0tx] phy0assoc phy0radio \n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/leds/iwl-phy0:TX/brightness', 0o644, b'0\n\x00') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/leds/iwl-phy0:TX/uevent', 0o644, b'') +d('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/leds/iwl-phy0:TX/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/leds/iwl-phy0:TX/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/leds/iwl-phy0:assoc', 0o755) +l('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/leds/iwl-phy0:assoc/subsystem', '../../../../../../class/leds') +l('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/leds/iwl-phy0:assoc/device', '../../../0000:03:00.0') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/leds/iwl-phy0:assoc/trigger', 0o644, b'none AC-online BAT0-charging-or-full BAT0-charging BAT0-full rfkill0 phy0rx phy0tx [phy0assoc] phy0radio \n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/leds/iwl-phy0:assoc/brightness', 0o644, b'255\n\x00') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/leds/iwl-phy0:assoc/uevent', 0o644, b'') +d('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/leds/iwl-phy0:assoc/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/leds/iwl-phy0:assoc/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/leds/iwl-phy0:radio', 0o755) +l('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/leds/iwl-phy0:radio/subsystem', '../../../../../../class/leds') +l('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/leds/iwl-phy0:radio/device', '../../../0000:03:00.0') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/leds/iwl-phy0:radio/trigger', 0o644, b'none AC-online BAT0-charging-or-full BAT0-charging BAT0-full rfkill0 phy0rx phy0tx phy0assoc [phy0radio] \n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/leds/iwl-phy0:radio/brightness', 0o644, b'255\n\x00') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/leds/iwl-phy0:radio/uevent', 0o644, b'') +d('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/leds/iwl-phy0:radio/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/leds/iwl-phy0:radio/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/leds/iwl-phy0:RX', 0o755) +l('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/leds/iwl-phy0:RX/subsystem', '../../../../../../class/leds') +l('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/leds/iwl-phy0:RX/device', '../../../0000:03:00.0') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/leds/iwl-phy0:RX/trigger', 0o644, b'none AC-online BAT0-charging-or-full BAT0-charging BAT0-full rfkill0 [phy0rx] phy0tx phy0assoc phy0radio \n') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/leds/iwl-phy0:RX/brightness', 0o644, b'0\n\x00') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/leds/iwl-phy0:RX/uevent', 0o644, b'') +d('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/leds/iwl-phy0:RX/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/leds/iwl-phy0:RX/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1c.1/0000:00:1c.1:pcie00', 0o755) +l('sys/devices/pci0000:00/0000:00:1c.1/0000:00:1c.1:pcie00/subsystem', '../../../../bus/pci_express') +f('sys/devices/pci0000:00/0000:00:1c.1/0000:00:1c.1:pcie00/uevent', 0o644, b'') +d('sys/devices/pci0000:00/0000:00:1c.1/0000:00:1c.1:pcie00/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1c.1/0000:00:1c.1:pcie00/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:00.0', 0o755) +l('sys/devices/pci0000:00/0000:00:00.0/subsystem', '../../../bus/pci') +f('sys/devices/pci0000:00/0000:00:00.0/local_cpulist', 0o644, b'0-7\n') +f('sys/devices/pci0000:00/0000:00:00.0/enable', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:00.0/modalias', 0o644, b'pci:v00008086d000027A0sv000017AAsd00002015bc06sc00i00\n') +f('sys/devices/pci0000:00/0000:00:00.0/resource', 0o644, b'''0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +''') +f('sys/devices/pci0000:00/0000:00:00.0/config', 0o644, b"\x86\x80\xa0'\x06\x01\x90 \x03\x00\x00\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xaa\x17\x15 \x00\x00\x00\x00\xe0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x90\xd1\xfe\x01@\xd1\xfe\x05\x00\x00\xf0\x01\x80\xd1\xfe\x00\x00\x02\x00\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x11\x11\x000\x11\x11\x00\xff\x03\x00\x00\x80\x1a9\x00\x10\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x01\x00\x00\t\x00\tQJ\x00J\xb0\x0e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x86\x0f\x05\x00\x10\x00\x00\x00") +f('sys/devices/pci0000:00/0000:00:00.0/local_cpus', 0o644, b'ff\n') +f('sys/devices/pci0000:00/0000:00:00.0/subsystem_device', 0o644, b'0x2015\n') +f('sys/devices/pci0000:00/0000:00:00.0/vendor', 0o644, b'0x8086\n') +f('sys/devices/pci0000:00/0000:00:00.0/irq', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:00.0/device', 0o644, b'0x27a0\n') +f('sys/devices/pci0000:00/0000:00:00.0/class', 0o644, b'0x060000\n') +f('sys/devices/pci0000:00/0000:00:00.0/msi_bus', 0o644, b'') +f('sys/devices/pci0000:00/0000:00:00.0/subsystem_vendor', 0o644, b'0x17aa\n') +f('sys/devices/pci0000:00/0000:00:00.0/uevent', 0o644, b'''PCI_CLASS=60000 +PCI_ID=8086:27A0 +PCI_SUBSYS_ID=17AA:2015 +PCI_SLOT_NAME=0000:00:00.0 +MODALIAS=pci:v00008086d000027A0sv000017AAsd00002015bc06sc00i00 +''') +f('sys/devices/pci0000:00/0000:00:00.0/broken_parity_status', 0o644, b'0\n') +d('sys/devices/pci0000:00/0000:00:00.0/power', 0o755) +f('sys/devices/pci0000:00/0000:00:00.0/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1c.3', 0o755) +l('sys/devices/pci0000:00/0000:00:1c.3/firmware_node', '../../LNXSYSTM:00/device:00/PNP0A08:00/device:0f') +l('sys/devices/pci0000:00/0000:00:1c.3/subsystem', '../../../bus/pci') +l('sys/devices/pci0000:00/0000:00:1c.3/driver', '../../../bus/pci/drivers/pcieport-driver') +f('sys/devices/pci0000:00/0000:00:1c.3/local_cpulist', 0o644, b'0-7\n') +f('sys/devices/pci0000:00/0000:00:1c.3/enable', 0o644, b'2\n') +f('sys/devices/pci0000:00/0000:00:1c.3/modalias', 0o644, b'pci:v00008086d000027D6sv00000000sd00000000bc06sc04i00\n') +f('sys/devices/pci0000:00/0000:00:1c.3/resource', 0o644, b'''0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000008000 0x0000000000009fff 0x0000000000000100 +0x00000000ea000000 0x00000000ebffffff 0x0000000000000200 +0x00000000e4200000 0x00000000e42fffff 0x0000000000001201 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +''') +f('sys/devices/pci0000:00/0000:00:1c.3/config', 0o644, b"\x86\x80\xd6'\x07\x05\x10\x00\x02\x00\x04\x06\x10\x00\x81\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0c\x13\x00\x80\x90\x00\x00\x00\xea\xf0\xeb!\xe4!\xe4\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00@\x00\x00\x00\x00\x00\x00\x00\x0b\x04\x04\x00\x10\x80A\x01\xc0\x0f\x00\x00\x00\x00\x10\x00\x11L\x11\x04\x00\x00\x01\x10\xe0\xa0(\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x05\x90\x01\x00\x0c0\xe0\xfe\x91A\x00\x00\x00\x00\x00\x00\r\xa0\x00\x00\xaa\x17\x11 \x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x02\xc8\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x11\x00\x00\x00\x00\x00\x00\x00\xc7\x00\x06\x07\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x86\x0f\x02\x00\x00\x00\x00\x00\x02\x00\x01\x18\x01\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\xff\x00\x00\x80\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x11\x00\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x05\x00\x01\x00\x00\x01\x02\x04\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x02\x00\x00\x00\x00\x00\x01\xc0\xd1\xfe\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x07`\x00`\x00\x00\x00\x00`\x02\x00\x00\x0c\x00\x06\x00\x00\x00\x00\x00[`\xc9\xc0\x00p&u\x00\x10\x00\x00\xff\x0f\x00\x00\x16\x00\x00\x14\xb5\xbcJ\xbc\x0b*\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x02\x00\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00") +f('sys/devices/pci0000:00/0000:00:1c.3/local_cpus', 0o644, b'ff\n') +f('sys/devices/pci0000:00/0000:00:1c.3/subsystem_device', 0o644, b'0x0000\n') +f('sys/devices/pci0000:00/0000:00:1c.3/vendor', 0o644, b'0x8086\n') +f('sys/devices/pci0000:00/0000:00:1c.3/irq', 0o644, b'507\n') +f('sys/devices/pci0000:00/0000:00:1c.3/device', 0o644, b'0x27d6\n') +f('sys/devices/pci0000:00/0000:00:1c.3/class', 0o644, b'0x060400\n') +f('sys/devices/pci0000:00/0000:00:1c.3/msi_bus', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1c.3/subsystem_vendor', 0o644, b'0x0000\n') +f('sys/devices/pci0000:00/0000:00:1c.3/uevent', 0o644, b'''DRIVER=pcieport-driver +PCI_CLASS=60400 +PCI_ID=8086:27D6 +PCI_SUBSYS_ID=0000:0000 +PCI_SLOT_NAME=0000:00:1c.3 +MODALIAS=pci:v00008086d000027D6sv00000000sd00000000bc06sc04i00 +''') +f('sys/devices/pci0000:00/0000:00:1c.3/broken_parity_status', 0o644, b'0\n') +d('sys/devices/pci0000:00/0000:00:1c.3/pci_bus', 0o755) +d('sys/devices/pci0000:00/0000:00:1c.3/pci_bus/0000:0c', 0o755) +l('sys/devices/pci0000:00/0000:00:1c.3/pci_bus/0000:0c/subsystem', '../../../../../class/pci_bus') +l('sys/devices/pci0000:00/0000:00:1c.3/pci_bus/0000:0c/device', '../../../0000:00:1c.3') +f('sys/devices/pci0000:00/0000:00:1c.3/pci_bus/0000:0c/cpuaffinity', 0o644, b'ff\n') +f('sys/devices/pci0000:00/0000:00:1c.3/pci_bus/0000:0c/uevent', 0o644, b'') +d('sys/devices/pci0000:00/0000:00:1c.3/pci_bus/0000:0c/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1c.3/pci_bus/0000:0c/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1c.3/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1c.3/power/wakeup', 0o644, b'disabled\n') +d('sys/devices/pci0000:00/0000:00:1c.3/0000:00:1c.3:pcie02', 0o755) +l('sys/devices/pci0000:00/0000:00:1c.3/0000:00:1c.3:pcie02/subsystem', '../../../../bus/pci_express') +f('sys/devices/pci0000:00/0000:00:1c.3/0000:00:1c.3:pcie02/uevent', 0o644, b'') +d('sys/devices/pci0000:00/0000:00:1c.3/0000:00:1c.3:pcie02/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1c.3/0000:00:1c.3:pcie02/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1c.3/0000:00:1c.3:pcie03', 0o755) +l('sys/devices/pci0000:00/0000:00:1c.3/0000:00:1c.3:pcie03/subsystem', '../../../../bus/pci_express') +f('sys/devices/pci0000:00/0000:00:1c.3/0000:00:1c.3:pcie03/uevent', 0o644, b'') +d('sys/devices/pci0000:00/0000:00:1c.3/0000:00:1c.3:pcie03/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1c.3/0000:00:1c.3:pcie03/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1c.3/0000:00:1c.3:pcie00', 0o755) +l('sys/devices/pci0000:00/0000:00:1c.3/0000:00:1c.3:pcie00/subsystem', '../../../../bus/pci_express') +f('sys/devices/pci0000:00/0000:00:1c.3/0000:00:1c.3:pcie00/uevent', 0o644, b'') +d('sys/devices/pci0000:00/0000:00:1c.3/0000:00:1c.3:pcie00/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1c.3/0000:00:1c.3:pcie00/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1f.0', 0o755) +l('sys/devices/pci0000:00/0000:00:1f.0/firmware_node', '../../LNXSYSTM:00/device:00/PNP0A08:00/device:01') +l('sys/devices/pci0000:00/0000:00:1f.0/subsystem', '../../../bus/pci') +f('sys/devices/pci0000:00/0000:00:1f.0/local_cpulist', 0o644, b'0-7\n') +f('sys/devices/pci0000:00/0000:00:1f.0/enable', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1f.0/modalias', 0o644, b'pci:v00008086d000027B9sv000017AAsd00002009bc06sc01i00\n') +f('sys/devices/pci0000:00/0000:00:1f.0/resource', 0o644, b'''0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +''') +f('sys/devices/pci0000:00/0000:00:1f.0/config', 0o644, b'''\x86\x80\xb9\'\x07\x00\x10\x02\x02\x00\x01\x06\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xaa\x17\t \x00\x00\x00\x00\xe0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x10\x00\x00\x80\x00\x00\x00\x81\x11\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8b\x8b\x8b\x8b\x92\x00\x00\x00\x8b\x8b\x8b\x8b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00 +\x1f\x01\x16|\x00\xe1\x15\x0c\x00\x81\x16\x1c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00$\x06\x02\x00\x00\x00\x00\x00\x13\x1c +\x00\x00\x03\x00\x00\x00\x00\xf0\x00\x00\x00\x00\x00\x00\x00\x12 +\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00D\x12\x11\x00gE\x00\x00\xc0\xff\x00\x00\x01\x00\x00\x00\t\x00\x0c\x10\xb4\x02$\x17\x00\x00\x00\x00\x00\x00\x00\x00\x01\xc0\xd1\xfe\x00\x00\x00\x00\x86\x0f\x02\x00\x00\x00\x00\x00''') +f('sys/devices/pci0000:00/0000:00:1f.0/local_cpus', 0o644, b'ff\n') +f('sys/devices/pci0000:00/0000:00:1f.0/subsystem_device', 0o644, b'0x2009\n') +f('sys/devices/pci0000:00/0000:00:1f.0/vendor', 0o644, b'0x8086\n') +f('sys/devices/pci0000:00/0000:00:1f.0/irq', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1f.0/device', 0o644, b'0x27b9\n') +f('sys/devices/pci0000:00/0000:00:1f.0/class', 0o644, b'0x060100\n') +f('sys/devices/pci0000:00/0000:00:1f.0/msi_bus', 0o644, b'') +f('sys/devices/pci0000:00/0000:00:1f.0/subsystem_vendor', 0o644, b'0x17aa\n') +f('sys/devices/pci0000:00/0000:00:1f.0/uevent', 0o644, b'''PCI_CLASS=60100 +PCI_ID=8086:27B9 +PCI_SUBSYS_ID=17AA:2009 +PCI_SLOT_NAME=0000:00:1f.0 +MODALIAS=pci:v00008086d000027B9sv000017AAsd00002009bc06sc01i00 +''') +f('sys/devices/pci0000:00/0000:00:1f.0/broken_parity_status', 0o644, b'0\n') +d('sys/devices/pci0000:00/0000:00:1f.0/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1f.0/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1c.0', 0o755) +l('sys/devices/pci0000:00/0000:00:1c.0/firmware_node', '../../LNXSYSTM:00/device:00/PNP0A08:00/device:0b') +l('sys/devices/pci0000:00/0000:00:1c.0/subsystem', '../../../bus/pci') +l('sys/devices/pci0000:00/0000:00:1c.0/driver', '../../../bus/pci/drivers/pcieport-driver') +f('sys/devices/pci0000:00/0000:00:1c.0/local_cpulist', 0o644, b'0-7\n') +f('sys/devices/pci0000:00/0000:00:1c.0/enable', 0o644, b'2\n') +f('sys/devices/pci0000:00/0000:00:1c.0/modalias', 0o644, b'pci:v00008086d000027D0sv00000000sd00000000bc06sc04i00\n') +f('sys/devices/pci0000:00/0000:00:1c.0/resource', 0o644, b'''0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000003000 0x0000000000003fff 0x0000000000000100 +0x00000000ee000000 0x00000000ee0fffff 0x0000000000000200 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +''') +f('sys/devices/pci0000:00/0000:00:1c.0/config', 0o644, b"\x86\x80\xd0'\x07\x05\x10\x00\x02\x00\x04\x06\x10\x00\x81\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x02\x0000\x00\x00\x00\xee\x00\xee\xf1\xff\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00@\x00\x00\x00\x00\x00\x00\x00\x0b\x01\x04\x00\x10\x80A\x01\xc0\x0f\x00\x00\x00\x00\x11\x00\x11,\x11\x01B\x00\x110\xe0\xa0\x10\x00(\x00@\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x05\x90\x01\x00\x0c0\xe0\xfeyA\x00\x00\x00\x00\x00\x00\r\xa0\x00\x00\xaa\x17\x11 \x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x02\xc8\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x11\xc0\x00\x00\x00\x00\x00\x0f\xc7\x00\x06\x07\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x86\x0f\x02\x00\x00\x00\x00\x00\x02\x00\x01\x18\x01\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x80\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00@\x00\x00\x11\x00\x06\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x05\x00\x01\x00\x00\x01\x02\x01\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x02\x00\x00\x00\x00\x00\x01\xc0\xd1\xfe\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x07`\x00`\x00\x00\x00\x00`\x02\x00\x00\x0c\x00\x06\x00\x00\x00\x00\x08[`\xc9\xc0\x00p&u:\x188\x009\x08\x9e\x0e\x16\x00\x00\x14\xb5\xbcJ\xbc\x0b*\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xec\t\xec\x00\xfc\t\xee\x00c\x00W\x00i\x00J\x00k\x00L\x00\x01\x00\x05\x00\x10\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x02\x00\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00") +f('sys/devices/pci0000:00/0000:00:1c.0/local_cpus', 0o644, b'ff\n') +f('sys/devices/pci0000:00/0000:00:1c.0/subsystem_device', 0o644, b'0x0000\n') +f('sys/devices/pci0000:00/0000:00:1c.0/vendor', 0o644, b'0x8086\n') +f('sys/devices/pci0000:00/0000:00:1c.0/irq', 0o644, b'510\n') +f('sys/devices/pci0000:00/0000:00:1c.0/device', 0o644, b'0x27d0\n') +f('sys/devices/pci0000:00/0000:00:1c.0/class', 0o644, b'0x060400\n') +f('sys/devices/pci0000:00/0000:00:1c.0/msi_bus', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1c.0/subsystem_vendor', 0o644, b'0x0000\n') +f('sys/devices/pci0000:00/0000:00:1c.0/uevent', 0o644, b'''DRIVER=pcieport-driver +PCI_CLASS=60400 +PCI_ID=8086:27D0 +PCI_SUBSYS_ID=0000:0000 +PCI_SLOT_NAME=0000:00:1c.0 +MODALIAS=pci:v00008086d000027D0sv00000000sd00000000bc06sc04i00 +''') +f('sys/devices/pci0000:00/0000:00:1c.0/broken_parity_status', 0o644, b'0\n') +d('sys/devices/pci0000:00/0000:00:1c.0/0000:00:1c.0:pcie03', 0o755) +l('sys/devices/pci0000:00/0000:00:1c.0/0000:00:1c.0:pcie03/subsystem', '../../../../bus/pci_express') +f('sys/devices/pci0000:00/0000:00:1c.0/0000:00:1c.0:pcie03/uevent', 0o644, b'') +d('sys/devices/pci0000:00/0000:00:1c.0/0000:00:1c.0:pcie03/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1c.0/0000:00:1c.0:pcie03/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1c.0/pci_bus', 0o755) +d('sys/devices/pci0000:00/0000:00:1c.0/pci_bus/0000:02', 0o755) +l('sys/devices/pci0000:00/0000:00:1c.0/pci_bus/0000:02/subsystem', '../../../../../class/pci_bus') +l('sys/devices/pci0000:00/0000:00:1c.0/pci_bus/0000:02/device', '../../../0000:00:1c.0') +f('sys/devices/pci0000:00/0000:00:1c.0/pci_bus/0000:02/cpuaffinity', 0o644, b'ff\n') +f('sys/devices/pci0000:00/0000:00:1c.0/pci_bus/0000:02/uevent', 0o644, b'') +d('sys/devices/pci0000:00/0000:00:1c.0/pci_bus/0000:02/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1c.0/pci_bus/0000:02/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1c.0/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1c.0/power/wakeup', 0o644, b'disabled\n') +d('sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0', 0o755) +l('sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/subsystem', '../../../../bus/pci') +l('sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/driver', '../../../../bus/pci/drivers/e1000e') +f('sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/local_cpulist', 0o644, b'0-7\n') +f('sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/enable', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/modalias', 0o644, b'pci:v00008086d0000109Asv000017AAsd00002001bc02sc00i00\n') +f('sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/resource', 0o644, b'''0x00000000ee000000 0x00000000ee01ffff 0x0000000000020200 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000003000 0x000000000000301f 0x0000000000020101 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +''') +f('sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/config', 0o644, b'\x86\x80\x9a\x10\x07\x05\x10\x00\x00\x00\x00\x02\x10\x00\x00\x00\x00\x00\x00\xee\x00\x00\x00\x00\x010\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xaa\x17\x01 \x00\x00\x00\x00\xc8\x00\x00\x00\x00\x00\x00\x00\x0b\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\xd0"\xc8\x00 \x00\x0f\x05\xe0\x81\x00\x0c\x10\xe0\xfe\x00\x00\x00\x00\xc9A\x00\x00\x10\x00\x01\x00\xc1\x0c\x00\x00\x10(\x1a\x00\x11\x1c\x07\x00@\x01\x11\x10\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x01\x14\x00\x00\x10\x00\x00\x00\x00\x00\x11 \x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x14\x00\x00\x00\x01\x00\x00\x04\x0f\x03\x00\x00\x00\x01\x01\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x01\x00\xc7\x8d\xe2\xff\xffA\x16\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00') +f('sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/resource2', 0o644, b'') +f('sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/local_cpus', 0o644, b'ff\n') +f('sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/subsystem_device', 0o644, b'0x2001\n') +f('sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/vendor', 0o644, b'0x8086\n') +f('sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/irq', 0o644, b'505\n') +f('sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/device', 0o644, b'0x109a\n') +f('sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/class', 0o644, b'0x020000\n') +f('sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/msi_bus', 0o644, b'') +f('sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/resource0', 0o644, b'') +f('sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/subsystem_vendor', 0o644, b'0x17aa\n') +f('sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/uevent', 0o644, b'''DRIVER=e1000e +PCI_CLASS=20000 +PCI_ID=8086:109A +PCI_SUBSYS_ID=17AA:2001 +PCI_SLOT_NAME=0000:02:00.0 +MODALIAS=pci:v00008086d0000109Asv000017AAsd00002001bc02sc00i00 +''') +f('sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/broken_parity_status', 0o644, b'0\n') +d('sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/power/wakeup', 0o644, b'disabled\n') +d('sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/net', 0o755) +d('sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/net/eth0', 0o755) +l('sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/net/eth0/subsystem', '../../../../../../class/net') +l('sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/net/eth0/device', '../../../0000:02:00.0') +f('sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/net/eth0/ifindex', 0o644, b'2\n') +f('sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/net/eth0/features', 0o644, b'0x111ba9\n') +f('sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/net/eth0/iflink', 0o644, b'2\n') +f('sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/net/eth0/dormant', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/net/eth0/dev_id', 0o644, b'0x0\n') +f('sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/net/eth0/type', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/net/eth0/operstate', 0o644, b'down\n') +f('sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/net/eth0/carrier', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/net/eth0/link_mode', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/net/eth0/tx_queue_len', 0o644, b'1000\n') +f('sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/net/eth0/flags', 0o644, b'0x1003\n') +f('sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/net/eth0/addr_len', 0o644, b'6\n') +f('sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/net/eth0/address', 0o644, b'00:16:41:e2:8d:ff\n') +f('sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/net/eth0/uevent', 0o644, b'''INTERFACE=eth0 +IFINDEX=2 +''') +f('sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/net/eth0/mtu', 0o644, b'1500\n') +f('sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/net/eth0/broadcast', 0o644, b'ff:ff:ff:ff:ff:ff\n') +d('sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/net/eth0/statistics', 0o755) +f('sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/net/eth0/statistics/tx_aborted_errors', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/net/eth0/statistics/rx_crc_errors', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/net/eth0/statistics/rx_bytes', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/net/eth0/statistics/rx_errors', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/net/eth0/statistics/tx_packets', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/net/eth0/statistics/tx_carrier_errors', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/net/eth0/statistics/tx_errors', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/net/eth0/statistics/rx_dropped', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/net/eth0/statistics/tx_fifo_errors', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/net/eth0/statistics/rx_length_errors', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/net/eth0/statistics/tx_dropped', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/net/eth0/statistics/rx_fifo_errors', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/net/eth0/statistics/rx_missed_errors', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/net/eth0/statistics/tx_window_errors', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/net/eth0/statistics/collisions', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/net/eth0/statistics/rx_frame_errors', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/net/eth0/statistics/rx_packets', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/net/eth0/statistics/rx_compressed', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/net/eth0/statistics/tx_compressed', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/net/eth0/statistics/multicast', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/net/eth0/statistics/rx_over_errors', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/net/eth0/statistics/tx_bytes', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/net/eth0/statistics/tx_heartbeat_errors', 0o644, b'0\n') +d('sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/net/eth0/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1c.0/0000:02:00.0/net/eth0/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1c.0/0000:00:1c.0:pcie00', 0o755) +l('sys/devices/pci0000:00/0000:00:1c.0/0000:00:1c.0:pcie00/subsystem', '../../../../bus/pci_express') +f('sys/devices/pci0000:00/0000:00:1c.0/0000:00:1c.0:pcie00/uevent', 0o644, b'') +d('sys/devices/pci0000:00/0000:00:1c.0/0000:00:1c.0:pcie00/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1c.0/0000:00:1c.0:pcie00/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1c.0/0000:00:1c.0:pcie02', 0o755) +l('sys/devices/pci0000:00/0000:00:1c.0/0000:00:1c.0:pcie02/subsystem', '../../../../bus/pci_express') +f('sys/devices/pci0000:00/0000:00:1c.0/0000:00:1c.0:pcie02/uevent', 0o644, b'') +d('sys/devices/pci0000:00/0000:00:1c.0/0000:00:1c.0:pcie02/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1c.0/0000:00:1c.0:pcie02/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1f.3', 0o755) +l('sys/devices/pci0000:00/0000:00:1f.3/firmware_node', '../../LNXSYSTM:00/device:00/PNP0A08:00/device:18') +l('sys/devices/pci0000:00/0000:00:1f.3/subsystem', '../../../bus/pci') +f('sys/devices/pci0000:00/0000:00:1f.3/local_cpulist', 0o644, b'0-7\n') +f('sys/devices/pci0000:00/0000:00:1f.3/enable', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1f.3/modalias', 0o644, b'pci:v00008086d000027DAsv000017AAsd0000200Fbc0Csc05i00\n') +f('sys/devices/pci0000:00/0000:00:1f.3/resource', 0o644, b'''0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x00000000000018e0 0x00000000000018ff 0x0000000000020101 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +''') +f('sys/devices/pci0000:00/0000:00:1f.3/config', 0o644, b"\x86\x80\xda'\x01\x01\x80\x02\x02\x00\x05\x0c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe1\x18\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xaa\x17\x0f \x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0b\x01\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x86\x0f\x02\x00\x00\x00\x00\x00") +f('sys/devices/pci0000:00/0000:00:1f.3/local_cpus', 0o644, b'ff\n') +f('sys/devices/pci0000:00/0000:00:1f.3/subsystem_device', 0o644, b'0x200f\n') +f('sys/devices/pci0000:00/0000:00:1f.3/vendor', 0o644, b'0x8086\n') +f('sys/devices/pci0000:00/0000:00:1f.3/irq', 0o644, b'11\n') +f('sys/devices/pci0000:00/0000:00:1f.3/device', 0o644, b'0x27da\n') +f('sys/devices/pci0000:00/0000:00:1f.3/class', 0o644, b'0x0c0500\n') +f('sys/devices/pci0000:00/0000:00:1f.3/msi_bus', 0o644, b'') +f('sys/devices/pci0000:00/0000:00:1f.3/subsystem_vendor', 0o644, b'0x17aa\n') +f('sys/devices/pci0000:00/0000:00:1f.3/uevent', 0o644, b'''PCI_CLASS=C0500 +PCI_ID=8086:27DA +PCI_SUBSYS_ID=17AA:200F +PCI_SLOT_NAME=0000:00:1f.3 +MODALIAS=pci:v00008086d000027DAsv000017AAsd0000200Fbc0Csc05i00 +''') +f('sys/devices/pci0000:00/0000:00:1f.3/resource4', 0o644, b'') +f('sys/devices/pci0000:00/0000:00:1f.3/broken_parity_status', 0o644, b'0\n') +d('sys/devices/pci0000:00/0000:00:1f.3/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1f.3/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.0', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.0/firmware_node', '../../LNXSYSTM:00/device:00/PNP0A08:00/device:19') +l('sys/devices/pci0000:00/0000:00:1d.0/subsystem', '../../../bus/pci') +l('sys/devices/pci0000:00/0000:00:1d.0/driver', '../../../bus/pci/drivers/uhci_hcd') +f('sys/devices/pci0000:00/0000:00:1d.0/local_cpulist', 0o644, b'0-7\n') +f('sys/devices/pci0000:00/0000:00:1d.0/enable', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1d.0/modalias', 0o644, b'pci:v00008086d000027C8sv000017AAsd0000200Abc0Csc03i00\n') +f('sys/devices/pci0000:00/0000:00:1d.0/resource', 0o644, b'''0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000001800 0x000000000000181f 0x0000000000020101 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +''') +f('sys/devices/pci0000:00/0000:00:1d.0/config', 0o644, b"\x86\x80\xc8'\x05\x00\x80\x02\x02\x00\x03\x0c\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x18\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xaa\x17\n \x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0b\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00'\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x86\x0f\x02\x00\x00\x00\x00\x00") +f('sys/devices/pci0000:00/0000:00:1d.0/local_cpus', 0o644, b'ff\n') +f('sys/devices/pci0000:00/0000:00:1d.0/subsystem_device', 0o644, b'0x200a\n') +f('sys/devices/pci0000:00/0000:00:1d.0/vendor', 0o644, b'0x8086\n') +f('sys/devices/pci0000:00/0000:00:1d.0/irq', 0o644, b'16\n') +f('sys/devices/pci0000:00/0000:00:1d.0/pools', 0o644, b'''poolinfo - 0.1 +uhci_qh 11 32 128 1 +uhci_td 1 64 64 1 +buffer-2048 0 0 2048 0 +buffer-512 0 0 512 0 +buffer-128 0 0 128 0 +buffer-32 1 128 32 1 +''') +f('sys/devices/pci0000:00/0000:00:1d.0/device', 0o644, b'0x27c8\n') +f('sys/devices/pci0000:00/0000:00:1d.0/class', 0o644, b'0x0c0300\n') +f('sys/devices/pci0000:00/0000:00:1d.0/msi_bus', 0o644, b'') +f('sys/devices/pci0000:00/0000:00:1d.0/subsystem_vendor', 0o644, b'0x17aa\n') +f('sys/devices/pci0000:00/0000:00:1d.0/uevent', 0o644, b'''DRIVER=uhci_hcd +PCI_CLASS=C0300 +PCI_ID=8086:27C8 +PCI_SUBSYS_ID=17AA:200A +PCI_SLOT_NAME=0000:00:1d.0 +MODALIAS=pci:v00008086d000027C8sv000017AAsd0000200Abc0Csc03i00 +''') +f('sys/devices/pci0000:00/0000:00:1d.0/resource4', 0o644, b'') +f('sys/devices/pci0000:00/0000:00:1d.0/broken_parity_status', 0o644, b'0\n') +d('sys/devices/pci0000:00/0000:00:1d.0/usb1', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.0/usb1/subsystem', '../../../../bus/usb') +l('sys/devices/pci0000:00/0000:00:1d.0/usb1/driver', '../../../../bus/usb/drivers/usb') +l('sys/devices/pci0000:00/0000:00:1d.0/usb1/ep_00', 'usb_endpoint/usbdev1.1_ep00') +f('sys/devices/pci0000:00/0000:00:1d.0/usb1/version', 0o644, b' 1.10\n') +f('sys/devices/pci0000:00/0000:00:1d.0/usb1/authorized_default', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1d.0/usb1/maxchild', 0o644, b'2\n') +f('sys/devices/pci0000:00/0000:00:1d.0/usb1/bDeviceClass', 0o644, b'09\n') +f('sys/devices/pci0000:00/0000:00:1d.0/usb1/bcdDevice', 0o644, b'0206\n') +f('sys/devices/pci0000:00/0000:00:1d.0/usb1/devnum', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1d.0/usb1/bDeviceProtocol', 0o644, b'00\n') +f('sys/devices/pci0000:00/0000:00:1d.0/usb1/idProduct', 0o644, b'0001\n') +f('sys/devices/pci0000:00/0000:00:1d.0/usb1/product', 0o644, b'UHCI Host Controller\n') +f('sys/devices/pci0000:00/0000:00:1d.0/usb1/bDeviceSubClass', 0o644, b'00\n') +f('sys/devices/pci0000:00/0000:00:1d.0/usb1/configuration', 0o644, b'') +f('sys/devices/pci0000:00/0000:00:1d.0/usb1/dev', 0o644, b'189:0\n') +f('sys/devices/pci0000:00/0000:00:1d.0/usb1/urbnum', 0o644, b'16\n') +f('sys/devices/pci0000:00/0000:00:1d.0/usb1/authorized', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1d.0/usb1/descriptors', 0o644, b'\x12\x01\x10\x01\t\x00\x00@k\x1d\x01\x00\x06\x02\x03\x02\x01\x01\t\x02\x19\x00\x01\x01\x00\xe0\x00\t\x04\x00\x00\x01\t\x00\x00\x00\x07\x05\x81\x03\x02\x00\xff') +f('sys/devices/pci0000:00/0000:00:1d.0/usb1/bNumConfigurations', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1d.0/usb1/serial', 0o644, b'0000:00:1d.0\n') +f('sys/devices/pci0000:00/0000:00:1d.0/usb1/speed', 0o644, b'12\n') +f('sys/devices/pci0000:00/0000:00:1d.0/usb1/bMaxPacketSize0', 0o644, b'64\n') +f('sys/devices/pci0000:00/0000:00:1d.0/usb1/bmAttributes', 0o644, b'e0\n') +f('sys/devices/pci0000:00/0000:00:1d.0/usb1/busnum', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1d.0/usb1/quirks', 0o644, b'0x0\n') +f('sys/devices/pci0000:00/0000:00:1d.0/usb1/bConfigurationValue', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1d.0/usb1/uevent', 0o644, b'''MAJOR=189 +MINOR=0 +DEVTYPE=usb_device +DRIVER=usb +PRODUCT=1d6b/1/206 +TYPE=9/0/0 +BUSNUM=001 +DEVNUM=001 +''') +f('sys/devices/pci0000:00/0000:00:1d.0/usb1/manufacturer', 0o644, b'Linux 2.6.27-rc7-00106-g6ef190c-dirty uhci_hcd\n') +f('sys/devices/pci0000:00/0000:00:1d.0/usb1/idVendor', 0o644, b'1d6b\n') +f('sys/devices/pci0000:00/0000:00:1d.0/usb1/bNumInterfaces', 0o644, b' 1\n') +f('sys/devices/pci0000:00/0000:00:1d.0/usb1/bMaxPower', 0o644, b' 0mA\n') +d('sys/devices/pci0000:00/0000:00:1d.0/usb1/usb_endpoint', 0o755) +d('sys/devices/pci0000:00/0000:00:1d.0/usb1/usb_endpoint/usbdev1.1_ep00', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.0/usb1/usb_endpoint/usbdev1.1_ep00/subsystem', '../../../../../../class/usb_endpoint') +l('sys/devices/pci0000:00/0000:00:1d.0/usb1/usb_endpoint/usbdev1.1_ep00/device', '../../../usb1') +f('sys/devices/pci0000:00/0000:00:1d.0/usb1/usb_endpoint/usbdev1.1_ep00/interval', 0o644, b'0ms\n') +f('sys/devices/pci0000:00/0000:00:1d.0/usb1/usb_endpoint/usbdev1.1_ep00/bEndpointAddress', 0o644, b'00\n') +f('sys/devices/pci0000:00/0000:00:1d.0/usb1/usb_endpoint/usbdev1.1_ep00/type', 0o644, b'Control\n') +f('sys/devices/pci0000:00/0000:00:1d.0/usb1/usb_endpoint/usbdev1.1_ep00/dev', 0o644, b'252:1\n') +f('sys/devices/pci0000:00/0000:00:1d.0/usb1/usb_endpoint/usbdev1.1_ep00/direction', 0o644, b'both\n') +f('sys/devices/pci0000:00/0000:00:1d.0/usb1/usb_endpoint/usbdev1.1_ep00/bLength', 0o644, b'07\n') +f('sys/devices/pci0000:00/0000:00:1d.0/usb1/usb_endpoint/usbdev1.1_ep00/wMaxPacketSize', 0o644, b'0040\n') +f('sys/devices/pci0000:00/0000:00:1d.0/usb1/usb_endpoint/usbdev1.1_ep00/bmAttributes', 0o644, b'00\n') +f('sys/devices/pci0000:00/0000:00:1d.0/usb1/usb_endpoint/usbdev1.1_ep00/uevent', 0o644, b'''MAJOR=252 +MINOR=1 +''') +f('sys/devices/pci0000:00/0000:00:1d.0/usb1/usb_endpoint/usbdev1.1_ep00/bInterval', 0o644, b'00\n') +d('sys/devices/pci0000:00/0000:00:1d.0/usb1/usb_endpoint/usbdev1.1_ep00/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.0/usb1/usb_endpoint/usbdev1.1_ep00/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.0/usb1/1-0:1.0', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.0/usb1/1-0:1.0/subsystem', '../../../../../bus/usb') +l('sys/devices/pci0000:00/0000:00:1d.0/usb1/1-0:1.0/ep_81', 'usb_endpoint/usbdev1.1_ep81') +l('sys/devices/pci0000:00/0000:00:1d.0/usb1/1-0:1.0/driver', '../../../../../bus/usb/drivers/hub') +f('sys/devices/pci0000:00/0000:00:1d.0/usb1/1-0:1.0/modalias', 0o644, b'usb:v1D6Bp0001d0206dc09dsc00dp00ic09isc00ip00\n') +f('sys/devices/pci0000:00/0000:00:1d.0/usb1/1-0:1.0/bInterfaceNumber', 0o644, b'00\n') +f('sys/devices/pci0000:00/0000:00:1d.0/usb1/1-0:1.0/bNumEndpoints', 0o644, b'01\n') +f('sys/devices/pci0000:00/0000:00:1d.0/usb1/1-0:1.0/bInterfaceSubClass', 0o644, b'00\n') +f('sys/devices/pci0000:00/0000:00:1d.0/usb1/1-0:1.0/bAlternateSetting', 0o644, b' 0\n') +f('sys/devices/pci0000:00/0000:00:1d.0/usb1/1-0:1.0/bInterfaceClass', 0o644, b'09\n') +f('sys/devices/pci0000:00/0000:00:1d.0/usb1/1-0:1.0/uevent', 0o644, b'''DEVTYPE=usb_interface +DRIVER=hub +PRODUCT=1d6b/1/206 +TYPE=9/0/0 +INTERFACE=9/0/0 +MODALIAS=usb:v1D6Bp0001d0206dc09dsc00dp00ic09isc00ip00 +''') +f('sys/devices/pci0000:00/0000:00:1d.0/usb1/1-0:1.0/bInterfaceProtocol', 0o644, b'00\n') +d('sys/devices/pci0000:00/0000:00:1d.0/usb1/1-0:1.0/usb_endpoint', 0o755) +d('sys/devices/pci0000:00/0000:00:1d.0/usb1/1-0:1.0/usb_endpoint/usbdev1.1_ep81', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.0/usb1/1-0:1.0/usb_endpoint/usbdev1.1_ep81/subsystem', '../../../../../../../class/usb_endpoint') +l('sys/devices/pci0000:00/0000:00:1d.0/usb1/1-0:1.0/usb_endpoint/usbdev1.1_ep81/device', '../../../1-0:1.0') +f('sys/devices/pci0000:00/0000:00:1d.0/usb1/1-0:1.0/usb_endpoint/usbdev1.1_ep81/interval', 0o644, b'255ms\n') +f('sys/devices/pci0000:00/0000:00:1d.0/usb1/1-0:1.0/usb_endpoint/usbdev1.1_ep81/bEndpointAddress', 0o644, b'81\n') +f('sys/devices/pci0000:00/0000:00:1d.0/usb1/1-0:1.0/usb_endpoint/usbdev1.1_ep81/type', 0o644, b'Interrupt\n') +f('sys/devices/pci0000:00/0000:00:1d.0/usb1/1-0:1.0/usb_endpoint/usbdev1.1_ep81/dev', 0o644, b'252:0\n') +f('sys/devices/pci0000:00/0000:00:1d.0/usb1/1-0:1.0/usb_endpoint/usbdev1.1_ep81/direction', 0o644, b'in\n') +f('sys/devices/pci0000:00/0000:00:1d.0/usb1/1-0:1.0/usb_endpoint/usbdev1.1_ep81/bLength', 0o644, b'07\n') +f('sys/devices/pci0000:00/0000:00:1d.0/usb1/1-0:1.0/usb_endpoint/usbdev1.1_ep81/wMaxPacketSize', 0o644, b'0002\n') +f('sys/devices/pci0000:00/0000:00:1d.0/usb1/1-0:1.0/usb_endpoint/usbdev1.1_ep81/bmAttributes', 0o644, b'03\n') +f('sys/devices/pci0000:00/0000:00:1d.0/usb1/1-0:1.0/usb_endpoint/usbdev1.1_ep81/uevent', 0o644, b'''MAJOR=252 +MINOR=0 +''') +f('sys/devices/pci0000:00/0000:00:1d.0/usb1/1-0:1.0/usb_endpoint/usbdev1.1_ep81/bInterval', 0o644, b'ff\n') +d('sys/devices/pci0000:00/0000:00:1d.0/usb1/1-0:1.0/usb_endpoint/usbdev1.1_ep81/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.0/usb1/1-0:1.0/usb_endpoint/usbdev1.1_ep81/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.0/usb1/1-0:1.0/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.0/usb1/1-0:1.0/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.0/usb1/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.0/usb1/power/active_duration', 0o644, b'2532\n') +f('sys/devices/pci0000:00/0000:00:1d.0/usb1/power/wakeup', 0o644, b'enabled\n') +f('sys/devices/pci0000:00/0000:00:1d.0/usb1/power/connected_duration', 0o644, b'8372376\n') +f('sys/devices/pci0000:00/0000:00:1d.0/usb1/power/autosuspend', 0o644, b'2\n') +f('sys/devices/pci0000:00/0000:00:1d.0/usb1/power/level', 0o644, b'auto\n') +d('sys/devices/pci0000:00/0000:00:1d.0/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.0/power/wakeup', 0o644, b'disabled\n') +d('sys/devices/pci0000:00/0000:00:1d.0/usb_host', 0o755) +d('sys/devices/pci0000:00/0000:00:1d.0/usb_host/usb_host1', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.0/usb_host/usb_host1/subsystem', '../../../../../class/usb_host') +l('sys/devices/pci0000:00/0000:00:1d.0/usb_host/usb_host1/device', '../../../0000:00:1d.0') +f('sys/devices/pci0000:00/0000:00:1d.0/usb_host/usb_host1/uevent', 0o644, b'') +d('sys/devices/pci0000:00/0000:00:1d.0/usb_host/usb_host1/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.0/usb_host/usb_host1/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1f.2', 0o755) +l('sys/devices/pci0000:00/0000:00:1f.2/firmware_node', '../../LNXSYSTM:00/device:00/PNP0A08:00/device:16') +l('sys/devices/pci0000:00/0000:00:1f.2/subsystem', '../../../bus/pci') +l('sys/devices/pci0000:00/0000:00:1f.2/driver', '../../../bus/pci/drivers/ahci') +f('sys/devices/pci0000:00/0000:00:1f.2/local_cpulist', 0o644, b'0-7\n') +f('sys/devices/pci0000:00/0000:00:1f.2/resource3', 0o644, b'') +f('sys/devices/pci0000:00/0000:00:1f.2/enable', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1f.2/modalias', 0o644, b'pci:v00008086d000027C5sv000017AAsd0000200Dbc01sc06i01\n') +f('sys/devices/pci0000:00/0000:00:1f.2/resource', 0o644, b'''0x00000000000018c8 0x00000000000018cf 0x0000000000020101 +0x00000000000018ac 0x00000000000018af 0x0000000000020101 +0x00000000000018c0 0x00000000000018c7 0x0000000000020101 +0x00000000000018a8 0x00000000000018ab 0x0000000000020101 +0x00000000000018b0 0x00000000000018bf 0x0000000000020101 +0x00000000ee404400 0x00000000ee4047ff 0x0000000000020200 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +''') +f('sys/devices/pci0000:00/0000:00:1f.2/config', 0o644, b"\x86\x80\xc5'\x07\x04\xb0\x02\x02\x01\x06\x01\x00\x00\x00\x00\xc9\x18\x00\x00\xad\x18\x00\x00\xc1\x18\x00\x00\xa9\x18\x00\x00\xb1\x18\x00\x00\x00D@\xee\x00\x00\x00\x00\xaa\x17\r \x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x0b\x02\x00\x00\x07\xa3\x00\x80\x00\x00\x00\x00\x01\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x02@\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x05p\x01\x00\x0c0\xe0\xfe\x99A\x00\x00\x00\x00\x00\x00@\x00\x11\x10\x80\x01\x00J\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x86\x0f\x02\x00\x00\x00\x00\x00") +f('sys/devices/pci0000:00/0000:00:1f.2/resource1', 0o644, b'') +f('sys/devices/pci0000:00/0000:00:1f.2/resource2', 0o644, b'') +f('sys/devices/pci0000:00/0000:00:1f.2/local_cpus', 0o644, b'ff\n') +f('sys/devices/pci0000:00/0000:00:1f.2/subsystem_device', 0o644, b'0x200d\n') +f('sys/devices/pci0000:00/0000:00:1f.2/vendor', 0o644, b'0x8086\n') +f('sys/devices/pci0000:00/0000:00:1f.2/irq', 0o644, b'506\n') +f('sys/devices/pci0000:00/0000:00:1f.2/device', 0o644, b'0x27c5\n') +f('sys/devices/pci0000:00/0000:00:1f.2/class', 0o644, b'0x010601\n') +f('sys/devices/pci0000:00/0000:00:1f.2/resource5', 0o644, b'') +f('sys/devices/pci0000:00/0000:00:1f.2/msi_bus', 0o644, b'') +f('sys/devices/pci0000:00/0000:00:1f.2/resource0', 0o644, b'') +f('sys/devices/pci0000:00/0000:00:1f.2/subsystem_vendor', 0o644, b'0x17aa\n') +f('sys/devices/pci0000:00/0000:00:1f.2/uevent', 0o644, b'''DRIVER=ahci +PCI_CLASS=10601 +PCI_ID=8086:27C5 +PCI_SUBSYS_ID=17AA:200D +PCI_SLOT_NAME=0000:00:1f.2 +MODALIAS=pci:v00008086d000027C5sv000017AAsd0000200Dbc01sc06i01 +''') +f('sys/devices/pci0000:00/0000:00:1f.2/resource4', 0o644, b'') +f('sys/devices/pci0000:00/0000:00:1f.2/broken_parity_status', 0o644, b'0\n') +d('sys/devices/pci0000:00/0000:00:1f.2/host0', 0o755) +l('sys/devices/pci0000:00/0000:00:1f.2/host0/subsystem', '../../../../bus/scsi') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/uevent', 0o644, b'DEVTYPE=scsi_host\n') +d('sys/devices/pci0000:00/0000:00:1f.2/host0/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1f.2/host0/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0', 0o755) +l('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/subsystem', '../../../../../bus/scsi') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/uevent', 0o644, b'DEVTYPE=scsi_target\n') +d('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0', 0o755) +l('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/generic', 'scsi_generic/sg0') +l('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/subsystem', '../../../../../../bus/scsi') +l('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/driver', '../../../../../../bus/scsi/drivers/sd') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/iodone_cnt', 0o644, b'0x6877\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/device_blocked', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/modalias', 0o644, b'scsi:t-0x00\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/scsi_level', 0o644, b'6\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/queue_depth', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/rev', 0o644, b'4.06\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/type', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/sw_activity', 0o644, b'') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/whitespace_test', 0o644, b'WHITE SPACE \n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/iocounterbits', 0o644, b'32\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/vendor', 0o644, b'ATA \n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/state', 0o644, b'running\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/queue_type', 0o644, b'none\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/iorequest_cnt', 0o644, b'0x6877\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/evt_media_change', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/model', 0o644, b'ST910021AS \n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/ioerr_cnt', 0o644, b'0x6\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/uevent', 0o644, b'''DEVTYPE=scsi_device +DRIVER=sd +MODALIAS=scsi:t-0x00 +''') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/timeout', 0o644, b'60\n') +d('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/scsi_disk', 0o755) +d('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/scsi_disk/0:0:0:0', 0o755) +l('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/scsi_disk/0:0:0:0/subsystem', '../../../../../../../../class/scsi_disk') +l('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/scsi_disk/0:0:0:0/device', '../../../0:0:0:0') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/scsi_disk/0:0:0:0/app_tag_own', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/scsi_disk/0:0:0:0/FUA', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/scsi_disk/0:0:0:0/cache_type', 0o644, b'write back\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/scsi_disk/0:0:0:0/protection_type', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/scsi_disk/0:0:0:0/manage_start_stop', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/scsi_disk/0:0:0:0/allow_restart', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/scsi_disk/0:0:0:0/uevent', 0o644, b'') +d('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/scsi_disk/0:0:0:0/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/scsi_disk/0:0:0:0/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/scsi_generic', 0o755) +d('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/scsi_generic/sg0', 0o755) +l('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/scsi_generic/sg0/subsystem', '../../../../../../../../class/scsi_generic') +l('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/scsi_generic/sg0/device', '../../../0:0:0:0') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/scsi_generic/sg0/dev', 0o644, b'21:0\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/scsi_generic/sg0/uevent', 0o644, b'''MAJOR=21 +MINOR=0 +''') +d('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/scsi_generic/sg0/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/scsi_generic/sg0/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/bsg', 0o755) +d('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/bsg/0:0:0:0', 0o755) +l('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/bsg/0:0:0:0/subsystem', '../../../../../../../../class/bsg') +l('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/bsg/0:0:0:0/device', '../../../0:0:0:0') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/bsg/0:0:0:0/dev', 0o644, b'254:0\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/bsg/0:0:0:0/uevent', 0o644, b'''MAJOR=254 +MINOR=0 +''') +d('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/bsg/0:0:0:0/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/bsg/0:0:0:0/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block', 0o755) +d('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda', 0o755) +l('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/subsystem', '../../../../../../../../class/block') +l('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/bdi', '../../../../../../../virtual/bdi/8:0') +l('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/device', '../../../0:0:0:0') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/capability', 0o644, b'12\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/ro', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/make-it-fail', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/test:colon+plus', 0o644, b'colon\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/size', 0o644, b'195371568\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/dev', 0o644, b'8:0\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/range', 0o644, b'16\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/removable', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/stat', 0o644, b' 12939 5801 590192 194190 13755 63323 617056 2678026 0 114408 2872209\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/uevent', 0o644, b'''MAJOR=8 +MINOR=0 +DEVTYPE=disk +DEVNAME=sda +''') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/test_empty_file', 0o644, b'') +d('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/queue', 0o755) +l('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/queue/bsg', '../../../bsg/0:0:0:0') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/queue/nr_requests', 0o644, b'128\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/queue/nomerges', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/queue/scheduler', 0o644, b'noop anticipatory deadline [cfq] \n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/queue/hw_sector_size', 0o644, b'512\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/queue/max_hw_sectors_kb', 0o644, b'32767\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/queue/read_ahead_kb', 0o644, b'128\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/queue/max_sectors_kb', 0o644, b'512\n') +d('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/queue/iosched', 0o755) +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/queue/iosched/slice_async_rq', 0o644, b'2\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/queue/iosched/back_seek_max', 0o644, b'16384\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/queue/iosched/slice_sync', 0o644, b'100\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/queue/iosched/slice_async', 0o644, b'40\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/queue/iosched/fifo_expire_sync', 0o644, b'125\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/queue/iosched/slice_idle', 0o644, b'8\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/queue/iosched/back_seek_penalty', 0o644, b'2\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/queue/iosched/fifo_expire_async', 0o644, b'250\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/queue/iosched/quantum', 0o644, b'4\n') +d('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda10', 0o755) +l('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda10/subsystem', '../../../../../../../../../class/block') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda10/start', 0o644, b'190820133\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda10/make-it-fail', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda10/size', 0o644, b'4546332\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda10/dev', 0o644, b'8:10\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda10/stat', 0o644, b' 42 43 384 417 0 0 0 0 0 286 417\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda10/uevent', 0o644, b'''MAJOR=8 +MINOR=10 +DEVTYPE=partition +''') +d('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda10/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda10/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda9', 0o755) +l('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda9/subsystem', '../../../../../../../../../class/block') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda9/start', 0o644, b'143942463\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda9/make-it-fail', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda9/size', 0o644, b'46877607\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda9/dev', 0o644, b'8:9\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda9/stat', 0o644, b' 70 322 896 800 3 0 40 240 0 945 1039\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda9/uevent', 0o644, b'''MAJOR=8 +MINOR=9 +DEVTYPE=partition +''') +d('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda9/holders', 0o755) +l('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda9/holders/md0', '../../../../../../../../../virtual/block/md0') +d('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda9/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda9/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda7', 0o755) +l('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda7/subsystem', '../../../../../../../../../class/block') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda7/start', 0o644, b'104872383\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda7/make-it-fail', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda7/size', 0o644, b'19534977\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda7/dev', 0o644, b'8:7\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda7/stat', 0o644, b' 35 263 298 419 0 0 0 0 0 298 419\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda7/uevent', 0o644, b'''MAJOR=8 +MINOR=7 +DEVTYPE=partition +''') +d('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda7/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda7/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda1', 0o755) +l('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda1/subsystem', '../../../../../../../../../class/block') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda1/start', 0o644, b'63\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda1/make-it-fail', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda1/size', 0o644, b'2\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda1/dev', 0o644, b'8:1\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda1/stat', 0o644, b' 2 0 4 36 0 0 0 0 0 36 36\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda1/uevent', 0o644, b'''MAJOR=8 +MINOR=1 +DEVTYPE=partition +DEVNAME=sda1 +''') +d('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda1/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda1/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda8', 0o755) +l('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda8/subsystem', '../../../../../../../../../class/block') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda8/start', 0o644, b'124407423\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda8/make-it-fail', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda8/size', 0o644, b'19534977\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda8/dev', 0o644, b'8:8\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda8/stat', 0o644, b' 34 264 298 498 0 0 0 0 0 368 498\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda8/uevent', 0o644, b'''MAJOR=8 +MINOR=8 +DEVTYPE=partition +''') +d('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda8/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda8/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda5', 0o755) +l('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda5/subsystem', '../../../../../../../../../class/block') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda5/start', 0o644, b'126\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda5/make-it-fail', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda5/size', 0o644, b'62926479\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda5/dev', 0o644, b'8:5\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda5/stat', 0o644, b' 11087 4819 566626 169007 2951 4548 59992 129572 0 65249 298573\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda5/uevent', 0o644, b'''MAJOR=8 +MINOR=5 +DEVTYPE=partition +DEVNAME=sda5 +''') +d('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda5/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda5/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda6', 0o755) +l('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda6/subsystem', '../../../../../../../../../class/block') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda6/start', 0o644, b'62926668\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda6/make-it-fail', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda6/size', 0o644, b'41945652\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda6/dev', 0o644, b'8:6\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda6/stat', 0o644, b' 1648 67 21334 22824 10801 58775 557024 2548214 0 51231 2571037\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda6/uevent', 0o644, b'''MAJOR=8 +MINOR=6 +DEVTYPE=partition +''') +d('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda6/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda6/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/scsi_device', 0o755) +d('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/scsi_device/0:0:0:0', 0o755) +l('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/scsi_device/0:0:0:0/subsystem', '../../../../../../../../class/scsi_device') +l('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/scsi_device/0:0:0:0/device', '../../../0:0:0:0') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/scsi_device/0:0:0:0/uevent', 0o644, b'') +d('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/scsi_device/0:0:0:0/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/scsi_device/0:0:0:0/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1f.2/host0/scsi_host', 0o755) +d('sys/devices/pci0000:00/0000:00:1f.2/host0/scsi_host/host0', 0o755) +l('sys/devices/pci0000:00/0000:00:1f.2/host0/scsi_host/host0/subsystem', '../../../../../../class/scsi_host') +l('sys/devices/pci0000:00/0000:00:1f.2/host0/scsi_host/host0/device', '../../../host0') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/scsi_host/host0/unique_id', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/scsi_host/host0/can_queue', 0o644, b'31\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/scsi_host/host0/unchecked_isa_dma', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/scsi_host/host0/active_mode', 0o644, b'Initiator\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/scsi_host/host0/sg_tablesize', 0o644, b'168\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/scsi_host/host0/prot_guard_type', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/scsi_host/host0/link_power_management_policy', 0o644, b'medium_power\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/scsi_host/host0/host_busy', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/scsi_host/host0/proc_name', 0o644, b'ahci\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/scsi_host/host0/state', 0o644, b'running\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/scsi_host/host0/cmd_per_lun', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/scsi_host/host0/em_message', 0o644, b'') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/scsi_host/host0/em_message_type', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/scsi_host/host0/supported_mode', 0o644, b'Initiator\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/scsi_host/host0/uevent', 0o644, b'') +f('sys/devices/pci0000:00/0000:00:1f.2/host0/scsi_host/host0/prot_capabilities', 0o644, b'0\n') +d('sys/devices/pci0000:00/0000:00:1f.2/host0/scsi_host/host0/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1f.2/host0/scsi_host/host0/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1f.2/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1f.2/power/wakeup', 0o644, b'disabled\n') +d('sys/devices/pci0000:00/0000:00:1f.2/host1', 0o755) +l('sys/devices/pci0000:00/0000:00:1f.2/host1/subsystem', '../../../../bus/scsi') +f('sys/devices/pci0000:00/0000:00:1f.2/host1/uevent', 0o644, b'DEVTYPE=scsi_host\n') +d('sys/devices/pci0000:00/0000:00:1f.2/host1/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1f.2/host1/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1f.2/host1/scsi_host', 0o755) +d('sys/devices/pci0000:00/0000:00:1f.2/host1/scsi_host/host1', 0o755) +l('sys/devices/pci0000:00/0000:00:1f.2/host1/scsi_host/host1/subsystem', '../../../../../../class/scsi_host') +l('sys/devices/pci0000:00/0000:00:1f.2/host1/scsi_host/host1/device', '../../../host1') +f('sys/devices/pci0000:00/0000:00:1f.2/host1/scsi_host/host1/unique_id', 0o644, b'2\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host1/scsi_host/host1/can_queue', 0o644, b'31\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host1/scsi_host/host1/unchecked_isa_dma', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host1/scsi_host/host1/active_mode', 0o644, b'Initiator\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host1/scsi_host/host1/sg_tablesize', 0o644, b'168\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host1/scsi_host/host1/prot_guard_type', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host1/scsi_host/host1/link_power_management_policy', 0o644, b'max_performance\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host1/scsi_host/host1/host_busy', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host1/scsi_host/host1/proc_name', 0o644, b'ahci\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host1/scsi_host/host1/state', 0o644, b'running\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host1/scsi_host/host1/cmd_per_lun', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host1/scsi_host/host1/em_message', 0o644, b'') +f('sys/devices/pci0000:00/0000:00:1f.2/host1/scsi_host/host1/em_message_type', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host1/scsi_host/host1/supported_mode', 0o644, b'Initiator\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host1/scsi_host/host1/uevent', 0o644, b'') +f('sys/devices/pci0000:00/0000:00:1f.2/host1/scsi_host/host1/prot_capabilities', 0o644, b'0\n') +d('sys/devices/pci0000:00/0000:00:1f.2/host1/scsi_host/host1/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1f.2/host1/scsi_host/host1/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1f.2/host2', 0o755) +l('sys/devices/pci0000:00/0000:00:1f.2/host2/subsystem', '../../../../bus/scsi') +f('sys/devices/pci0000:00/0000:00:1f.2/host2/uevent', 0o644, b'DEVTYPE=scsi_host\n') +d('sys/devices/pci0000:00/0000:00:1f.2/host2/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1f.2/host2/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1f.2/host2/scsi_host', 0o755) +d('sys/devices/pci0000:00/0000:00:1f.2/host2/scsi_host/host2', 0o755) +l('sys/devices/pci0000:00/0000:00:1f.2/host2/scsi_host/host2/subsystem', '../../../../../../class/scsi_host') +l('sys/devices/pci0000:00/0000:00:1f.2/host2/scsi_host/host2/device', '../../../host2') +f('sys/devices/pci0000:00/0000:00:1f.2/host2/scsi_host/host2/unique_id', 0o644, b'3\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host2/scsi_host/host2/can_queue', 0o644, b'31\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host2/scsi_host/host2/unchecked_isa_dma', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host2/scsi_host/host2/active_mode', 0o644, b'Initiator\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host2/scsi_host/host2/sg_tablesize', 0o644, b'168\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host2/scsi_host/host2/prot_guard_type', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host2/scsi_host/host2/link_power_management_policy', 0o644, b'max_performance\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host2/scsi_host/host2/host_busy', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host2/scsi_host/host2/proc_name', 0o644, b'ahci\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host2/scsi_host/host2/state', 0o644, b'running\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host2/scsi_host/host2/cmd_per_lun', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host2/scsi_host/host2/em_message', 0o644, b'') +f('sys/devices/pci0000:00/0000:00:1f.2/host2/scsi_host/host2/em_message_type', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host2/scsi_host/host2/supported_mode', 0o644, b'Initiator\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host2/scsi_host/host2/uevent', 0o644, b'') +f('sys/devices/pci0000:00/0000:00:1f.2/host2/scsi_host/host2/prot_capabilities', 0o644, b'0\n') +d('sys/devices/pci0000:00/0000:00:1f.2/host2/scsi_host/host2/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1f.2/host2/scsi_host/host2/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1f.2/host3', 0o755) +l('sys/devices/pci0000:00/0000:00:1f.2/host3/subsystem', '../../../../bus/scsi') +f('sys/devices/pci0000:00/0000:00:1f.2/host3/uevent', 0o644, b'DEVTYPE=scsi_host\n') +d('sys/devices/pci0000:00/0000:00:1f.2/host3/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1f.2/host3/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1f.2/host3/scsi_host', 0o755) +d('sys/devices/pci0000:00/0000:00:1f.2/host3/scsi_host/host3', 0o755) +l('sys/devices/pci0000:00/0000:00:1f.2/host3/scsi_host/host3/subsystem', '../../../../../../class/scsi_host') +l('sys/devices/pci0000:00/0000:00:1f.2/host3/scsi_host/host3/device', '../../../host3') +f('sys/devices/pci0000:00/0000:00:1f.2/host3/scsi_host/host3/unique_id', 0o644, b'4\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host3/scsi_host/host3/can_queue', 0o644, b'31\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host3/scsi_host/host3/unchecked_isa_dma', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host3/scsi_host/host3/active_mode', 0o644, b'Initiator\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host3/scsi_host/host3/sg_tablesize', 0o644, b'168\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host3/scsi_host/host3/prot_guard_type', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host3/scsi_host/host3/link_power_management_policy', 0o644, b'max_performance\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host3/scsi_host/host3/host_busy', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host3/scsi_host/host3/proc_name', 0o644, b'ahci\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host3/scsi_host/host3/state', 0o644, b'running\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host3/scsi_host/host3/cmd_per_lun', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host3/scsi_host/host3/em_message', 0o644, b'') +f('sys/devices/pci0000:00/0000:00:1f.2/host3/scsi_host/host3/em_message_type', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host3/scsi_host/host3/supported_mode', 0o644, b'Initiator\n') +f('sys/devices/pci0000:00/0000:00:1f.2/host3/scsi_host/host3/uevent', 0o644, b'') +f('sys/devices/pci0000:00/0000:00:1f.2/host3/scsi_host/host3/prot_capabilities', 0o644, b'0\n') +d('sys/devices/pci0000:00/0000:00:1f.2/host3/scsi_host/host3/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1f.2/host3/scsi_host/host3/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.2', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.2/firmware_node', '../../LNXSYSTM:00/device:00/PNP0A08:00/device:1d') +l('sys/devices/pci0000:00/0000:00:1d.2/subsystem', '../../../bus/pci') +l('sys/devices/pci0000:00/0000:00:1d.2/driver', '../../../bus/pci/drivers/uhci_hcd') +f('sys/devices/pci0000:00/0000:00:1d.2/local_cpulist', 0o644, b'0-7\n') +f('sys/devices/pci0000:00/0000:00:1d.2/enable', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1d.2/modalias', 0o644, b'pci:v00008086d000027CAsv000017AAsd0000200Abc0Csc03i00\n') +f('sys/devices/pci0000:00/0000:00:1d.2/resource', 0o644, b'''0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000001840 0x000000000000185f 0x0000000000020101 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +''') +f('sys/devices/pci0000:00/0000:00:1d.2/config', 0o644, b"\x86\x80\xca'\x05\x00\x80\x02\x02\x00\x03\x0c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00A\x18\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xaa\x17\n \x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0b\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00'\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x86\x0f\x02\x00\x00\x00\x00\x00") +f('sys/devices/pci0000:00/0000:00:1d.2/local_cpus', 0o644, b'ff\n') +f('sys/devices/pci0000:00/0000:00:1d.2/subsystem_device', 0o644, b'0x200a\n') +f('sys/devices/pci0000:00/0000:00:1d.2/vendor', 0o644, b'0x8086\n') +f('sys/devices/pci0000:00/0000:00:1d.2/irq', 0o644, b'18\n') +f('sys/devices/pci0000:00/0000:00:1d.2/pools', 0o644, b'''poolinfo - 0.1 +uhci_qh 13 32 128 1 +uhci_td 4 64 64 1 +buffer-2048 0 0 2048 0 +buffer-512 0 0 512 0 +buffer-128 3 32 128 1 +buffer-32 2 128 32 1 +''') +f('sys/devices/pci0000:00/0000:00:1d.2/device', 0o644, b'0x27ca\n') +f('sys/devices/pci0000:00/0000:00:1d.2/class', 0o644, b'0x0c0300\n') +f('sys/devices/pci0000:00/0000:00:1d.2/msi_bus', 0o644, b'') +f('sys/devices/pci0000:00/0000:00:1d.2/subsystem_vendor', 0o644, b'0x17aa\n') +f('sys/devices/pci0000:00/0000:00:1d.2/uevent', 0o644, b'''DRIVER=uhci_hcd +PCI_CLASS=C0300 +PCI_ID=8086:27CA +PCI_SUBSYS_ID=17AA:200A +PCI_SLOT_NAME=0000:00:1d.2 +MODALIAS=pci:v00008086d000027CAsv000017AAsd0000200Abc0Csc03i00 +''') +f('sys/devices/pci0000:00/0000:00:1d.2/resource4', 0o644, b'') +f('sys/devices/pci0000:00/0000:00:1d.2/broken_parity_status', 0o644, b'0\n') +d('sys/devices/pci0000:00/0000:00:1d.2/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.2/power/wakeup', 0o644, b'disabled\n') +d('sys/devices/pci0000:00/0000:00:1d.2/usb_host', 0o755) +d('sys/devices/pci0000:00/0000:00:1d.2/usb_host/usb_host3', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.2/usb_host/usb_host3/subsystem', '../../../../../class/usb_host') +l('sys/devices/pci0000:00/0000:00:1d.2/usb_host/usb_host3/device', '../../../0000:00:1d.2') +f('sys/devices/pci0000:00/0000:00:1d.2/usb_host/usb_host3/uevent', 0o644, b'') +d('sys/devices/pci0000:00/0000:00:1d.2/usb_host/usb_host3/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.2/usb_host/usb_host3/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.2/usb3', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.2/usb3/subsystem', '../../../../bus/usb') +l('sys/devices/pci0000:00/0000:00:1d.2/usb3/driver', '../../../../bus/usb/drivers/usb') +l('sys/devices/pci0000:00/0000:00:1d.2/usb3/ep_00', 'usb_endpoint/usbdev3.1_ep00') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/version', 0o644, b' 1.10\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/authorized_default', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/maxchild', 0o644, b'2\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/bDeviceClass', 0o644, b'09\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/bcdDevice', 0o644, b'0206\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/devnum', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/bDeviceProtocol', 0o644, b'00\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/idProduct', 0o644, b'0001\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/product', 0o644, b'UHCI Host Controller\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/bDeviceSubClass', 0o644, b'00\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/configuration', 0o644, b'') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/dev', 0o644, b'189:256\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/urbnum', 0o644, b'68\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/authorized', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/descriptors', 0o644, b'\x12\x01\x10\x01\t\x00\x00@k\x1d\x01\x00\x06\x02\x03\x02\x01\x01\t\x02\x19\x00\x01\x01\x00\xe0\x00\t\x04\x00\x00\x01\t\x00\x00\x00\x07\x05\x81\x03\x02\x00\xff') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/bNumConfigurations', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/serial', 0o644, b'0000:00:1d.2\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/speed', 0o644, b'12\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/bMaxPacketSize0', 0o644, b'64\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/bmAttributes', 0o644, b'e0\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/busnum', 0o644, b'3\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/quirks', 0o644, b'0x0\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/bConfigurationValue', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/uevent', 0o644, b'''MAJOR=189 +MINOR=256 +DEVTYPE=usb_device +DRIVER=usb +PRODUCT=1d6b/1/206 +TYPE=9/0/0 +BUSNUM=003 +DEVNUM=001 +''') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/manufacturer', 0o644, b'Linux 2.6.27-rc7-00106-g6ef190c-dirty uhci_hcd\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/idVendor', 0o644, b'1d6b\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/bNumInterfaces', 0o644, b' 1\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/bMaxPower', 0o644, b' 0mA\n') +d('sys/devices/pci0000:00/0000:00:1d.2/usb3/usb_endpoint', 0o755) +d('sys/devices/pci0000:00/0000:00:1d.2/usb3/usb_endpoint/usbdev3.1_ep00', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.2/usb3/usb_endpoint/usbdev3.1_ep00/subsystem', '../../../../../../class/usb_endpoint') +l('sys/devices/pci0000:00/0000:00:1d.2/usb3/usb_endpoint/usbdev3.1_ep00/device', '../../../usb3') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/usb_endpoint/usbdev3.1_ep00/interval', 0o644, b'0ms\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/usb_endpoint/usbdev3.1_ep00/bEndpointAddress', 0o644, b'00\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/usb_endpoint/usbdev3.1_ep00/type', 0o644, b'Control\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/usb_endpoint/usbdev3.1_ep00/dev', 0o644, b'252:5\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/usb_endpoint/usbdev3.1_ep00/direction', 0o644, b'both\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/usb_endpoint/usbdev3.1_ep00/bLength', 0o644, b'07\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/usb_endpoint/usbdev3.1_ep00/wMaxPacketSize', 0o644, b'0040\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/usb_endpoint/usbdev3.1_ep00/bmAttributes', 0o644, b'00\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/usb_endpoint/usbdev3.1_ep00/uevent', 0o644, b'''MAJOR=252 +MINOR=5 +''') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/usb_endpoint/usbdev3.1_ep00/bInterval', 0o644, b'00\n') +d('sys/devices/pci0000:00/0000:00:1d.2/usb3/usb_endpoint/usbdev3.1_ep00/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/usb_endpoint/usbdev3.1_ep00/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-0:1.0', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-0:1.0/subsystem', '../../../../../bus/usb') +l('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-0:1.0/ep_81', 'usb_endpoint/usbdev3.1_ep81') +l('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-0:1.0/driver', '../../../../../bus/usb/drivers/hub') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-0:1.0/modalias', 0o644, b'usb:v1D6Bp0001d0206dc09dsc00dp00ic09isc00ip00\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-0:1.0/bInterfaceNumber', 0o644, b'00\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-0:1.0/bNumEndpoints', 0o644, b'01\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-0:1.0/bInterfaceSubClass', 0o644, b'00\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-0:1.0/bAlternateSetting', 0o644, b' 0\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-0:1.0/bInterfaceClass', 0o644, b'09\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-0:1.0/uevent', 0o644, b'''DEVTYPE=usb_interface +DRIVER=hub +PRODUCT=1d6b/1/206 +TYPE=9/0/0 +INTERFACE=9/0/0 +MODALIAS=usb:v1D6Bp0001d0206dc09dsc00dp00ic09isc00ip00 +''') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-0:1.0/bInterfaceProtocol', 0o644, b'00\n') +d('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-0:1.0/usb_endpoint', 0o755) +d('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-0:1.0/usb_endpoint/usbdev3.1_ep81', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-0:1.0/usb_endpoint/usbdev3.1_ep81/subsystem', '../../../../../../../class/usb_endpoint') +l('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-0:1.0/usb_endpoint/usbdev3.1_ep81/device', '../../../3-0:1.0') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-0:1.0/usb_endpoint/usbdev3.1_ep81/interval', 0o644, b'255ms\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-0:1.0/usb_endpoint/usbdev3.1_ep81/bEndpointAddress', 0o644, b'81\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-0:1.0/usb_endpoint/usbdev3.1_ep81/type', 0o644, b'Interrupt\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-0:1.0/usb_endpoint/usbdev3.1_ep81/dev', 0o644, b'252:4\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-0:1.0/usb_endpoint/usbdev3.1_ep81/direction', 0o644, b'in\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-0:1.0/usb_endpoint/usbdev3.1_ep81/bLength', 0o644, b'07\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-0:1.0/usb_endpoint/usbdev3.1_ep81/wMaxPacketSize', 0o644, b'0002\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-0:1.0/usb_endpoint/usbdev3.1_ep81/bmAttributes', 0o644, b'03\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-0:1.0/usb_endpoint/usbdev3.1_ep81/uevent', 0o644, b'''MAJOR=252 +MINOR=4 +''') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-0:1.0/usb_endpoint/usbdev3.1_ep81/bInterval', 0o644, b'ff\n') +d('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-0:1.0/usb_endpoint/usbdev3.1_ep81/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-0:1.0/usb_endpoint/usbdev3.1_ep81/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-0:1.0/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-0:1.0/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.2/usb3/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/power/active_duration', 0o644, b'603809\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/power/wakeup', 0o644, b'enabled\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/power/connected_duration', 0o644, b'8372166\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/power/autosuspend', 0o644, b'2\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/power/level', 0o644, b'auto\n') +d('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/subsystem', '../../../../../bus/usb') +l('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/driver', '../../../../../bus/usb/drivers/usb') +l('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/ep_00', 'usb_endpoint/usbdev3.4_ep00') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/version', 0o644, b' 2.00\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/maxchild', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/bDeviceClass', 0o644, b'00\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/bcdDevice', 0o644, b'2000\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/devnum', 0o644, b'4\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/bDeviceProtocol', 0o644, b'00\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/idProduct', 0o644, b'c03e\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/product', 0o644, b'USB-PS/2 Optical Mouse\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/bDeviceSubClass', 0o644, b'00\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/configuration', 0o644, b'') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/dev', 0o644, b'189:259\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/urbnum', 0o644, b'12\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/authorized', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/descriptors', 0o644, b'\x12\x01\x00\x02\x00\x00\x00\x08m\x04>\xc0\x00 \x01\x02\x00\x01\t\x02"\x00\x01\x01\x00\xa01\t\x04\x00\x00\x01\x03\x01\x02\x00\t!\x10\x01\x00\x01"2\x00\x07\x05\x81\x03\x04\x00\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/bNumConfigurations', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/speed', 0o644, b'1.5\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/bMaxPacketSize0', 0o644, b'8\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/bmAttributes', 0o644, b'a0\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/busnum', 0o644, b'3\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/quirks', 0o644, b'0x0\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/bConfigurationValue', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/uevent', 0o644, b'''MAJOR=189 +MINOR=259 +DEVTYPE=usb_device +DRIVER=usb +PRODUCT=46d/c03e/2000 +TYPE=0/0/0 +BUSNUM=003 +DEVNUM=004 +''') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/manufacturer', 0o644, b'Logitech\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/idVendor', 0o644, b'046d\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/bNumInterfaces', 0o644, b' 1\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/bMaxPower', 0o644, b' 98mA\n') +d('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/usb_endpoint', 0o755) +d('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/usb_endpoint/usbdev3.4_ep00', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/usb_endpoint/usbdev3.4_ep00/subsystem', '../../../../../../../class/usb_endpoint') +l('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/usb_endpoint/usbdev3.4_ep00/device', '../../../3-1') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/usb_endpoint/usbdev3.4_ep00/interval', 0o644, b'0ms\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/usb_endpoint/usbdev3.4_ep00/bEndpointAddress', 0o644, b'00\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/usb_endpoint/usbdev3.4_ep00/type', 0o644, b'Control\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/usb_endpoint/usbdev3.4_ep00/dev', 0o644, b'252:26\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/usb_endpoint/usbdev3.4_ep00/direction', 0o644, b'both\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/usb_endpoint/usbdev3.4_ep00/bLength', 0o644, b'07\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/usb_endpoint/usbdev3.4_ep00/wMaxPacketSize', 0o644, b'0008\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/usb_endpoint/usbdev3.4_ep00/bmAttributes', 0o644, b'00\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/usb_endpoint/usbdev3.4_ep00/uevent', 0o644, b'''MAJOR=252 +MINOR=26 +''') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/usb_endpoint/usbdev3.4_ep00/bInterval', 0o644, b'00\n') +d('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/usb_endpoint/usbdev3.4_ep00/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/usb_endpoint/usbdev3.4_ep00/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/power/active_duration', 0o644, b'51384\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/power/wakeup', 0o644, b'enabled\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/power/connected_duration', 0o644, b'51383\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/power/autosuspend', 0o644, b'2\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/power/persist', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/power/level', 0o644, b'on\n') +d('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0/subsystem', '../../../../../../bus/usb') +l('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0/ep_81', 'usb_endpoint/usbdev3.4_ep81') +l('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0/driver', '../../../../../../bus/usb/drivers/usbhid') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0/modalias', 0o644, b'usb:v046DpC03Ed2000dc00dsc00dp00ic03isc01ip02\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0/bInterfaceNumber', 0o644, b'00\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0/bNumEndpoints', 0o644, b'01\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0/bInterfaceSubClass', 0o644, b'01\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0/bAlternateSetting', 0o644, b' 0\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0/bInterfaceClass', 0o644, b'03\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0/uevent', 0o644, b'''DEVTYPE=usb_interface +DRIVER=usbhid +PRODUCT=46d/c03e/2000 +TYPE=0/0/0 +INTERFACE=3/1/2 +MODALIAS=usb:v046DpC03Ed2000dc00dsc00dp00ic03isc01ip02 +''') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0/bInterfaceProtocol', 0o644, b'02\n') +d('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0/usb_endpoint', 0o755) +d('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0/usb_endpoint/usbdev3.4_ep81', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0/usb_endpoint/usbdev3.4_ep81/subsystem', '../../../../../../../../class/usb_endpoint') +l('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0/usb_endpoint/usbdev3.4_ep81/device', '../../../3-1:1.0') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0/usb_endpoint/usbdev3.4_ep81/interval', 0o644, b'10ms\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0/usb_endpoint/usbdev3.4_ep81/bEndpointAddress', 0o644, b'81\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0/usb_endpoint/usbdev3.4_ep81/type', 0o644, b'Interrupt\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0/usb_endpoint/usbdev3.4_ep81/dev', 0o644, b'252:25\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0/usb_endpoint/usbdev3.4_ep81/direction', 0o644, b'in\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0/usb_endpoint/usbdev3.4_ep81/bLength', 0o644, b'07\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0/usb_endpoint/usbdev3.4_ep81/wMaxPacketSize', 0o644, b'0004\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0/usb_endpoint/usbdev3.4_ep81/bmAttributes', 0o644, b'03\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0/usb_endpoint/usbdev3.4_ep81/uevent', 0o644, b'''MAJOR=252 +MINOR=25 +''') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0/usb_endpoint/usbdev3.4_ep81/bInterval', 0o644, b'0a\n') +d('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0/usb_endpoint/usbdev3.4_ep81/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0/usb_endpoint/usbdev3.4_ep81/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0/input', 0o755) +d('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0/input/input8', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0/input/input8/subsystem', '../../../../../../../../class/input') +l('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0/input/input8/device', '../../../3-1:1.0') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0/input/input8/uniq', 0o644, b'\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0/input/input8/phys', 0o644, b'usb-0000:00:1d.2-1/input0\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0/input/input8/modalias', 0o644, b'input:b0003v046DpC03Ee0110-e0,1,2,4,k110,111,112,r0,1,8,am4,lsfw\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0/input/input8/name', 0o644, b'Logitech USB-PS/2 Optical Mouse\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0/input/input8/uevent', 0o644, b'''PRODUCT=3/46d/c03e/110 +NAME="Logitech USB-PS/2 Optical Mouse" +PHYS="usb-0000:00:1d.2-1/input0" +UNIQ="" +EV==17 +KEY==70000 0 0 0 0 +REL==103 +MSC==10 +MODALIAS=input:b0003v046DpC03Ee0110-e0,1,2,4,k110,111,112,r0,1,8,am4,lsfw +''') +d('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0/input/input8/mouse1', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0/input/input8/mouse1/subsystem', '../../../../../../../../../class/input') +l('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0/input/input8/mouse1/device', '../../input8') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0/input/input8/mouse1/dev', 0o644, b'13:33\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0/input/input8/mouse1/uevent', 0o644, b'''MAJOR=13 +MINOR=33 +''') +d('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0/input/input8/mouse1/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0/input/input8/mouse1/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0/input/input8/id', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0/input/input8/id/version', 0o644, b'0110\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0/input/input8/id/product', 0o644, b'c03e\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0/input/input8/id/vendor', 0o644, b'046d\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0/input/input8/id/bustype', 0o644, b'0003\n') +d('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0/input/input8/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0/input/input8/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0/input/input8/event7', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0/input/input8/event7/subsystem', '../../../../../../../../../class/input') +l('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0/input/input8/event7/device', '../../input8') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0/input/input8/event7/dev', 0o644, b'13:71\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0/input/input8/event7/uevent', 0o644, b'''MAJOR=13 +MINOR=71 +''') +d('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0/input/input8/event7/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0/input/input8/event7/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0/input/input8/capabilities', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0/input/input8/capabilities/msc', 0o644, b'10\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0/input/input8/capabilities/abs', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0/input/input8/capabilities/snd', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0/input/input8/capabilities/ff', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0/input/input8/capabilities/key', 0o644, b'70000 0 0 0 0\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0/input/input8/capabilities/rel', 0o644, b'103\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0/input/input8/capabilities/sw', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0/input/input8/capabilities/ev', 0o644, b'17\n') +f('sys/devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0/input/input8/capabilities/led', 0o644, b'0\n') +d('sys/devices/pci0000:00/0000:00:01.0', 0o755) +l('sys/devices/pci0000:00/0000:00:01.0/firmware_node', '../../LNXSYSTM:00/device:00/PNP0A08:00/device:06') +l('sys/devices/pci0000:00/0000:00:01.0/subsystem', '../../../bus/pci') +l('sys/devices/pci0000:00/0000:00:01.0/driver', '../../../bus/pci/drivers/pcieport-driver') +f('sys/devices/pci0000:00/0000:00:01.0/local_cpulist', 0o644, b'0-7\n') +f('sys/devices/pci0000:00/0000:00:01.0/enable', 0o644, b'2\n') +f('sys/devices/pci0000:00/0000:00:01.0/modalias', 0o644, b'pci:v00008086d000027A1sv00000000sd00000000bc06sc04i00\n') +f('sys/devices/pci0000:00/0000:00:01.0/resource', 0o644, b'''0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000002000 0x0000000000002fff 0x0000000000000100 +0x00000000ee100000 0x00000000ee1fffff 0x0000000000000200 +0x00000000d0000000 0x00000000dfffffff 0x0000000000001201 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +''') +f('sys/devices/pci0000:00/0000:00:01.0/config', 0o644, b'\x86\x80\xa1\'\x07\x05\x10\x00\x03\x00\x04\x06\x10\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x01\x00 \x00\x00\x10\xee\x10\xee\x01\xd0\xf1\xdf\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x88\x00\x00\x00\x00\x00\x00\x00\x0b\x01\x14\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x01\x90\x02\xc8\x00\x00\x00\x00\r\x80\x00\x00\xaa\x17\x14 \x05\xa0\x01\x00\x0c0\xe0\xfeqA\x00\x00\x00\x00\x00\x00\x10\x00A\x01\x00\x00\x00\x00\x00\x00\x01\x00\x01M\x01\x02\x03\x00\x01\x11\x80%\x08\x00\xc0\x01H\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x0f\x00\x00\x00\x00\x86\x0f\x05\x00\x00\x00\x00\x80\x02\x00\x01\x14\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x80\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x01\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x05\x00\x01\x00\x00\x01\x01\x02\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x01\x00\x00\x00\x00\x00\x00\x90\xd1\xfe\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x06\x00\x01\x10\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00n\x7f \x08\xf4\x0c\x00\x00\xb04 \x00\x00\x00\x00\x003\x0f\x00\x00\xff\xff\x03\x00\xd0\x0f\xf1\x05\xd1\x0f\xd1\x0f\x08\x00\x00\x00\x1f\x00\x00\x00\x00\x00\x00\x00\r/B\x00\x0c\x00\x00\x14\xb5\xbcJ\xbc\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x003\x0b\xe0\x00Q\x0b\xfe\x00 \x00\x08\x00\x85\x03\xf1\x00\x87\x03\xf3\x00\x00\x00\x0e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00 \x00\x04\x00\x00\x00\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x14\x08\x88\x00\x00\x00\x00\x00\x00\x00\x00"wD\xb23\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x06`\x00 \x00\x00`\x02\x00\x00\x06\x00\x00\x00\x00\x00\x00\x00\x00\x0b\x06b\x00 \x00\x00`\x02\x00\x00\x06\x00\x00\x00\x00\x00\x00\x00\x00\n\x06`\x00 \x00\x00`\x02\x00\x00\x06\x00\x00\x00\x00\x00\x00\x00\x00\r\x06b\x00 \x00\x00`\x02\x00\x00\x06\x00\x00\x00\x00\x00\x00\x00\x00\x0c\x06`\x00 \x00\x00`\x02\x00\x00\x06\x00\x00\x00\x00\x00\x00\x00\x00\x0c\x06b\x00 \x00\x00`\x02\x00\x00\x06\x00\x00\x00\x00\x00\x00\x00\x003\x06`\x00 \x00\x00`\x02\x00\x00\x06\x00\x00\x00\x00\x00\x00\x00\x004\x06b\x00 \x00\x00`\x02\x00\x00\x06\x00\x00\x00\x00\x00\x00\x00\x00\x0e\x06`\x00 \x00\x00`\x02\x00\x00\x06\x00\x00\x00\x00\x00\x00\x00\x002\x06b\x00 \x00\x00`\x02\x00\x00\x06\x00\x00\x00\x00\x00\x00\x00\x004\x06`\x00 \x00\x00`\x02\x00\x00\x06\x00\x00\x00\x00\x00\x00\x00\x002\x06b\x00 \x00\x00`\x02\x00\x00\x06\x00\x00\x00\x00\x00\x00\x00\x00;\x06`\x00 \x00\x00`\x02\x00\x00\x06\x00\x00\x00\x00\x00\x00\x00\x003\x06b\x00 \x00\x00`\x02\x00\x00\x06\x00\x00\x00\x00\x00\x00\x00\x009\x06`\x00 \x00\x00`\x02\x00\x00\x06\x00\x00\x00\x00\x00\x00\x00\x00:\x06b\x00 \x00\x00`\x02\x00\x00\x06\x00\x00\x00\x00\x00\x00\x00\x007') +f('sys/devices/pci0000:00/0000:00:01.0/local_cpus', 0o644, b'ff\n') +f('sys/devices/pci0000:00/0000:00:01.0/subsystem_device', 0o644, b'0x0000\n') +f('sys/devices/pci0000:00/0000:00:01.0/vendor', 0o644, b'0x8086\n') +f('sys/devices/pci0000:00/0000:00:01.0/irq', 0o644, b'511\n') +f('sys/devices/pci0000:00/0000:00:01.0/device', 0o644, b'0x27a1\n') +f('sys/devices/pci0000:00/0000:00:01.0/class', 0o644, b'0x060400\n') +f('sys/devices/pci0000:00/0000:00:01.0/msi_bus', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:01.0/subsystem_vendor', 0o644, b'0x0000\n') +f('sys/devices/pci0000:00/0000:00:01.0/uevent', 0o644, b'''DRIVER=pcieport-driver +PCI_CLASS=60400 +PCI_ID=8086:27A1 +PCI_SUBSYS_ID=0000:0000 +PCI_SLOT_NAME=0000:00:01.0 +MODALIAS=pci:v00008086d000027A1sv00000000sd00000000bc06sc04i00 +''') +f('sys/devices/pci0000:00/0000:00:01.0/broken_parity_status', 0o644, b'0\n') +d('sys/devices/pci0000:00/0000:00:01.0/pci_bus', 0o755) +d('sys/devices/pci0000:00/0000:00:01.0/pci_bus/0000:01', 0o755) +l('sys/devices/pci0000:00/0000:00:01.0/pci_bus/0000:01/subsystem', '../../../../../class/pci_bus') +l('sys/devices/pci0000:00/0000:00:01.0/pci_bus/0000:01/device', '../../../0000:00:01.0') +f('sys/devices/pci0000:00/0000:00:01.0/pci_bus/0000:01/cpuaffinity', 0o644, b'ff\n') +f('sys/devices/pci0000:00/0000:00:01.0/pci_bus/0000:01/uevent', 0o644, b'') +d('sys/devices/pci0000:00/0000:00:01.0/pci_bus/0000:01/power', 0o755) +f('sys/devices/pci0000:00/0000:00:01.0/pci_bus/0000:01/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:01.0/power', 0o755) +f('sys/devices/pci0000:00/0000:00:01.0/power/wakeup', 0o644, b'disabled\n') +d('sys/devices/pci0000:00/0000:00:01.0/0000:00:01.0:pcie03', 0o755) +l('sys/devices/pci0000:00/0000:00:01.0/0000:00:01.0:pcie03/subsystem', '../../../../bus/pci_express') +f('sys/devices/pci0000:00/0000:00:01.0/0000:00:01.0:pcie03/uevent', 0o644, b'') +d('sys/devices/pci0000:00/0000:00:01.0/0000:00:01.0:pcie03/power', 0o755) +f('sys/devices/pci0000:00/0000:00:01.0/0000:00:01.0:pcie03/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0', 0o755) +l('sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0/firmware_node', '../../../LNXSYSTM:00/device:00/PNP0A08:00/device:06/device:07') +l('sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0/subsystem', '../../../../bus/pci') +f('sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0/local_cpulist', 0o644, b'0-7\n') +f('sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0/enable', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0/modalias', 0o644, b'pci:v00001002d000071D4sv000017AAsd000020A4bc03sc00i00\n') +f('sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0/resource', 0o644, b'''0x00000000d0000000 0x00000000dfffffff 0x0000000000021208 +0x0000000000002000 0x00000000000020ff 0x0000000000020101 +0x00000000ee100000 0x00000000ee10ffff 0x0000000000020200 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x00000000ee120000 0x00000000ee13ffff 0x0000000000027202 +''') +f('sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0/config', 0o644, b'\x02\x10\xd4q\x07\x01\x10\x00\x00\x00\x00\x03\x10\x00\x00\x00\x08\x00\x00\xd0\x01 \x00\x00\x00\x00\x10\xee\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xaa\x17\xa4 \x00\x00\x00\x00P\x00\x00\x00\x00\x00\x00\x00\x0b\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xaa\x17\xa4 \x01X\x02\x06\x00\x00\x00\x00\x10\x80\x11\x00\xa0\x0f,\x01\x10\x08\x00\x00\x01\r\x00\x00C\x00\x01\x11\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x05\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x11 \x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00@\x03\x00\x00\x00$\x8f\x0b\x00\xff\xff\x07e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00') +f('sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0/resource1', 0o644, b'') +f('sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0/resource2', 0o644, b'') +f('sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0/local_cpus', 0o644, b'ff\n') +f('sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0/subsystem_device', 0o644, b'0x20a4\n') +f('sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0/vendor', 0o644, b'0x1002\n') +f('sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0/irq', 0o644, b'11\n') +f('sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0/device', 0o644, b'0x71d4\n') +f('sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0/class', 0o644, b'0x030000\n') +f('sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0/rom', 0o644, b'') +f('sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0/msi_bus', 0o644, b'') +f('sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0/resource0', 0o644, b'') +f('sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0/subsystem_vendor', 0o644, b'0x17aa\n') +f('sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0/uevent', 0o644, b'''PCI_CLASS=30000 +PCI_ID=1002:71D4 +PCI_SUBSYS_ID=17AA:20A4 +PCI_SLOT_NAME=0000:01:00.0 +MODALIAS=pci:v00001002d000071D4sv000017AAsd000020A4bc03sc00i00 +''') +f('sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0/resource0_wc', 0o644, b'') +f('sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0/broken_parity_status', 0o644, b'0\n') +d('sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0/power', 0o755) +f('sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:01.0/0000:00:01.0:pcie00', 0o755) +l('sys/devices/pci0000:00/0000:00:01.0/0000:00:01.0:pcie00/subsystem', '../../../../bus/pci_express') +f('sys/devices/pci0000:00/0000:00:01.0/0000:00:01.0:pcie00/uevent', 0o644, b'') +d('sys/devices/pci0000:00/0000:00:01.0/0000:00:01.0:pcie00/power', 0o755) +f('sys/devices/pci0000:00/0000:00:01.0/0000:00:01.0:pcie00/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1f.1', 0o755) +l('sys/devices/pci0000:00/0000:00:1f.1/firmware_node', '../../LNXSYSTM:00/device:00/PNP0A08:00/device:13') +l('sys/devices/pci0000:00/0000:00:1f.1/subsystem', '../../../bus/pci') +l('sys/devices/pci0000:00/0000:00:1f.1/driver', '../../../bus/pci/drivers/ata_piix') +f('sys/devices/pci0000:00/0000:00:1f.1/local_cpulist', 0o644, b'0-7\n') +f('sys/devices/pci0000:00/0000:00:1f.1/resource3', 0o644, b'') +f('sys/devices/pci0000:00/0000:00:1f.1/enable', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1f.1/modalias', 0o644, b'pci:v00008086d000027DFsv000017AAsd0000200Cbc01sc01i8a\n') +f('sys/devices/pci0000:00/0000:00:1f.1/resource', 0o644, b'''0x00000000000001f0 0x00000000000001f7 0x0000000000000110 +0x00000000000003f6 0x00000000000003f6 0x0000000000000110 +0x0000000000000170 0x0000000000000177 0x0000000000000110 +0x0000000000000376 0x0000000000000376 0x0000000000000110 +0x0000000000001880 0x000000000000188f 0x0000000000020101 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +''') +f('sys/devices/pci0000:00/0000:00:1f.1/config', 0o644, b"\x86\x80\xdf'\x05\x00\x80\x02\x02\x8a\x01\x01\x00\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00\x81\x18\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xaa\x17\x0c \x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\x03\x00\x00\x03\xe3\x00@\x00\x00\x00\x00\x01\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x86\x0f\x02\x00\x00\x00\x00\x00") +f('sys/devices/pci0000:00/0000:00:1f.1/resource1', 0o644, b'') +f('sys/devices/pci0000:00/0000:00:1f.1/resource2', 0o644, b'') +f('sys/devices/pci0000:00/0000:00:1f.1/local_cpus', 0o644, b'ff\n') +f('sys/devices/pci0000:00/0000:00:1f.1/subsystem_device', 0o644, b'0x200c\n') +f('sys/devices/pci0000:00/0000:00:1f.1/vendor', 0o644, b'0x8086\n') +f('sys/devices/pci0000:00/0000:00:1f.1/irq', 0o644, b'16\n') +f('sys/devices/pci0000:00/0000:00:1f.1/device', 0o644, b'0x27df\n') +f('sys/devices/pci0000:00/0000:00:1f.1/class', 0o644, b'0x01018a\n') +f('sys/devices/pci0000:00/0000:00:1f.1/msi_bus', 0o644, b'') +f('sys/devices/pci0000:00/0000:00:1f.1/resource0', 0o644, b'') +f('sys/devices/pci0000:00/0000:00:1f.1/subsystem_vendor', 0o644, b'0x17aa\n') +f('sys/devices/pci0000:00/0000:00:1f.1/uevent', 0o644, b'''DRIVER=ata_piix +PCI_CLASS=1018A +PCI_ID=8086:27DF +PCI_SUBSYS_ID=17AA:200C +PCI_SLOT_NAME=0000:00:1f.1 +MODALIAS=pci:v00008086d000027DFsv000017AAsd0000200Cbc01sc01i8a +''') +f('sys/devices/pci0000:00/0000:00:1f.1/resource4', 0o644, b'') +f('sys/devices/pci0000:00/0000:00:1f.1/broken_parity_status', 0o644, b'0\n') +d('sys/devices/pci0000:00/0000:00:1f.1/host5', 0o755) +l('sys/devices/pci0000:00/0000:00:1f.1/host5/subsystem', '../../../../bus/scsi') +f('sys/devices/pci0000:00/0000:00:1f.1/host5/uevent', 0o644, b'DEVTYPE=scsi_host\n') +d('sys/devices/pci0000:00/0000:00:1f.1/host5/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1f.1/host5/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1f.1/host5/scsi_host', 0o755) +d('sys/devices/pci0000:00/0000:00:1f.1/host5/scsi_host/host5', 0o755) +l('sys/devices/pci0000:00/0000:00:1f.1/host5/scsi_host/host5/subsystem', '../../../../../../class/scsi_host') +l('sys/devices/pci0000:00/0000:00:1f.1/host5/scsi_host/host5/device', '../../../host5') +f('sys/devices/pci0000:00/0000:00:1f.1/host5/scsi_host/host5/unique_id', 0o644, b'6\n') +f('sys/devices/pci0000:00/0000:00:1f.1/host5/scsi_host/host5/can_queue', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1f.1/host5/scsi_host/host5/unchecked_isa_dma', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1f.1/host5/scsi_host/host5/active_mode', 0o644, b'Initiator\n') +f('sys/devices/pci0000:00/0000:00:1f.1/host5/scsi_host/host5/sg_tablesize', 0o644, b'128\n') +f('sys/devices/pci0000:00/0000:00:1f.1/host5/scsi_host/host5/prot_guard_type', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1f.1/host5/scsi_host/host5/host_busy', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1f.1/host5/scsi_host/host5/proc_name', 0o644, b'ata_piix\n') +f('sys/devices/pci0000:00/0000:00:1f.1/host5/scsi_host/host5/state', 0o644, b'running\n') +f('sys/devices/pci0000:00/0000:00:1f.1/host5/scsi_host/host5/cmd_per_lun', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1f.1/host5/scsi_host/host5/supported_mode', 0o644, b'Initiator\n') +f('sys/devices/pci0000:00/0000:00:1f.1/host5/scsi_host/host5/uevent', 0o644, b'') +f('sys/devices/pci0000:00/0000:00:1f.1/host5/scsi_host/host5/prot_capabilities', 0o644, b'0\n') +d('sys/devices/pci0000:00/0000:00:1f.1/host5/scsi_host/host5/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1f.1/host5/scsi_host/host5/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1f.1/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1f.1/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1f.1/host4', 0o755) +l('sys/devices/pci0000:00/0000:00:1f.1/host4/subsystem', '../../../../bus/scsi') +f('sys/devices/pci0000:00/0000:00:1f.1/host4/uevent', 0o644, b'DEVTYPE=scsi_host\n') +d('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0', 0o755) +l('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/subsystem', '../../../../../bus/scsi') +f('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/uevent', 0o644, b'DEVTYPE=scsi_target\n') +d('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0', 0o755) +l('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/generic', 'scsi_generic/sg1') +l('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/subsystem', '../../../../../../bus/scsi') +l('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/driver', '../../../../../../bus/scsi/drivers/sr') +f('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/iodone_cnt', 0o644, b'0x20b3\n') +f('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/device_blocked', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/modalias', 0o644, b'scsi:t-0x05\n') +f('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/scsi_level', 0o644, b'6\n') +f('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/queue_depth', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/rev', 0o644, b'RB01\n') +f('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/type', 0o644, b'5\n') +f('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/iocounterbits', 0o644, b'32\n') +f('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/vendor', 0o644, b'MATSHITA\n') +f('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/state', 0o644, b'running\n') +f('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/queue_type', 0o644, b'none\n') +f('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/iorequest_cnt', 0o644, b'0x82a9\n') +f('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/evt_media_change', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/model', 0o644, b'DVD-RAM UJ-842 \n') +f('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/ioerr_cnt', 0o644, b'0x0\n') +f('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/uevent', 0o644, b'''DEVTYPE=scsi_device +DRIVER=sr +MODALIAS=scsi:t-0x05 +''') +f('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/timeout', 0o644, b'0\n') +d('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/scsi_generic', 0o755) +d('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/scsi_generic/sg1', 0o755) +l('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/scsi_generic/sg1/subsystem', '../../../../../../../../class/scsi_generic') +l('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/scsi_generic/sg1/device', '../../../4:0:0:0') +f('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/scsi_generic/sg1/dev', 0o644, b'21:1\n') +f('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/scsi_generic/sg1/uevent', 0o644, b'''MAJOR=21 +MINOR=1 +''') +d('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/scsi_generic/sg1/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/scsi_generic/sg1/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/bsg', 0o755) +d('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/bsg/4:0:0:0', 0o755) +l('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/bsg/4:0:0:0/subsystem', '../../../../../../../../class/bsg') +l('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/bsg/4:0:0:0/device', '../../../4:0:0:0') +f('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/bsg/4:0:0:0/dev', 0o644, b'254:1\n') +f('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/bsg/4:0:0:0/uevent', 0o644, b'''MAJOR=254 +MINOR=1 +''') +d('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/bsg/4:0:0:0/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/bsg/4:0:0:0/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/block', 0o755) +d('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/block/sr0', 0o755) +l('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/block/sr0/subsystem', '../../../../../../../../class/block') +l('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/block/sr0/bdi', '../../../../../../../virtual/bdi/11:0') +l('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/block/sr0/device', '../../../4:0:0:0') +f('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/block/sr0/capability', 0o644, b'19\n') +f('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/block/sr0/ro', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/block/sr0/make-it-fail', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/block/sr0/size', 0o644, b'2097151\n') +f('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/block/sr0/dev', 0o644, b'11:0\n') +f('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/block/sr0/range', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/block/sr0/removable', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/block/sr0/stat', 0o644, b' 0 0 0 0 0 0 0 0 0 0 0\n') +f('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/block/sr0/uevent', 0o644, b'''MAJOR=11 +MINOR=0 +DEVTYPE=disk +''') +d('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/block/sr0/queue', 0o755) +f('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/block/sr0/queue/nr_requests', 0o644, b'128\n') +f('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/block/sr0/queue/nomerges', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/block/sr0/queue/scheduler', 0o644, b'noop anticipatory deadline [cfq] \n') +f('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/block/sr0/queue/hw_sector_size', 0o644, b'512\n') +f('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/block/sr0/queue/max_hw_sectors_kb', 0o644, b'128\n') +f('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/block/sr0/queue/read_ahead_kb', 0o644, b'128\n') +f('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/block/sr0/queue/max_sectors_kb', 0o644, b'128\n') +d('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/block/sr0/queue/iosched', 0o755) +f('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/block/sr0/queue/iosched/slice_async_rq', 0o644, b'2\n') +f('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/block/sr0/queue/iosched/back_seek_max', 0o644, b'16384\n') +f('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/block/sr0/queue/iosched/slice_sync', 0o644, b'100\n') +f('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/block/sr0/queue/iosched/slice_async', 0o644, b'40\n') +f('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/block/sr0/queue/iosched/fifo_expire_sync', 0o644, b'125\n') +f('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/block/sr0/queue/iosched/slice_idle', 0o644, b'8\n') +f('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/block/sr0/queue/iosched/back_seek_penalty', 0o644, b'2\n') +f('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/block/sr0/queue/iosched/fifo_expire_async', 0o644, b'250\n') +f('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/block/sr0/queue/iosched/quantum', 0o644, b'4\n') +d('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/block/sr0/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/block/sr0/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/scsi_device', 0o755) +d('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/scsi_device/4:0:0:0', 0o755) +l('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/scsi_device/4:0:0:0/subsystem', '../../../../../../../../class/scsi_device') +l('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/scsi_device/4:0:0:0/device', '../../../4:0:0:0') +f('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/scsi_device/4:0:0:0/uevent', 0o644, b'') +d('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/scsi_device/4:0:0:0/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1f.1/host4/target4:0:0/4:0:0:0/scsi_device/4:0:0:0/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1f.1/host4/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1f.1/host4/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1f.1/host4/scsi_host', 0o755) +d('sys/devices/pci0000:00/0000:00:1f.1/host4/scsi_host/host4', 0o755) +l('sys/devices/pci0000:00/0000:00:1f.1/host4/scsi_host/host4/subsystem', '../../../../../../class/scsi_host') +l('sys/devices/pci0000:00/0000:00:1f.1/host4/scsi_host/host4/device', '../../../host4') +f('sys/devices/pci0000:00/0000:00:1f.1/host4/scsi_host/host4/unique_id', 0o644, b'5\n') +f('sys/devices/pci0000:00/0000:00:1f.1/host4/scsi_host/host4/can_queue', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1f.1/host4/scsi_host/host4/unchecked_isa_dma', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1f.1/host4/scsi_host/host4/active_mode', 0o644, b'Initiator\n') +f('sys/devices/pci0000:00/0000:00:1f.1/host4/scsi_host/host4/sg_tablesize', 0o644, b'128\n') +f('sys/devices/pci0000:00/0000:00:1f.1/host4/scsi_host/host4/prot_guard_type', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1f.1/host4/scsi_host/host4/host_busy', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1f.1/host4/scsi_host/host4/proc_name', 0o644, b'ata_piix\n') +f('sys/devices/pci0000:00/0000:00:1f.1/host4/scsi_host/host4/state', 0o644, b'running\n') +f('sys/devices/pci0000:00/0000:00:1f.1/host4/scsi_host/host4/cmd_per_lun', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1f.1/host4/scsi_host/host4/supported_mode', 0o644, b'Initiator\n') +f('sys/devices/pci0000:00/0000:00:1f.1/host4/scsi_host/host4/uevent', 0o644, b'') +f('sys/devices/pci0000:00/0000:00:1f.1/host4/scsi_host/host4/prot_capabilities', 0o644, b'0\n') +d('sys/devices/pci0000:00/0000:00:1f.1/host4/scsi_host/host4/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1f.1/host4/scsi_host/host4/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1e.0', 0o755) +l('sys/devices/pci0000:00/0000:00:1e.0/firmware_node', '../../LNXSYSTM:00/device:00/PNP0A08:00/device:11') +l('sys/devices/pci0000:00/0000:00:1e.0/subsystem', '../../../bus/pci') +f('sys/devices/pci0000:00/0000:00:1e.0/local_cpulist', 0o644, b'0-7\n') +f('sys/devices/pci0000:00/0000:00:1e.0/enable', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1e.0/modalias', 0o644, b'pci:v00008086d00002448sv00000000sd00000000bc06sc04i01\n') +f('sys/devices/pci0000:00/0000:00:1e.0/resource', 0o644, b'''0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x000000000000a000 0x000000000000dfff 0x0000000000000100 +0x00000000e4300000 0x00000000e7ffffff 0x0000000000000200 +0x00000000e0000000 0x00000000e3ffffff 0x0000000000001201 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +''') +f('sys/devices/pci0000:00/0000:00:1e.0/config', 0o644, b'\x86\x80H$\x07\x00\x10\x00\xe2\x01\x04\x06\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x15\x18 \xa0\xd0\x80"0\xe4\xf0\xe7\x01\xe0\xf1\xe3\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00P\x00\x00\x00\x00\x00\x00\x00\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x12\x00\x00\r\x00\x00\x00\xaa\x17\x13 \x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x86\x0f\x02\x00\x00\x00\x00\x00') +f('sys/devices/pci0000:00/0000:00:1e.0/local_cpus', 0o644, b'ff\n') +f('sys/devices/pci0000:00/0000:00:1e.0/subsystem_device', 0o644, b'0x0000\n') +f('sys/devices/pci0000:00/0000:00:1e.0/vendor', 0o644, b'0x8086\n') +f('sys/devices/pci0000:00/0000:00:1e.0/irq', 0o644, b'0\n') +f('sys/devices/pci0000:00/0000:00:1e.0/device', 0o644, b'0x2448\n') +f('sys/devices/pci0000:00/0000:00:1e.0/class', 0o644, b'0x060401\n') +f('sys/devices/pci0000:00/0000:00:1e.0/msi_bus', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1e.0/subsystem_vendor', 0o644, b'0x0000\n') +f('sys/devices/pci0000:00/0000:00:1e.0/uevent', 0o644, b'''PCI_CLASS=60401 +PCI_ID=8086:2448 +PCI_SUBSYS_ID=0000:0000 +PCI_SLOT_NAME=0000:00:1e.0 +MODALIAS=pci:v00008086d00002448sv00000000sd00000000bc06sc04i01 +''') +f('sys/devices/pci0000:00/0000:00:1e.0/broken_parity_status', 0o644, b'0\n') +d('sys/devices/pci0000:00/0000:00:1e.0/pci_bus', 0o755) +d('sys/devices/pci0000:00/0000:00:1e.0/pci_bus/0000:15', 0o755) +l('sys/devices/pci0000:00/0000:00:1e.0/pci_bus/0000:15/subsystem', '../../../../../class/pci_bus') +l('sys/devices/pci0000:00/0000:00:1e.0/pci_bus/0000:15/device', '../../../0000:00:1e.0') +f('sys/devices/pci0000:00/0000:00:1e.0/pci_bus/0000:15/cpuaffinity', 0o644, b'ff\n') +f('sys/devices/pci0000:00/0000:00:1e.0/pci_bus/0000:15/uevent', 0o644, b'') +d('sys/devices/pci0000:00/0000:00:1e.0/pci_bus/0000:15/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1e.0/pci_bus/0000:15/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1e.0/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1e.0/power/wakeup', 0o644, b'disabled\n') +d('sys/devices/pci0000:00/0000:00:1e.0/0000:15:00.0', 0o755) +l('sys/devices/pci0000:00/0000:00:1e.0/0000:15:00.0/firmware_node', '../../../LNXSYSTM:00/device:00/PNP0A08:00/device:11/device:12') +l('sys/devices/pci0000:00/0000:00:1e.0/0000:15:00.0/subsystem', '../../../../bus/pci') +l('sys/devices/pci0000:00/0000:00:1e.0/0000:15:00.0/driver', '../../../../bus/pci/drivers/yenta_cardbus') +f('sys/devices/pci0000:00/0000:00:1e.0/0000:15:00.0/local_cpulist', 0o644, b'0-7\n') +f('sys/devices/pci0000:00/0000:00:1e.0/0000:15:00.0/enable', 0o644, b'2\n') +f('sys/devices/pci0000:00/0000:00:1e.0/0000:15:00.0/modalias', 0o644, b'pci:v0000104Cd0000AC56sv000017AAsd00002012bc06sc07i00\n') +f('sys/devices/pci0000:00/0000:00:1e.0/0000:15:00.0/resource', 0o644, b'''0x00000000e4300000 0x00000000e4300fff 0x0000000000020200 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x000000000000a000 0x000000000000a0ff 0x0000000000020100 +0x000000000000a400 0x000000000000a4ff 0x0000000000020100 +0x00000000e0000000 0x00000000e3ffffff 0x0000000000021200 +0x0000000088000000 0x000000008bffffff 0x0000000000020200 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +''') +f('sys/devices/pci0000:00/0000:00:1e.0/0000:15:00.0/config', 0o644, b'L\x10V\xac\x07\x00\x10\x02\x00\x00\x07\x06\x10\xa8\x02\x00\x00\x000\xe4\xa0\x00\x00\x02\x15\x16\x17\xb0\x00\x00\x00\xe0\x00\xf0\xff\xe3\x00\x00\x00\x88\x00\xf0\xff\x8b\x00\xa0\x00\x00\xfc\xa0\x00\x00\x00\xa4\x00\x00\xfc\xa4\x00\x00\x0b\x01\xc0\x05\xaa\x17\x12 \x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00p\xd0D\x08\x00\x00\x00\x00\x00\x00\x00\x00\x02\x10\xd0\x01\xc0\x02d@\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x12\xfe\x00\x00\xc0\x00\x07\x00\x00\x00\x0f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00') +f('sys/devices/pci0000:00/0000:00:1e.0/0000:15:00.0/yenta_registers', 0o644, b'''CB registers: +00: 00000000 00000006 30000087 00000000 +10: 00000400 00000000 00000000 00000000 +20: 00000000 + +ExCA registers: +00: 84 01 00 50 00 08 00 00 - 00 00 01 00 00 00 01 00 +10: 00 00 00 00 00 00 c0 00 - 00 00 00 00 00 00 00 00 +20: 00 00 00 00 00 00 00 00 - 00 00 00 00 00 00 00 00 +30: 00 00 00 00 00 00 00 00 - 00 00 00 00 00 00 00 00 +40: 00 00 00 00 00 +''') +f('sys/devices/pci0000:00/0000:00:1e.0/0000:15:00.0/local_cpus', 0o644, b'ff\n') +f('sys/devices/pci0000:00/0000:00:1e.0/0000:15:00.0/subsystem_device', 0o644, b'0x2012\n') +f('sys/devices/pci0000:00/0000:00:1e.0/0000:15:00.0/vendor', 0o644, b'0x104c\n') +f('sys/devices/pci0000:00/0000:00:1e.0/0000:15:00.0/irq', 0o644, b'16\n') +f('sys/devices/pci0000:00/0000:00:1e.0/0000:15:00.0/device', 0o644, b'0xac56\n') +f('sys/devices/pci0000:00/0000:00:1e.0/0000:15:00.0/class', 0o644, b'0x060700\n') +f('sys/devices/pci0000:00/0000:00:1e.0/0000:15:00.0/msi_bus', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1e.0/0000:15:00.0/resource0', 0o644, b'') +f('sys/devices/pci0000:00/0000:00:1e.0/0000:15:00.0/subsystem_vendor', 0o644, b'0x17aa\n') +f('sys/devices/pci0000:00/0000:00:1e.0/0000:15:00.0/uevent', 0o644, b'''DRIVER=yenta_cardbus +PCI_CLASS=60700 +PCI_ID=104C:AC56 +PCI_SUBSYS_ID=17AA:2012 +PCI_SLOT_NAME=0000:15:00.0 +MODALIAS=pci:v0000104Cd0000AC56sv000017AAsd00002012bc06sc07i00 +''') +f('sys/devices/pci0000:00/0000:00:1e.0/0000:15:00.0/broken_parity_status', 0o644, b'0\n') +d('sys/devices/pci0000:00/0000:00:1e.0/0000:15:00.0/pci_bus', 0o755) +d('sys/devices/pci0000:00/0000:00:1e.0/0000:15:00.0/pci_bus/0000:16', 0o755) +l('sys/devices/pci0000:00/0000:00:1e.0/0000:15:00.0/pci_bus/0000:16/subsystem', '../../../../../../class/pci_bus') +l('sys/devices/pci0000:00/0000:00:1e.0/0000:15:00.0/pci_bus/0000:16/device', '../../../0000:15:00.0') +f('sys/devices/pci0000:00/0000:00:1e.0/0000:15:00.0/pci_bus/0000:16/cpuaffinity', 0o644, b'ff\n') +f('sys/devices/pci0000:00/0000:00:1e.0/0000:15:00.0/pci_bus/0000:16/uevent', 0o644, b'') +d('sys/devices/pci0000:00/0000:00:1e.0/0000:15:00.0/pci_bus/0000:16/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1e.0/0000:15:00.0/pci_bus/0000:16/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1e.0/0000:15:00.0/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1e.0/0000:15:00.0/power/wakeup', 0o644, b'disabled\n') +d('sys/devices/pci0000:00/0000:00:1e.0/0000:15:00.0/pcmcia_socket', 0o755) +d('sys/devices/pci0000:00/0000:00:1e.0/0000:15:00.0/pcmcia_socket/pcmcia_socket0', 0o755) +l('sys/devices/pci0000:00/0000:00:1e.0/0000:15:00.0/pcmcia_socket/pcmcia_socket0/subsystem', '../../../../../../class/pcmcia_socket') +l('sys/devices/pci0000:00/0000:00:1e.0/0000:15:00.0/pcmcia_socket/pcmcia_socket0/device', '../../../0000:15:00.0') +f('sys/devices/pci0000:00/0000:00:1e.0/0000:15:00.0/pcmcia_socket/pcmcia_socket0/card_vpp', 0o644, b'') +f('sys/devices/pci0000:00/0000:00:1e.0/0000:15:00.0/pcmcia_socket/pcmcia_socket0/available_resources_mem', 0o644, b'''0x000c0000 - 0x000fffff +0x60000000 - 0x60ffffff +0xa0000000 - 0xa0ffffff +0xe0000000 - 0xe3ffffff +0xe4300000 - 0xe7ffffff +''') +f('sys/devices/pci0000:00/0000:00:1e.0/0000:15:00.0/pcmcia_socket/pcmcia_socket0/available_resources_io', 0o644, b'''0x00000100 - 0x000003af +0x000003e0 - 0x000004ff +0x00000820 - 0x000008ff +0x00000a00 - 0x00000aff +0x00000c00 - 0x00000cf7 +0x0000a000 - 0x0000dfff +''') +f('sys/devices/pci0000:00/0000:00:1e.0/0000:15:00.0/pcmcia_socket/pcmcia_socket0/card_voltage', 0o644, b'') +f('sys/devices/pci0000:00/0000:00:1e.0/0000:15:00.0/pcmcia_socket/pcmcia_socket0/cis', 0o644, b'') +f('sys/devices/pci0000:00/0000:00:1e.0/0000:15:00.0/pcmcia_socket/pcmcia_socket0/available_resources_setup_done', 0o644, b'yes\n') +f('sys/devices/pci0000:00/0000:00:1e.0/0000:15:00.0/pcmcia_socket/pcmcia_socket0/card_irq_mask', 0o644, b'0x0cf8\n') +f('sys/devices/pci0000:00/0000:00:1e.0/0000:15:00.0/pcmcia_socket/pcmcia_socket0/card_pm_state', 0o644, b'on\n') +f('sys/devices/pci0000:00/0000:00:1e.0/0000:15:00.0/pcmcia_socket/pcmcia_socket0/card_vcc', 0o644, b'') +f('sys/devices/pci0000:00/0000:00:1e.0/0000:15:00.0/pcmcia_socket/pcmcia_socket0/card_type', 0o644, b'') +f('sys/devices/pci0000:00/0000:00:1e.0/0000:15:00.0/pcmcia_socket/pcmcia_socket0/uevent', 0o644, b'SOCKET_NO=0\n') +d('sys/devices/pci0000:00/0000:00:1e.0/0000:15:00.0/pcmcia_socket/pcmcia_socket0/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1e.0/0000:15:00.0/pcmcia_socket/pcmcia_socket0/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.1', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.1/firmware_node', '../../LNXSYSTM:00/device:00/PNP0A08:00/device:1a') +l('sys/devices/pci0000:00/0000:00:1d.1/subsystem', '../../../bus/pci') +l('sys/devices/pci0000:00/0000:00:1d.1/driver', '../../../bus/pci/drivers/uhci_hcd') +f('sys/devices/pci0000:00/0000:00:1d.1/local_cpulist', 0o644, b'0-7\n') +f('sys/devices/pci0000:00/0000:00:1d.1/enable', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1d.1/modalias', 0o644, b'pci:v00008086d000027C9sv000017AAsd0000200Abc0Csc03i00\n') +f('sys/devices/pci0000:00/0000:00:1d.1/resource', 0o644, b'''0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000001820 0x000000000000183f 0x0000000000020101 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +0x0000000000000000 0x0000000000000000 0x0000000000000000 +''') +f('sys/devices/pci0000:00/0000:00:1d.1/config', 0o644, b"\x86\x80\xc9'\x05\x00\x80\x02\x02\x00\x03\x0c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00!\x18\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xaa\x17\n \x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0b\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00'\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x86\x0f\x02\x00\x00\x00\x00\x00") +f('sys/devices/pci0000:00/0000:00:1d.1/local_cpus', 0o644, b'ff\n') +f('sys/devices/pci0000:00/0000:00:1d.1/subsystem_device', 0o644, b'0x200a\n') +f('sys/devices/pci0000:00/0000:00:1d.1/vendor', 0o644, b'0x8086\n') +f('sys/devices/pci0000:00/0000:00:1d.1/irq', 0o644, b'17\n') +f('sys/devices/pci0000:00/0000:00:1d.1/pools', 0o644, b'''poolinfo - 0.1 +uhci_qh 11 32 128 1 +uhci_td 1 64 64 1 +buffer-2048 0 0 2048 0 +buffer-512 0 0 512 0 +buffer-128 0 0 128 0 +buffer-32 1 128 32 1 +''') +f('sys/devices/pci0000:00/0000:00:1d.1/device', 0o644, b'0x27c9\n') +f('sys/devices/pci0000:00/0000:00:1d.1/class', 0o644, b'0x0c0300\n') +f('sys/devices/pci0000:00/0000:00:1d.1/msi_bus', 0o644, b'') +f('sys/devices/pci0000:00/0000:00:1d.1/subsystem_vendor', 0o644, b'0x17aa\n') +f('sys/devices/pci0000:00/0000:00:1d.1/uevent', 0o644, b'''DRIVER=uhci_hcd +PCI_CLASS=C0300 +PCI_ID=8086:27C9 +PCI_SUBSYS_ID=17AA:200A +PCI_SLOT_NAME=0000:00:1d.1 +MODALIAS=pci:v00008086d000027C9sv000017AAsd0000200Abc0Csc03i00 +''') +f('sys/devices/pci0000:00/0000:00:1d.1/resource4', 0o644, b'') +f('sys/devices/pci0000:00/0000:00:1d.1/broken_parity_status', 0o644, b'0\n') +d('sys/devices/pci0000:00/0000:00:1d.1/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.1/power/wakeup', 0o644, b'disabled\n') +d('sys/devices/pci0000:00/0000:00:1d.1/usb_host', 0o755) +d('sys/devices/pci0000:00/0000:00:1d.1/usb_host/usb_host2', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.1/usb_host/usb_host2/subsystem', '../../../../../class/usb_host') +l('sys/devices/pci0000:00/0000:00:1d.1/usb_host/usb_host2/device', '../../../0000:00:1d.1') +f('sys/devices/pci0000:00/0000:00:1d.1/usb_host/usb_host2/uevent', 0o644, b'') +d('sys/devices/pci0000:00/0000:00:1d.1/usb_host/usb_host2/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.1/usb_host/usb_host2/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.1/usb2', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.1/usb2/subsystem', '../../../../bus/usb') +l('sys/devices/pci0000:00/0000:00:1d.1/usb2/driver', '../../../../bus/usb/drivers/usb') +l('sys/devices/pci0000:00/0000:00:1d.1/usb2/ep_00', 'usb_endpoint/usbdev2.1_ep00') +f('sys/devices/pci0000:00/0000:00:1d.1/usb2/version', 0o644, b' 1.10\n') +f('sys/devices/pci0000:00/0000:00:1d.1/usb2/authorized_default', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1d.1/usb2/maxchild', 0o644, b'2\n') +f('sys/devices/pci0000:00/0000:00:1d.1/usb2/bDeviceClass', 0o644, b'09\n') +f('sys/devices/pci0000:00/0000:00:1d.1/usb2/bcdDevice', 0o644, b'0206\n') +f('sys/devices/pci0000:00/0000:00:1d.1/usb2/devnum', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1d.1/usb2/bDeviceProtocol', 0o644, b'00\n') +f('sys/devices/pci0000:00/0000:00:1d.1/usb2/idProduct', 0o644, b'0001\n') +f('sys/devices/pci0000:00/0000:00:1d.1/usb2/product', 0o644, b'UHCI Host Controller\n') +f('sys/devices/pci0000:00/0000:00:1d.1/usb2/bDeviceSubClass', 0o644, b'00\n') +f('sys/devices/pci0000:00/0000:00:1d.1/usb2/configuration', 0o644, b'') +f('sys/devices/pci0000:00/0000:00:1d.1/usb2/dev', 0o644, b'189:128\n') +f('sys/devices/pci0000:00/0000:00:1d.1/usb2/urbnum', 0o644, b'16\n') +f('sys/devices/pci0000:00/0000:00:1d.1/usb2/authorized', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1d.1/usb2/descriptors', 0o644, b'\x12\x01\x10\x01\t\x00\x00@k\x1d\x01\x00\x06\x02\x03\x02\x01\x01\t\x02\x19\x00\x01\x01\x00\xe0\x00\t\x04\x00\x00\x01\t\x00\x00\x00\x07\x05\x81\x03\x02\x00\xff') +f('sys/devices/pci0000:00/0000:00:1d.1/usb2/bNumConfigurations', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1d.1/usb2/serial', 0o644, b'0000:00:1d.1\n') +f('sys/devices/pci0000:00/0000:00:1d.1/usb2/speed', 0o644, b'12\n') +f('sys/devices/pci0000:00/0000:00:1d.1/usb2/bMaxPacketSize0', 0o644, b'64\n') +f('sys/devices/pci0000:00/0000:00:1d.1/usb2/bmAttributes', 0o644, b'e0\n') +f('sys/devices/pci0000:00/0000:00:1d.1/usb2/busnum', 0o644, b'2\n') +f('sys/devices/pci0000:00/0000:00:1d.1/usb2/quirks', 0o644, b'0x0\n') +f('sys/devices/pci0000:00/0000:00:1d.1/usb2/bConfigurationValue', 0o644, b'1\n') +f('sys/devices/pci0000:00/0000:00:1d.1/usb2/uevent', 0o644, b'''MAJOR=189 +MINOR=128 +DEVTYPE=usb_device +DRIVER=usb +PRODUCT=1d6b/1/206 +TYPE=9/0/0 +BUSNUM=002 +DEVNUM=001 +''') +f('sys/devices/pci0000:00/0000:00:1d.1/usb2/manufacturer', 0o644, b'Linux 2.6.27-rc7-00106-g6ef190c-dirty uhci_hcd\n') +f('sys/devices/pci0000:00/0000:00:1d.1/usb2/idVendor', 0o644, b'1d6b\n') +f('sys/devices/pci0000:00/0000:00:1d.1/usb2/bNumInterfaces', 0o644, b' 1\n') +f('sys/devices/pci0000:00/0000:00:1d.1/usb2/bMaxPower', 0o644, b' 0mA\n') +d('sys/devices/pci0000:00/0000:00:1d.1/usb2/usb_endpoint', 0o755) +d('sys/devices/pci0000:00/0000:00:1d.1/usb2/usb_endpoint/usbdev2.1_ep00', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.1/usb2/usb_endpoint/usbdev2.1_ep00/subsystem', '../../../../../../class/usb_endpoint') +l('sys/devices/pci0000:00/0000:00:1d.1/usb2/usb_endpoint/usbdev2.1_ep00/device', '../../../usb2') +f('sys/devices/pci0000:00/0000:00:1d.1/usb2/usb_endpoint/usbdev2.1_ep00/interval', 0o644, b'0ms\n') +f('sys/devices/pci0000:00/0000:00:1d.1/usb2/usb_endpoint/usbdev2.1_ep00/bEndpointAddress', 0o644, b'00\n') +f('sys/devices/pci0000:00/0000:00:1d.1/usb2/usb_endpoint/usbdev2.1_ep00/type', 0o644, b'Control\n') +f('sys/devices/pci0000:00/0000:00:1d.1/usb2/usb_endpoint/usbdev2.1_ep00/dev', 0o644, b'252:3\n') +f('sys/devices/pci0000:00/0000:00:1d.1/usb2/usb_endpoint/usbdev2.1_ep00/direction', 0o644, b'both\n') +f('sys/devices/pci0000:00/0000:00:1d.1/usb2/usb_endpoint/usbdev2.1_ep00/bLength', 0o644, b'07\n') +f('sys/devices/pci0000:00/0000:00:1d.1/usb2/usb_endpoint/usbdev2.1_ep00/wMaxPacketSize', 0o644, b'0040\n') +f('sys/devices/pci0000:00/0000:00:1d.1/usb2/usb_endpoint/usbdev2.1_ep00/bmAttributes', 0o644, b'00\n') +f('sys/devices/pci0000:00/0000:00:1d.1/usb2/usb_endpoint/usbdev2.1_ep00/uevent', 0o644, b'''MAJOR=252 +MINOR=3 +''') +f('sys/devices/pci0000:00/0000:00:1d.1/usb2/usb_endpoint/usbdev2.1_ep00/bInterval', 0o644, b'00\n') +d('sys/devices/pci0000:00/0000:00:1d.1/usb2/usb_endpoint/usbdev2.1_ep00/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.1/usb2/usb_endpoint/usbdev2.1_ep00/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.1/usb2/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.1/usb2/power/active_duration', 0o644, b'2363\n') +f('sys/devices/pci0000:00/0000:00:1d.1/usb2/power/wakeup', 0o644, b'enabled\n') +f('sys/devices/pci0000:00/0000:00:1d.1/usb2/power/connected_duration', 0o644, b'8372254\n') +f('sys/devices/pci0000:00/0000:00:1d.1/usb2/power/autosuspend', 0o644, b'2\n') +f('sys/devices/pci0000:00/0000:00:1d.1/usb2/power/level', 0o644, b'auto\n') +d('sys/devices/pci0000:00/0000:00:1d.1/usb2/2-0:1.0', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.1/usb2/2-0:1.0/subsystem', '../../../../../bus/usb') +l('sys/devices/pci0000:00/0000:00:1d.1/usb2/2-0:1.0/ep_81', 'usb_endpoint/usbdev2.1_ep81') +l('sys/devices/pci0000:00/0000:00:1d.1/usb2/2-0:1.0/driver', '../../../../../bus/usb/drivers/hub') +f('sys/devices/pci0000:00/0000:00:1d.1/usb2/2-0:1.0/modalias', 0o644, b'usb:v1D6Bp0001d0206dc09dsc00dp00ic09isc00ip00\n') +f('sys/devices/pci0000:00/0000:00:1d.1/usb2/2-0:1.0/bInterfaceNumber', 0o644, b'00\n') +f('sys/devices/pci0000:00/0000:00:1d.1/usb2/2-0:1.0/bNumEndpoints', 0o644, b'01\n') +f('sys/devices/pci0000:00/0000:00:1d.1/usb2/2-0:1.0/bInterfaceSubClass', 0o644, b'00\n') +f('sys/devices/pci0000:00/0000:00:1d.1/usb2/2-0:1.0/bAlternateSetting', 0o644, b' 0\n') +f('sys/devices/pci0000:00/0000:00:1d.1/usb2/2-0:1.0/bInterfaceClass', 0o644, b'09\n') +f('sys/devices/pci0000:00/0000:00:1d.1/usb2/2-0:1.0/uevent', 0o644, b'''DEVTYPE=usb_interface +DRIVER=hub +PRODUCT=1d6b/1/206 +TYPE=9/0/0 +INTERFACE=9/0/0 +MODALIAS=usb:v1D6Bp0001d0206dc09dsc00dp00ic09isc00ip00 +''') +f('sys/devices/pci0000:00/0000:00:1d.1/usb2/2-0:1.0/bInterfaceProtocol', 0o644, b'00\n') +d('sys/devices/pci0000:00/0000:00:1d.1/usb2/2-0:1.0/usb_endpoint', 0o755) +d('sys/devices/pci0000:00/0000:00:1d.1/usb2/2-0:1.0/usb_endpoint/usbdev2.1_ep81', 0o755) +l('sys/devices/pci0000:00/0000:00:1d.1/usb2/2-0:1.0/usb_endpoint/usbdev2.1_ep81/subsystem', '../../../../../../../class/usb_endpoint') +l('sys/devices/pci0000:00/0000:00:1d.1/usb2/2-0:1.0/usb_endpoint/usbdev2.1_ep81/device', '../../../2-0:1.0') +f('sys/devices/pci0000:00/0000:00:1d.1/usb2/2-0:1.0/usb_endpoint/usbdev2.1_ep81/interval', 0o644, b'255ms\n') +f('sys/devices/pci0000:00/0000:00:1d.1/usb2/2-0:1.0/usb_endpoint/usbdev2.1_ep81/bEndpointAddress', 0o644, b'81\n') +f('sys/devices/pci0000:00/0000:00:1d.1/usb2/2-0:1.0/usb_endpoint/usbdev2.1_ep81/type', 0o644, b'Interrupt\n') +f('sys/devices/pci0000:00/0000:00:1d.1/usb2/2-0:1.0/usb_endpoint/usbdev2.1_ep81/dev', 0o644, b'252:2\n') +f('sys/devices/pci0000:00/0000:00:1d.1/usb2/2-0:1.0/usb_endpoint/usbdev2.1_ep81/direction', 0o644, b'in\n') +f('sys/devices/pci0000:00/0000:00:1d.1/usb2/2-0:1.0/usb_endpoint/usbdev2.1_ep81/bLength', 0o644, b'07\n') +f('sys/devices/pci0000:00/0000:00:1d.1/usb2/2-0:1.0/usb_endpoint/usbdev2.1_ep81/wMaxPacketSize', 0o644, b'0002\n') +f('sys/devices/pci0000:00/0000:00:1d.1/usb2/2-0:1.0/usb_endpoint/usbdev2.1_ep81/bmAttributes', 0o644, b'03\n') +f('sys/devices/pci0000:00/0000:00:1d.1/usb2/2-0:1.0/usb_endpoint/usbdev2.1_ep81/uevent', 0o644, b'''MAJOR=252 +MINOR=2 +''') +f('sys/devices/pci0000:00/0000:00:1d.1/usb2/2-0:1.0/usb_endpoint/usbdev2.1_ep81/bInterval', 0o644, b'ff\n') +d('sys/devices/pci0000:00/0000:00:1d.1/usb2/2-0:1.0/usb_endpoint/usbdev2.1_ep81/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.1/usb2/2-0:1.0/usb_endpoint/usbdev2.1_ep81/power/wakeup', 0o644, b'\n') +d('sys/devices/pci0000:00/0000:00:1d.1/usb2/2-0:1.0/power', 0o755) +f('sys/devices/pci0000:00/0000:00:1d.1/usb2/2-0:1.0/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual', 0o755) +d('sys/devices/virtual/vc', 0o755) +d('sys/devices/virtual/vc/vcsa3', 0o755) +l('sys/devices/virtual/vc/vcsa3/subsystem', '../../../../class/vc') +f('sys/devices/virtual/vc/vcsa3/dev', 0o644, b'7:131\n') +f('sys/devices/virtual/vc/vcsa3/uevent', 0o644, b'''MAJOR=7 +MINOR=131 +''') +d('sys/devices/virtual/vc/vcsa3/power', 0o755) +f('sys/devices/virtual/vc/vcsa3/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/vc/vcsa6', 0o755) +l('sys/devices/virtual/vc/vcsa6/subsystem', '../../../../class/vc') +f('sys/devices/virtual/vc/vcsa6/dev', 0o644, b'7:134\n') +f('sys/devices/virtual/vc/vcsa6/uevent', 0o644, b'''MAJOR=7 +MINOR=134 +''') +d('sys/devices/virtual/vc/vcsa6/power', 0o755) +f('sys/devices/virtual/vc/vcsa6/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/vc/vcsa2', 0o755) +l('sys/devices/virtual/vc/vcsa2/subsystem', '../../../../class/vc') +f('sys/devices/virtual/vc/vcsa2/dev', 0o644, b'7:130\n') +f('sys/devices/virtual/vc/vcsa2/uevent', 0o644, b'''MAJOR=7 +MINOR=130 +''') +d('sys/devices/virtual/vc/vcsa2/power', 0o755) +f('sys/devices/virtual/vc/vcsa2/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/vc/vcsa', 0o755) +l('sys/devices/virtual/vc/vcsa/subsystem', '../../../../class/vc') +f('sys/devices/virtual/vc/vcsa/dev', 0o644, b'7:128\n') +f('sys/devices/virtual/vc/vcsa/uevent', 0o644, b'''MAJOR=7 +MINOR=128 +''') +d('sys/devices/virtual/vc/vcsa/power', 0o755) +f('sys/devices/virtual/vc/vcsa/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/vc/vcs2', 0o755) +l('sys/devices/virtual/vc/vcs2/subsystem', '../../../../class/vc') +f('sys/devices/virtual/vc/vcs2/dev', 0o644, b'7:2\n') +f('sys/devices/virtual/vc/vcs2/uevent', 0o644, b'''MAJOR=7 +MINOR=2 +''') +d('sys/devices/virtual/vc/vcs2/power', 0o755) +f('sys/devices/virtual/vc/vcs2/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/vc/vcs7', 0o755) +l('sys/devices/virtual/vc/vcs7/subsystem', '../../../../class/vc') +f('sys/devices/virtual/vc/vcs7/dev', 0o644, b'7:7\n') +f('sys/devices/virtual/vc/vcs7/uevent', 0o644, b'''MAJOR=7 +MINOR=7 +''') +d('sys/devices/virtual/vc/vcs7/power', 0o755) +f('sys/devices/virtual/vc/vcs7/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/vc/vcsa5', 0o755) +l('sys/devices/virtual/vc/vcsa5/subsystem', '../../../../class/vc') +f('sys/devices/virtual/vc/vcsa5/dev', 0o644, b'7:133\n') +f('sys/devices/virtual/vc/vcsa5/uevent', 0o644, b'''MAJOR=7 +MINOR=133 +''') +d('sys/devices/virtual/vc/vcsa5/power', 0o755) +f('sys/devices/virtual/vc/vcsa5/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/vc/vcsa10', 0o755) +l('sys/devices/virtual/vc/vcsa10/subsystem', '../../../../class/vc') +f('sys/devices/virtual/vc/vcsa10/dev', 0o644, b'7:138\n') +f('sys/devices/virtual/vc/vcsa10/uevent', 0o644, b'''MAJOR=7 +MINOR=138 +''') +d('sys/devices/virtual/vc/vcsa10/power', 0o755) +f('sys/devices/virtual/vc/vcsa10/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/vc/vcs10', 0o755) +l('sys/devices/virtual/vc/vcs10/subsystem', '../../../../class/vc') +f('sys/devices/virtual/vc/vcs10/dev', 0o644, b'7:10\n') +f('sys/devices/virtual/vc/vcs10/uevent', 0o644, b'''MAJOR=7 +MINOR=10 +''') +d('sys/devices/virtual/vc/vcs10/power', 0o755) +f('sys/devices/virtual/vc/vcs10/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/vc/vcsa1', 0o755) +l('sys/devices/virtual/vc/vcsa1/subsystem', '../../../../class/vc') +f('sys/devices/virtual/vc/vcsa1/dev', 0o644, b'7:129\n') +f('sys/devices/virtual/vc/vcsa1/uevent', 0o644, b'''MAJOR=7 +MINOR=129 +''') +d('sys/devices/virtual/vc/vcsa1/power', 0o755) +f('sys/devices/virtual/vc/vcsa1/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/vc/vcsa4', 0o755) +l('sys/devices/virtual/vc/vcsa4/subsystem', '../../../../class/vc') +f('sys/devices/virtual/vc/vcsa4/dev', 0o644, b'7:132\n') +f('sys/devices/virtual/vc/vcsa4/uevent', 0o644, b'''MAJOR=7 +MINOR=132 +''') +d('sys/devices/virtual/vc/vcsa4/power', 0o755) +f('sys/devices/virtual/vc/vcsa4/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/vc/vcs', 0o755) +l('sys/devices/virtual/vc/vcs/subsystem', '../../../../class/vc') +f('sys/devices/virtual/vc/vcs/dev', 0o644, b'7:0\n') +f('sys/devices/virtual/vc/vcs/uevent', 0o644, b'''MAJOR=7 +MINOR=0 +''') +d('sys/devices/virtual/vc/vcs/power', 0o755) +f('sys/devices/virtual/vc/vcs/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/vc/vcs1', 0o755) +l('sys/devices/virtual/vc/vcs1/subsystem', '../../../../class/vc') +f('sys/devices/virtual/vc/vcs1/dev', 0o644, b'7:1\n') +f('sys/devices/virtual/vc/vcs1/uevent', 0o644, b'''MAJOR=7 +MINOR=1 +''') +d('sys/devices/virtual/vc/vcs1/power', 0o755) +f('sys/devices/virtual/vc/vcs1/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/vc/vcs4', 0o755) +l('sys/devices/virtual/vc/vcs4/subsystem', '../../../../class/vc') +f('sys/devices/virtual/vc/vcs4/dev', 0o644, b'7:4\n') +f('sys/devices/virtual/vc/vcs4/uevent', 0o644, b'''MAJOR=7 +MINOR=4 +''') +d('sys/devices/virtual/vc/vcs4/power', 0o755) +f('sys/devices/virtual/vc/vcs4/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/vc/vcsa7', 0o755) +l('sys/devices/virtual/vc/vcsa7/subsystem', '../../../../class/vc') +f('sys/devices/virtual/vc/vcsa7/dev', 0o644, b'7:135\n') +f('sys/devices/virtual/vc/vcsa7/uevent', 0o644, b'''MAJOR=7 +MINOR=135 +''') +d('sys/devices/virtual/vc/vcsa7/power', 0o755) +f('sys/devices/virtual/vc/vcsa7/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/vc/vcs6', 0o755) +l('sys/devices/virtual/vc/vcs6/subsystem', '../../../../class/vc') +f('sys/devices/virtual/vc/vcs6/dev', 0o644, b'7:6\n') +f('sys/devices/virtual/vc/vcs6/uevent', 0o644, b'''MAJOR=7 +MINOR=6 +''') +d('sys/devices/virtual/vc/vcs6/power', 0o755) +f('sys/devices/virtual/vc/vcs6/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/vc/vcs3', 0o755) +l('sys/devices/virtual/vc/vcs3/subsystem', '../../../../class/vc') +f('sys/devices/virtual/vc/vcs3/dev', 0o644, b'7:3\n') +f('sys/devices/virtual/vc/vcs3/uevent', 0o644, b'''MAJOR=7 +MINOR=3 +''') +d('sys/devices/virtual/vc/vcs3/power', 0o755) +f('sys/devices/virtual/vc/vcs3/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/vc/vcs5', 0o755) +l('sys/devices/virtual/vc/vcs5/subsystem', '../../../../class/vc') +f('sys/devices/virtual/vc/vcs5/dev', 0o644, b'7:5\n') +f('sys/devices/virtual/vc/vcs5/uevent', 0o644, b'''MAJOR=7 +MINOR=5 +''') +d('sys/devices/virtual/vc/vcs5/power', 0o755) +f('sys/devices/virtual/vc/vcs5/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/mem', 0o755) +d('sys/devices/virtual/mem/zero', 0o755) +l('sys/devices/virtual/mem/zero/subsystem', '../../../../class/mem') +f('sys/devices/virtual/mem/zero/dev', 0o644, b'1:5\n') +f('sys/devices/virtual/mem/zero/uevent', 0o644, b'''MAJOR=1 +MINOR=5 +''') +d('sys/devices/virtual/mem/zero/power', 0o755) +f('sys/devices/virtual/mem/zero/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/mem/kmsg', 0o755) +l('sys/devices/virtual/mem/kmsg/subsystem', '../../../../class/mem') +f('sys/devices/virtual/mem/kmsg/dev', 0o644, b'1:11\n') +f('sys/devices/virtual/mem/kmsg/uevent', 0o644, b'''MAJOR=1 +MINOR=11 +''') +d('sys/devices/virtual/mem/kmsg/power', 0o755) +f('sys/devices/virtual/mem/kmsg/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/mem/mem', 0o755) +l('sys/devices/virtual/mem/mem/subsystem', '../../../../class/mem') +f('sys/devices/virtual/mem/mem/dev', 0o644, b'1:1\n') +f('sys/devices/virtual/mem/mem/uevent', 0o644, b'''MAJOR=1 +MINOR=1 +''') +d('sys/devices/virtual/mem/mem/power', 0o755) +f('sys/devices/virtual/mem/mem/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/mem/urandom', 0o755) +l('sys/devices/virtual/mem/urandom/subsystem', '../../../../class/mem') +f('sys/devices/virtual/mem/urandom/dev', 0o644, b'1:9\n') +f('sys/devices/virtual/mem/urandom/uevent', 0o644, b'''MAJOR=1 +MINOR=9 +''') +d('sys/devices/virtual/mem/urandom/power', 0o755) +f('sys/devices/virtual/mem/urandom/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/mem/port', 0o755) +l('sys/devices/virtual/mem/port/subsystem', '../../../../class/mem') +f('sys/devices/virtual/mem/port/dev', 0o644, b'1:4\n') +f('sys/devices/virtual/mem/port/uevent', 0o644, b'''MAJOR=1 +MINOR=4 +''') +d('sys/devices/virtual/mem/port/power', 0o755) +f('sys/devices/virtual/mem/port/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/mem/null', 0o755) +l('sys/devices/virtual/mem/null/subsystem', '../../../../class/mem') +f('sys/devices/virtual/mem/null/dev', 0o644, b'1:3\n') +f('sys/devices/virtual/mem/null/uevent', 0o644, b'''MAJOR=1 +MINOR=3 +''') +d('sys/devices/virtual/mem/null/power', 0o755) +f('sys/devices/virtual/mem/null/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/mem/kmem', 0o755) +l('sys/devices/virtual/mem/kmem/subsystem', '../../../../class/mem') +f('sys/devices/virtual/mem/kmem/dev', 0o644, b'1:2\n') +f('sys/devices/virtual/mem/kmem/uevent', 0o644, b'''MAJOR=1 +MINOR=2 +''') +d('sys/devices/virtual/mem/kmem/power', 0o755) +f('sys/devices/virtual/mem/kmem/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/mem/full', 0o755) +l('sys/devices/virtual/mem/full/subsystem', '../../../../class/mem') +f('sys/devices/virtual/mem/full/dev', 0o644, b'1:7\n') +f('sys/devices/virtual/mem/full/uevent', 0o644, b'''MAJOR=1 +MINOR=7 +''') +d('sys/devices/virtual/mem/full/power', 0o755) +f('sys/devices/virtual/mem/full/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/mem/random', 0o755) +l('sys/devices/virtual/mem/random/subsystem', '../../../../class/mem') +f('sys/devices/virtual/mem/random/dev', 0o644, b'1:8\n') +f('sys/devices/virtual/mem/random/uevent', 0o644, b'''MAJOR=1 +MINOR=8 +''') +d('sys/devices/virtual/mem/random/power', 0o755) +f('sys/devices/virtual/mem/random/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/net', 0o755) +d('sys/devices/virtual/net/lo', 0o755) +l('sys/devices/virtual/net/lo/subsystem', '../../../../class/net') +f('sys/devices/virtual/net/lo/ifindex', 0o644, b'1\n') +f('sys/devices/virtual/net/lo/features', 0o644, b'0x13865\n') +f('sys/devices/virtual/net/lo/iflink', 0o644, b'1\n') +f('sys/devices/virtual/net/lo/dormant', 0o644, b'0\n') +f('sys/devices/virtual/net/lo/dev_id', 0o644, b'0x0\n') +f('sys/devices/virtual/net/lo/type', 0o644, b'772\n') +f('sys/devices/virtual/net/lo/operstate', 0o644, b'unknown\n') +f('sys/devices/virtual/net/lo/carrier', 0o644, b'1\n') +f('sys/devices/virtual/net/lo/link_mode', 0o644, b'0\n') +f('sys/devices/virtual/net/lo/tx_queue_len', 0o644, b'0\n') +f('sys/devices/virtual/net/lo/flags', 0o644, b'0x9\n') +f('sys/devices/virtual/net/lo/addr_len', 0o644, b'6\n') +f('sys/devices/virtual/net/lo/address', 0o644, b'00:00:00:00:00:00\n') +f('sys/devices/virtual/net/lo/uevent', 0o644, b'''INTERFACE=lo +IFINDEX=1 +''') +f('sys/devices/virtual/net/lo/mtu', 0o644, b'16436\n') +f('sys/devices/virtual/net/lo/broadcast', 0o644, b'00:00:00:00:00:00\n') +d('sys/devices/virtual/net/lo/statistics', 0o755) +f('sys/devices/virtual/net/lo/statistics/tx_aborted_errors', 0o644, b'0\n') +f('sys/devices/virtual/net/lo/statistics/rx_crc_errors', 0o644, b'0\n') +f('sys/devices/virtual/net/lo/statistics/rx_bytes', 0o644, b'3380\n') +f('sys/devices/virtual/net/lo/statistics/rx_errors', 0o644, b'0\n') +f('sys/devices/virtual/net/lo/statistics/tx_packets', 0o644, b'46\n') +f('sys/devices/virtual/net/lo/statistics/tx_carrier_errors', 0o644, b'0\n') +f('sys/devices/virtual/net/lo/statistics/tx_errors', 0o644, b'0\n') +f('sys/devices/virtual/net/lo/statistics/rx_dropped', 0o644, b'0\n') +f('sys/devices/virtual/net/lo/statistics/tx_fifo_errors', 0o644, b'0\n') +f('sys/devices/virtual/net/lo/statistics/rx_length_errors', 0o644, b'0\n') +f('sys/devices/virtual/net/lo/statistics/tx_dropped', 0o644, b'0\n') +f('sys/devices/virtual/net/lo/statistics/rx_fifo_errors', 0o644, b'0\n') +f('sys/devices/virtual/net/lo/statistics/rx_missed_errors', 0o644, b'0\n') +f('sys/devices/virtual/net/lo/statistics/tx_window_errors', 0o644, b'0\n') +f('sys/devices/virtual/net/lo/statistics/collisions', 0o644, b'0\n') +f('sys/devices/virtual/net/lo/statistics/rx_frame_errors', 0o644, b'0\n') +f('sys/devices/virtual/net/lo/statistics/rx_packets', 0o644, b'46\n') +f('sys/devices/virtual/net/lo/statistics/rx_compressed', 0o644, b'0\n') +f('sys/devices/virtual/net/lo/statistics/tx_compressed', 0o644, b'0\n') +f('sys/devices/virtual/net/lo/statistics/multicast', 0o644, b'0\n') +f('sys/devices/virtual/net/lo/statistics/rx_over_errors', 0o644, b'0\n') +f('sys/devices/virtual/net/lo/statistics/tx_bytes', 0o644, b'3380\n') +f('sys/devices/virtual/net/lo/statistics/tx_heartbeat_errors', 0o644, b'0\n') +d('sys/devices/virtual/net/lo/power', 0o755) +f('sys/devices/virtual/net/lo/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/dmi', 0o755) +d('sys/devices/virtual/dmi/id', 0o755) +l('sys/devices/virtual/dmi/id/subsystem', '../../../../class/dmi') +f('sys/devices/virtual/dmi/id/product_name', 0o644, b'8741C4G\n') +f('sys/devices/virtual/dmi/id/modalias', 0o644, b'dmi:bvnLENOVO:bvr7IET31WW(1.12):bd09/19/2007:svnLENOVO:pn8741C4G:pvrThinkPadT60p:rvnLENOVO:rn8741C4G:rvrNotAvailable:cvnLENOVO:ct10:cvrNotAvailable:\n') +f('sys/devices/virtual/dmi/id/chassis_serial', 0o644, b'Not Available\n') +f('sys/devices/virtual/dmi/id/board_version', 0o644, b'Not Available\n') +f('sys/devices/virtual/dmi/id/board_serial', 0o644, b'VF0UV72C10X\n') +f('sys/devices/virtual/dmi/id/chassis_type', 0o644, b'10\n') +f('sys/devices/virtual/dmi/id/chassis_asset_tag', 0o644, b'No Asset Information\n') +f('sys/devices/virtual/dmi/id/product_uuid', 0o644, b'82161681-492E-11CB-BCCA-A7FDE26F414B\n') +f('sys/devices/virtual/dmi/id/board_name', 0o644, b'8741C4G\n') +f('sys/devices/virtual/dmi/id/board_asset_tag', 0o644, b'\n') +f('sys/devices/virtual/dmi/id/bios_date', 0o644, b'09/19/2007\n') +f('sys/devices/virtual/dmi/id/bios_version', 0o644, b'7IET31WW (1.12 )\n') +f('sys/devices/virtual/dmi/id/product_serial', 0o644, b'L3AK195\n') +f('sys/devices/virtual/dmi/id/chassis_version', 0o644, b'Not Available\n') +f('sys/devices/virtual/dmi/id/chassis_vendor', 0o644, b'LENOVO\n') +f('sys/devices/virtual/dmi/id/product_version', 0o644, b'ThinkPad T60p\n') +f('sys/devices/virtual/dmi/id/board_vendor', 0o644, b'LENOVO\n') +f('sys/devices/virtual/dmi/id/uevent', 0o644, b'MODALIAS=dmi:bvnLENOVO:bvr7IET31WW(1.12):bd09/19/2007:svnLENOVO:pn8741C4G:pvrThinkPadT60p:rvnLENOVO:rn8741C4G:rvrNotAvailable:cvnLENOVO:ct10:cvrNotAvailable:\n') +f('sys/devices/virtual/dmi/id/sys_vendor', 0o644, b'LENOVO\n') +f('sys/devices/virtual/dmi/id/bios_vendor', 0o644, b'LENOVO\n') +d('sys/devices/virtual/dmi/id/power', 0o755) +f('sys/devices/virtual/dmi/id/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/bdi', 0o755) +d('sys/devices/virtual/bdi/7:1', 0o755) +l('sys/devices/virtual/bdi/7:1/subsystem', '../../../../class/bdi') +f('sys/devices/virtual/bdi/7:1/read_ahead_kb', 0o644, b'0\n') +f('sys/devices/virtual/bdi/7:1/uevent', 0o644, b'') +f('sys/devices/virtual/bdi/7:1/max_ratio', 0o644, b'100\n') +f('sys/devices/virtual/bdi/7:1/min_ratio', 0o644, b'0\n') +d('sys/devices/virtual/bdi/7:1/power', 0o755) +f('sys/devices/virtual/bdi/7:1/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/bdi/7:0', 0o755) +l('sys/devices/virtual/bdi/7:0/subsystem', '../../../../class/bdi') +f('sys/devices/virtual/bdi/7:0/read_ahead_kb', 0o644, b'0\n') +f('sys/devices/virtual/bdi/7:0/uevent', 0o644, b'') +f('sys/devices/virtual/bdi/7:0/max_ratio', 0o644, b'100\n') +f('sys/devices/virtual/bdi/7:0/min_ratio', 0o644, b'0\n') +d('sys/devices/virtual/bdi/7:0/power', 0o755) +f('sys/devices/virtual/bdi/7:0/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/bdi/7:2', 0o755) +l('sys/devices/virtual/bdi/7:2/subsystem', '../../../../class/bdi') +f('sys/devices/virtual/bdi/7:2/read_ahead_kb', 0o644, b'0\n') +f('sys/devices/virtual/bdi/7:2/uevent', 0o644, b'') +f('sys/devices/virtual/bdi/7:2/max_ratio', 0o644, b'100\n') +f('sys/devices/virtual/bdi/7:2/min_ratio', 0o644, b'0\n') +d('sys/devices/virtual/bdi/7:2/power', 0o755) +f('sys/devices/virtual/bdi/7:2/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/bdi/7:4', 0o755) +l('sys/devices/virtual/bdi/7:4/subsystem', '../../../../class/bdi') +f('sys/devices/virtual/bdi/7:4/read_ahead_kb', 0o644, b'0\n') +f('sys/devices/virtual/bdi/7:4/uevent', 0o644, b'') +f('sys/devices/virtual/bdi/7:4/max_ratio', 0o644, b'100\n') +f('sys/devices/virtual/bdi/7:4/min_ratio', 0o644, b'0\n') +d('sys/devices/virtual/bdi/7:4/power', 0o755) +f('sys/devices/virtual/bdi/7:4/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/bdi/7:3', 0o755) +l('sys/devices/virtual/bdi/7:3/subsystem', '../../../../class/bdi') +f('sys/devices/virtual/bdi/7:3/read_ahead_kb', 0o644, b'0\n') +f('sys/devices/virtual/bdi/7:3/uevent', 0o644, b'') +f('sys/devices/virtual/bdi/7:3/max_ratio', 0o644, b'100\n') +f('sys/devices/virtual/bdi/7:3/min_ratio', 0o644, b'0\n') +d('sys/devices/virtual/bdi/7:3/power', 0o755) +f('sys/devices/virtual/bdi/7:3/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/bdi/11:0', 0o755) +l('sys/devices/virtual/bdi/11:0/subsystem', '../../../../class/bdi') +f('sys/devices/virtual/bdi/11:0/read_ahead_kb', 0o644, b'128\n') +f('sys/devices/virtual/bdi/11:0/uevent', 0o644, b'') +f('sys/devices/virtual/bdi/11:0/max_ratio', 0o644, b'100\n') +f('sys/devices/virtual/bdi/11:0/min_ratio', 0o644, b'0\n') +d('sys/devices/virtual/bdi/11:0/power', 0o755) +f('sys/devices/virtual/bdi/11:0/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/bdi/7:5', 0o755) +l('sys/devices/virtual/bdi/7:5/subsystem', '../../../../class/bdi') +f('sys/devices/virtual/bdi/7:5/read_ahead_kb', 0o644, b'0\n') +f('sys/devices/virtual/bdi/7:5/uevent', 0o644, b'') +f('sys/devices/virtual/bdi/7:5/max_ratio', 0o644, b'100\n') +f('sys/devices/virtual/bdi/7:5/min_ratio', 0o644, b'0\n') +d('sys/devices/virtual/bdi/7:5/power', 0o755) +f('sys/devices/virtual/bdi/7:5/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/bdi/8:0', 0o755) +l('sys/devices/virtual/bdi/8:0/subsystem', '../../../../class/bdi') +f('sys/devices/virtual/bdi/8:0/read_ahead_kb', 0o644, b'128\n') +f('sys/devices/virtual/bdi/8:0/uevent', 0o644, b'') +f('sys/devices/virtual/bdi/8:0/max_ratio', 0o644, b'100\n') +f('sys/devices/virtual/bdi/8:0/min_ratio', 0o644, b'0\n') +d('sys/devices/virtual/bdi/8:0/power', 0o755) +f('sys/devices/virtual/bdi/8:0/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/bdi/default', 0o755) +l('sys/devices/virtual/bdi/default/subsystem', '../../../../class/bdi') +f('sys/devices/virtual/bdi/default/read_ahead_kb', 0o644, b'128\n') +f('sys/devices/virtual/bdi/default/uevent', 0o644, b'') +f('sys/devices/virtual/bdi/default/max_ratio', 0o644, b'100\n') +f('sys/devices/virtual/bdi/default/min_ratio', 0o644, b'0\n') +d('sys/devices/virtual/bdi/default/power', 0o755) +f('sys/devices/virtual/bdi/default/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/bdi/0:16', 0o755) +l('sys/devices/virtual/bdi/0:16/subsystem', '../../../../class/bdi') +f('sys/devices/virtual/bdi/0:16/read_ahead_kb', 0o644, b'128\n') +f('sys/devices/virtual/bdi/0:16/uevent', 0o644, b'') +f('sys/devices/virtual/bdi/0:16/max_ratio', 0o644, b'1\n') +f('sys/devices/virtual/bdi/0:16/min_ratio', 0o644, b'0\n') +d('sys/devices/virtual/bdi/0:16/power', 0o755) +f('sys/devices/virtual/bdi/0:16/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/bdi/8:16', 0o755) +l('sys/devices/virtual/bdi/8:16/subsystem', '../../../../class/bdi') +f('sys/devices/virtual/bdi/8:16/read_ahead_kb', 0o644, b'128\n') +f('sys/devices/virtual/bdi/8:16/uevent', 0o644, b'') +f('sys/devices/virtual/bdi/8:16/max_ratio', 0o644, b'100\n') +f('sys/devices/virtual/bdi/8:16/min_ratio', 0o644, b'0\n') +d('sys/devices/virtual/bdi/8:16/power', 0o755) +f('sys/devices/virtual/bdi/8:16/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/bdi/9:0', 0o755) +l('sys/devices/virtual/bdi/9:0/subsystem', '../../../../class/bdi') +f('sys/devices/virtual/bdi/9:0/read_ahead_kb', 0o644, b'128\n') +f('sys/devices/virtual/bdi/9:0/uevent', 0o644, b'') +f('sys/devices/virtual/bdi/9:0/max_ratio', 0o644, b'100\n') +f('sys/devices/virtual/bdi/9:0/min_ratio', 0o644, b'0\n') +d('sys/devices/virtual/bdi/9:0/power', 0o755) +f('sys/devices/virtual/bdi/9:0/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/bdi/7:7', 0o755) +l('sys/devices/virtual/bdi/7:7/subsystem', '../../../../class/bdi') +f('sys/devices/virtual/bdi/7:7/read_ahead_kb', 0o644, b'0\n') +f('sys/devices/virtual/bdi/7:7/uevent', 0o644, b'') +f('sys/devices/virtual/bdi/7:7/max_ratio', 0o644, b'100\n') +f('sys/devices/virtual/bdi/7:7/min_ratio', 0o644, b'0\n') +d('sys/devices/virtual/bdi/7:7/power', 0o755) +f('sys/devices/virtual/bdi/7:7/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/bdi/7:6', 0o755) +l('sys/devices/virtual/bdi/7:6/subsystem', '../../../../class/bdi') +f('sys/devices/virtual/bdi/7:6/read_ahead_kb', 0o644, b'0\n') +f('sys/devices/virtual/bdi/7:6/uevent', 0o644, b'') +f('sys/devices/virtual/bdi/7:6/max_ratio', 0o644, b'100\n') +f('sys/devices/virtual/bdi/7:6/min_ratio', 0o644, b'0\n') +d('sys/devices/virtual/bdi/7:6/power', 0o755) +f('sys/devices/virtual/bdi/7:6/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/sound', 0o755) +d('sys/devices/virtual/sound/timer', 0o755) +l('sys/devices/virtual/sound/timer/subsystem', '../../../../class/sound') +f('sys/devices/virtual/sound/timer/dev', 0o644, b'116:33\n') +f('sys/devices/virtual/sound/timer/uevent', 0o644, b'''MAJOR=116 +MINOR=33 +''') +d('sys/devices/virtual/sound/timer/power', 0o755) +f('sys/devices/virtual/sound/timer/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/sound/seq', 0o755) +l('sys/devices/virtual/sound/seq/subsystem', '../../../../class/sound') +f('sys/devices/virtual/sound/seq/dev', 0o644, b'116:1\n') +f('sys/devices/virtual/sound/seq/uevent', 0o644, b'''MAJOR=116 +MINOR=1 +''') +d('sys/devices/virtual/sound/seq/power', 0o755) +f('sys/devices/virtual/sound/seq/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/misc', 0o755) +d('sys/devices/virtual/misc/misc-fake89999', 0o755) +l('sys/devices/virtual/misc/misc-fake89999/subsystem', '../../../../class/misc') +f('sys/devices/virtual/misc/misc-fake89999/dev', 0o644, b'4095:89999\n') +f('sys/devices/virtual/misc/misc-fake89999/uevent', 0o644, b'''MAJOR=4095 +MINOR=89999 +DEVNAME=misc-fake89999 +''') +d('sys/devices/virtual/misc/misc-fake89999/power', 0o755) +f('sys/devices/virtual/misc/misc-fake89999/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/misc/uinput', 0o755) +l('sys/devices/virtual/misc/uinput/subsystem', '../../../../class/misc') +f('sys/devices/virtual/misc/uinput/dev', 0o644, b'10:223\n') +f('sys/devices/virtual/misc/uinput/uevent', 0o644, b'''MAJOR=10 +MINOR=223 +''') +d('sys/devices/virtual/misc/uinput/power', 0o755) +f('sys/devices/virtual/misc/uinput/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/misc/fuse', 0o755) +l('sys/devices/virtual/misc/fuse/subsystem', '../../../../class/misc') +f('sys/devices/virtual/misc/fuse/dev', 0o644, b'10:229\n') +f('sys/devices/virtual/misc/fuse/uevent', 0o644, b'''MAJOR=10 +MINOR=229 +''') +d('sys/devices/virtual/misc/fuse/power', 0o755) +f('sys/devices/virtual/misc/fuse/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/misc/hpet', 0o755) +l('sys/devices/virtual/misc/hpet/subsystem', '../../../../class/misc') +f('sys/devices/virtual/misc/hpet/dev', 0o644, b'10:228\n') +f('sys/devices/virtual/misc/hpet/uevent', 0o644, b'''MAJOR=10 +MINOR=228 +''') +d('sys/devices/virtual/misc/hpet/power', 0o755) +f('sys/devices/virtual/misc/hpet/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/misc/cpu_dma_latency', 0o755) +l('sys/devices/virtual/misc/cpu_dma_latency/subsystem', '../../../../class/misc') +f('sys/devices/virtual/misc/cpu_dma_latency/dev', 0o644, b'10:63\n') +f('sys/devices/virtual/misc/cpu_dma_latency/uevent', 0o644, b'''MAJOR=10 +MINOR=63 +''') +d('sys/devices/virtual/misc/cpu_dma_latency/power', 0o755) +f('sys/devices/virtual/misc/cpu_dma_latency/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/misc/mcelog', 0o755) +l('sys/devices/virtual/misc/mcelog/subsystem', '../../../../class/misc') +f('sys/devices/virtual/misc/mcelog/dev', 0o644, b'10:227\n') +f('sys/devices/virtual/misc/mcelog/uevent', 0o644, b'''MAJOR=10 +MINOR=227 +''') +d('sys/devices/virtual/misc/mcelog/power', 0o755) +f('sys/devices/virtual/misc/mcelog/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/misc/device-mapper', 0o755) +l('sys/devices/virtual/misc/device-mapper/subsystem', '../../../../class/misc') +f('sys/devices/virtual/misc/device-mapper/dev', 0o644, b'10:60\n') +f('sys/devices/virtual/misc/device-mapper/uevent', 0o644, b'''MAJOR=10 +MINOR=60 +''') +d('sys/devices/virtual/misc/device-mapper/power', 0o755) +f('sys/devices/virtual/misc/device-mapper/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/misc/psaux', 0o755) +l('sys/devices/virtual/misc/psaux/subsystem', '../../../../class/misc') +f('sys/devices/virtual/misc/psaux/dev', 0o644, b'10:1\n') +f('sys/devices/virtual/misc/psaux/uevent', 0o644, b'''MAJOR=10 +MINOR=1 +''') +d('sys/devices/virtual/misc/psaux/power', 0o755) +f('sys/devices/virtual/misc/psaux/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/misc/misc-fake1', 0o755) +l('sys/devices/virtual/misc/misc-fake1/subsystem', '../../../../class/misc') +f('sys/devices/virtual/misc/misc-fake1/dev', 0o644, b'4095:1\n') +f('sys/devices/virtual/misc/misc-fake1/uevent', 0o644, b'''MAJOR=4095 +MINOR=1 +DEVNAME=misc-fake1 + +''') +d('sys/devices/virtual/misc/misc-fake1/power', 0o755) +f('sys/devices/virtual/misc/misc-fake1/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/misc/nvram', 0o755) +l('sys/devices/virtual/misc/nvram/subsystem', '../../../../class/misc') +f('sys/devices/virtual/misc/nvram/dev', 0o644, b'10:144\n') +f('sys/devices/virtual/misc/nvram/uevent', 0o644, b'''MAJOR=10 +MINOR=144 +''') +d('sys/devices/virtual/misc/nvram/power', 0o755) +f('sys/devices/virtual/misc/nvram/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/misc/network_latency', 0o755) +l('sys/devices/virtual/misc/network_latency/subsystem', '../../../../class/misc') +f('sys/devices/virtual/misc/network_latency/dev', 0o644, b'10:62\n') +f('sys/devices/virtual/misc/network_latency/uevent', 0o644, b'''MAJOR=10 +MINOR=62 +''') +d('sys/devices/virtual/misc/network_latency/power', 0o755) +f('sys/devices/virtual/misc/network_latency/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/misc/network_throughput', 0o755) +l('sys/devices/virtual/misc/network_throughput/subsystem', '../../../../class/misc') +f('sys/devices/virtual/misc/network_throughput/dev', 0o644, b'10:61\n') +f('sys/devices/virtual/misc/network_throughput/uevent', 0o644, b'''MAJOR=10 +MINOR=61 +''') +d('sys/devices/virtual/misc/network_throughput/power', 0o755) +f('sys/devices/virtual/misc/network_throughput/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/misc/microcode', 0o755) +l('sys/devices/virtual/misc/microcode/subsystem', '../../../../class/misc') +f('sys/devices/virtual/misc/microcode/dev', 0o644, b'10:184\n') +f('sys/devices/virtual/misc/microcode/uevent', 0o644, b'''MAJOR=10 +MINOR=184 +''') +d('sys/devices/virtual/misc/microcode/power', 0o755) +f('sys/devices/virtual/misc/microcode/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/vtconsole', 0o755) +d('sys/devices/virtual/vtconsole/vtcon1', 0o755) +l('sys/devices/virtual/vtconsole/vtcon1/subsystem', '../../../../class/vtconsole') +f('sys/devices/virtual/vtconsole/vtcon1/bind', 0o644, b'1\n') +f('sys/devices/virtual/vtconsole/vtcon1/name', 0o644, b'(M) frame buffer device\n') +f('sys/devices/virtual/vtconsole/vtcon1/uevent', 0o644, b'') +d('sys/devices/virtual/vtconsole/vtcon1/power', 0o755) +f('sys/devices/virtual/vtconsole/vtcon1/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/vtconsole/vtcon0', 0o755) +l('sys/devices/virtual/vtconsole/vtcon0/subsystem', '../../../../class/vtconsole') +f('sys/devices/virtual/vtconsole/vtcon0/bind', 0o644, b'0\n') +f('sys/devices/virtual/vtconsole/vtcon0/name', 0o644, b'(S) dummy device\n') +f('sys/devices/virtual/vtconsole/vtcon0/uevent', 0o644, b'') +d('sys/devices/virtual/vtconsole/vtcon0/power', 0o755) +f('sys/devices/virtual/vtconsole/vtcon0/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/input', 0o755) +d('sys/devices/virtual/input/mice', 0o755) +l('sys/devices/virtual/input/mice/subsystem', '../../../../class/input') +f('sys/devices/virtual/input/mice/dev', 0o644, b'13:63\n') +f('sys/devices/virtual/input/mice/uevent', 0o644, b'''MAJOR=13 +MINOR=63 +''') +d('sys/devices/virtual/input/mice/power', 0o755) +f('sys/devices/virtual/input/mice/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/input/input6', 0o755) +l('sys/devices/virtual/input/input6/subsystem', '../../../../class/input') +f('sys/devices/virtual/input/input6/uniq', 0o644, b'\n') +f('sys/devices/virtual/input/input6/phys', 0o644, b'thinkpad_acpi/input0\n') +f('sys/devices/virtual/input/input6/modalias', 0o644, b'input:b0019v17AAp5054e4101-e0,1,4,5,k71,72,73,8E,98,C0,C2,CD,E0,E1,E3,E4,EC,F0,168,174,181,1D2,1D7,1DB,1DC,ram4,lsfw3,\n') +f('sys/devices/virtual/input/input6/name', 0o644, b'ThinkPad Extra Buttons\n') +f('sys/devices/virtual/input/input6/uevent', 0o644, b'''PRODUCT=19/17aa/5054/4101 +NAME="ThinkPad Extra Buttons" +PHYS="thinkpad_acpi/input0" +EV==33 +KEY==18840000 2 10010000000000 0 1101b00002005 1004000 e000000000000 0 +MSC==10 +SW==8 +MODALIAS=input:b0019v17AAp5054e4101-e0,1,4,5,k71,72,73,8E,98,C0,C2,CD,E0,E1,E3,E4,EC,F0,168,174,181,1D2,1D7,1DB,1DC,ram4,lsfw3, +''') +d('sys/devices/virtual/input/input6/id', 0o755) +f('sys/devices/virtual/input/input6/id/version', 0o644, b'4101\n') +f('sys/devices/virtual/input/input6/id/product', 0o644, b'5054\n') +f('sys/devices/virtual/input/input6/id/vendor', 0o644, b'17aa\n') +f('sys/devices/virtual/input/input6/id/bustype', 0o644, b'0019\n') +d('sys/devices/virtual/input/input6/power', 0o755) +f('sys/devices/virtual/input/input6/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/input/input6/event6', 0o755) +l('sys/devices/virtual/input/input6/event6/subsystem', '../../../../../class/input') +l('sys/devices/virtual/input/input6/event6/device', '../../input6') +f('sys/devices/virtual/input/input6/event6/dev', 0o644, b'13:70\n') +f('sys/devices/virtual/input/input6/event6/uevent', 0o644, b'''MAJOR=13 +MINOR=70 +''') +d('sys/devices/virtual/input/input6/event6/power', 0o755) +f('sys/devices/virtual/input/input6/event6/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/input/input6/capabilities', 0o755) +f('sys/devices/virtual/input/input6/capabilities/msc', 0o644, b'10\n') +f('sys/devices/virtual/input/input6/capabilities/abs', 0o644, b'0\n') +f('sys/devices/virtual/input/input6/capabilities/snd', 0o644, b'0\n') +f('sys/devices/virtual/input/input6/capabilities/ff', 0o644, b'0\n') +f('sys/devices/virtual/input/input6/capabilities/key', 0o644, b'18840000 2 10010000000000 0 1101b00002005 1004000 e000000000000 0\n') +f('sys/devices/virtual/input/input6/capabilities/rel', 0o644, b'0\n') +f('sys/devices/virtual/input/input6/capabilities/sw', 0o644, b'8\n') +f('sys/devices/virtual/input/input6/capabilities/ev', 0o644, b'33\n') +f('sys/devices/virtual/input/input6/capabilities/led', 0o644, b'0\n') +d('sys/devices/virtual/thermal', 0o755) +d('sys/devices/virtual/thermal/thermal_zone1', 0o755) +l('sys/devices/virtual/thermal/thermal_zone1/subsystem', '../../../../class/thermal') +l('sys/devices/virtual/thermal/thermal_zone1/cdev1', '../cooling_device0') +l('sys/devices/virtual/thermal/thermal_zone1/cdev0', '../cooling_device1') +l('sys/devices/virtual/thermal/thermal_zone1/device', '../../../LNXSYSTM:00/LNXTHERM:00/LNXTHERM:02') +f('sys/devices/virtual/thermal/thermal_zone1/trip_point_0_type', 0o644, b'critical\n') +f('sys/devices/virtual/thermal/thermal_zone1/trip_point_0_temp', 0o644, b'100000\n') +f('sys/devices/virtual/thermal/thermal_zone1/trip_point_1_temp', 0o644, b'95500\n') +f('sys/devices/virtual/thermal/thermal_zone1/type', 0o644, b'acpitz\n') +f('sys/devices/virtual/thermal/thermal_zone1/cdev1_trip_point', 0o644, b'1\n') +f('sys/devices/virtual/thermal/thermal_zone1/mode', 0o644, b'kernel\n') +f('sys/devices/virtual/thermal/thermal_zone1/temp', 0o644, b'47000\n') +f('sys/devices/virtual/thermal/thermal_zone1/cdev0_trip_point', 0o644, b'1\n') +f('sys/devices/virtual/thermal/thermal_zone1/uevent', 0o644, b'') +f('sys/devices/virtual/thermal/thermal_zone1/trip_point_1_type', 0o644, b'passive\n') +d('sys/devices/virtual/thermal/thermal_zone1/power', 0o755) +f('sys/devices/virtual/thermal/thermal_zone1/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/thermal/cooling_device1', 0o755) +l('sys/devices/virtual/thermal/cooling_device1/subsystem', '../../../../class/thermal') +l('sys/devices/virtual/thermal/cooling_device1/device', '../../../LNXSYSTM:00/ACPI0007:01') +f('sys/devices/virtual/thermal/cooling_device1/type', 0o644, b'Processor\n') +f('sys/devices/virtual/thermal/cooling_device1/max_state', 0o644, b'10\n') +f('sys/devices/virtual/thermal/cooling_device1/cur_state', 0o644, b'0\n') +f('sys/devices/virtual/thermal/cooling_device1/uevent', 0o644, b'') +d('sys/devices/virtual/thermal/cooling_device1/power', 0o755) +f('sys/devices/virtual/thermal/cooling_device1/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/thermal/cooling_device0', 0o755) +l('sys/devices/virtual/thermal/cooling_device0/subsystem', '../../../../class/thermal') +l('sys/devices/virtual/thermal/cooling_device0/device', '../../../LNXSYSTM:00/ACPI0007:00') +f('sys/devices/virtual/thermal/cooling_device0/type', 0o644, b'Processor\n') +f('sys/devices/virtual/thermal/cooling_device0/max_state', 0o644, b'10\n') +f('sys/devices/virtual/thermal/cooling_device0/cur_state', 0o644, b'0\n') +f('sys/devices/virtual/thermal/cooling_device0/uevent', 0o644, b'') +d('sys/devices/virtual/thermal/cooling_device0/power', 0o755) +f('sys/devices/virtual/thermal/cooling_device0/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/thermal/thermal_zone0', 0o755) +l('sys/devices/virtual/thermal/thermal_zone0/subsystem', '../../../../class/thermal') +l('sys/devices/virtual/thermal/thermal_zone0/device', '../../../LNXSYSTM:00/LNXTHERM:00/LNXTHERM:01') +f('sys/devices/virtual/thermal/thermal_zone0/trip_point_0_type', 0o644, b'critical\n') +f('sys/devices/virtual/thermal/thermal_zone0/trip_point_0_temp', 0o644, b'127000\n') +f('sys/devices/virtual/thermal/thermal_zone0/type', 0o644, b'acpitz\n') +f('sys/devices/virtual/thermal/thermal_zone0/mode', 0o644, b'kernel\n') +f('sys/devices/virtual/thermal/thermal_zone0/temp', 0o644, b'46000\n') +f('sys/devices/virtual/thermal/thermal_zone0/uevent', 0o644, b'') +d('sys/devices/virtual/thermal/thermal_zone0/power', 0o755) +f('sys/devices/virtual/thermal/thermal_zone0/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/block', 0o755) +d('sys/devices/virtual/block/loop1', 0o755) +l('sys/devices/virtual/block/loop1/subsystem', '../../../../class/block') +l('sys/devices/virtual/block/loop1/bdi', '../../bdi/7:1') +f('sys/devices/virtual/block/loop1/capability', 0o644, b'10\n') +f('sys/devices/virtual/block/loop1/ro', 0o644, b'0\n') +f('sys/devices/virtual/block/loop1/make-it-fail', 0o644, b'0\n') +f('sys/devices/virtual/block/loop1/size', 0o644, b'0\n') +f('sys/devices/virtual/block/loop1/dev', 0o644, b'7:1\n') +f('sys/devices/virtual/block/loop1/range', 0o644, b'1\n') +f('sys/devices/virtual/block/loop1/removable', 0o644, b'0\n') +f('sys/devices/virtual/block/loop1/stat', 0o644, b' 0 0 0 0 0 0 0 0 0 0 0\n') +f('sys/devices/virtual/block/loop1/uevent', 0o644, b'''MAJOR=7 +MINOR=1 +DEVTYPE=disk +''') +d('sys/devices/virtual/block/loop1/power', 0o755) +f('sys/devices/virtual/block/loop1/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/block/loop7', 0o755) +l('sys/devices/virtual/block/loop7/subsystem', '../../../../class/block') +l('sys/devices/virtual/block/loop7/bdi', '../../bdi/7:7') +f('sys/devices/virtual/block/loop7/capability', 0o644, b'10\n') +f('sys/devices/virtual/block/loop7/ro', 0o644, b'0\n') +f('sys/devices/virtual/block/loop7/make-it-fail', 0o644, b'0\n') +f('sys/devices/virtual/block/loop7/size', 0o644, b'0\n') +f('sys/devices/virtual/block/loop7/dev', 0o644, b'7:7\n') +f('sys/devices/virtual/block/loop7/range', 0o644, b'1\n') +f('sys/devices/virtual/block/loop7/removable', 0o644, b'0\n') +f('sys/devices/virtual/block/loop7/stat', 0o644, b' 0 0 0 0 0 0 0 0 0 0 0\n') +f('sys/devices/virtual/block/loop7/uevent', 0o644, b'''MAJOR=7 +MINOR=7 +DEVTYPE=disk +''') +d('sys/devices/virtual/block/loop7/power', 0o755) +f('sys/devices/virtual/block/loop7/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/block/loop0', 0o755) +l('sys/devices/virtual/block/loop0/subsystem', '../../../../class/block') +l('sys/devices/virtual/block/loop0/bdi', '../../bdi/7:0') +f('sys/devices/virtual/block/loop0/capability', 0o644, b'10\n') +f('sys/devices/virtual/block/loop0/ro', 0o644, b'0\n') +f('sys/devices/virtual/block/loop0/make-it-fail', 0o644, b'0\n') +f('sys/devices/virtual/block/loop0/size', 0o644, b'0\n') +f('sys/devices/virtual/block/loop0/dev', 0o644, b'7:0\n') +f('sys/devices/virtual/block/loop0/range', 0o644, b'1\n') +f('sys/devices/virtual/block/loop0/removable', 0o644, b'0\n') +f('sys/devices/virtual/block/loop0/stat', 0o644, b' 0 0 0 0 0 0 0 0 0 0 0\n') +f('sys/devices/virtual/block/loop0/uevent', 0o644, b'''MAJOR=7 +MINOR=0 +DEVTYPE=disk +''') +d('sys/devices/virtual/block/loop0/power', 0o755) +f('sys/devices/virtual/block/loop0/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/block/loop5', 0o755) +l('sys/devices/virtual/block/loop5/subsystem', '../../../../class/block') +l('sys/devices/virtual/block/loop5/bdi', '../../bdi/7:5') +f('sys/devices/virtual/block/loop5/capability', 0o644, b'10\n') +f('sys/devices/virtual/block/loop5/ro', 0o644, b'0\n') +f('sys/devices/virtual/block/loop5/make-it-fail', 0o644, b'0\n') +f('sys/devices/virtual/block/loop5/size', 0o644, b'0\n') +f('sys/devices/virtual/block/loop5/dev', 0o644, b'7:5\n') +f('sys/devices/virtual/block/loop5/range', 0o644, b'1\n') +f('sys/devices/virtual/block/loop5/removable', 0o644, b'0\n') +f('sys/devices/virtual/block/loop5/stat', 0o644, b' 0 0 0 0 0 0 0 0 0 0 0\n') +f('sys/devices/virtual/block/loop5/uevent', 0o644, b'''MAJOR=7 +MINOR=5 +DEVTYPE=disk +''') +d('sys/devices/virtual/block/loop5/power', 0o755) +f('sys/devices/virtual/block/loop5/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/block/loop3', 0o755) +l('sys/devices/virtual/block/loop3/subsystem', '../../../../class/block') +l('sys/devices/virtual/block/loop3/bdi', '../../bdi/7:3') +f('sys/devices/virtual/block/loop3/capability', 0o644, b'10\n') +f('sys/devices/virtual/block/loop3/ro', 0o644, b'0\n') +f('sys/devices/virtual/block/loop3/make-it-fail', 0o644, b'0\n') +f('sys/devices/virtual/block/loop3/size', 0o644, b'0\n') +f('sys/devices/virtual/block/loop3/dev', 0o644, b'7:3\n') +f('sys/devices/virtual/block/loop3/range', 0o644, b'1\n') +f('sys/devices/virtual/block/loop3/removable', 0o644, b'0\n') +f('sys/devices/virtual/block/loop3/stat', 0o644, b' 0 0 0 0 0 0 0 0 0 0 0\n') +f('sys/devices/virtual/block/loop3/uevent', 0o644, b'''MAJOR=7 +MINOR=3 +DEVTYPE=disk +''') +d('sys/devices/virtual/block/loop3/power', 0o755) +f('sys/devices/virtual/block/loop3/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/block/loop6', 0o755) +l('sys/devices/virtual/block/loop6/subsystem', '../../../../class/block') +l('sys/devices/virtual/block/loop6/bdi', '../../bdi/7:6') +f('sys/devices/virtual/block/loop6/capability', 0o644, b'10\n') +f('sys/devices/virtual/block/loop6/ro', 0o644, b'0\n') +f('sys/devices/virtual/block/loop6/make-it-fail', 0o644, b'0\n') +f('sys/devices/virtual/block/loop6/size', 0o644, b'0\n') +f('sys/devices/virtual/block/loop6/dev', 0o644, b'7:6\n') +f('sys/devices/virtual/block/loop6/range', 0o644, b'1\n') +f('sys/devices/virtual/block/loop6/removable', 0o644, b'0\n') +f('sys/devices/virtual/block/loop6/stat', 0o644, b' 0 0 0 0 0 0 0 0 0 0 0\n') +f('sys/devices/virtual/block/loop6/uevent', 0o644, b'''MAJOR=7 +MINOR=6 +DEVTYPE=disk +''') +d('sys/devices/virtual/block/loop6/power', 0o755) +f('sys/devices/virtual/block/loop6/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/block/loop2', 0o755) +l('sys/devices/virtual/block/loop2/subsystem', '../../../../class/block') +l('sys/devices/virtual/block/loop2/bdi', '../../bdi/7:2') +f('sys/devices/virtual/block/loop2/capability', 0o644, b'10\n') +f('sys/devices/virtual/block/loop2/ro', 0o644, b'0\n') +f('sys/devices/virtual/block/loop2/make-it-fail', 0o644, b'0\n') +f('sys/devices/virtual/block/loop2/size', 0o644, b'0\n') +f('sys/devices/virtual/block/loop2/dev', 0o644, b'7:2\n') +f('sys/devices/virtual/block/loop2/range', 0o644, b'1\n') +f('sys/devices/virtual/block/loop2/removable', 0o644, b'0\n') +f('sys/devices/virtual/block/loop2/stat', 0o644, b' 0 0 0 0 0 0 0 0 0 0 0\n') +f('sys/devices/virtual/block/loop2/uevent', 0o644, b'''MAJOR=7 +MINOR=2 +DEVTYPE=disk +''') +d('sys/devices/virtual/block/loop2/power', 0o755) +f('sys/devices/virtual/block/loop2/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/block/fake!blockdev0', 0o755) +l('sys/devices/virtual/block/fake!blockdev0/subsystem', '../../../../class/block') +f('sys/devices/virtual/block/fake!blockdev0/capability', 0o644, b'10\n') +f('sys/devices/virtual/block/fake!blockdev0/ro', 0o644, b'0\n') +f('sys/devices/virtual/block/fake!blockdev0/size', 0o644, b'0\n') +f('sys/devices/virtual/block/fake!blockdev0/dev', 0o644, b'711:0\n') +f('sys/devices/virtual/block/fake!blockdev0/range', 0o644, b'1\n') +f('sys/devices/virtual/block/fake!blockdev0/removable', 0o644, b'0\n') +f('sys/devices/virtual/block/fake!blockdev0/stat', 0o644, b' 0 0 0 0 0 0 0 0 0 0 0\n') +f('sys/devices/virtual/block/fake!blockdev0/uevent', 0o644, b'''MAJOR=7 +MINOR=0 +DEVTYPE=disk +DEVNAME=fake/blockdev0 +''') +d('sys/devices/virtual/block/loop4', 0o755) +l('sys/devices/virtual/block/loop4/subsystem', '../../../../class/block') +l('sys/devices/virtual/block/loop4/bdi', '../../bdi/7:4') +f('sys/devices/virtual/block/loop4/capability', 0o644, b'10\n') +f('sys/devices/virtual/block/loop4/ro', 0o644, b'0\n') +f('sys/devices/virtual/block/loop4/make-it-fail', 0o644, b'0\n') +f('sys/devices/virtual/block/loop4/size', 0o644, b'0\n') +f('sys/devices/virtual/block/loop4/dev', 0o644, b'7:4\n') +f('sys/devices/virtual/block/loop4/range', 0o644, b'1\n') +f('sys/devices/virtual/block/loop4/removable', 0o644, b'0\n') +f('sys/devices/virtual/block/loop4/stat', 0o644, b' 0 0 0 0 0 0 0 0 0 0 0\n') +f('sys/devices/virtual/block/loop4/uevent', 0o644, b'''MAJOR=7 +MINOR=4 +DEVTYPE=disk +''') +d('sys/devices/virtual/block/loop4/power', 0o755) +f('sys/devices/virtual/block/loop4/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/block/md0', 0o755) +l('sys/devices/virtual/block/md0/subsystem', '../../../../class/block') +l('sys/devices/virtual/block/md0/bdi', '../../bdi/9:0') +f('sys/devices/virtual/block/md0/capability', 0o644, b'10\n') +f('sys/devices/virtual/block/md0/ro', 0o644, b'0\n') +f('sys/devices/virtual/block/md0/make-it-fail', 0o644, b'0\n') +f('sys/devices/virtual/block/md0/size', 0o644, b'19534848\n') +f('sys/devices/virtual/block/md0/dev', 0o644, b'9:0\n') +f('sys/devices/virtual/block/md0/range', 0o644, b'1\n') +f('sys/devices/virtual/block/md0/removable', 0o644, b'0\n') +f('sys/devices/virtual/block/md0/stat', 0o644, b' 60 0 480 0 0 0 0 0 0 0 0\n') +f('sys/devices/virtual/block/md0/uevent', 0o644, b'''MAJOR=9 +MINOR=0 +DEVTYPE=disk +''') +d('sys/devices/virtual/block/md0/power', 0o755) +f('sys/devices/virtual/block/md0/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/block/md0/md', 0o755) +l('sys/devices/virtual/block/md0/md/rd1', 'dev-sda9') +f('sys/devices/virtual/block/md0/md/chunk_size', 0o644, b'0\n') +f('sys/devices/virtual/block/md0/md/sync_action', 0o644, b'idle\n') +f('sys/devices/virtual/block/md0/md/sync_speed_min', 0o644, b'1000 (system)\n') +f('sys/devices/virtual/block/md0/md/sync_force_parallel', 0o644, b'0\n') +f('sys/devices/virtual/block/md0/md/sync_min', 0o644, b'0\n') +f('sys/devices/virtual/block/md0/md/mismatch_cnt', 0o644, b'0\n') +f('sys/devices/virtual/block/md0/md/suspend_hi', 0o644, b'0\n') +f('sys/devices/virtual/block/md0/md/sync_completed', 0o644, b'0 / 19534848\n') +f('sys/devices/virtual/block/md0/md/sync_max', 0o644, b'max\n') +f('sys/devices/virtual/block/md0/md/safe_mode_delay', 0o644, b'0.201\n') +f('sys/devices/virtual/block/md0/md/degraded', 0o644, b'1\n') +f('sys/devices/virtual/block/md0/md/component_size', 0o644, b'9767424\n') +f('sys/devices/virtual/block/md0/md/suspend_lo', 0o644, b'0\n') +f('sys/devices/virtual/block/md0/md/resync_start', 0o644, b'18446744073709551615\n') +f('sys/devices/virtual/block/md0/md/sync_speed', 0o644, b'0\n') +f('sys/devices/virtual/block/md0/md/reshape_position', 0o644, b'none\n') +f('sys/devices/virtual/block/md0/md/array_state', 0o644, b'clean\n') +f('sys/devices/virtual/block/md0/md/sync_speed_max', 0o644, b'200000 (system)\n') +f('sys/devices/virtual/block/md0/md/level', 0o644, b'raid1\n') +f('sys/devices/virtual/block/md0/md/layout', 0o644, b'0\n') +f('sys/devices/virtual/block/md0/md/raid_disks', 0o644, b'2\n') +f('sys/devices/virtual/block/md0/md/metadata_version', 0o644, b'0.90\n') +d('sys/devices/virtual/block/md0/md/dev-sda9', 0o755) +l('sys/devices/virtual/block/md0/md/dev-sda9/block', '../../../../../pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda9') +f('sys/devices/virtual/block/md0/md/dev-sda9/slot', 0o644, b'1\n') +f('sys/devices/virtual/block/md0/md/dev-sda9/size', 0o644, b'23438720\n') +f('sys/devices/virtual/block/md0/md/dev-sda9/state', 0o644, b'in_sync\n') +f('sys/devices/virtual/block/md0/md/dev-sda9/errors', 0o644, b'0\n') +f('sys/devices/virtual/block/md0/md/dev-sda9/offset', 0o644, b'0\n') +d('sys/devices/virtual/block/md0/slaves', 0o755) +l('sys/devices/virtual/block/md0/slaves/sda9', '../../../../pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda9') +d('sys/devices/virtual/graphics', 0o755) +d('sys/devices/virtual/graphics/fbcon', 0o755) +l('sys/devices/virtual/graphics/fbcon/subsystem', '../../../../class/graphics') +f('sys/devices/virtual/graphics/fbcon/cursor_blink', 0o644, b'0\n') +f('sys/devices/virtual/graphics/fbcon/rotate', 0o644, b'0\n') +f('sys/devices/virtual/graphics/fbcon/uevent', 0o644, b'') +d('sys/devices/virtual/graphics/fbcon/power', 0o755) +f('sys/devices/virtual/graphics/fbcon/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/tty', 0o755) +d('sys/devices/virtual/tty/tty51', 0o755) +l('sys/devices/virtual/tty/tty51/subsystem', '../../../../class/tty') +f('sys/devices/virtual/tty/tty51/dev', 0o644, b'4:51\n') +f('sys/devices/virtual/tty/tty51/uevent', 0o644, b'''MAJOR=4 +MINOR=51 +''') +d('sys/devices/virtual/tty/tty51/power', 0o755) +f('sys/devices/virtual/tty/tty51/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/tty/tty24', 0o755) +l('sys/devices/virtual/tty/tty24/subsystem', '../../../../class/tty') +f('sys/devices/virtual/tty/tty24/dev', 0o644, b'4:24\n') +f('sys/devices/virtual/tty/tty24/uevent', 0o644, b'''MAJOR=4 +MINOR=24 +''') +d('sys/devices/virtual/tty/tty24/power', 0o755) +f('sys/devices/virtual/tty/tty24/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/tty/tty61', 0o755) +l('sys/devices/virtual/tty/tty61/subsystem', '../../../../class/tty') +f('sys/devices/virtual/tty/tty61/dev', 0o644, b'4:61\n') +f('sys/devices/virtual/tty/tty61/uevent', 0o644, b'''MAJOR=4 +MINOR=61 +''') +d('sys/devices/virtual/tty/tty61/power', 0o755) +f('sys/devices/virtual/tty/tty61/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/tty/tty40', 0o755) +l('sys/devices/virtual/tty/tty40/subsystem', '../../../../class/tty') +f('sys/devices/virtual/tty/tty40/dev', 0o644, b'4:40\n') +f('sys/devices/virtual/tty/tty40/uevent', 0o644, b'''MAJOR=4 +MINOR=40 +''') +d('sys/devices/virtual/tty/tty40/power', 0o755) +f('sys/devices/virtual/tty/tty40/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/tty/tty60', 0o755) +l('sys/devices/virtual/tty/tty60/subsystem', '../../../../class/tty') +f('sys/devices/virtual/tty/tty60/dev', 0o644, b'4:60\n') +f('sys/devices/virtual/tty/tty60/uevent', 0o644, b'''MAJOR=4 +MINOR=60 +''') +d('sys/devices/virtual/tty/tty60/power', 0o755) +f('sys/devices/virtual/tty/tty60/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/tty/tty15', 0o755) +l('sys/devices/virtual/tty/tty15/subsystem', '../../../../class/tty') +f('sys/devices/virtual/tty/tty15/dev', 0o644, b'4:15\n') +f('sys/devices/virtual/tty/tty15/uevent', 0o644, b'''MAJOR=4 +MINOR=15 +''') +d('sys/devices/virtual/tty/tty15/power', 0o755) +f('sys/devices/virtual/tty/tty15/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/tty/tty27', 0o755) +l('sys/devices/virtual/tty/tty27/subsystem', '../../../../class/tty') +f('sys/devices/virtual/tty/tty27/dev', 0o644, b'4:27\n') +f('sys/devices/virtual/tty/tty27/uevent', 0o644, b'''MAJOR=4 +MINOR=27 +''') +d('sys/devices/virtual/tty/tty27/power', 0o755) +f('sys/devices/virtual/tty/tty27/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/tty/tty7', 0o755) +l('sys/devices/virtual/tty/tty7/subsystem', '../../../../class/tty') +f('sys/devices/virtual/tty/tty7/dev', 0o644, b'4:7\n') +f('sys/devices/virtual/tty/tty7/uevent', 0o644, b'''MAJOR=4 +MINOR=7 +''') +d('sys/devices/virtual/tty/tty7/power', 0o755) +f('sys/devices/virtual/tty/tty7/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/tty/tty43', 0o755) +l('sys/devices/virtual/tty/tty43/subsystem', '../../../../class/tty') +f('sys/devices/virtual/tty/tty43/dev', 0o644, b'4:43\n') +f('sys/devices/virtual/tty/tty43/uevent', 0o644, b'''MAJOR=4 +MINOR=43 +''') +d('sys/devices/virtual/tty/tty43/power', 0o755) +f('sys/devices/virtual/tty/tty43/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/tty/tty23', 0o755) +l('sys/devices/virtual/tty/tty23/subsystem', '../../../../class/tty') +f('sys/devices/virtual/tty/tty23/dev', 0o644, b'4:23\n') +f('sys/devices/virtual/tty/tty23/uevent', 0o644, b'''MAJOR=4 +MINOR=23 +''') +d('sys/devices/virtual/tty/tty23/power', 0o755) +f('sys/devices/virtual/tty/tty23/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/tty/tty14', 0o755) +l('sys/devices/virtual/tty/tty14/subsystem', '../../../../class/tty') +f('sys/devices/virtual/tty/tty14/dev', 0o644, b'4:14\n') +f('sys/devices/virtual/tty/tty14/uevent', 0o644, b'''MAJOR=4 +MINOR=14 +''') +d('sys/devices/virtual/tty/tty14/power', 0o755) +f('sys/devices/virtual/tty/tty14/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/tty/tty56', 0o755) +l('sys/devices/virtual/tty/tty56/subsystem', '../../../../class/tty') +f('sys/devices/virtual/tty/tty56/dev', 0o644, b'4:56\n') +f('sys/devices/virtual/tty/tty56/uevent', 0o644, b'''MAJOR=4 +MINOR=56 +''') +d('sys/devices/virtual/tty/tty56/power', 0o755) +f('sys/devices/virtual/tty/tty56/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/tty/tty3', 0o755) +l('sys/devices/virtual/tty/tty3/subsystem', '../../../../class/tty') +f('sys/devices/virtual/tty/tty3/dev', 0o644, b'4:3\n') +f('sys/devices/virtual/tty/tty3/uevent', 0o644, b'''MAJOR=4 +MINOR=3 +''') +d('sys/devices/virtual/tty/tty3/power', 0o755) +f('sys/devices/virtual/tty/tty3/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/tty/tty49', 0o755) +l('sys/devices/virtual/tty/tty49/subsystem', '../../../../class/tty') +f('sys/devices/virtual/tty/tty49/dev', 0o644, b'4:49\n') +f('sys/devices/virtual/tty/tty49/uevent', 0o644, b'''MAJOR=4 +MINOR=49 +''') +d('sys/devices/virtual/tty/tty49/power', 0o755) +f('sys/devices/virtual/tty/tty49/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/tty/tty47', 0o755) +l('sys/devices/virtual/tty/tty47/subsystem', '../../../../class/tty') +f('sys/devices/virtual/tty/tty47/dev', 0o644, b'4:47\n') +f('sys/devices/virtual/tty/tty47/uevent', 0o644, b'''MAJOR=4 +MINOR=47 +''') +d('sys/devices/virtual/tty/tty47/power', 0o755) +f('sys/devices/virtual/tty/tty47/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/tty/tty57', 0o755) +l('sys/devices/virtual/tty/tty57/subsystem', '../../../../class/tty') +f('sys/devices/virtual/tty/tty57/dev', 0o644, b'4:57\n') +f('sys/devices/virtual/tty/tty57/uevent', 0o644, b'''MAJOR=4 +MINOR=57 +''') +d('sys/devices/virtual/tty/tty57/power', 0o755) +f('sys/devices/virtual/tty/tty57/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/tty/tty30', 0o755) +l('sys/devices/virtual/tty/tty30/subsystem', '../../../../class/tty') +f('sys/devices/virtual/tty/tty30/dev', 0o644, b'4:30\n') +f('sys/devices/virtual/tty/tty30/uevent', 0o644, b'''MAJOR=4 +MINOR=30 +''') +d('sys/devices/virtual/tty/tty30/power', 0o755) +f('sys/devices/virtual/tty/tty30/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/tty/tty45', 0o755) +l('sys/devices/virtual/tty/tty45/subsystem', '../../../../class/tty') +f('sys/devices/virtual/tty/tty45/dev', 0o644, b'4:45\n') +f('sys/devices/virtual/tty/tty45/uevent', 0o644, b'''MAJOR=4 +MINOR=45 +''') +d('sys/devices/virtual/tty/tty45/power', 0o755) +f('sys/devices/virtual/tty/tty45/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/tty/tty22', 0o755) +l('sys/devices/virtual/tty/tty22/subsystem', '../../../../class/tty') +f('sys/devices/virtual/tty/tty22/dev', 0o644, b'4:22\n') +f('sys/devices/virtual/tty/tty22/uevent', 0o644, b'''MAJOR=4 +MINOR=22 +''') +d('sys/devices/virtual/tty/tty22/power', 0o755) +f('sys/devices/virtual/tty/tty22/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/tty/tty55', 0o755) +l('sys/devices/virtual/tty/tty55/subsystem', '../../../../class/tty') +f('sys/devices/virtual/tty/tty55/dev', 0o644, b'4:55\n') +f('sys/devices/virtual/tty/tty55/uevent', 0o644, b'''MAJOR=4 +MINOR=55 +''') +d('sys/devices/virtual/tty/tty55/power', 0o755) +f('sys/devices/virtual/tty/tty55/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/tty/tty11', 0o755) +l('sys/devices/virtual/tty/tty11/subsystem', '../../../../class/tty') +f('sys/devices/virtual/tty/tty11/dev', 0o644, b'4:11\n') +f('sys/devices/virtual/tty/tty11/uevent', 0o644, b'''MAJOR=4 +MINOR=11 +''') +d('sys/devices/virtual/tty/tty11/power', 0o755) +f('sys/devices/virtual/tty/tty11/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/tty/tty53', 0o755) +l('sys/devices/virtual/tty/tty53/subsystem', '../../../../class/tty') +f('sys/devices/virtual/tty/tty53/dev', 0o644, b'4:53\n') +f('sys/devices/virtual/tty/tty53/uevent', 0o644, b'''MAJOR=4 +MINOR=53 +''') +d('sys/devices/virtual/tty/tty53/power', 0o755) +f('sys/devices/virtual/tty/tty53/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/tty/tty12', 0o755) +l('sys/devices/virtual/tty/tty12/subsystem', '../../../../class/tty') +f('sys/devices/virtual/tty/tty12/dev', 0o644, b'4:12\n') +f('sys/devices/virtual/tty/tty12/uevent', 0o644, b'''MAJOR=4 +MINOR=12 +''') +d('sys/devices/virtual/tty/tty12/power', 0o755) +f('sys/devices/virtual/tty/tty12/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/tty/tty28', 0o755) +l('sys/devices/virtual/tty/tty28/subsystem', '../../../../class/tty') +f('sys/devices/virtual/tty/tty28/dev', 0o644, b'4:28\n') +f('sys/devices/virtual/tty/tty28/uevent', 0o644, b'''MAJOR=4 +MINOR=28 +''') +d('sys/devices/virtual/tty/tty28/power', 0o755) +f('sys/devices/virtual/tty/tty28/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/tty/tty58', 0o755) +l('sys/devices/virtual/tty/tty58/subsystem', '../../../../class/tty') +f('sys/devices/virtual/tty/tty58/dev', 0o644, b'4:58\n') +f('sys/devices/virtual/tty/tty58/uevent', 0o644, b'''MAJOR=4 +MINOR=58 +''') +d('sys/devices/virtual/tty/tty58/power', 0o755) +f('sys/devices/virtual/tty/tty58/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/tty/tty32', 0o755) +l('sys/devices/virtual/tty/tty32/subsystem', '../../../../class/tty') +f('sys/devices/virtual/tty/tty32/dev', 0o644, b'4:32\n') +f('sys/devices/virtual/tty/tty32/uevent', 0o644, b'''MAJOR=4 +MINOR=32 +''') +d('sys/devices/virtual/tty/tty32/power', 0o755) +f('sys/devices/virtual/tty/tty32/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/tty/tty44', 0o755) +l('sys/devices/virtual/tty/tty44/subsystem', '../../../../class/tty') +f('sys/devices/virtual/tty/tty44/dev', 0o644, b'4:44\n') +f('sys/devices/virtual/tty/tty44/uevent', 0o644, b'''MAJOR=4 +MINOR=44 +''') +d('sys/devices/virtual/tty/tty44/power', 0o755) +f('sys/devices/virtual/tty/tty44/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/tty/tty6', 0o755) +l('sys/devices/virtual/tty/tty6/subsystem', '../../../../class/tty') +f('sys/devices/virtual/tty/tty6/dev', 0o644, b'4:6\n') +f('sys/devices/virtual/tty/tty6/uevent', 0o644, b'''MAJOR=4 +MINOR=6 +''') +d('sys/devices/virtual/tty/tty6/power', 0o755) +f('sys/devices/virtual/tty/tty6/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/tty/tty9', 0o755) +l('sys/devices/virtual/tty/tty9/subsystem', '../../../../class/tty') +f('sys/devices/virtual/tty/tty9/dev', 0o644, b'4:9\n') +f('sys/devices/virtual/tty/tty9/uevent', 0o644, b'''MAJOR=4 +MINOR=9 +''') +d('sys/devices/virtual/tty/tty9/power', 0o755) +f('sys/devices/virtual/tty/tty9/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/tty/tty26', 0o755) +l('sys/devices/virtual/tty/tty26/subsystem', '../../../../class/tty') +f('sys/devices/virtual/tty/tty26/dev', 0o644, b'4:26\n') +f('sys/devices/virtual/tty/tty26/uevent', 0o644, b'''MAJOR=4 +MINOR=26 +''') +d('sys/devices/virtual/tty/tty26/power', 0o755) +f('sys/devices/virtual/tty/tty26/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/tty/tty10', 0o755) +l('sys/devices/virtual/tty/tty10/subsystem', '../../../../class/tty') +f('sys/devices/virtual/tty/tty10/dev', 0o644, b'4:10\n') +f('sys/devices/virtual/tty/tty10/uevent', 0o644, b'''MAJOR=4 +MINOR=10 +''') +d('sys/devices/virtual/tty/tty10/power', 0o755) +f('sys/devices/virtual/tty/tty10/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/tty/tty39', 0o755) +l('sys/devices/virtual/tty/tty39/subsystem', '../../../../class/tty') +f('sys/devices/virtual/tty/tty39/dev', 0o644, b'4:39\n') +f('sys/devices/virtual/tty/tty39/uevent', 0o644, b'''MAJOR=4 +MINOR=39 +''') +d('sys/devices/virtual/tty/tty39/power', 0o755) +f('sys/devices/virtual/tty/tty39/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/tty/tty0', 0o755) +l('sys/devices/virtual/tty/tty0/subsystem', '../../../../class/tty') +f('sys/devices/virtual/tty/tty0/dev', 0o644, b'4:0\n') +f('sys/devices/virtual/tty/tty0/uevent', 0o644, b'''MAJOR=4 +MINOR=0 +DEVNAME=tty0 +''') +d('sys/devices/virtual/tty/tty0/power', 0o755) +f('sys/devices/virtual/tty/tty0/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/tty/tty36', 0o755) +l('sys/devices/virtual/tty/tty36/subsystem', '../../../../class/tty') +f('sys/devices/virtual/tty/tty36/dev', 0o644, b'4:36\n') +f('sys/devices/virtual/tty/tty36/uevent', 0o644, b'''MAJOR=4 +MINOR=36 +''') +d('sys/devices/virtual/tty/tty36/power', 0o755) +f('sys/devices/virtual/tty/tty36/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/tty/tty34', 0o755) +l('sys/devices/virtual/tty/tty34/subsystem', '../../../../class/tty') +f('sys/devices/virtual/tty/tty34/dev', 0o644, b'4:34\n') +f('sys/devices/virtual/tty/tty34/uevent', 0o644, b'''MAJOR=4 +MINOR=34 +''') +d('sys/devices/virtual/tty/tty34/power', 0o755) +f('sys/devices/virtual/tty/tty34/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/tty/tty16', 0o755) +l('sys/devices/virtual/tty/tty16/subsystem', '../../../../class/tty') +f('sys/devices/virtual/tty/tty16/dev', 0o644, b'4:16\n') +f('sys/devices/virtual/tty/tty16/uevent', 0o644, b'''MAJOR=4 +MINOR=16 +''') +d('sys/devices/virtual/tty/tty16/power', 0o755) +f('sys/devices/virtual/tty/tty16/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/tty/tty25', 0o755) +l('sys/devices/virtual/tty/tty25/subsystem', '../../../../class/tty') +f('sys/devices/virtual/tty/tty25/dev', 0o644, b'4:25\n') +f('sys/devices/virtual/tty/tty25/uevent', 0o644, b'''MAJOR=4 +MINOR=25 +''') +d('sys/devices/virtual/tty/tty25/power', 0o755) +f('sys/devices/virtual/tty/tty25/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/tty/tty13', 0o755) +l('sys/devices/virtual/tty/tty13/subsystem', '../../../../class/tty') +f('sys/devices/virtual/tty/tty13/dev', 0o644, b'4:13\n') +f('sys/devices/virtual/tty/tty13/uevent', 0o644, b'''MAJOR=4 +MINOR=13 +''') +d('sys/devices/virtual/tty/tty13/power', 0o755) +f('sys/devices/virtual/tty/tty13/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/tty/tty52', 0o755) +l('sys/devices/virtual/tty/tty52/subsystem', '../../../../class/tty') +f('sys/devices/virtual/tty/tty52/dev', 0o644, b'4:52\n') +f('sys/devices/virtual/tty/tty52/uevent', 0o644, b'''MAJOR=4 +MINOR=52 +''') +d('sys/devices/virtual/tty/tty52/power', 0o755) +f('sys/devices/virtual/tty/tty52/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/tty/tty31', 0o755) +l('sys/devices/virtual/tty/tty31/subsystem', '../../../../class/tty') +f('sys/devices/virtual/tty/tty31/dev', 0o644, b'4:31\n') +f('sys/devices/virtual/tty/tty31/uevent', 0o644, b'''MAJOR=4 +MINOR=31 +''') +d('sys/devices/virtual/tty/tty31/power', 0o755) +f('sys/devices/virtual/tty/tty31/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/tty/tty35', 0o755) +l('sys/devices/virtual/tty/tty35/subsystem', '../../../../class/tty') +f('sys/devices/virtual/tty/tty35/dev', 0o644, b'4:35\n') +f('sys/devices/virtual/tty/tty35/uevent', 0o644, b'''MAJOR=4 +MINOR=35 +''') +d('sys/devices/virtual/tty/tty35/power', 0o755) +f('sys/devices/virtual/tty/tty35/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/tty/tty54', 0o755) +l('sys/devices/virtual/tty/tty54/subsystem', '../../../../class/tty') +f('sys/devices/virtual/tty/tty54/dev', 0o644, b'4:54\n') +f('sys/devices/virtual/tty/tty54/uevent', 0o644, b'''MAJOR=4 +MINOR=54 +''') +d('sys/devices/virtual/tty/tty54/power', 0o755) +f('sys/devices/virtual/tty/tty54/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/tty/tty63', 0o755) +l('sys/devices/virtual/tty/tty63/subsystem', '../../../../class/tty') +f('sys/devices/virtual/tty/tty63/dev', 0o644, b'4:63\n') +f('sys/devices/virtual/tty/tty63/uevent', 0o644, b'''MAJOR=4 +MINOR=63 +''') +d('sys/devices/virtual/tty/tty63/power', 0o755) +f('sys/devices/virtual/tty/tty63/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/tty/tty1', 0o755) +l('sys/devices/virtual/tty/tty1/subsystem', '../../../../class/tty') +f('sys/devices/virtual/tty/tty1/dev', 0o644, b'4:1\n') +f('sys/devices/virtual/tty/tty1/uevent', 0o644, b'''MAJOR=4 +MINOR=1 +''') +d('sys/devices/virtual/tty/tty1/power', 0o755) +f('sys/devices/virtual/tty/tty1/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/tty/tty33', 0o755) +l('sys/devices/virtual/tty/tty33/subsystem', '../../../../class/tty') +f('sys/devices/virtual/tty/tty33/dev', 0o644, b'4:33\n') +f('sys/devices/virtual/tty/tty33/uevent', 0o644, b'''MAJOR=4 +MINOR=33 +DEVNAME=tty33 +''') +d('sys/devices/virtual/tty/tty33/power', 0o755) +f('sys/devices/virtual/tty/tty33/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/tty/tty18', 0o755) +l('sys/devices/virtual/tty/tty18/subsystem', '../../../../class/tty') +f('sys/devices/virtual/tty/tty18/dev', 0o644, b'4:18\n') +f('sys/devices/virtual/tty/tty18/uevent', 0o644, b'''MAJOR=4 +MINOR=18 +''') +d('sys/devices/virtual/tty/tty18/power', 0o755) +f('sys/devices/virtual/tty/tty18/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/tty/tty42', 0o755) +l('sys/devices/virtual/tty/tty42/subsystem', '../../../../class/tty') +f('sys/devices/virtual/tty/tty42/dev', 0o644, b'4:42\n') +f('sys/devices/virtual/tty/tty42/uevent', 0o644, b'''MAJOR=4 +MINOR=42 +''') +d('sys/devices/virtual/tty/tty42/power', 0o755) +f('sys/devices/virtual/tty/tty42/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/tty/tty8', 0o755) +l('sys/devices/virtual/tty/tty8/subsystem', '../../../../class/tty') +f('sys/devices/virtual/tty/tty8/dev', 0o644, b'4:8\n') +f('sys/devices/virtual/tty/tty8/uevent', 0o644, b'''MAJOR=4 +MINOR=8 +''') +d('sys/devices/virtual/tty/tty8/power', 0o755) +f('sys/devices/virtual/tty/tty8/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/tty/tty37', 0o755) +l('sys/devices/virtual/tty/tty37/subsystem', '../../../../class/tty') +f('sys/devices/virtual/tty/tty37/dev', 0o644, b'4:37\n') +f('sys/devices/virtual/tty/tty37/uevent', 0o644, b'''MAJOR=4 +MINOR=37 +''') +d('sys/devices/virtual/tty/tty37/power', 0o755) +f('sys/devices/virtual/tty/tty37/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/tty/tty5', 0o755) +l('sys/devices/virtual/tty/tty5/subsystem', '../../../../class/tty') +f('sys/devices/virtual/tty/tty5/dev', 0o644, b'4:5\n') +f('sys/devices/virtual/tty/tty5/uevent', 0o644, b'''MAJOR=4 +MINOR=5 +''') +d('sys/devices/virtual/tty/tty5/power', 0o755) +f('sys/devices/virtual/tty/tty5/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/tty/tty48', 0o755) +l('sys/devices/virtual/tty/tty48/subsystem', '../../../../class/tty') +f('sys/devices/virtual/tty/tty48/dev', 0o644, b'4:48\n') +f('sys/devices/virtual/tty/tty48/uevent', 0o644, b'''MAJOR=4 +MINOR=48 +''') +d('sys/devices/virtual/tty/tty48/power', 0o755) +f('sys/devices/virtual/tty/tty48/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/tty/tty17', 0o755) +l('sys/devices/virtual/tty/tty17/subsystem', '../../../../class/tty') +f('sys/devices/virtual/tty/tty17/dev', 0o644, b'4:17\n') +f('sys/devices/virtual/tty/tty17/uevent', 0o644, b'''MAJOR=4 +MINOR=17 +''') +d('sys/devices/virtual/tty/tty17/power', 0o755) +f('sys/devices/virtual/tty/tty17/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/tty/tty62', 0o755) +l('sys/devices/virtual/tty/tty62/subsystem', '../../../../class/tty') +f('sys/devices/virtual/tty/tty62/dev', 0o644, b'4:62\n') +f('sys/devices/virtual/tty/tty62/uevent', 0o644, b'''MAJOR=4 +MINOR=62 +''') +d('sys/devices/virtual/tty/tty62/power', 0o755) +f('sys/devices/virtual/tty/tty62/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/tty/tty59', 0o755) +l('sys/devices/virtual/tty/tty59/subsystem', '../../../../class/tty') +f('sys/devices/virtual/tty/tty59/dev', 0o644, b'4:59\n') +f('sys/devices/virtual/tty/tty59/uevent', 0o644, b'''MAJOR=4 +MINOR=59 +''') +d('sys/devices/virtual/tty/tty59/power', 0o755) +f('sys/devices/virtual/tty/tty59/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/tty/tty50', 0o755) +l('sys/devices/virtual/tty/tty50/subsystem', '../../../../class/tty') +f('sys/devices/virtual/tty/tty50/dev', 0o644, b'4:50\n') +f('sys/devices/virtual/tty/tty50/uevent', 0o644, b'''MAJOR=4 +MINOR=50 +''') +d('sys/devices/virtual/tty/tty50/power', 0o755) +f('sys/devices/virtual/tty/tty50/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/tty/tty21', 0o755) +l('sys/devices/virtual/tty/tty21/subsystem', '../../../../class/tty') +f('sys/devices/virtual/tty/tty21/dev', 0o644, b'4:21\n') +f('sys/devices/virtual/tty/tty21/uevent', 0o644, b'''MAJOR=4 +MINOR=21 +''') +d('sys/devices/virtual/tty/tty21/power', 0o755) +f('sys/devices/virtual/tty/tty21/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/tty/tty19', 0o755) +l('sys/devices/virtual/tty/tty19/subsystem', '../../../../class/tty') +f('sys/devices/virtual/tty/tty19/dev', 0o644, b'4:19\n') +f('sys/devices/virtual/tty/tty19/uevent', 0o644, b'''MAJOR=4 +MINOR=19 +''') +d('sys/devices/virtual/tty/tty19/power', 0o755) +f('sys/devices/virtual/tty/tty19/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/tty/ptmx', 0o755) +l('sys/devices/virtual/tty/ptmx/subsystem', '../../../../class/tty') +f('sys/devices/virtual/tty/ptmx/dev', 0o644, b'5:2\n') +f('sys/devices/virtual/tty/ptmx/uevent', 0o644, b'''MAJOR=5 +MINOR=2 +''') +d('sys/devices/virtual/tty/ptmx/power', 0o755) +f('sys/devices/virtual/tty/ptmx/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/tty/tty46', 0o755) +l('sys/devices/virtual/tty/tty46/subsystem', '../../../../class/tty') +f('sys/devices/virtual/tty/tty46/dev', 0o644, b'4:46\n') +f('sys/devices/virtual/tty/tty46/uevent', 0o644, b'''MAJOR=4 +MINOR=46 +''') +d('sys/devices/virtual/tty/tty46/power', 0o755) +f('sys/devices/virtual/tty/tty46/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/tty/tty2', 0o755) +l('sys/devices/virtual/tty/tty2/subsystem', '../../../../class/tty') +f('sys/devices/virtual/tty/tty2/dev', 0o644, b'4:2\n') +f('sys/devices/virtual/tty/tty2/uevent', 0o644, b'''MAJOR=4 +MINOR=2 +''') +d('sys/devices/virtual/tty/tty2/power', 0o755) +f('sys/devices/virtual/tty/tty2/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/tty/console', 0o755) +l('sys/devices/virtual/tty/console/subsystem', '../../../../class/tty') +f('sys/devices/virtual/tty/console/dev', 0o644, b'5:1\n') +f('sys/devices/virtual/tty/console/uevent', 0o644, b'''MAJOR=5 +MINOR=1 +DEVNAME=console +''') +d('sys/devices/virtual/tty/console/power', 0o755) +f('sys/devices/virtual/tty/console/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/tty/tty41', 0o755) +l('sys/devices/virtual/tty/tty41/subsystem', '../../../../class/tty') +f('sys/devices/virtual/tty/tty41/dev', 0o644, b'4:41\n') +f('sys/devices/virtual/tty/tty41/uevent', 0o644, b'''MAJOR=4 +MINOR=41 +''') +d('sys/devices/virtual/tty/tty41/power', 0o755) +f('sys/devices/virtual/tty/tty41/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/tty/tty4', 0o755) +l('sys/devices/virtual/tty/tty4/subsystem', '../../../../class/tty') +f('sys/devices/virtual/tty/tty4/dev', 0o644, b'4:4\n') +f('sys/devices/virtual/tty/tty4/uevent', 0o644, b'''MAJOR=4 +MINOR=4 +''') +d('sys/devices/virtual/tty/tty4/power', 0o755) +f('sys/devices/virtual/tty/tty4/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/tty/tty29', 0o755) +l('sys/devices/virtual/tty/tty29/subsystem', '../../../../class/tty') +f('sys/devices/virtual/tty/tty29/dev', 0o644, b'4:29\n') +f('sys/devices/virtual/tty/tty29/uevent', 0o644, b'''MAJOR=4 +MINOR=29 +''') +d('sys/devices/virtual/tty/tty29/power', 0o755) +f('sys/devices/virtual/tty/tty29/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/tty/tty', 0o755) +l('sys/devices/virtual/tty/tty/subsystem', '../../../../class/tty') +f('sys/devices/virtual/tty/tty/dev', 0o644, b'5:0\n') +f('sys/devices/virtual/tty/tty/uevent', 0o644, b'''MAJOR=5 +MINOR=0 +''') +d('sys/devices/virtual/tty/tty/power', 0o755) +f('sys/devices/virtual/tty/tty/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/tty/tty38', 0o755) +l('sys/devices/virtual/tty/tty38/subsystem', '../../../../class/tty') +f('sys/devices/virtual/tty/tty38/dev', 0o644, b'4:38\n') +f('sys/devices/virtual/tty/tty38/uevent', 0o644, b'''MAJOR=4 +MINOR=38 +''') +d('sys/devices/virtual/tty/tty38/power', 0o755) +f('sys/devices/virtual/tty/tty38/power/wakeup', 0o644, b'\n') +d('sys/devices/virtual/tty/tty20', 0o755) +l('sys/devices/virtual/tty/tty20/subsystem', '../../../../class/tty') +f('sys/devices/virtual/tty/tty20/dev', 0o644, b'4:20\n') +f('sys/devices/virtual/tty/tty20/uevent', 0o644, b'''MAJOR=4 +MINOR=20 +''') +d('sys/devices/virtual/tty/tty20/power', 0o755) +f('sys/devices/virtual/tty/tty20/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00', 0o755) +l('sys/devices/LNXSYSTM:00/subsystem', '../../bus/acpi') +f('sys/devices/LNXSYSTM:00/hid', 0o644, b'LNXSYSTM\n') +f('sys/devices/LNXSYSTM:00/modalias', 0o644, b'acpi:LNXSYSTM:\n') +f('sys/devices/LNXSYSTM:00/path', 0o644, b'\\\n') +f('sys/devices/LNXSYSTM:00/uevent', 0o644, b'MODALIAS=acpi:LNXSYSTM:\n') +d('sys/devices/LNXSYSTM:00/power', 0o755) +f('sys/devices/LNXSYSTM:00/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/ACPI0007:01', 0o755) +l('sys/devices/LNXSYSTM:00/ACPI0007:01/thermal_cooling', '../../virtual/thermal/cooling_device1') +l('sys/devices/LNXSYSTM:00/ACPI0007:01/subsystem', '../../../bus/acpi') +l('sys/devices/LNXSYSTM:00/ACPI0007:01/sysdev', '../../system/cpu/cpu1') +l('sys/devices/LNXSYSTM:00/ACPI0007:01/driver', '../../../bus/acpi/drivers/processor') +f('sys/devices/LNXSYSTM:00/ACPI0007:01/hid', 0o644, b'ACPI0007\n') +f('sys/devices/LNXSYSTM:00/ACPI0007:01/modalias', 0o644, b'acpi:ACPI0007:\n') +f('sys/devices/LNXSYSTM:00/ACPI0007:01/path', 0o644, b'\\_PR_.CPU1\n') +f('sys/devices/LNXSYSTM:00/ACPI0007:01/uevent', 0o644, b'''DRIVER=processor +MODALIAS=acpi:ACPI0007: +''') +d('sys/devices/LNXSYSTM:00/ACPI0007:01/power', 0o755) +f('sys/devices/LNXSYSTM:00/ACPI0007:01/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/LNXTHERM:00', 0o755) +l('sys/devices/LNXSYSTM:00/LNXTHERM:00/subsystem', '../../../bus/acpi') +f('sys/devices/LNXSYSTM:00/LNXTHERM:00/hid', 0o644, b'LNXTHERM\n') +f('sys/devices/LNXSYSTM:00/LNXTHERM:00/modalias', 0o644, b'acpi:LNXTHERM:\n') +f('sys/devices/LNXSYSTM:00/LNXTHERM:00/path', 0o644, b'\\_TZ_\n') +f('sys/devices/LNXSYSTM:00/LNXTHERM:00/uevent', 0o644, b'MODALIAS=acpi:LNXTHERM:\n') +d('sys/devices/LNXSYSTM:00/LNXTHERM:00/LNXTHERM:01', 0o755) +l('sys/devices/LNXSYSTM:00/LNXTHERM:00/LNXTHERM:01/subsystem', '../../../../bus/acpi') +l('sys/devices/LNXSYSTM:00/LNXTHERM:00/LNXTHERM:01/thermal_zone', '../../../virtual/thermal/thermal_zone0') +l('sys/devices/LNXSYSTM:00/LNXTHERM:00/LNXTHERM:01/driver', '../../../../bus/acpi/drivers/thermal') +f('sys/devices/LNXSYSTM:00/LNXTHERM:00/LNXTHERM:01/hid', 0o644, b'LNXTHERM\n') +f('sys/devices/LNXSYSTM:00/LNXTHERM:00/LNXTHERM:01/modalias', 0o644, b'acpi:LNXTHERM:\n') +f('sys/devices/LNXSYSTM:00/LNXTHERM:00/LNXTHERM:01/path', 0o644, b'\\_TZ_.THM0\n') +f('sys/devices/LNXSYSTM:00/LNXTHERM:00/LNXTHERM:01/uevent', 0o644, b'''DRIVER=thermal +MODALIAS=acpi:LNXTHERM: +''') +d('sys/devices/LNXSYSTM:00/LNXTHERM:00/LNXTHERM:01/power', 0o755) +f('sys/devices/LNXSYSTM:00/LNXTHERM:00/LNXTHERM:01/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/LNXTHERM:00/power', 0o755) +f('sys/devices/LNXSYSTM:00/LNXTHERM:00/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/LNXTHERM:00/LNXTHERM:02', 0o755) +l('sys/devices/LNXSYSTM:00/LNXTHERM:00/LNXTHERM:02/subsystem', '../../../../bus/acpi') +l('sys/devices/LNXSYSTM:00/LNXTHERM:00/LNXTHERM:02/thermal_zone', '../../../virtual/thermal/thermal_zone1') +l('sys/devices/LNXSYSTM:00/LNXTHERM:00/LNXTHERM:02/driver', '../../../../bus/acpi/drivers/thermal') +f('sys/devices/LNXSYSTM:00/LNXTHERM:00/LNXTHERM:02/hid', 0o644, b'LNXTHERM\n') +f('sys/devices/LNXSYSTM:00/LNXTHERM:00/LNXTHERM:02/modalias', 0o644, b'acpi:LNXTHERM:\n') +f('sys/devices/LNXSYSTM:00/LNXTHERM:00/LNXTHERM:02/path', 0o644, b'\\_TZ_.THM1\n') +f('sys/devices/LNXSYSTM:00/LNXTHERM:00/LNXTHERM:02/uevent', 0o644, b'''DRIVER=thermal +MODALIAS=acpi:LNXTHERM: +''') +d('sys/devices/LNXSYSTM:00/LNXTHERM:00/LNXTHERM:02/power', 0o755) +f('sys/devices/LNXSYSTM:00/LNXTHERM:00/LNXTHERM:02/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/device:00', 0o755) +l('sys/devices/LNXSYSTM:00/device:00/subsystem', '../../../bus/acpi') +f('sys/devices/LNXSYSTM:00/device:00/path', 0o644, b'\\_SB_\n') +f('sys/devices/LNXSYSTM:00/device:00/uevent', 0o644, b'') +d('sys/devices/LNXSYSTM:00/device:00/PNP0C0F:05', 0o755) +l('sys/devices/LNXSYSTM:00/device:00/PNP0C0F:05/subsystem', '../../../../bus/acpi') +l('sys/devices/LNXSYSTM:00/device:00/PNP0C0F:05/driver', '../../../../bus/acpi/drivers/pci_link') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0F:05/hid', 0o644, b'PNP0C0F\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0F:05/modalias', 0o644, b'acpi:PNP0C0F:\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0F:05/path', 0o644, b'\\_SB_.LNKF\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0F:05/uevent', 0o644, b'''DRIVER=pci_link +MODALIAS=acpi:PNP0C0F: +''') +d('sys/devices/LNXSYSTM:00/device:00/PNP0C0F:05/power', 0o755) +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0F:05/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/device:00/power', 0o755) +f('sys/devices/LNXSYSTM:00/device:00/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0C0E:00', 0o755) +l('sys/devices/LNXSYSTM:00/device:00/PNP0C0E:00/subsystem', '../../../../bus/acpi') +l('sys/devices/LNXSYSTM:00/device:00/PNP0C0E:00/driver', '../../../../bus/acpi/drivers/button') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0E:00/hid', 0o644, b'PNP0C0E\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0E:00/modalias', 0o644, b'acpi:PNP0C0E:\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0E:00/path', 0o644, b'\\_SB_.SLPB\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0E:00/uevent', 0o644, b'''DRIVER=button +MODALIAS=acpi:PNP0C0E: +''') +d('sys/devices/LNXSYSTM:00/device:00/PNP0C0E:00/power', 0o755) +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0E:00/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0C0E:00/input', 0o755) +d('sys/devices/LNXSYSTM:00/device:00/PNP0C0E:00/input/input5', 0o755) +l('sys/devices/LNXSYSTM:00/device:00/PNP0C0E:00/input/input5/subsystem', '../../../../../../class/input') +l('sys/devices/LNXSYSTM:00/device:00/PNP0C0E:00/input/input5/device', '../../../PNP0C0E:00') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0E:00/input/input5/uniq', 0o644, b'\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0E:00/input/input5/phys', 0o644, b'PNP0C0E/button/input0\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0E:00/input/input5/modalias', 0o644, b'input:b0019v0000p0003e0000-e0,1,k8E,ramlsfw\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0E:00/input/input5/name', 0o644, b'Sleep Button (CM)\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0E:00/input/input5/uevent', 0o644, b'''PRODUCT=19/0/3/0 +NAME="Sleep Button (CM)" +PHYS="PNP0C0E/button/input0" +EV==3 +KEY==4000 0 0 +MODALIAS=input:b0019v0000p0003e0000-e0,1,k8E,ramlsfw +''') +d('sys/devices/LNXSYSTM:00/device:00/PNP0C0E:00/input/input5/id', 0o755) +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0E:00/input/input5/id/version', 0o644, b'0000\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0E:00/input/input5/id/product', 0o644, b'0003\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0E:00/input/input5/id/vendor', 0o644, b'0000\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0E:00/input/input5/id/bustype', 0o644, b'0019\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0C0E:00/input/input5/power', 0o755) +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0E:00/input/input5/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0C0E:00/input/input5/event5', 0o755) +l('sys/devices/LNXSYSTM:00/device:00/PNP0C0E:00/input/input5/event5/subsystem', '../../../../../../../class/input') +l('sys/devices/LNXSYSTM:00/device:00/PNP0C0E:00/input/input5/event5/device', '../../input5') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0E:00/input/input5/event5/dev', 0o644, b'13:69\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0E:00/input/input5/event5/uevent', 0o644, b'''MAJOR=13 +MINOR=69 +''') +d('sys/devices/LNXSYSTM:00/device:00/PNP0C0E:00/input/input5/event5/power', 0o755) +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0E:00/input/input5/event5/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0C0E:00/input/input5/capabilities', 0o755) +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0E:00/input/input5/capabilities/msc', 0o644, b'0\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0E:00/input/input5/capabilities/abs', 0o644, b'0\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0E:00/input/input5/capabilities/snd', 0o644, b'0\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0E:00/input/input5/capabilities/ff', 0o644, b'0\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0E:00/input/input5/capabilities/key', 0o644, b'4000 0 0\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0E:00/input/input5/capabilities/rel', 0o644, b'0\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0E:00/input/input5/capabilities/sw', 0o644, b'0\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0E:00/input/input5/capabilities/ev', 0o644, b'3\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0E:00/input/input5/capabilities/led', 0o644, b'0\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00', 0o755) +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/subsystem', '../../../../bus/acpi') +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/physical_node', '../../../pci0000:00') +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/driver', '../../../../bus/acpi/drivers/pci_root') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/hid', 0o644, b'PNP0A08\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/modalias', 0o644, b'acpi:PNP0A08:PNP0A03:\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/path', 0o644, b'\\_SB_.PCI0\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/uevent', 0o644, b'''DRIVER=pci_root +MODALIAS=acpi:PNP0A08:PNP0A03: +''') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:11', 0o755) +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:11/subsystem', '../../../../../bus/acpi') +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:11/physical_node', '../../../../pci0000:00/0000:00:1e.0') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:11/path', 0o644, b'\\_SB_.PCI0.PCI1\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:11/uevent', 0o644, b'') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:11/power', 0o755) +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:11/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:11/device:12', 0o755) +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:11/device:12/subsystem', '../../../../../../bus/acpi') +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:11/device:12/physical_node', '../../../../../pci0000:00/0000:00:1e.0/0000:15:00.0') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:11/device:12/path', 0o644, b'\\_SB_.PCI0.PCI1.CDBS\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:11/device:12/uevent', 0o644, b'') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:11/device:12/power', 0o755) +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:11/device:12/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:21', 0o755) +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:21/subsystem', '../../../../../bus/acpi') +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:21/physical_node', '../../../../pci0000:00/0000:00:1d.7') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:21/path', 0o644, b'\\_SB_.PCI0.USB7\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:21/uevent', 0o644, b'') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:21/power', 0o755) +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:21/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:21/device:22', 0o755) +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:21/device:22/subsystem', '../../../../../../bus/acpi') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:21/device:22/path', 0o644, b'\\_SB_.PCI0.USB7.URTH\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:21/device:22/uevent', 0o644, b'') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:21/device:22/power', 0o755) +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:21/device:22/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:21/device:22/device:23', 0o755) +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:21/device:22/device:23/subsystem', '../../../../../../../bus/acpi') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:21/device:22/device:23/path', 0o644, b'\\_SB_.PCI0.USB7.URTH.UPDK\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:21/device:22/device:23/uevent', 0o644, b'') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:21/device:22/device:23/power', 0o755) +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:21/device:22/device:23/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:21/device:22/device:24', 0o755) +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:21/device:22/device:24/subsystem', '../../../../../../../bus/acpi') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:21/device:22/device:24/path', 0o644, b'\\_SB_.PCI0.USB7.URTH.UPEX\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:21/device:22/device:24/uevent', 0o644, b'') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:21/device:22/device:24/power', 0o755) +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:21/device:22/device:24/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:0b', 0o755) +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:0b/subsystem', '../../../../../bus/acpi') +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:0b/physical_node', '../../../../pci0000:00/0000:00:1c.0') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:0b/path', 0o644, b'\\_SB_.PCI0.EXP0\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:0b/uevent', 0o644, b'') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:0b/power', 0o755) +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:0b/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:06', 0o755) +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:06/subsystem', '../../../../../bus/acpi') +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:06/physical_node', '../../../../pci0000:00/0000:00:01.0') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:06/path', 0o644, b'\\_SB_.PCI0.AGP_\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:06/uevent', 0o644, b'') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:06/power', 0o755) +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:06/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:06/device:07', 0o755) +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:06/device:07/subsystem', '../../../../../../bus/acpi') +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:06/device:07/physical_node', '../../../../../pci0000:00/0000:00:01.0/0000:01:00.0') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:06/device:07/modalias', 0o644, b'acpi:LNXVIDEO:\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:06/device:07/path', 0o644, b'\\_SB_.PCI0.AGP_.VID_\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:06/device:07/uevent', 0o644, b'MODALIAS=acpi:LNXVIDEO:\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:06/device:07/device:08', 0o755) +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:06/device:07/device:08/subsystem', '../../../../../../../bus/acpi') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:06/device:07/device:08/path', 0o644, b'\\_SB_.PCI0.AGP_.VID_.LCD0\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:06/device:07/device:08/uevent', 0o644, b'') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:06/device:07/device:08/power', 0o755) +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:06/device:07/device:08/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:06/device:07/power', 0o755) +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:06/device:07/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:06/device:07/device:09', 0o755) +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:06/device:07/device:09/subsystem', '../../../../../../../bus/acpi') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:06/device:07/device:09/path', 0o644, b'\\_SB_.PCI0.AGP_.VID_.CRT0\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:06/device:07/device:09/uevent', 0o644, b'') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:06/device:07/device:09/power', 0o755) +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:06/device:07/device:09/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:06/device:07/device:0a', 0o755) +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:06/device:07/device:0a/subsystem', '../../../../../../../bus/acpi') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:06/device:07/device:0a/path', 0o644, b'\\_SB_.PCI0.AGP_.VID_.DVI0\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:06/device:07/device:0a/uevent', 0o644, b'') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:06/device:07/device:0a/power', 0o755) +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:06/device:07/device:0a/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:18', 0o755) +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:18/subsystem', '../../../../../bus/acpi') +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:18/physical_node', '../../../../pci0000:00/0000:00:1f.3') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:18/path', 0o644, b'\\_SB_.PCI0.SMBU\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:18/uevent', 0o644, b'') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:18/power', 0o755) +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:18/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:0c', 0o755) +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:0c/subsystem', '../../../../../bus/acpi') +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:0c/physical_node', '../../../../pci0000:00/0000:00:1c.1') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:0c/path', 0o644, b'\\_SB_.PCI0.EXP1\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:0c/uevent', 0o644, b'') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:0c/power', 0o755) +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:0c/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:02', 0o755) +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:02/subsystem', '../../../../../bus/acpi') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:02/modalias', 0o644, b'acpi:LNXVIDEO:\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:02/path', 0o644, b'\\_SB_.PCI0.VID_\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:02/uevent', 0o644, b'MODALIAS=acpi:LNXVIDEO:\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:02/power', 0o755) +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:02/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:02/device:04', 0o755) +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:02/device:04/subsystem', '../../../../../../bus/acpi') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:02/device:04/path', 0o644, b'\\_SB_.PCI0.VID_.CRT0\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:02/device:04/uevent', 0o644, b'') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:02/device:04/power', 0o755) +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:02/device:04/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:02/device:05', 0o755) +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:02/device:05/subsystem', '../../../../../../bus/acpi') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:02/device:05/path', 0o644, b'\\_SB_.PCI0.VID_.DVI0\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:02/device:05/uevent', 0o644, b'') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:02/device:05/power', 0o755) +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:02/device:05/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:02/device:03', 0o755) +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:02/device:03/subsystem', '../../../../../../bus/acpi') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:02/device:03/path', 0o644, b'\\_SB_.PCI0.VID_.LCD0\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:02/device:03/uevent', 0o644, b'') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:02/device:03/power', 0o755) +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:02/device:03/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/power', 0o755) +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:13', 0o755) +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:13/subsystem', '../../../../../bus/acpi') +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:13/physical_node', '../../../../pci0000:00/0000:00:1f.1') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:13/path', 0o644, b'\\_SB_.PCI0.IDE0\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:13/uevent', 0o644, b'') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:13/power', 0o755) +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:13/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:13/device:14', 0o755) +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:13/device:14/subsystem', '../../../../../../bus/acpi') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:13/device:14/path', 0o644, b'\\_SB_.PCI0.IDE0.PRIM\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:13/device:14/uevent', 0o644, b'') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:13/device:14/power', 0o755) +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:13/device:14/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:13/device:14/device:15', 0o755) +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:13/device:14/device:15/subsystem', '../../../../../../../bus/acpi') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:13/device:14/device:15/modalias', 0o644, b'acpi:LNXIOBAY:\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:13/device:14/device:15/path', 0o644, b'\\_SB_.PCI0.IDE0.PRIM.MSTR\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:13/device:14/device:15/uevent', 0o644, b'MODALIAS=acpi:LNXIOBAY:\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:13/device:14/device:15/power', 0o755) +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:13/device:14/device:15/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:1d', 0o755) +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:1d/subsystem', '../../../../../bus/acpi') +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:1d/physical_node', '../../../../pci0000:00/0000:00:1d.2') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:1d/path', 0o644, b'\\_SB_.PCI0.USB2\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:1d/uevent', 0o644, b'') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:1d/power', 0o755) +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:1d/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:1d/device:1e', 0o755) +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:1d/device:1e/subsystem', '../../../../../../bus/acpi') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:1d/device:1e/path', 0o644, b'\\_SB_.PCI0.USB2.URTH\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:1d/device:1e/uevent', 0o644, b'') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:1d/device:1e/device:1f', 0o755) +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:1d/device:1e/device:1f/subsystem', '../../../../../../../bus/acpi') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:1d/device:1e/device:1f/path', 0o644, b'\\_SB_.PCI0.USB2.URTH.UPDK\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:1d/device:1e/device:1f/uevent', 0o644, b'') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:1d/device:1e/device:1f/power', 0o755) +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:1d/device:1e/device:1f/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:1d/device:1e/power', 0o755) +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:1d/device:1e/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:19', 0o755) +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:19/subsystem', '../../../../../bus/acpi') +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:19/physical_node', '../../../../pci0000:00/0000:00:1d.0') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:19/path', 0o644, b'\\_SB_.PCI0.USB0\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:19/uevent', 0o644, b'') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:19/power', 0o755) +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:19/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:1a', 0o755) +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:1a/subsystem', '../../../../../bus/acpi') +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:1a/physical_node', '../../../../pci0000:00/0000:00:1d.1') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:1a/path', 0o644, b'\\_SB_.PCI0.USB1\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:1a/uevent', 0o644, b'') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:1a/power', 0o755) +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:1a/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:1a/device:1b', 0o755) +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:1a/device:1b/subsystem', '../../../../../../bus/acpi') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:1a/device:1b/path', 0o644, b'\\_SB_.PCI0.USB1.URTH\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:1a/device:1b/uevent', 0o644, b'') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:1a/device:1b/device:1c', 0o755) +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:1a/device:1b/device:1c/subsystem', '../../../../../../../bus/acpi') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:1a/device:1b/device:1c/path', 0o644, b'\\_SB_.PCI0.USB1.URTH.UPEX\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:1a/device:1b/device:1c/uevent', 0o644, b'') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:1a/device:1b/device:1c/power', 0o755) +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:1a/device:1b/device:1c/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:1a/device:1b/power', 0o755) +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:1a/device:1b/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:0d', 0o755) +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:0d/subsystem', '../../../../../bus/acpi') +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:0d/physical_node', '../../../../pci0000:00/0000:00:1c.2') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:0d/path', 0o644, b'\\_SB_.PCI0.EXP2\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:0d/uevent', 0o644, b'') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:0d/device:0e', 0o755) +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:0d/device:0e/subsystem', '../../../../../../bus/acpi') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:0d/device:0e/path', 0o644, b'\\_SB_.PCI0.EXP2.EXUP\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:0d/device:0e/uevent', 0o644, b'') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:0d/device:0e/power', 0o755) +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:0d/device:0e/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:0d/power', 0o755) +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:0d/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:25', 0o755) +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:25/subsystem', '../../../../../bus/acpi') +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:25/physical_node', '../../../../pci0000:00/0000:00:1b.0') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:25/path', 0o644, b'\\_SB_.PCI0.HDEF\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:25/uevent', 0o644, b'') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:25/power', 0o755) +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:25/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01', 0o755) +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/subsystem', '../../../../../bus/acpi') +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/physical_node', '../../../../pci0000:00/0000:00:1f.0') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/path', 0o644, b'\\_SB_.PCI0.LPC_\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/uevent', 0o644, b'') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0000:00', 0o755) +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0000:00/subsystem', '../../../../../../bus/acpi') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0000:00/hid', 0o644, b'PNP0000\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0000:00/modalias', 0o644, b'acpi:PNP0000:\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0000:00/path', 0o644, b'\\_SB_.PCI0.LPC_.PIC_\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0000:00/uevent', 0o644, b'MODALIAS=acpi:PNP0000:\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0000:00/power', 0o755) +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0000:00/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0103:00', 0o755) +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0103:00/subsystem', '../../../../../../bus/acpi') +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0103:00/physical_node', '../../../../../pnp0/00:03') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0103:00/hid', 0o644, b'PNP0103\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0103:00/modalias', 0o644, b'acpi:PNP0103:\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0103:00/path', 0o644, b'\\_SB_.PCI0.LPC_.HPET\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0103:00/uevent', 0o644, b'MODALIAS=acpi:PNP0103:\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0103:00/power', 0o755) +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0103:00/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/ATM1200:00', 0o755) +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/ATM1200:00/subsystem', '../../../../../../bus/acpi') +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/ATM1200:00/physical_node', '../../../../../pnp0/00:0a') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/ATM1200:00/hid', 0o644, b'ATM1200\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/ATM1200:00/modalias', 0o644, b'acpi:ATM1200:PNP0C31:\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/ATM1200:00/path', 0o644, b'\\_SB_.PCI0.LPC_.TPM_\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/ATM1200:00/uevent', 0o644, b'MODALIAS=acpi:ATM1200:PNP0C31:\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/ATM1200:00/power', 0o755) +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/ATM1200:00/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0303:00', 0o755) +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0303:00/subsystem', '../../../../../../bus/acpi') +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0303:00/physical_node', '../../../../../pnp0/00:08') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0303:00/hid', 0o644, b'PNP0303\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0303:00/modalias', 0o644, b'acpi:PNP0303:\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0303:00/path', 0o644, b'\\_SB_.PCI0.LPC_.KBD_\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0303:00/uevent', 0o644, b'MODALIAS=acpi:PNP0303:\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0303:00/power', 0o755) +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0303:00/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/power', 0o755) +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C04:00', 0o755) +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C04:00/subsystem', '../../../../../../bus/acpi') +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C04:00/physical_node', '../../../../../pnp0/00:06') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C04:00/hid', 0o644, b'PNP0C04\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C04:00/modalias', 0o644, b'acpi:PNP0C04:\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C04:00/path', 0o644, b'\\_SB_.PCI0.LPC_.FPU_\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C04:00/uevent', 0o644, b'MODALIAS=acpi:PNP0C04:\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C04:00/power', 0o755) +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C04:00/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0800:00', 0o755) +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0800:00/subsystem', '../../../../../../bus/acpi') +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0800:00/physical_node', '../../../../../pnp0/00:05') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0800:00/hid', 0o644, b'PNP0800\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0800:00/modalias', 0o644, b'acpi:PNP0800:\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0800:00/path', 0o644, b'\\_SB_.PCI0.LPC_.SPKR\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0800:00/uevent', 0o644, b'MODALIAS=acpi:PNP0800:\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0800:00/power', 0o755) +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0800:00/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C02:00', 0o755) +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C02:00/subsystem', '../../../../../../bus/acpi') +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C02:00/physical_node', '../../../../../pnp0/00:02') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C02:00/hid', 0o644, b'PNP0C02\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C02:00/modalias', 0o644, b'acpi:PNP0C02:\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C02:00/path', 0o644, b'\\_SB_.PCI0.LPC_.SIO_\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C02:00/uevent', 0o644, b'MODALIAS=acpi:PNP0C02:\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C02:00/power', 0o755) +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C02:00/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0100:00', 0o755) +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0100:00/subsystem', '../../../../../../bus/acpi') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0100:00/hid', 0o644, b'PNP0100\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0100:00/modalias', 0o644, b'acpi:PNP0100:\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0100:00/path', 0o644, b'\\_SB_.PCI0.LPC_.TIMR\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0100:00/uevent', 0o644, b'MODALIAS=acpi:PNP0100:\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0100:00/power', 0o755) +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0100:00/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00', 0o755) +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/subsystem', '../../../../../../bus/acpi') +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/driver', '../../../../../../bus/acpi/drivers/ec') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/hid', 0o644, b'PNP0C09\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/modalias', 0o644, b'acpi:PNP0C09:\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/path', 0o644, b'\\_SB_.PCI0.LPC_.EC__\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/uevent', 0o644, b'''DRIVER=ec +MODALIAS=acpi:PNP0C09: +''') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/LNXPOWER:00', 0o755) +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/LNXPOWER:00/subsystem', '../../../../../../../bus/acpi') +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/LNXPOWER:00/driver', '../../../../../../../bus/acpi/drivers/power') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/LNXPOWER:00/hid', 0o644, b'LNXPOWER\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/LNXPOWER:00/modalias', 0o644, b'acpi:LNXPOWER:\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/LNXPOWER:00/path', 0o644, b'\\_SB_.PCI0.LPC_.EC__.PUBS\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/LNXPOWER:00/uevent', 0o644, b'''DRIVER=power +MODALIAS=acpi:LNXPOWER: +''') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/LNXPOWER:00/power', 0o755) +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/LNXPOWER:00/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/ACPI0003:00', 0o755) +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/ACPI0003:00/subsystem', '../../../../../../../bus/acpi') +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/ACPI0003:00/driver', '../../../../../../../bus/acpi/drivers/ac') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/ACPI0003:00/hid', 0o644, b'ACPI0003\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/ACPI0003:00/modalias', 0o644, b'acpi:ACPI0003:\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/ACPI0003:00/path', 0o644, b'\\_SB_.PCI0.LPC_.EC__.AC__\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/ACPI0003:00/uevent', 0o644, b'''DRIVER=ac +MODALIAS=acpi:ACPI0003: +''') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/ACPI0003:00/power', 0o755) +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/ACPI0003:00/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/ACPI0003:00/power_supply', 0o755) +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/ACPI0003:00/power_supply/AC', 0o755) +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/ACPI0003:00/power_supply/AC/subsystem', '../../../../../../../../../class/power_supply') +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/ACPI0003:00/power_supply/AC/device', '../../../ACPI0003:00') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/ACPI0003:00/power_supply/AC/type', 0o644, b'Mains\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/ACPI0003:00/power_supply/AC/online', 0o644, b'0\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/ACPI0003:00/power_supply/AC/uevent', 0o644, b'''POWER_SUPPLY_NAME=AC +POWER_SUPPLY_TYPE=Mains +POWER_SUPPLY_ONLINE=0 +''') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/ACPI0003:00/power_supply/AC/power', 0o755) +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/ACPI0003:00/power_supply/AC/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/PNP0C0A:00', 0o755) +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/PNP0C0A:00/subsystem', '../../../../../../../bus/acpi') +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/PNP0C0A:00/driver', '../../../../../../../bus/acpi/drivers/battery') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/PNP0C0A:00/hid', 0o644, b'PNP0C0A\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/PNP0C0A:00/modalias', 0o644, b'acpi:PNP0C0A:\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/PNP0C0A:00/path', 0o644, b'\\_SB_.PCI0.LPC_.EC__.BAT0\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/PNP0C0A:00/uevent', 0o644, b'''DRIVER=battery +MODALIAS=acpi:PNP0C0A: +''') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/PNP0C0A:00/power', 0o755) +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/PNP0C0A:00/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/PNP0C0A:00/power_supply', 0o755) +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/PNP0C0A:00/power_supply/BAT0', 0o755) +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/PNP0C0A:00/power_supply/BAT0/subsystem', '../../../../../../../../../class/power_supply') +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/PNP0C0A:00/power_supply/BAT0/device', '../../../PNP0C0A:00') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/PNP0C0A:00/power_supply/BAT0/model_name', 0o644, b'42T5245\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/PNP0C0A:00/power_supply/BAT0/voltage_min_design', 0o644, b'10800000\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/PNP0C0A:00/power_supply/BAT0/type', 0o644, b'Battery\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/PNP0C0A:00/power_supply/BAT0/current_now', 0o644, b'25830000\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/PNP0C0A:00/power_supply/BAT0/energy_now', 0o644, b'59980000\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/PNP0C0A:00/power_supply/BAT0/technology', 0o644, b'Li-ion\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/PNP0C0A:00/power_supply/BAT0/voltage_now', 0o644, b'12207000\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/PNP0C0A:00/power_supply/BAT0/energy_full_design', 0o644, b'84240000\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/PNP0C0A:00/power_supply/BAT0/serial_number', 0o644, b' 6463\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/PNP0C0A:00/power_supply/BAT0/present', 0o644, b'1\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/PNP0C0A:00/power_supply/BAT0/alarm', 0o644, b'3075000\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/PNP0C0A:00/power_supply/BAT0/uevent', 0o644, b'''POWER_SUPPLY_NAME=BAT0 +POWER_SUPPLY_TYPE=Battery +POWER_SUPPLY_STATUS=Discharging +POWER_SUPPLY_PRESENT=1 +POWER_SUPPLY_TECHNOLOGY=Li-ion +POWER_SUPPLY_VOLTAGE_MIN_DESIGN=10800000 +POWER_SUPPLY_VOLTAGE_NOW=12207000 +POWER_SUPPLY_CURRENT_NOW=25830000 +POWER_SUPPLY_ENERGY_FULL_DESIGN=84240000 +POWER_SUPPLY_ENERGY_FULL=61510000 +POWER_SUPPLY_ENERGY_NOW=59980000 +POWER_SUPPLY_MODEL_NAME=42T5245 +POWER_SUPPLY_MANUFACTURER=SANYO +POWER_SUPPLY_SERIAL_NUMBER= 6463 +''') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/PNP0C0A:00/power_supply/BAT0/manufacturer', 0o644, b'SANYO\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/PNP0C0A:00/power_supply/BAT0/energy_full', 0o644, b'61510000\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/PNP0C0A:00/power_supply/BAT0/status', 0o644, b'Discharging\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/PNP0C0A:00/power_supply/BAT0/power', 0o755) +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/PNP0C0A:00/power_supply/BAT0/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/power', 0o755) +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/IBM0068:00', 0o755) +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/IBM0068:00/subsystem', '../../../../../../../bus/acpi') +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/IBM0068:00/driver', '../../../../../../../bus/acpi/drivers/thinkpad_hotkey') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/IBM0068:00/hid', 0o644, b'IBM0068\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/IBM0068:00/modalias', 0o644, b'acpi:IBM0068:\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/IBM0068:00/path', 0o644, b'\\_SB_.PCI0.LPC_.EC__.HKEY\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/IBM0068:00/uevent', 0o644, b'''DRIVER=thinkpad_hotkey +MODALIAS=acpi:IBM0068: +''') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/IBM0068:00/power', 0o755) +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0C09:00/IBM0068:00/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0200:00', 0o755) +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0200:00/subsystem', '../../../../../../bus/acpi') +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0200:00/physical_node', '../../../../../pnp0/00:04') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0200:00/hid', 0o644, b'PNP0200\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0200:00/modalias', 0o644, b'acpi:PNP0200:\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0200:00/path', 0o644, b'\\_SB_.PCI0.LPC_.DMAC\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0200:00/uevent', 0o644, b'MODALIAS=acpi:PNP0200:\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0200:00/power', 0o755) +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0200:00/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/IBM0057:00', 0o755) +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/IBM0057:00/subsystem', '../../../../../../bus/acpi') +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/IBM0057:00/physical_node', '../../../../../pnp0/00:09') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/IBM0057:00/hid', 0o644, b'IBM0057\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/IBM0057:00/modalias', 0o644, b'acpi:IBM0057:PNP0F13:\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/IBM0057:00/path', 0o644, b'\\_SB_.PCI0.LPC_.MOU_\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/IBM0057:00/uevent', 0o644, b'MODALIAS=acpi:IBM0057:PNP0F13:\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/IBM0057:00/power', 0o755) +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/IBM0057:00/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0B00:00', 0o755) +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0B00:00/subsystem', '../../../../../../bus/acpi') +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0B00:00/physical_node', '../../../../../pnp0/00:07') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0B00:00/hid', 0o644, b'PNP0B00\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0B00:00/modalias', 0o644, b'acpi:PNP0B00:\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0B00:00/path', 0o644, b'\\_SB_.PCI0.LPC_.RTC_\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0B00:00/uevent', 0o644, b'MODALIAS=acpi:PNP0B00:\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0B00:00/power', 0o755) +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:01/PNP0B00:00/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:20', 0o755) +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:20/subsystem', '../../../../../bus/acpi') +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:20/physical_node', '../../../../pci0000:00/0000:00:1d.3') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:20/path', 0o644, b'\\_SB_.PCI0.USB3\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:20/uevent', 0o644, b'') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:20/power', 0o755) +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:20/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:0f', 0o755) +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:0f/subsystem', '../../../../../bus/acpi') +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:0f/physical_node', '../../../../pci0000:00/0000:00:1c.3') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:0f/path', 0o644, b'\\_SB_.PCI0.EXP3\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:0f/uevent', 0o644, b'') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:0f/power', 0o755) +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:0f/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:0f/device:10', 0o755) +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:0f/device:10/subsystem', '../../../../../../bus/acpi') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:0f/device:10/path', 0o644, b'\\_SB_.PCI0.EXP3.EXPD\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:0f/device:10/uevent', 0o644, b'') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:0f/device:10/power', 0o755) +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:0f/device:10/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:16', 0o755) +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:16/subsystem', '../../../../../bus/acpi') +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:16/physical_node', '../../../../pci0000:00/0000:00:1f.2') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:16/path', 0o644, b'\\_SB_.PCI0.SATA\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:16/uevent', 0o644, b'') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:16/device:17', 0o755) +l('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:16/device:17/subsystem', '../../../../../../bus/acpi') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:16/device:17/path', 0o644, b'\\_SB_.PCI0.SATA.PRT0\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:16/device:17/uevent', 0o644, b'') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:16/device:17/power', 0o755) +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:16/device:17/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:16/power', 0o755) +f('sys/devices/LNXSYSTM:00/device:00/PNP0A08:00/device:16/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/device:00/IBM0079:00', 0o755) +l('sys/devices/LNXSYSTM:00/device:00/IBM0079:00/subsystem', '../../../../bus/acpi') +f('sys/devices/LNXSYSTM:00/device:00/IBM0079:00/hid', 0o644, b'IBM0079\n') +f('sys/devices/LNXSYSTM:00/device:00/IBM0079:00/modalias', 0o644, b'acpi:IBM0079:PNP0C15:LNXDOCK:\n') +f('sys/devices/LNXSYSTM:00/device:00/IBM0079:00/path', 0o644, b'\\_SB_.GDCK\n') +f('sys/devices/LNXSYSTM:00/device:00/IBM0079:00/uevent', 0o644, b'MODALIAS=acpi:IBM0079:PNP0C15:LNXDOCK:\n') +d('sys/devices/LNXSYSTM:00/device:00/IBM0079:00/power', 0o755) +f('sys/devices/LNXSYSTM:00/device:00/IBM0079:00/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0C0D:00', 0o755) +l('sys/devices/LNXSYSTM:00/device:00/PNP0C0D:00/subsystem', '../../../../bus/acpi') +l('sys/devices/LNXSYSTM:00/device:00/PNP0C0D:00/driver', '../../../../bus/acpi/drivers/button') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0D:00/hid', 0o644, b'PNP0C0D\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0D:00/modalias', 0o644, b'acpi:PNP0C0D:\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0D:00/path', 0o644, b'\\_SB_.LID_\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0D:00/uevent', 0o644, b'''DRIVER=button +MODALIAS=acpi:PNP0C0D: +''') +d('sys/devices/LNXSYSTM:00/device:00/PNP0C0D:00/power', 0o755) +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0D:00/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0C0D:00/input', 0o755) +d('sys/devices/LNXSYSTM:00/device:00/PNP0C0D:00/input/input4', 0o755) +l('sys/devices/LNXSYSTM:00/device:00/PNP0C0D:00/input/input4/subsystem', '../../../../../../class/input') +l('sys/devices/LNXSYSTM:00/device:00/PNP0C0D:00/input/input4/device', '../../../PNP0C0D:00') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0D:00/input/input4/uniq', 0o644, b'\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0D:00/input/input4/phys', 0o644, b'PNP0C0D/button/input0\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0D:00/input/input4/modalias', 0o644, b'input:b0019v0000p0005e0000-e0,5,kramlsfw0,\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0D:00/input/input4/name', 0o644, b'Lid Switch\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0D:00/input/input4/uevent', 0o644, b'''PRODUCT=19/0/5/0 +NAME="Lid Switch" +PHYS="PNP0C0D/button/input0" +EV==21 +SW==1 +MODALIAS=input:b0019v0000p0005e0000-e0,5,kramlsfw0, +''') +d('sys/devices/LNXSYSTM:00/device:00/PNP0C0D:00/input/input4/event4', 0o755) +l('sys/devices/LNXSYSTM:00/device:00/PNP0C0D:00/input/input4/event4/subsystem', '../../../../../../../class/input') +l('sys/devices/LNXSYSTM:00/device:00/PNP0C0D:00/input/input4/event4/device', '../../input4') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0D:00/input/input4/event4/dev', 0o644, b'13:68\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0D:00/input/input4/event4/uevent', 0o644, b'''MAJOR=13 +MINOR=68 +''') +d('sys/devices/LNXSYSTM:00/device:00/PNP0C0D:00/input/input4/event4/power', 0o755) +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0D:00/input/input4/event4/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0C0D:00/input/input4/id', 0o755) +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0D:00/input/input4/id/version', 0o644, b'0000\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0D:00/input/input4/id/product', 0o644, b'0005\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0D:00/input/input4/id/vendor', 0o644, b'0000\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0D:00/input/input4/id/bustype', 0o644, b'0019\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0C0D:00/input/input4/power', 0o755) +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0D:00/input/input4/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0C0D:00/input/input4/capabilities', 0o755) +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0D:00/input/input4/capabilities/msc', 0o644, b'0\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0D:00/input/input4/capabilities/abs', 0o644, b'0\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0D:00/input/input4/capabilities/snd', 0o644, b'0\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0D:00/input/input4/capabilities/ff', 0o644, b'0\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0D:00/input/input4/capabilities/key', 0o644, b'0\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0D:00/input/input4/capabilities/rel', 0o644, b'0\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0D:00/input/input4/capabilities/sw', 0o644, b'1\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0D:00/input/input4/capabilities/ev', 0o644, b'21\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0D:00/input/input4/capabilities/led', 0o644, b'0\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0C01:00', 0o755) +l('sys/devices/LNXSYSTM:00/device:00/PNP0C01:00/subsystem', '../../../../bus/acpi') +l('sys/devices/LNXSYSTM:00/device:00/PNP0C01:00/physical_node', '../../../pnp0/00:00') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C01:00/hid', 0o644, b'PNP0C01\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C01:00/modalias', 0o644, b'acpi:PNP0C01:\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C01:00/path', 0o644, b'\\_SB_.MEM_\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C01:00/uevent', 0o644, b'MODALIAS=acpi:PNP0C01:\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0C01:00/power', 0o755) +f('sys/devices/LNXSYSTM:00/device:00/PNP0C01:00/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0C0F:07', 0o755) +l('sys/devices/LNXSYSTM:00/device:00/PNP0C0F:07/subsystem', '../../../../bus/acpi') +l('sys/devices/LNXSYSTM:00/device:00/PNP0C0F:07/driver', '../../../../bus/acpi/drivers/pci_link') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0F:07/hid', 0o644, b'PNP0C0F\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0F:07/modalias', 0o644, b'acpi:PNP0C0F:\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0F:07/path', 0o644, b'\\_SB_.LNKH\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0F:07/uevent', 0o644, b'''DRIVER=pci_link +MODALIAS=acpi:PNP0C0F: +''') +d('sys/devices/LNXSYSTM:00/device:00/PNP0C0F:07/power', 0o755) +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0F:07/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0C0F:04', 0o755) +l('sys/devices/LNXSYSTM:00/device:00/PNP0C0F:04/subsystem', '../../../../bus/acpi') +l('sys/devices/LNXSYSTM:00/device:00/PNP0C0F:04/driver', '../../../../bus/acpi/drivers/pci_link') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0F:04/hid', 0o644, b'PNP0C0F\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0F:04/modalias', 0o644, b'acpi:PNP0C0F:\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0F:04/path', 0o644, b'\\_SB_.LNKE\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0F:04/uevent', 0o644, b'''DRIVER=pci_link +MODALIAS=acpi:PNP0C0F: +''') +d('sys/devices/LNXSYSTM:00/device:00/PNP0C0F:04/power', 0o755) +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0F:04/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0C0F:02', 0o755) +l('sys/devices/LNXSYSTM:00/device:00/PNP0C0F:02/subsystem', '../../../../bus/acpi') +l('sys/devices/LNXSYSTM:00/device:00/PNP0C0F:02/driver', '../../../../bus/acpi/drivers/pci_link') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0F:02/hid', 0o644, b'PNP0C0F\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0F:02/modalias', 0o644, b'acpi:PNP0C0F:\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0F:02/path', 0o644, b'\\_SB_.LNKC\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0F:02/uevent', 0o644, b'''DRIVER=pci_link +MODALIAS=acpi:PNP0C0F: +''') +d('sys/devices/LNXSYSTM:00/device:00/PNP0C0F:02/power', 0o755) +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0F:02/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0C0F:00', 0o755) +l('sys/devices/LNXSYSTM:00/device:00/PNP0C0F:00/subsystem', '../../../../bus/acpi') +l('sys/devices/LNXSYSTM:00/device:00/PNP0C0F:00/driver', '../../../../bus/acpi/drivers/pci_link') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0F:00/hid', 0o644, b'PNP0C0F\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0F:00/modalias', 0o644, b'acpi:PNP0C0F:\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0F:00/path', 0o644, b'\\_SB_.LNKA\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0F:00/uevent', 0o644, b'''DRIVER=pci_link +MODALIAS=acpi:PNP0C0F: +''') +d('sys/devices/LNXSYSTM:00/device:00/PNP0C0F:00/power', 0o755) +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0F:00/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0C0F:01', 0o755) +l('sys/devices/LNXSYSTM:00/device:00/PNP0C0F:01/subsystem', '../../../../bus/acpi') +l('sys/devices/LNXSYSTM:00/device:00/PNP0C0F:01/driver', '../../../../bus/acpi/drivers/pci_link') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0F:01/hid', 0o644, b'PNP0C0F\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0F:01/modalias', 0o644, b'acpi:PNP0C0F:\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0F:01/path', 0o644, b'\\_SB_.LNKB\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0F:01/uevent', 0o644, b'''DRIVER=pci_link +MODALIAS=acpi:PNP0C0F: +''') +d('sys/devices/LNXSYSTM:00/device:00/PNP0C0F:01/power', 0o755) +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0F:01/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0C0F:06', 0o755) +l('sys/devices/LNXSYSTM:00/device:00/PNP0C0F:06/subsystem', '../../../../bus/acpi') +l('sys/devices/LNXSYSTM:00/device:00/PNP0C0F:06/driver', '../../../../bus/acpi/drivers/pci_link') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0F:06/hid', 0o644, b'PNP0C0F\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0F:06/modalias', 0o644, b'acpi:PNP0C0F:\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0F:06/path', 0o644, b'\\_SB_.LNKG\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0F:06/uevent', 0o644, b'''DRIVER=pci_link +MODALIAS=acpi:PNP0C0F: +''') +d('sys/devices/LNXSYSTM:00/device:00/PNP0C0F:06/power', 0o755) +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0F:06/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/device:00/PNP0C0F:03', 0o755) +l('sys/devices/LNXSYSTM:00/device:00/PNP0C0F:03/subsystem', '../../../../bus/acpi') +l('sys/devices/LNXSYSTM:00/device:00/PNP0C0F:03/driver', '../../../../bus/acpi/drivers/pci_link') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0F:03/hid', 0o644, b'PNP0C0F\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0F:03/modalias', 0o644, b'acpi:PNP0C0F:\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0F:03/path', 0o644, b'\\_SB_.LNKD\n') +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0F:03/uevent', 0o644, b'''DRIVER=pci_link +MODALIAS=acpi:PNP0C0F: +''') +d('sys/devices/LNXSYSTM:00/device:00/PNP0C0F:03/power', 0o755) +f('sys/devices/LNXSYSTM:00/device:00/PNP0C0F:03/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/ACPI0007:00', 0o755) +l('sys/devices/LNXSYSTM:00/ACPI0007:00/thermal_cooling', '../../virtual/thermal/cooling_device0') +l('sys/devices/LNXSYSTM:00/ACPI0007:00/subsystem', '../../../bus/acpi') +l('sys/devices/LNXSYSTM:00/ACPI0007:00/sysdev', '../../system/cpu/cpu0') +l('sys/devices/LNXSYSTM:00/ACPI0007:00/driver', '../../../bus/acpi/drivers/processor') +f('sys/devices/LNXSYSTM:00/ACPI0007:00/hid', 0o644, b'ACPI0007\n') +f('sys/devices/LNXSYSTM:00/ACPI0007:00/modalias', 0o644, b'acpi:ACPI0007:\n') +f('sys/devices/LNXSYSTM:00/ACPI0007:00/path', 0o644, b'\\_PR_.CPU0\n') +f('sys/devices/LNXSYSTM:00/ACPI0007:00/uevent', 0o644, b'''DRIVER=processor +MODALIAS=acpi:ACPI0007: +''') +d('sys/devices/LNXSYSTM:00/ACPI0007:00/power', 0o755) +f('sys/devices/LNXSYSTM:00/ACPI0007:00/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/LNXPWRBN:00', 0o755) +l('sys/devices/LNXSYSTM:00/LNXPWRBN:00/subsystem', '../../../bus/acpi') +l('sys/devices/LNXSYSTM:00/LNXPWRBN:00/driver', '../../../bus/acpi/drivers/button') +f('sys/devices/LNXSYSTM:00/LNXPWRBN:00/hid', 0o644, b'LNXPWRBN\n') +f('sys/devices/LNXSYSTM:00/LNXPWRBN:00/modalias', 0o644, b'acpi:LNXPWRBN:\n') +f('sys/devices/LNXSYSTM:00/LNXPWRBN:00/uevent', 0o644, b'''DRIVER=button +MODALIAS=acpi:LNXPWRBN: +''') +d('sys/devices/LNXSYSTM:00/LNXPWRBN:00/power', 0o755) +f('sys/devices/LNXSYSTM:00/LNXPWRBN:00/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/LNXPWRBN:00/input', 0o755) +d('sys/devices/LNXSYSTM:00/LNXPWRBN:00/input/input3', 0o755) +l('sys/devices/LNXSYSTM:00/LNXPWRBN:00/input/input3/subsystem', '../../../../../class/input') +l('sys/devices/LNXSYSTM:00/LNXPWRBN:00/input/input3/device', '../../../LNXPWRBN:00') +f('sys/devices/LNXSYSTM:00/LNXPWRBN:00/input/input3/uniq', 0o644, b'\n') +f('sys/devices/LNXSYSTM:00/LNXPWRBN:00/input/input3/phys', 0o644, b'LNXPWRBN/button/input0\n') +f('sys/devices/LNXSYSTM:00/LNXPWRBN:00/input/input3/modalias', 0o644, b'input:b0019v0000p0002e0000-e0,1,k74,ramlsfw\n') +f('sys/devices/LNXSYSTM:00/LNXPWRBN:00/input/input3/name', 0o644, b'Power Button (FF)\n') +f('sys/devices/LNXSYSTM:00/LNXPWRBN:00/input/input3/uevent', 0o644, b'''PRODUCT=19/0/2/0 +NAME="Power Button (FF)" +PHYS="LNXPWRBN/button/input0" +EV==3 +KEY==10000000000000 0 +MODALIAS=input:b0019v0000p0002e0000-e0,1,k74,ramlsfw +''') +d('sys/devices/LNXSYSTM:00/LNXPWRBN:00/input/input3/id', 0o755) +f('sys/devices/LNXSYSTM:00/LNXPWRBN:00/input/input3/id/version', 0o644, b'0000\n') +f('sys/devices/LNXSYSTM:00/LNXPWRBN:00/input/input3/id/product', 0o644, b'0002\n') +f('sys/devices/LNXSYSTM:00/LNXPWRBN:00/input/input3/id/vendor', 0o644, b'0000\n') +f('sys/devices/LNXSYSTM:00/LNXPWRBN:00/input/input3/id/bustype', 0o644, b'0019\n') +d('sys/devices/LNXSYSTM:00/LNXPWRBN:00/input/input3/power', 0o755) +f('sys/devices/LNXSYSTM:00/LNXPWRBN:00/input/input3/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/LNXPWRBN:00/input/input3/event3', 0o755) +l('sys/devices/LNXSYSTM:00/LNXPWRBN:00/input/input3/event3/subsystem', '../../../../../../class/input') +l('sys/devices/LNXSYSTM:00/LNXPWRBN:00/input/input3/event3/device', '../../input3') +f('sys/devices/LNXSYSTM:00/LNXPWRBN:00/input/input3/event3/dev', 0o644, b'13:67\n') +f('sys/devices/LNXSYSTM:00/LNXPWRBN:00/input/input3/event3/uevent', 0o644, b'''MAJOR=13 +MINOR=67 +''') +d('sys/devices/LNXSYSTM:00/LNXPWRBN:00/input/input3/event3/power', 0o755) +f('sys/devices/LNXSYSTM:00/LNXPWRBN:00/input/input3/event3/power/wakeup', 0o644, b'\n') +d('sys/devices/LNXSYSTM:00/LNXPWRBN:00/input/input3/capabilities', 0o755) +f('sys/devices/LNXSYSTM:00/LNXPWRBN:00/input/input3/capabilities/msc', 0o644, b'0\n') +f('sys/devices/LNXSYSTM:00/LNXPWRBN:00/input/input3/capabilities/abs', 0o644, b'0\n') +f('sys/devices/LNXSYSTM:00/LNXPWRBN:00/input/input3/capabilities/snd', 0o644, b'0\n') +f('sys/devices/LNXSYSTM:00/LNXPWRBN:00/input/input3/capabilities/ff', 0o644, b'0\n') +f('sys/devices/LNXSYSTM:00/LNXPWRBN:00/input/input3/capabilities/key', 0o644, b'10000000000000 0\n') +f('sys/devices/LNXSYSTM:00/LNXPWRBN:00/input/input3/capabilities/rel', 0o644, b'0\n') +f('sys/devices/LNXSYSTM:00/LNXPWRBN:00/input/input3/capabilities/sw', 0o644, b'0\n') +f('sys/devices/LNXSYSTM:00/LNXPWRBN:00/input/input3/capabilities/ev', 0o644, b'3\n') +f('sys/devices/LNXSYSTM:00/LNXPWRBN:00/input/input3/capabilities/led', 0o644, b'0\n') +d('sys/devices/platform', 0o755) +f('sys/devices/platform/uevent', 0o644, b'') +d('sys/devices/platform/pcspkr', 0o755) +l('sys/devices/platform/pcspkr/subsystem', '../../../bus/platform') +l('sys/devices/platform/pcspkr/driver', '../../../bus/platform/drivers/pcspkr') +f('sys/devices/platform/pcspkr/modalias', 0o644, b'platform:pcspkr\n') +f('sys/devices/platform/pcspkr/uevent', 0o644, b'''DRIVER=pcspkr +MODALIAS=platform:pcspkr +''') +d('sys/devices/platform/pcspkr/power', 0o755) +f('sys/devices/platform/pcspkr/power/wakeup', 0o644, b'\n') +d('sys/devices/platform/pcspkr/input', 0o755) +d('sys/devices/platform/pcspkr/input/input2', 0o755) +l('sys/devices/platform/pcspkr/input/input2/subsystem', '../../../../../class/input') +l('sys/devices/platform/pcspkr/input/input2/device', '../../../pcspkr') +f('sys/devices/platform/pcspkr/input/input2/uniq', 0o644, b'\n') +f('sys/devices/platform/pcspkr/input/input2/phys', 0o644, b'isa0061/input0\n') +f('sys/devices/platform/pcspkr/input/input2/modalias', 0o644, b'input:b0010v001Fp0001e0100-e0,12,kramls1,2,fw\n') +f('sys/devices/platform/pcspkr/input/input2/name', 0o644, b'PC Speaker\n') +f('sys/devices/platform/pcspkr/input/input2/uevent', 0o644, b'''PRODUCT=10/1f/1/100 +NAME="PC Speaker" +PHYS="isa0061/input0" +EV==40001 +SND==6 +MODALIAS=input:b0010v001Fp0001e0100-e0,12,kramls1,2,fw +''') +d('sys/devices/platform/pcspkr/input/input2/event2', 0o755) +l('sys/devices/platform/pcspkr/input/input2/event2/subsystem', '../../../../../../class/input') +l('sys/devices/platform/pcspkr/input/input2/event2/device', '../../input2') +f('sys/devices/platform/pcspkr/input/input2/event2/dev', 0o644, b'13:66\n') +f('sys/devices/platform/pcspkr/input/input2/event2/uevent', 0o644, b'''MAJOR=13 +MINOR=66 +''') +d('sys/devices/platform/pcspkr/input/input2/event2/power', 0o755) +f('sys/devices/platform/pcspkr/input/input2/event2/power/wakeup', 0o644, b'\n') +d('sys/devices/platform/pcspkr/input/input2/id', 0o755) +f('sys/devices/platform/pcspkr/input/input2/id/version', 0o644, b'0100\n') +f('sys/devices/platform/pcspkr/input/input2/id/product', 0o644, b'0001\n') +f('sys/devices/platform/pcspkr/input/input2/id/vendor', 0o644, b'001f\n') +f('sys/devices/platform/pcspkr/input/input2/id/bustype', 0o644, b'0010\n') +d('sys/devices/platform/pcspkr/input/input2/power', 0o755) +f('sys/devices/platform/pcspkr/input/input2/power/wakeup', 0o644, b'\n') +d('sys/devices/platform/pcspkr/input/input2/capabilities', 0o755) +f('sys/devices/platform/pcspkr/input/input2/capabilities/msc', 0o644, b'0\n') +f('sys/devices/platform/pcspkr/input/input2/capabilities/abs', 0o644, b'0\n') +f('sys/devices/platform/pcspkr/input/input2/capabilities/snd', 0o644, b'6\n') +f('sys/devices/platform/pcspkr/input/input2/capabilities/ff', 0o644, b'0\n') +f('sys/devices/platform/pcspkr/input/input2/capabilities/key', 0o644, b'0\n') +f('sys/devices/platform/pcspkr/input/input2/capabilities/rel', 0o644, b'0\n') +f('sys/devices/platform/pcspkr/input/input2/capabilities/sw', 0o644, b'0\n') +f('sys/devices/platform/pcspkr/input/input2/capabilities/ev', 0o644, b'40001\n') +f('sys/devices/platform/pcspkr/input/input2/capabilities/led', 0o644, b'0\n') +d('sys/devices/platform/power', 0o755) +f('sys/devices/platform/power/wakeup', 0o644, b'\n') +d('sys/devices/platform/vesafb.0', 0o755) +l('sys/devices/platform/vesafb.0/subsystem', '../../../bus/platform') +l('sys/devices/platform/vesafb.0/driver', '../../../bus/platform/drivers/vesafb') +f('sys/devices/platform/vesafb.0/modalias', 0o644, b'platform:vesafb\n') +f('sys/devices/platform/vesafb.0/uevent', 0o644, b'''DRIVER=vesafb +MODALIAS=platform:vesafb +''') +d('sys/devices/platform/vesafb.0/power', 0o755) +f('sys/devices/platform/vesafb.0/power/wakeup', 0o644, b'\n') +d('sys/devices/platform/vesafb.0/graphics', 0o755) +d('sys/devices/platform/vesafb.0/graphics/fb0', 0o755) +l('sys/devices/platform/vesafb.0/graphics/fb0/subsystem', '../../../../../class/graphics') +l('sys/devices/platform/vesafb.0/graphics/fb0/device', '../../../vesafb.0') +f('sys/devices/platform/vesafb.0/graphics/fb0/pan', 0o644, b'0,0\n') +f('sys/devices/platform/vesafb.0/graphics/fb0/rotate', 0o644, b'0\n') +f('sys/devices/platform/vesafb.0/graphics/fb0/mode', 0o644, b'') +f('sys/devices/platform/vesafb.0/graphics/fb0/virtual_size', 0o644, b'800,600\n') +f('sys/devices/platform/vesafb.0/graphics/fb0/dev', 0o644, b'29:0\n') +f('sys/devices/platform/vesafb.0/graphics/fb0/state', 0o644, b'0\n') +f('sys/devices/platform/vesafb.0/graphics/fb0/blank', 0o644, b'') +f('sys/devices/platform/vesafb.0/graphics/fb0/bits_per_pixel', 0o644, b'16\n') +f('sys/devices/platform/vesafb.0/graphics/fb0/stride', 0o644, b'1600\n') +f('sys/devices/platform/vesafb.0/graphics/fb0/name', 0o644, b'VESA VGA\n') +f('sys/devices/platform/vesafb.0/graphics/fb0/modes', 0o644, b'U:800x600p-75\n') +f('sys/devices/platform/vesafb.0/graphics/fb0/cursor', 0o644, b'') +f('sys/devices/platform/vesafb.0/graphics/fb0/uevent', 0o644, b'''MAJOR=29 +MINOR=0 +''') +f('sys/devices/platform/vesafb.0/graphics/fb0/console', 0o644, b'') +d('sys/devices/platform/vesafb.0/graphics/fb0/power', 0o755) +f('sys/devices/platform/vesafb.0/graphics/fb0/power/wakeup', 0o644, b'\n') +d('sys/devices/platform/dock.0', 0o755) +l('sys/devices/platform/dock.0/subsystem', '../../../bus/platform') +f('sys/devices/platform/dock.0/modalias', 0o644, b'platform:dock\n') +f('sys/devices/platform/dock.0/uid', 0o644, b'0\n') +f('sys/devices/platform/dock.0/flags', 0o644, b'0\n') +f('sys/devices/platform/dock.0/docked', 0o644, b'0\n') +f('sys/devices/platform/dock.0/uevent', 0o644, b'MODALIAS=platform:dock\n') +d('sys/devices/platform/dock.0/power', 0o755) +f('sys/devices/platform/dock.0/power/wakeup', 0o644, b'\n') +d('sys/devices/platform/serial8250', 0o755) +l('sys/devices/platform/serial8250/subsystem', '../../../bus/platform') +l('sys/devices/platform/serial8250/driver', '../../../bus/platform/drivers/serial8250') +f('sys/devices/platform/serial8250/modalias', 0o644, b'platform:serial8250\n') +f('sys/devices/platform/serial8250/uevent', 0o644, b'''DRIVER=serial8250 +MODALIAS=platform:serial8250 +''') +d('sys/devices/platform/serial8250/power', 0o755) +f('sys/devices/platform/serial8250/power/wakeup', 0o644, b'\n') +d('sys/devices/platform/serial8250/tty', 0o755) +d('sys/devices/platform/serial8250/tty/ttyS1', 0o755) +l('sys/devices/platform/serial8250/tty/ttyS1/subsystem', '../../../../../class/tty') +l('sys/devices/platform/serial8250/tty/ttyS1/device', '../../../serial8250') +f('sys/devices/platform/serial8250/tty/ttyS1/dev', 0o644, b'4:65\n') +f('sys/devices/platform/serial8250/tty/ttyS1/uevent', 0o644, b'''MAJOR=4 +MINOR=65 +''') +d('sys/devices/platform/serial8250/tty/ttyS1/power', 0o755) +f('sys/devices/platform/serial8250/tty/ttyS1/power/wakeup', 0o644, b'disabled\n') +d('sys/devices/platform/serial8250/tty/ttyS3', 0o755) +l('sys/devices/platform/serial8250/tty/ttyS3/subsystem', '../../../../../class/tty') +l('sys/devices/platform/serial8250/tty/ttyS3/device', '../../../serial8250') +f('sys/devices/platform/serial8250/tty/ttyS3/dev', 0o644, b'4:67\n') +f('sys/devices/platform/serial8250/tty/ttyS3/uevent', 0o644, b'''MAJOR=4 +MINOR=67 +''') +d('sys/devices/platform/serial8250/tty/ttyS3/power', 0o755) +f('sys/devices/platform/serial8250/tty/ttyS3/power/wakeup', 0o644, b'disabled\n') +d('sys/devices/platform/serial8250/tty/ttyS0', 0o755) +l('sys/devices/platform/serial8250/tty/ttyS0/subsystem', '../../../../../class/tty') +l('sys/devices/platform/serial8250/tty/ttyS0/device', '../../../serial8250') +f('sys/devices/platform/serial8250/tty/ttyS0/dev', 0o644, b'4:64\n') +f('sys/devices/platform/serial8250/tty/ttyS0/uevent', 0o644, b'''MAJOR=4 +MINOR=64 +''') +d('sys/devices/platform/serial8250/tty/ttyS0/power', 0o755) +f('sys/devices/platform/serial8250/tty/ttyS0/power/wakeup', 0o644, b'disabled\n') +d('sys/devices/platform/serial8250/tty/ttyS2', 0o755) +l('sys/devices/platform/serial8250/tty/ttyS2/subsystem', '../../../../../class/tty') +l('sys/devices/platform/serial8250/tty/ttyS2/device', '../../../serial8250') +f('sys/devices/platform/serial8250/tty/ttyS2/dev', 0o644, b'4:66\n') +f('sys/devices/platform/serial8250/tty/ttyS2/uevent', 0o644, b'''MAJOR=4 +MINOR=66 +''') +d('sys/devices/platform/serial8250/tty/ttyS2/power', 0o755) +f('sys/devices/platform/serial8250/tty/ttyS2/power/wakeup', 0o644, b'disabled\n') +d('sys/devices/platform/thinkpad_acpi', 0o755) +l('sys/devices/platform/thinkpad_acpi/subsystem', '../../../bus/platform') +l('sys/devices/platform/thinkpad_acpi/driver', '../../../bus/platform/drivers/thinkpad_acpi') +f('sys/devices/platform/thinkpad_acpi/modalias', 0o644, b'platform:thinkpad_acpi\n') +f('sys/devices/platform/thinkpad_acpi/hotkey_all_mask', 0o644, b'0x00ffffff\n') +f('sys/devices/platform/thinkpad_acpi/hotkey_poll_freq', 0o644, b'10\n') +f('sys/devices/platform/thinkpad_acpi/hotkey_bios_enabled', 0o644, b'0\n') +f('sys/devices/platform/thinkpad_acpi/hotkey_recommended_mask', 0o644, b'0x008c7fff\n') +f('sys/devices/platform/thinkpad_acpi/hotkey_bios_mask', 0o644, b'0x0000080c\n') +f('sys/devices/platform/thinkpad_acpi/hotkey_mask', 0o644, b'0x00ffffff\n') +f('sys/devices/platform/thinkpad_acpi/wakeup_hotunplug_complete', 0o644, b'0\n') +f('sys/devices/platform/thinkpad_acpi/hotkey_source_mask', 0o644, b'0x00000000\n') +f('sys/devices/platform/thinkpad_acpi/hotkey_report_mode', 0o644, b'1\n') +f('sys/devices/platform/thinkpad_acpi/hotkey_radio_sw', 0o644, b'1\n') +f('sys/devices/platform/thinkpad_acpi/hotkey_enable', 0o644, b'1\n') +f('sys/devices/platform/thinkpad_acpi/uevent', 0o644, b'''DRIVER=thinkpad_acpi +MODALIAS=platform:thinkpad_acpi +''') +f('sys/devices/platform/thinkpad_acpi/bluetooth_enable', 0o644, b'1\n') +f('sys/devices/platform/thinkpad_acpi/wakeup_reason', 0o644, b'0\n') +d('sys/devices/platform/thinkpad_acpi/rfkill', 0o755) +d('sys/devices/platform/thinkpad_acpi/rfkill/rfkill0', 0o755) +l('sys/devices/platform/thinkpad_acpi/rfkill/rfkill0/subsystem', '../../../../../class/rfkill') +l('sys/devices/platform/thinkpad_acpi/rfkill/rfkill0/device', '../../../thinkpad_acpi') +f('sys/devices/platform/thinkpad_acpi/rfkill/rfkill0/type', 0o644, b'bluetooth\n') +f('sys/devices/platform/thinkpad_acpi/rfkill/rfkill0/state', 0o644, b'1\n') +f('sys/devices/platform/thinkpad_acpi/rfkill/rfkill0/name', 0o644, b'tpacpi_bluetooth_sw\n') +f('sys/devices/platform/thinkpad_acpi/rfkill/rfkill0/uevent', 0o644, b'''RFKILL_NAME=tpacpi_bluetooth_sw +RFKILL_TYPE=bluetooth +RFKILL_STATE=1 +''') +f('sys/devices/platform/thinkpad_acpi/rfkill/rfkill0/claim', 0o644, b'0\n') +d('sys/devices/platform/thinkpad_acpi/rfkill/rfkill0/power', 0o755) +f('sys/devices/platform/thinkpad_acpi/rfkill/rfkill0/power/wakeup', 0o644, b'\n') +d('sys/devices/platform/thinkpad_acpi/power', 0o755) +f('sys/devices/platform/thinkpad_acpi/power/wakeup', 0o644, b'\n') +d('sys/devices/platform/thinkpad_acpi/leds', 0o755) +d('sys/devices/platform/thinkpad_acpi/leds/tpacpi::bay_active', 0o755) +l('sys/devices/platform/thinkpad_acpi/leds/tpacpi::bay_active/subsystem', '../../../../../class/leds') +l('sys/devices/platform/thinkpad_acpi/leds/tpacpi::bay_active/device', '../../../thinkpad_acpi') +f('sys/devices/platform/thinkpad_acpi/leds/tpacpi::bay_active/trigger', 0o644, b'[none] AC-online BAT0-charging-or-full BAT0-charging BAT0-full rfkill0 phy0rx phy0tx phy0assoc phy0radio \n') +f('sys/devices/platform/thinkpad_acpi/leds/tpacpi::bay_active/brightness', 0o644, b'0\n\x00') +f('sys/devices/platform/thinkpad_acpi/leds/tpacpi::bay_active/uevent', 0o644, b'') +d('sys/devices/platform/thinkpad_acpi/leds/tpacpi::bay_active/power', 0o755) +f('sys/devices/platform/thinkpad_acpi/leds/tpacpi::bay_active/power/wakeup', 0o644, b'\n') +d('sys/devices/platform/thinkpad_acpi/leds/tpacpi:orange:batt', 0o755) +l('sys/devices/platform/thinkpad_acpi/leds/tpacpi:orange:batt/subsystem', '../../../../../class/leds') +l('sys/devices/platform/thinkpad_acpi/leds/tpacpi:orange:batt/device', '../../../thinkpad_acpi') +f('sys/devices/platform/thinkpad_acpi/leds/tpacpi:orange:batt/trigger', 0o644, b'[none] AC-online BAT0-charging-or-full BAT0-charging BAT0-full rfkill0 phy0rx phy0tx phy0assoc phy0radio \n') +f('sys/devices/platform/thinkpad_acpi/leds/tpacpi:orange:batt/brightness', 0o644, b'0\n\x00') +f('sys/devices/platform/thinkpad_acpi/leds/tpacpi:orange:batt/uevent', 0o644, b'') +d('sys/devices/platform/thinkpad_acpi/leds/tpacpi:orange:batt/power', 0o755) +f('sys/devices/platform/thinkpad_acpi/leds/tpacpi:orange:batt/power/wakeup', 0o644, b'\n') +d('sys/devices/platform/thinkpad_acpi/leds/tpacpi::dock_active', 0o755) +l('sys/devices/platform/thinkpad_acpi/leds/tpacpi::dock_active/subsystem', '../../../../../class/leds') +l('sys/devices/platform/thinkpad_acpi/leds/tpacpi::dock_active/device', '../../../thinkpad_acpi') +f('sys/devices/platform/thinkpad_acpi/leds/tpacpi::dock_active/trigger', 0o644, b'[none] AC-online BAT0-charging-or-full BAT0-charging BAT0-full rfkill0 phy0rx phy0tx phy0assoc phy0radio \n') +f('sys/devices/platform/thinkpad_acpi/leds/tpacpi::dock_active/brightness', 0o644, b'0\n\x00') +f('sys/devices/platform/thinkpad_acpi/leds/tpacpi::dock_active/uevent', 0o644, b'') +d('sys/devices/platform/thinkpad_acpi/leds/tpacpi::dock_active/power', 0o755) +f('sys/devices/platform/thinkpad_acpi/leds/tpacpi::dock_active/power/wakeup', 0o644, b'\n') +d('sys/devices/platform/thinkpad_acpi/leds/tpacpi::unknown_led', 0o755) +l('sys/devices/platform/thinkpad_acpi/leds/tpacpi::unknown_led/subsystem', '../../../../../class/leds') +l('sys/devices/platform/thinkpad_acpi/leds/tpacpi::unknown_led/device', '../../../thinkpad_acpi') +f('sys/devices/platform/thinkpad_acpi/leds/tpacpi::unknown_led/trigger', 0o644, b'[none] AC-online BAT0-charging-or-full BAT0-charging BAT0-full rfkill0 phy0rx phy0tx phy0assoc phy0radio \n') +f('sys/devices/platform/thinkpad_acpi/leds/tpacpi::unknown_led/brightness', 0o644, b'0\n\x00') +f('sys/devices/platform/thinkpad_acpi/leds/tpacpi::unknown_led/uevent', 0o644, b'') +d('sys/devices/platform/thinkpad_acpi/leds/tpacpi::unknown_led/power', 0o755) +f('sys/devices/platform/thinkpad_acpi/leds/tpacpi::unknown_led/power/wakeup', 0o644, b'\n') +d('sys/devices/platform/thinkpad_acpi/leds/tpacpi:green:batt', 0o755) +l('sys/devices/platform/thinkpad_acpi/leds/tpacpi:green:batt/subsystem', '../../../../../class/leds') +l('sys/devices/platform/thinkpad_acpi/leds/tpacpi:green:batt/device', '../../../thinkpad_acpi') +f('sys/devices/platform/thinkpad_acpi/leds/tpacpi:green:batt/trigger', 0o644, b'[none] AC-online BAT0-charging-or-full BAT0-charging BAT0-full rfkill0 phy0rx phy0tx phy0assoc phy0radio \n') +f('sys/devices/platform/thinkpad_acpi/leds/tpacpi:green:batt/brightness', 0o644, b'0\n\x00') +f('sys/devices/platform/thinkpad_acpi/leds/tpacpi:green:batt/uevent', 0o644, b'') +d('sys/devices/platform/thinkpad_acpi/leds/tpacpi:green:batt/power', 0o755) +f('sys/devices/platform/thinkpad_acpi/leds/tpacpi:green:batt/power/wakeup', 0o644, b'\n') +d('sys/devices/platform/thinkpad_acpi/leds/tpacpi::dock_batt', 0o755) +l('sys/devices/platform/thinkpad_acpi/leds/tpacpi::dock_batt/subsystem', '../../../../../class/leds') +l('sys/devices/platform/thinkpad_acpi/leds/tpacpi::dock_batt/device', '../../../thinkpad_acpi') +f('sys/devices/platform/thinkpad_acpi/leds/tpacpi::dock_batt/trigger', 0o644, b'[none] AC-online BAT0-charging-or-full BAT0-charging BAT0-full rfkill0 phy0rx phy0tx phy0assoc phy0radio \n') +f('sys/devices/platform/thinkpad_acpi/leds/tpacpi::dock_batt/brightness', 0o644, b'0\n\x00') +f('sys/devices/platform/thinkpad_acpi/leds/tpacpi::dock_batt/uevent', 0o644, b'') +d('sys/devices/platform/thinkpad_acpi/leds/tpacpi::dock_batt/power', 0o755) +f('sys/devices/platform/thinkpad_acpi/leds/tpacpi::dock_batt/power/wakeup', 0o644, b'\n') +d('sys/devices/platform/thinkpad_acpi/leds/tpacpi::thinklight', 0o755) +l('sys/devices/platform/thinkpad_acpi/leds/tpacpi::thinklight/subsystem', '../../../../../class/leds') +l('sys/devices/platform/thinkpad_acpi/leds/tpacpi::thinklight/device', '../../../thinkpad_acpi') +f('sys/devices/platform/thinkpad_acpi/leds/tpacpi::thinklight/trigger', 0o644, b'[none] AC-online BAT0-charging-or-full BAT0-charging BAT0-full rfkill0 phy0rx phy0tx phy0assoc phy0radio \n') +f('sys/devices/platform/thinkpad_acpi/leds/tpacpi::thinklight/brightness', 0o644, b'255\n\x00') +f('sys/devices/platform/thinkpad_acpi/leds/tpacpi::thinklight/uevent', 0o644, b'') +d('sys/devices/platform/thinkpad_acpi/leds/tpacpi::thinklight/power', 0o755) +f('sys/devices/platform/thinkpad_acpi/leds/tpacpi::thinklight/power/wakeup', 0o644, b'\n') +d('sys/devices/platform/thinkpad_acpi/leds/tpacpi::power', 0o755) +l('sys/devices/platform/thinkpad_acpi/leds/tpacpi::power/subsystem', '../../../../../class/leds') +l('sys/devices/platform/thinkpad_acpi/leds/tpacpi::power/device', '../../../thinkpad_acpi') +f('sys/devices/platform/thinkpad_acpi/leds/tpacpi::power/trigger', 0o644, b'[none] AC-online BAT0-charging-or-full BAT0-charging BAT0-full rfkill0 phy0rx phy0tx phy0assoc phy0radio \n') +f('sys/devices/platform/thinkpad_acpi/leds/tpacpi::power/brightness', 0o644, b'0\n\x00') +f('sys/devices/platform/thinkpad_acpi/leds/tpacpi::power/uevent', 0o644, b'') +d('sys/devices/platform/thinkpad_acpi/leds/tpacpi::power/power', 0o755) +f('sys/devices/platform/thinkpad_acpi/leds/tpacpi::power/power/wakeup', 0o644, b'\n') +d('sys/devices/platform/thinkpad_acpi/leds/tpacpi::standby', 0o755) +l('sys/devices/platform/thinkpad_acpi/leds/tpacpi::standby/subsystem', '../../../../../class/leds') +l('sys/devices/platform/thinkpad_acpi/leds/tpacpi::standby/device', '../../../thinkpad_acpi') +f('sys/devices/platform/thinkpad_acpi/leds/tpacpi::standby/trigger', 0o644, b'[none] AC-online BAT0-charging-or-full BAT0-charging BAT0-full rfkill0 phy0rx phy0tx phy0assoc phy0radio \n') +f('sys/devices/platform/thinkpad_acpi/leds/tpacpi::standby/brightness', 0o644, b'0\n\x00') +f('sys/devices/platform/thinkpad_acpi/leds/tpacpi::standby/uevent', 0o644, b'') +d('sys/devices/platform/thinkpad_acpi/leds/tpacpi::standby/power', 0o755) +f('sys/devices/platform/thinkpad_acpi/leds/tpacpi::standby/power/wakeup', 0o644, b'\n') +d('sys/devices/platform/thinkpad_hwmon', 0o755) +l('sys/devices/platform/thinkpad_hwmon/subsystem', '../../../bus/platform') +l('sys/devices/platform/thinkpad_hwmon/driver', '../../../bus/platform/drivers/thinkpad_hwmon') +f('sys/devices/platform/thinkpad_hwmon/fan1_input', 0o644, b'3446\n') +f('sys/devices/platform/thinkpad_hwmon/temp4_input', 0o644, b'63000\n') +f('sys/devices/platform/thinkpad_hwmon/pwm1', 0o644, b'255\n') +f('sys/devices/platform/thinkpad_hwmon/temp11_input', 0o644, b'43000\n') +f('sys/devices/platform/thinkpad_hwmon/modalias', 0o644, b'platform:thinkpad_hwmon\n') +f('sys/devices/platform/thinkpad_hwmon/temp15_input', 0o644, b'') +f('sys/devices/platform/thinkpad_hwmon/temp2_input', 0o644, b'41000\n') +f('sys/devices/platform/thinkpad_hwmon/temp1_input', 0o644, b'46000\n') +f('sys/devices/platform/thinkpad_hwmon/temp5_input', 0o644, b'35000\n') +f('sys/devices/platform/thinkpad_hwmon/temp13_input', 0o644, b'') +f('sys/devices/platform/thinkpad_hwmon/temp6_input', 0o644, b'') +f('sys/devices/platform/thinkpad_hwmon/temp8_input', 0o644, b'') +f('sys/devices/platform/thinkpad_hwmon/pwm1_enable', 0o644, b'2\n') +f('sys/devices/platform/thinkpad_hwmon/temp10_input', 0o644, b'49000\n') +f('sys/devices/platform/thinkpad_hwmon/temp3_input', 0o644, b'33000\n') +f('sys/devices/platform/thinkpad_hwmon/temp9_input', 0o644, b'35000\n') +f('sys/devices/platform/thinkpad_hwmon/name', 0o644, b'thinkpad\n') +f('sys/devices/platform/thinkpad_hwmon/temp12_input', 0o644, b'') +f('sys/devices/platform/thinkpad_hwmon/uevent', 0o644, b'''DRIVER=thinkpad_hwmon +MODALIAS=platform:thinkpad_hwmon +''') +f('sys/devices/platform/thinkpad_hwmon/temp7_input', 0o644, b'33000\n') +f('sys/devices/platform/thinkpad_hwmon/temp16_input', 0o644, b'') +f('sys/devices/platform/thinkpad_hwmon/temp14_input', 0o644, b'') +d('sys/devices/platform/thinkpad_hwmon/hwmon', 0o755) +d('sys/devices/platform/thinkpad_hwmon/hwmon/hwmon0', 0o755) +l('sys/devices/platform/thinkpad_hwmon/hwmon/hwmon0/subsystem', '../../../../../class/hwmon') +l('sys/devices/platform/thinkpad_hwmon/hwmon/hwmon0/device', '../../../thinkpad_hwmon') +f('sys/devices/platform/thinkpad_hwmon/hwmon/hwmon0/uevent', 0o644, b'') +d('sys/devices/platform/thinkpad_hwmon/hwmon/hwmon0/power', 0o755) +f('sys/devices/platform/thinkpad_hwmon/hwmon/hwmon0/power/wakeup', 0o644, b'\n') +d('sys/devices/platform/thinkpad_hwmon/power', 0o755) +f('sys/devices/platform/thinkpad_hwmon/power/wakeup', 0o644, b'\n') +d('sys/devices/platform/microcode', 0o755) +l('sys/devices/platform/microcode/subsystem', '../../../bus/platform') +f('sys/devices/platform/microcode/modalias', 0o644, b'platform:microcode\n') +f('sys/devices/platform/microcode/uevent', 0o644, b'MODALIAS=platform:microcode\n') +d('sys/devices/platform/microcode/power', 0o755) +f('sys/devices/platform/microcode/power/wakeup', 0o644, b'\n') +d('sys/devices/platform/i8042', 0o755) +l('sys/devices/platform/i8042/subsystem', '../../../bus/platform') +l('sys/devices/platform/i8042/driver', '../../../bus/platform/drivers/i8042') +f('sys/devices/platform/i8042/modalias', 0o644, b'platform:i8042\n') +f('sys/devices/platform/i8042/uevent', 0o644, b'''DRIVER=i8042 +MODALIAS=platform:i8042 +''') +d('sys/devices/platform/i8042/power', 0o755) +f('sys/devices/platform/i8042/power/wakeup', 0o644, b'\n') +d('sys/devices/platform/i8042/serio0', 0o755) +l('sys/devices/platform/i8042/serio0/subsystem', '../../../../bus/serio') +l('sys/devices/platform/i8042/serio0/driver', '../../../../bus/serio/drivers/atkbd') +f('sys/devices/platform/i8042/serio0/modalias', 0o644, b'serio:ty06pr00id00ex00\n') +f('sys/devices/platform/i8042/serio0/set', 0o644, b'2\n') +f('sys/devices/platform/i8042/serio0/bind_mode', 0o644, b'auto\n') +f('sys/devices/platform/i8042/serio0/description', 0o644, b'i8042 KBD port\n') +f('sys/devices/platform/i8042/serio0/softrepeat', 0o644, b'0\n') +f('sys/devices/platform/i8042/serio0/scroll', 0o644, b'0\n') +f('sys/devices/platform/i8042/serio0/softraw', 0o644, b'1\n') +f('sys/devices/platform/i8042/serio0/err_count', 0o644, b'0\n') +f('sys/devices/platform/i8042/serio0/extra', 0o644, b'0\n') +f('sys/devices/platform/i8042/serio0/uevent', 0o644, b'''DRIVER=atkbd +SERIO_TYPE=06 +SERIO_PROTO=00 +SERIO_ID=00 +SERIO_EXTRA=00 +MODALIAS=serio:ty06pr00id00ex00 +''') +d('sys/devices/platform/i8042/serio0/id', 0o755) +f('sys/devices/platform/i8042/serio0/id/proto', 0o644, b'00\n') +f('sys/devices/platform/i8042/serio0/id/id', 0o644, b'00\n') +f('sys/devices/platform/i8042/serio0/id/type', 0o644, b'06\n') +f('sys/devices/platform/i8042/serio0/id/extra', 0o644, b'00\n') +d('sys/devices/platform/i8042/serio0/power', 0o755) +f('sys/devices/platform/i8042/serio0/power/wakeup', 0o644, b'\n') +d('sys/devices/platform/i8042/serio0/input', 0o755) +d('sys/devices/platform/i8042/serio0/input/input0', 0o755) +l('sys/devices/platform/i8042/serio0/input/input0/subsystem', '../../../../../../class/input') +l('sys/devices/platform/i8042/serio0/input/input0/device', '../../../serio0') +f('sys/devices/platform/i8042/serio0/input/input0/uniq', 0o644, b'\n') +f('sys/devices/platform/i8042/serio0/input/input0/phys', 0o644, b'isa0060/serio0/input0\n') +f('sys/devices/platform/i8042/serio0/input/input0/modalias', 0o644, b'input:b0011v0001p0001eAB54-e0,1,4,11,14,k71,72,73,74,75,76,77,79,7A,7B,7C,7D,7E,7F,80,8C,8E,8F,9B,9C,9D,9E,9F,A3,A4,A5,A6,AC,AD,B7,B8,B9,D9,E2,ram4,l0,1,2,sfw\n') +f('sys/devices/platform/i8042/serio0/input/input0/name', 0o644, b'AT Translated Set 2 keyboard\n') +f('sys/devices/platform/i8042/serio0/input/input0/uevent', 0o644, b'''PRODUCT=11/1/1/ab54 +NAME="AT Translated Set 2 keyboard" +PHYS="isa0060/serio0/input0" +EV==120013 +KEY==402000000 3803078f800d001 feffffdfffefffff fffffffffffffffe +MSC==10 +LED==7 +MODALIAS=input:b0011v0001p0001eAB54-e0,1,4,11,14,k71,72,73,74,75,76,77,79,7A,7B,7C,7D,7E,7F,80,8C,8E,8F,9B,9C,9D,9E,9F,A3,A4,A5,A6,AC,AD,B7,B8,B9,D9,E2,ram4,l0,1,2,sfw +''') +d('sys/devices/platform/i8042/serio0/input/input0/event0', 0o755) +l('sys/devices/platform/i8042/serio0/input/input0/event0/subsystem', '../../../../../../../class/input') +l('sys/devices/platform/i8042/serio0/input/input0/event0/device', '../../input0') +f('sys/devices/platform/i8042/serio0/input/input0/event0/dev', 0o644, b'13:64\n') +f('sys/devices/platform/i8042/serio0/input/input0/event0/uevent', 0o644, b'''MAJOR=13 +MINOR=64 +''') +d('sys/devices/platform/i8042/serio0/input/input0/event0/power', 0o755) +f('sys/devices/platform/i8042/serio0/input/input0/event0/power/wakeup', 0o644, b'\n') +d('sys/devices/platform/i8042/serio0/input/input0/id', 0o755) +f('sys/devices/platform/i8042/serio0/input/input0/id/version', 0o644, b'ab54\n') +f('sys/devices/platform/i8042/serio0/input/input0/id/product', 0o644, b'0001\n') +f('sys/devices/platform/i8042/serio0/input/input0/id/vendor', 0o644, b'0001\n') +f('sys/devices/platform/i8042/serio0/input/input0/id/bustype', 0o644, b'0011\n') +d('sys/devices/platform/i8042/serio0/input/input0/power', 0o755) +f('sys/devices/platform/i8042/serio0/input/input0/power/wakeup', 0o644, b'\n') +d('sys/devices/platform/i8042/serio0/input/input0/capabilities', 0o755) +f('sys/devices/platform/i8042/serio0/input/input0/capabilities/msc', 0o644, b'10\n') +f('sys/devices/platform/i8042/serio0/input/input0/capabilities/abs', 0o644, b'0\n') +f('sys/devices/platform/i8042/serio0/input/input0/capabilities/snd', 0o644, b'0\n') +f('sys/devices/platform/i8042/serio0/input/input0/capabilities/ff', 0o644, b'0\n') +f('sys/devices/platform/i8042/serio0/input/input0/capabilities/key', 0o644, b'402000000 3803078f800d001 feffffdfffefffff fffffffffffffffe\n') +f('sys/devices/platform/i8042/serio0/input/input0/capabilities/rel', 0o644, b'0\n') +f('sys/devices/platform/i8042/serio0/input/input0/capabilities/sw', 0o644, b'0\n') +f('sys/devices/platform/i8042/serio0/input/input0/capabilities/ev', 0o644, b'120013\n') +f('sys/devices/platform/i8042/serio0/input/input0/capabilities/led', 0o644, b'7\n') +d('sys/devices/platform/i8042/serio1', 0o755) +l('sys/devices/platform/i8042/serio1/subsystem', '../../../../bus/serio') +l('sys/devices/platform/i8042/serio1/driver', '../../../../bus/serio/drivers/psmouse') +f('sys/devices/platform/i8042/serio1/upthresh', 0o644, b'255\n') +f('sys/devices/platform/i8042/serio1/modalias', 0o644, b'serio:ty01pr00id00ex00\n') +f('sys/devices/platform/i8042/serio1/resync_time', 0o644, b'0\n') +f('sys/devices/platform/i8042/serio1/skipback', 0o644, b'0\n') +f('sys/devices/platform/i8042/serio1/draghys', 0o644, b'255\n') +f('sys/devices/platform/i8042/serio1/ext_dev', 0o644, b'1\n') +f('sys/devices/platform/i8042/serio1/bind_mode', 0o644, b'auto\n') +f('sys/devices/platform/i8042/serio1/resolution', 0o644, b'200\n') +f('sys/devices/platform/i8042/serio1/resetafter', 0o644, b'5\n') +f('sys/devices/platform/i8042/serio1/sensitivity', 0o644, b'128\n') +f('sys/devices/platform/i8042/serio1/rate', 0o644, b'100\n') +f('sys/devices/platform/i8042/serio1/inertia', 0o644, b'6\n') +f('sys/devices/platform/i8042/serio1/mindrag', 0o644, b'20\n') +f('sys/devices/platform/i8042/serio1/reach', 0o644, b'10\n') +f('sys/devices/platform/i8042/serio1/description', 0o644, b'i8042 AUX port\n') +f('sys/devices/platform/i8042/serio1/press_to_select', 0o644, b'0\n') +f('sys/devices/platform/i8042/serio1/ztime', 0o644, b'38\n') +f('sys/devices/platform/i8042/serio1/speed', 0o644, b'97\n') +f('sys/devices/platform/i8042/serio1/thresh', 0o644, b'8\n') +f('sys/devices/platform/i8042/serio1/jenks', 0o644, b'135\n') +f('sys/devices/platform/i8042/serio1/uevent', 0o644, b'''DRIVER=psmouse +SERIO_TYPE=01 +SERIO_PROTO=00 +SERIO_ID=00 +SERIO_EXTRA=00 +MODALIAS=serio:ty01pr00id00ex00 +''') +f('sys/devices/platform/i8042/serio1/protocol', 0o644, b'TPPS/2\n') +d('sys/devices/platform/i8042/serio1/id', 0o755) +f('sys/devices/platform/i8042/serio1/id/proto', 0o644, b'00\n') +f('sys/devices/platform/i8042/serio1/id/id', 0o644, b'00\n') +f('sys/devices/platform/i8042/serio1/id/type', 0o644, b'01\n') +f('sys/devices/platform/i8042/serio1/id/extra', 0o644, b'00\n') +d('sys/devices/platform/i8042/serio1/power', 0o755) +f('sys/devices/platform/i8042/serio1/power/wakeup', 0o644, b'\n') +d('sys/devices/platform/i8042/serio1/input', 0o755) +d('sys/devices/platform/i8042/serio1/input/input1', 0o755) +l('sys/devices/platform/i8042/serio1/input/input1/subsystem', '../../../../../../class/input') +l('sys/devices/platform/i8042/serio1/input/input1/device', '../../../serio1') +f('sys/devices/platform/i8042/serio1/input/input1/uniq', 0o644, b'\n') +f('sys/devices/platform/i8042/serio1/input/input1/phys', 0o644, b'isa0060/serio1/input0\n') +f('sys/devices/platform/i8042/serio1/input/input1/modalias', 0o644, b'input:b0011v0002p000Ae0000-e0,1,2,k110,111,112,r0,1,amlsfw\n') +f('sys/devices/platform/i8042/serio1/input/input1/name', 0o644, b'TPPS/2 IBM TrackPoint\n') +f('sys/devices/platform/i8042/serio1/input/input1/uevent', 0o644, b'''PRODUCT=11/2/a/0 +NAME="TPPS/2 IBM TrackPoint" +PHYS="isa0060/serio1/input0" +EV==7 +KEY==70000 0 0 0 0 +REL==3 +MODALIAS=input:b0011v0002p000Ae0000-e0,1,2,k110,111,112,r0,1,amlsfw +''') +d('sys/devices/platform/i8042/serio1/input/input1/mouse0', 0o755) +l('sys/devices/platform/i8042/serio1/input/input1/mouse0/subsystem', '../../../../../../../class/input') +l('sys/devices/platform/i8042/serio1/input/input1/mouse0/device', '../../input1') +f('sys/devices/platform/i8042/serio1/input/input1/mouse0/dev', 0o644, b'13:32\n') +f('sys/devices/platform/i8042/serio1/input/input1/mouse0/uevent', 0o644, b'''MAJOR=13 +MINOR=32 +''') +d('sys/devices/platform/i8042/serio1/input/input1/mouse0/power', 0o755) +f('sys/devices/platform/i8042/serio1/input/input1/mouse0/power/wakeup', 0o644, b'\n') +d('sys/devices/platform/i8042/serio1/input/input1/id', 0o755) +f('sys/devices/platform/i8042/serio1/input/input1/id/version', 0o644, b'0000\n') +f('sys/devices/platform/i8042/serio1/input/input1/id/product', 0o644, b'000a\n') +f('sys/devices/platform/i8042/serio1/input/input1/id/vendor', 0o644, b'0002\n') +f('sys/devices/platform/i8042/serio1/input/input1/id/bustype', 0o644, b'0011\n') +d('sys/devices/platform/i8042/serio1/input/input1/power', 0o755) +f('sys/devices/platform/i8042/serio1/input/input1/power/wakeup', 0o644, b'\n') +d('sys/devices/platform/i8042/serio1/input/input1/event1', 0o755) +l('sys/devices/platform/i8042/serio1/input/input1/event1/subsystem', '../../../../../../../class/input') +l('sys/devices/platform/i8042/serio1/input/input1/event1/device', '../../input1') +f('sys/devices/platform/i8042/serio1/input/input1/event1/dev', 0o644, b'13:65\n') +f('sys/devices/platform/i8042/serio1/input/input1/event1/uevent', 0o644, b'''MAJOR=13 +MINOR=65 +''') +d('sys/devices/platform/i8042/serio1/input/input1/event1/power', 0o755) +f('sys/devices/platform/i8042/serio1/input/input1/event1/power/wakeup', 0o644, b'\n') +d('sys/devices/platform/i8042/serio1/input/input1/capabilities', 0o755) +f('sys/devices/platform/i8042/serio1/input/input1/capabilities/msc', 0o644, b'0\n') +f('sys/devices/platform/i8042/serio1/input/input1/capabilities/abs', 0o644, b'0\n') +f('sys/devices/platform/i8042/serio1/input/input1/capabilities/snd', 0o644, b'0\n') +f('sys/devices/platform/i8042/serio1/input/input1/capabilities/ff', 0o644, b'0\n') +f('sys/devices/platform/i8042/serio1/input/input1/capabilities/key', 0o644, b'70000 0 0 0 0\n') +f('sys/devices/platform/i8042/serio1/input/input1/capabilities/rel', 0o644, b'3\n') +f('sys/devices/platform/i8042/serio1/input/input1/capabilities/sw', 0o644, b'0\n') +f('sys/devices/platform/i8042/serio1/input/input1/capabilities/ev', 0o644, b'7\n') +f('sys/devices/platform/i8042/serio1/input/input1/capabilities/led', 0o644, b'0\n') diff --git a/test/sys.tar.xz b/test/sys.tar.xz Binary files differdeleted file mode 100644 index 49ee8027b2..0000000000 --- a/test/sys.tar.xz +++ /dev/null diff --git a/test/test-execute/exec-read-only-path-succeed.service b/test/test-execute/exec-read-only-path-succeed.service new file mode 100644 index 0000000000..b54d48f281 --- /dev/null +++ b/test/test-execute/exec-read-only-path-succeed.service @@ -0,0 +1,8 @@ +[Service] +Type=oneshot +# This should work, as we explicitly disable the effect of ReadOnlyPaths= +ExecStart=+/bin/touch /tmp/thisisasimpletest +# This should also work, as we do not disable the effect of ReadOnlyPaths= but invert the exit code +ExecStart=/bin/sh -x -c '! /bin/touch /tmp/thisisasimpletest' +ExecStart=+/bin/rm /tmp/thisisasimpletest +ReadOnlyPaths=/tmp diff --git a/test/udev-test.pl b/test/udev-test.pl index 9723386b23..7e33479004 100755 --- a/test/udev-test.pl +++ b/test/udev-test.pl @@ -741,6 +741,86 @@ KERNEL=="ttyACM[0-9]*", SYMLINK=" one two " EOF }, { + desc => "symlink with spaces in substituted variable", + devpath => "/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.0/tty/ttyACM0", + exp_name => "name-one_two_three-end", + not_exp_name => " ", + rules => <<EOF +ENV{WITH_WS}="one two three" +SYMLINK="name-\$env{WITH_WS}-end" +EOF + }, + { + desc => "symlink with leading space in substituted variable", + devpath => "/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.0/tty/ttyACM0", + exp_name => "name-one_two_three-end", + not_exp_name => " ", + rules => <<EOF +ENV{WITH_WS}=" one two three" +SYMLINK="name-\$env{WITH_WS}-end" +EOF + }, + { + desc => "symlink with trailing space in substituted variable", + devpath => "/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.0/tty/ttyACM0", + exp_name => "name-one_two_three-end", + not_exp_name => " ", + rules => <<EOF +ENV{WITH_WS}="one two three " +SYMLINK="name-\$env{WITH_WS}-end" +EOF + }, + { + desc => "symlink with lots of space in substituted variable", + devpath => "/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.0/tty/ttyACM0", + exp_name => "name-one_two_three-end", + not_exp_name => " ", + rules => <<EOF +ENV{WITH_WS}=" one two three " +SYMLINK="name-\$env{WITH_WS}-end" +EOF + }, + { + desc => "symlink with multiple spaces in substituted variable", + devpath => "/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.0/tty/ttyACM0", + exp_name => "name-one_two_three-end", + not_exp_name => " ", + rules => <<EOF +ENV{WITH_WS}=" one two three " +SYMLINK="name-\$env{WITH_WS}-end" +EOF + }, + { + desc => "symlink with space and var with space, part 1", + devpath => "/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.0/tty/ttyACM0", + exp_name => "first", + not_exp_name => " ", + rules => <<EOF +ENV{WITH_WS}=" one two three " +SYMLINK=" first name-\$env{WITH_WS}-end another_symlink a b c " +EOF + }, + { + desc => "symlink with space and var with space, part 2", + devpath => "/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.0/tty/ttyACM0", + exp_name => "name-one_two_three-end", + not_exp_name => " ", + rules => <<EOF +ENV{WITH_WS}=" one two three " +SYMLINK=" first name-\$env{WITH_WS}-end another_symlink a b c " +EOF + }, + { + desc => "symlink with space and var with space, part 3", + devpath => "/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.0/tty/ttyACM0", + exp_name => "another_symlink", + not_exp_name => " ", + rules => <<EOF +ENV{WITH_WS}=" one two three " +SYMLINK=" first name-\$env{WITH_WS}-end another_symlink a b c " +EOF + }, + { desc => "symlink creation (same directory)", devpath => "/devices/pci0000:00/0000:00:1d.7/usb5/5-2/5-2:1.0/tty/ttyACM0", exp_name => "modem0", diff --git a/tmpfiles.d/systemd.conf.m4 b/tmpfiles.d/systemd.conf.m4 index 2cd58e9121..76e3829ab2 100644 --- a/tmpfiles.d/systemd.conf.m4 +++ b/tmpfiles.d/systemd.conf.m4 @@ -49,21 +49,21 @@ z /var/log/journal/%m/system.journal 0640 root systemd-journal - - m4_ifdef(`HAVE_ACL',`m4_dnl m4_ifdef(`ENABLE_ADM_GROUP',`m4_dnl m4_ifdef(`ENABLE_WHEEL_GROUP',`` -a+ /var/log/journal - - - - d:group:adm:r-x,d:group:wheel:r-x -a+ /var/log/journal - - - - group:adm:r-x,group:wheel:r-x +a+ /var/log/journal - - - - d:group::r-x,d:group:adm:r-x,d:group:wheel:r-x +a+ /var/log/journal - - - - group::r-x,group:adm:r-x,group:wheel:r-x a+ /var/log/journal/%m - - - - d:group:adm:r-x,d:group:wheel:r-x a+ /var/log/journal/%m - - - - group:adm:r-x,group:wheel:r-x a+ /var/log/journal/%m/system.journal - - - - group:adm:r--,group:wheel:r-- '', `` -a+ /var/log/journal - - - - d:group:adm:r-x -a+ /var/log/journal - - - - group:adm:r-x +a+ /var/log/journal - - - - d:group::r-x,d:group:adm:r-x +a+ /var/log/journal - - - - group::r-x,group:adm:r-x a+ /var/log/journal/%m - - - - d:group:adm:r-x a+ /var/log/journal/%m - - - - group:adm:r-x a+ /var/log/journal/%m/system.journal - - - - group:adm:r-- '')',`m4_dnl m4_ifdef(`ENABLE_WHEEL_GROUP',`` -a+ /var/log/journal - - - - d:group:wheel:r-x -a+ /var/log/journal - - - - group:wheel:r-x +a+ /var/log/journal - - - - d:group::r-x,d:group:wheel:r-x +a+ /var/log/journal - - - - group::r-x,group:wheel:r-x a+ /var/log/journal/%m - - - - d:group:wheel:r-x a+ /var/log/journal/%m - - - - group:wheel:r-x a+ /var/log/journal/%m/system.journal - - - - group:wheel:r-- diff --git a/units/initrd-switch-root.service.in b/units/initrd-switch-root.service.in index 219748d19b..d31497f5e3 100644 --- a/units/initrd-switch-root.service.in +++ b/units/initrd-switch-root.service.in @@ -16,4 +16,3 @@ AllowIsolate=yes [Service] Type=oneshot ExecStart=@rootbindir@/systemctl --no-block switch-root /sysroot -KillMode=none diff --git a/units/systemd-nspawn@.service.in b/units/systemd-nspawn@.service.in index c8141639b6..e8d1fff7ab 100644 --- a/units/systemd-nspawn@.service.in +++ b/units/systemd-nspawn@.service.in @@ -22,9 +22,9 @@ Slice=machine.slice Delegate=yes TasksMax=16384 -# Enforce a strict device policy, similar to the one nspawn configures -# when it allocates its own scope unit. Make sure to keep these -# policies in sync if you change them! +## Enforce a strict device policy, similar to the one nspawn configures +## when it allocates its own scope unit. Make sure to keep these +## policies in sync if you change them! DevicePolicy=closed DeviceAllow=/dev/net/tun rwm DeviceAllow=char-pts rw diff --git a/units/systemd-vconsole-setup.service.in b/units/systemd-vconsole-setup.service.in index 2bd1fd1a5d..8bb75c6a4f 100644 --- a/units/systemd-vconsole-setup.service.in +++ b/units/systemd-vconsole-setup.service.in @@ -9,6 +9,7 @@ Description=Setup Virtual Console Documentation=man:systemd-vconsole-setup.service(8) man:vconsole.conf(5) DefaultDependencies=no +Before=initrd-switch-root.target shutdown.target ConditionPathExists=/dev/tty0 [Service] |